Skip to content

Commit 89e2c05

Browse files
author
Kongou Hikari
committed
Fix cross compiling error & tweaking multilib setting
1 parent 93e794e commit 89e2c05

File tree

7 files changed

+26
-8
lines changed

7 files changed

+26
-8
lines changed

.gitignore

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,8 @@
11
autom4te.cache
2-
build
2+
test
3+
build*
4+
stamps
5+
install*
36
config.log
47
config.status
58
Makefile

Makefile.in

Lines changed: 17 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -81,6 +81,14 @@ MUSL_CXX_FOR_TARGET ?= $(MUSL_TUPLE)-g++
8181

8282
CONFIGURE_HOST = @configure_host@
8383

84+
#For cross-compiling to Windows
85+
86+
ifdef CONFIGURE_HOST
87+
TARGET_GCC_EXECUTABLE := $(NEWLIB_TUPLE)-gcc
88+
else
89+
TARGET_GCC_EXECUTABLE := $(INSTALL_DIR)/bin/$(NEWLIB_TUPLE)-gcc
90+
endif
91+
8492
all: @default_target@
8593
newlib: stamps/build-gcc-newlib-stage2
8694
linux: stamps/build-gcc-linux-stage2
@@ -408,7 +416,8 @@ stamps/build-binutils-newlib: $(srcdir)/riscv-binutils
408416
--disable-gdb \
409417
--disable-sim \
410418
--disable-libdecnumber \
411-
--disable-readline
419+
--disable-readline \
420+
--disable-nls
412421
$(MAKE) -C $(notdir $@)
413422
$(MAKE) -C $(notdir $@) install
414423
mkdir -p $(dir $@) && touch $@
@@ -434,6 +443,10 @@ stamps/build-gdb-newlib: $(srcdir)/riscv-gdb
434443
$(MAKE) -C $(notdir $@) install
435444
mkdir -p $(dir $@) && touch $@
436445

446+
ifdef CONFIGURE_HOST
447+
stamps/build-gcc-newlib-stage1: stamps/build-binutils-newlib
448+
mkdir -p $(dir $@) && touch $@
449+
else
437450
stamps/build-gcc-newlib-stage1: $(srcdir)/riscv-gcc stamps/build-binutils-newlib
438451
if test -f $</contrib/download_prerequisites && test "@NEED_GCC_EXTERNAL_LIBRARIES@" == "true"; then cd $< && ./contrib/download_prerequisites; fi
439452
rm -rf $@ $(notdir $@)
@@ -466,6 +479,8 @@ stamps/build-gcc-newlib-stage1: $(srcdir)/riscv-gcc stamps/build-binutils-newlib
466479
$(MAKE) -C $(notdir $@) install-gcc
467480
mkdir -p $(dir $@) && touch $@
468481

482+
endif
483+
469484
stamps/build-newlib: $(srcdir)/riscv-newlib stamps/build-gcc-newlib-stage1
470485
rm -rf $@ $(notdir $@)
471486
mkdir $(notdir $@)
@@ -510,7 +525,7 @@ stamps/build-newlib-nano: $(srcdir)/riscv-newlib stamps/build-gcc-newlib-stage1
510525
stamps/merge-newlib-nano: stamps/build-newlib-nano stamps/build-newlib
511526
# Copy nano library files into newlib install dir.
512527
set -e; \
513-
for ml in `$(INSTALL_DIR)/bin/$(NEWLIB_TUPLE)-gcc --print-multi-lib`; \
528+
for ml in `$(TARGET_GCC_EXECUTABLE) --print-multi-lib`; \
514529
do \
515530
mld=`echo $${ml} | sed -e 's/;.*$$//'`; \
516531
cp $(builddir)/install-newlib-nano/$(NEWLIB_TUPLE)/lib/$${mld}/libc.a \

configure

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3316,7 +3316,7 @@ else
33163316
fi
33173317
33183318
if test "x$enable_multilib" != xno; then :
3319-
newlib_multilib_names="rv32i-ilp32 rv32iac-ilp32 rv32im-ilp32 rv32imac-ilp32 rv32imafc-ilp32f rv64imac-lp64 rv64imafdc-lp64d"
3319+
newlib_multilib_names="rv32i-ilp32 rv32iac-ilp32 rv32imc-ilp32 rv32im-ilp32 rv32imac-ilp32 rv32imafc-ilp32f rv32imafdc-ilp32d rv32e-ilp32e rv32ec-ilp32e rv32emc-ilp32e rv32ema-ilp32e rv32emac-ilp32e"
33203320
33213321
else
33223322
newlib_multilib_names="$with_arch-$with_abi"

configure.ac

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -103,7 +103,7 @@ AS_IF([test "x$enable_multilib" != xno],
103103
[AC_SUBST(glibc_multilib_names,"$with_arch-$with_abi")])
104104

105105
AS_IF([test "x$enable_multilib" != xno],
106-
[AC_SUBST(newlib_multilib_names,"rv32i-ilp32 rv32iac-ilp32 rv32im-ilp32 rv32imac-ilp32 rv32imafc-ilp32f rv64imac-lp64 rv64imafdc-lp64d")],
106+
[AC_SUBST(newlib_multilib_names,"rv32i-ilp32 rv32iac-ilp32 rv32imc-ilp32 rv32im-ilp32 rv32imac-ilp32 rv32imafc-ilp32f rv32imafdc-ilp32d rv32e-ilp32e rv32ec-ilp32e rv32emc-ilp32e rv32ema-ilp32e rv32emac-ilp32e")],
107107
[AC_SUBST(newlib_multilib_names,"$with_arch-$with_abi")])
108108

109109
AC_ARG_ENABLE(gcc-checking,

0 commit comments

Comments
 (0)