summaryrefslogtreecommitdiff
path: root/package/eglibc
diff options
context:
space:
mode:
authorWaldemar Brodkorb <wbx@openadk.org>2011-10-12 05:54:51 +0200
committerWaldemar Brodkorb <wbx@openadk.org>2011-10-12 05:54:51 +0200
commitb3b93b5d6c43789bbd0d4bc5bac2900609ca4087 (patch)
tree716f0b733f29904cb2d84bd1108f58c7b6101b05 /package/eglibc
parent4239d26536021619954bca5b67fb03bd48b24c15 (diff)
respect choosen ABI
Diffstat (limited to 'package/eglibc')
-rw-r--r--package/eglibc/Makefile9
-rw-r--r--package/eglibc/files/libc.so.mips2
2 files changed, 10 insertions, 1 deletions
diff --git a/package/eglibc/Makefile b/package/eglibc/Makefile
index 5bf290fe9..5466ddb85 100644
--- a/package/eglibc/Makefile
+++ b/package/eglibc/Makefile
@@ -91,6 +91,15 @@ eglibc-dev-install:
${INSTALL_DIR} $(IDIR_EGLIBC_DEV)/lib $(IDIR_EGLIBC_DEV)/usr/lib
# install linker script
-cp ./files/libc.so.$(ARCH) $(IDIR_EGLIBC_DEV)/usr/lib/libc.so
+ifeq ($(ADK_TARGET_ABI_O32),y)
+ $(SED) "s#@@ELFFORMAT@@#elf32-tradlittlemips#" $(IDIR_EGLIBC_DEV)/usr/lib/libc.so
+endif
+ifeq ($(ADK_TARGET_ABI_N32),y)
+ $(SED) "s#@@ELFFORMAT@@#elf32-ntradlittlemips#" $(IDIR_EGLIBC_DEV)/usr/lib/libc.so
+endif
+ifeq ($(ADK_TARGET_ABI_N64),y)
+ $(SED) "s#@@ELFFORMAT@@#elf64-tradlittlemips#" $(IDIR_EGLIBC_DEV)/usr/lib/libc.so
+endif
${CP} ${STAGING_TARGET_DIR}/usr/lib/crt* ${IDIR_EGLIBC_DEV}/usr/lib
${CP} ${STAGING_TARGET_DIR}/usr/lib/libc_nonshared.a ${IDIR_EGLIBC_DEV}/usr/lib
-for file in libc libcrypt libdl libm libresolv librt libutil; do \
diff --git a/package/eglibc/files/libc.so.mips b/package/eglibc/files/libc.so.mips
index 6165d3e9c..9e73ea39c 100644
--- a/package/eglibc/files/libc.so.mips
+++ b/package/eglibc/files/libc.so.mips
@@ -1,5 +1,5 @@
/* GNU ld script
Use the shared library, but some functions are only in
the static library, so try that secondarily. */
- OUTPUT_FORMAT(elf64-tradlittlemips)
+ OUTPUT_FORMAT(@@ELFTARGET@@)
GROUP ( /lib/libc.so.6 /usr/lib/libc_nonshared.a AS_NEEDED ( /lib/ld.so.1 ) )