From b2b91a1f00bb31bb1f794a3debe83a7352b4f48e Mon Sep 17 00:00:00 2001 From: "Kelly (KT) Thompson" Date: Thu, 28 Mar 2019 16:20:28 -0600 Subject: Random123 - provide a patch to fix compiles with IBM XL (#11028) * Newer versions of IBM XL no longer define `__xlC__`, but define `__ibmxl__` instead. This one-line patch fixes this problem in Random123. * This patch was also provided to the Random123 maintiners (Random123@DEShawResearch.com). I don't expect a new release from them for a while, so I believe that this patch is the correct path forward (for now). --- var/spack/repos/builtin/packages/random123/ibmxl.patch | 11 +++++++++++ var/spack/repos/builtin/packages/random123/package.py | 2 ++ 2 files changed, 13 insertions(+) create mode 100644 var/spack/repos/builtin/packages/random123/ibmxl.patch (limited to 'var') diff --git a/var/spack/repos/builtin/packages/random123/ibmxl.patch b/var/spack/repos/builtin/packages/random123/ibmxl.patch new file mode 100644 index 0000000000..b074e06e27 --- /dev/null +++ b/var/spack/repos/builtin/packages/random123/ibmxl.patch @@ -0,0 +1,11 @@ +--- a/include/Random123/features/compilerfeatures.h ++++ b/include/Random123/features/compilerfeatures.h +@@ -199,7 +199,7 @@ added to each of the *features.h files, AND to examples/ut_features.cpp. + #include "nvccfeatures.h" + #elif defined(__ICC) + #include "iccfeatures.h" +-#elif defined(__xlC__) ++#elif defined(__xlC__) || defined(__ibmxl__) + #include "xlcfeatures.h" + #elif defined(__SUNPRO_C) || defined(__SUNPRO_CC) + #include "sunprofeatures.h" diff --git a/var/spack/repos/builtin/packages/random123/package.py b/var/spack/repos/builtin/packages/random123/package.py index cf774edf2c..a71a119249 100644 --- a/var/spack/repos/builtin/packages/random123/package.py +++ b/var/spack/repos/builtin/packages/random123/package.py @@ -17,6 +17,8 @@ class Random123(Package): version('1.09', '67ae45ff94b12acea590a6aa04ed1123') + patch('ibmxl.patch', when='@1.09') + def install(self, spec, prefix): # Random123 doesn't have a build system. # We have to do our own install here. -- cgit v1.2.3-60-g2f50