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/ diff --git a/tools/rbspeex/Makefile b/tools/rbspeex/Makefile index 231cdb5517..b33534695c 100644 --- a/tools/rbspeex/Makefile +++ b/tools/rbspeex/Makefile @@ -41,6 +41,9 @@ ifeq ($(findstring APPLE,$(CPPDEFINES)),APPLE) # that to determine if we need to set arch and isysroot. ifeq ($(findstring __clang__,$(CPPDEFINES)),__clang__) CFLAGS += -mmacosx-version-min=10.5 +ifneq ($(ISYSROOT),) +CFLAGS += -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/tools/ucl/src/Makefile b/tools/ucl/src/Makefile index a741f1ee8c..14ba2c2b04 100644 --- a/tools/ucl/src/Makefile +++ b/tools/ucl/src/Makefile @@ -36,6 +36,9 @@ ifeq ($(findstring APPLE,$(CPPDEFINES)),APPLE) # that to determine if we need to set arch and isysroot. ifeq ($(findstring __clang__,$(CPPDEFINES)),__clang__) CFLAGS += -mmacosx-version-min=10.5 +ifneq ($(ISYSROOT),) +CFLAGS += -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/utils/tomcrypt/Makefile b/utils/tomcrypt/Makefile index ce0f9bae47..4ca8c4e843 100644 --- a/utils/tomcrypt/Makefile +++ b/utils/tomcrypt/Makefile @@ -16,6 +16,10 @@ endif CFLAGS := -O3 -g -std=c99 -Wall $(DEFINES) -Isrc/headers LDFLAGS := +ifneq ($(ISYSROOT),) +CFLAGS += -isysroot $(ISYSROOT) +endif + SOURCES := \ src/ciphers/aes/aes.c src/ciphers/aes/aes_tab.c \ src/misc/crypt/crypt_argchk.c src/misc/crypt/crypt_register_cipher.c src/misc/crypt/crypt_cipher_is_valid.c src/misc/crypt/crypt_cipher_descriptor.c \