mirror of
https://github.com/panda3d/panda3d.git
synced 2025-10-04 02:42:49 -04:00
Move tinyxml into the source tree, rather than using it as external library
This commit is contained in:
parent
68029c8607
commit
4173057c26
@ -9,7 +9,7 @@
|
||||
#define USE_PACKAGES native_net
|
||||
|
||||
#define COMPONENT_LIBS \
|
||||
directbase dcparser showbase deadrec directd interval distributed motiontrail http dxml
|
||||
directbase dcparser showbase deadrec directd interval distributed motiontrail http
|
||||
|
||||
#define OTHER_LIBS \
|
||||
panda:m \
|
||||
|
@ -21,7 +21,7 @@ class panda3d_import_manager:
|
||||
os = os
|
||||
sys = sys
|
||||
imp = imp
|
||||
|
||||
|
||||
# Figure out the dll suffix (commonly, _d for windows debug builds),
|
||||
# and the dll extension.
|
||||
dll_suffix = ''
|
||||
@ -38,20 +38,20 @@ class panda3d_import_manager:
|
||||
dll_suffix = ''
|
||||
if sys.executable.endswith('_d.exe'):
|
||||
dll_suffix = '_d'
|
||||
|
||||
|
||||
# On OSX, extension modules can be loaded from either .so or .dylib.
|
||||
if sys.platform == "darwin":
|
||||
dll_exts = ('.pyd', '.so', '.dylib')
|
||||
|
||||
|
||||
prepared = False
|
||||
|
||||
|
||||
@classmethod
|
||||
def __prepare(cls):
|
||||
# This method only needs to be called once.
|
||||
if cls.prepared:
|
||||
return
|
||||
cls.prepared = True
|
||||
|
||||
|
||||
# First, we must ensure that the library path is
|
||||
# modified to locate all of the dynamic libraries.
|
||||
target = None
|
||||
@ -71,41 +71,41 @@ class panda3d_import_manager:
|
||||
cls.__prepend_to_path("PATH", target)
|
||||
else:
|
||||
cls.__prepend_to_path("LD_LIBRARY_PATH", target)
|
||||
|
||||
|
||||
if cls.sys.platform == "darwin":
|
||||
cls.__prepend_to_path("DYLD_LIBRARY_PATH", target)
|
||||
|
||||
|
||||
@classmethod
|
||||
def __prepend_to_path(cls, varname, target):
|
||||
""" Prepends the given directory to the
|
||||
specified search path environment variable. """
|
||||
|
||||
|
||||
# Get the current value
|
||||
if varname in cls.os.environ:
|
||||
path = cls.os.environ[varname].strip(cls.os.pathsep)
|
||||
else:
|
||||
path = ""
|
||||
|
||||
|
||||
# Prepend our value, if it's not already the first thing
|
||||
if len(path) == 0:
|
||||
cls.os.environ[varname] = target
|
||||
elif not path.startswith(target):
|
||||
cls.os.environ[varname] = target + cls.os.pathsep + path
|
||||
|
||||
|
||||
@classmethod
|
||||
def libimport(cls, name):
|
||||
""" Imports and returns the specified library name. The
|
||||
provided library name has to be without dll extension. """
|
||||
|
||||
|
||||
if not cls.prepared: cls.__prepare()
|
||||
|
||||
|
||||
# Try to import it normally first.
|
||||
try:
|
||||
return __import__(name)
|
||||
except ImportError, err:
|
||||
if str(err) != "No module named " + name:
|
||||
raise
|
||||
|
||||
|
||||
# Hm, importing normally didn't work. Let's try imp.load_dynamic.
|
||||
# But first, locate the desired library.
|
||||
target = None
|
||||
@ -128,9 +128,9 @@ class panda3d_submodule(type(sys)):
|
||||
""" Represents a submodule of 'panda3d' that represents a dynamic
|
||||
library. This dynamic library is loaded when something is accessed
|
||||
from the module. """
|
||||
|
||||
|
||||
__manager__ = panda3d_import_manager
|
||||
|
||||
|
||||
def __init__(self, name, library):
|
||||
type(sys).__init__(self, "panda3d." + name)
|
||||
self.__library__ = library
|
||||
@ -154,7 +154,7 @@ class panda3d_submodule(type(sys)):
|
||||
return self.__libraries__
|
||||
elif name in dir(mod):
|
||||
return mod.__dict__[name]
|
||||
|
||||
|
||||
# Not found? Raise the error that Python would normally raise.
|
||||
raise AttributeError, "'module' object has no attribute '%s'" % name
|
||||
|
||||
@ -162,9 +162,9 @@ class panda3d_multisubmodule(type(sys)):
|
||||
""" Represents a submodule of 'panda3d' that represents multiple
|
||||
dynamic libraries. These are loaded when something is accessed
|
||||
from the module. """
|
||||
|
||||
|
||||
__manager__ = panda3d_import_manager
|
||||
|
||||
|
||||
def __init__(self, name, libraries):
|
||||
type(sys).__init__(self, "panda3d." + name)
|
||||
self.__libraries__ = libraries
|
||||
@ -195,16 +195,16 @@ class panda3d_multisubmodule(type(sys)):
|
||||
|
||||
class panda3d_module(type(sys)):
|
||||
""" Represents the main 'panda3d' module. """
|
||||
|
||||
|
||||
__file__ = __file__
|
||||
modules = panda3d_modules
|
||||
__manager__ = panda3d_import_manager
|
||||
|
||||
|
||||
def __load__(self):
|
||||
""" Force all the libraries to be loaded right now. """
|
||||
for module in self.modules:
|
||||
self.__manager__.sys.modules["panda3d.%s" % module].__load__()
|
||||
|
||||
|
||||
def __getattr__(self, name):
|
||||
if name == "__all__":
|
||||
return self.modules.keys()
|
||||
|
@ -19,7 +19,7 @@
|
||||
// instead of the dynamic runtime library, which is much better for
|
||||
// distributing the plugin with the XPI and CAB interfaces. This
|
||||
// requires that special /MT versions of OpenSSL, libjpeg, libpng,
|
||||
// zlib, and TinyXML are available.
|
||||
// and zlib are available.
|
||||
|
||||
#define _MT $[if $[P3D_PLUGIN_MT],_mt]
|
||||
|
||||
@ -27,7 +27,7 @@
|
||||
fileSpec.cxx fileSpec.h fileSpec.I \
|
||||
find_root_dir.cxx find_root_dir.h \
|
||||
$[if $[IS_OSX],find_root_dir_assist.mm] \
|
||||
get_tinyxml.h \
|
||||
get_tinyxml.h
|
||||
binaryXml.cxx binaryXml.h \
|
||||
fhandle.h \
|
||||
handleStream.cxx handleStream.h handleStream.I \
|
||||
@ -105,19 +105,19 @@
|
||||
|
||||
#begin lib_target
|
||||
|
||||
//
|
||||
//
|
||||
// p3d_plugin.dll, the main entry point to the Core API.
|
||||
//
|
||||
|
||||
#define BUILD_TARGET $[and $[HAVE_P3D_PLUGIN],$[HAVE_TINYXML],$[HAVE_OPENSSL],$[HAVE_ZLIB],$[HAVE_JPEG],$[HAVE_PNG]]
|
||||
#define USE_PACKAGES tinyxml$[_MT] openssl$[_MT] zlib$[_MT] jpeg$[_MT] png$[_MT] x11
|
||||
#define BUILD_TARGET $[and $[HAVE_P3D_PLUGIN],$[HAVE_OPENSSL],$[HAVE_ZLIB],$[HAVE_JPEG],$[HAVE_PNG]]
|
||||
#define USE_PACKAGES openssl$[_MT] zlib$[_MT] jpeg$[_MT] png$[_MT] x11
|
||||
#define TARGET p3d_plugin
|
||||
#define LIB_PREFIX
|
||||
#define BUILDING_DLL BUILDING_P3D_PLUGIN
|
||||
#define LINK_FORCE_STATIC_RELEASE_C_RUNTIME $[P3D_PLUGIN_MT]
|
||||
|
||||
#define OTHER_LIBS \
|
||||
$[if $[OSX_PLATFORM],subprocbuffer]
|
||||
p3tinyxml $[if $[OSX_PLATFORM],subprocbuffer]
|
||||
|
||||
#define COMBINED_SOURCES p3d_plugin_composite1.cxx
|
||||
#define SOURCES $[COREAPI_SOURCES]
|
||||
@ -132,17 +132,17 @@
|
||||
|
||||
#begin static_lib_target
|
||||
|
||||
//
|
||||
//
|
||||
// libp3d_plugin_static.lib, the Core API as a static library (for p3dembed).
|
||||
//
|
||||
|
||||
#define BUILD_TARGET $[and $[HAVE_P3D_PLUGIN],$[HAVE_TINYXML],$[HAVE_OPENSSL],$[HAVE_ZLIB],$[HAVE_JPEG],$[HAVE_PNG]]
|
||||
#define USE_PACKAGES tinyxml openssl zlib jpeg png x11
|
||||
#define BUILD_TARGET $[and $[HAVE_P3D_PLUGIN],$[HAVE_OPENSSL],$[HAVE_ZLIB],$[HAVE_JPEG],$[HAVE_PNG]]
|
||||
#define USE_PACKAGES openssl zlib jpeg png x11
|
||||
#define TARGET p3d_plugin_static
|
||||
#define BUILDING_DLL BUILDING_P3D_PLUGIN
|
||||
|
||||
#define OTHER_LIBS \
|
||||
$[if $[OSX_PLATFORM],subprocbuffer]
|
||||
p3tinyxml $[if $[OSX_PLATFORM],subprocbuffer]
|
||||
|
||||
#define COMBINED_SOURCES p3d_plugin_composite1.cxx
|
||||
#define SOURCES $[COREAPI_SOURCES]
|
||||
@ -179,14 +179,14 @@
|
||||
mkdir_complete.cxx mkdir_complete.h
|
||||
|
||||
#begin static_lib_target
|
||||
//
|
||||
//
|
||||
// libplugin_common.lib, a repository of code shared between the core
|
||||
// API and the various plugin implementations.
|
||||
//
|
||||
|
||||
#define BUILD_TARGET $[and $[HAVE_P3D_PLUGIN],$[HAVE_TINYXML],$[HAVE_OPENSSL]]
|
||||
#define BUILD_TARGET $[and $[HAVE_P3D_PLUGIN],$[HAVE_OPENSSL]]
|
||||
#define TARGET plugin_common
|
||||
#define USE_PACKAGES tinyxml openssl
|
||||
#define USE_PACKAGES openssl
|
||||
|
||||
#define SOURCES $[PLUGIN_COMMON_SOURCES]
|
||||
|
||||
@ -194,13 +194,13 @@
|
||||
|
||||
#if $[P3D_PLUGIN_MT]
|
||||
#begin static_lib_target
|
||||
//
|
||||
//
|
||||
// libplugin_common_mt.lib, the same as above, with /MT compilation.
|
||||
//
|
||||
|
||||
#define BUILD_TARGET $[and $[HAVE_P3D_PLUGIN],$[HAVE_TINYXML],$[HAVE_OPENSSL]]
|
||||
#define BUILD_TARGET $[and $[HAVE_P3D_PLUGIN],$[HAVE_OPENSSL]]
|
||||
#define TARGET plugin_common_mt
|
||||
#define USE_PACKAGES tinyxml_mt openssl_mt
|
||||
#define USE_PACKAGES openssl_mt
|
||||
#define LINK_FORCE_STATIC_RELEASE_C_RUNTIME 1
|
||||
|
||||
#define SOURCES $[PLUGIN_COMMON_SOURCES]
|
||||
@ -220,14 +220,14 @@
|
||||
// to invoke a particular instance of Panda.
|
||||
//
|
||||
|
||||
#define BUILD_TARGET $[and $[HAVE_TINYXML],$[HAVE_PYTHON],$[HAVE_OPENSSL]]
|
||||
#define USE_PACKAGES tinyxml python openssl cg
|
||||
#define BUILD_TARGET $[and $[HAVE_PYTHON],$[HAVE_OPENSSL]]
|
||||
#define USE_PACKAGES python openssl cg
|
||||
#define TARGET p3dpython
|
||||
|
||||
#define OTHER_LIBS \
|
||||
dtoolutil:c dtoolbase:c dtool:m \
|
||||
interrogatedb:c dconfig:c dtoolconfig:m \
|
||||
express:c pandaexpress:m \
|
||||
express:c pandaexpress:m dxml:c \
|
||||
pgraph:c pgraphnodes:c cull:c gsgbase:c gobj:c \
|
||||
mathutil:c lerp:c downloader:c pnmimage:c \
|
||||
prc:c pstatclient:c pandabase:c linmath:c putil:c \
|
||||
@ -268,15 +268,15 @@
|
||||
// the desktop.)
|
||||
//
|
||||
|
||||
#define BUILD_TARGET $[and $[HAVE_TINYXML],$[HAVE_PYTHON],$[HAVE_OPENSSL],$[WINDOWS_PLATFORM]]
|
||||
#define USE_PACKAGES tinyxml python openssl
|
||||
#define BUILD_TARGET $[and $[HAVE_PYTHON],$[HAVE_OPENSSL],$[WINDOWS_PLATFORM]]
|
||||
#define USE_PACKAGES python openssl
|
||||
#define TARGET p3dpythonw
|
||||
#define EXTRA_CDEFS NON_CONSOLE
|
||||
|
||||
#define OTHER_LIBS \
|
||||
dtoolutil:c dtoolbase:c dtool:m \
|
||||
interrogatedb:c dconfig:c dtoolconfig:m \
|
||||
express:c pandaexpress:m \
|
||||
express:c pandaexpress:m dxml:c \
|
||||
pgraph:c pgraphnodes:c cull:c gsgbase:c gobj:c \
|
||||
mathutil:c lerp:c downloader:c pnmimage:c \
|
||||
prc:c pstatclient:c pandabase:c linmath:c putil:c \
|
||||
@ -314,15 +314,15 @@
|
||||
// desparation fallback in case forking fails for some reason.
|
||||
//
|
||||
|
||||
#define BUILD_TARGET $[and $[HAVE_TINYXML],$[HAVE_PYTHON],$[HAVE_OPENSSL]]
|
||||
#define USE_PACKAGES tinyxml python openssl cg
|
||||
#define BUILD_TARGET $[and $[HAVE_PYTHON],$[HAVE_OPENSSL]]
|
||||
#define USE_PACKAGES python openssl cg
|
||||
#define TARGET libp3dpython
|
||||
#define LIB_PREFIX
|
||||
|
||||
#define OTHER_LIBS \
|
||||
dtoolutil:c dtoolbase:c dtool:m \
|
||||
interrogatedb:c dconfig:c dtoolconfig:m \
|
||||
express:c pandaexpress:m \
|
||||
express:c pandaexpress:m dxml:c \
|
||||
pgraph:c pgraphnodes:c cull:c gsgbase:c gobj:c \
|
||||
mathutil:c lerp:c downloader:c pnmimage:c \
|
||||
prc:c pstatclient:c pandabase:c linmath:c putil:c \
|
||||
|
@ -4,10 +4,9 @@
|
||||
// developing the plugin system itself. Define HAVE_P3D_PLUGIN in
|
||||
// your Config.pp to build this directory.
|
||||
|
||||
#define BUILD_DIRECTORY $[and $[HAVE_P3D_PLUGIN],$[HAVE_TINYXML],$[WINDOWS_PLATFORM],$[HAVE_ACTIVEX]]
|
||||
#define BUILD_DIRECTORY $[and $[HAVE_P3D_PLUGIN],$[WINDOWS_PLATFORM],$[HAVE_ACTIVEX]]
|
||||
|
||||
#define _MT $[if $[P3D_PLUGIN_MT],_mt]
|
||||
#define USE_PACKAGES tinyxml$[_MT]
|
||||
|
||||
#begin lib_target
|
||||
#define TARGET p3dactivex
|
||||
@ -16,6 +15,7 @@
|
||||
|
||||
#define LOCAL_LIBS plugin_common$[_MT]
|
||||
#define LINK_FORCE_STATIC_RELEASE_C_RUNTIME $[P3D_PLUGIN_MT]
|
||||
#define OTHER_LIBS p3tinyxml
|
||||
|
||||
#define COMBINED_SOURCES \
|
||||
$[TARGET]_composite1.cxx
|
||||
|
@ -4,10 +4,10 @@
|
||||
// system itself. Define HAVE_P3D_PLUGIN in your Config.pp to build
|
||||
// this directory.
|
||||
|
||||
#define BUILD_DIRECTORY $[and $[HAVE_P3D_PLUGIN],$[HAVE_TINYXML],$[HAVE_NPAPI]]
|
||||
#define BUILD_DIRECTORY $[and $[HAVE_P3D_PLUGIN],$[HAVE_NPAPI]]
|
||||
|
||||
#define _MT $[if $[P3D_PLUGIN_MT],_mt]
|
||||
#define USE_PACKAGES tinyxml$[_MT] npapi
|
||||
#define USE_PACKAGES npapi
|
||||
|
||||
#begin lib_target
|
||||
// By Mozilla convention, on Windows at least, the generated DLL
|
||||
@ -19,6 +19,7 @@
|
||||
|
||||
#define LOCAL_LIBS plugin_common$[_MT]
|
||||
#define LINK_FORCE_STATIC_RELEASE_C_RUNTIME $[P3D_PLUGIN_MT]
|
||||
#define OTHER_LIBS p3tinyxml
|
||||
|
||||
#define COMBINED_SOURCES \
|
||||
$[TARGET]_composite1.cxx
|
||||
|
@ -2,7 +2,7 @@
|
||||
// the "standalone" part of the Panda3D plugin/runtime system. Define
|
||||
// HAVE_P3D_PLUGIN in your Config.pp to build it.
|
||||
|
||||
#define BUILD_DIRECTORY $[and $[HAVE_P3D_PLUGIN],$[HAVE_OPENSSL],$[HAVE_ZLIB],$[HAVE_TINYXML]]
|
||||
#define BUILD_DIRECTORY $[and $[HAVE_P3D_PLUGIN],$[HAVE_OPENSSL],$[HAVE_ZLIB]]
|
||||
|
||||
#begin bin_target
|
||||
#define USE_PACKAGES openssl zlib
|
||||
@ -14,7 +14,7 @@
|
||||
prc:c dtoolutil:c dtoolbase:c dtool:m \
|
||||
interrogatedb:c dconfig:c dtoolconfig:m \
|
||||
pandabase:c downloader:c express:c pandaexpress:m \
|
||||
pystub
|
||||
pystub p3tinyxml
|
||||
|
||||
#define OSX_SYS_FRAMEWORKS Foundation AppKit Carbon
|
||||
|
||||
@ -42,7 +42,7 @@
|
||||
prc:c dtoolutil:c dtoolbase:c dtool:m \
|
||||
interrogatedb:c dconfig:c dtoolconfig:m \
|
||||
pandabase:c downloader:c express:c pandaexpress:m \
|
||||
pystub
|
||||
pystub p3tinyxml
|
||||
|
||||
#define OSX_SYS_FRAMEWORKS Foundation AppKit Carbon
|
||||
|
||||
@ -71,7 +71,7 @@
|
||||
prc:c dtoolutil:c dtoolbase:c dtool:m \
|
||||
interrogatedb:c dconfig:c dtoolconfig:m \
|
||||
pandabase:c downloader:c express:c pandaexpress:m \
|
||||
pystub
|
||||
pystub p3tinyxml
|
||||
|
||||
#define OSX_SYS_FRAMEWORKS Foundation AppKit Carbon
|
||||
|
||||
@ -97,7 +97,7 @@
|
||||
prc:c dtoolutil:c dtoolbase:c dtool:m \
|
||||
interrogatedb:c dconfig:c dtoolconfig:m \
|
||||
pandabase:c downloader:c express:c pandaexpress:m \
|
||||
pystub \
|
||||
pystub p3tinyxml \
|
||||
$[if $[OSX_PLATFORM],subprocbuffer]
|
||||
|
||||
#define OSX_SYS_FRAMEWORKS Foundation AppKit Carbon
|
||||
|
@ -915,12 +915,6 @@
|
||||
#define PHYSX_LIBS $[if $[WINDOWS_PLATFORM],PhysXLoader.lib NxCharacter.lib NxCooking.lib NxExtensions.lib,PhysXLoader NxCharacter NxCooking]
|
||||
#defer HAVE_PHYSX $[libtest $[PHYSX_LPATH],$[PHYSX_LIBS]]
|
||||
|
||||
// Info for TinyXML library
|
||||
#define TINYXML_IPATH
|
||||
#define TINYXML_LPATH
|
||||
#define TINYXML_LIBS $[if $[WINDOWS_PLATFORM],tinyxml.lib,tinyxml]
|
||||
#defer HAVE_TINYXML $[libtest $[TINYXML_LPATH],$[TINYXML_LIBS]]
|
||||
|
||||
// Info for http://www.sourceforge.net/projects/chromium
|
||||
#define CHROMIUM_IPATH /usr/include/chromium/include
|
||||
#define CHROMIUM_LPATH /usr/lib/chromium/bin/WINT_NT
|
||||
|
@ -101,11 +101,6 @@
|
||||
#else
|
||||
#print - Did not find Ageia PhysX
|
||||
#endif
|
||||
#if $[HAVE_TINYXML]
|
||||
#print + TinyXML
|
||||
#else
|
||||
#print - Did not find TinyXML
|
||||
#endif
|
||||
#if $[HAVE_GTK]
|
||||
#print + gtk+-2
|
||||
#else
|
||||
|
@ -309,11 +309,6 @@
|
||||
#set PHYSX_LIBS $[PHYSX_LIBS]
|
||||
#set HAVE_PHYSX $[HAVE_PHYSX]
|
||||
|
||||
#set TINYXML_IPATH $[unixfilename $[TINYXML_IPATH]]
|
||||
#set TINYXML_LPATH $[unixfilename $[TINYXML_LPATH]]
|
||||
#set TINYXML_LIBS $[TINYXML_LIBS]
|
||||
#set HAVE_TINYXML $[HAVE_TINYXML]
|
||||
|
||||
#set CHROMIUM_IPATH $[unixfilename $[CHROMIUM_IPATH]]
|
||||
#set CHROMIUM_LPATH $[unixfilename $[CHROMIUM_LPATH]]
|
||||
#set CHROMIUM_LIBS $[CHROMIUM_LIBS]
|
||||
|
@ -452,18 +452,6 @@
|
||||
#define physx_libs $[PHYSX_LIBS]
|
||||
#endif
|
||||
|
||||
#if $[HAVE_TINYXML]
|
||||
#define tinyxml_ipath $[wildcard $[TINYXML_IPATH]]
|
||||
#define tinyxml_lpath $[wildcard $[TINYXML_LPATH]]
|
||||
#define tinyxml_libs $[TINYXML_LIBS]
|
||||
#endif
|
||||
|
||||
#if $[HAVE_TINYXML_MT]
|
||||
#define tinyxml_mt_ipath $[wildcard $[TINYXML_MT_IPATH]]
|
||||
#define tinyxml_mt_lpath $[wildcard $[TINYXML_MT_LPATH]]
|
||||
#define tinyxml_mt_libs $[TINYXML_MT_LIBS]
|
||||
#endif
|
||||
|
||||
#if $[HAVE_CHROMIUM]
|
||||
#define chromium_ipath $[wildcard $[CHROMIUM_IPATH]]
|
||||
#define chromium_lpath $[wildcard $[CHROMIUM_LPATH]]
|
||||
|
@ -63,7 +63,7 @@ PkgListSet(["PYTHON", "DIRECT", # Python support
|
||||
"NPAPI", "AWESOMIUM", # Browser embedding
|
||||
"GTK2", "WX", # Toolkit support
|
||||
"OSMESA", "X11", "XF86DGA", "XRANDR", # Unix platform support
|
||||
"PANDATOOL", "TINYXML", "PVIEW", "DEPLOYTOOLS", # Toolchain
|
||||
"PANDATOOL", "PVIEW", "DEPLOYTOOLS", # Toolchain
|
||||
"CONTRIB" # Experimental
|
||||
])
|
||||
|
||||
@ -236,10 +236,10 @@ elif (DISTRIBUTOR == ""):
|
||||
|
||||
if (RUNTIME):
|
||||
for pkg in PkgListGet():
|
||||
if pkg not in ["OPENSSL", "TINYXML", "ZLIB", "NPAPI", "JPEG", "X11", "PNG"]:
|
||||
if pkg not in ["OPENSSL", "ZLIB", "NPAPI", "JPEG", "X11", "PNG"]:
|
||||
PkgDisable(pkg)
|
||||
elif (PkgSkip(pkg)==1):
|
||||
exit("Runtime must be compiled with OpenSSL, TinyXML, ZLib, NPAPI, JPEG, X11 and PNG support!")
|
||||
exit("Runtime must be compiled with OpenSSL, ZLib, NPAPI, JPEG, X11 and PNG support!")
|
||||
|
||||
if (sys.platform.startswith("win")):
|
||||
os.environ["BISON_SIMPLE"] = "thirdparty/win-util/bison.simple"
|
||||
@ -250,9 +250,6 @@ if (INSTALLER and RTDIST):
|
||||
if (INSTALLER) and (PkgSkip("PYTHON")) and (not RUNTIME):
|
||||
exit("Cannot build installer without python")
|
||||
|
||||
if (RTDIST or RUNTIME) and (PkgSkip("TINYXML")):
|
||||
exit("Cannot build rtdist or runtime without tinyxml")
|
||||
|
||||
if (RTDIST) and (PkgSkip("JPEG")):
|
||||
exit("Cannot build rtdist without jpeg")
|
||||
|
||||
@ -412,7 +409,6 @@ if (COMPILER=="MSVC"):
|
||||
if (PkgSkip("OPENCV")==0): LibName("OPENCV", GetThirdpartyDir() + "opencv/lib/cvaux.lib")
|
||||
if (PkgSkip("OPENCV")==0): LibName("OPENCV", GetThirdpartyDir() + "opencv/lib/ml.lib")
|
||||
if (PkgSkip("OPENCV")==0): LibName("OPENCV", GetThirdpartyDir() + "opencv/lib/cxcore.lib")
|
||||
if (PkgSkip("TINYXML")==0): LibName("TINYXML", GetThirdpartyDir() + "tinyxml/lib/tinyxml.lib")
|
||||
if (PkgSkip("FFMPEG")==0): LibName("FFMPEG", GetThirdpartyDir() + "ffmpeg/lib/avcodec-51-panda.lib")
|
||||
if (PkgSkip("FFMPEG")==0): LibName("FFMPEG", GetThirdpartyDir() + "ffmpeg/lib/avformat-50-panda.lib")
|
||||
if (PkgSkip("FFMPEG")==0): LibName("FFMPEG", GetThirdpartyDir() + "ffmpeg/lib/avutil-49-panda.lib")
|
||||
@ -503,7 +499,6 @@ if (COMPILER=="LINUX"):
|
||||
SmartPkgEnable("JPEG", "", ("jpeg"), "jpeglib.h")
|
||||
SmartPkgEnable("OPENSSL", "openssl", ("ssl", "crypto"), ("openssl/ssl.h", "openssl/crypto.h"))
|
||||
SmartPkgEnable("PNG", "libpng", ("png"), "png.h")
|
||||
SmartPkgEnable("TINYXML", "", ("tinyxml"), "tinyxml.h")
|
||||
SmartPkgEnable("ZLIB", "", ("z"), "zlib.h")
|
||||
if (RTDIST and sys.platform == "darwin" and "PYTHONVERSION" in SDK):
|
||||
# Don't use the framework for the OSX rtdist build. I'm afraid it gives problems somewhere.
|
||||
@ -528,9 +523,9 @@ if (COMPILER=="LINUX"):
|
||||
|
||||
if (RUNTIME):
|
||||
# For the runtime, all packages are required
|
||||
for pkg in ["OPENSSL", "TINYXML", "ZLIB", "NPAPI", "JPEG", "X11", "PNG"]:
|
||||
for pkg in ["OPENSSL", "ZLIB", "NPAPI", "JPEG", "X11", "PNG"]:
|
||||
if (pkg in PkgListGet() and PkgSkip(pkg)==1):
|
||||
exit("Runtime must be compiled with OpenSSL, TinyXML, ZLib, NPAPI, JPEG, X11 and PNG support!")
|
||||
exit("Runtime must be compiled with OpenSSL, ZLib, NPAPI, JPEG, X11 and PNG support!")
|
||||
|
||||
if (not RUNTIME and not LocateBinary("bison")):
|
||||
exit("Could not locate bison!")
|
||||
@ -1374,7 +1369,6 @@ DTOOL_CONFIG=[
|
||||
("HAVE_DIRECTCAM", 'UNDEF', 'UNDEF'),
|
||||
("HAVE_SQUISH", 'UNDEF', 'UNDEF'),
|
||||
("HAVE_FCOLLADA", 'UNDEF', 'UNDEF'),
|
||||
("HAVE_TINYXML", 'UNDEF', 'UNDEF'),
|
||||
("HAVE_OPENAL_FRAMEWORK", 'UNDEF', 'UNDEF'),
|
||||
("PRC_SAVE_DESCRIPTIONS", '1', '1'),
|
||||
("_SECURE_SCL", '1', 'UNDEF'),
|
||||
@ -1871,6 +1865,8 @@ CopyAllHeaders('panda/src/ode')
|
||||
CopyAllHeaders('panda/metalibs/pandaode')
|
||||
CopyAllHeaders('panda/src/physics')
|
||||
CopyAllHeaders('panda/src/particlesystem')
|
||||
CopyAllHeaders('panda/src/tinyxml')
|
||||
CopyAllHeaders('panda/src/dxml')
|
||||
CopyAllHeaders('panda/metalibs/panda')
|
||||
CopyAllHeaders('panda/src/audiotraits')
|
||||
CopyAllHeaders('panda/src/audiotraits')
|
||||
@ -2626,6 +2622,27 @@ if (PkgSkip("VRPN")==0 and not RUNTIME):
|
||||
TargetAdd('libvrpn.in', opts=['IMOD:panda', 'ILIB:libvrpn', 'SRCDIR:panda/src/vrpn'])
|
||||
TargetAdd('libvrpn_igate.obj', input='libvrpn.in', opts=["DEPENDENCYONLY"])
|
||||
|
||||
#
|
||||
# DIRECTORY: panda/src/tinyxml/
|
||||
#
|
||||
|
||||
OPTS=['DIR:panda/src/tinyxml', 'TINYXML']
|
||||
DefSymbol("TINYXML", "TIXML_USE_STL", "")
|
||||
TargetAdd('tinyxml_composite1.obj', opts=OPTS, input='tinyxml_composite1.cxx')
|
||||
TargetAdd('libp3tinyxml.ilb', input='tinyxml_composite1.obj')
|
||||
|
||||
#
|
||||
# DIRECTORY: panda/src/dxml/
|
||||
#
|
||||
|
||||
if (not RUNTIME):
|
||||
OPTS=['DIR:panda/src/dxml', 'BUILDING:PANDA']
|
||||
TargetAdd('dxml_config_dxml.obj', opts=OPTS, input='config_dxml.cxx')
|
||||
IGATEFILES=GetDirectoryContents('panda/src/dxml', ["*.h", "config_dxml.cxx"])
|
||||
TargetAdd('libdxml.in', opts=OPTS, input=IGATEFILES)
|
||||
TargetAdd('libdxml.in', opts=['IMOD:panda', 'ILIB:libdxml', 'SRCDIR:panda/src/dxml'])
|
||||
TargetAdd('libdxml_igate.obj', input='libdxml.in', opts=["DEPENDENCYONLY"])
|
||||
|
||||
#
|
||||
# DIRECTORY: panda/metalibs/panda/
|
||||
#
|
||||
@ -2666,6 +2683,7 @@ if (not RUNTIME):
|
||||
TargetAdd('libpanda_module.obj', input='libnet.in')
|
||||
TargetAdd('libpanda_module.obj', input='libpgui.in')
|
||||
TargetAdd('libpanda_module.obj', input='libmovies.in')
|
||||
TargetAdd('libpanda_module.obj', input='libdxml.in')
|
||||
|
||||
TargetAdd('libpanda.dll', input='panda_panda.obj')
|
||||
TargetAdd('libpanda.dll', input='libpanda_module.obj')
|
||||
@ -2739,6 +2757,9 @@ if (not RUNTIME):
|
||||
TargetAdd('libpanda.dll', input='libnativenet_igate.obj')
|
||||
TargetAdd('libpanda.dll', input='pandabase_pandabase.obj')
|
||||
TargetAdd('libpanda.dll', input='libpandaexpress.dll')
|
||||
TargetAdd('libpanda.dll', input='dxml_config_dxml.obj')
|
||||
TargetAdd('libpanda.dll', input='libdxml_igate.obj')
|
||||
TargetAdd('libpanda.dll', input='libp3tinyxml.ilb')
|
||||
TargetAdd('libpanda.dll', input='libp3dtoolconfig.dll')
|
||||
TargetAdd('libpanda.dll', input='libp3dtool.dll')
|
||||
|
||||
@ -3435,18 +3456,6 @@ if (PkgSkip("PYTHON")==0):
|
||||
TargetAdd('libshowbase.in', opts=['IMOD:p3direct', 'ILIB:libshowbase', 'SRCDIR:direct/src/showbase'])
|
||||
TargetAdd('libshowbase_igate.obj', input='libshowbase.in', opts=["DEPENDENCYONLY"])
|
||||
|
||||
#
|
||||
# DIRECTORY: direct/src/dxml/
|
||||
#
|
||||
|
||||
if (PkgSkip("PYTHON")==0 and PkgSkip("TINYXML")==0):
|
||||
OPTS=['DIR:direct/src/dxml', 'BUILDING:DIRECT', 'TINYXML']
|
||||
TargetAdd('dxml_config_dxml.obj', opts=OPTS, input='config_dxml.cxx')
|
||||
IGATEFILES=GetDirectoryContents('direct/src/dxml', ["*.h", "config_dxml.cxx"])
|
||||
TargetAdd('libdxml.in', opts=OPTS, input=IGATEFILES)
|
||||
TargetAdd('libdxml.in', opts=['IMOD:p3direct', 'ILIB:libdxml', 'SRCDIR:direct/src/dxml'])
|
||||
TargetAdd('libdxml_igate.obj', input='libdxml.in', opts=["DEPENDENCYONLY"])
|
||||
|
||||
#
|
||||
# DIRECTORY: direct/metalibs/direct/
|
||||
#
|
||||
@ -3460,8 +3469,6 @@ if (PkgSkip("PYTHON")==0):
|
||||
TargetAdd('libp3direct_module.obj', input='libdeadrec.in')
|
||||
TargetAdd('libp3direct_module.obj', input='libinterval.in')
|
||||
TargetAdd('libp3direct_module.obj', input='libdistributed.in')
|
||||
if (PkgSkip("TINYXML")==0):
|
||||
TargetAdd('libp3direct_module.obj', input='libdxml.in')
|
||||
TargetAdd('libp3direct_module.obj', opts=OPTS)
|
||||
TargetAdd('libp3direct_module.obj', opts=['IMOD:p3direct', 'ILIB:libp3direct'])
|
||||
|
||||
@ -3484,11 +3491,8 @@ if (PkgSkip("PYTHON")==0):
|
||||
TargetAdd('libp3direct.dll', input='distributed_cConnectionRepository.obj')
|
||||
TargetAdd('libp3direct.dll', input='distributed_cDistributedSmoothNodeBase.obj')
|
||||
TargetAdd('libp3direct.dll', input='libdistributed_igate.obj')
|
||||
if (PkgSkip("TINYXML")==0):
|
||||
TargetAdd('libp3direct.dll', input='dxml_config_dxml.obj')
|
||||
TargetAdd('libp3direct.dll', input='libdxml_igate.obj')
|
||||
TargetAdd('libp3direct.dll', input=COMMON_PANDA_LIBS)
|
||||
TargetAdd('libp3direct.dll', opts=['ADVAPI', 'OPENSSL', 'WINUSER', 'TINYXML'])
|
||||
TargetAdd('libp3direct.dll', opts=['ADVAPI', 'OPENSSL', 'WINUSER'])
|
||||
|
||||
#
|
||||
# DIRECTORY: direct/src/dcparse/
|
||||
@ -3523,7 +3527,7 @@ if (RTDIST or RUNTIME):
|
||||
if (sys.platform != "darwin" and not sys.platform.startswith("win")):
|
||||
DefSymbol("RUNTIME", "HAVE_X11", "1")
|
||||
|
||||
OPTS=['DIR:direct/src/plugin', 'BUILDING:P3D_PLUGIN', 'RUNTIME', 'TINYXML', 'OPENSSL']
|
||||
OPTS=['DIR:direct/src/plugin', 'BUILDING:P3D_PLUGIN', 'RUNTIME', 'OPENSSL']
|
||||
TargetAdd('plugin_common.obj', opts=OPTS, input='plugin_common_composite1.cxx')
|
||||
|
||||
OPTS += ['ZLIB', 'JPEG', 'PNG', 'MSIMG']
|
||||
@ -3547,9 +3551,10 @@ if (RTDIST or RUNTIME):
|
||||
TargetAdd(fname, input='plugin_binaryXml.obj')
|
||||
TargetAdd(fname, input='plugin_handleStream.obj')
|
||||
TargetAdd(fname, input='plugin_handleStreamBuf.obj')
|
||||
TargetAdd(fname, input='libp3tinyxml.ilb')
|
||||
if (sys.platform == "darwin"):
|
||||
TargetAdd(fname, input='libsubprocbuffer.ilb')
|
||||
TargetAdd(fname, opts=['TINYXML', 'OPENSSL', 'ZLIB', 'JPEG', 'PNG', 'X11', 'ADVAPI', 'WINUSER', 'WINGDI', 'WINSHELL', 'WINCOMCTL', 'WINOLE', 'MSIMG'])
|
||||
TargetAdd(fname, opts=['OPENSSL', 'ZLIB', 'JPEG', 'PNG', 'X11', 'ADVAPI', 'WINUSER', 'WINGDI', 'WINSHELL', 'WINCOMCTL', 'WINOLE', 'MSIMG'])
|
||||
|
||||
if (PkgSkip("PYTHON")==0 and RTDIST):
|
||||
TargetAdd('p3dpython_p3dpython_composite1.obj', opts=OPTS, input='p3dpython_composite1.cxx')
|
||||
@ -3557,11 +3562,13 @@ if (RTDIST or RUNTIME):
|
||||
TargetAdd('p3dpython.exe', input='p3dpython_p3dpython_composite1.obj')
|
||||
TargetAdd('p3dpython.exe', input='p3dpython_p3dPythonMain.obj')
|
||||
TargetAdd('p3dpython.exe', input=COMMON_PANDA_LIBS)
|
||||
TargetAdd('p3dpython.exe', opts=['NOSTRIP', 'PYTHON', 'TINYXML', 'WINUSER'])
|
||||
TargetAdd('p3dpython.exe', input='libp3tinyxml.ilb')
|
||||
TargetAdd('p3dpython.exe', opts=['NOSTRIP', 'PYTHON', 'WINUSER'])
|
||||
|
||||
TargetAdd('libp3dpython.dll', input='p3dpython_p3dpython_composite1.obj')
|
||||
TargetAdd('libp3dpython.dll', input=COMMON_PANDA_LIBS)
|
||||
TargetAdd('libp3dpython.dll', opts=['PYTHON', 'TINYXML', 'WINUSER'])
|
||||
TargetAdd('libp3dpython.dll', input='libp3tinyxml.ilb')
|
||||
TargetAdd('libp3dpython.dll', opts=['PYTHON', 'WINUSER'])
|
||||
|
||||
if (sys.platform.startswith("win")):
|
||||
DefSymbol("NON_CONSOLE", "NON_CONSOLE", "")
|
||||
@ -3571,7 +3578,8 @@ if (RTDIST or RUNTIME):
|
||||
TargetAdd('p3dpythonw.exe', input='p3dpythonw_p3dpython_composite1.obj')
|
||||
TargetAdd('p3dpythonw.exe', input='p3dpythonw_p3dPythonMain.obj')
|
||||
TargetAdd('p3dpythonw.exe', input=COMMON_PANDA_LIBS)
|
||||
TargetAdd('p3dpythonw.exe', opts=['SUBSYSTEM:WINDOWS', 'PYTHON', 'TINYXML', 'WINUSER'])
|
||||
TargetAdd('p3dpythonw.exe', input='libp3tinyxml.ilb')
|
||||
TargetAdd('p3dpythonw.exe', opts=['SUBSYSTEM:WINDOWS', 'PYTHON', 'WINUSER'])
|
||||
|
||||
if (PkgSkip("OPENSSL")==0 and RTDIST):
|
||||
OPTS=['DIR:direct/src/plugin', 'DIR:panda/src/express', 'OPENSSL', 'WX']
|
||||
@ -3600,7 +3608,7 @@ if (RUNTIME and PkgSkip("NPAPI")==0):
|
||||
elif (sys.platform=="darwin"):
|
||||
TargetAdd('nppanda3d.rsrc', opts=OPTS, input='nppanda3d.r')
|
||||
|
||||
OPTS += ['NPAPI', 'TINYXML']
|
||||
OPTS += ['NPAPI']
|
||||
TargetAdd('plugin_npapi_nppanda3d_composite1.obj', opts=OPTS, input='nppanda3d_composite1.cxx')
|
||||
|
||||
TargetAdd('nppanda3d.plugin', input='plugin_common.obj')
|
||||
@ -3612,14 +3620,15 @@ if (RUNTIME and PkgSkip("NPAPI")==0):
|
||||
TargetAdd('nppanda3d.plugin', input='nppanda3d.rsrc')
|
||||
TargetAdd('nppanda3d.plugin', input='nppanda3d.plist', ipath=OPTS)
|
||||
TargetAdd('nppanda3d.plugin', input='plugin_find_root_dir_assist.obj')
|
||||
TargetAdd('nppanda3d.plugin', opts=['NPAPI', 'TINYXML', 'OPENSSL', 'WINUSER', 'WINSHELL', 'WINOLE', 'CARBON'])
|
||||
TargetAdd('nppanda3d.plugin', input='libp3tinyxml.ilb')
|
||||
TargetAdd('nppanda3d.plugin', opts=['NPAPI', 'OPENSSL', 'WINUSER', 'WINSHELL', 'WINOLE', 'CARBON'])
|
||||
|
||||
#
|
||||
# DIRECTORY: direct/src/plugin_activex/
|
||||
#
|
||||
|
||||
if (RUNTIME and sys.platform.startswith("win")):
|
||||
OPTS=['DIR:direct/src/plugin_activex', 'RUNTIME', 'ACTIVEX', 'TINYXML']
|
||||
OPTS=['DIR:direct/src/plugin_activex', 'RUNTIME', 'ACTIVEX']
|
||||
DefSymbol('ACTIVEX', '_USRDLL', '')
|
||||
DefSymbol('ACTIVEX', '_WINDLL', '')
|
||||
DefSymbol('ACTIVEX', '_AFXDLL', '')
|
||||
@ -3633,14 +3642,15 @@ if (RUNTIME and sys.platform.startswith("win")):
|
||||
TargetAdd('p3dactivex.ocx', input='plugin_activex_p3dactivex_composite1.obj')
|
||||
TargetAdd('p3dactivex.ocx', input='P3DActiveX.res')
|
||||
TargetAdd('p3dactivex.ocx', input='P3DActiveX.def', ipath=OPTS)
|
||||
TargetAdd('p3dactivex.ocx', opts=['MFC', 'WINSOCK2', 'OPENSSL', 'TINYXML'])
|
||||
TargetAdd('p3dactivex.ocx', input='libp3tinyxml.ilb')
|
||||
TargetAdd('p3dactivex.ocx', opts=['MFC', 'WINSOCK2', 'OPENSSL'])
|
||||
|
||||
#
|
||||
# DIRECTORY: direct/src/plugin_standalone/
|
||||
#
|
||||
|
||||
if (RUNTIME):
|
||||
OPTS=['DIR:direct/src/plugin_standalone', 'RUNTIME', 'TINYXML', 'OPENSSL']
|
||||
OPTS=['DIR:direct/src/plugin_standalone', 'RUNTIME', 'OPENSSL']
|
||||
TargetAdd('plugin_standalone_panda3d.obj', opts=OPTS, input='panda3d.cxx')
|
||||
TargetAdd('plugin_standalone_panda3dBase.obj', opts=OPTS, input='panda3dBase.cxx')
|
||||
|
||||
@ -3668,7 +3678,8 @@ if (RUNTIME):
|
||||
TargetAdd('panda3d.exe', input='libp3dtoolconfig.dll')
|
||||
TargetAdd('panda3d.exe', input='libp3dtool.dll')
|
||||
TargetAdd('panda3d.exe', input='libp3pystub.dll')
|
||||
TargetAdd('panda3d.exe', opts=['NOICON', 'TINYXML', 'OPENSSL', 'ZLIB', 'WINGDI', 'WINUSER', 'WINSHELL', 'ADVAPI', 'WINSOCK2', 'WINOLE', 'CARBON'])
|
||||
TargetAdd('panda3d.exe', input='libp3tinyxml.ilb')
|
||||
TargetAdd('panda3d.exe', opts=['NOICON', 'OPENSSL', 'ZLIB', 'WINGDI', 'WINUSER', 'WINSHELL', 'ADVAPI', 'WINSOCK2', 'WINOLE', 'CARBON'])
|
||||
|
||||
if (sys.platform == "darwin"):
|
||||
TargetAdd('plugin_standalone_panda3dMac.obj', opts=OPTS, input='panda3dMac.cxx')
|
||||
@ -3681,9 +3692,10 @@ if (RUNTIME):
|
||||
TargetAdd('Panda3D.app', input='libp3dtoolconfig.dll')
|
||||
TargetAdd('Panda3D.app', input='libp3dtool.dll')
|
||||
TargetAdd('Panda3D.app', input='libp3pystub.dll')
|
||||
TargetAdd('Panda3D.app', input='libp3tinyxml.ilb')
|
||||
TargetAdd('Panda3D.app', input='panda3d_mac.plist', ipath=OPTS)
|
||||
TargetAdd('Panda3D.app', input='models/plugin_images/panda3d.icns')
|
||||
TargetAdd('Panda3D.app', opts=['NOSTRIP', 'TINYXML', 'OPENSSL', 'ZLIB', 'WINGDI', 'WINUSER', 'WINSHELL', 'ADVAPI', 'WINSOCK2', 'WINOLE', 'CARBON'])
|
||||
TargetAdd('Panda3D.app', opts=['NOSTRIP', 'OPENSSL', 'ZLIB', 'WINGDI', 'WINUSER', 'WINSHELL', 'ADVAPI', 'WINSOCK2', 'WINOLE', 'CARBON'])
|
||||
elif (sys.platform.startswith("win")):
|
||||
TargetAdd('plugin_standalone_panda3dWinMain.obj', opts=OPTS, input='panda3dWinMain.cxx')
|
||||
TargetAdd('panda3dw.exe', input='plugin_standalone_panda3d.obj')
|
||||
@ -3694,10 +3706,11 @@ if (RUNTIME):
|
||||
TargetAdd('panda3dw.exe', input='libp3dtoolconfig.dll')
|
||||
TargetAdd('panda3dw.exe', input='libp3dtool.dll')
|
||||
TargetAdd('panda3dw.exe', input='libp3pystub.dll')
|
||||
TargetAdd('panda3dw.exe', opts=['TINYXML', 'OPENSSL', 'ZLIB', 'WINGDI', 'WINUSER', 'WINSHELL', 'ADVAPI', 'WINSOCK2', 'WINOLE', 'CARBON'])
|
||||
TargetAdd('panda3dw.exe', input='libp3tinyxml.ilb')
|
||||
TargetAdd('panda3dw.exe', opts=['OPENSSL', 'ZLIB', 'WINGDI', 'WINUSER', 'WINSHELL', 'ADVAPI', 'WINSOCK2', 'WINOLE', 'CARBON'])
|
||||
|
||||
if (RTDIST):
|
||||
OPTS=['BUILDING:P3D_PLUGIN', 'DIR:direct/src/plugin_standalone', 'DIR:direct/src/plugin', 'DIR:dtool/src/dtoolbase', 'DIR:dtool/src/dtoolutil', 'DIR:dtool/src/pystub', 'DIR:dtool/src/prc', 'DIR:dtool/src/dconfig', 'DIR:panda/src/express', 'DIR:panda/src/downloader', 'RUNTIME', 'P3DEMBED', 'TINYXML', 'OPENSSL', 'JPEG', 'PNG', 'ZLIB']
|
||||
OPTS=['BUILDING:P3D_PLUGIN', 'DIR:direct/src/plugin_standalone', 'DIR:direct/src/plugin', 'DIR:dtool/src/dtoolbase', 'DIR:dtool/src/dtoolutil', 'DIR:dtool/src/pystub', 'DIR:dtool/src/prc', 'DIR:dtool/src/dconfig', 'DIR:panda/src/express', 'DIR:panda/src/downloader', 'RUNTIME', 'P3DEMBED', 'OPENSSL', 'JPEG', 'PNG', 'ZLIB']
|
||||
# This is arguably a big fat ugly hack, but doing it otherwise would complicate the build process considerably.
|
||||
DefSymbol("P3DEMBED", "LINK_ALL_STATIC", "")
|
||||
TargetAdd('plugin_standalone_panda3dBase.obj', opts=OPTS, input='panda3dBase.cxx')
|
||||
@ -3735,8 +3748,9 @@ if (RTDIST):
|
||||
TargetAdd('p3dembed.exe', input='plugin_find_root_dir_assist.obj')
|
||||
if (sys.platform == "darwin"):
|
||||
TargetAdd('p3dembed.exe', input='libsubprocbuffer.ilb')
|
||||
TargetAdd('p3dembed.exe', input='libp3tinyxml.ilb')
|
||||
TargetAdd('p3dembed.exe', input='libp3d_plugin_static.ilb')
|
||||
TargetAdd('p3dembed.exe', opts=['NOICON', 'NOSTRIP', 'WINGDI', 'WINSOCK2', 'ZLIB', 'WINUSER', 'OPENSSL', 'JPEG', 'WINOLE', 'CARBON', 'MSIMG', 'WINCOMCTL', 'TINYXML', 'ADVAPI', 'WINSHELL', 'X11', 'PNG'])
|
||||
TargetAdd('p3dembed.exe', opts=['NOICON', 'NOSTRIP', 'WINGDI', 'WINSOCK2', 'ZLIB', 'WINUSER', 'OPENSSL', 'JPEG', 'WINOLE', 'CARBON', 'MSIMG', 'WINCOMCTL', 'ADVAPI', 'WINSHELL', 'X11', 'PNG'])
|
||||
|
||||
#
|
||||
# DIRECTORY: pandatool/src/pandatoolbase/
|
||||
|
4
panda/.gitignore
vendored
4
panda/.gitignore
vendored
@ -1,3 +1 @@
|
||||
/built/
|
||||
Makefile
|
||||
pp.dep
|
||||
*.pyc
|
||||
|
@ -17,7 +17,7 @@
|
||||
parametrics \
|
||||
pnmimagetypes pnmimage \
|
||||
pnmtext text tform lerp putil \
|
||||
audio pgui pandabase
|
||||
audio pgui pandabase dxml
|
||||
|
||||
#define LOCAL_LIBS \
|
||||
downloader express pandabase
|
||||
@ -38,16 +38,3 @@
|
||||
#define INSTALL_HEADERS panda.h
|
||||
#end metalib_target
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
@ -1,9 +1,8 @@
|
||||
#begin lib_target
|
||||
#define BUILD_TARGET $[HAVE_TINYXML]
|
||||
#define USE_PACKAGES tinyxml
|
||||
#define LOCAL_LIBS p3tinyxml pandabase
|
||||
|
||||
#begin lib_target
|
||||
#define TARGET dxml
|
||||
#define LOCAL_LIBS directbase
|
||||
|
||||
#define OTHER_LIBS \
|
||||
interrogatedb:c dconfig:c dtoolconfig:m \
|
||||
dtoolutil:c dtoolbase:c prc:c dtool:m
|
@ -15,7 +15,7 @@
|
||||
#ifndef CONFIG_DXML_H
|
||||
#define CONFIG_DXML_H
|
||||
|
||||
#include "directbase.h"
|
||||
#include "pandabase.h"
|
||||
#include "notifyCategoryProxy.h"
|
||||
#include "dconfig.h"
|
||||
|
||||
@ -29,9 +29,9 @@
|
||||
#define TIXML_USE_STL
|
||||
#endif
|
||||
|
||||
NotifyCategoryDecl(dxml, EXPCL_DIRECT, EXPTP_DIRECT);
|
||||
NotifyCategoryDecl(dxml, EXPCL_PANDA, EXPTP_PANDA);
|
||||
|
||||
extern EXPCL_DIRECT void init_libdxml();
|
||||
extern EXPCL_PANDA void init_libdxml();
|
||||
|
||||
class TiXmlDocument;
|
||||
BEGIN_PUBLISH
|
15
panda/src/tinyxml/Sources.pp
Normal file
15
panda/src/tinyxml/Sources.pp
Normal file
@ -0,0 +1,15 @@
|
||||
#begin static_lib_target
|
||||
#define TARGET p3tinyxml
|
||||
|
||||
#define COMBINED_SOURCES tinyxml_composite1.cxx
|
||||
|
||||
#define SOURCES \
|
||||
tinyxml.h
|
||||
|
||||
#define INCLUDED_SOURCES \
|
||||
tinyxml.cpp tinyxmlparser.cpp tinyxmlerror.cpp
|
||||
|
||||
#define EXTRA_CDEFS TIXML_USE_STL
|
||||
#define C++FLAGS $[CFLAGS_SHARED]
|
||||
|
||||
#end static_lib_target
|
1839
panda/src/tinyxml/tinyxml.cpp
Normal file
1839
panda/src/tinyxml/tinyxml.cpp
Normal file
File diff suppressed because it is too large
Load Diff
1799
panda/src/tinyxml/tinyxml.h
Normal file
1799
panda/src/tinyxml/tinyxml.h
Normal file
File diff suppressed because it is too large
Load Diff
3
panda/src/tinyxml/tinyxml_composite1.cxx
Normal file
3
panda/src/tinyxml/tinyxml_composite1.cxx
Normal file
@ -0,0 +1,3 @@
|
||||
#include "tinyxml.cpp"
|
||||
#include "tinyxmlerror.cpp"
|
||||
#include "tinyxmlparser.cpp"
|
52
panda/src/tinyxml/tinyxmlerror.cpp
Normal file
52
panda/src/tinyxml/tinyxmlerror.cpp
Normal file
@ -0,0 +1,52 @@
|
||||
/*
|
||||
www.sourceforge.net/projects/tinyxml
|
||||
Original code (2.0 and earlier )copyright (c) 2000-2006 Lee Thomason (www.grinninglizard.com)
|
||||
|
||||
This software is provided 'as-is', without any express or implied
|
||||
warranty. In no event will the authors be held liable for any
|
||||
damages arising from the use of this software.
|
||||
|
||||
Permission is granted to anyone to use this software for any
|
||||
purpose, including commercial applications, and to alter it and
|
||||
redistribute it freely, subject to the following restrictions:
|
||||
|
||||
1. The origin of this software must not be misrepresented; you must
|
||||
not claim that you wrote the original software. If you use this
|
||||
software in a product, an acknowledgment in the product documentation
|
||||
would be appreciated but is not required.
|
||||
|
||||
2. Altered source versions must be plainly marked as such, and
|
||||
must not be misrepresented as being the original software.
|
||||
|
||||
3. This notice may not be removed or altered from any source
|
||||
distribution.
|
||||
*/
|
||||
|
||||
#include "tinyxml.h"
|
||||
|
||||
// The goal of the seperate error file is to make the first
|
||||
// step towards localization. tinyxml (currently) only supports
|
||||
// english error messages, but the could now be translated.
|
||||
//
|
||||
// It also cleans up the code a bit.
|
||||
//
|
||||
|
||||
const char* TiXmlBase::errorString[ TIXML_ERROR_STRING_COUNT ] =
|
||||
{
|
||||
"No error",
|
||||
"Error",
|
||||
"Failed to open file",
|
||||
"Error parsing Element.",
|
||||
"Failed to read Element name",
|
||||
"Error reading Element value.",
|
||||
"Error reading Attributes.",
|
||||
"Error: empty tag.",
|
||||
"Error reading end tag.",
|
||||
"Error parsing Unknown.",
|
||||
"Error parsing Comment.",
|
||||
"Error parsing Declaration.",
|
||||
"Error document empty.",
|
||||
"Error null (0) or unexpected EOF found in input stream.",
|
||||
"Error parsing CDATA.",
|
||||
"Error when TiXmlDocument added to document, because TiXmlDocument can only be at the root.",
|
||||
};
|
1635
panda/src/tinyxml/tinyxmlparser.cpp
Normal file
1635
panda/src/tinyxml/tinyxmlparser.cpp
Normal file
File diff suppressed because it is too large
Load Diff
Loading…
x
Reference in New Issue
Block a user