summaryrefslogtreecommitdiff
path: root/package/glibc
diff options
context:
space:
mode:
authorWaldemar Brodkorb <wbx@openadk.org>2013-11-10 17:29:47 +0100
committerWaldemar Brodkorb <wbx@openadk.org>2013-11-10 17:29:47 +0100
commit163c729ef251a87ca61731bf63892607953e3fa1 (patch)
tree959123435c709b8981998ff462a7840f22421b44 /package/glibc
parent74a757782e012ffaded62a4c8e1615676b44eee5 (diff)
add linker scripts
Diffstat (limited to 'package/glibc')
-rw-r--r--package/glibc/Makefile12
-rw-r--r--package/glibc/files/libc.so.i5865
-rw-r--r--package/glibc/files/libc.so.i6865
-rw-r--r--package/glibc/files/libc.so.mips5
-rw-r--r--package/glibc/files/libc.so.mips645
-rw-r--r--package/glibc/files/libc.so.mips64el5
-rw-r--r--package/glibc/files/libc.so.mipsel5
7 files changed, 42 insertions, 0 deletions
diff --git a/package/glibc/Makefile b/package/glibc/Makefile
index af70e125f..d6d1bf3ce 100644
--- a/package/glibc/Makefile
+++ b/package/glibc/Makefile
@@ -52,14 +52,26 @@ glibc-dev-install:
# install linker script
-cp ./files/libc.so.$(CPU_ARCH) $(IDIR_GLIBC_DEV)/usr/lib/libc.so
ifeq ($(ADK_TARGET_ABI_O32),y)
+ifeq ($(ADK_big),y)
+ $(SED) "s#@@ELFFORMAT@@#elf32-tradbigmips#" $(IDIR_GLIBC_DEV)/usr/lib/libc.so
+else
$(SED) "s#@@ELFFORMAT@@#elf32-tradlittlemips#" $(IDIR_GLIBC_DEV)/usr/lib/libc.so
endif
+endif
ifeq ($(ADK_TARGET_ABI_N32),y)
+ifeq ($(ADK_big),y)
+ $(SED) "s#@@ELFFORMAT@@#elf32-ntradbigmips#" $(IDIR_GLIBC_DEV)/usr/lib/libc.so
+else
$(SED) "s#@@ELFFORMAT@@#elf32-ntradlittlemips#" $(IDIR_GLIBC_DEV)/usr/lib/libc.so
endif
+endif
ifeq ($(ADK_TARGET_ABI_N64),y)
+ifeq ($(ADK_big),y)
+ $(SED) "s#@@ELFFORMAT@@#elf64-tradbigmips#" $(IDIR_GLIBC_DEV)/usr/lib/libc.so
+else
$(SED) "s#@@ELFFORMAT@@#elf64-tradlittlemips#" $(IDIR_GLIBC_DEV)/usr/lib/libc.so
endif
+endif
${CP} ${STAGING_TARGET_DIR}/usr/lib/crt* ${IDIR_GLIBC_DEV}/usr/lib
${CP} ${STAGING_TARGET_DIR}/usr/lib/libc_nonshared.a ${IDIR_GLIBC_DEV}/usr/lib
-for file in libcrypt libdl libm libresolv libutil; do \
diff --git a/package/glibc/files/libc.so.i586 b/package/glibc/files/libc.so.i586
new file mode 100644
index 000000000..cd8724cc5
--- /dev/null
+++ b/package/glibc/files/libc.so.i586
@@ -0,0 +1,5 @@
+/* GNU ld script
+ Use the shared library, but some functions are only in
+ the static library, so try that secondarily. */
+OUTPUT_FORMAT(elf32-i386)
+GROUP ( /lib/libc.so.6 /usr/lib/libc_nonshared.a AS_NEEDED ( /lib/ld-linux.so.2 ) )
diff --git a/package/glibc/files/libc.so.i686 b/package/glibc/files/libc.so.i686
new file mode 100644
index 000000000..cd8724cc5
--- /dev/null
+++ b/package/glibc/files/libc.so.i686
@@ -0,0 +1,5 @@
+/* GNU ld script
+ Use the shared library, but some functions are only in
+ the static library, so try that secondarily. */
+OUTPUT_FORMAT(elf32-i386)
+GROUP ( /lib/libc.so.6 /usr/lib/libc_nonshared.a AS_NEEDED ( /lib/ld-linux.so.2 ) )
diff --git a/package/glibc/files/libc.so.mips b/package/glibc/files/libc.so.mips
new file mode 100644
index 000000000..9e73ea39c
--- /dev/null
+++ b/package/glibc/files/libc.so.mips
@@ -0,0 +1,5 @@
+/* GNU ld script
+ Use the shared library, but some functions are only in
+ the static library, so try that secondarily. */
+ OUTPUT_FORMAT(@@ELFTARGET@@)
+ GROUP ( /lib/libc.so.6 /usr/lib/libc_nonshared.a AS_NEEDED ( /lib/ld.so.1 ) )
diff --git a/package/glibc/files/libc.so.mips64 b/package/glibc/files/libc.so.mips64
new file mode 100644
index 000000000..9e73ea39c
--- /dev/null
+++ b/package/glibc/files/libc.so.mips64
@@ -0,0 +1,5 @@
+/* GNU ld script
+ Use the shared library, but some functions are only in
+ the static library, so try that secondarily. */
+ OUTPUT_FORMAT(@@ELFTARGET@@)
+ GROUP ( /lib/libc.so.6 /usr/lib/libc_nonshared.a AS_NEEDED ( /lib/ld.so.1 ) )
diff --git a/package/glibc/files/libc.so.mips64el b/package/glibc/files/libc.so.mips64el
new file mode 100644
index 000000000..9e73ea39c
--- /dev/null
+++ b/package/glibc/files/libc.so.mips64el
@@ -0,0 +1,5 @@
+/* GNU ld script
+ Use the shared library, but some functions are only in
+ the static library, so try that secondarily. */
+ OUTPUT_FORMAT(@@ELFTARGET@@)
+ GROUP ( /lib/libc.so.6 /usr/lib/libc_nonshared.a AS_NEEDED ( /lib/ld.so.1 ) )
diff --git a/package/glibc/files/libc.so.mipsel b/package/glibc/files/libc.so.mipsel
new file mode 100644
index 000000000..9e73ea39c
--- /dev/null
+++ b/package/glibc/files/libc.so.mipsel
@@ -0,0 +1,5 @@
+/* GNU ld script
+ Use the shared library, but some functions are only in
+ the static library, so try that secondarily. */
+ OUTPUT_FORMAT(@@ELFTARGET@@)
+ GROUP ( /lib/libc.so.6 /usr/lib/libc_nonshared.a AS_NEEDED ( /lib/ld.so.1 ) )