summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDominik Riebeling <Dominik.Riebeling@gmail.com>2020-10-18 18:53:48 +0200
committerDominik Riebeling <Dominik.Riebeling@gmail.com>2020-10-18 19:16:27 +0200
commita05d061aa384863e601c7989b363f8ef70dad34f (patch)
tree49eafb663c49b8ce203ab17b6bb5f9140eabf7b6
parentd097742155873c8597f1b5adcce95fa17f135002 (diff)
downloadrockbox-a05d061aa384863e601c7989b363f8ef70dad34f.tar.gz
rockbox-a05d061aa384863e601c7989b363f8ef70dad34f.tar.bz2
rockbox-a05d061aa384863e601c7989b363f8ef70dad34f.zip
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
-rw-r--r--rbutil/libtools.make3
-rw-r--r--rbutil/rbutilqt/Makefile.libs1
-rw-r--r--rbutil/rbutilqt/rbutilqt.pro6
-rw-r--r--tools/rbspeex/Makefile3
-rw-r--r--tools/ucl/src/Makefile3
-rw-r--r--utils/tomcrypt/Makefile4
6 files changed, 20 insertions, 0 deletions
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 \