diff options
author | Waldemar Brodkorb <wbx@openadk.org> | 2009-08-22 11:15:06 +0200 |
---|---|---|
committer | Waldemar Brodkorb <wbx@openadk.org> | 2009-08-22 11:15:06 +0200 |
commit | 973e48a12220e56e06ad5d839473e5cdefef8e71 (patch) | |
tree | 5405a5af8b156e63808b156627dc470cbf0a283f | |
parent | 187960a69f36d84730783fa9fcc418bef1f27ea7 (diff) |
fix eglibc/glibc support on lemote 64 bit
-rw-r--r-- | package/eglibc/Makefile | 7 | ||||
-rw-r--r-- | package/glibc/Makefile | 4 | ||||
-rw-r--r-- | target/lemote/Makefile | 4 | ||||
-rw-r--r-- | toolchain/eglibc/Makefile | 3 | ||||
-rw-r--r-- | toolchain/gcc/patches/no-lib64.patch | 30 | ||||
-rw-r--r-- | toolchain/glibc/Makefile | 3 | ||||
-rw-r--r-- | toolchain/glibc/patches/mips64.patch | 26 |
7 files changed, 28 insertions, 49 deletions
diff --git a/package/eglibc/Makefile b/package/eglibc/Makefile index d8bec6f9c..2a228fca7 100644 --- a/package/eglibc/Makefile +++ b/package/eglibc/Makefile @@ -23,12 +23,11 @@ ifeq ($(ADK_SSP),y) $(CP) $(STAGING_DIR)/lib/libssp.so* $(IDIR_EGLIBC)/lib/ endif $(CP) $(STAGING_DIR)/lib/libgcc_s.so.* $(IDIR_EGLIBC)/lib/ - $(CP) $(STAGING_DIR)/lib/ld-*.so* $(IDIR_EGLIBC)/lib/ - -for file in libc libcrypt libdl libm libresolv librt libutil libnss_compat libnss_dns libnss_files; do \ + -for file in libc ld libcrypt libdl libm libresolv librt libutil libnss_compat libnss_dns libnss_files; do \ $(CP) $(STAGING_DIR)/lib/$$file.so.* $(IDIR_EGLIBC)/lib/; \ $(CP) $(STAGING_DIR)/lib/$$file-$(PKG_VERSION).so $(IDIR_EGLIBC)/lib/; \ done - # create ld.so link for ldd - cd $(IDIR_EGLIBC)/lib && ln -sf ld-$(PKG_VERSION).so ld.so + # create ld.so link for x86 linker + cd $(IDIR_EGLIBC)/lib && ln -sf ld-$(PKG_VERSION).so ld-linux.so.2 include ${TOPDIR}/mk/pkg-bottom.mk diff --git a/package/glibc/Makefile b/package/glibc/Makefile index b2e0d1a6f..f3c2bd9c7 100644 --- a/package/glibc/Makefile +++ b/package/glibc/Makefile @@ -28,7 +28,7 @@ endif $(CP) $(STAGING_DIR)/lib/$$file.so.* $(IDIR_GLIBC)/lib/; \ $(CP) $(STAGING_DIR)/lib/$$file-$(PKG_VERSION).so $(IDIR_GLIBC)/lib/; \ done - # create ld.so link for ldd - cd $(IDIR_GLIBC)/lib && ln -sf ld-linux.so.2 ld.so + # create ld.so link for mips gcc linker option + cd $(IDIR_GLIBC)/lib && ln -sf ld-linux.so.2 ld.so.1 include ${TOPDIR}/mk/pkg-bottom.mk diff --git a/target/lemote/Makefile b/target/lemote/Makefile index d27d3a37f..3893c35ba 100644 --- a/target/lemote/Makefile +++ b/target/lemote/Makefile @@ -17,6 +17,10 @@ ifeq ($(FS),nfsroot) imageinstall: $(BIN_DIR)/$(ROOTFSTARBALL) @echo 'The kernel file is: ${BIN_DIR}/${DEVICE}-${ARCH}-kernel' @echo 'The nfs root tarball is: ${BIN_DIR}/${ROOTFSTARBALL}' + @echo 'Boot your lemote and type following commands in PMON:' + @echo 'PMON> ifaddr rtl0 <ip-address-client>' + @echo 'PMON> load tftp://<ip-address-server>/lemote-mips-kernel' + @echo 'PMON> g console=tty root=/dev/nfs ip=dhcp init=/init' endif ifeq ($(FS),initramfs) imageinstall: $(BIN_DIR)/$(INITRAMFS) diff --git a/toolchain/eglibc/Makefile b/toolchain/eglibc/Makefile index c41752bfa..7b04ffa23 100644 --- a/toolchain/eglibc/Makefile +++ b/toolchain/eglibc/Makefile @@ -30,7 +30,8 @@ EGLIBC_ENV:= PATH='${TARGET_PATH}' \ RANLIB=${REAL_GNU_TARGET_NAME}-ranlib \ libc_cv_forced_unwind=yes \ libc_cv_c_cleanup=yes \ - libc_cv_gnu99_inline=yes + libc_cv_gnu99_inline=yes \ + libc_cv_slibdir="/lib" ifeq ($(ADK_DEVICE_NO_FPU),y) EGLIBC_CONFOPTS+= --without-fp diff --git a/toolchain/gcc/patches/no-lib64.patch b/toolchain/gcc/patches/no-lib64.patch index 880f5dbd8..29b0025b4 100644 --- a/toolchain/gcc/patches/no-lib64.patch +++ b/toolchain/gcc/patches/no-lib64.patch @@ -1,6 +1,6 @@ -diff -Nur gcc-4.4.0.orig/gcc/config/i386/linux64.h gcc-4.4.0/gcc/config/i386/linux64.h ---- gcc-4.4.0.orig/gcc/config/i386/linux64.h 2009-04-10 01:23:07.000000000 +0200 -+++ gcc-4.4.0/gcc/config/i386/linux64.h 2009-06-19 15:43:10.419891589 +0200 +diff -Nur gcc-4.4.1.orig/gcc/config/i386/linux64.h gcc-4.4.1/gcc/config/i386/linux64.h +--- gcc-4.4.1.orig/gcc/config/i386/linux64.h 2009-04-10 01:23:07.000000000 +0200 ++++ gcc-4.4.1/gcc/config/i386/linux64.h 2009-08-21 18:34:13.000000000 +0200 @@ -59,7 +59,7 @@ done. */ @@ -10,9 +10,9 @@ diff -Nur gcc-4.4.0.orig/gcc/config/i386/linux64.h gcc-4.4.0/gcc/config/i386/lin #undef ASM_SPEC #define ASM_SPEC "%{v:-V} %{Qy:} %{!Qn:-Qy} %{n} %{T} %{Ym,*} %{Yd,*} \ -diff -Nur gcc-4.4.0.orig/gcc/config/i386/t-linux64 gcc-4.4.0/gcc/config/i386/t-linux64 ---- gcc-4.4.0.orig/gcc/config/i386/t-linux64 2008-07-02 17:59:19.000000000 +0200 -+++ gcc-4.4.0/gcc/config/i386/t-linux64 2009-06-19 15:43:10.419891589 +0200 +diff -Nur gcc-4.4.1.orig/gcc/config/i386/t-linux64 gcc-4.4.1/gcc/config/i386/t-linux64 +--- gcc-4.4.1.orig/gcc/config/i386/t-linux64 2008-07-02 17:59:19.000000000 +0200 ++++ gcc-4.4.1/gcc/config/i386/t-linux64 2009-08-21 18:34:13.000000000 +0200 @@ -7,7 +7,7 @@ MULTILIB_OPTIONS = m64/m32 @@ -22,9 +22,9 @@ diff -Nur gcc-4.4.0.orig/gcc/config/i386/t-linux64 gcc-4.4.0/gcc/config/i386/t-l LIBGCC = stmp-multilib INSTALL_LIBGCC = install-multilib -diff -Nur gcc-4.4.0.orig/gcc/config/linux.h gcc-4.4.0/gcc/config/linux.h ---- gcc-4.4.0.orig/gcc/config/linux.h 2009-04-10 01:23:07.000000000 +0200 -+++ gcc-4.4.0/gcc/config/linux.h 2009-06-19 15:42:51.508828335 +0200 +diff -Nur gcc-4.4.1.orig/gcc/config/linux.h gcc-4.4.1/gcc/config/linux.h +--- gcc-4.4.1.orig/gcc/config/linux.h 2009-04-10 01:23:07.000000000 +0200 ++++ gcc-4.4.1/gcc/config/linux.h 2009-08-21 18:34:13.000000000 +0200 @@ -119,7 +119,7 @@ supporting both 32-bit and 64-bit compilation. */ #define UCLIBC_DYNAMIC_LINKER "/lib/ld-uClibc.so.0" @@ -34,9 +34,9 @@ diff -Nur gcc-4.4.0.orig/gcc/config/linux.h gcc-4.4.0/gcc/config/linux.h #define LINUX_DYNAMIC_LINKER \ CHOOSE_DYNAMIC_LINKER (GLIBC_DYNAMIC_LINKER, UCLIBC_DYNAMIC_LINKER) #define LINUX_DYNAMIC_LINKER32 \ -diff -Nur gcc-4.4.0.orig/gcc/config/mips/linux64.h gcc-4.4.0/gcc/config/mips/linux64.h ---- gcc-4.4.0.orig/gcc/config/mips/linux64.h 2009-02-20 16:20:38.000000000 +0100 -+++ gcc-4.4.0/gcc/config/mips/linux64.h 2009-06-19 15:43:10.419891589 +0200 +diff -Nur gcc-4.4.1.orig/gcc/config/mips/linux64.h gcc-4.4.1/gcc/config/mips/linux64.h +--- gcc-4.4.1.orig/gcc/config/mips/linux64.h 2009-02-20 16:20:38.000000000 +0100 ++++ gcc-4.4.1/gcc/config/mips/linux64.h 2009-08-21 18:37:19.000000000 +0200 @@ -36,7 +36,7 @@ %{profile:-lc_p} %{!profile:-lc}}" @@ -46,9 +46,9 @@ diff -Nur gcc-4.4.0.orig/gcc/config/mips/linux64.h gcc-4.4.0/gcc/config/mips/lin #define GLIBC_DYNAMIC_LINKERN32 "/lib32/ld.so.1" #define UCLIBC_DYNAMIC_LINKERN32 "/lib32/ld-uClibc.so.0" #define LINUX_DYNAMIC_LINKERN32 \ -diff -Nur gcc-4.4.0.orig/gcc/config/mips/t-linux64 gcc-4.4.0/gcc/config/mips/t-linux64 ---- gcc-4.4.0.orig/gcc/config/mips/t-linux64 2006-06-06 14:51:24.000000000 +0200 -+++ gcc-4.4.0/gcc/config/mips/t-linux64 2009-06-19 15:43:10.419891589 +0200 +diff -Nur gcc-4.4.1.orig/gcc/config/mips/t-linux64 gcc-4.4.1/gcc/config/mips/t-linux64 +--- gcc-4.4.1.orig/gcc/config/mips/t-linux64 2006-06-06 14:51:24.000000000 +0200 ++++ gcc-4.4.1/gcc/config/mips/t-linux64 2009-08-21 18:34:13.000000000 +0200 @@ -1,6 +1,6 @@ MULTILIB_OPTIONS = mabi=n32/mabi=32/mabi=64 MULTILIB_DIRNAMES = n32 32 64 diff --git a/toolchain/glibc/Makefile b/toolchain/glibc/Makefile index e1b48f4e9..36d6f1214 100644 --- a/toolchain/glibc/Makefile +++ b/toolchain/glibc/Makefile @@ -36,7 +36,8 @@ GLIBC_ENV:= PATH='${TARGET_PATH}' \ LD=${REAL_GNU_TARGET_NAME}-ld \ libc_cv_forced_unwind=yes \ libc_cv_c_cleanup=yes \ - libc_cv_gnu99_inline=yes + libc_cv_gnu99_inline=yes \ + libc_cv_slibdir="/lib" ifeq ($(ADK_DEVICE_NO_FPU),y) GLIBC_CONFOPTS+= --without-fp diff --git a/toolchain/glibc/patches/mips64.patch b/toolchain/glibc/patches/mips64.patch index 04743e09d..0b53244b9 100644 --- a/toolchain/glibc/patches/mips64.patch +++ b/toolchain/glibc/patches/mips64.patch @@ -30,29 +30,3 @@ diff -Nur glibc-2.10-current.orig/ports/sysdeps/mips/preconfigure glibc-2.10-cur fi ;; mips*) base_machine=mips machine=mips/mips32/$machine ;; -diff -Nur glibc-2.10-current.orig/ports/sysdeps/unix/sysv/linux/mips/configure glibc-2.10-current/ports/sysdeps/unix/sysv/linux/mips/configure ---- glibc-2.10-current.orig/ports/sysdeps/unix/sysv/linux/mips/configure 2009-05-26 22:53:29.000000000 +0200 -+++ glibc-2.10-current/ports/sysdeps/unix/sysv/linux/mips/configure 2009-05-27 20:34:25.000000000 +0200 -@@ -84,22 +84,6 @@ - # and libc_cv_localedir. - test -n "$libc_cv_slibdir" || \ - case $machine in -- mips/mips64/n64/* ) -- libc_cv_slibdir="/lib64" -- if test "$libdir" = '${exec_prefix}/lib'; then -- libdir='${exec_prefix}/lib64'; -- # Locale data can be shared between 32bit and 64bit libraries -- libc_cv_localedir='${exec_prefix}/lib/locale' -- fi -- ;; -- mips/mips64/n32/* ) -- libc_cv_slibdir="/lib32" -- if test "$libdir" = '${exec_prefix}/lib'; then -- libdir='${exec_prefix}/lib32'; -- # Locale data can be shared between 32bit and 64bit libraries -- libc_cv_localedir='${exec_prefix}/lib/locale' -- fi -- ;; - *) - libc_cv_slibdir="/lib" - ;; |