summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authort-karatsu <49965247+t-karatsu@users.noreply.github.com>2019-09-05 00:07:31 +0900
committerAdam J. Stewart <ajstewart426@gmail.com>2019-09-04 10:07:31 -0500
commitfc9e17289aad538d18154a9e3ee176d5bae3eedd (patch)
treef5d8d4cdd7464859049109999b0899f66b2a0826
parent407834fffa9b9b247ecc4dee7888231079325b04 (diff)
downloadspack-fc9e17289aad538d18154a9e3ee176d5bae3eedd.tar.gz
spack-fc9e17289aad538d18154a9e3ee176d5bae3eedd.tar.bz2
spack-fc9e17289aad538d18154a9e3ee176d5bae3eedd.tar.xz
spack-fc9e17289aad538d18154a9e3ee176d5bae3eedd.zip
boost: add -c option to C/C++ compile commands for clang. (#12694)
-rw-r--r--var/spack/repos/builtin/packages/boost/clang-linux_add_option.patch20
-rw-r--r--var/spack/repos/builtin/packages/boost/clang-linux_add_option2.patch20
-rw-r--r--var/spack/repos/builtin/packages/boost/package.py4
3 files changed, 44 insertions, 0 deletions
diff --git a/var/spack/repos/builtin/packages/boost/clang-linux_add_option.patch b/var/spack/repos/builtin/packages/boost/clang-linux_add_option.patch
new file mode 100644
index 0000000000..2afb4d0176
--- /dev/null
+++ b/var/spack/repos/builtin/packages/boost/clang-linux_add_option.patch
@@ -0,0 +1,20 @@
+--- boost_1_63_0/tools/build/src/tools/clang-linux.jam.back 2019-09-04 15:51:25.052324575 +0900
++++ boost_1_63_0/tools/build/src/tools/clang-linux.jam 2019-09-04 15:52:22.278328007 +0900
+@@ -153,7 +153,7 @@
+ }
+
+ actions compile.c++.pch {
+- rm -f "$(<)" && "$(CONFIG_COMMAND)" -x c++-header $(OPTIONS) $(USER_OPTIONS) -D$(DEFINES) -I"$(INCLUDES)" -Xclang -emit-pth -o "$(<)" "$(>)"
++ rm -f "$(<)" && "$(CONFIG_COMMAND)" -c -x c++-header $(OPTIONS) $(USER_OPTIONS) -D$(DEFINES) -I"$(INCLUDES)" -Xclang -emit-pth -o "$(<)" "$(>)"
+ }
+
+ rule compile.c.pch ( targets * : sources * : properties * ) {
+@@ -164,7 +164,7 @@
+
+ actions compile.c.pch
+ {
+- rm -f "$(<)" && "$(CONFIG_COMMAND)" -x c-header $(OPTIONS) $(USER_OPTIONS) -D$(DEFINES) -I"$(INCLUDES)" -Xclang -emit-pth -o "$(<)" "$(>)"
++ rm -f "$(<)" && "$(CONFIG_COMMAND)" -c -x c-header $(OPTIONS) $(USER_OPTIONS) -D$(DEFINES) -I"$(INCLUDES)" -Xclang -emit-pth -o "$(<)" "$(>)"
+ }
+
+ ###############################################################################
diff --git a/var/spack/repos/builtin/packages/boost/clang-linux_add_option2.patch b/var/spack/repos/builtin/packages/boost/clang-linux_add_option2.patch
new file mode 100644
index 0000000000..d69355ccfe
--- /dev/null
+++ b/var/spack/repos/builtin/packages/boost/clang-linux_add_option2.patch
@@ -0,0 +1,20 @@
+--- boost_1_55_0/tools/build/v2/tools/clang-linux.jam.back 2019-09-04 16:43:57.542806983 +0900
++++ boost_1_55_0/tools/build/v2/tools/clang-linux.jam 2019-09-04 16:45:23.451800016 +0900
+@@ -152,7 +152,7 @@
+ }
+
+ actions compile.c++.pch {
+- rm -f "$(<)" && "$(CONFIG_COMMAND)" -x c++-header $(OPTIONS) $(USER_OPTIONS) -D$(DEFINES) -I"$(INCLUDES)" -Xclang -emit-pth -o "$(<)" "$(>)"
++ rm -f "$(<)" && "$(CONFIG_COMMAND)" -c -x c++-header $(OPTIONS) $(USER_OPTIONS) -D$(DEFINES) -I"$(INCLUDES)" -Xclang -emit-pth -o "$(<)" "$(>)"
+ }
+
+ rule compile.c.pch ( targets * : sources * : properties * ) {
+@@ -163,7 +163,7 @@
+
+ actions compile.c.pch
+ {
+- rm -f "$(<)" && "$(CONFIG_COMMAND)" -x c-header $(OPTIONS) $(USER_OPTIONS) -D$(DEFINES) -I"$(INCLUDES)" -Xclang -emit-pth -o "$(<)" "$(>)"
++ rm -f "$(<)" && "$(CONFIG_COMMAND)" -c -x c-header $(OPTIONS) $(USER_OPTIONS) -D$(DEFINES) -I"$(INCLUDES)" -Xclang -emit-pth -o "$(<)" "$(>)"
+ }
+
+ ###############################################################################
diff --git a/var/spack/repos/builtin/packages/boost/package.py b/var/spack/repos/builtin/packages/boost/package.py
index 4d4615cb28..eae5444112 100644
--- a/var/spack/repos/builtin/packages/boost/package.py
+++ b/var/spack/repos/builtin/packages/boost/package.py
@@ -189,6 +189,10 @@ class Boost(Package):
# Change the method for version analysis when using Fujitsu compiler.
patch('fujitsu_version_analysis.patch', when='@1.67.0:%fj')
+ # Add option to C/C++ compile commands in clang-linux.jam
+ patch('clang-linux_add_option.patch', when='@1.56.0:1.63.0')
+ patch('clang-linux_add_option2.patch', when='@:1.55.0')
+
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"