diff options
Diffstat (limited to 'var')
-rw-r--r-- | var/spack/repos/builtin/packages/boost/bootstrap-path.patch | 33 | ||||
-rw-r--r-- | var/spack/repos/builtin/packages/boost/package.py | 3 |
2 files changed, 36 insertions, 0 deletions
diff --git a/var/spack/repos/builtin/packages/boost/bootstrap-path.patch b/var/spack/repos/builtin/packages/boost/bootstrap-path.patch new file mode 100644 index 0000000000..06cebe0d1e --- /dev/null +++ b/var/spack/repos/builtin/packages/boost/bootstrap-path.patch @@ -0,0 +1,33 @@ +Remove the spack wrapper directories from PATH for the bootstrap step. +This was breaking the build for Cray (and other cross-compile) because +bjam was built for the BE and died on SIGILL on the FE. See issue +#9613. + +This only affects building bjam. The boost libraries are still built +the normal spack way with the spack wrappers. + + +diff -Naurb boost_1_66_0.orig/bootstrap.sh boost_1_66_0/bootstrap.sh +--- boost_1_66_0.orig/bootstrap.sh 2017-12-13 17:56:35.000000000 -0600 ++++ boost_1_66_0/bootstrap.sh 2019-01-09 13:51:56.407553214 -0600 +@@ -7,6 +7,20 @@ + + # boostinspect:notab - Tabs are required for the Makefile. + ++NEWPATH= ++OLDIFS="$IFS" ++IFS=: ++ ++for dir in $PATH ; do ++ case "x$dir" in ++ *lib*spack*env* ) ;; ++ * ) NEWPATH="${NEWPATH}:${dir}" ;; ++ esac ++done ++ ++IFS="$OLDIFS" ++PATH="$NEWPATH" ++ + BJAM="" + TOOLSET="" + BJAM_CONFIG="" diff --git a/var/spack/repos/builtin/packages/boost/package.py b/var/spack/repos/builtin/packages/boost/package.py index 8f0fced0de..9536aa5cc5 100644 --- a/var/spack/repos/builtin/packages/boost/package.py +++ b/var/spack/repos/builtin/packages/boost/package.py @@ -156,6 +156,9 @@ class Boost(Package): patch('boost_1.63.0_pgi.patch', when='@1.63.0%pgi') patch('boost_1.63.0_pgi_17.4_workaround.patch', when='@1.63.0%pgi@17.4') + # Fix the bootstrap/bjam build for Cray + patch('bootstrap-path.patch', when='@1.39.0: platform=cray') + def url_for_version(self, version): if version >= Version('1.63.0'): url = "https://dl.bintray.com/boostorg/release/{0}/source/boost_{1}.tar.bz2" |