From 3364e5550ffa7f4af1728ae3b97d2be5781041a3 Mon Sep 17 00:00:00 2001 From: Gregory Lee Date: Thu, 18 Feb 2021 09:39:20 -0800 Subject: patches to apply to gdbm and m4 when using oneapi compiler (#21740) --- var/spack/repos/builtin/packages/gdbm/package.py | 1 + var/spack/repos/builtin/packages/m4/oneapi.patch | 18 ++++++++++++++++++ var/spack/repos/builtin/packages/m4/package.py | 1 + 3 files changed, 20 insertions(+) create mode 100644 var/spack/repos/builtin/packages/m4/oneapi.patch diff --git a/var/spack/repos/builtin/packages/gdbm/package.py b/var/spack/repos/builtin/packages/gdbm/package.py index ff5421e83d..294206d3bf 100644 --- a/var/spack/repos/builtin/packages/gdbm/package.py +++ b/var/spack/repos/builtin/packages/gdbm/package.py @@ -30,6 +30,7 @@ class Gdbm(AutotoolsPackage, GNUMirrorPackage): patch('gdbm.patch', when='%clang@11:') patch('gdbm.patch', when='%cce@11:') patch('gdbm.patch', when='%aocc@2:') + patch('gdbm.patch', when='%oneapi') def configure_args(self): diff --git a/var/spack/repos/builtin/packages/m4/oneapi.patch b/var/spack/repos/builtin/packages/m4/oneapi.patch new file mode 100644 index 0000000000..d659c1e75c --- /dev/null +++ b/var/spack/repos/builtin/packages/m4/oneapi.patch @@ -0,0 +1,18 @@ +--- a/lib/xalloc-oversized.h 2020-08-07 11:04:56.154698639 -0700 ++++ b/lib/xalloc-oversized.h 2020-08-07 11:06:11.667997389 -0700 +@@ -46,13 +46,13 @@ + positive and N must be nonnegative. This is a macro, not a + function, so that it works correctly even when SIZE_MAX < N. */ + +-#if 7 <= __GNUC__ || __has_builtin (__builtin_add_overflow_p) ++#if ((7 <= __GNUC__ || __has_builtin (__builtin_add_overflow_p)) && !defined __INTEL_LLVM_COMPILER) + # define xalloc_oversized(n, s) \ + __builtin_mul_overflow_p (n, s, (__xalloc_count_type) 1) + #elif ((5 <= __GNUC__ \ + || (__has_builtin (__builtin_mul_overflow) \ + && __has_builtin (__builtin_constant_p))) \ +- && !__STRICT_ANSI__) ++ && !__STRICT_ANSI__ && !defined __INTEL_LLVM_COMPILER) + # define xalloc_oversized(n, s) \ + (__builtin_constant_p (n) && __builtin_constant_p (s) \ + ? __xalloc_oversized (n, s) \ diff --git a/var/spack/repos/builtin/packages/m4/package.py b/var/spack/repos/builtin/packages/m4/package.py index 23f802d9d1..cc18685faf 100644 --- a/var/spack/repos/builtin/packages/m4/package.py +++ b/var/spack/repos/builtin/packages/m4/package.py @@ -18,6 +18,7 @@ class M4(AutotoolsPackage, GNUMirrorPackage): patch('gnulib-pgi.patch', when='@1.4.18') patch('pgi.patch', when='@1.4.17') patch('nvhpc.patch', when='%nvhpc') + patch('oneapi.patch', when='%oneapi') # from: https://github.com/Homebrew/homebrew-core/blob/master/Formula/m4.rb # Patch credit to Jeremy Huddleston Sequoia patch('secure_snprintf.patch', when='os = highsierra') -- cgit v1.2.3-60-g2f50