Browse Source

general: Break apart BUILDING_PANDAEGG

Sam Edwards 7 years ago
parent
commit
768f78306a
69 changed files with 177 additions and 155 deletions
  1. 2 2
      panda/src/egg/config_egg.cxx
  2. 16 16
      panda/src/egg/config_egg.h
  3. 1 1
      panda/src/egg/eggAnimData.h
  4. 1 1
      panda/src/egg/eggAnimPreload.h
  5. 1 1
      panda/src/egg/eggAttributes.h
  6. 1 1
      panda/src/egg/eggBin.h
  7. 2 2
      panda/src/egg/eggBinMaker.h
  8. 1 1
      panda/src/egg/eggComment.h
  9. 1 1
      panda/src/egg/eggCompositePrimitive.h
  10. 1 1
      panda/src/egg/eggCoordinateSystem.h
  11. 1 1
      panda/src/egg/eggCurve.h
  12. 1 1
      panda/src/egg/eggData.h
  13. 1 1
      panda/src/egg/eggExternalReference.h
  14. 1 1
      panda/src/egg/eggFilenameNode.h
  15. 1 1
      panda/src/egg/eggGroup.h
  16. 1 1
      panda/src/egg/eggGroupNode.h
  17. 1 1
      panda/src/egg/eggGroupUniquifier.h
  18. 1 1
      panda/src/egg/eggLine.h
  19. 2 2
      panda/src/egg/eggMaterial.h
  20. 1 1
      panda/src/egg/eggMaterialCollection.h
  21. 2 2
      panda/src/egg/eggMorph.h
  22. 6 6
      panda/src/egg/eggMorphList.cxx
  23. 1 1
      panda/src/egg/eggNameUniquifier.h
  24. 1 1
      panda/src/egg/eggNamedObject.h
  25. 1 1
      panda/src/egg/eggNode.h
  26. 1 1
      panda/src/egg/eggNurbsCurve.h
  27. 1 1
      panda/src/egg/eggNurbsSurface.h
  28. 1 1
      panda/src/egg/eggObject.h
  29. 2 2
      panda/src/egg/eggParameters.h
  30. 1 1
      panda/src/egg/eggPatch.h
  31. 1 1
      panda/src/egg/eggPoint.h
  32. 1 1
      panda/src/egg/eggPolygon.h
  33. 1 1
      panda/src/egg/eggPolysetMaker.h
  34. 1 1
      panda/src/egg/eggPoolUniquifier.h
  35. 1 1
      panda/src/egg/eggPrimitive.h
  36. 6 6
      panda/src/egg/eggRenderMode.h
  37. 1 1
      panda/src/egg/eggSAnimData.h
  38. 1 1
      panda/src/egg/eggSurface.h
  39. 2 2
      panda/src/egg/eggSwitchCondition.h
  40. 1 1
      panda/src/egg/eggTable.h
  41. 14 14
      panda/src/egg/eggTexture.h
  42. 1 1
      panda/src/egg/eggTextureCollection.h
  43. 1 1
      panda/src/egg/eggTransform.h
  44. 1 1
      panda/src/egg/eggTriangleFan.h
  45. 1 1
      panda/src/egg/eggTriangleStrip.h
  46. 1 1
      panda/src/egg/eggUserData.h
  47. 2 2
      panda/src/egg/eggVertex.h
  48. 1 1
      panda/src/egg/eggVertexAux.h
  49. 1 1
      panda/src/egg/eggVertexPool.h
  50. 1 1
      panda/src/egg/eggVertexUV.h
  51. 1 1
      panda/src/egg/eggXfmAnimData.h
  52. 1 1
      panda/src/egg/eggXfmSAnim.h
  53. 1 1
      panda/src/egg/parserDefs.h
  54. 3 3
      panda/src/egg/pt_EggMaterial.h
  55. 3 3
      panda/src/egg/pt_EggTexture.h
  56. 3 3
      panda/src/egg/pt_EggVertex.h
  57. 2 2
      panda/src/egg/vector_PT_EggMaterial.h
  58. 2 2
      panda/src/egg/vector_PT_EggTexture.h
  59. 2 2
      panda/src/egg/vector_PT_EggVertex.cxx
  60. 2 2
      panda/src/egg/vector_PT_EggVertex.h
  61. 1 1
      panda/src/egg2pg/animBundleMaker.h
  62. 1 1
      panda/src/egg2pg/characterMaker.h
  63. 2 2
      panda/src/egg2pg/config_egg2pg.cxx
  64. 29 29
      panda/src/egg2pg/config_egg2pg.h
  65. 2 2
      panda/src/egg2pg/egg_parametrics.h
  66. 2 2
      panda/src/egg2pg/load_egg_file.h
  67. 1 1
      panda/src/egg2pg/loaderFileTypeEgg.h
  68. 2 2
      panda/src/egg2pg/save_egg_file.h
  69. 22 0
      panda/src/pandabase/pandasymbols.h

+ 2 - 2
panda/src/egg/config_egg.cxx

@@ -58,8 +58,8 @@
 
 #include "dconfig.h"
 
-#if !defined(CPPPARSER) && !defined(BUILDING_PANDAEGG)
-  #error Buildsystem error: BUILDING_PANDAEGG not defined
+#if !defined(CPPPARSER) && !defined(BUILDING_PANDA_EGG)
+  #error Buildsystem error: BUILDING_PANDA_EGG not defined
 #endif
 
 Configure(config_egg);

+ 16 - 16
panda/src/egg/config_egg.h

@@ -22,26 +22,26 @@
 #include "configVariableDouble.h"
 #include "configVariableInt.h"
 
-NotifyCategoryDecl(egg, EXPCL_PANDAEGG, EXPTP_PANDAEGG);
+NotifyCategoryDecl(egg, EXPCL_PANDA_EGG, EXPTP_PANDA_EGG);
 
 extern ConfigVariableBool egg_support_old_anims;
 
-extern EXPCL_PANDAEGG ConfigVariableBool egg_mesh;
-extern EXPCL_PANDAEGG ConfigVariableBool egg_retesselate_coplanar;
-extern EXPCL_PANDAEGG ConfigVariableBool egg_unroll_fans;
-extern EXPCL_PANDAEGG ConfigVariableBool egg_show_tstrips;
-extern EXPCL_PANDAEGG ConfigVariableBool egg_show_qsheets;
-extern EXPCL_PANDAEGG ConfigVariableBool egg_show_quads;
+extern EXPCL_PANDA_EGG ConfigVariableBool egg_mesh;
+extern EXPCL_PANDA_EGG ConfigVariableBool egg_retesselate_coplanar;
+extern EXPCL_PANDA_EGG ConfigVariableBool egg_unroll_fans;
+extern EXPCL_PANDA_EGG ConfigVariableBool egg_show_tstrips;
+extern EXPCL_PANDA_EGG ConfigVariableBool egg_show_qsheets;
+extern EXPCL_PANDA_EGG ConfigVariableBool egg_show_quads;
 #define egg_false_color (egg_show_tstrips | egg_show_qsheets | egg_show_quads)
