1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51
|
--- a/config/configure.py
+++ b/config/configure.py
@@ -179,7 +179,10 @@
log.Exit('Missing files in packages-download directory')
# Create directories for configuration files
-archdir, archdirexisted = slepc.CreateDirTest(slepc.dir,petsc.archname)
+pseudoarch = petsc.archname
+if slepc.buildsuffix:
+ pseudoarch += '-' + slepc.buildsuffix
+archdir, archdirexisted = slepc.CreateDirTest(slepc.dir,pseudoarch)
libdir = slepc.CreateDir(archdir,'lib')
confdir = slepc.CreateDirTwo(libdir,'slepc','conf')
@@ -257,7 +260,7 @@
log.Print('\nGenerating Fortran bindings...')
try:
from utils import generatefortranbindings
- generatefortranbindings.main(petsc.dir,slepc.dir,petsc.archname)
+ generatefortranbindings.main(petsc.dir,slepc.dir,pseudoarch)
except RuntimeError as e:
log.Exit('Unable to generate Fortran bindings:\n'+str(e))
@@ -314,10 +317,10 @@
# Write reconfigure file
if not slepc.isinstall:
log.write('Reconfigure file in '+confdir)
- with slepc.CreateFile(confdir,'reconfigure-'+petsc.archname+'.py') as reconfig:
+ with slepc.CreateFile(confdir,'reconfigure-'+pseudoarch+'.py') as reconfig:
WriteReconfigScript(reconfig,slepc.dir,argdb.UsedArgs())
try:
- os.chmod(os.path.join(confdir,'reconfigure-'+petsc.archname+'.py'),0o775)
+ os.chmod(os.path.join(confdir,'reconfigure-'+pseudoarch+'.py'),0o775)
except OSError as e:
log.Exit('Unable to make reconfigure script executable:\n'+str(e))
--- a/config/packages/slepc.py
+++ b/config/packages/slepc.py
@@ -28,10 +28,12 @@
print(' --with-packages-build-dir=<dir>'.ljust(wd)+': Location to unpack and run the build process for downloaded packages')
print('\nSLEPc:')
print(' --prefix=<dir>'.ljust(wd)+': Specify location to install SLEPc (e.g., /usr/local)')
+ print(' --build-suffix=<string> : Extension to name of build directory (e.g. "64" to distinguish 64-bit builds)')
print(' --DATAFILESPATH=<dir>'.ljust(wd)+': Location of datafiles (available at https://slepc.upv.es/datafiles)')
def ProcessArgs(self,argdb):
self.clean = argdb.PopBool('with-clean')[0]
+ self.buildsuffix = argdb.PopString('build-suffix')[0]
self.force = argdb.PopBool('force')[0]
self.datadir = argdb.PopPath('DATAFILESPATH',exist=True)[0]
self.downloaddir = argdb.PopPath('with-packages-download-dir',exist=True)[0]
|