Pārlūkot izejas kodu

install libc headers only when selected

Waldemar Brodkorb 14 gadi atpakaļ
vecāks
revīzija
274f4690d3
4 mainītis faili ar 29 papildinājumiem un 16 dzēšanām
  1. 11 9
      package/eglibc/Makefile
  2. 10 5
      package/glibc/Makefile
  3. 1 1
      package/uclibc/Config.in
  4. 7 1
      package/uclibc/Makefile

+ 11 - 9
package/eglibc/Makefile

@@ -14,6 +14,10 @@ include $(TOPDIR)/mk/package.mk
 $(eval $(call PKG_template,EGLIBC,$(PKG_NAME),$(PKG_VERSION)-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR},${PKG_SECTION},${PKG_OPTS}))
 $(eval $(call PKG_template,EGLIBC_DEV,$(PKG_NAME)-dev,$(PKG_VERSION)-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR},${PKG_SECTION},${PKG_OPTS}))
 
+SUB_INSTALLS-y:=
+SUB_INSTALLS-m:=
+SUB_INSTALLS-${ADK_PACKAGE_EGLIBC_DEV}+=	eglibc-dev-install
+
 EGLIBC_CONFOPTS:=	\
 			--build=$(GNU_HOST_NAME) \
 			--host=$(REAL_GNU_TARGET_NAME) \
@@ -40,16 +44,11 @@ EGLIBC_ENV:=		PATH='${TARGET_PATH}' \
 			libc_cv_gnu99_inline=yes \
 			libc_cv_slibdir="/lib" 
 
-do-extract:
-
-# do nothing, eglibc is already build in toolchain directory
-do-install:
+# compile nothing, eglibc is already build in toolchain directory
+do-install: ${SUB_INSTALLS-m} ${SUB_INSTALLS-y}
 	${INSTALL_DIR} $(IDIR_EGLIBC)/lib $(IDIR_EGLIBC)/etc $(IDIR_EGLIBC)/usr/lib
 	# install /etc/localtime from host system (FIXME)
 	${CP} /etc/localtime $(IDIR_EGLIBC)/etc
-ifeq ($(ADK_SSP),y)
-	$(CP) $(STAGING_DIR)/lib/libssp.so* $(IDIR_EGLIBC)/lib/
-endif
 	$(CP) $(STAGING_DIR)/lib/ld-* $(IDIR_EGLIBC)/lib/
 	$(CP) $(STAGING_DIR)/lib/libgcc_s.so* $(IDIR_EGLIBC)/lib/
 	-for file in libc libcrypt libdl libm libnsl libresolv librt libutil libnss_compat libnss_dns libnss_files; do \
@@ -63,8 +62,11 @@ endif
 	cd $(IDIR_EGLIBC)/lib && ln -sf librt.so.1 librt.so
 	cd $(IDIR_EGLIBC)/lib && ln -sf libcrypt.so.1 libcrypt.so
 	cd $(IDIR_EGLIBC)/lib && ln -sf libdl.so.2 libdl.so
+
+eglibc-dev-install:
 	# header package
-	$(MAKE) -C $(TOOLCHAIN_BUILD_DIR)/linux-$(KERNEL_VERSION) ARCH=$(ARCH) V=1 \
+	$(MAKE) -C $(TOOLCHAIN_BUILD_DIR)/linux-$(KERNEL_VERSION) \
+		HOSTCC=$(HOSTCC) ARCH=$(ARCH) V=1 \
 		INSTALL_HDR_PATH=$(IDIR_EGLIBC_DEV)/usr \
 		headers_install
 	(cd $(WRKBUILD); \
@@ -77,6 +79,6 @@ endif
 	PATH='${TARGET_PATH}' \
 	$(MAKE) -C $(WRKBUILD) \
 		install-headers install-bootstrap-headers=yes
-	@find $(IDIR_EGLIBC_DEV) -name .install -delete
+	@find $(IDIR_EGLIBC_DEV) -name .install -exec rm {} \;
 
 include ${TOPDIR}/mk/pkg-bottom.mk

+ 10 - 5
package/glibc/Makefile

@@ -30,10 +30,12 @@ GLIBC_CONFOPTS:=          \
 $(eval $(call PKG_template,GLIBC,glibc,$(PKG_VERSION)-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR},${PKG_SECTION},${PKG_OPTS}))
 $(eval $(call PKG_template,GLIBC_DEV,glibc-dev,$(PKG_VERSION)-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR},${PKG_SECTION},${PKG_OPTS}))
 