-extern EXPCL_PANDAEGG ConfigVariableBool egg_subdivide_polys;
-extern EXPCL_PANDAEGG ConfigVariableBool egg_consider_fans;
-extern EXPCL_PANDAEGG ConfigVariableDouble egg_max_tfan_angle;
-extern EXPCL_PANDAEGG ConfigVariableInt egg_min_tfan_tris;
-extern EXPCL_PANDAEGG ConfigVariableDouble egg_coplanar_threshold;
-extern EXPCL_PANDAEGG ConfigVariableInt egg_test_vref_integrity;
-extern EXPCL_PANDAEGG ConfigVariableInt egg_recursion_limit;
-extern EXPCL_PANDAEGG ConfigVariableInt egg_precision;
+extern EXPCL_PANDA_EGG ConfigVariableBool egg_subdivide_polys;
+extern EXPCL_PANDA_EGG ConfigVariableBool egg_consider_fans;
+extern EXPCL_PANDA_EGG ConfigVariableDouble egg_max_tfan_angle;
+extern EXPCL_PANDA_EGG ConfigVariableInt egg_min_tfan_tris;
+extern EXPCL_PANDA_EGG ConfigVariableDouble egg_coplanar_threshold;
+extern EXPCL_PANDA_EGG ConfigVariableInt egg_test_vref_integrity;
+extern EXPCL_PANDA_EGG ConfigVariableInt egg_recursion_limit;
+extern EXPCL_PANDA_EGG ConfigVariableInt egg_precision;
 
-extern EXPCL_PANDAEGG void init_libegg();
+extern EXPCL_PANDA_EGG void init_libegg();
 
 #endif

+ 1 - 1
panda/src/egg/eggAnimData.h

@@ -27,7 +27,7 @@
  * A base class for EggSAnimData and EggXfmAnimData, which contain rows and
  * columns of numbers.
  */
