summaryrefslogtreecommitdiff
path: root/toolchain/musl/Makefile
diff options
context:
space:
mode:
Diffstat (limited to 'toolchain/musl/Makefile')
-rw-r--r--toolchain/musl/Makefile15
1 files changed, 15 insertions, 0 deletions
diff --git a/toolchain/musl/Makefile b/toolchain/musl/Makefile
index 91a6add88..3782e5672 100644
--- a/toolchain/musl/Makefile
+++ b/toolchain/musl/Makefile
@@ -6,6 +6,13 @@ include ../rules.mk
include Makefile.inc
include ${TOPDIR}/mk/buildhlp.mk
+ifeq ($(CPU_ARCH),ppc)
+REAL_GNU_TARGET_NAME:= $(subst ppc,powerpc,$(REAL_GNU_TARGET_NAME))
+endif
+ifeq ($(CPU_ARCH),mips64el)
+REAL_GNU_TARGET_NAME:= $(subst mips64el,mips,$(REAL_GNU_TARGET_NAME))
+endif
+
$(WRKBUILD)/.headers:
(cd $(WRKBUILD); CC='$(TARGET_CC)' CROSS_COMPILE='$(TARGET_CROSS)' \
./configure --prefix=/usr \
@@ -21,6 +28,14 @@ $(WRKBUILD)/.compiled:
touch $@
$(WRKBUILD)/.installed: $(WRKBUILD)/.compiled
+ # reconfigure musl, otherwise linking with libgcc or libgcc_eh is disabled
+ $(MAKE) CFLAGS='$(TARGET_CFLAGS)' -C $(WRKBUILD) clean
+ (cd $(WRKBUILD); CC='$(TARGET_CC)' CROSS_COMPILE='$(TARGET_CROSS)' \
+ ./configure --prefix=/usr \
+ --target=$(REAL_GNU_TARGET_NAME) \
+ --disable-gcc-wrapper \
+ )
+ $(MAKE) CFLAGS='$(TARGET_CFLAGS)' -C $(WRKBUILD) all
$(MAKE) -C $(WRKBUILD) DESTDIR=$(STAGING_TARGET_DIR) install
touch $@