|
|
@@ -63,7 +63,6 @@ MAJOR_VERSION=None
|
|
|
COREAPI_VERSION=None
|
|
|
PLUGIN_VERSION=None
|
|
|
OSXTARGET=None
|
|
|
-OSX_ARCHS=[]
|
|
|
HOST_URL=None
|
|
|
global STRDXSDKVERSION, BOOUSEINTELCOMPILER
|
|
|
STRDXSDKVERSION = 'default'
|
|
|
@@ -94,7 +93,7 @@ PkgListSet(["PYTHON", "DIRECT", # Python support
|
|
|
"GTK2", # GTK2 is used for PStats on Unix
|
|
|
"MFC", "WX", "FLTK", # Used for web plug-in only
|
|
|
"ROCKET", # GUI libraries
|
|
|
- "CARBON", "COCOA", # Mac OS X toolkits
|
|
|
+ "COCOA", # Mac OS X toolkits
|
|
|
"X11", # Unix platform support
|
|
|
"PANDATOOL", "PVIEW", "DEPLOYTOOLS", # Toolchain
|
|
|
"SKEL", # Example SKEL project
|
|
|
@@ -142,7 +141,6 @@ def usage(problem):
|
|
|
print(" --host URL (set the host url (runtime build only))")
|
|
|
print(" --threads N (use the multithreaded build system. see manual)")
|
|
|
print(" --osxtarget N (the OS X version number to build for (OS X only))")
|
|
|
- print(" --universal (build universal binaries (OS X only))")
|
|
|
print(" --override \"O=V\" (override dtool_config/prc option value)")
|
|
|
print(" --static (builds libraries for static linking)")
|
|
|
print(" --target X (experimental cross-compilation (android only))")
|
|
|
@@ -159,7 +157,7 @@ def usage(problem):
|
|
|
print(" --everything (enable every third-party lib)")
|
|
|
print(" --directx-sdk=X (specify version of DirectX SDK to use: jun2010, aug2009, mar2009, aug2006)")
|
|
|
print(" --windows-sdk=X (specify Windows SDK version, eg. 7.0, 7.1 or 10. Default is 7.1)")
|
|
|
- print(" --msvc-version=X (specify Visual C++ version, eg. 10, 11, 12, 14. Default is 14)")
|
|
|
+ print(" --msvc-version=X (specify Visual C++ version, eg. 10, 11, 12, 14, 14.1, 14.2. Default is 14)")
|
|
|
print(" --use-icl (experimental setting to use an intel compiler instead of MSVC on Windows)")
|
|
|
print("")
|
|
|
print("The simplest way to compile panda is to just type:")
|
|
|
@@ -170,7 +168,7 @@ def usage(problem):
|
|
|
|
|
|
def parseopts(args):
|
|
|
global INSTALLER,WHEEL,RUNTESTS,RTDIST,RUNTIME,GENMAN,DISTRIBUTOR,VERSION
|
|
|
- global COMPRESSOR,THREADCOUNT,OSXTARGET,OSX_ARCHS,HOST_URL
|
|
|
+ global COMPRESSOR,THREADCOUNT,OSXTARGET,HOST_URL
|
|
|
global DEBVERSION,WHLVERSION,RPMRELEASE,GIT_COMMIT,P3DSUFFIX,RTDIST_VERSION
|
|
|
global STRDXSDKVERSION, WINDOWS_SDK, MSVC_VERSION, BOOUSEINTELCOMPILER
|
|
|
global COPY_PYTHON
|
|
|
@@ -178,6 +176,7 @@ def parseopts(args):
|
|
|
# Options for which to display a deprecation warning.
|
|
|
removedopts = [
|
|
|
"use-touchinput", "no-touchinput", "no-awesomium", "no-directscripts",
|
|
|
+ "no-carbon", "universal",
|
|
|
]
|
|
|
|
|
|
# All recognized options.
|
|
|
@@ -187,14 +186,13 @@ def parseopts(args):
|
|
|
"version=","lzma","no-python","threads=","outputdir=","override=",
|
|
|
"static","host=","debversion=","rpmrelease=","p3dsuffix=","rtdist-version=",
|
|
|
"directx-sdk=", "windows-sdk=", "msvc-version=", "clean", "use-icl",
|
|
|
- "universal", "target=", "arch=", "git-commit=", "no-copy-python",
|
|
|
+ "target=", "arch=", "git-commit=", "no-copy-python",
|
|
|
] + removedopts
|
|
|
|
|
|
anything = 0
|
|
|
optimize = ""
|
|
|
target = None
|
|
|
target_arch = None
|
|
|
- universal = False
|
|
|
clean_build = False
|
|
|
for pkg in PkgListGet():
|
|
|
longopts.append("use-" + pkg.lower())
|
|
|
@@ -220,7 +218,6 @@ def parseopts(args):
|
|
|
elif (option=="--threads"): THREADCOUNT=int(value)
|
|
|
elif (option=="--outputdir"): SetOutputDir(value.strip())
|
|
|
elif (option=="--osxtarget"): OSXTARGET=value.strip()
|
|
|
- elif (option=="--universal"): universal = True
|
|
|
elif (option=="--target"): target = value.strip()
|
|
|
elif (option=="--arch"): target_arch = value.strip()
|
|
|
elif (option=="--nocolor"): DisableColors()
|
|
|
@@ -302,25 +299,6 @@ def parseopts(args):
|
|
|
if target is not None or target_arch is not None:
|
|
|
SetTarget(target, target_arch)
|
|
|
|
|
|
- if universal:
|
|
|
- if target_arch:
|
|
|
- exit("--universal is incompatible with --arch")
|
|
|
-
|
|
|
- OSX_ARCHS.append("i386")
|
|
|
- if OSXTARGET:
|
|
|
- osxver = OSXTARGET
|
|
|
- else:
|
|
|
- maj, min = platform.mac_ver()[0].split('.')[:2]
|
|
|
- osxver = int(maj), int(min)
|
|
|
-
|
|
|
- if osxver[1] < 6:
|
|
|
- OSX_ARCHS.append("ppc")
|
|
|
- else:
|
|
|
- OSX_ARCHS.append("x86_64")
|
|
|
-
|
|
|
- elif HasTargetArch():
|
|
|
- OSX_ARCHS.append(GetTargetArch())
|
|
|
-
|
|
|
try:
|
|
|
SetOptimize(int(optimize))
|
|
|
assert GetOptimize() in [1, 2, 3, 4]
|
|
|
@@ -432,22 +410,7 @@ elif target == 'darwin':
|
|
|
maj, min = platform.mac_ver()[0].split('.')[:2]
|
|
|
osxver = int(maj), int(min)
|
|
|
|
|
|
- arch_tag = None
|
|
|
- if not OSX_ARCHS:
|
|
|
- arch_tag = GetTargetArch()
|
|
|
- elif len(OSX_ARCHS) == 1:
|
|
|
- arch_tag = OSX_ARCHS[0]
|
|
|
- elif frozenset(OSX_ARCHS) == frozenset(('i386', 'ppc')):
|
|
|
- arch_tag = 'fat'
|
|
|
- elif frozenset(OSX_ARCHS) == frozenset(('x86_64', 'i386')):
|
|
|
- arch_tag = 'intel'
|
|
|
- elif frozenset(OSX_ARCHS) == frozenset(('x86_64', 'ppc64')):
|
|
|
- arch_tag = 'fat64'
|
|
|
- elif frozenset(OSX_ARCHS) == frozenset(('x86_64', 'i386', 'ppc')):
|
|
|
- arch_tag = 'fat32'
|
|
|
- else:
|
|
|
- raise RuntimeError('No arch tag for arch combination %s' % OSX_ARCHS)
|
|
|
-
|
|
|
+ arch_tag = GetTargetArch()
|
|
|
PLATFORM = 'macosx-{0}.{1}-{2}'.format(osxver[0], osxver[1], arch_tag)
|
|
|
|
|
|
elif target == 'linux' and (os.path.isfile("/lib/libc-2.5.so") or os.path.isfile("/lib64/libc-2.5.so")) and os.path.isdir("/opt/python"):
|
|
|
@@ -622,7 +585,6 @@ if (COMPILER == "MSVC"):
|
|
|
PkgDisable("GLES")
|
|
|
PkgDisable("GLES2")
|
|
|
PkgDisable("EGL")
|
|
|
- PkgDisable("CARBON")
|
|
|
PkgDisable("COCOA")
|
|
|
DefSymbol("FLEX", "YY_NO_UNISTD_H")
|
|
|
if (PkgSkip("PYTHON")==0):
|
|
|
@@ -875,14 +837,10 @@ if (COMPILER == "MSVC"):
|
|
|
|
|
|
if (COMPILER=="GCC"):
|
|
|
if GetTarget() != "darwin":
|
|
|
- PkgDisable("CARBON")
|
|
|
PkgDisable("COCOA")
|
|
|
elif RUNTIME:
|
|
|
# We don't support Cocoa in the runtime yet.
|
|
|
PkgDisable("COCOA")
|
|
|
- if 'x86_64' in OSX_ARCHS:
|
|
|
- # 64-bits OS X doesn't have Carbon.
|
|
|
- PkgDisable("CARBON")
|
|
|
|
|
|
#if (PkgSkip("PYTHON")==0):
|
|
|
# IncDirectory("PYTHON", SDK["PYTHON"])
|
|
|
@@ -905,13 +863,14 @@ if (COMPILER=="GCC"):
|
|
|
fcollada_libs = ("FColladaD", "FColladaSD", "FColladaS")
|
|
|
# WARNING! The order of the ffmpeg libraries matters!
|
|
|
ffmpeg_libs = ("libavformat", "libavcodec", "libavutil")
|
|
|
+ assimp_libs = ("libassimp", "libassimpd")
|
|
|
|
|
|
# Name pkg-config libs, include(dir)s
|
|
|
if (not RUNTIME):
|
|
|
SmartPkgEnable("EIGEN", "eigen3", (), ("Eigen/Dense",), target_pkg = 'ALWAYS')
|
|
|
SmartPkgEnable("ARTOOLKIT", "", ("AR"), "AR/ar.h")
|
|
|
SmartPkgEnable("FCOLLADA", "", ChooseLib(fcollada_libs, "FCOLLADA"), ("FCollada", "FCollada/FCollada.h"))
|
|
|
- SmartPkgEnable("ASSIMP", "assimp", ("assimp"), "assimp/Importer.hpp")
|
|
|
+ SmartPkgEnable("ASSIMP", "assimp", ChooseLib(assimp_libs, "ASSIMP"), "assimp/Importer.hpp")
|
|
|
SmartPkgEnable("FFMPEG", ffmpeg_libs, ffmpeg_libs, ("libavformat/avformat.h", "libavcodec/avcodec.h", "libavutil/avutil.h"))
|
|
|
SmartPkgEnable("SWSCALE", "libswscale", "libswscale", ("libswscale/swscale.h"), target_pkg = "FFMPEG", thirdparty_dir = "ffmpeg")
|
|
|
SmartPkgEnable("SWRESAMPLE","libswresample", "libswresample", ("libswresample/swresample.h"), target_pkg = "FFMPEG", thirdparty_dir = "ffmpeg")
|
|
|
@@ -938,7 +897,6 @@ if (COMPILER=="GCC"):
|
|
|
|
|
|
if not PkgSkip("FFMPEG"):
|
|
|
if GetTarget() == "darwin":
|
|
|
- LibName("FFMPEG", "-Wl,-read_only_relocs,suppress")
|
|
|
LibName("FFMPEG", "-framework VideoDecodeAcceleration")
|
|
|
elif os.path.isfile(GetThirdpartyDir() + "ffmpeg/lib/libavcodec.a"):
|
|
|
# Needed when linking ffmpeg statically on Linux.
|
|
|
@@ -1351,9 +1309,11 @@ def CompileCxx(obj,src,opts):
|
|
|
cmd += " -isysroot " + SDK["MACOSX"]
|
|
|
cmd += " -mmacosx-version-min=%d.%d" % (OSXTARGET)
|
|
|
|
|
|
- for arch in OSX_ARCHS:
|
|
|
- if 'NOARCH:' + arch.upper() not in opts:
|
|
|
- cmd += " -arch %s" % arch
|
|
|
+ # Use libc++ to enable C++11 features.
|
|
|
+ cmd += " -stdlib=libc++"
|
|
|
+
|
|
|
+ arch = GetTargetArch()
|
|
|
+ cmd += " -arch %s" % arch
|
|
|
|
|
|
if "SYSROOT" in SDK:
|
|
|
if GetTarget() != "android":
|
|
|
@@ -1570,7 +1530,7 @@ def CompileIgate(woutd,wsrc,opts):
|
|
|
# NOTE: this 1600 value is the version number for VC2010.
|
|
|
cmd += ' -D_MSC_VER=1600 -D"__declspec(param)=" -D__cdecl -D_near -D_far -D__near -D__far -D__stdcall'
|
|
|
if (COMPILER=="GCC"):
|
|
|
- cmd += ' -D__attribute__\(x\)='
|
|
|
+ cmd += ' -D__attribute__\\(x\\)='
|
|
|
target_arch = GetTargetArch()
|
|
|
if target_arch in ("x86_64", "amd64"):
|
|
|
cmd += ' -D_LP64'
|
|
|
@@ -1675,9 +1635,9 @@ def CompileLib(lib, obj, opts):
|
|
|
cmd += " /MACHINE:" + GetTargetArch().upper()
|
|
|
cmd += ' /OUT:' + BracketNameWithQuotes(lib)
|
|
|
for x in obj: cmd += ' ' + BracketNameWithQuotes(x)
|
|
|
- cmd += ' /LIBPATH:"C:\Program Files (x86)\Intel\Composer XE 2011 SP1\ipp\lib\ia32"'
|
|
|
- cmd += ' /LIBPATH:"C:\Program Files (x86)\Intel\Composer XE 2011 SP1\TBB\Lib\ia32\vc10"'
|
|
|
- cmd += ' /LIBPATH:"C:\Program Files (x86)\Intel\Composer XE 2011 SP1\compiler\lib\ia32"'
|
|
|
+ cmd += ' /LIBPATH:"C:\\Program Files (x86)\\Intel\\Composer XE 2011 SP1\\ipp\\lib\\ia32"'
|
|
|
+ cmd += ' /LIBPATH:"C:\\Program Files (x86)\\Intel\\Composer XE 2011 SP1\\TBB\\Lib\\ia32\\vc10"'
|
|
|
+ cmd += ' /LIBPATH:"C:\\Program Files (x86)\\Intel\\Composer XE 2011 SP1\\compiler\\lib\\ia32"'
|
|
|
oscmd(cmd)
|
|
|
|
|
|
if (COMPILER=="GCC"):
|
|
|
@@ -1783,9 +1743,9 @@ def CompileLink(dll, obj, opts):
|
|
|
cmd += " /NOD:MFC90.LIB /NOD:MFC80.LIB /NOD:LIBCMT"
|
|
|
cmd += " /NOD:LIBCI.LIB /DEBUG"
|
|
|
cmd += " /nod:libc /nod:libcmtd /nod:atlthunk /nod:atls"
|
|
|
- cmd += ' /LIBPATH:"C:\Program Files (x86)\Intel\Composer XE 2011 SP1\ipp\lib\ia32"'
|
|
|
- cmd += ' /LIBPATH:"C:\Program Files (x86)\Intel\Composer XE 2011 SP1\TBB\Lib\ia32\vc10"'
|
|
|
- cmd += ' /LIBPATH:"C:\Program Files (x86)\Intel\Composer XE 2011 SP1\compiler\lib\ia32"'
|
|
|
+ cmd += ' /LIBPATH:"C:\\Program Files (x86)\\Intel\\Composer XE 2011 SP1\\ipp\\lib\\ia32"'
|
|
|
+ cmd += ' /LIBPATH:"C:\\Program Files (x86)\\Intel\\Composer XE 2011 SP1\\TBB\\Lib\\ia32\\vc10"'
|
|
|
+ cmd += ' /LIBPATH:"C:\\Program Files (x86)\\Intel\\Composer XE 2011 SP1\\compiler\\lib\\ia32"'
|
|
|
if (GetOrigExt(dll) != ".exe"): cmd += " /DLL"
|
|
|
optlevel = GetOptimizeOption(opts)
|
|
|
if (optlevel==1): cmd += " /MAP /MAPINFO:EXPORTS /NOD:MSVCRT.LIB /NOD:MSVCPRT.LIB /NOD:MSVCIRT.LIB"
|
|
|
@@ -1871,9 +1831,11 @@ def CompileLink(dll, obj, opts):
|
|
|
cmd += " -isysroot " + SDK["MACOSX"] + " -Wl,-syslibroot," + SDK["MACOSX"]
|
|
|
cmd += " -mmacosx-version-min=%d.%d" % (OSXTARGET)
|
|
|
|
|
|
- for arch in OSX_ARCHS:
|
|
|
- if 'NOARCH:' + arch.upper() not in opts:
|
|
|
- cmd += " -arch %s" % arch
|
|
|
+ # Use libc++ to enable C++11 features.
|
|
|
+ cmd += " -stdlib=libc++"
|
|
|
+
|
|
|
+ arch = GetTargetArch()
|
|
|
+ cmd += " -arch %s" % arch
|
|
|
|
|
|
elif GetTarget() == 'android':
|
|
|
arch = GetTargetArch()
|
|
|
@@ -2043,7 +2005,10 @@ def CompileRsrc(target, src, opts):
|
|
|
|
|
|
def CompileJava(target, src, opts):
|
|
|
"""Compiles a .java file into a .class file."""
|
|
|
- cmd = "ecj "
|
|
|
+ if GetHost() == 'android':
|
|
|
+ cmd = "ecj "
|
|
|
+ else:
|
|
|
+ cmd = "javac -bootclasspath " + BracketNameWithQuotes(SDK["ANDROID_JAR"]) + " "
|
|
|
|
|
|
optlevel = GetOptimizeOption(opts)
|
|
|
if optlevel >= 4:
|
|
|
@@ -2124,10 +2089,10 @@ def Package(target, inputs, opts):
|
|
|
if SDK.get("MACOSX"):
|
|
|
command += " -R \"%s\"" % SDK["MACOSX"]
|
|
|
|
|
|
- for arch in OSX_ARCHS:
|
|
|
- if arch == "x86_64":
|
|
|
- arch = "amd64"
|
|
|
- command += " -P osx_%s" % arch
|
|
|
+ arch = GetTargetArch()
|
|
|
+ if arch == "x86_64":
|
|
|
+ arch = "amd64"
|
|
|
+ command += " -P osx_%s" % arch
|
|
|
|
|
|
command += " -i \"" + GetOutputDir() + "/stage\""
|
|
|
if (P3DSUFFIX):
|
|
|
@@ -2450,7 +2415,6 @@ DTOOL_CONFIG=[
|
|
|
("HAVE_ARTOOLKIT", 'UNDEF', 'UNDEF'),
|
|
|
("HAVE_DIRECTCAM", 'UNDEF', 'UNDEF'),
|
|
|
("HAVE_SQUISH", 'UNDEF', 'UNDEF'),
|
|
|
- ("HAVE_CARBON", 'UNDEF', 'UNDEF'),
|
|
|
("HAVE_COCOA", 'UNDEF', 'UNDEF'),
|
|
|
("HAVE_OPENAL_FRAMEWORK", 'UNDEF', 'UNDEF'),
|
|
|
("HAVE_ROCKET_PYTHON", '1', '1'),
|
|
|
@@ -3354,7 +3318,6 @@ if not PkgSkip("EGG"):
|
|
|
if GetTarget() == 'windows':
|
|
|
CopyAllHeaders('panda/src/wgldisplay')
|
|
|
elif GetTarget() == 'darwin':
|
|
|
- CopyAllHeaders('panda/src/osxdisplay')
|
|
|
CopyAllHeaders('panda/src/cocoadisplay')
|
|
|
elif GetTarget() == 'android':
|
|
|
CopyAllHeaders('panda/src/android')
|
|
|
@@ -3402,7 +3365,6 @@ if (PkgSkip("PANDATOOL")==0):
|
|
|
CopyAllHeaders('pandatool/src/progbase')
|
|
|
CopyAllHeaders('pandatool/src/eggbase')
|
|
|
CopyAllHeaders('pandatool/src/bam')
|
|
|
- CopyAllHeaders('pandatool/src/cvscopy')
|
|
|
CopyAllHeaders('pandatool/src/daeegg')
|
|
|
CopyAllHeaders('pandatool/src/daeprogs')
|
|
|
CopyAllHeaders('pandatool/src/dxf')
|
|
|
@@ -4022,12 +3984,12 @@ if (not RUNTIME):
|
|
|
#
|
|
|
|
|
|
if (not RUNTIME):
|
|
|
- OPTS=['DIR:panda/src/display', 'BUILDING:PANDA']
|
|
|
+ OPTS=['DIR:panda/src/display', 'BUILDING:PANDA', 'X11']
|
|
|
TargetAdd('p3display_graphicsStateGuardian.obj', opts=OPTS, input='graphicsStateGuardian.cxx')
|
|
|
TargetAdd('p3display_composite1.obj', opts=OPTS, input='p3display_composite1.cxx')
|
|
|
TargetAdd('p3display_composite2.obj', opts=OPTS, input='p3display_composite2.cxx')
|
|
|
|
|
|
- OPTS=['DIR:panda/src/display']
|
|
|
+ OPTS=['DIR:panda/src/display', 'X11']
|
|
|
IGATEFILES=GetDirectoryContents('panda/src/display', ["*.h", "*_composite*.cxx"])
|
|
|
IGATEFILES.remove("renderBuffer.h")
|
|
|
TargetAdd('libp3display.in', opts=OPTS, input=IGATEFILES)
|
|
|
@@ -4875,26 +4837,6 @@ if (GetTarget() == 'darwin' and PkgSkip("COCOA")==0 and PkgSkip("GL")==0 and not
|
|
|
TargetAdd('libpandagl.dll', input=COMMON_PANDA_LIBS)
|
|
|
TargetAdd('libpandagl.dll', opts=['MODULE', 'GL', 'NVIDIACG', 'CGGL', 'COCOA', 'CARBON'])
|
|
|
|
|
|
-#
|
|
|
-# DIRECTORY: panda/src/osxdisplay/
|
|
|
-#
|
|
|
-
|
|
|
-elif (GetTarget() == 'darwin' and PkgSkip("CARBON")==0 and PkgSkip("GL")==0 and not RUNTIME):
|
|
|
- OPTS=['DIR:panda/src/osxdisplay', 'BUILDING:PANDAGL', 'GL', 'NVIDIACG', 'CGGL']
|
|
|
- TargetAdd('p3osxdisplay_composite1.obj', opts=OPTS, input='p3osxdisplay_composite1.cxx')
|
|
|
- TargetAdd('p3osxdisplay_osxGraphicsWindow.obj', opts=OPTS, input='osxGraphicsWindow.mm')
|
|
|
- OPTS=['DIR:panda/metalibs/pandagl', 'BUILDING:PANDAGL', 'GL', 'NVIDIACG', 'CGGL']
|
|
|
- TargetAdd('pandagl_pandagl.obj', opts=OPTS, input='pandagl.cxx')
|
|
|
- TargetAdd('libpandagl.dll', input='pandagl_pandagl.obj')
|
|
|
- TargetAdd('libpandagl.dll', input='p3glgsg_config_glgsg.obj')
|
|
|
- TargetAdd('libpandagl.dll', input='p3glgsg_glgsg.obj')
|
|
|
- TargetAdd('libpandagl.dll', input='p3osxdisplay_composite1.obj')
|
|
|
- TargetAdd('libpandagl.dll', input='p3osxdisplay_osxGraphicsWindow.obj')
|
|
|
- if (PkgSkip('PANDAFX')==0):
|
|
|
- TargetAdd('libpandagl.dll', input='libpandafx.dll')
|
|
|
- TargetAdd('libpandagl.dll', input=COMMON_PANDA_LIBS)
|
|
|
- TargetAdd('libpandagl.dll', opts=['MODULE', 'GL', 'NVIDIACG', 'CGGL', 'CARBON', 'AGL', 'COCOA'])
|
|
|
-
|
|
|
#
|
|
|
# DIRECTORY: panda/src/wgldisplay/
|
|
|
#
|
|
|
@@ -5035,10 +4977,10 @@ if (PkgSkip("BULLET")==0 and not RUNTIME):
|
|
|
#
|
|
|
|
|
|
if (PkgSkip("PHYSX")==0):
|
|
|
- OPTS=['DIR:panda/src/physx', 'BUILDING:PANDAPHYSX', 'PHYSX', 'NOARCH:PPC']
|
|
|
+ OPTS=['DIR:panda/src/physx', 'BUILDING:PANDAPHYSX', 'PHYSX']
|
|
|
TargetAdd('p3physx_composite.obj', opts=OPTS, input='p3physx_composite.cxx')
|
|
|
|
|
|
- OPTS=['DIR:panda/src/physx', 'PHYSX', 'NOARCH:PPC']
|
|
|
+ OPTS=['DIR:panda/src/physx', 'PHYSX']
|
|
|
IGATEFILES=GetDirectoryContents('panda/src/physx', ["*.h", "*_composite*.cxx"])
|
|
|
TargetAdd('libpandaphysx.in', opts=OPTS, input=IGATEFILES)
|
|
|
TargetAdd('libpandaphysx.in', opts=['IMOD:panda3d.physx', 'ILIB:libpandaphysx', 'SRCDIR:panda/src/physx'])
|
|
|
@@ -5048,15 +4990,15 @@ if (PkgSkip("PHYSX")==0):
|
|
|
#
|
|
|
|
|
|
if (PkgSkip("PHYSX")==0):
|
|
|
- OPTS=['DIR:panda/metalibs/pandaphysx', 'BUILDING:PANDAPHYSX', 'PHYSX', 'NOARCH:PPC', 'PYTHON']
|
|
|
+ OPTS=['DIR:panda/metalibs/pandaphysx', 'BUILDING:PANDAPHYSX', 'PHYSX', 'PYTHON']
|
|
|
TargetAdd('pandaphysx_pandaphysx.obj', opts=OPTS, input='pandaphysx.cxx')
|
|
|
|
|
|
TargetAdd('libpandaphysx.dll', input='pandaphysx_pandaphysx.obj')
|
|
|
TargetAdd('libpandaphysx.dll', input='p3physx_composite.obj')
|
|
|
TargetAdd('libpandaphysx.dll', input=COMMON_PANDA_LIBS)
|
|
|
- TargetAdd('libpandaphysx.dll', opts=['WINUSER', 'PHYSX', 'NOARCH:PPC', 'PYTHON'])
|
|
|
+ TargetAdd('libpandaphysx.dll', opts=['WINUSER', 'PHYSX', 'PYTHON'])
|
|
|
|
|
|
- OPTS=['DIR:panda/metalibs/pandaphysx', 'PHYSX', 'NOARCH:PPC']
|
|
|
+ OPTS=['DIR:panda/metalibs/pandaphysx', 'PHYSX']
|
|
|
PyTargetAdd('physx_module.obj', input='libpandaphysx.in')
|
|
|
PyTargetAdd('physx_module.obj', opts=OPTS)
|
|
|
PyTargetAdd('physx_module.obj', opts=['IMOD:panda3d.physx', 'ILIB:physx', 'IMPORT:panda3d.core'])
|
|
|
@@ -5066,7 +5008,7 @@ if (PkgSkip("PHYSX")==0):
|
|
|
PyTargetAdd('physx.pyd', input='libpandaphysx.dll')
|
|
|
PyTargetAdd('physx.pyd', input='libp3interrogatedb.dll')
|
|
|
PyTargetAdd('physx.pyd', input=COMMON_PANDA_LIBS)
|
|
|
- PyTargetAdd('physx.pyd', opts=['WINUSER', 'PHYSX', 'NOARCH:PPC'])
|
|
|
+ PyTargetAdd('physx.pyd', opts=['WINUSER', 'PHYSX'])
|
|
|
|
|
|
#
|
|
|
# DIRECTORY: panda/src/physics/
|
|
|
@@ -5239,7 +5181,7 @@ if (GetTarget() == 'android' and PkgSkip("EGL")==0 and PkgSkip("GLES")==0 and no
|
|
|
#
|
|
|
|
|
|
if (not RUNTIME and (GetTarget() in ('windows', 'darwin') or PkgSkip("X11")==0) and PkgSkip("TINYDISPLAY")==0):
|
|
|
- OPTS=['DIR:panda/src/tinydisplay', 'BUILDING:TINYDISPLAY']
|
|
|
+ OPTS=['DIR:panda/src/tinydisplay', 'BUILDING:TINYDISPLAY', 'X11']
|
|
|
TargetAdd('p3tinydisplay_composite1.obj', opts=OPTS, input='p3tinydisplay_composite1.cxx')
|
|
|
TargetAdd('p3tinydisplay_composite2.obj', opts=OPTS, input='p3tinydisplay_composite2.cxx')
|
|
|
TargetAdd('p3tinydisplay_ztriangle_1.obj', opts=OPTS, input='ztriangle_1.cxx')
|
|
|
@@ -5247,14 +5189,10 @@ if (not RUNTIME and (GetTarget() in ('windows', 'darwin') or PkgSkip("X11")==0)
|
|
|
TargetAdd('p3tinydisplay_ztriangle_3.obj', opts=OPTS, input='ztriangle_3.cxx')
|
|
|
TargetAdd('p3tinydisplay_ztriangle_4.obj', opts=OPTS, input='ztriangle_4.cxx')
|
|
|
TargetAdd('p3tinydisplay_ztriangle_table.obj', opts=OPTS, input='ztriangle_table.cxx')
|
|
|
- if GetTarget() == 'darwin':
|
|
|
- TargetAdd('p3tinydisplay_tinyOsxGraphicsWindow.obj', opts=OPTS, input='tinyOsxGraphicsWindow.mm')
|
|
|
- TargetAdd('libp3tinydisplay.dll', input='p3tinydisplay_tinyOsxGraphicsWindow.obj')
|
|
|
- TargetAdd('libp3tinydisplay.dll', opts=['CARBON', 'AGL', 'COCOA'])
|
|
|
- elif GetTarget() == 'windows':
|
|
|
+ if GetTarget() == 'windows':
|
|
|
TargetAdd('libp3tinydisplay.dll', input='libp3windisplay.dll')
|
|
|
TargetAdd('libp3tinydisplay.dll', opts=['WINIMM', 'WINGDI', 'WINKERNEL', 'WINOLDNAMES', 'WINUSER', 'WINMM'])
|
|
|
- else:
|
|
|
+ elif GetTarget() != 'darwin':
|
|
|
TargetAdd('libp3tinydisplay.dll', input='p3x11display_composite1.obj')
|
|
|
TargetAdd('libp3tinydisplay.dll', opts=['X11'])
|
|
|
TargetAdd('libp3tinydisplay.dll', input='p3tinydisplay_composite1.obj')
|
|
|
@@ -5799,15 +5737,6 @@ if not PkgSkip("PANDATOOL"):
|
|
|
TargetAdd('egg2bam.exe', input=COMMON_EGG2X_LIBS)
|
|
|
TargetAdd('egg2bam.exe', opts=['ADVAPI', 'FFTW'])
|
|
|
|
|
|
-#
|
|
|
-# DIRECTORY: pandatool/src/cvscopy/
|
|
|
-#
|
|
|
-
|
|
|
-if not PkgSkip("PANDATOOL"):
|
|
|
- OPTS=['DIR:pandatool/src/cvscopy']
|
|
|
- TargetAdd('p3cvscopy_composite1.obj', opts=OPTS, input='p3cvscopy_composite1.cxx')
|
|
|
- TargetAdd('libp3cvscopy.lib', input='p3cvscopy_composite1.obj')
|
|
|
-
|
|
|
#
|
|
|
# DIRECTORY: pandatool/src/daeegg/
|
|
|
#
|
|
|
@@ -5825,7 +5754,7 @@ if not PkgSkip("PANDATOOL") and not PkgSkip("ASSIMP"):
|
|
|
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+['ZLIB'])
|
|
|
+ TargetAdd('libp3assimp.dll', opts=OPTS+['ZLIB', 'ADVAPI'])
|
|
|
|
|
|
#
|
|
|
# DIRECTORY: pandatool/src/daeprogs/
|
|
|
@@ -6072,7 +6001,7 @@ if not PkgSkip("PANDATOOL") and not PkgSkip("EGG"):
|
|
|
#
|
|
|
|
|
|
if not PkgSkip("PANDATOOL"):
|
|
|
- OPTS=['DIR:pandatool/src/fltprogs', 'DIR:pandatool/src/flt', 'DIR:pandatool/src/cvscopy']
|
|
|
+ OPTS=['DIR:pandatool/src/fltprogs', 'DIR:pandatool/src/flt']
|
|
|
TargetAdd('flt-info_fltInfo.obj', opts=OPTS, input='fltInfo.cxx')
|
|
|
TargetAdd('flt-info.exe', input='flt-info_fltInfo.obj')
|
|
|
TargetAdd('flt-info.exe', input='libp3flt.lib')
|
|
|
@@ -6089,15 +6018,6 @@ if not PkgSkip("PANDATOOL"):
|
|
|
TargetAdd('flt-trans.exe', input=COMMON_PANDA_LIBS)
|
|
|
TargetAdd('flt-trans.exe', opts=['ADVAPI'])
|
|
|
|
|
|
- TargetAdd('fltcopy_fltCopy.obj', opts=OPTS, input='fltCopy.cxx')
|
|
|
- TargetAdd('fltcopy.exe', input='fltcopy_fltCopy.obj')
|
|
|
- TargetAdd('fltcopy.exe', input='libp3cvscopy.lib')
|
|
|
- TargetAdd('fltcopy.exe', input='libp3flt.lib')
|
|
|
- TargetAdd('fltcopy.exe', input='libp3progbase.lib')
|
|
|
- TargetAdd('fltcopy.exe', input='libp3pandatoolbase.lib')
|
|
|
- TargetAdd('fltcopy.exe', input=COMMON_PANDA_LIBS)
|
|
|
- TargetAdd('fltcopy.exe', opts=['ADVAPI'])
|
|
|
-
|
|
|
if not PkgSkip("EGG"):
|
|
|
TargetAdd('egg2flt_eggToFlt.obj', opts=OPTS, input='eggToFlt.cxx')
|
|
|
TargetAdd('egg2flt.exe', input='egg2flt_eggToFlt.obj')
|
|
|
@@ -6482,18 +6402,11 @@ if not PkgSkip("PANDATOOL"):
|
|
|
for VER in MAYAVERSIONS:
|
|
|
VNUM = VER[4:]
|
|
|
if not PkgSkip(VER) and not PkgSkip("PANDATOOL") and not PkgSkip("EGG"):
|
|
|
- if GetTarget() == 'darwin' and int(VNUM) >= 2012:
|
|
|
- ARCH_OPTS = ['NOARCH:PPC', 'NOARCH:I386']
|
|
|
- if len(OSX_ARCHS) != 0 and 'x86_64' not in OSX_ARCHS:
|
|
|
- continue
|
|
|
- elif GetTarget() == 'darwin' and int(VNUM) >= 2009:
|
|
|
- ARCH_OPTS = ['NOARCH:PPC']
|
|
|
- elif GetTarget() == 'darwin':
|
|
|
- ARCH_OPTS = ['NOARCH:X86_64']
|
|
|
- else:
|
|
|
- ARCH_OPTS = []
|
|
|
+ if GetTarget() == 'darwin' and int(VNUM) < 2009:
|
|
|
+ # No x86_64 support.
|
|
|
+ continue
|
|
|
|
|
|
- OPTS=['DIR:pandatool/src/mayaprogs', 'DIR:pandatool/src/maya', 'DIR:pandatool/src/mayaegg', 'DIR:pandatool/src/cvscopy', 'BUILDING:MISC', VER] + ARCH_OPTS
|
|
|
+ OPTS=['DIR:pandatool/src/mayaprogs', 'DIR:pandatool/src/maya', 'DIR:pandatool/src/mayaegg', 'BUILDING:MISC', VER]
|
|
|
TargetAdd('mayaeggimport'+VNUM+'_mayaeggimport.obj', opts=OPTS, input='mayaEggImport.cxx')
|
|
|
TargetAdd('mayaeggimport'+VNUM+'.mll', input='mayaegg'+VNUM+'_loader.obj')
|
|
|
TargetAdd('mayaeggimport'+VNUM+'.mll', input='mayaeggimport'+VNUM+'_mayaeggimport.obj')
|
|
|
@@ -6501,7 +6414,7 @@ for VER in MAYAVERSIONS:
|
|
|
TargetAdd('mayaeggimport'+VNUM+'.mll', input=COMMON_PANDA_LIBS)
|
|
|
#if GetTarget() == 'windows':
|
|
|
# TargetAdd('mayaeggimport'+VNUM+'.mll', input='libp3pystub.lib')
|
|
|
- TargetAdd('mayaeggimport'+VNUM+'.mll', opts=['ADVAPI', VER]+ARCH_OPTS)
|
|
|
+ TargetAdd('mayaeggimport'+VNUM+'.mll', opts=['ADVAPI', VER])
|
|
|
|
|
|
TargetAdd('mayaloader'+VNUM+'_config_mayaloader.obj', opts=OPTS, input='config_mayaloader.cxx')
|
|
|
TargetAdd('libp3mayaloader'+VNUM+'.dll', input='mayaloader'+VNUM+'_config_mayaloader.obj')
|
|
|
@@ -6525,7 +6438,7 @@ for VER in MAYAVERSIONS:
|
|
|
TargetAdd('libp3mayaloader'+VNUM+'.dll', input='libp3pandatoolbase.lib')
|
|
|
TargetAdd('libp3mayaloader'+VNUM+'.dll', input='libpandaegg.dll')
|
|
|
TargetAdd('libp3mayaloader'+VNUM+'.dll', input=COMMON_PANDA_LIBS)
|
|
|
- TargetAdd('libp3mayaloader'+VNUM+'.dll', opts=['ADVAPI', VER]+ARCH_OPTS)
|
|
|
+ TargetAdd('libp3mayaloader'+VNUM+'.dll', opts=['ADVAPI', VER])
|
|
|
|
|
|
TargetAdd('mayapview'+VNUM+'_mayaPview.obj', opts=OPTS, input='mayaPview.cxx')
|
|
|
TargetAdd('libmayapview'+VNUM+'.mll', input='mayapview'+VNUM+'_mayaPview.obj')
|
|
|
@@ -6536,7 +6449,7 @@ for VER in MAYAVERSIONS:
|
|
|
TargetAdd('libmayapview'+VNUM+'.mll', input=COMMON_EGG2X_LIBS)
|
|
|
else:
|
|
|
TargetAdd('libmayapview'+VNUM+'.mll', input=COMMON_EGG2X_LIBS)
|
|
|
- TargetAdd('libmayapview'+VNUM+'.mll', opts=['ADVAPI', VER]+ARCH_OPTS)
|
|
|
+ TargetAdd('libmayapview'+VNUM+'.mll', opts=['ADVAPI', VER])
|
|
|
|
|
|
TargetAdd('maya2egg'+VNUM+'_mayaToEgg.obj', opts=OPTS, input='mayaToEgg.cxx')
|
|
|
TargetAdd('maya2egg'+VNUM+'_bin.exe', input='maya2egg'+VNUM+'_mayaToEgg.obj')
|
|
|
@@ -6546,7 +6459,7 @@ for VER in MAYAVERSIONS:
|
|
|
TargetAdd('maya2egg'+VNUM+'_bin.exe', input=COMMON_EGG2X_LIBS)
|
|
|
else:
|
|
|
TargetAdd('maya2egg'+VNUM+'_bin.exe', input=COMMON_EGG2X_LIBS)
|
|
|
- TargetAdd('maya2egg'+VNUM+'_bin.exe', opts=['ADVAPI', VER]+ARCH_OPTS)
|
|
|
+ TargetAdd('maya2egg'+VNUM+'_bin.exe', opts=['ADVAPI', VER])
|
|
|
|
|
|
TargetAdd('egg2maya'+VNUM+'_eggToMaya.obj', opts=OPTS, input='eggToMaya.cxx')
|
|
|
TargetAdd('egg2maya'+VNUM+'_bin.exe', input='egg2maya'+VNUM+'_eggToMaya.obj')
|
|
|
@@ -6556,38 +6469,23 @@ for VER in MAYAVERSIONS:
|
|
|
TargetAdd('egg2maya'+VNUM+'_bin.exe', input=COMMON_EGG2X_LIBS)
|
|
|
else:
|
|
|
TargetAdd('egg2maya'+VNUM+'_bin.exe', input=COMMON_EGG2X_LIBS)
|
|
|
- TargetAdd('egg2maya'+VNUM+'_bin.exe', opts=['ADVAPI', VER]+ARCH_OPTS)
|
|
|
-
|
|
|
- TargetAdd('mayacopy'+VNUM+'_mayaCopy.obj', opts=OPTS, input='mayaCopy.cxx')
|
|
|
- TargetAdd('mayacopy'+VNUM+'_bin.exe', input='mayacopy'+VNUM+'_mayaCopy.obj')
|
|
|
- TargetAdd('mayacopy'+VNUM+'_bin.exe', input='libp3cvscopy.lib')
|
|
|
- TargetAdd('mayacopy'+VNUM+'_bin.exe', input='libmaya'+VNUM+'.lib')
|
|
|
- if GetTarget() == 'windows':
|
|
|
- TargetAdd('mayacopy'+VNUM+'_bin.exe', input=COMMON_EGG2X_LIBS)
|
|
|
- else:
|
|
|
- TargetAdd('mayacopy'+VNUM+'_bin.exe', input=COMMON_EGG2X_LIBS)
|
|
|
- TargetAdd('mayacopy'+VNUM+'_bin.exe', opts=['ADVAPI', VER]+ARCH_OPTS)
|
|
|
+ TargetAdd('egg2maya'+VNUM+'_bin.exe', opts=['ADVAPI', VER])
|
|
|
|
|
|
TargetAdd('mayasavepview'+VNUM+'_mayaSavePview.obj', opts=OPTS, input='mayaSavePview.cxx')
|
|
|
TargetAdd('libmayasavepview'+VNUM+'.mll', input='mayasavepview'+VNUM+'_mayaSavePview.obj')
|
|
|
- TargetAdd('libmayasavepview'+VNUM+'.mll', opts=['ADVAPI', VER]+ARCH_OPTS)
|
|
|
+ TargetAdd('libmayasavepview'+VNUM+'.mll', opts=['ADVAPI', VER])
|
|
|
|
|
|
TargetAdd('mayapath'+VNUM+'.obj', opts=OPTS, input='mayapath.cxx')
|
|
|
|
|
|
TargetAdd('maya2egg'+VNUM+'.exe', input='mayapath'+VNUM+'.obj')
|
|
|
TargetAdd('maya2egg'+VNUM+'.exe', input='libpandaexpress.dll')
|
|
|
TargetAdd('maya2egg'+VNUM+'.exe', input=COMMON_DTOOL_LIBS)
|
|
|
- TargetAdd('maya2egg'+VNUM+'.exe', opts=['ADVAPI']+ARCH_OPTS)
|
|
|
+ TargetAdd('maya2egg'+VNUM+'.exe', opts=['ADVAPI'])
|
|
|
|
|
|
TargetAdd('egg2maya'+VNUM+'.exe', input='mayapath'+VNUM+'.obj')
|
|
|
TargetAdd('egg2maya'+VNUM+'.exe', input='libpandaexpress.dll')
|
|
|
TargetAdd('egg2maya'+VNUM+'.exe', input=COMMON_DTOOL_LIBS)
|
|
|
- TargetAdd('egg2maya'+VNUM+'.exe', opts=['ADVAPI']+ARCH_OPTS)
|
|
|
-
|
|
|
- TargetAdd('mayacopy'+VNUM+'.exe', input='mayapath'+VNUM+'.obj')
|
|
|
- TargetAdd('mayacopy'+VNUM+'.exe', input='libpandaexpress.dll')
|
|
|
- TargetAdd('mayacopy'+VNUM+'.exe', input=COMMON_DTOOL_LIBS)
|
|
|
- TargetAdd('mayacopy'+VNUM+'.exe', opts=['ADVAPI']+ARCH_OPTS)
|
|
|
+ TargetAdd('egg2maya'+VNUM+'.exe', opts=['ADVAPI'])
|
|
|
|
|
|
#
|
|
|
# DIRECTORY: contrib/src/ai/
|
|
|
@@ -6645,7 +6543,7 @@ if PkgSkip("PYTHON") == 0:
|
|
|
|
|
|
if GetTarget() == 'linux' or GetTarget() == 'freebsd':
|
|
|
# Setup rpath so libs can be found in the same directory as the deployed game
|
|
|
- LibName('DEPLOYSTUB', "-Wl,-rpath,\$ORIGIN")
|
|
|
+ LibName('DEPLOYSTUB', "-Wl,-rpath,\\$ORIGIN")
|
|
|
LibName('DEPLOYSTUB', "-Wl,-z,origin")
|
|
|
LibName('DEPLOYSTUB', "-rdynamic")
|
|
|
PyTargetAdd('deploy-stub.exe', input='deploy-stub.obj')
|