mirror of
https://github.com/panda3d/panda3d.git
synced 2025-10-03 10:22:45 -04:00
Changing paths for D. Rose's proposed layout
This commit is contained in:
parent
4252836da8
commit
c073edb5ad
@ -6,7 +6,6 @@
|
||||
//
|
||||
// PYTHONPATH
|
||||
// PATH
|
||||
// PANDAROOT
|
||||
//
|
||||
// Note that 'genpycode' is just a slight variant of 'ppython':
|
||||
//
|
||||
@ -69,11 +68,15 @@ int main(int argc, char **argv)
|
||||
fnlen -= srclen; fnbuf[fnlen] = 0;
|
||||
|
||||
// Fetch the command line and trim the first word.
|
||||
|
||||
char *args = GetCommandLine();
|
||||
char *firstspace = strchr(args,' ');
|
||||
if (firstspace) args = firstspace+1;
|
||||
else args="";
|
||||
|
||||
char *cmdline = GetCommandLine();
|
||||
char *args = cmdline;
|
||||
bool inquote = false;
|
||||
while (*args && ((*args != ' ')||(inquote))) {
|
||||
if (*args == '"') inquote = !inquote;
|
||||
args++;
|
||||
}
|
||||
while (*args==' ') args++;
|
||||
|
||||
// Calculate MODCMD
|
||||
|
||||
@ -88,7 +91,7 @@ int main(int argc, char **argv)
|
||||
}
|
||||
} else sprintf(modcmd,"python %s",args);
|
||||
|
||||
// Set the PANDAROOT, PYTHONPATH and PATH
|
||||
// Set the PYTHONPATH and PATH
|
||||
|
||||
char *pp = getenv("PYTHONPATH");
|
||||
if (pp) sprintf(ppbuf,"PYTHONPATH=%s;%s\\bin;%s\\lib;%s",fnbuf,fnbuf,fnbuf,pp);
|
||||
@ -98,8 +101,6 @@ int main(int argc, char **argv)
|
||||
if (path) sprintf(pabuf,"PATH=%s\\bin;%s",fnbuf,path);
|
||||
else sprintf(pabuf,"PATH=%s\\bin",fnbuf);
|
||||
putenv(pabuf);
|
||||
sprintf(prbuf,"PANDAROOT=%s",fnbuf);
|
||||
putenv(prbuf);
|
||||
|
||||
// Append LINK_TARGET to the file name.
|
||||
|
||||
@ -192,7 +193,7 @@ int main(int argc, char **argv)
|
||||
}
|
||||
}
|
||||
|
||||
// Set the PANDAROOT, PYTHONPATH and PATH
|
||||
// Set the PYTHONPATH and PATH
|
||||
|
||||
char *pp = getenv("PYTHONPATH");
|
||||
if (pp) sprintf(ppbuf,"PYTHONPATH=%s:%s/lib:%s",fnbuf,fnbuf,pp);
|
||||
@ -202,8 +203,6 @@ int main(int argc, char **argv)
|
||||
if (path) sprintf(pabuf,"PATH=%s/bin;%s",fnbuf,path);
|
||||
else sprintf(pabuf,"PATH=%s/bin",fnbuf);
|
||||
putenv(pabuf);
|
||||
sprintf(prbuf,"PANDAROOT=%s",fnbuf);
|
||||
putenv(prbuf);
|
||||
|
||||
// Calculate MODARGV
|
||||
modargc=0;
|
||||
|
@ -9,33 +9,74 @@
|
||||
# can be located appropriately.
|
||||
#
|
||||
# PYTHONPATH
|
||||
# PANDAROOT
|
||||
# PATH
|
||||
# LD_LIBRARY_PATH
|
||||
#
|
||||
##############################################################
|
||||
|
||||
import sys,os;
|
||||
|
||||
if (os.environ.has_key("PANDAROOT")==0):
|
||||
print "jGenPyCode was not invoked correctly"
|
||||
sys.exit(1)
|
||||
##############################################################
|
||||
#
|
||||
# Locate the 'direct' tree and the 'pandac' tree.
|
||||
#
|
||||
##############################################################
|
||||
|
||||
pandaroot = os.environ["PANDAROOT"]
|
||||
if (os.path.isdir(os.path.join(pandaroot,"direct","src"))):
|
||||
directsrc=os.path.join(pandaroot,"direct","src")
|
||||
elif (os.path.isdir(os.path.join(os.path.dirname(pandaroot),"direct","src"))):
|
||||
directsrc=os.path.join(os.path.dirname(pandaroot),"direct","src")
|
||||
else:
|
||||
print "jGenPyCode cannot locate the 'direct' tree"
|
||||
sys.exit(1)
|
||||
DIRECT=None
|
||||
PANDAC=None
|
||||
for dir in sys.path:
|
||||
if (DIRECT is None):
|
||||
if os.path.exist(os.path.join(dir,"direct")):
|
||||
DIRECT=os.path.join(dir,"direct")
|
||||
if (PANDAC is None):
|
||||
if (os.path.exist(os.path.join(dir,"pandac"))):
|
||||
PANDAC=os.path.join(dir,"pandac")
|
||||
|
||||
if (DIRECT is None):
|
||||
sys.exit("Could not locate the 'direct' python modules")
|
||||
if (PANDAC is None):
|
||||
sys.exit("Could not locate the 'pandac' python modules")
|
||||
|
||||
##############################################################
|
||||
#
|
||||
# Locate direct/src/extensions.
|
||||
#
|
||||
# It could be inside the direct tree. It may be underneath
|
||||
# a 'src' subdirectory. Or, the direct tree may actually be
|
||||
# a stub that points to the source tree.
|
||||
#
|
||||
##############################################################
|
||||
|
||||
EXTENSIONS=None
|
||||
|
||||
if (EXTENSIONS is None):
|
||||
if os.path.isdir(os.path.join(DIRECT,"src","extensions")):
|
||||
EXTENSIONS=os.path.join(DIRECT,"src","extensions")
|
||||
|
||||
if (EXTENSIONS is None):
|
||||
if os.path.isdir(os.path.join(DIRECT,"extensions")):
|
||||
EXTENSIONS=os.path.join(DIRECT,"extensions")
|
||||
|
||||
if (EXTENSIONS is None):
|
||||
if os.path.isdir(os.path.join(DIRECT,"..","..","direct","src","extensions")):
|
||||
EXTENSIONS=os.path.join(DIRECT,"..","..","direct","src","extensions")
|
||||
|
||||
if (EXTENSIONS is None):
|
||||
sys.exit("Could not locate direct/src/extensions")
|
||||
|
||||
##############################################################
|
||||
#
|
||||
# Call genpycode with default paths.
|
||||
#
|
||||
##############################################################
|
||||
|
||||
from direct.ffi import DoGenPyCode
|
||||
from direct.ffi import FFIConstants
|
||||
DoGenPyCode.outputDir = os.path.join(pandaroot,"lib","pandac")
|
||||
DoGenPyCode.extensionsDir = os.path.join(directsrc,"extensions")
|
||||
DoGenPyCode.outputDir = PANDAC
|
||||
DoGenPyCode.extensionsDir = EXTENSIONS
|
||||
DoGenPyCode.interrogateLib = r'libdtoolconfig'
|
||||
DoGenPyCode.codeLibs = ['libpandaexpress','libpanda','libpandaphysics','libpandafx','libdirect']
|
||||
DoGenPyCode.etcPath = [os.path.join(pandaroot,"etc")]
|
||||
DoGenPyCode.etcPath = [os.path.join(PANDAC,"input")]
|
||||
|
||||
#print "outputDir = ",DoGenPyCode.outputDir
|
||||
#print "extensionsDir = ",DoGenPyCode.extensionsDir
|
||||
|
Loading…
x
Reference in New Issue
Block a user