diff --git a/Makefile b/Makefile index 58ed6cf086..3df191263a 100644 --- a/Makefile +++ b/Makefile @@ -94,6 +94,8 @@ install-libs: headers libs cp -v "$(BUILD)/$(PROFILE)/ld.so" "$(DESTDIR)/$(LD_SO_PATH)" ifeq ($(USE_RUST_LIBM),) cp -v "$(BUILD)/openlibm/libopenlibm.a" "$(DESTDIR)/lib/libm.a" +else + $(AR) -rcs "$(DESTDIR)/lib/libm.a" endif # Empty libraries for dl, pthread, and rt $(AR) -rcs "$(DESTDIR)/lib/libdl.a" diff --git a/config.mk b/config.mk index e9ffa218ae..f3b4b025bc 100644 --- a/config.mk +++ b/config.mk @@ -12,6 +12,17 @@ ifeq ($(TARGET),aarch64-unknown-linux-gnu) LD_SO_PATH=lib/ld.so.1 endif +ifeq ($(TARGET),aarch64-unknown-linux-relibc) + export CC=aarch64-linux-relibc-gcc + export LD=aarch64-linux-relibc-ld + export AR=aarch64-linux-relibc-ar + export NM=aarch64-linux-relibc-nm + export OBJCOPY=aarch64-linux-relibc-objcopy + export CPPFLAGS= + LD_SO_PATH=lib/ld.so.1 +endif + + ifeq ($(TARGET),aarch64-unknown-redox) export CC=aarch64-unknown-redox-gcc export LD=aarch64-unknown-redox-ld @@ -52,6 +63,16 @@ ifeq ($(TARGET),x86_64-unknown-linux-gnu) LD_SO_PATH=lib/ld64.so.1 endif +ifeq ($(TARGET),x86_64-unknown-linux-relibc) + export CC=x86_64-linux-relibc-gcc + export LD=x86_64-linux-relibc-ld + export AR=x86_64-linux-relibc-ar + export NM=x86_64-linux-relibc-nm + export OBJCOPY=x86_64-linux-relibc-objcopy + export CPPFLAGS= + LD_SO_PATH=lib/ld64.so.1 +endif + ifeq ($(TARGET),x86_64-unknown-redox) export CC=x86_64-unknown-redox-gcc export LD=x86_64-unknown-redox-ld diff --git a/ld_so/ld_script/aarch64-unknown-linux-relibc.ld b/ld_so/ld_script/aarch64-unknown-linux-relibc.ld new file mode 120000 index 0000000000..024e3d58fe --- /dev/null +++ b/ld_so/ld_script/aarch64-unknown-linux-relibc.ld @@ -0,0 +1 @@ +./aarch64-unknown-linux-gnu.ld \ No newline at end of file diff --git a/ld_so/ld_script/x86_64-unknown-linux-relibc.ld b/ld_so/ld_script/x86_64-unknown-linux-relibc.ld new file mode 120000 index 0000000000..632f839b51 --- /dev/null +++ b/ld_so/ld_script/x86_64-unknown-linux-relibc.ld @@ -0,0 +1 @@ +./x86_64-unknown-linux-gnu.ld \ No newline at end of file