Browse Source

rework libc-dev package, add linker script for x86

Waldemar Brodkorb 15 years ago
parent
commit
cae7454e81

+ 4 - 2
package/eglibc/Makefile

@@ -58,9 +58,11 @@ do-install: ${SUB_INSTALLS-m} ${SUB_INSTALLS-y}
 	done
 
 eglibc-dev-install:
-	${INSTALL_DIR} $(IDIR_EGLIBC_DEV)/lib
+	${INSTALL_DIR} $(IDIR_EGLIBC_DEV)/lib $(IDIR_EGLIBC_DEV)/usr/lib
 	# install linker script
-	-cp ./files/libc.so.$(CPU_ARCH) $(IDIR_EGLIBC_DEV)/usr/lib/libc.so
+	-cp ./files/libc.so.$(ARCH) $(IDIR_EGLIBC_DEV)/usr/lib/libc.so
+	${CP} ${STAGING_DIR}/usr/lib/crt* ${IDIR_EGLIBC_DEV}/usr/lib
+	${CP} ${STAGING_DIR}/usr/lib/libc_nonshared.a ${IDIR_EGLIBC_DEV}/usr/lib
 	cd $(IDIR_EGLIBC_DEV)/lib && ln -sf libm.so.6 libm.so
 	cd $(IDIR_EGLIBC_DEV)/lib && ln -sf libutil.so.1 libutil.so
 	cd $(IDIR_EGLIBC_DEV)/lib && ln -sf librt.so.1 librt.so

+ 5 - 0
package/eglibc/files/libc.so.x86

@@ -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 ) )

+ 0 - 6
package/gcc/Makefile

@@ -51,12 +51,6 @@ post-install:
 	${CP} ${WRKINST}/usr/include/c++/* ${IDIR_GCC}/usr/include/c++/
 	cd ${IDIR_GCC}/lib && ln -sf ../usr/bin/cpp .
 	${CP} ${WRKINST}/usr/lib/gcc/* ${IDIR_GCC}/usr/lib/gcc/
-ifeq ($(ADK_TARGET_LIB_UCLIBC),y)
-	${CP} ${STAGING_DIR}/lib/crt* ${IDIR_GCC}/usr/lib
-else
-	${CP} ${STAGING_DIR}/usr/lib/crt* ${IDIR_GCC}/usr/lib
-	${CP} ${STAGING_DIR}/usr/lib/libc_nonshared.a ${IDIR_GCC}/usr/lib
-endif
 	rm -rf ${IDIR_GCC}/usr/lib/gcc/*/*/install-tools
 
 include ${TOPDIR}/mk/pkg-bottom.mk

+ 5 - 2
package/glibc/Makefile

@@ -47,8 +47,11 @@ do-install: ${SUB_INSTALLS-m} ${SUB_INSTALLS-y}
 	done
 
 glibc-dev-install:
-	${INSTALL_DIR} $(IDIR_GLIBC_DEV)/lib
-	cd $(IDIR_GLIBC_DEV)/lib && ln -sf ld-linux.so.2 ld.so.1
+	${INSTALL_DIR} $(IDIR_GLIBC_DEV)/lib $(IDIR_GLIBC_DEV)/usr/lib
+	# install linker script
+	-cp ./files/libc.so.$(ARCH) $(IDIR_GLIBC_DEV)/usr/lib/libc.so
+	${CP} ${STAGING_DIR}/usr/lib/crt* ${IDIR_GLIBC_DEV}/usr/lib
+	${CP} ${STAGING_DIR}/usr/lib/libc_nonshared.a ${IDIR_GLIBC_DEV}/usr/lib
 	# header package
 	$(MAKE) -C $(TOOLCHAIN_BUILD_DIR)/linux-$(KERNEL_VERSION) \
 		HOSTCC=$(HOSTCC) ARCH=$(ARCH) V=1 \

+ 5 - 0
package/glibc/files/libc.so.x86

@@ -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 ) )

+ 5 - 0
package/glibc/files/libc.so.x86_64

@@ -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(elf64-x86-64)
+      GROUP ( /lib/libc.so.6 /usr/lib/libc_nonshared.a  AS_NEEDED ( /lib/ld-linux-x86-64.so.2 ) )

+ 1 - 0
package/uclibc/Makefile

@@ -34,6 +34,7 @@ do-install: ${SUB_INSTALLS-m} ${SUB_INSTALLS-y}
 	done
 
 uclibc-dev-install:
+	${CP} ${STAGING_DIR}/lib/crt* ${IDIR_UCLIBC_DEV}/usr/lib
 	# header package
 	$(MAKE) -C $(TOOLCHAIN_BUILD_DIR)/linux-$(KERNEL_VERSION) ARCH=$(ARCH) V=1 \
 		INSTALL_HDR_PATH=$(IDIR_UCLIBC_DEV)/usr \