summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--lib/spack/spack/operating_systems/mac_os.py8
-rw-r--r--var/spack/repos/builtin/packages/gcc/package.py8
2 files changed, 15 insertions, 1 deletions
diff --git a/lib/spack/spack/operating_systems/mac_os.py b/lib/spack/spack/operating_systems/mac_os.py
index f8259ff301..a95640ec8a 100644
--- a/lib/spack/spack/operating_systems/mac_os.py
+++ b/lib/spack/spack/operating_systems/mac_os.py
@@ -7,6 +7,7 @@ import platform as py_platform
from spack.architecture import OperatingSystem
from spack.version import Version
+from spack.util.executable import Executable
# FIXME: store versions inside OperatingSystem as a Version instead of string
@@ -16,6 +17,13 @@ def macos_version():
return Version('.'.join(py_platform.mac_ver()[0].split('.')[:2]))
+def macos_sdk_path():
+ """Return SDK path
+ """
+ xcrun = Executable('xcrun')
+ return xcrun('--show-sdk-path', output=str, error=str).rstrip()
+
+
class MacOs(OperatingSystem):
"""This class represents the macOS operating system. This will be
auto detected using the python platform.mac_ver. The macOS
diff --git a/var/spack/repos/builtin/packages/gcc/package.py b/var/spack/repos/builtin/packages/gcc/package.py
index 62299a51b5..c5147cbb7e 100644
--- a/var/spack/repos/builtin/packages/gcc/package.py
+++ b/var/spack/repos/builtin/packages/gcc/package.py
@@ -4,7 +4,7 @@
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
from spack import *
-from spack.operating_systems.mac_os import macos_version
+from spack.operating_systems.mac_os import macos_version, macos_sdk_path
from llnl.util import tty
import glob
@@ -315,6 +315,12 @@ class Gcc(AutotoolsPackage):
'--disable-bootstrap',
'--disable-multilib'])
+ if sys.platform == 'darwin':
+ options.extend([
+ '--with-native-system-header-dir=/usr/include',
+ '--with-sysroot={0}'.format(macos_sdk_path())
+ ])
+
return options
# run configure/make/make(install) for the nvptx-none target