|
@@ -87,7 +87,7 @@ PkgListSet(["PYTHON", "DIRECT", # Python support
|
|
|
"ODE", "PHYSX", "BULLET", "PANDAPHYSICS", # Physics
|
|
"ODE", "PHYSX", "BULLET", "PANDAPHYSICS", # Physics
|
|
|
"SPEEDTREE", # SpeedTree
|
|
"SPEEDTREE", # SpeedTree
|
|
|
"ZLIB", "PNG", "JPEG", "TIFF", "SQUISH", "FREETYPE", # 2D Formats support
|
|
"ZLIB", "PNG", "JPEG", "TIFF", "SQUISH", "FREETYPE", # 2D Formats support
|
|
|
- ] + MAYAVERSIONS + MAXVERSIONS + [ "FCOLLADA", # 3D Formats support
|
|
|
|
|
|
|
+ ] + MAYAVERSIONS + MAXVERSIONS + [ "FCOLLADA", "ASSIMP", # 3D Formats support
|
|
|
"VRPN", "OPENSSL", # Transport
|
|
"VRPN", "OPENSSL", # Transport
|
|
|
"FFTW", # Algorithm helpers
|
|
"FFTW", # Algorithm helpers
|
|
|
"ARTOOLKIT", "OPENCV", "DIRECTCAM", "VISION", # Augmented Reality
|
|
"ARTOOLKIT", "OPENCV", "DIRECTCAM", "VISION", # Augmented Reality
|
|
@@ -367,7 +367,7 @@ if RUNTIME or RTDIST:
|
|
|
if DEBVERSION is None:
|
|
if DEBVERSION is None:
|
|
|
DEBVERSION = VERSION
|
|
DEBVERSION = VERSION
|
|
|
|
|
|
|
|
-MAJOR_VERSION = VERSION[:3]
|
|
|
|
|
|
|
+MAJOR_VERSION = '.'.join(VERSION.split('.')[:2])
|
|
|
|
|
|
|
|
if P3DSUFFIX is None:
|
|
if P3DSUFFIX is None:
|
|
|
P3DSUFFIX = MAJOR_VERSION
|
|
P3DSUFFIX = MAJOR_VERSION
|
|
@@ -595,6 +595,7 @@ if (COMPILER == "MSVC"):
|
|
|
if (PkgSkip("FFTW")==0): LibName("FFTW", GetThirdpartyDir() + "fftw/lib/fftw.lib")
|
|
if (PkgSkip("FFTW")==0): LibName("FFTW", GetThirdpartyDir() + "fftw/lib/fftw.lib")
|
|
|
if (PkgSkip("ARTOOLKIT")==0):LibName("ARTOOLKIT",GetThirdpartyDir() + "artoolkit/lib/libAR.lib")
|
|
if (PkgSkip("ARTOOLKIT")==0):LibName("ARTOOLKIT",GetThirdpartyDir() + "artoolkit/lib/libAR.lib")
|
|
|
if (PkgSkip("FCOLLADA")==0): LibName("FCOLLADA", GetThirdpartyDir() + "fcollada/lib/FCollada.lib")
|
|
if (PkgSkip("FCOLLADA")==0): LibName("FCOLLADA", GetThirdpartyDir() + "fcollada/lib/FCollada.lib")
|
|
|
|
|
+ if (PkgSkip("ASSIMP")==0): PkgDisable("ASSIMP") # Not yet supported
|
|
|
if (PkgSkip("OPENCV")==0): LibName("OPENCV", GetThirdpartyDir() + "opencv/lib/cv.lib")
|
|
if (PkgSkip("OPENCV")==0): LibName("OPENCV", GetThirdpartyDir() + "opencv/lib/cv.lib")
|
|
|
if (PkgSkip("OPENCV")==0): LibName("OPENCV", GetThirdpartyDir() + "opencv/lib/highgui.lib")
|
|
if (PkgSkip("OPENCV")==0): LibName("OPENCV", GetThirdpartyDir() + "opencv/lib/highgui.lib")
|
|
|
if (PkgSkip("OPENCV")==0): LibName("OPENCV", GetThirdpartyDir() + "opencv/lib/cvaux.lib")
|
|
if (PkgSkip("OPENCV")==0): LibName("OPENCV", GetThirdpartyDir() + "opencv/lib/cvaux.lib")
|
|
@@ -737,6 +738,7 @@ if (COMPILER=="GCC"):
|
|
|
SmartPkgEnable("EIGEN", "eigen3", (), ("Eigen/Dense",), target_pkg = 'ALWAYS')
|
|
SmartPkgEnable("EIGEN", "eigen3", (), ("Eigen/Dense",), target_pkg = 'ALWAYS')
|
|
|
SmartPkgEnable("ARTOOLKIT", "", ("AR"), "AR/ar.h")
|
|
SmartPkgEnable("ARTOOLKIT", "", ("AR"), "AR/ar.h")
|
|
|
SmartPkgEnable("FCOLLADA", "", ChooseLib(fcollada_libs, "FCOLLADA"), ("FCollada", "FCollada/FCollada.h"))
|
|
SmartPkgEnable("FCOLLADA", "", ChooseLib(fcollada_libs, "FCOLLADA"), ("FCollada", "FCollada/FCollada.h"))
|
|
|
|
|
+ SmartPkgEnable("ASSIMP", "assimp", ("assimp"), "assimp")
|
|
|
SmartPkgEnable("FFMPEG", ffmpeg_libs, ffmpeg_libs, ffmpeg_libs)
|
|
SmartPkgEnable("FFMPEG", ffmpeg_libs, ffmpeg_libs, ffmpeg_libs)
|
|
|
SmartPkgEnable("SWSCALE", "libswscale", "libswscale", ("libswscale", "libswscale/swscale.h"), target_pkg = "FFMPEG")
|
|
SmartPkgEnable("SWSCALE", "libswscale", "libswscale", ("libswscale", "libswscale/swscale.h"), target_pkg = "FFMPEG")
|
|
|
SmartPkgEnable("SWRESAMPLE","libswresample", "libswresample", ("libswresample", "libswresample/swresample.h"), target_pkg = "FFMPEG")
|
|
SmartPkgEnable("SWRESAMPLE","libswresample", "libswresample", ("libswresample", "libswresample/swresample.h"), target_pkg = "FFMPEG")
|
|
@@ -913,9 +915,19 @@ if (COMPILER=="GCC"):
|
|
|
|
|
|
|
|
DefSymbol("WITHINPANDA", "WITHIN_PANDA", "1")
|
|
DefSymbol("WITHINPANDA", "WITHIN_PANDA", "1")
|
|
|
if GetLinkAllStatic():
|
|
if GetLinkAllStatic():
|
|
|
- DefSymbol("ALWAYS", "LINK_ALL_STATIC", "")
|
|
|
|
|
|
|
+ DefSymbol("ALWAYS", "LINK_ALL_STATIC")
|
|
|
if GetTarget() == 'android':
|
|
if GetTarget() == 'android':
|
|
|
- DefSymbol("ALWAYS", "ANDROID", "")
|
|
|
|
|
|
|
+ DefSymbol("ALWAYS", "ANDROID")
|
|
|
|
|
+
|
|
|
|
|
+if not PkgSkip("EIGEN"):
|
|
|
|
|
+ DefSymbol("ALWAYS", "EIGEN_MPL2_ONLY")
|
|
|
|
|
+ if GetOptimize() >= 3:
|
|
|
|
|
+ DefSymbol("ALWAYS", "EIGEN_NO_DEBUG")
|
|
|
|
|
+ if COMPILER == "MSVC":
|
|
|
|
|
+ # Squeeze out a bit more performance on MSVC builds...
|
|
|
|
|
+ # Only do this if EIGEN_NO_DEBUG is also set, otherwise it
|
|
|
|
|
+ # will turn them into runtime assertions.
|
|
|
|
|
+ DefSymbol("ALWAYS", "EIGEN_NO_STATIC_ASSERT")
|
|
|
|
|
|
|
|
########################################################################
|
|
########################################################################
|
|
|
##
|
|
##
|
|
@@ -1018,10 +1030,10 @@ def CompileCxx(obj,src,opts):
|
|
|
|
|
|
|
|
if (optlevel==1): cmd += " /MDd /Zi /RTCs /GS"
|
|
if (optlevel==1): cmd += " /MDd /Zi /RTCs /GS"
|
|
|
if (optlevel==2): cmd += " /MDd /Zi"
|
|
if (optlevel==2): cmd += " /MDd /Zi"
|
|
|
- if (optlevel==3): cmd += " /MD /Zi /O2 /Ob2 /Oi /Ot /fp:fast /DFORCE_INLINING"
|
|
|
|
|
|
|
+ if (optlevel==3): cmd += " /MD /Zi /GS- /O2 /Ob2 /Oi /Ot /fp:fast"
|
|
|
if (optlevel==4):
|
|
if (optlevel==4):
|
|
|
- cmd += " /MD /Zi /Ox /Ob2 /Oi /Ot /fp:fast /DFORCE_INLINING /DNDEBUG /GL"
|
|
|
|
|
- cmd += " /Oy /Zp16" # jean-claude add /Zp16 insures correct static alignment for SSEx
|
|
|
|
|
|
|
+ cmd += " /MD /Zi /GS- /Ox /Ob2 /Oi /Ot /fp:fast /DFORCE_INLINING /DNDEBUG /GL"
|
|
|
|
|
+ cmd += " /Oy /Zp16" # jean-claude add /Zp16 insures correct static alignment for SSEx
|
|
|
|
|
|
|
|
cmd += " /Fd" + os.path.splitext(obj)[0] + ".pdb"
|
|
cmd += " /Fd" + os.path.splitext(obj)[0] + ".pdb"
|
|
|
|
|
|
|
@@ -1036,7 +1048,7 @@ def CompileCxx(obj,src,opts):
|
|
|
if 'EXCEPTIONS' in opts:
|
|
if 'EXCEPTIONS' in opts:
|
|
|
cmd += " /EHsc"
|
|
cmd += " /EHsc"
|
|
|
else:
|
|
else:
|
|
|
- cmd += " -D_HAS_EXCEPTIONS=0"
|
|
|
|
|
|
|
+ cmd += " /D_HAS_EXCEPTIONS=0"
|
|
|
|
|
|
|
|
if 'RTTI' not in opts:
|
|
if 'RTTI' not in opts:
|
|
|
cmd += " /GR-"
|
|
cmd += " /GR-"
|
|
@@ -1402,7 +1414,10 @@ def CompileImod(wobj, wsrc, opts):
|
|
|
# Assume that interrogate_module is on the PATH somewhere.
|
|
# Assume that interrogate_module is on the PATH somewhere.
|
|
|
cmd = 'interrogate_module'
|
|
cmd = 'interrogate_module'
|
|
|
|
|
|
|
|
- cmd += ' -oc ' + woutc + ' -module ' + module + ' -library ' + library + ' -python-native '
|
|
|
|
|
|
|
+ cmd += ' -oc ' + woutc + ' -module ' + module + ' -library ' + library + ' -python-native'
|
|
|
|
|
+ importmod = GetValueOption(opts, "IMPORT:")
|
|
|
|
|
+ if importmod:
|
|
|
|
|
+ cmd += ' -import ' + importmod
|
|
|
for x in wsrc: cmd += ' ' + BracketNameWithQuotes(x)
|
|
for x in wsrc: cmd += ' ' + BracketNameWithQuotes(x)
|
|
|
oscmd(cmd)
|
|
oscmd(cmd)
|
|
|
CompileCxx(wobj,woutc,opts)
|
|
CompileCxx(wobj,woutc,opts)
|
|
@@ -1583,20 +1598,13 @@ def CompileLink(dll, obj, opts):
|
|
|
cmd = cxx + ' -undefined dynamic_lookup'
|
|
cmd = cxx + ' -undefined dynamic_lookup'
|
|
|
if ("BUNDLE" in opts): cmd += ' -bundle '
|
|
if ("BUNDLE" in opts): cmd += ' -bundle '
|
|
|
else:
|
|
else:
|
|
|
- if GetOrigExt(dll) == ".pyd":
|
|
|
|
|
- install_name = '@loader_path/../panda3d/' + os.path.basename(dll)
|
|
|
|
|
- else:
|
|
|
|
|
- install_name = os.path.basename(dll)
|
|
|
|
|
|
|
+ install_name = os.path.basename(dll)
|
|
|
cmd += ' -dynamiclib -install_name ' + install_name
|
|
cmd += ' -dynamiclib -install_name ' + install_name
|
|
|
cmd += ' -compatibility_version ' + MAJOR_VERSION + ' -current_version ' + VERSION
|
|
cmd += ' -compatibility_version ' + MAJOR_VERSION + ' -current_version ' + VERSION
|
|
|
cmd += ' -o ' + dll + ' -L' + GetOutputDir() + '/lib -L' + GetOutputDir() + '/tmp'
|
|
cmd += ' -o ' + dll + ' -L' + GetOutputDir() + '/lib -L' + GetOutputDir() + '/tmp'
|
|
|
else:
|
|
else:
|
|
|
cmd = cxx + ' -shared'
|
|
cmd = cxx + ' -shared'
|
|
|
if ("MODULE" not in opts): cmd += " -Wl,-soname=" + os.path.basename(dll)
|
|
if ("MODULE" not in opts): cmd += " -Wl,-soname=" + os.path.basename(dll)
|
|
|
- if GetOrigExt(dll) == ".pyd" and not os.path.basename(dll).startswith('core'):
|
|
|
|
|
- # Tell the other libraries where to find core.so.
|
|
|
|
|
- # Not sure if this is the best way to do that, but it works.
|
|
|
|
|
- cmd += " -Wl,-rpath '-Wl,$ORIGIN'"
|
|
|
|
|
cmd += ' -o ' + dll + ' -L' + GetOutputDir() + '/lib -L' + GetOutputDir() + '/tmp'
|
|
cmd += ' -o ' + dll + ' -L' + GetOutputDir() + '/lib -L' + GetOutputDir() + '/tmp'
|
|
|
|
|
|
|
|
if GetTarget() == 'emscripten' and GetOrigExt(dll) != ".exe":
|
|
if GetTarget() == 'emscripten' and GetOrigExt(dll) != ".exe":
|
|
@@ -3873,12 +3881,11 @@ if (PkgSkip("VISION") == 0) and (not RUNTIME):
|
|
|
|
|
|
|
|
TargetAdd('vision_module.obj', input='libp3vision.in')
|
|
TargetAdd('vision_module.obj', input='libp3vision.in')
|
|
|
TargetAdd('vision_module.obj', opts=OPTS)
|
|
TargetAdd('vision_module.obj', opts=OPTS)
|
|
|
- TargetAdd('vision_module.obj', opts=['IMOD:panda3d.vision', 'ILIB:vision'])
|
|
|
|
|
|
|
+ TargetAdd('vision_module.obj', opts=['IMOD:panda3d.vision', 'ILIB:vision', 'IMPORT:panda3d.core'])
|
|
|
|
|
|
|
|
TargetAdd('vision.pyd', input='vision_module.obj')
|
|
TargetAdd('vision.pyd', input='vision_module.obj')
|
|
|
TargetAdd('vision.pyd', input='libp3vision_igate.obj')
|
|
TargetAdd('vision.pyd', input='libp3vision_igate.obj')
|
|
|
TargetAdd('vision.pyd', input='libp3vision.dll')
|
|
TargetAdd('vision.pyd', input='libp3vision.dll')
|
|
|
- TargetAdd('vision.pyd', input='core.pyd')
|
|
|
|
|
TargetAdd('vision.pyd', input=COMMON_PANDA_LIBS)
|
|
TargetAdd('vision.pyd', input=COMMON_PANDA_LIBS)
|
|
|
TargetAdd('vision.pyd', opts=['PYTHON'])
|
|
TargetAdd('vision.pyd', opts=['PYTHON'])
|
|
|
|
|
|
|
@@ -3904,13 +3911,12 @@ if (PkgSkip("ROCKET") == 0) and (not RUNTIME):
|
|
|
|
|
|
|
|
TargetAdd('rocket_module.obj', input='libp3rocket.in')
|
|
TargetAdd('rocket_module.obj', input='libp3rocket.in')
|
|
|
TargetAdd('rocket_module.obj', opts=OPTS)
|
|
TargetAdd('rocket_module.obj', opts=OPTS)
|
|
|
- TargetAdd('rocket_module.obj', opts=['IMOD:panda3d.rocket', 'ILIB:rocket'])
|
|
|
|
|
|
|
+ TargetAdd('rocket_module.obj', opts=['IMOD:panda3d.rocket', 'ILIB:rocket', 'IMPORT:panda3d.core'])
|
|
|
|
|
|
|
|
TargetAdd('rocket.pyd', input='rocket_module.obj')
|
|
TargetAdd('rocket.pyd', input='rocket_module.obj')
|
|
|
TargetAdd('rocket.pyd', input='libp3rocket_igate.obj')
|
|
TargetAdd('rocket.pyd', input='libp3rocket_igate.obj')
|
|
|
TargetAdd('rocket.pyd', input='p3rocket_rocketRegion_ext.obj')
|
|
TargetAdd('rocket.pyd', input='p3rocket_rocketRegion_ext.obj')
|
|
|
TargetAdd('rocket.pyd', input='libp3rocket.dll')
|
|
TargetAdd('rocket.pyd', input='libp3rocket.dll')
|
|
|
- TargetAdd('rocket.pyd', input='core.pyd')
|
|
|
|
|
TargetAdd('rocket.pyd', input=COMMON_PANDA_LIBS)
|
|
TargetAdd('rocket.pyd', input=COMMON_PANDA_LIBS)
|
|
|
TargetAdd('rocket.pyd', opts=['PYTHON', 'ROCKET'])
|
|
TargetAdd('rocket.pyd', opts=['PYTHON', 'ROCKET'])
|
|
|
|
|
|
|
@@ -3932,12 +3938,11 @@ if PkgSkip("AWESOMIUM") == 0 and not RUNTIME:
|
|
|
|
|
|
|
|
TargetAdd('awesomium_module.obj', input='libp3awesomium.in')
|
|
TargetAdd('awesomium_module.obj', input='libp3awesomium.in')
|
|
|
TargetAdd('awesomium_module.obj', opts=OPTS)
|
|
TargetAdd('awesomium_module.obj', opts=OPTS)
|
|
|
- TargetAdd('awesomium_module.obj', opts=['IMOD:panda3d.awesomium', 'ILIB:awesomium'])
|
|
|
|
|
|
|
+ TargetAdd('awesomium_module.obj', opts=['IMOD:panda3d.awesomium', 'ILIB:awesomium', 'IMPORT:panda3d.core'])
|
|
|
|
|
|
|
|
TargetAdd('awesomium.pyd', input='awesomium_module.obj')
|
|
TargetAdd('awesomium.pyd', input='awesomium_module.obj')
|
|
|
TargetAdd('awesomium.pyd', input='libp3awesomium_igate.obj')
|
|
TargetAdd('awesomium.pyd', input='libp3awesomium_igate.obj')
|
|
|
TargetAdd('awesomium.pyd', input='libp3awesomium.dll')
|
|
TargetAdd('awesomium.pyd', input='libp3awesomium.dll')
|
|
|
- TargetAdd('awesomium.pyd', input='core.pyd')
|
|
|
|
|
TargetAdd('awesomium.pyd', input=COMMON_PANDA_LIBS)
|
|
TargetAdd('awesomium.pyd', input=COMMON_PANDA_LIBS)
|
|
|
TargetAdd('awesomium.pyd', opts=['PYTHON'])
|
|
TargetAdd('awesomium.pyd', opts=['PYTHON'])
|
|
|
|
|
|
|
@@ -3966,12 +3971,11 @@ if (PkgSkip('SKEL')==0) and (not RUNTIME):
|
|
|
TargetAdd('libpandaskel.dll', opts=OPTS)
|
|
TargetAdd('libpandaskel.dll', opts=OPTS)
|
|
|
|
|
|
|
|
TargetAdd('skel_module.obj', input='libp3skel.in')
|
|
TargetAdd('skel_module.obj', input='libp3skel.in')
|
|
|
- TargetAdd('skel_module.obj', opts=['IMOD:panda3d.skel', 'ILIB:skel'])
|
|
|
|
|
|
|
+ TargetAdd('skel_module.obj', opts=['IMOD:panda3d.skel', 'ILIB:skel', 'IMPORT:panda3d.core'])
|
|
|
|
|
|
|
|
TargetAdd('skel.pyd', input='skel_module.obj')
|
|
TargetAdd('skel.pyd', input='skel_module.obj')
|
|
|
TargetAdd('skel.pyd', input='libp3skel_igate.obj')
|
|
TargetAdd('skel.pyd', input='libp3skel_igate.obj')
|
|
|
TargetAdd('skel.pyd', input='libpandaskel.dll')
|
|
TargetAdd('skel.pyd', input='libpandaskel.dll')
|
|
|
- TargetAdd('skel.pyd', input='core.pyd')
|
|
|
|
|
TargetAdd('skel.pyd', input=COMMON_PANDA_LIBS)
|
|
TargetAdd('skel.pyd', input=COMMON_PANDA_LIBS)
|
|
|
TargetAdd('skel.pyd', opts=['PYTHON'])
|
|
TargetAdd('skel.pyd', opts=['PYTHON'])
|
|
|
|
|
|
|
@@ -4005,12 +4009,11 @@ if (PkgSkip('PANDAFX')==0) and (not RUNTIME):
|
|
|
OPTS=['DIR:panda/metalibs/pandafx', 'DIR:panda/src/distort', 'NVIDIACG']
|
|
OPTS=['DIR:panda/metalibs/pandafx', 'DIR:panda/src/distort', 'NVIDIACG']
|
|
|
TargetAdd('fx_module.obj', input='libp3distort.in')
|
|
TargetAdd('fx_module.obj', input='libp3distort.in')
|
|
|
TargetAdd('fx_module.obj', opts=OPTS)
|
|
TargetAdd('fx_module.obj', opts=OPTS)
|
|
|
- TargetAdd('fx_module.obj', opts=['IMOD:panda3d.fx', 'ILIB:fx'])
|
|
|
|
|
|
|
+ TargetAdd('fx_module.obj', opts=['IMOD:panda3d.fx', 'ILIB:fx', 'IMPORT:panda3d.core'])
|
|
|
|
|
|
|
|
TargetAdd('fx.pyd', input='fx_module.obj')
|
|
TargetAdd('fx.pyd', input='fx_module.obj')
|
|
|
TargetAdd('fx.pyd', input='libp3distort_igate.obj')
|
|
TargetAdd('fx.pyd', input='libp3distort_igate.obj')
|
|
|
TargetAdd('fx.pyd', input='libpandafx.dll')
|
|
TargetAdd('fx.pyd', input='libpandafx.dll')
|
|
|
- TargetAdd('fx.pyd', input='core.pyd')
|
|
|
|
|
TargetAdd('fx.pyd', input=COMMON_PANDA_LIBS)
|
|
TargetAdd('fx.pyd', input=COMMON_PANDA_LIBS)
|
|
|
TargetAdd('fx.pyd', opts=['PYTHON'])
|
|
TargetAdd('fx.pyd', opts=['PYTHON'])
|
|
|
|
|
|
|
@@ -4033,12 +4036,11 @@ if (PkgSkip("VRPN")==0 and not RUNTIME):
|
|
|
|
|
|
|
|
TargetAdd('vrpn_module.obj', input='libp3vrpn.in')
|
|
TargetAdd('vrpn_module.obj', input='libp3vrpn.in')
|
|
|
TargetAdd('vrpn_module.obj', opts=OPTS)
|
|
TargetAdd('vrpn_module.obj', opts=OPTS)
|
|
|
- TargetAdd('vrpn_module.obj', opts=['IMOD:panda3d.vrpn', 'ILIB:vrpn'])
|
|
|
|
|
|
|
+ TargetAdd('vrpn_module.obj', opts=['IMOD:panda3d.vrpn', 'ILIB:vrpn', 'IMPORT:panda3d.core'])
|
|
|
|
|
|
|
|
TargetAdd('vrpn.pyd', input='vrpn_module.obj')
|
|
TargetAdd('vrpn.pyd', input='vrpn_module.obj')
|
|
|
TargetAdd('vrpn.pyd', input='libp3vrpn_igate.obj')
|
|
TargetAdd('vrpn.pyd', input='libp3vrpn_igate.obj')
|
|
|
TargetAdd('vrpn.pyd', input='libp3vrpn.dll')
|
|
TargetAdd('vrpn.pyd', input='libp3vrpn.dll')
|
|
|
- TargetAdd('vrpn.pyd', input='core.pyd')
|
|
|
|
|
TargetAdd('vrpn.pyd', input=COMMON_PANDA_LIBS)
|
|
TargetAdd('vrpn.pyd', input=COMMON_PANDA_LIBS)
|
|
|
TargetAdd('vrpn.pyd', opts=['PYTHON'])
|
|
TargetAdd('vrpn.pyd', opts=['PYTHON'])
|
|
|
|
|
|
|
@@ -4266,14 +4268,13 @@ if (not RUNTIME):
|
|
|
TargetAdd('egg_module.obj', input='libp3egg2pg.in')
|
|
TargetAdd('egg_module.obj', input='libp3egg2pg.in')
|
|
|
TargetAdd('egg_module.obj', input='libp3egg.in')
|
|
TargetAdd('egg_module.obj', input='libp3egg.in')
|
|
|
TargetAdd('egg_module.obj', opts=OPTS)
|
|
TargetAdd('egg_module.obj', opts=OPTS)
|
|
|
- TargetAdd('egg_module.obj', opts=['IMOD:panda3d.egg', 'ILIB:egg'])
|
|
|
|
|
|
|
+ TargetAdd('egg_module.obj', opts=['IMOD:panda3d.egg', 'ILIB:egg', 'IMPORT:panda3d.core'])
|
|
|
|
|
|
|
|
TargetAdd('egg.pyd', input='egg_module.obj')
|
|
TargetAdd('egg.pyd', input='egg_module.obj')
|
|
|
TargetAdd('egg.pyd', input='p3egg_eggGroupNode_ext.obj')
|
|
TargetAdd('egg.pyd', input='p3egg_eggGroupNode_ext.obj')
|
|
|
TargetAdd('egg.pyd', input='libp3egg_igate.obj')
|
|
TargetAdd('egg.pyd', input='libp3egg_igate.obj')
|
|
|
TargetAdd('egg.pyd', input='libp3egg2pg_igate.obj')
|
|
TargetAdd('egg.pyd', input='libp3egg2pg_igate.obj')
|
|
|
TargetAdd('egg.pyd', input='libpandaegg.dll')
|
|
TargetAdd('egg.pyd', input='libpandaegg.dll')
|
|
|
- TargetAdd('egg.pyd', input='core.pyd')
|
|
|
|
|
TargetAdd('egg.pyd', input=COMMON_PANDA_LIBS)
|
|
TargetAdd('egg.pyd', input=COMMON_PANDA_LIBS)
|
|
|
TargetAdd('egg.pyd', opts=['PYTHON'])
|
|
TargetAdd('egg.pyd', opts=['PYTHON'])
|
|
|
|
|
|
|
@@ -4450,13 +4451,12 @@ if (PkgSkip("ODE")==0 and not RUNTIME):
|
|
|
OPTS=['DIR:panda/metalibs/pandaode', 'ODE']
|
|
OPTS=['DIR:panda/metalibs/pandaode', 'ODE']
|
|
|
TargetAdd('ode_module.obj', input='libpandaode.in')
|
|
TargetAdd('ode_module.obj', input='libpandaode.in')
|
|
|
TargetAdd('ode_module.obj', opts=OPTS)
|
|
TargetAdd('ode_module.obj', opts=OPTS)
|
|
|
- TargetAdd('ode_module.obj', opts=['IMOD:panda3d.ode', 'ILIB:ode'])
|
|
|
|
|
|
|
+ TargetAdd('ode_module.obj', opts=['IMOD:panda3d.ode', 'ILIB:ode', 'IMPORT:panda3d.core'])
|
|
|
|
|
|
|
|
TargetAdd('ode.pyd', input='ode_module.obj')
|
|
TargetAdd('ode.pyd', input='ode_module.obj')
|
|
|
TargetAdd('ode.pyd', input='libpandaode_igate.obj')
|
|
TargetAdd('ode.pyd', input='libpandaode_igate.obj')
|
|
|
TargetAdd('ode.pyd', input='p3ode_ext_composite.obj')
|
|
TargetAdd('ode.pyd', input='p3ode_ext_composite.obj')
|
|
|
TargetAdd('ode.pyd', input='libpandaode.dll')
|
|
TargetAdd('ode.pyd', input='libpandaode.dll')
|
|
|
- TargetAdd('ode.pyd', input='core.pyd')
|
|
|
|
|
TargetAdd('ode.pyd', input=COMMON_PANDA_LIBS)
|
|
TargetAdd('ode.pyd', input=COMMON_PANDA_LIBS)
|
|
|
TargetAdd('ode.pyd', opts=['PYTHON', 'WINUSER', 'ODE'])
|
|
TargetAdd('ode.pyd', opts=['PYTHON', 'WINUSER', 'ODE'])
|
|
|
|
|
|
|
@@ -4488,12 +4488,11 @@ if (PkgSkip("BULLET")==0 and not RUNTIME):
|
|
|
OPTS=['DIR:panda/metalibs/pandabullet', 'BULLET']
|
|
OPTS=['DIR:panda/metalibs/pandabullet', 'BULLET']
|
|
|
TargetAdd('bullet_module.obj', input='libpandabullet.in')
|
|
TargetAdd('bullet_module.obj', input='libpandabullet.in')
|
|
|
TargetAdd('bullet_module.obj', opts=OPTS)
|
|
TargetAdd('bullet_module.obj', opts=OPTS)
|
|
|
- TargetAdd('bullet_module.obj', opts=['IMOD:panda3d.bullet', 'ILIB:bullet'])
|
|
|
|
|
|
|
+ TargetAdd('bullet_module.obj', opts=['IMOD:panda3d.bullet', 'ILIB:bullet', 'IMPORT:panda3d.core'])
|
|
|
|
|
|
|
|
TargetAdd('bullet.pyd', input='bullet_module.obj')
|
|
TargetAdd('bullet.pyd', input='bullet_module.obj')
|
|
|
TargetAdd('bullet.pyd', input='libpandabullet_igate.obj')
|
|
TargetAdd('bullet.pyd', input='libpandabullet_igate.obj')
|
|
|
TargetAdd('bullet.pyd', input='libpandabullet.dll')
|
|
TargetAdd('bullet.pyd', input='libpandabullet.dll')
|
|
|
- TargetAdd('bullet.pyd', input='core.pyd')
|
|
|
|
|
TargetAdd('bullet.pyd', input=COMMON_PANDA_LIBS)
|
|
TargetAdd('bullet.pyd', input=COMMON_PANDA_LIBS)
|
|
|
TargetAdd('bullet.pyd', opts=['PYTHON', 'WINUSER', 'BULLET'])
|
|
TargetAdd('bullet.pyd', opts=['PYTHON', 'WINUSER', 'BULLET'])
|
|
|
|
|
|
|
@@ -4527,12 +4526,11 @@ if (PkgSkip("PHYSX")==0):
|
|
|
OPTS=['DIR:panda/metalibs/pandaphysx', 'PHYSX', 'NOARCH:PPC']
|
|
OPTS=['DIR:panda/metalibs/pandaphysx', 'PHYSX', 'NOARCH:PPC']
|
|
|
TargetAdd('physx_module.obj', input='libpandaphysx.in')
|
|
TargetAdd('physx_module.obj', input='libpandaphysx.in')
|
|
|
TargetAdd('physx_module.obj', opts=OPTS)
|
|
TargetAdd('physx_module.obj', opts=OPTS)
|
|
|
- TargetAdd('physx_module.obj', opts=['IMOD:panda3d.physx', 'ILIB:physx'])
|
|
|
|
|
|
|
+ TargetAdd('physx_module.obj', opts=['IMOD:panda3d.physx', 'ILIB:physx', 'IMPORT:panda3d.core'])
|
|
|
|
|
|
|
|
TargetAdd('physx.pyd', input='physx_module.obj')
|
|
TargetAdd('physx.pyd', input='physx_module.obj')
|
|
|
TargetAdd('physx.pyd', input='libpandaphysx_igate.obj')
|
|
TargetAdd('physx.pyd', input='libpandaphysx_igate.obj')
|
|
|
TargetAdd('physx.pyd', input='libpandaphysx.dll')
|
|
TargetAdd('physx.pyd', input='libpandaphysx.dll')
|
|
|
- TargetAdd('physx.pyd', input='core.pyd')
|
|
|
|
|
TargetAdd('physx.pyd', input=COMMON_PANDA_LIBS)
|
|
TargetAdd('physx.pyd', input=COMMON_PANDA_LIBS)
|
|
|
TargetAdd('physx.pyd', opts=['PYTHON', 'WINUSER', 'PHYSX', 'NOARCH:PPC'])
|
|
TargetAdd('physx.pyd', opts=['PYTHON', 'WINUSER', 'PHYSX', 'NOARCH:PPC'])
|
|
|
|
|
|
|
@@ -4593,14 +4591,13 @@ if (PkgSkip("PANDAPHYSICS")==0) and (not RUNTIME):
|
|
|
if (PkgSkip("PANDAPARTICLESYSTEM")==0):
|
|
if (PkgSkip("PANDAPARTICLESYSTEM")==0):
|
|
|
TargetAdd('physics_module.obj', input='libp3particlesystem.in')
|
|
TargetAdd('physics_module.obj', input='libp3particlesystem.in')
|
|
|
TargetAdd('physics_module.obj', opts=OPTS)
|
|
TargetAdd('physics_module.obj', opts=OPTS)
|
|
|
- TargetAdd('physics_module.obj', opts=['IMOD:panda3d.physics', 'ILIB:physics'])
|
|
|
|
|
|
|
+ TargetAdd('physics_module.obj', opts=['IMOD:panda3d.physics', 'ILIB:physics', 'IMPORT:panda3d.core'])
|
|
|
|
|
|
|
|
TargetAdd('physics.pyd', input='physics_module.obj')
|
|
TargetAdd('physics.pyd', input='physics_module.obj')
|
|
|
TargetAdd('physics.pyd', input='libp3physics_igate.obj')
|
|
TargetAdd('physics.pyd', input='libp3physics_igate.obj')
|
|
|
if (PkgSkip("PANDAPARTICLESYSTEM")==0):
|
|
if (PkgSkip("PANDAPARTICLESYSTEM")==0):
|
|
|
TargetAdd('physics.pyd', input='libp3particlesystem_igate.obj')
|
|
TargetAdd('physics.pyd', input='libp3particlesystem_igate.obj')
|
|
|
TargetAdd('physics.pyd', input='libpandaphysics.dll')
|
|
TargetAdd('physics.pyd', input='libpandaphysics.dll')
|
|
|
- TargetAdd('physics.pyd', input='core.pyd')
|
|
|
|
|
TargetAdd('physics.pyd', input=COMMON_PANDA_LIBS)
|
|
TargetAdd('physics.pyd', input=COMMON_PANDA_LIBS)
|
|
|
TargetAdd('physics.pyd', opts=['PYTHON'])
|
|
TargetAdd('physics.pyd', opts=['PYTHON'])
|
|
|
|
|
|
|
@@ -4854,7 +4851,7 @@ if (PkgSkip("DIRECT")==0):
|
|
|
TargetAdd('direct_module.obj', input='libp3interval.in')
|
|
TargetAdd('direct_module.obj', input='libp3interval.in')
|
|
|
TargetAdd('direct_module.obj', input='libp3distributed.in')
|
|
TargetAdd('direct_module.obj', input='libp3distributed.in')
|
|
|
TargetAdd('direct_module.obj', opts=OPTS)
|
|
TargetAdd('direct_module.obj', opts=OPTS)
|
|
|
- TargetAdd('direct_module.obj', opts=['IMOD:panda3d.direct', 'ILIB:direct'])
|
|
|
|
|
|
|
+ TargetAdd('direct_module.obj', opts=['IMOD:panda3d.direct', 'ILIB:direct', 'IMPORT:panda3d.core'])
|
|
|
|
|
|
|
|
TargetAdd('direct.pyd', input='libp3dcparser_igate.obj')
|
|
TargetAdd('direct.pyd', input='libp3dcparser_igate.obj')
|
|
|
TargetAdd('direct.pyd', input='libp3showbase_igate.obj')
|
|
TargetAdd('direct.pyd', input='libp3showbase_igate.obj')
|
|
@@ -4864,7 +4861,6 @@ if (PkgSkip("DIRECT")==0):
|
|
|
|
|
|
|
|
TargetAdd('direct.pyd', input='direct_module.obj')
|
|
TargetAdd('direct.pyd', input='direct_module.obj')
|
|
|
TargetAdd('direct.pyd', input='libp3direct.dll')
|
|
TargetAdd('direct.pyd', input='libp3direct.dll')
|
|
|
- TargetAdd('direct.pyd', input='core.pyd')
|
|
|
|
|
TargetAdd('direct.pyd', input=COMMON_PANDA_LIBS)
|
|
TargetAdd('direct.pyd', input=COMMON_PANDA_LIBS)
|
|
|
TargetAdd('direct.pyd', opts=['PYTHON', 'OPENSSL', 'WINUSER', 'WINGDI'])
|
|
TargetAdd('direct.pyd', opts=['PYTHON', 'OPENSSL', 'WINUSER', 'WINGDI'])
|
|
|
|
|
|
|
@@ -5257,6 +5253,16 @@ if (PkgSkip("PANDATOOL")==0 and PkgSkip("FCOLLADA")==0):
|
|
|
TargetAdd('libp3daeegg.lib', input='p3daeegg_composite1.obj')
|
|
TargetAdd('libp3daeegg.lib', input='p3daeegg_composite1.obj')
|
|
|
TargetAdd('libp3daeegg.lib', opts=['FCOLLADA', 'CARBON'])
|
|
TargetAdd('libp3daeegg.lib', opts=['FCOLLADA', 'CARBON'])
|
|
|
|
|
|
|
|
|
|
+#
|
|
|
|
|
+# DIRECTORY: pandatool/src/assimp
|
|
|
|
|
+#
|
|
|
|
|
+if (PkgSkip("PANDATOOL") == 0 and PkgSkip("ASSIMP")==0):
|
|
|
|
|
+ OPTS=['DIR:pandatool/src/assimp', 'ASSIMP', 'MODULE']
|
|
|
|
|
+ TargetAdd('p3assimp_composite1.obj', opts=OPTS, input='p3assimp_composite1.cxx')
|
|
|
|
|
+ TargetAdd('libp3assimp.dll', input='p3assimp_composite1.obj')
|
|
|
|
|
+ TargetAdd('libp3assimp.dll', input=COMMON_PANDA_LIBS)
|
|
|
|
|
+ TargetAdd('libp3assimp.dll', opts=OPTS)
|
|
|
|
|
+
|
|
|
#
|
|
#
|
|
|
# DIRECTORY: pandatool/src/daeprogs/
|
|
# DIRECTORY: pandatool/src/daeprogs/
|
|
|
#
|
|
#
|
|
@@ -6054,12 +6060,11 @@ if (PkgSkip("CONTRIB")==0 and not RUNTIME):
|
|
|
|
|
|
|
|
TargetAdd('ai_module.obj', input='libpandaai.in')
|
|
TargetAdd('ai_module.obj', input='libpandaai.in')
|
|
|
TargetAdd('ai_module.obj', opts=OPTS)
|
|
TargetAdd('ai_module.obj', opts=OPTS)
|
|
|
- TargetAdd('ai_module.obj', opts=['IMOD:panda3d.ai', 'ILIB:ai'])
|
|
|
|
|
|
|
+ TargetAdd('ai_module.obj', opts=['IMOD:panda3d.ai', 'ILIB:ai', 'IMPORT:panda3d.core'])
|
|
|
|
|
|
|
|
TargetAdd('ai.pyd', input='ai_module.obj')
|
|
TargetAdd('ai.pyd', input='ai_module.obj')
|
|
|
TargetAdd('ai.pyd', input='libpandaai_igate.obj')
|
|
TargetAdd('ai.pyd', input='libpandaai_igate.obj')
|
|
|
TargetAdd('ai.pyd', input='libpandaai.dll')
|
|
TargetAdd('ai.pyd', input='libpandaai.dll')
|
|
|
- TargetAdd('ai.pyd', input='core.pyd')
|
|
|
|
|
TargetAdd('ai.pyd', input=COMMON_PANDA_LIBS)
|
|
TargetAdd('ai.pyd', input=COMMON_PANDA_LIBS)
|
|
|
TargetAdd('ai.pyd', opts=['PYTHON'])
|
|
TargetAdd('ai.pyd', opts=['PYTHON'])
|
|
|
|
|
|