From a05d061aa384863e601c7989b363f8ef70dad34f Mon Sep 17 00:00:00 2001 From: Dominik Riebeling Date: Sun, 18 Oct 2020 18:53:48 +0200 Subject: rbutil: Pass isysroot to rbutil libs on macOS. On macOS we pass the full path to the compiler. On recent versions this causes the compiler to not find its SDK path, this needs to get passed via the isysroot option. Change-Id: Iea2820e1755cc80e12691119dfa31d70938ea511 --- rbutil/libtools.make | 3 +++ rbutil/rbutilqt/Makefile.libs | 1 + rbutil/rbutilqt/rbutilqt.pro | 6 ++++++ 3 files changed, 10 insertions(+) (limited to 'rbutil') diff --git a/rbutil/libtools.make b/rbutil/libtools.make index f9affdd9d4..dadc1a0545 100644 --- a/rbutil/libtools.make +++ b/rbutil/libtools.make @@ -75,6 +75,9 @@ ifeq ($(findstring APPLE,$(CPPDEFINES)),APPLE) # that to determine if we need to set arch and isysroot. ifeq ($(findstring __clang__,$(CPPDEFINES)),__clang__) GCCFLAGS += -mmacosx-version-min=10.5 +ifneq ($(ISYSROOT),) +GCCFLAGS += -isysroot $(ISYSROOT) +endif else # when building libs for OS X 10.4+ build for both i386 and ppc at the same time. # This creates fat objects, and ar can only create the archive but not operate diff --git a/rbutil/rbutilqt/Makefile.libs b/rbutil/rbutilqt/Makefile.libs index 938426f124..ac4e31a9e4 100644 --- a/rbutil/rbutilqt/Makefile.libs +++ b/rbutil/rbutilqt/Makefile.libs @@ -32,6 +32,7 @@ export CXXFLAGS=$(EXTRALIB_CXXFLAGS) export CC=$(EXTRALIBS_CC) export CXX=$(EXTRALIBS_CXX) export AR=$(EXTRALIBS_AR) +export ISYSROOT=$(EXTRALIB_ISYSROOT) libs: librbspeex libucl libipodpatcher libsansapatcher libmkamsboot libmktccboot libmkmpioboot libchinachippatcher libmkimxboot libmks5lboot libbzip2 libbspatch librbtomcrypt diff --git a/rbutil/rbutilqt/rbutilqt.pro b/rbutil/rbutilqt/rbutilqt.pro index 9d7da92dbf..a7d0a179e6 100644 --- a/rbutil/rbutilqt/rbutilqt.pro +++ b/rbutil/rbutilqt/rbutilqt.pro @@ -35,6 +35,12 @@ EXTRALIBS_OPTS += EXTRALIBS_CC=\"$$QMAKE_CC\" EXTRALIBS_OPTS += EXTRALIBS_CXX=\"$$QMAKE_CXX\" EXTRALIBS_OPTS += EXTRALIB_CFLAGS=\"$$MACHINEFLAGS\" EXTRALIBS_OPTS += EXTRALIB_CXXFLAGS=\"$$MACHINEFLAGS\" +macx { +# on recent macOS we need to pass isysroot to the libs, otherwise it won't find +# the standard libaries. This is caused by the passed compiler (doesn't rely on +# default compiler but passed full path) + EXTRALIBS_OPTS += EXTRALIB_ISYSROOT=\"$$QMAKE_MAC_SDK.macosx.Path\" +} MYBUILDDIR = $$OUT_PWD/build/ MYLIBBUILDDIR = $$MYBUILDDIR/libs/ -- cgit v1.2.3