Browse Source

fix eglibc/glibc toolchain building with make 3.82

Waldemar Brodkorb 13 years ago
parent
commit
e3d82f03e5

+ 7 - 9
toolchain/eglibc/Makefile

@@ -11,10 +11,8 @@ ifneq ($(ADK_DEBUG),)
 TARGET_CFLAGS+=		-O2
 endif
 
-EGLIBC_CONFOPTS:=	\
-			--build=$(GNU_HOST_NAME) \
+EGLIBC_CONFOPTS:=	--build=$(GNU_HOST_NAME) \
 			--host=$(REAL_GNU_TARGET_NAME) \
-			--with-headers=$(TOOLCHAIN_SYSROOT)/usr/include \
 			--disable-nls \
 			--without-cvs \
 			--disable-profile \
@@ -49,7 +47,7 @@ $(WRKBUILD)/.headers_configure:
 	(cd ${WRKDIR}/$(PKG_NAME)-$(PKG_VERSION); \
 		ln -sf ../ports ${WRKDIR}/$(PKG_NAME)-$(PKG_VERSION)/libc);
 	$(CP) ${TOPDIR}/toolchain/eglibc/eglibc.config \
-		$(EGLIBC_BUILD_DIR_INITIAL)
+		$(EGLIBC_BUILD_DIR_INITIAL)/option-groups.config
 	(cd $(EGLIBC_BUILD_DIR_INITIAL); \
 		${EGLIBC_ENV} \
 		$(WRKBUILD)/libc/configure \
@@ -60,16 +58,16 @@ $(WRKBUILD)/.headers_configure:
 	touch $@
 
 $(WRKBUILD)/.headers: $(WRKBUILD)/.headers_configure
-	mkdir -p $(TOOLCHAIN_SYSROOT)/usr/lib
-	PATH='${TARGET_PATH}' \
-	$(MAKE) -C $(EGLIBC_BUILD_DIR_INITIAL) \
-		install-headers install-bootstrap-headers=yes
+	(cd $(EGLIBC_BUILD_DIR_INITIAL); \
+		PATH='${TARGET_PATH}' \
+		$(MAKE) install-headers install-bootstrap-headers=yes \
+	);
 	touch $@
 
 $(WRKBUILD)/.configured:
 	mkdir -p $(EGLIBC_BUILD_DIR_FINAL)
 	$(CP) ${TOPDIR}/toolchain/eglibc/eglibc.config \
-		$(EGLIBC_BUILD_DIR_FINAL)
+		$(EGLIBC_BUILD_DIR_FINAL)/option-groups.config
 	(cd $(EGLIBC_BUILD_DIR_FINAL); \
 		${EGLIBC_ENV} \
 		$(WRKBUILD)/libc/configure \

+ 10 - 5
toolchain/eglibc/eglibc.config

@@ -13,8 +13,10 @@ OPTION_EGLIBC_BACKTRACE = n
 OPTION_EGLIBC_BIG_MACROS = y
 OPTION_EGLIBC_BSD = y
 OPTION_EGLIBC_CXX_TESTS = n
-OPTION_EGLIBC_CATGETS = n
+OPTION_EGLIBC_CATGETS = y
 OPTION_EGLIBC_CHARSETS = n
+OPTION_EGLIBC_CRYPT = y
+OPTION_EGLIBC_CRYPT_UFC = y
 OPTION_EGLIBC_DB_ALIASES = n
 OPTION_EGLIBC_ENVZ = y
 OPTION_EGLIBC_FCVT = y
@@ -22,14 +24,17 @@ OPTION_EGLIBC_FMTMSG = y
 OPTION_EGLIBC_FSTAB = y
 OPTION_EGLIBC_FTRAVERSE = y
 OPTION_EGLIBC_GETLOGIN = y
+OPTION_EGLIBC_IDN = n
 OPTION_EGLIBC_INET = y
+OPTION_EGLIBC_INET_ANL = y
 OPTION_EGLIBC_LIBM = y
-OPTION_EGLIBC_LOCALES = n
-OPTION_EGLIBC_LOCALE_CODE = n
+OPTION_EGLIBC_LOCALES = y
+OPTION_EGLIBC_LOCALE_CODE = y
 OPTION_EGLIBC_MEMUSAGE = y
 OPTION_EGLIBC_NIS = n
-OPTION_EGLIBC_NSSWITCH = n
-OPTION_EGLIBC_RCMD = y
+OPTION_EGLIBC_NSSWITCH = y
+OPTION_EGLIBC_RCMD = n
+OPTION_EGLIBC_RTLD_DEBUG = y
 OPTION_EGLIBC_SPAWN = y
 OPTION_EGLIBC_STREAMS = y
 OPTION_EGLIBC_SUNRPC = y

+ 15 - 0
toolchain/eglibc/patches/make-mixed-rules.patch

@@ -0,0 +1,15 @@
+diff -Nur eglibc-2.12.1.orig/libc/manual/Makefile eglibc-2.12.1/libc/manual/Makefile
+--- eglibc-2.12.1.orig/libc/manual/Makefile	2010-09-28 19:14:30.000000000 +0200
++++ eglibc-2.12.1/libc/manual/Makefile	2010-11-06 17:05:03.000000000 +0100
+@@ -243,7 +243,10 @@
+ .PHONY: stubs
+ stubs: $(objpfx)stubs
+ endif
+-$(objpfx)stubs ../po/manual.pot $(objpfx)stamp%:
++$(objpfx)stubs ../po/manual.pot:
++	touch $@
++
++$(objpfx)stamp%:
+ 	$(make-target-directory)
+ 	touch $@
+ 

+ 8 - 7
toolchain/glibc/Makefile

@@ -13,8 +13,7 @@ ifneq ($(ADK_DEBUG),)
 TARGET_CFLAGS+=-O2
 endif
 
-GLIBC_CONFOPTS:=        \
-			--build=$(GNU_HOST_NAME) \
+GLIBC_CONFOPTS:=	--build=$(GNU_HOST_NAME) \
 			--host=$(REAL_GNU_TARGET_NAME) \
 			--with-headers=$(TOOLCHAIN_SYSROOT)/usr/include \
 			--disable-nls \
@@ -54,11 +53,11 @@ GLIBC_BUILD_DIR_FINAL:=		${WRKDIR}/$(PKG_NAME)-$(PKG_VERSION)-final
 $(WRKBUILD)/.headers_configure:
 	mkdir -p $(GLIBC_BUILD_DIR_INITIAL)
 	(cd ${WRKDIR}/$(PKG_NAME)-$(PKG_VERSION); \
-	ln -sf ../../w-glibc-ports-2.12-1/glibc-ports-2.12/ ports);
+	ln -sf ../../w-glibc-ports-$(GLIBC_PORTS_VERSION)-1/glibc-ports-$(GLIBC_PORTS_VERSION)/ ports);
 	(cd $(GLIBC_BUILD_DIR_INITIAL); \
 		${GLIBC_ENV} \
 		$(WRKBUILD)/configure \
-			--prefix=/usr \
+			--prefix=$(TOOLCHAIN_SYSROOT)/usr \
 			--with-sysroot=$(TOOLCHAIN_SYSROOT) \
 			${GLIBC_CONFOPTS} \
 	);
@@ -66,10 +65,12 @@ $(WRKBUILD)/.headers_configure:
 
 $(WRKBUILD)/.headers: $(WRKBUILD)/.headers_configure
 	mkdir -p $(TOOLCHAIN_SYSROOT)/usr/lib
-	-${GLIBC_ENV} $(MAKE) ${GLIBC_MAKEOPTS} -C $(GLIBC_BUILD_DIR_INITIAL) \
+	(cd $(GLIBC_BUILD_DIR_INITIAL); \
+		${GLIBC_ENV} \
+		$(MAKE) ${GLIBC_MAKEOPTS} \
 		cross-compiling=yes \
-		install_root=$(TOOLCHAIN_SYSROOT) \
-		install-headers
+		install-headers \
+	);
 	touch $(TOOLCHAIN_SYSROOT)/usr/include/gnu/stubs.h
 	touch $@
 

+ 1 - 0
toolchain/glibc/Makefile.inc

@@ -6,3 +6,4 @@ PKG_VERSION:=		2.12.1
 PKG_RELEASE:=		1
 PKG_MD5SUM:=		a8e77cd873125d9b46ca2e46ee1a13d0
 PKG_SITES:=		${MASTER_SITE_GNU:=glibc/}
+GLIBC_PORTS_VERSION:=	2.12

+ 15 - 0
toolchain/glibc/patches/make-mixed.patch

@@ -0,0 +1,15 @@
+diff -Nur glibc-2.12.1.orig/manual/Makefile glibc-2.12.1/manual/Makefile
+--- glibc-2.12.1.orig/manual/Makefile	2010-07-27 13:34:39.000000000 +0200
++++ glibc-2.12.1/manual/Makefile	2010-11-07 18:24:27.000000000 +0100
+@@ -232,7 +232,10 @@
+ .PHONY: stubs
+ stubs: $(objpfx)stubs
+ endif
+-$(objpfx)stubs ../po/manual.pot $(objpfx)stamp%:
++$(objpfx)stubs ../po/manual.pot:
++	touch $@
++
++$(objpfx)stamp%:
+ 	$(make-target-directory)
+ 	touch $@
+