-do-extract:
+SUB_INSTALLS-y:=
+SUB_INSTALLS-m:=
+SUB_INSTALLS-${ADK_PACKAGE_GLIBC_DEV}+=		glibc-dev-install
 
-# do nothing, glibc is already build in toolchain directory
-do-install:
+# compile nothing, glibc is already build in toolchain directory
+do-install: ${SUB_INSTALLS-m} ${SUB_INSTALLS-y}
 	${INSTALL_DIR} $(IDIR_GLIBC)/lib $(IDIR_GLIBC)/etc
 	# install /etc/localtime from host system (FIXME)
 	${CP} /etc/localtime $(IDIR_GLIBC)/etc
@@ -45,8 +47,11 @@ do-install:
 	done
 	# create ld.so link for mips gcc linker option
 	cd $(IDIR_GLIBC)/lib && ln -sf ld-linux.so.2 ld.so.1
+
+glibc-dev-install:
 	# header package
-	$(MAKE) -C $(TOOLCHAIN_BUILD_DIR)/linux-$(KERNEL_VERSION) ARCH=$(ARCH) V=1 \
+	$(MAKE) -C $(TOOLCHAIN_BUILD_DIR)/linux-$(KERNEL_VERSION) \
+		HOSTCC=$(HOSTCC) ARCH=$(ARCH) V=1 \
 		INSTALL_HDR_PATH=$(IDIR_GLIBC_DEV)/usr \
 		headers_install
 	(cd $(WRKBUILD); \
@@ -61,6 +66,6 @@ do-install:
 		install-headers
 	touch $(IDIR_GLIBC_DEV)/usr/include/gnu/stubs.h
 	touch $(IDIR_GLIBC_DEV)/usr/include/bits/stdio_lim.h
-	@find $(IDIR_GLIBC_DEV) -name .install -delete
+	@find $(IDIR_GLIBC_DEV) -name .install -exec rm {} \;
 
 include ${TOPDIR}/mk/pkg-bottom.mk

+ 1 - 1
package/uclibc/Config.in

@@ -9,7 +9,7 @@ config ADK_PACKAGE_UCLIBC
 
 config ADK_PACKAGE_UCLIBC_DEV
 	prompt "uClibc-dev........................... development files"
-	bool
+	tristate
 	default n
 	depends on ADK_TARGET_LIB_UCLIBC
 	help

+ 7 - 1
package/uclibc/Makefile

@@ -14,8 +14,12 @@ include $(TOPDIR)/mk/package.mk
 $(eval $(call PKG_template,UCLIBC,uclibc,$(PKG_VERSION)-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR},${PKG_SECTION},${PKG_OPTS}))
 $(eval $(call PKG_template,UCLIBC_DEV,uclibc-dev,$(PKG_VERSION)-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR},${PKG_SECTION},${PKG_OPTS}))
 
+SUB_INSTALLS-y:=
+SUB_INSTALLS-m:=
+SUB_INSTALLS-${ADK_PACKAGE_UCLIBC_DEV}+=	uclibc-dev-install
+
 # do nothing, uClibc is already build in toolchain directory
-do-install:
+do-install: ${SUB_INSTALLS-m} ${SUB_INSTALLS-y}
 	${INSTALL_DIR} $(IDIR_UCLIBC)/lib $(IDIR_UCLIBC)/etc
 	# create timezone file
 	echo 'CET-1CEST-2,M3.5.0/02:00:00,M10.5.0/03:00:00' > $(IDIR_UCLIBC)/etc/TZ
@@ -28,6 +32,8 @@ do-install:
 		$(CP) $(STAGING_DIR)/lib/$$file.so* $(IDIR_UCLIBC)/lib/; \
 		$(CP) $(STAGING_DIR)/lib/$$file-$(PKG_VERSION).so $(IDIR_UCLIBC)/lib/; \
 	done
+
+uclibc-dev-install:
 	# header package
 	$(MAKE) -C $(TOOLCHAIN_BUILD_DIR)/linux-$(KERNEL_VERSION) ARCH=$(ARCH) V=1 \
 		INSTALL_HDR_PATH=$(IDIR_UCLIBC_DEV)/usr \