mirror of
https://github.com/panda3d/panda3d.git
synced 2025-10-03 10:22:45 -04:00
Backward compatible dir structure on Windows (I hope) and I removed the target system.
It didn't really work well anyways.
This commit is contained in:
parent
afa7801696
commit
92ce5aeaaa
@ -38,7 +38,6 @@ VERBOSE=1
|
|||||||
COMPRESSOR="zlib"
|
COMPRESSOR="zlib"
|
||||||
THREADCOUNT=0
|
THREADCOUNT=0
|
||||||
CFLAGS=""
|
CFLAGS=""
|
||||||
TARGET="all"
|
|
||||||
|
|
||||||
PkgListSet(MAYAVERSIONS + MAXVERSIONS + DXVERSIONS + [
|
PkgListSet(MAYAVERSIONS + MAXVERSIONS + DXVERSIONS + [
|
||||||
"PYTHON","ZLIB","PNG","JPEG","TIFF","VRPN",
|
"PYTHON","ZLIB","PNG","JPEG","TIFF","VRPN",
|
||||||
@ -95,11 +94,11 @@ def usage(problem):
|
|||||||
exit("")
|
exit("")
|
||||||
|
|
||||||
def parseopts(args):
|
def parseopts(args):
|
||||||
global TARGET,OPTIMIZE,INSTALLER,GENMAN
|
global OPTIMIZE,INSTALLER,GENMAN
|
||||||
global VERSION,COMPRESSOR,VERBOSE,THREADCOUNT
|
global VERSION,COMPRESSOR,VERBOSE,THREADCOUNT
|
||||||
longopts = [
|
longopts = [
|
||||||
"help","target=",
|
"help",
|
||||||
"optimize=","everything","nothing",
|
"optimize=","everything","nothing","installer",
|
||||||
"version=","lzma","no-python","threads=","outputdir="]
|
"version=","lzma","no-python","threads=","outputdir="]
|
||||||
anything = 0
|
anything = 0
|
||||||
for pkg in PkgListGet(): longopts.append("no-"+pkg.lower())
|
for pkg in PkgListGet(): longopts.append("no-"+pkg.lower())
|
||||||
@ -108,7 +107,6 @@ def parseopts(args):
|
|||||||
opts, extras = getopt.getopt(args, "", longopts)
|
opts, extras = getopt.getopt(args, "", longopts)
|
||||||
for option,value in opts:
|
for option,value in opts:
|
||||||
if (option=="--help"): raise "usage"
|
if (option=="--help"): raise "usage"
|
||||||
elif (option=="--target"): TARGET=value
|
|
||||||
elif (option=="--optimize"): OPTIMIZE=value
|
elif (option=="--optimize"): OPTIMIZE=value
|
||||||
elif (option=="--installer"): INSTALLER=1
|
elif (option=="--installer"): INSTALLER=1
|
||||||
elif (option=="--genman"): GENMAN=1
|
elif (option=="--genman"): GENMAN=1
|
||||||
@ -155,7 +153,6 @@ if (os.environ.has_key("RPM_OPT_FLAGS")):
|
|||||||
MakeBuildTree()
|
MakeBuildTree()
|
||||||
|
|
||||||
SdkLocateDirectX()
|
SdkLocateDirectX()
|
||||||
if TARGET in ["all", "plugins"]:
|
|
||||||
SdkLocateMaya()
|
SdkLocateMaya()
|
||||||
SdkLocateMax()
|
SdkLocateMax()
|
||||||
SdkLocateMacOSX()
|
SdkLocateMacOSX()
|
||||||
@ -164,7 +161,6 @@ SdkLocateVisualStudio()
|
|||||||
SdkLocateMSPlatform()
|
SdkLocateMSPlatform()
|
||||||
|
|
||||||
SdkAutoDisableDirectX()
|
SdkAutoDisableDirectX()
|
||||||
if TARGET in ["all", "plugins"]:
|
|
||||||
SdkAutoDisableMaya()
|
SdkAutoDisableMaya()
|
||||||
SdkAutoDisableMax()
|
SdkAutoDisableMax()
|
||||||
|
|
||||||
@ -186,6 +182,8 @@ if (sys.platform == "win32"):
|
|||||||
THIRDPARTYLIBS="thirdparty/win32/win-libs-vc9/"
|
THIRDPARTYLIBS="thirdparty/win32/win-libs-vc9/"
|
||||||
else:
|
else:
|
||||||
THIRDPARTYLIBS="thirdparty/win64/win-libs-vc9/"
|
THIRDPARTYLIBS="thirdparty/win64/win-libs-vc9/"
|
||||||
|
if not os.path.isdir(THIRDPARTYLIB):
|
||||||
|
THIRDPARTYLIBS="thirdparty/win-libs-vc9/"
|
||||||
VC90CRTVERSION = GetVC90CRTVersion(THIRDPARTYLIBS+"extras/bin/Microsoft.VC90.CRT.manifest")
|
VC90CRTVERSION = GetVC90CRTVersion(THIRDPARTYLIBS+"extras/bin/Microsoft.VC90.CRT.manifest")
|
||||||
else:
|
else:
|
||||||
CheckLinkerLibraryPath()
|
CheckLinkerLibraryPath()
|
||||||
@ -220,10 +218,13 @@ if (COMPILER=="MSVC"):
|
|||||||
(arch, osName) = platform.architecture()
|
(arch, osName) = platform.architecture()
|
||||||
archName = 'win64'
|
archName = 'win64'
|
||||||
if arch=='32bit': archName = 'win32'
|
if arch=='32bit': archName = 'win32'
|
||||||
thirdPartyPrefix = "thirdparty/" + archName + "/win-libs-vc9/"
|
|
||||||
if (PkgSkip("PYTHON")==0):
|
if (PkgSkip("PYTHON")==0):
|
||||||
|
if os.path.isdir("thirdparty/" + archName + "/win-python"):
|
||||||
IncDirectory("ALWAYS", "thirdparty/" + archName + "/win-python/include")
|
IncDirectory("ALWAYS", "thirdparty/" + archName + "/win-python/include")
|
||||||
LibDirectory("ALWAYS", "thirdparty/" + archName + "/win-python/libs")
|
LibDirectory("ALWAYS", "thirdparty/" + archName + "/win-python/libs")
|
||||||
|
else:
|
||||||
|
IncDirectory("ALWAYS", "thirdparty/win-python/include")
|
||||||
|
LibDirectory("ALWAYS", "thirdparty/win-python/libs")
|
||||||
for pkg in PkgListGet():
|
for pkg in PkgListGet():
|
||||||
if (PkgSkip(pkg)==0):
|
if (PkgSkip(pkg)==0):
|
||||||
if (pkg[:4]=="MAYA"):
|
if (pkg[:4]=="MAYA"):
|
||||||
@ -236,7 +237,7 @@ if (COMPILER=="MSVC"):
|
|||||||
elif (pkg[:2]=="DX"):
|
elif (pkg[:2]=="DX"):
|
||||||
IncDirectory(pkg, SDK[pkg] + "/include")
|
IncDirectory(pkg, SDK[pkg] + "/include")
|
||||||
else:
|
else:
|
||||||
IncDirectory(pkg, thirdPartyPrefix + pkg.lower() + "/include")
|
IncDirectory(pkg, THIRDPARTYLIBS + pkg.lower() + "/include")
|
||||||
for pkg in DXVERSIONS:
|
for pkg in DXVERSIONS:
|
||||||
if (PkgSkip(pkg)==0):
|
if (PkgSkip(pkg)==0):
|
||||||
vnum=pkg[2:]
|
vnum=pkg[2:]
|
||||||
@ -266,34 +267,34 @@ if (COMPILER=="MSVC"):
|
|||||||
if (PkgSkip("DIRECTCAM")==0): LibName("DIRECTCAM", "quartz.lib")
|
if (PkgSkip("DIRECTCAM")==0): LibName("DIRECTCAM", "quartz.lib")
|
||||||
if (PkgSkip("DIRECTCAM")==0): LibName("DIRECTCAM", "odbc32.lib")
|
if (PkgSkip("DIRECTCAM")==0): LibName("DIRECTCAM", "odbc32.lib")
|
||||||
if (PkgSkip("DIRECTCAM")==0): LibName("DIRECTCAM", "odbccp32.lib")
|
if (PkgSkip("DIRECTCAM")==0): LibName("DIRECTCAM", "odbccp32.lib")
|
||||||
if (PkgSkip("PNG")==0): LibName("PNG", thirdPartyPrefix + "png/lib/libpandapng.lib")
|
if (PkgSkip("PNG")==0): LibName("PNG", THIRDPARTYLIBS + "png/lib/libpandapng.lib")
|
||||||
if (PkgSkip("JPEG")==0): LibName("JPEG", thirdPartyPrefix + "jpeg/lib/libpandajpeg.lib")
|
if (PkgSkip("JPEG")==0): LibName("JPEG", THIRDPARTYLIBS + "jpeg/lib/libpandajpeg.lib")
|
||||||
if (PkgSkip("TIFF")==0): LibName("TIFF", thirdPartyPrefix + "tiff/lib/libpandatiff.lib")
|
if (PkgSkip("TIFF")==0): LibName("TIFF", THIRDPARTYLIBS + "tiff/lib/libpandatiff.lib")
|
||||||
if (PkgSkip("ZLIB")==0): LibName("ZLIB", thirdPartyPrefix + "zlib/lib/libpandazlib1.lib")
|
if (PkgSkip("ZLIB")==0): LibName("ZLIB", THIRDPARTYLIBS + "zlib/lib/libpandazlib1.lib")
|
||||||
if (PkgSkip("VRPN")==0): LibName("VRPN", thirdPartyPrefix + "vrpn/lib/vrpn.lib")
|
if (PkgSkip("VRPN")==0): LibName("VRPN", THIRDPARTYLIBS + "vrpn/lib/vrpn.lib")
|
||||||
if (PkgSkip("VRPN")==0): LibName("VRPN", thirdPartyPrefix + "vrpn/lib/quat.lib")
|
if (PkgSkip("VRPN")==0): LibName("VRPN", THIRDPARTYLIBS + "vrpn/lib/quat.lib")
|
||||||
if (PkgSkip("FMODEX")==0): LibName("FMODEX", thirdPartyPrefix + "fmodex/lib/fmodex_vc.lib")
|
if (PkgSkip("FMODEX")==0): LibName("FMODEX", THIRDPARTYLIBS + "fmodex/lib/fmodex_vc.lib")
|
||||||
if (PkgSkip("OPENAL")==0): LibName("OPENAL", thirdPartyPrefix + "openal/lib/pandaopenal32.lib")
|
if (PkgSkip("OPENAL")==0): LibName("OPENAL", THIRDPARTYLIBS + "openal/lib/pandaopenal32.lib")
|
||||||
if (PkgSkip("NVIDIACG")==0): LibName("CGGL", thirdPartyPrefix + "nvidiacg/lib/cgGL.lib")
|
if (PkgSkip("NVIDIACG")==0): LibName("CGGL", THIRDPARTYLIBS + "nvidiacg/lib/cgGL.lib")
|
||||||
if (PkgSkip("NVIDIACG")==0): LibName("CGDX9", thirdPartyPrefix + "nvidiacg/lib/cgD3D9.lib")
|
if (PkgSkip("NVIDIACG")==0): LibName("CGDX9", THIRDPARTYLIBS + "nvidiacg/lib/cgD3D9.lib")
|
||||||
if (PkgSkip("NVIDIACG")==0): LibName("NVIDIACG", thirdPartyPrefix + "nvidiacg/lib/cg.lib")
|
if (PkgSkip("NVIDIACG")==0): LibName("NVIDIACG", THIRDPARTYLIBS + "nvidiacg/lib/cg.lib")
|
||||||
if (PkgSkip("OPENSSL")==0): LibName("OPENSSL", thirdPartyPrefix + "openssl/lib/libpandassl.lib")
|
if (PkgSkip("OPENSSL")==0): LibName("OPENSSL", THIRDPARTYLIBS + "openssl/lib/libpandassl.lib")
|
||||||
if (PkgSkip("OPENSSL")==0): LibName("OPENSSL", thirdPartyPrefix + "openssl/lib/libpandaeay.lib")
|
if (PkgSkip("OPENSSL")==0): LibName("OPENSSL", THIRDPARTYLIBS + "openssl/lib/libpandaeay.lib")
|
||||||
if (PkgSkip("FREETYPE")==0): LibName("FREETYPE", thirdPartyPrefix + "freetype/lib/freetype.lib")
|
if (PkgSkip("FREETYPE")==0): LibName("FREETYPE", THIRDPARTYLIBS + "freetype/lib/freetype.lib")
|
||||||
if (PkgSkip("FFTW")==0): LibName("FFTW", thirdPartyPrefix + "fftw/lib/rfftw.lib")
|
if (PkgSkip("FFTW")==0): LibName("FFTW", THIRDPARTYLIBS + "fftw/lib/rfftw.lib")
|
||||||
if (PkgSkip("FFTW")==0): LibName("FFTW", thirdPartyPrefix + "fftw/lib/fftw.lib")
|
if (PkgSkip("FFTW")==0): LibName("FFTW", THIRDPARTYLIBS + "fftw/lib/fftw.lib")
|
||||||
if (PkgSkip("FFMPEG")==0): LibName("FFMPEG", thirdPartyPrefix + "ffmpeg/lib/avcodec-51-panda.lib")
|
if (PkgSkip("FFMPEG")==0): LibName("FFMPEG", THIRDPARTYLIBS + "ffmpeg/lib/avcodec-51-panda.lib")
|
||||||
if (PkgSkip("FFMPEG")==0): LibName("FFMPEG", thirdPartyPrefix + "ffmpeg/lib/avformat-50-panda.lib")
|
if (PkgSkip("FFMPEG")==0): LibName("FFMPEG", THIRDPARTYLIBS + "ffmpeg/lib/avformat-50-panda.lib")
|
||||||
if (PkgSkip("FFMPEG")==0): LibName("FFMPEG", thirdPartyPrefix + "ffmpeg/lib/avutil-49-panda.lib")
|
if (PkgSkip("FFMPEG")==0): LibName("FFMPEG", THIRDPARTYLIBS + "ffmpeg/lib/avutil-49-panda.lib")
|
||||||
if (PkgSkip("ARTOOLKIT")==0):LibName("ARTOOLKIT",thirdPartyPrefix + "artoolkit/lib/libAR.lib")
|
if (PkgSkip("ARTOOLKIT")==0):LibName("ARTOOLKIT",THIRDPARTYLIBS + "artoolkit/lib/libAR.lib")
|
||||||
if (PkgSkip("ODE")==0): LibName("ODE", thirdPartyPrefix + "ode/lib/ode.lib")
|
if (PkgSkip("ODE")==0): LibName("ODE", THIRDPARTYLIBS + "ode/lib/ode.lib")
|
||||||
if (PkgSkip("FCOLLADA")==0): LibName("FCOLLADA", thirdPartyPrefix + "fcollada/lib/FCollada.lib")
|
if (PkgSkip("FCOLLADA")==0): LibName("FCOLLADA", THIRDPARTYLIBS + "fcollada/lib/FCollada.lib")
|
||||||
if (PkgSkip("SQUISH")==0): LibName("SQUISH", thirdPartyPrefix + "squish/lib/squish.lib")
|
if (PkgSkip("SQUISH")==0): LibName("SQUISH", THIRDPARTYLIBS + "squish/lib/squish.lib")
|
||||||
if (PkgSkip("OPENCV")==0): LibName("OPENCV", thirdPartyPrefix + "opencv/lib/cv.lib")
|
if (PkgSkip("OPENCV")==0): LibName("OPENCV", THIRDPARTYLIBS + "opencv/lib/cv.lib")
|
||||||
if (PkgSkip("OPENCV")==0): LibName("OPENCV", thirdPartyPrefix + "opencv/lib/highgui.lib")
|
if (PkgSkip("OPENCV")==0): LibName("OPENCV", THIRDPARTYLIBS + "opencv/lib/highgui.lib")
|
||||||
if (PkgSkip("OPENCV")==0): LibName("OPENCV", thirdPartyPrefix + "opencv/lib/cvaux.lib")
|
if (PkgSkip("OPENCV")==0): LibName("OPENCV", THIRDPARTYLIBS + "opencv/lib/cvaux.lib")
|
||||||
if (PkgSkip("OPENCV")==0): LibName("OPENCV", thirdPartyPrefix + "opencv/lib/ml.lib")
|
if (PkgSkip("OPENCV")==0): LibName("OPENCV", THIRDPARTYLIBS + "opencv/lib/ml.lib")
|
||||||
if (PkgSkip("OPENCV")==0): LibName("OPENCV", thirdPartyPrefix + "opencv/lib/cxcore.lib")
|
if (PkgSkip("OPENCV")==0): LibName("OPENCV", THIRDPARTYLIBS + "opencv/lib/cxcore.lib")
|
||||||
for pkg in MAYAVERSIONS:
|
for pkg in MAYAVERSIONS:
|
||||||
if (PkgSkip(pkg)==0):
|
if (PkgSkip(pkg)==0):
|
||||||
LibName(pkg, '"' + SDK[pkg] + '/lib/Foundation.lib"')
|
LibName(pkg, '"' + SDK[pkg] + '/lib/Foundation.lib"')
|
||||||
@ -677,7 +678,7 @@ def CompileLink(dll, obj, opts):
|
|||||||
(arch, osName) = platform.architecture()
|
(arch, osName) = platform.architecture()
|
||||||
if arch == "64bit":
|
if arch == "64bit":
|
||||||
cmd += "/MACHINE:X64 "
|
cmd += "/MACHINE:X64 "
|
||||||
cmd += '/NOD:MFC80.LIB /NOD:MFC90.LIB /NOD:LIBCI.LIB /NOD:MSVCRTD.LIB /DEBUG '
|
cmd += '/NOD:MFC90.LIB /NOD:LIBCI.LIB /NOD:MSVCRTD.LIB /DEBUG '
|
||||||
cmd = cmd + " /nod:libc /nod:libcmtd /nod:atlthunk"
|
cmd = cmd + " /nod:libc /nod:libcmtd /nod:atlthunk"
|
||||||
if (GetOrigExt(dll) != ".exe"): cmd = cmd + " /DLL"
|
if (GetOrigExt(dll) != ".exe"): cmd = cmd + " /DLL"
|
||||||
optlevel = GetOptimizeOption(opts,OPTIMIZE)
|
optlevel = GetOptimizeOption(opts,OPTIMIZE)
|
||||||
@ -1152,8 +1153,12 @@ if (sys.platform == "win32"):
|
|||||||
(arch, osName) = platform.architecture()
|
(arch, osName) = platform.architecture()
|
||||||
archName = "win64"
|
archName = "win64"
|
||||||
if arch=='32bit': archName = "win32"
|
if arch=='32bit': archName = "win32"
|
||||||
|
if os.path.isdir('thirdparty/' + archName + '/win-python'):
|
||||||
CopyFile(GetOutputDir()+'/bin/python25.dll', 'thirdparty/' + archName + '/win-python/python25.dll')
|
CopyFile(GetOutputDir()+'/bin/python25.dll', 'thirdparty/' + archName + '/win-python/python25.dll')
|
||||||
CopyTree(GetOutputDir()+'/python', 'thirdparty/' + archName + '/win-python')
|
CopyTree(GetOutputDir()+'/python', 'thirdparty/' + archName + '/win-python')
|
||||||
|
else:
|
||||||
|
CopyFile(GetOutputDir()+'/bin/python25.dll', 'thirdparty/win-python/python25.dll')
|
||||||
|
CopyTree(GetOutputDir()+'/python', 'thirdparty/win-python')
|
||||||
ConditionalWriteFile(GetOutputDir()+'/python/panda.pth',"..\n../bin\n")
|
ConditionalWriteFile(GetOutputDir()+'/python/panda.pth',"..\n../bin\n")
|
||||||
|
|
||||||
########################################################################
|
########################################################################
|
||||||
@ -1366,7 +1371,6 @@ COMMON_EGG2X_LIBS_PYSTUB = COMMON_EGG2X_LIBS + ['libp3pystub.dll']
|
|||||||
print "Generating dependencies..."
|
print "Generating dependencies..."
|
||||||
sys.stdout.flush()
|
sys.stdout.flush()
|
||||||
|
|
||||||
if TARGET in ["all", "panda3d"]:
|
|
||||||
#
|
#
|
||||||
# DIRECTORY: dtool/src/dtoolbase/
|
# DIRECTORY: dtool/src/dtoolbase/
|
||||||
#
|
#
|
||||||
@ -3426,7 +3430,6 @@ if TARGET in ["all", "panda3d"]:
|
|||||||
TargetAdd('x2egg.exe', input=COMMON_EGG2X_LIBS_PYSTUB)
|
TargetAdd('x2egg.exe', input=COMMON_EGG2X_LIBS_PYSTUB)
|
||||||
TargetAdd('x2egg.exe', opts=['ADVAPI'])
|
TargetAdd('x2egg.exe', opts=['ADVAPI'])
|
||||||
|
|
||||||
if TARGET in ["all", "plugins"]:
|
|
||||||
#
|
#
|
||||||
# DIRECTORY: pandatool/src/mayaprogs/
|
# DIRECTORY: pandatool/src/mayaprogs/
|
||||||
#
|
#
|
||||||
@ -3647,7 +3650,7 @@ RunDependencyQueue(DEPENDENCYQUEUE)
|
|||||||
#
|
#
|
||||||
##########################################################################################
|
##########################################################################################
|
||||||
|
|
||||||
if (PkgSkip("PYTHON")==0 and TARGET in ["all", "panda3d"]):
|
if (PkgSkip("PYTHON")==0):
|
||||||
inputs = []
|
inputs = []
|
||||||
for x in GetDirectoryContents(GetOutputDir()+"/pandac/input", ["*.in"]):
|
for x in GetDirectoryContents(GetOutputDir()+"/pandac/input", ["*.in"]):
|
||||||
inputs.append(GetOutputDir()+"/pandac/input/" + x)
|
inputs.append(GetOutputDir()+"/pandac/input/" + x)
|
||||||
@ -3873,7 +3876,7 @@ def MakeInstallerOSX():
|
|||||||
oscmd("rm -f Panda3D-tpl-rw.dmg")
|
oscmd("rm -f Panda3D-tpl-rw.dmg")
|
||||||
oscmd("rm -rf Panda3D-tpl-rw")
|
oscmd("rm -rf Panda3D-tpl-rw")
|
||||||
|
|
||||||
if (INSTALLER != 0 or (TARGET in ["all", "installer"])):
|
if (INSTALLER != 0):
|
||||||
if (sys.platform == "win32"):
|
if (sys.platform == "win32"):
|
||||||
MakeInstallerNSIS("Panda3D-"+VERSION+".exe", "Panda3D", "Panda3D "+VERSION, "C:\\Panda3D-"+VERSION)
|
MakeInstallerNSIS("Panda3D-"+VERSION+".exe", "Panda3D", "Panda3D "+VERSION, "C:\\Panda3D-"+VERSION)
|
||||||
elif (sys.platform == "linux2"):
|
elif (sys.platform == "linux2"):
|
||||||
|
Loading…
x
Reference in New Issue
Block a user