Fix OS X build failure with Command Line Tools and without full Xcode installation

On OS X, if you don't have a full Xcode installation, but just the Command Line Tools package, xcrun and xcodebuild don't return a valid SDK root path. In these cases, let's use "/" as the SDK root (which is where the headers and libraries are installed).

Reviewed at http://reviews.llvm.org/D7641

llvm-svn: 230847
This commit is contained in:
Kuba Brecka 2015-02-28 12:25:10 +00:00
parent f1362f6196
commit ca48abc9b3
2 changed files with 15 additions and 6 deletions

View File

@ -302,15 +302,20 @@ if(APPLE)
set(SANITIZER_MIN_OSX_VERSION 10.7)
set(CMAKE_OSX_DEPLOYMENT_TARGET "") # We're setting the flag manually below.
set(DARWIN_osx_CFLAGS -mmacosx-version-min=${SANITIZER_MIN_OSX_VERSION}
-isysroot ${OSX_SDK_DIR} -stdlib=libc++)
-stdlib=libc++)
set(DARWIN_iossim_CFLAGS
-mios-simulator-version-min=7.0 -isysroot ${IOSSIM_SDK_DIR})
set(DARWIN_osx_LINKFLAGS -mmacosx-version-min=${SANITIZER_MIN_OSX_VERSION}
-isysroot ${OSX_SDK_DIR} -stdlib=libc++)
-stdlib=libc++)
set(DARWIN_iossim_LINKFLAGS
-Wl,-ios_simulator_version_min,7.0.0
-mios-simulator-version-min=7.0
-isysroot ${IOSSIM_SDK_DIR})
if(OSX_SDK_DIR)
list(APPEND DARWIN_osx_CFLAGS -isysroot ${OSX_SDK_DIR})
list(APPEND DARWIN_osx_LINKFLAGS -isysroot ${OSX_SDK_DIR})
endif()
endif()
add_subdirectory(include)

View File

@ -175,7 +175,6 @@ CFLAGS.10.4 := $(CFLAGS) $(OSX_DEPLOYMENT_ARGS)
CFLAGS.asan_osx_dynamic := \
$(CFLAGS) -mmacosx-version-min=10.7 \
-stdlib=libc++ \
-isysroot $(OSX_SDK) \
-fno-builtin \
-gline-tables-only \
-DMAC_INTERPOSE_FUNCTIONS=1 \
@ -190,7 +189,6 @@ CFLAGS.asan_iossim_dynamic := \
-DASAN_DYNAMIC=1
CFLAGS.ubsan_osx := $(CFLAGS) -mmacosx-version-min=10.6 \
-isysroot $(OSX_SDK) \
-fno-builtin
CFLAGS.ios.i386 := $(CFLAGS) $(IOSSIM_DEPLOYMENT_ARGS)
@ -225,8 +223,7 @@ CFLAGS.profile_ios.arm64 := $(CFLAGS) $(IOS6_DEPLOYMENT_ARGS)
# Configure the asan_osx_dynamic library to be built shared.
SHARED_LIBRARY.asan_osx_dynamic := 1
LDFLAGS.asan_osx_dynamic := -lc++ -undefined dynamic_lookup -install_name @rpath/libclang_rt.asan_osx_dynamic.dylib \
-mmacosx-version-min=10.7 \
-isysroot $(OSX_SDK)
-mmacosx-version-min=10.7
# Configure the asan_iossim_dynamic library to be built shared.
SHARED_LIBRARY.asan_iossim_dynamic := 1
@ -236,6 +233,13 @@ LDFLAGS.asan_iossim_dynamic := -undefined dynamic_lookup -install_name @rpath/li
-Wl,-ios_simulator_version_min,7.0.0 \
-mios-simulator-version-min=7.0 -isysroot $(IOSSIM_SDK)
ifneq ($(OSX_SDK),)
CFLAGS.asan_osx_dynamic += -isysroot $(OSX_SDK)
LDFLAGS.asan_osx_dynamic += -isysroot $(OSX_SDK)
CFLAGS.ubsan_osx += -isysroot $(OSX_SDK)
LDFLAGS.ubsan_osx += -isysroot $(OSX_SDK)
endif
FUNCTIONS.eprintf := eprintf
FUNCTIONS.10.4 := eprintf floatundidf floatundisf floatundixf