-class EXPCL_PANDAEGG EggAnimData : public EggNode {
+class EXPCL_PANDA_EGG EggAnimData : public EggNode {
 PUBLISHED:
   INLINE explicit EggAnimData(const std::string &name = "");
   INLINE EggAnimData(const EggAnimData &copy);

+ 1 - 1
panda/src/egg/eggAnimPreload.h

@@ -21,7 +21,7 @@
 /**
  * This corresponds to an <AnimPreload> entry.
  */
-class EXPCL_PANDAEGG EggAnimPreload : public EggNode {
+class EXPCL_PANDA_EGG EggAnimPreload : public EggNode {
 PUBLISHED:
   INLINE explicit EggAnimPreload(const std::string &name = "");
   INLINE EggAnimPreload(const EggAnimPreload &copy);

+ 1 - 1
panda/src/egg/eggAttributes.h

@@ -30,7 +30,7 @@
  * EggPolygon level with multiple appearances of the EggObject base class.
  * And making EggObject a virtual base class is just no fun.
  */
-class EXPCL_PANDAEGG EggAttributes : public MemoryBase {
+class EXPCL_PANDA_EGG EggAttributes : public MemoryBase {
 PUBLISHED:
   EggAttributes();
   EggAttributes(const EggAttributes &copy);

+ 1 - 1
panda/src/egg/eggBin.h

@@ -23,7 +23,7 @@
  * of node that will never be read in from an egg file, but can only exist in
  * the egg scene graph if it is created via the use of an EggBinMaker.
  */
-class EXPCL_PANDAEGG EggBin : public EggGroup {
+class EXPCL_PANDA_EGG EggBin : public EggGroup {
 PUBLISHED:
   explicit EggBin(const std::string &name = "");
   EggBin(const EggGroup &copy);

+ 2 - 2
panda/src/egg/eggBinMaker.h

@@ -139,7 +139,7 @@ class EggBinMaker;
  * This is just an STL function object, used to sort nodes within EggBinMaker.
  * It's part of the private interface; ignore it.
  */
-class EXPCL_PANDAEGG EggBinMakerCompareNodes {
+class EXPCL_PANDA_EGG EggBinMakerCompareNodes {
 public:
   EggBinMakerCompareNodes() {
     // We need to have a default constructor to compile, but it should never
@@ -158,7 +158,7 @@ public:
  * abstract class; to use it you must subclass off of it.  See the somewhat
  * lengthy comment above.
  */
-class EXPCL_PANDAEGG EggBinMaker : public EggObject {
+class EXPCL_PANDA_EGG EggBinMaker : public EggObject {
 PUBLISHED:
   EggBinMaker();
   ~EggBinMaker();

+ 1 - 1
panda/src/egg/eggComment.h

@@ -21,7 +21,7 @@
 /**
  * A comment that appears in an egg file within a <Comment> entry.
  */
-class EXPCL_PANDAEGG EggComment : public EggNode {
+class EXPCL_PANDA_EGG EggComment : public EggNode {
 PUBLISHED:
   INLINE explicit EggComment(const std::string &node_name, const std::string &comment);
   INLINE EggComment(const EggComment &copy);

+ 1 - 1
panda/src/egg/eggCompositePrimitive.h

@@ -23,7 +23,7 @@
  * which include several component triangles, each of which might have its own
  * color and/or normal.
  */
-class EXPCL_PANDAEGG EggCompositePrimitive : public EggPrimitive {
+class EXPCL_PANDA_EGG EggCompositePrimitive : public EggPrimitive {
 PUBLISHED:
   INLINE explicit EggCompositePrimitive(const std::string &name = "");
   INLINE EggCompositePrimitive(const EggCompositePrimitive &copy);

+ 1 - 1
panda/src/egg/eggCoordinateSystem.h

@@ -26,7 +26,7 @@
  * with the enum EggData::CoordinateSystem, which is the value contained by
  * this entry.
  */
-class EXPCL_PANDAEGG EggCoordinateSystem : public EggNode {
+class EXPCL_PANDA_EGG EggCoordinateSystem : public EggNode {
 PUBLISHED:
   INLINE EggCoordinateSystem(CoordinateSystem value = CS_default);
   INLINE EggCoordinateSystem(const EggCoordinateSystem &copy);

+ 1 - 1
panda/src/egg/eggCurve.h

@@ -21,7 +21,7 @@
 /**
  * A parametric curve of some kind.  See EggNurbsCurve.
  */
-class EXPCL_PANDAEGG EggCurve : public EggPrimitive {
+class EXPCL_PANDA_EGG EggCurve : public EggPrimitive {
 PUBLISHED:
   INLINE explicit EggCurve(const std::string &name = "");
   INLINE EggCurve(const EggCurve &copy);

+ 1 - 1
panda/src/egg/eggData.h

@@ -34,7 +34,7 @@ class BamCacheRecord;
  * begin() and end() calls.  The children of the EggData class are the
  * toplevel nodes in the egg file.
  */
-class EXPCL_PANDAEGG EggData : public EggGroupNode {
+class EXPCL_PANDA_EGG EggData : public EggGroupNode {
 PUBLISHED:
   INLINE EggData();
   INLINE EggData(const EggData &copy);

+ 1 - 1
panda/src/egg/eggExternalReference.h

@@ -22,7 +22,7 @@
  * Defines a reference to another egg file which should be inserted at this
  * point.
  */
-class EXPCL_PANDAEGG EggExternalReference : public EggFilenameNode {
+class EXPCL_PANDA_EGG EggExternalReference : public EggFilenameNode {
 PUBLISHED:
   explicit EggExternalReference(const std::string &node_name, const std::string &filename);
   EggExternalReference(const EggExternalReference &copy);

+ 1 - 1
panda/src/egg/eggFilenameNode.h

@@ -24,7 +24,7 @@
  * file relative to the directory the egg file was loaded in.  It is a base
  * class for EggTexture and EggExternalReference.
  */
-class EXPCL_PANDAEGG EggFilenameNode : public EggNode {
+class EXPCL_PANDA_EGG EggFilenameNode : public EggNode {
 PUBLISHED:
   INLINE EggFilenameNode();
   INLINE explicit EggFilenameNode(const std::string &node_name, const Filename &filename);

+ 1 - 1
panda/src/egg/eggGroup.h

@@ -31,7 +31,7 @@
  * The main glue of the egg hierarchy, this corresponds to the <Group>,
  * <Instance>, and <Joint> type nodes.
  */
-class EXPCL_PANDAEGG EggGroup : public EggGroupNode, public EggRenderMode, public EggTransform {
+class EXPCL_PANDA_EGG EggGroup : public EggGroupNode, public EggRenderMode, public EggTransform {
 PUBLISHED:
   typedef pmap<PT_EggVertex, double> VertexRef;
   typedef pmap<std::string, std::string> TagData;

+ 1 - 1
panda/src/egg/eggGroupNode.h

@@ -43,7 +43,7 @@ class DSearchPath;
  * to manipulate the list.  The list may also be operated on (read-only) via
  * iterators and begin()/end().
  */
-class EXPCL_PANDAEGG EggGroupNode : public EggNode {
+class EXPCL_PANDA_EGG EggGroupNode : public EggNode {
 
   // This is a bit of private interface stuff that must be here as a forward
   // reference.  This allows us to define the EggGroupNode as an STL

+ 1 - 1
panda/src/egg/eggGroupUniquifier.h

@@ -23,7 +23,7 @@
  * EggGroup nodes.  It's not called automatically; you must invoke it yourself
  * if you want it.
  */
-class EXPCL_PANDAEGG EggGroupUniquifier : public EggNameUniquifier {
+class EXPCL_PANDA_EGG EggGroupUniquifier : public EggNameUniquifier {
 PUBLISHED:
   explicit EggGroupUniquifier(bool filter_names = true);
 

+ 1 - 1
panda/src/egg/eggLine.h

@@ -22,7 +22,7 @@
  * A line segment, or a series of connected line segments, defined by a <Line>
  * entry.
  */
-class EXPCL_PANDAEGG EggLine : public EggCompositePrimitive {
+class EXPCL_PANDA_EGG EggLine : public EggCompositePrimitive {
 PUBLISHED:
   INLINE explicit EggLine(const std::string &name = "");
   INLINE EggLine(const EggLine &copy);

+ 2 - 2
panda/src/egg/eggMaterial.h

@@ -23,7 +23,7 @@
 /**
  *
  */
-class EXPCL_PANDAEGG EggMaterial : public EggNode {
+class EXPCL_PANDA_EGG EggMaterial : public EggNode {
 PUBLISHED:
   explicit EggMaterial(const std::string &mref_name);
   EggMaterial(const EggMaterial &copy);
@@ -151,7 +151,7 @@ private:
  * Returns true if the two referenced EggMaterial pointers are in sorted
  * order, false otherwise.
  */
-class EXPCL_PANDAEGG UniqueEggMaterials {
+class EXPCL_PANDA_EGG UniqueEggMaterials {
 public:
   INLINE UniqueEggMaterials(int eq = ~0);
   INLINE bool operator ()(const EggMaterial *t1, const EggMaterial *t2) const;

+ 1 - 1
panda/src/egg/eggMaterialCollection.h

@@ -27,7 +27,7 @@
  * materials from an egg file and sort them all together; it can also manage
  * the creation of unique materials and the assignment of unique MRef names.
  */
-class EXPCL_PANDAEGG EggMaterialCollection {
+class EXPCL_PANDA_EGG EggMaterialCollection {
 
   // This is a bit of private interface stuff that must be here as a forward
   // reference.  This allows us to define the EggMaterialCollection as an STL

+ 2 - 2
panda/src/egg/eggMorph.h

@@ -49,8 +49,8 @@ private:
 // I'd love to export these, but it produces a strange linker issue with Mac
 // OS X's version of GCC.  We'll do it only on Windows, then.
 #ifdef _MSC_VER
-EXPORT_TEMPLATE_CLASS(EXPCL_PANDAEGG, EXPTP_PANDAEGG, EggMorph<LVector3d>);
-EXPORT_TEMPLATE_CLASS(EXPCL_PANDAEGG, EXPTP_PANDAEGG, EggMorph<LVector4>);
+EXPORT_TEMPLATE_CLASS(EXPCL_PANDA_EGG, EXPTP_PANDA_EGG, EggMorph<LVector3d>);
+EXPORT_TEMPLATE_CLASS(EXPCL_PANDA_EGG, EXPTP_PANDA_EGG, EggMorph<LVector4>);
 #endif
 
 typedef EggMorph<LVector3d> EggMorphVertex;

+ 6 - 6
panda/src/egg/eggMorphList.cxx

@@ -15,20 +15,20 @@
 
 // Continue all of the vector import definitions.
 
-#define EXPCL EXPCL_PANDAEGG
-#define EXPTP EXPTP_PANDAEGG
+#define EXPCL EXPCL_PANDA_EGG
+#define EXPTP EXPTP_PANDA_EGG
 #define TYPE LVector3d
 #define NAME vector_LVector3d
 #include "vector_src.cxx"
 
-#define EXPCL EXPCL_PANDAEGG
-#define EXPTP EXPTP_PANDAEGG
+#define EXPCL EXPCL_PANDA_EGG
+#define EXPTP EXPTP_PANDA_EGG
 #define TYPE LVector2d
 #define NAME vector_LVector2d
 #include "vector_src.cxx"
 
-#define EXPCL EXPCL_PANDAEGG
-#define EXPTP EXPTP_PANDAEGG
+#define EXPCL EXPCL_PANDA_EGG
+#define EXPTP EXPTP_PANDA_EGG
 #define TYPE LVector4
 #define NAME vector_LVector4
 #include "vector_src.cxx"

+ 1 - 1
panda/src/egg/eggNameUniquifier.h

@@ -56,7 +56,7 @@ class EggNode;
  * hierarchy.  It is an abstract class; to use it you must subclass off of it.
  * See the comment above.
  */
-class EXPCL_PANDAEGG EggNameUniquifier : public EggObject {
+class EXPCL_PANDA_EGG EggNameUniquifier : public EggObject {
 PUBLISHED:
   EggNameUniquifier();
   ~EggNameUniquifier();

+ 1 - 1
panda/src/egg/eggNamedObject.h

@@ -23,7 +23,7 @@
 /**
  * This is a fairly low-level base class--any egg object that has a name.
  */
-class EXPCL_PANDAEGG EggNamedObject : public EggObject, public Namable {
+class EXPCL_PANDA_EGG EggNamedObject : public EggObject, public Namable {
 PUBLISHED:
   INLINE explicit EggNamedObject(const std::string &name = "");
   INLINE EggNamedObject(const EggNamedObject &copy);

+ 1 - 1
panda/src/egg/eggNode.h

@@ -32,7 +32,7 @@ class EggTextureCollection;
  * This includes groups, joints, polygons, vertex pools, etc., but does not
  * include things like vertices.
  */
-class EXPCL_PANDAEGG EggNode : public EggNamedObject {
+class EXPCL_PANDA_EGG EggNode : public EggNamedObject {
 PUBLISHED:
   INLINE explicit EggNode(const std::string &name = "");
   INLINE EggNode(const EggNode &copy);

+ 1 - 1
panda/src/egg/eggNurbsCurve.h

@@ -23,7 +23,7 @@
 /**
  * A parametric NURBS curve.
  */
-class EXPCL_PANDAEGG EggNurbsCurve : public EggCurve {
+class EXPCL_PANDA_EGG EggNurbsCurve : public EggCurve {
 PUBLISHED:
   INLINE explicit EggNurbsCurve(const std::string &name = "");
   INLINE EggNurbsCurve(const EggNurbsCurve &copy);

+ 1 - 1
panda/src/egg/eggNurbsSurface.h

@@ -24,7 +24,7 @@
 /**
  * A parametric NURBS surface.
  */
-class EXPCL_PANDAEGG EggNurbsSurface : public EggSurface {
+class EXPCL_PANDA_EGG EggNurbsSurface : public EggSurface {
 PUBLISHED:
   typedef plist< PT(EggNurbsCurve) > Curves;
   typedef Curves Loop;

+ 1 - 1
panda/src/egg/eggObject.h

@@ -26,7 +26,7 @@ class EggTransform;
  * The highest-level base class in the egg directory.  (Almost) all things egg
  * inherit from this.
  */
-class EXPCL_PANDAEGG EggObject : public TypedReferenceCount {
+class EXPCL_PANDA_EGG EggObject : public TypedReferenceCount {
 PUBLISHED:
   EggObject();
   EggObject(const EggObject &copy);

+ 2 - 2
panda/src/egg/eggParameters.h

@@ -29,7 +29,7 @@
  * process it, and write the egg file out again before resetting the
  * parameters again.
  */
-class EXPCL_PANDAEGG EggParameters {
+class EXPCL_PANDA_EGG EggParameters {
 public:
   constexpr EggParameters() = default;
 
@@ -54,6 +54,6 @@ public:
   double _table_threshold = 0.0001;
 };
 
-extern EXPCL_PANDAEGG EggParameters *egg_parameters;
+extern EXPCL_PANDA_EGG EggParameters *egg_parameters;
 
 #endif

+ 1 - 1
panda/src/egg/eggPatch.h

@@ -22,7 +22,7 @@
  * A single "patch", a special primitive to be rendered only with a
  * tessellation shader.
  */
-class EXPCL_PANDAEGG EggPatch : public EggPrimitive {
+class EXPCL_PANDA_EGG EggPatch : public EggPrimitive {
 PUBLISHED:
   INLINE explicit EggPatch(const std::string &name = "");
   INLINE EggPatch(const EggPatch &copy);

+ 1 - 1
panda/src/egg/eggPoint.h

@@ -22,7 +22,7 @@
  * A single point, or a collection of points as defined by a single
  * <PointLight> entry.
  */
-class EXPCL_PANDAEGG EggPoint : public EggPrimitive {
+class EXPCL_PANDA_EGG EggPoint : public EggPrimitive {
 PUBLISHED:
   INLINE explicit EggPoint(const std::string &name = "");
   INLINE EggPoint(const EggPoint &copy);

+ 1 - 1
panda/src/egg/eggPolygon.h

@@ -21,7 +21,7 @@
 /**
  * A single polygon.
  */
-class EXPCL_PANDAEGG EggPolygon : public EggPrimitive {
+class EXPCL_PANDA_EGG EggPolygon : public EggPrimitive {
 PUBLISHED:
   INLINE explicit EggPolygon(const std::string &name = "");
   INLINE EggPolygon(const EggPolygon &copy);

+ 1 - 1
panda/src/egg/eggPolysetMaker.h

@@ -29,7 +29,7 @@
  * these are not sufficient, you can always rederive your own further
  * specialization of this class.
  */
-class EXPCL_PANDAEGG EggPolysetMaker : public EggBinMaker {
+class EXPCL_PANDA_EGG EggPolysetMaker : public EggBinMaker {
 PUBLISHED:
   // The BinNumber serves to identify why a particular EggBin was created.
   enum BinNumber {

+ 1 - 1
panda/src/egg/eggPoolUniquifier.h

@@ -23,7 +23,7 @@
  * textures, materials, and vertex pools prior to writing out an egg file.
  * It's automatically called by EggData prior to writing out an egg file.
  */
-class EXPCL_PANDAEGG EggPoolUniquifier : public EggNameUniquifier {
+class EXPCL_PANDA_EGG EggPoolUniquifier : public EggNameUniquifier {
 PUBLISHED:
   EggPoolUniquifier();
 

+ 1 - 1
panda/src/egg/eggPrimitive.h

@@ -44,7 +44,7 @@ class EggVertexPool;
  * can.  However, it is necessary that all vertices belong to the same vertex
  * pool.
  */
-class EXPCL_PANDAEGG EggPrimitive : public EggNode, public EggAttributes,
+class EXPCL_PANDA_EGG EggPrimitive : public EggNode, public EggAttributes,
                      public EggRenderMode
 {
 

+ 6 - 6
panda/src/egg/eggRenderMode.h

@@ -28,7 +28,7 @@
  * EggPolygon level with multiple appearances of the EggObject base class.
  * And making EggObject a virtual base class is just no fun.
  */
-class EXPCL_PANDAEGG EggRenderMode {
+class EXPCL_PANDA_EGG EggRenderMode {
 PUBLISHED:
   EggRenderMode();
   INLINE EggRenderMode(const EggRenderMode &copy);
@@ -122,12 +122,12 @@ private:
   static TypeHandle _type_handle;
 };
 
-EXPCL_PANDAEGG std::ostream &operator << (std::ostream &out, EggRenderMode::AlphaMode mode);
-EXPCL_PANDAEGG std::istream &operator >> (std::istream &in, EggRenderMode::AlphaMode &mode);
+EXPCL_PANDA_EGG std::ostream &operator << (std::ostream &out, EggRenderMode::AlphaMode mode);
+EXPCL_PANDA_EGG std::istream &operator >> (std::istream &in, EggRenderMode::AlphaMode &mode);
 
-EXPCL_PANDAEGG std::ostream &operator << (std::ostream &out, EggRenderMode::DepthWriteMode mode);
-EXPCL_PANDAEGG std::ostream &operator << (std::ostream &out, EggRenderMode::DepthTestMode mode);
-EXPCL_PANDAEGG std::ostream &operator << (std::ostream &out, EggRenderMode::VisibilityMode mode);
+EXPCL_PANDA_EGG std::ostream &operator << (std::ostream &out, EggRenderMode::DepthWriteMode mode);
+EXPCL_PANDA_EGG std::ostream &operator << (std::ostream &out, EggRenderMode::DepthTestMode mode);
+EXPCL_PANDA_EGG std::ostream &operator << (std::ostream &out, EggRenderMode::VisibilityMode mode);
 
 #include "eggRenderMode.I"
 

+ 1 - 1
panda/src/egg/eggSAnimData.h

@@ -22,7 +22,7 @@
  * Corresponding to an <S$Anim> entry, this stores a single column of numbers,
  * for instance for a morph target, or as one column in an EggXfmSAnim.
  */
-class EXPCL_PANDAEGG EggSAnimData : public EggAnimData {
+class EXPCL_PANDA_EGG EggSAnimData : public EggAnimData {
 PUBLISHED:
   INLINE explicit EggSAnimData(const std::string &name = "");
   INLINE EggSAnimData(const EggSAnimData &copy);

+ 1 - 1
panda/src/egg/eggSurface.h

@@ -21,7 +21,7 @@
 /**
  * A parametric surface of some kind.  See EggNurbsSurface.
  */
-class EXPCL_PANDAEGG EggSurface : public EggPrimitive {
+class EXPCL_PANDA_EGG EggSurface : public EggPrimitive {
 PUBLISHED:
   INLINE explicit EggSurface(const std::string &name = "");
   INLINE EggSurface(const EggSurface &copy);

+ 2 - 2
panda/src/egg/eggSwitchCondition.h

@@ -26,7 +26,7 @@
  * different kinds of switching conditions; presently, only a <Distance> type
  * is actually supported.
  */
-class EXPCL_PANDAEGG EggSwitchCondition : public EggObject {
+class EXPCL_PANDA_EGG EggSwitchCondition : public EggObject {
 PUBLISHED:
   virtual EggSwitchCondition *make_copy() const=0;
   virtual void write(std::ostream &out, int indent_level) const=0;
@@ -58,7 +58,7 @@ private:
  * A SwitchCondition that switches the levels-of-detail based on distance from
  * the camera's eyepoint.
  */
-class EXPCL_PANDAEGG EggSwitchConditionDistance : public EggSwitchCondition {
+class EXPCL_PANDA_EGG EggSwitchConditionDistance : public EggSwitchCondition {
 PUBLISHED:
   explicit EggSwitchConditionDistance(double switch_in, double switch_out,
                                       const LPoint3d &center, double fade = 0.0);

+ 1 - 1
panda/src/egg/eggTable.h

@@ -24,7 +24,7 @@
  * EggSAnimData or an EggXfmAnimData, which do.  It may also be a parent to
  * another <Table> or <Bundle>, establishing a hierarchy of tables.
  */
-class EXPCL_PANDAEGG EggTable : public EggGroupNode {
+class EXPCL_PANDA_EGG EggTable : public EggGroupNode {
 PUBLISHED:
   enum TableType {
     TT_invalid,

+ 14 - 14
panda/src/egg/eggTexture.h

@@ -27,7 +27,7 @@
 /**
  * Defines a texture map that may be applied to geometry.
  */
-class EXPCL_PANDAEGG EggTexture : public EggFilenameNode, public EggRenderMode, public EggTransform {
+class EXPCL_PANDA_EGG EggTexture : public EggFilenameNode, public EggRenderMode, public EggTransform {
 PUBLISHED:
   explicit EggTexture(const std::string &tref_name, const Filename &filename);
   EggTexture(const EggTexture &copy);
@@ -458,7 +458,7 @@ private:
  * Returns true if the two referenced EggTexture pointers are in sorted order,
  * false otherwise.
  */
-class EXPCL_PANDAEGG UniqueEggTextures {
+class EXPCL_PANDA_EGG UniqueEggTextures {
 public:
   INLINE UniqueEggTextures(int eq = ~0);
   INLINE bool operator ()(const EggTexture *t1, const EggTexture *t2) const;
@@ -470,18 +470,18 @@ INLINE std::ostream &operator << (std::ostream &out, const EggTexture &n) {
   return out << n.get_filename();
 }
 
-EXPCL_PANDAEGG std::ostream &operator << (std::ostream &out, EggTexture::TextureType texture_type);
-EXPCL_PANDAEGG std::ostream &operator << (std::ostream &out, EggTexture::Format format);
-EXPCL_PANDAEGG std::ostream &operator << (std::ostream &out, EggTexture::CompressionMode mode);
-EXPCL_PANDAEGG std::ostream &operator << (std::ostream &out, EggTexture::WrapMode mode);
-EXPCL_PANDAEGG std::ostream &operator << (std::ostream &out, EggTexture::FilterType type);
-EXPCL_PANDAEGG std::ostream &operator << (std::ostream &out, EggTexture::EnvType type);
-EXPCL_PANDAEGG std::ostream &operator << (std::ostream &out, EggTexture::CombineMode cm);
-EXPCL_PANDAEGG std::ostream &operator << (std::ostream &out, EggTexture::CombineChannel cc);
-EXPCL_PANDAEGG std::ostream &operator << (std::ostream &out, EggTexture::CombineSource cs);
-EXPCL_PANDAEGG std::ostream &operator << (std::ostream &out, EggTexture::CombineOperand co);
-EXPCL_PANDAEGG std::ostream &operator << (std::ostream &out, EggTexture::TexGen tex_gen);
-EXPCL_PANDAEGG std::ostream &operator << (std::ostream &out, EggTexture::QualityLevel quality_level);
+EXPCL_PANDA_EGG std::ostream &operator << (std::ostream &out, EggTexture::TextureType texture_type);
+EXPCL_PANDA_EGG std::ostream &operator << (std::ostream &out, EggTexture::Format format);
+EXPCL_PANDA_EGG std::ostream &operator << (std::ostream &out, EggTexture::CompressionMode mode);
+EXPCL_PANDA_EGG std::ostream &operator << (std::ostream &out, EggTexture::WrapMode mode);
+EXPCL_PANDA_EGG std::ostream &operator << (std::ostream &out, EggTexture::FilterType type);
+EXPCL_PANDA_EGG std::ostream &operator << (std::ostream &out, EggTexture::EnvType type);
+EXPCL_PANDA_EGG std::ostream &operator << (std::ostream &out, EggTexture::CombineMode cm);
+EXPCL_PANDA_EGG std::ostream &operator << (std::ostream &out, EggTexture::CombineChannel cc);
+EXPCL_PANDA_EGG std::ostream &operator << (std::ostream &out, EggTexture::CombineSource cs);
+EXPCL_PANDA_EGG std::ostream &operator << (std::ostream &out, EggTexture::CombineOperand co);
+EXPCL_PANDA_EGG std::ostream &operator << (std::ostream &out, EggTexture::TexGen tex_gen);
+EXPCL_PANDA_EGG std::ostream &operator << (std::ostream &out, EggTexture::QualityLevel quality_level);
 
 #include "eggTexture.I"
 

+ 1 - 1
panda/src/egg/eggTextureCollection.h

@@ -27,7 +27,7 @@
  * from an egg file and sort them all together; it can also manage the
  * creation of unique textures and the assignment of unique TRef names.
  */
-class EXPCL_PANDAEGG EggTextureCollection {
+class EXPCL_PANDA_EGG EggTextureCollection {
 
   // This is a bit of private interface stuff that must be here as a forward
   // reference.  This allows us to define the EggTextureCollection as an STL

+ 1 - 1
panda/src/egg/eggTransform.h

@@ -26,7 +26,7 @@
  * This may be either a 3-d transform, and therefore described by a 4x4
  * matrix, or a 2-d transform, described by a 3x3 matrix.
  */
-class EXPCL_PANDAEGG EggTransform {
+class EXPCL_PANDA_EGG EggTransform {
 PUBLISHED:
   EggTransform();
   EggTransform(const EggTransform &copy);

+ 1 - 1
panda/src/egg/eggTriangleFan.h

@@ -22,7 +22,7 @@
  * A connected fan of triangles.  This does not normally appear in an egg
  * file; it is typically generated as a result of meshing.
  */
-class EXPCL_PANDAEGG EggTriangleFan : public EggCompositePrimitive {
+class EXPCL_PANDA_EGG EggTriangleFan : public EggCompositePrimitive {
 PUBLISHED:
   INLINE explicit EggTriangleFan(const std::string &name = "");
   INLINE EggTriangleFan(const EggTriangleFan &copy);

+ 1 - 1
panda/src/egg/eggTriangleStrip.h

@@ -22,7 +22,7 @@
  * A connected strip of triangles.  This does not normally appear in an egg
  * file; it is typically generated as a result of meshing.
  */
-class EXPCL_PANDAEGG EggTriangleStrip : public EggCompositePrimitive {
+class EXPCL_PANDA_EGG EggTriangleStrip : public EggCompositePrimitive {
 PUBLISHED:
   INLINE explicit EggTriangleStrip(const std::string &name = "");
   INLINE EggTriangleStrip(const EggTriangleStrip &copy);

+ 1 - 1
panda/src/egg/eggUserData.h

@@ -26,7 +26,7 @@
  * However, this data will not be written out to the disk when the egg file is
  * written; it is an in-memory object only.
  */
-class EXPCL_PANDAEGG EggUserData : public TypedReferenceCount {
+class EXPCL_PANDA_EGG EggUserData : public TypedReferenceCount {
 PUBLISHED:
   INLINE EggUserData();
   INLINE EggUserData(const EggUserData &copy);

+ 2 - 2
panda/src/egg/eggVertex.h

@@ -36,7 +36,7 @@ class EggPrimitive;
  * Any one-, two-, three-, or four-component vertex, possibly with attributes
  * such as a normal.
  */
-class EXPCL_PANDAEGG EggVertex : public EggObject, public EggAttributes {
+class EXPCL_PANDA_EGG EggVertex : public EggObject, public EggAttributes {
 public:
   typedef pset<EggGroup *> GroupRef;
   typedef pmultiset<EggPrimitive *> PrimitiveRef;
@@ -211,7 +211,7 @@ INLINE std::ostream &operator << (std::ostream &out, const EggVertex &vert) {
  * Returns true if the two referenced EggVertex pointers are in sorted order,
  * false otherwise.
  */
-class EXPCL_PANDAEGG UniqueEggVertices {
+class EXPCL_PANDA_EGG UniqueEggVertices {
 public:
   INLINE bool operator ()(const EggVertex *v1, const EggVertex *v2) const;
 };

+ 1 - 1
panda/src/egg/eggVertexAux.h

@@ -27,7 +27,7 @@
  * the vertex data, but will not otherwise interpret it.  Presumably, a shader
  * will process the data later.
  */
-class EXPCL_PANDAEGG EggVertexAux : public EggNamedObject {
+class EXPCL_PANDA_EGG EggVertexAux : public EggNamedObject {
 PUBLISHED:
   explicit EggVertexAux(const std::string &name, const LVecBase4d &aux);
   EggVertexAux(const EggVertexAux &copy);

+ 1 - 1
panda/src/egg/eggVertexPool.h

@@ -38,7 +38,7 @@
  * list.  The list may also be operated on (read-only) via iterators and
  * begin()/end().
  */
-class EXPCL_PANDAEGG EggVertexPool : public EggNode {
+class EXPCL_PANDA_EGG EggVertexPool : public EggNode {
 
   // This is a bit of private interface stuff that must be here as a forward
   // reference.  This allows us to define the EggVertexPool as an STL

+ 1 - 1
panda/src/egg/eggVertexUV.h

@@ -26,7 +26,7 @@
  * multitexturing, there may be multiple sets of UV's on a particular vertex,
  * each with its own name.
  */
-class EXPCL_PANDAEGG EggVertexUV : public EggNamedObject {
+class EXPCL_PANDA_EGG EggVertexUV : public EggNamedObject {
 PUBLISHED:
   explicit EggVertexUV(const std::string &name, const LTexCoordd &uv);
   explicit EggVertexUV(const std::string &name, const LTexCoord3d &uvw);

+ 1 - 1
panda/src/egg/eggXfmAnimData.h

@@ -26,7 +26,7 @@
  * is an older syntax of egg anim table, not often used currently--it's
  * replaced by EggXfmSAnim.
  */
-class EXPCL_PANDAEGG EggXfmAnimData : public EggAnimData {
+class EXPCL_PANDA_EGG EggXfmAnimData : public EggAnimData {
 PUBLISHED:
   INLINE explicit EggXfmAnimData(const std::string &name = "",
                                  CoordinateSystem cs = CS_default);

+ 1 - 1
panda/src/egg/eggXfmSAnim.h

@@ -25,7 +25,7 @@ class EggXfmAnimData;
  * It's implemented as a group that can contain any number of EggSAnimData
  * children.
  */
-class EXPCL_PANDAEGG EggXfmSAnim : public EggGroupNode {
+class EXPCL_PANDA_EGG EggXfmSAnim : public EggGroupNode {
 PUBLISHED:
   INLINE explicit EggXfmSAnim(const std::string &name = "",
                               CoordinateSystem cs = CS_default);

+ 1 - 1
panda/src/egg/parserDefs.h

@@ -40,7 +40,7 @@ void egg_cleanup_parser();
 // that has member functions in a union), so we'll use a class instead.  That
 // means we need to declare it externally, here.
 
-class EXPCL_PANDAEGG EggTokenType {
+class EXPCL_PANDA_EGG EggTokenType {
 public:
   double _number;
   unsigned long _ulong;

+ 3 - 3
panda/src/egg/pt_EggMaterial.h

@@ -24,9 +24,9 @@
  * the template class.  It's not strictly necessary, but it doesn't hurt.
  */
 
-EXPORT_TEMPLATE_CLASS(EXPCL_PANDAEGG, EXPTP_PANDAEGG, PointerToBase<EggMaterial>)
-EXPORT_TEMPLATE_CLASS(EXPCL_PANDAEGG, EXPTP_PANDAEGG, PointerTo<EggMaterial>)
-EXPORT_TEMPLATE_CLASS(EXPCL_PANDAEGG, EXPTP_PANDAEGG, ConstPointerTo<EggMaterial>)
+EXPORT_TEMPLATE_CLASS(EXPCL_PANDA_EGG, EXPTP_PANDA_EGG, PointerToBase<EggMaterial>)
+EXPORT_TEMPLATE_CLASS(EXPCL_PANDA_EGG, EXPTP_PANDA_EGG, PointerTo<EggMaterial>)
+EXPORT_TEMPLATE_CLASS(EXPCL_PANDA_EGG, EXPTP_PANDA_EGG, ConstPointerTo<EggMaterial>)
 
 typedef PointerTo<EggMaterial> PT_EggMaterial;
 typedef ConstPointerTo<EggMaterial> CPT_EggMaterial;

+ 3 - 3
panda/src/egg/pt_EggTexture.h

@@ -24,9 +24,9 @@
  * template class.  It's not strictly necessary, but it doesn't hurt.
  */
 
-EXPORT_TEMPLATE_CLASS(EXPCL_PANDAEGG, EXPTP_PANDAEGG, PointerToBase<EggTexture>)
-EXPORT_TEMPLATE_CLASS(EXPCL_PANDAEGG, EXPTP_PANDAEGG, PointerTo<EggTexture>)
-EXPORT_TEMPLATE_CLASS(EXPCL_PANDAEGG, EXPTP_PANDAEGG, ConstPointerTo<EggTexture>)
+EXPORT_TEMPLATE_CLASS(EXPCL_PANDA_EGG, EXPTP_PANDA_EGG, PointerToBase<EggTexture>)
+EXPORT_TEMPLATE_CLASS(EXPCL_PANDA_EGG, EXPTP_PANDA_EGG, PointerTo<EggTexture>)
+EXPORT_TEMPLATE_CLASS(EXPCL_PANDA_EGG, EXPTP_PANDA_EGG, ConstPointerTo<EggTexture>)
 
 typedef PointerTo<EggTexture> PT_EggTexture;
 typedef ConstPointerTo<EggTexture> CPT_EggTexture;

+ 3 - 3
panda/src/egg/pt_EggVertex.h

@@ -24,9 +24,9 @@
  * template class.  It's not strictly necessary, but it doesn't hurt.
  */
 
-EXPORT_TEMPLATE_CLASS(EXPCL_PANDAEGG, EXPTP_PANDAEGG, PointerToBase<EggVertex>)
-EXPORT_TEMPLATE_CLASS(EXPCL_PANDAEGG, EXPTP_PANDAEGG, PointerTo<EggVertex>)
-EXPORT_TEMPLATE_CLASS(EXPCL_PANDAEGG, EXPTP_PANDAEGG, ConstPointerTo<EggVertex>)
+EXPORT_TEMPLATE_CLASS(EXPCL_PANDA_EGG, EXPTP_PANDA_EGG, PointerToBase<EggVertex>)
+EXPORT_TEMPLATE_CLASS(EXPCL_PANDA_EGG, EXPTP_PANDA_EGG, PointerTo<EggVertex>)
+EXPORT_TEMPLATE_CLASS(EXPCL_PANDA_EGG, EXPTP_PANDA_EGG, ConstPointerTo<EggVertex>)
 
 typedef PointerTo<EggVertex> PT_EggVertex;
 typedef ConstPointerTo<EggVertex> CPT_EggVertex;

+ 2 - 2
panda/src/egg/vector_PT_EggMaterial.h

@@ -28,8 +28,8 @@
  * file, rather than defining the vector again.
  */
 
-#define EXPCL EXPCL_PANDAEGG
-#define EXPTP EXPTP_PANDAEGG
+#define EXPCL EXPCL_PANDA_EGG
+#define EXPTP EXPTP_PANDA_EGG
 #define TYPE PT_EggMaterial
 #define NAME vector_PT_EggMaterial
 

+ 2 - 2
panda/src/egg/vector_PT_EggTexture.h

@@ -28,8 +28,8 @@
  * file, rather than defining the vector again.
  */
 
-#define EXPCL EXPCL_PANDAEGG
-#define EXPTP EXPTP_PANDAEGG
+#define EXPCL EXPCL_PANDA_EGG
+#define EXPTP EXPTP_PANDA_EGG
 #define TYPE PT_EggTexture
 #define NAME vector_PT_EggTexture
 

+ 2 - 2
panda/src/egg/vector_PT_EggVertex.cxx

@@ -13,8 +13,8 @@
 
 #include "vector_PT_EggVertex.h"
 
-#define EXPCL EXPCL_PANDAEGG
-#define EXPTP EXPTP_PANDAEGG
+#define EXPCL EXPCL_PANDA_EGG
+#define EXPTP EXPTP_PANDA_EGG
 #define TYPE PT_EggVertex
 #define NAME vector_PT_EggVertex
 

+ 2 - 2
panda/src/egg/vector_PT_EggVertex.h

@@ -28,8 +28,8 @@
  * rather than defining the vector again.
  */
 
-#define EXPCL EXPCL_PANDAEGG
-#define EXPTP EXPTP_PANDAEGG
+#define EXPCL EXPCL_PANDA_EGG
+#define EXPTP EXPTP_PANDA_EGG
 #define TYPE PT_EggVertex
 #define NAME vector_PT_EggVertex
 

+ 1 - 1
panda/src/egg2pg/animBundleMaker.h

@@ -32,7 +32,7 @@ class AnimChannelMatrixXfmTable;
  * Converts an EggTable hierarchy, beginning with a <Bundle> entry, into an
  * AnimBundle hierarchy.
  */
-class EXPCL_PANDAEGG AnimBundleMaker {
+class EXPCL_PANDA_EGG2PG AnimBundleMaker {
 public:
   explicit AnimBundleMaker(EggTable *root);
 

+ 1 - 1
panda/src/egg2pg/characterMaker.h

@@ -42,7 +42,7 @@ class PandaNode;
  * Converts an EggGroup hierarchy, beginning with a group with <Dart> set, to
  * a character node with joints.
  */
-class EXPCL_PANDAEGG CharacterMaker {
+class EXPCL_PANDA_EGG2PG CharacterMaker {
 public:
   CharacterMaker(EggGroup *root, EggLoader &loader, bool structured = false);
 

+ 2 - 2
panda/src/egg2pg/config_egg2pg.cxx

@@ -20,8 +20,8 @@
 #include "configVariableCore.h"
 #include "eggRenderState.h"
 
-#if !defined(CPPPARSER) && !defined(BUILDING_PANDAEGG)
-  #error Buildsystem error: BUILDING_PANDAEGG not defined
+#if !defined(CPPPARSER) && !defined(BUILDING_PANDA_EGG2PG)
+  #error Buildsystem error: BUILDING_PANDA_EGG2PG not defined
 #endif
 
 ConfigureDef(config_egg2pg);

+ 29 - 29
panda/src/egg2pg/config_egg2pg.h

@@ -25,36 +25,36 @@
 #include "configVariableInt.h"
 #include "dconfig.h"
 
-ConfigureDecl(config_egg2pg, EXPCL_PANDAEGG, EXPTP_PANDAEGG);
-NotifyCategoryDecl(egg2pg, EXPCL_PANDAEGG, EXPTP_PANDAEGG);
+ConfigureDecl(config_egg2pg, EXPCL_PANDA_EGG2PG, EXPTP_PANDA_EGG2PG);
+NotifyCategoryDecl(egg2pg, EXPCL_PANDA_EGG2PG, EXPTP_PANDA_EGG2PG);
 
-extern EXPCL_PANDAEGG ConfigVariableDouble egg_normal_scale;
-extern EXPCL_PANDAEGG ConfigVariableBool egg_show_normals;
-extern EXPCL_PANDAEGG ConfigVariableEnum<CoordinateSystem> egg_coordinate_system;
-extern EXPCL_PANDAEGG ConfigVariableBool egg_ignore_mipmaps;
-extern EXPCL_PANDAEGG ConfigVariableBool egg_ignore_filters;
-extern EXPCL_PANDAEGG ConfigVariableBool egg_ignore_clamp;
-extern EXPCL_PANDAEGG ConfigVariableBool egg_ignore_decals;
-extern EXPCL_PANDAEGG ConfigVariableBool egg_flatten;
-extern EXPCL_PANDAEGG ConfigVariableDouble egg_flatten_radius;
-extern EXPCL_PANDAEGG ConfigVariableBool egg_unify;
-extern EXPCL_PANDAEGG ConfigVariableBool egg_combine_geoms;
-extern EXPCL_PANDAEGG ConfigVariableBool egg_rigid_geometry;
-extern EXPCL_PANDAEGG ConfigVariableBool egg_flat_shading;
-extern EXPCL_PANDAEGG ConfigVariableBool egg_flat_colors;
-extern EXPCL_PANDAEGG ConfigVariableBool egg_load_old_curves;
-extern EXPCL_PANDAEGG ConfigVariableBool egg_load_classic_nurbs_curves;
-extern EXPCL_PANDAEGG ConfigVariableBool egg_accept_errors;
-extern EXPCL_PANDAEGG ConfigVariableBool egg_suppress_hidden;
-extern EXPCL_PANDAEGG ConfigVariableEnum<EggRenderMode::AlphaMode> egg_alpha_mode;
-extern EXPCL_PANDAEGG ConfigVariableInt egg_max_vertices;
-extern EXPCL_PANDAEGG ConfigVariableInt egg_max_indices;
-extern EXPCL_PANDAEGG ConfigVariableBool egg_emulate_bface;
-extern EXPCL_PANDAEGG ConfigVariableBool egg_preload_simple_textures;
-extern EXPCL_PANDAEGG ConfigVariableDouble egg_vertex_membership_quantize;
-extern EXPCL_PANDAEGG ConfigVariableInt egg_vertex_max_num_joints;
-extern EXPCL_PANDAEGG ConfigVariableBool egg_implicit_alpha_binary;
+extern EXPCL_PANDA_EGG2PG ConfigVariableDouble egg_normal_scale;
+extern EXPCL_PANDA_EGG2PG ConfigVariableBool egg_show_normals;
+extern EXPCL_PANDA_EGG2PG ConfigVariableEnum<CoordinateSystem> egg_coordinate_system;
+extern EXPCL_PANDA_EGG2PG ConfigVariableBool egg_ignore_mipmaps;
+extern EXPCL_PANDA_EGG2PG ConfigVariableBool egg_ignore_filters;
+extern EXPCL_PANDA_EGG2PG ConfigVariableBool egg_ignore_clamp;
+extern EXPCL_PANDA_EGG2PG ConfigVariableBool egg_ignore_decals;
+extern EXPCL_PANDA_EGG2PG ConfigVariableBool egg_flatten;
+extern EXPCL_PANDA_EGG2PG ConfigVariableDouble egg_flatten_radius;
+extern EXPCL_PANDA_EGG2PG ConfigVariableBool egg_unify;
+extern EXPCL_PANDA_EGG2PG ConfigVariableBool egg_combine_geoms;
+extern EXPCL_PANDA_EGG2PG ConfigVariableBool egg_rigid_geometry;
+extern EXPCL_PANDA_EGG2PG ConfigVariableBool egg_flat_shading;
+extern EXPCL_PANDA_EGG2PG ConfigVariableBool egg_flat_colors;
+extern EXPCL_PANDA_EGG2PG ConfigVariableBool egg_load_old_curves;
+extern EXPCL_PANDA_EGG2PG ConfigVariableBool egg_load_classic_nurbs_curves;
+extern EXPCL_PANDA_EGG2PG ConfigVariableBool egg_accept_errors;
+extern EXPCL_PANDA_EGG2PG ConfigVariableBool egg_suppress_hidden;
+extern EXPCL_PANDA_EGG2PG ConfigVariableEnum<EggRenderMode::AlphaMode> egg_alpha_mode;
+extern EXPCL_PANDA_EGG2PG ConfigVariableInt egg_max_vertices;
+extern EXPCL_PANDA_EGG2PG ConfigVariableInt egg_max_indices;
+extern EXPCL_PANDA_EGG2PG ConfigVariableBool egg_emulate_bface;
+extern EXPCL_PANDA_EGG2PG ConfigVariableBool egg_preload_simple_textures;
+extern EXPCL_PANDA_EGG2PG ConfigVariableDouble egg_vertex_membership_quantize;
+extern EXPCL_PANDA_EGG2PG ConfigVariableInt egg_vertex_max_num_joints;
+extern EXPCL_PANDA_EGG2PG ConfigVariableBool egg_implicit_alpha_binary;
 
-extern EXPCL_PANDAEGG void init_libegg2pg();
+extern EXPCL_PANDA_EGG2PG void init_libegg2pg();
 
 #endif

+ 2 - 2
panda/src/egg2pg/egg_parametrics.h

@@ -29,7 +29,7 @@ BEGIN_PUBLISH
  * the object is invalid.  If there is vertex color, it will be applied to
  * values 0 - 3 of the extended vertex values.
  */
-EXPCL_PANDAEGG PT(NurbsSurfaceEvaluator)
+EXPCL_PANDA_EGG2PG PT(NurbsSurfaceEvaluator)
 make_nurbs_surface(EggNurbsSurface *egg_surface, const LMatrix4d &mat);
 
 /**
@@ -38,7 +38,7 @@ make_nurbs_surface(EggNurbsSurface *egg_surface, const LMatrix4d &mat);
  * object is invalid.  If there is vertex color, it will be applied to values
  * 0 - 3 of the extended vertex values.
  */
-EXPCL_PANDAEGG PT(NurbsCurveEvaluator)
+EXPCL_PANDA_EGG2PG PT(NurbsCurveEvaluator)
 make_nurbs_curve(EggNurbsCurve *egg_curve, const LMatrix4d &mat);
 
 END_PUBLISH

+ 2 - 2
panda/src/egg2pg/load_egg_file.h

@@ -31,7 +31,7 @@ BEGIN_PUBLISH
  * Also see the EggLoader class, which can exercise a bit more manual control
  * over the loading process.
  */
-EXPCL_PANDAEGG PT(PandaNode)
+EXPCL_PANDA_EGG2PG PT(PandaNode)
 load_egg_file(const Filename &filename, CoordinateSystem cs = CS_default,
               BamCacheRecord *record = nullptr);
 
@@ -40,7 +40,7 @@ load_egg_file(const Filename &filename, CoordinateSystem cs = CS_default,
  * already-filled EggData structure.  The structure is destroyed in the
  * loading.
  */
-EXPCL_PANDAEGG PT(PandaNode)
+EXPCL_PANDA_EGG2PG PT(PandaNode)
 load_egg_data(EggData *data, CoordinateSystem cs = CS_default);
 END_PUBLISH
 

+ 1 - 1
panda/src/egg2pg/loaderFileTypeEgg.h

@@ -21,7 +21,7 @@
 /**
  * This defines the Loader interface to read Egg files.
  */
-class EXPCL_PANDAEGG LoaderFileTypeEgg : public LoaderFileType {
+class EXPCL_PANDA_EGG2PG LoaderFileTypeEgg : public LoaderFileType {
 public:
   LoaderFileTypeEgg();
 

+ 2 - 2
panda/src/egg2pg/save_egg_file.h

@@ -25,7 +25,7 @@ BEGIN_PUBLISH
  * A convenience function; converts the indicated scene graph to an egg file
  * and writes it to disk.
  */
-EXPCL_PANDAEGG bool
+EXPCL_PANDA_EGG2PG bool
 save_egg_file(const Filename &filename, PandaNode *node,
               CoordinateSystem cs = CS_default);
 
@@ -33,7 +33,7 @@ save_egg_file(const Filename &filename, PandaNode *node,
  * Another convenience function; works like save_egg_file() but populates an
  * EggData instead of writing the results to disk.
  */
-EXPCL_PANDAEGG bool
+EXPCL_PANDA_EGG2PG bool
 save_egg_data(EggData *data, PandaNode *node);
 END_PUBLISH
 

+ 22 - 0
panda/src/pandabase/pandasymbols.h

@@ -105,6 +105,12 @@
   #define BUILDING_PANDA_TFORM
 #endif
 
+/* BUILDING_PANDAEGG for these: */
+#ifdef BUILDING_PANDAEGG
+  #define BUILDING_PANDA_EGG
+  #define BUILDING_PANDA_EGG2PG
+#endif
+
 /* BUILDING_PANDAEXPRESS for these: */
 #ifdef BUILDING_PANDAEXPRESS
   #define BUILDING_PANDA_DOWNLOADER
@@ -205,6 +211,22 @@
   #define EXPTP_PANDA_DXML IMPORT_TEMPL
 #endif
 
+#ifdef BUILDING_PANDA_EGG
+  #define EXPCL_PANDA_EGG EXPORT_CLASS
+  #define EXPTP_PANDA_EGG EXPORT_TEMPL
+#else
+  #define EXPCL_PANDA_EGG IMPORT_CLASS
+  #define EXPTP_PANDA_EGG IMPORT_TEMPL
+#endif
+
+#ifdef BUILDING_PANDA_EGG2PG
+  #define EXPCL_PANDA_EGG2PG EXPORT_CLASS
+  #define EXPTP_PANDA_EGG2PG EXPORT_TEMPL
+#else
+  #define EXPCL_PANDA_EGG2PG IMPORT_CLASS
+  #define EXPTP_PANDA_EGG2PG IMPORT_TEMPL
+#endif
+
 #ifdef BUILDING_PANDA_EVENT
   #define EXPCL_PANDA_EVENT EXPORT_CLASS
   #define EXPTP_PANDA_EVENT EXPORT_TEMPL