[cig-commits] r7566 - cs/buildbot/trunk/buildbot/scripts

leif at geodynamics.org leif at geodynamics.org
Fri Jun 29 18:00:39 PDT 2007


Author: leif
Date: 2007-06-29 18:00:39 -0700 (Fri, 29 Jun 2007)
New Revision: 7566

Modified:
   cs/buildbot/trunk/buildbot/scripts/windows.py
Log:
Disabled DLL build for PETSc v2.3.3 and earlier.  The link of
petscdm.dll fails due to unresolved symbols which aren't defined
anywhere.


Modified: cs/buildbot/trunk/buildbot/scripts/windows.py
===================================================================
--- cs/buildbot/trunk/buildbot/scripts/windows.py	2007-06-30 00:20:37 UTC (rev 7565)
+++ cs/buildbot/trunk/buildbot/scripts/windows.py	2007-06-30 01:00:39 UTC (rev 7566)
@@ -43,8 +43,28 @@
     petsc_lib = petsc_dir + "/" + petsc_arch + "/lib"
     petsc_bin = petsc_dir + "/" + petsc_arch + "/bin"
 
-    os.chdir(petsc_lib)
+    chaco = "chaco"
 
+    if os.path.isdir(petsc_lib):
+        os.chdir(petsc_lib)
+    else:
+        # PETSc v2.3.3 and earlier
+
+        # The link of petscdm.dll fails due to unresolved symbols
+        # (e.g., "AOPetscToApplicationIS").  I don't know where they
+        # are defined.
+        print "PETSc v2.3.3 or earlier detected; skipping DLL build."
+        return
+        
+        petsc_lib = petsc_dir + "/lib/" + petsc_arch
+        os.chdir(petsc_lib)
+        chaco = ("../../externalpackages/Chaco-2.2/" + petsc_arch + "/lib/", chaco)
+        
+        # This doesn't exist -- I'm making it up, for consistency.
+        petsc_bin = petsc_dir + "/bin/" + petsc_arch
+        if not os.path.isdir(petsc_bin):
+            os.makedirs(petsc_bin)
+
     # from PETSC_LIBS:
     #     -lpetscts -lpetscsnes -lpetscksp -lpetscdm -lpetscmat -lpetscvec -lpetsc
     #     -lchaco -llapack -lblas -ldl
@@ -52,12 +72,15 @@
     #     -lcygwin -luser32 -ladvapi32 -lshell32 -lmpichcxx -lstdc++ -lgdi32 -luser32 -ladvapi32 -lkernel32 -ldl
 
     # libs, in order
-    libs = ["petscts", "petscsnes", "petscksp", "petscdm", "petscmat", "petscvec", "petsc", "chaco"]
+    libs = ["petscts", "petscsnes", "petscksp", "petscdm", "petscmat", "petscvec", "petsc", chaco]
     deps = ["-llapack", "-lblas", "-lgdi32", "-lg2c"]
 
     while libs:
+        directory = ""
         l = libs.pop()
-        archive = "lib" + l + ".a"
+        if isinstance(l, tuple):
+            directory, l = l
+        archive = directory + "lib" + l + ".a"
         dll = petsc_bin + "/" + l + ".dll"
         implib = "lib" + l + ".dll.a"
         



More information about the cig-commits mailing list