From 18dbe6527c4eccde8a2e8788b66cef441b5cec71 Mon Sep 17 00:00:00 2001 From: Josh Yelon Date: Mon, 3 Oct 2005 21:53:55 +0000 Subject: [PATCH] *** empty log message *** --- doc/makepanda/makepanda.py | 40 ++++++++++++++++++-------------- doc/makepanda/makepanda71.vcproj | 2 +- 2 files changed, 24 insertions(+), 18 deletions(-) diff --git a/doc/makepanda/makepanda.py b/doc/makepanda/makepanda.py index 0c4a6eed0f..87bc70c749 100755 --- a/doc/makepanda/makepanda.py +++ b/doc/makepanda/makepanda.py @@ -222,8 +222,8 @@ def PkgSelected(pkglist, pkg): if (OMIT.count(pkg)): return 0 return 1 -def DependencyQueue(fn, args, targets, sources): - DEPENDENCYQUEUE.append([fn,args,targets,sources]) +def DependencyQueue(fn, args, targets, sources, altsrc): + DEPENDENCYQUEUE.append([fn,args,targets,sources, altsrc]) ######################################################################## ## @@ -1025,7 +1025,7 @@ def EnqueueCxx(obj=0,src=0,ipath=[],opts=[],xdep=[]): fullsrc = CxxFindSource(src, ipath) if (fullsrc == 0): exit("Cannot find source file "+src) dep = CxxCalcDependencies(fullsrc, ipath, []) + xdep - DependencyQueue(fn, [wobj,fullsrc,ipath,opts], [wobj], dep) + DependencyQueue(fn, [wobj,fullsrc,ipath,opts], [wobj], dep, []) ######################################################################## ## @@ -1068,7 +1068,7 @@ def EnqueueBison(ipath=0,opts=0,pre=0,obj=0,dsth=0,src=0): if (fullsrc == 0): exit("Cannot find source file "+src) dstc="built/tmp/"+dstc dsth="built/include/"+dsth - DependencyQueue(fn, [pre,dsth,dstc,wobj,ipath,opts,fullsrc], [wobj, dsth], [fullsrc]) + DependencyQueue(fn, [pre,dsth,dstc,wobj,ipath,opts,fullsrc], [wobj, dsth], [fullsrc], []) ######################################################################## ## @@ -1106,7 +1106,7 @@ def EnqueueFlex(ipath=0,opts=0,pre=0,obj=0,src=0,dashi=0): EnqueueCxx(ipath=IPATH, opts=OPTS, obj=obj, src=dst) return() if (fullsrc == 0): exit("Cannot find source file "+src) - DependencyQueue(fn, [pre,dst,fullsrc,wobj,ipath,opts,dashi], [wobj], [fullsrc]) + DependencyQueue(fn, [pre,dst,fullsrc,wobj,ipath,opts,dashi], [wobj], [fullsrc], []) ######################################################################## ## @@ -1179,11 +1179,11 @@ def EnqueueIgate(ipath=0, opts=0, outd=0, obj=0, src=0, module=0, library=0, als if ((ipath==0)|(opts==0)|(outd==0)|(obj==0)|(src==0)|(module==0)|(library==0)|(also==0)|(skip==0)): exit("syntax error in EnqueueIgate directive") if (COMPILER=="MSVC7"): - dep = "built/bin/interrogate.exe" + altdep = "built/bin/interrogate.exe" wobj = "built/tmp/"+obj fn = CompileIgateMSVC7 if (COMPILER=="LINUXA"): - dep = "built/bin/interrogate" + altdep = "built/bin/interrogate" wobj = "built/tmp/"+obj[:-4]+".o" fn = CompileIgateLINUXA if (SLAVEBUILD!=0) and (SLAVEBUILD!=wobj): return @@ -1198,10 +1198,10 @@ def EnqueueIgate(ipath=0, opts=0, outd=0, obj=0, src=0, module=0, library=0, als if (files.count(x)!=0): files.remove(x) for x in also: files.append(x) ipath = ["built/tmp"] + ipath + ["built/include"] - dep = [dep, "built/tmp/dtool_have_python.dat"] + dep = ["built/tmp/dtool_have_python.dat"] dep = dep + CxxCalcDependenciesAll(xpaths(src+"/",files,""), ipath) outc = "built/tmp/"+obj[:-4]+".cxx" - DependencyQueue(fn, [ipath,opts,outd,outc,wobj,src,module,library,files], [wobj, outd], dep) + DependencyQueue(fn, [ipath,opts,outd,outc,wobj,src,module,library,files], [wobj, outd], dep, [altdep]) ######################################################################## ## @@ -1233,9 +1233,11 @@ def EnqueueImod(ipath=0, opts=0, obj=0, module=0, library=0, files=0): if ((ipath==0)|(opts==0)|(obj==0)|(module==0)|(library==0)|(files==0)): exit("syntax error in EnqueueImod directive") if (COMPILER=="MSVC7"): + altdep = "built/bin/interrogate_module.exe" wobj = "built/tmp/"+obj[:-4]+".obj" fn = CompileImodMSVC7 if (COMPILER=="LINUXA"): + altdep = "built/bin/interrogate_module" wobj = "built/tmp/"+obj[:-4]+".o" fn = CompileImodLINUXA if (SLAVEBUILD!=0) and (SLAVEBUILD!=wobj): return @@ -1243,7 +1245,7 @@ def EnqueueImod(ipath=0, opts=0, obj=0, module=0, library=0, files=0): outc = "built/tmp/"+obj[:-4]+".cxx" files = xpaths("built/pandac/input/",files,"") dep = files + ["built/tmp/dtool_have_python.dat"] - DependencyQueue(fn, [outc, wobj, module, library, ipath, opts, files], [wobj], dep) + DependencyQueue(fn, [outc, wobj, module, library, ipath, opts, files], [wobj], dep, [altdep]) ######################################################################## ## @@ -1271,7 +1273,7 @@ def EnqueueLib(lib=0, obj=[], opts=[]): else: wlib = "built/lib/" + lib[:-4] + ".lib" if (SLAVEBUILD!=0) and (SLAVEBUILD!=wlib): return wobj = xpaths("built/tmp/",obj,"") - DependencyQueue(CompileLibMSVC7, [wlib, wobj, opts], [wlib], wobj) + DependencyQueue(CompileLibMSVC7, [wlib, wobj, opts], [wlib], wobj, []) if (COMPILER=="LINUXA"): if (lib[-4:]==".ilb"): wlib = "built/tmp/" + lib[:-4] + ".a" @@ -1279,7 +1281,7 @@ def EnqueueLib(lib=0, obj=[], opts=[]): if (SLAVEBUILD!=0) and (SLAVEBUILD!=wlib): return wobj = [] for x in obj: wobj.append("built/tmp/" + x[:-4] + ".o") - DependencyQueue(CompileLibLINUXA, [wlib, wobj, opts], [wlib], wobj) + DependencyQueue(CompileLibLINUXA, [wlib, wobj, opts], [wlib], wobj, []) ######################################################################## ## @@ -1411,16 +1413,16 @@ def EnqueueLink(dll=0, obj=[], opts=[], xdep=[], ldef=0): if (dll[-4:]==".exe"): wdll = "built/bin/"+dll if (SLAVEBUILD!=0) and (SLAVEBUILD!=wdll): return - DependencyQueue(CompileLinkMSVC7, [wdll, 0, wobj, opts, dll, ldef], [wdll], wobj) + DependencyQueue(CompileLinkMSVC7, [wdll, 0, wobj, opts, dll, ldef], [wdll], wobj, []) elif (dll[-4:]==".dll"): wdll = "built/bin/"+dll wlib = "built/lib/"+dll[:-4]+".lib" if (SLAVEBUILD!=0) and (SLAVEBUILD!=wdll): return - DependencyQueue(CompileLinkMSVC7, [wdll, wlib, wobj, opts, dll, ldef], [wdll, wlib], wobj) + DependencyQueue(CompileLinkMSVC7, [wdll, wlib, wobj, opts, dll, ldef], [wdll, wlib], wobj, []) else: wdll = "built/plugins/"+dll if (SLAVEBUILD!=0) and (SLAVEBUILD!=wdll): return - DependencyQueue(CompileLinkMSVC7, [wdll, 0, wobj, opts, dll, ldef], [wdll], wobj) + DependencyQueue(CompileLinkMSVC7, [wdll, 0, wobj, opts, dll, ldef], [wdll], wobj, []) if (COMPILER=="LINUXA"): if (dll[-4:]==".exe"): wdll = "built/bin/"+dll[:-4] @@ -1434,7 +1436,7 @@ def EnqueueLink(dll=0, obj=[], opts=[], xdep=[], ldef=0): elif (suffix==".ilb"): wobj.append("built/tmp/"+x[:-4]+".a") else: exit("unknown suffix in object list.") if (SLAVEBUILD!=0) and (SLAVEBUILD!=wdll): return - DependencyQueue(CompileLinkLINUXA, [wdll, obj, wobj, opts, dll, ldef], [wdll], wobj) + DependencyQueue(CompileLinkLINUXA, [wdll, obj, wobj, opts, dll, ldef], [wdll], wobj, []) ########################################################################################## @@ -1457,7 +1459,7 @@ def EnqueueBam(preconv, bam, egg): else: flt2egg = "built/bin/flt2egg" egg2bam = "built/bin/egg2bam" - DependencyQueue(CompileBam, [preconv, bam, egg], [bam], [egg, flt2egg, egg2bam]) + DependencyQueue(CompileBam, [preconv, bam, egg], [bam], [egg], [flt2egg, egg2bam]) ########################################################################################## # @@ -4492,6 +4494,10 @@ def AllSourcesReady(task, pending): for x in sources: if (pending.has_key(x)): return 0 + altsources = task[4] + for x in altsources: + if (pending.has_key(x)): + return 0 return 1 def ParallelMake(tasklist): diff --git a/doc/makepanda/makepanda71.vcproj b/doc/makepanda/makepanda71.vcproj index d714bf89f5..0932878016 100755 --- a/doc/makepanda/makepanda71.vcproj +++ b/doc/makepanda/makepanda71.vcproj @@ -18,7 +18,7 @@ + Output="..\built\bin\flt2egg.exe"/>