diff options
Diffstat (limited to 'toolchain/eglibc')
-rw-r--r-- | toolchain/eglibc/Makefile | 21 | ||||
-rw-r--r-- | toolchain/eglibc/Makefile.inc | 6 | ||||
-rw-r--r-- | toolchain/eglibc/eglibc.config | 68 | ||||
-rw-r--r-- | toolchain/eglibc/patches/eglibc-cross.patch | 92 |
4 files changed, 144 insertions, 43 deletions
diff --git a/toolchain/eglibc/Makefile b/toolchain/eglibc/Makefile index 7b04ffa23..863cd88ba 100644 --- a/toolchain/eglibc/Makefile +++ b/toolchain/eglibc/Makefile @@ -7,6 +7,10 @@ include Makefile.inc include ${TOPDIR}/mk/buildhlp.mk +ifneq ($(ADK_DEBUG),) +TARGET_CFLAGS+= -O2 +endif + EGLIBC_CONFOPTS:= \ --build=$(GNU_HOST_NAME) \ --host=$(REAL_GNU_TARGET_NAME) \ @@ -31,9 +35,9 @@ EGLIBC_ENV:= PATH='${TARGET_PATH}' \ libc_cv_forced_unwind=yes \ libc_cv_c_cleanup=yes \ libc_cv_gnu99_inline=yes \ - libc_cv_slibdir="/lib" + libc_cv_slibdir="/lib" -ifeq ($(ADK_DEVICE_NO_FPU),y) +ifeq ($(ADK_TARGET_NO_FPU),y) EGLIBC_CONFOPTS+= --without-fp endif @@ -44,7 +48,6 @@ $(WRKBUILD)/.headers_configure: mkdir -p $(EGLIBC_BUILD_DIR_INITIAL) (cd ${WRKDIR}/$(PKG_NAME)-$(PKG_VERSION); \ ln -sf ../ports ${WRKDIR}/$(PKG_NAME)-$(PKG_VERSION)/libc); - (cd ${WRKDIR}/$(PKG_NAME)-$(PKG_VERSION)/libc; autoconf --force); $(CP) ${TOPDIR}/toolchain/eglibc/eglibc.config \ $(EGLIBC_BUILD_DIR_INITIAL) (cd $(EGLIBC_BUILD_DIR_INITIAL); \ @@ -61,19 +64,9 @@ $(WRKBUILD)/.headers: $(WRKBUILD)/.headers_configure PATH='${TARGET_PATH}' \ $(MAKE) -C $(EGLIBC_BUILD_DIR_INITIAL) \ install-headers install-bootstrap-headers=yes - PATH='${TARGET_PATH}' \ - $(MAKE) -C $(EGLIBC_BUILD_DIR_INITIAL) \ - csu/subdir_lib - ( cd $(EGLIBC_BUILD_DIR_INITIAL); \ - $(CP) csu/crt1.o csu/crti.o csu/crtn.o \ - $(TOOLCHAIN_SYSROOT)/usr/lib \ - ); - PATH='${TARGET_PATH}' \ - $(TARGET_CC) -nostdlib -nostartfiles -shared -x c /dev/null \ - -o $(TOOLCHAIN_SYSROOT)/usr/lib/libc.so touch $@ -$(WRKBUILD)/.configured: +$(WRKBUILD)/.configured: mkdir -p $(EGLIBC_BUILD_DIR_FINAL) $(CP) ${TOPDIR}/toolchain/eglibc/eglibc.config \ $(EGLIBC_BUILD_DIR_FINAL) diff --git a/toolchain/eglibc/Makefile.inc b/toolchain/eglibc/Makefile.inc index 4f11fba45..0dba0457c 100644 --- a/toolchain/eglibc/Makefile.inc +++ b/toolchain/eglibc/Makefile.inc @@ -2,7 +2,7 @@ # material, please see the LICENCE file in the top-level directory. PKG_NAME:= eglibc -PKG_VERSION:= 2.10.1 +PKG_VERSION:= 2.11.1 PKG_RELEASE:= 1 -PKG_MD5SUM:= 1b5d08c87de09018dcabd9974ba754d4 -PKG_SITES:= http://www.openadk.org/distfiles/ +PKG_MD5SUM:= 393cfbba56898bf7d5d5444fe3313cb4 +PKG_SITES:= http://openadk.org/distfiles/ diff --git a/toolchain/eglibc/eglibc.config b/toolchain/eglibc/eglibc.config index 198741139..b7f5f96e1 100644 --- a/toolchain/eglibc/eglibc.config +++ b/toolchain/eglibc/eglibc.config @@ -1,26 +1,42 @@ -OPTION_EGLIBC_ADVANCED_INET6=y -OPTION_EGLIBC_BACKTRACE=n -OPTION_EGLIBC_BSD=y -OPTION_EGLIBC_CXX_TESTS=n -OPTION_EGLIBC_CATGETS=y -OPTION_EGLIBC_CHARSETS=y -OPTION_EGLIBC_DB_ALIASES=y -OPTION_EGLIBC_ENVZ=y -OPTION_EGLIBC_FSTAB=y -OPTION_EGLIBC_GETLOGIN=y -OPTION_EGLIBC_INET=y -OPTION_EGLIBC_LIBM=y -OPTION_EGLIBC_LOCALES=n -OPTION_EGLIBC_LOCALE_CODE=y -OPTION_EGLIBC_NIS=n -OPTION_EGLIBC_NSSWITCH=y -OPTION_EGLIBC_RCMD=y -OPTION_EGLIBC_SPAWN=y -OPTION_EGLIBC_STREAMS=y -OPTION_EGLIBC_SUNRPC=y -OPTION_EGLIBC_UTMP=y -OPTION_EGLIBC_UTMPX=y -OPTION_EGLIBC_WORDEXP=y -OPTION_POSIX_C_LANG_WIDE_CHAR=y -OPTION_POSIX_REGEXP=y -OPTION_POSIX_WIDE_CHAR_DEVICE_IO=y +# This file sets default values for all option group variables +# mentioned in option-groups.def; see that file for a description of +# each option group. +# +# Subdirectory makefiles include this file before including the user's +# settings from option-groups.config at the top of the build tree; +# that file need only refer to those options whose default settings +# are to be changed. +# +# By default, all option groups are enabled. +OPTION_EGLIBC_ADVANCED_INET6 = y +OPTION_EGLIBC_BACKTRACE = n +OPTION_EGLIBC_BIG_MACROS = y +OPTION_EGLIBC_BSD = y +OPTION_EGLIBC_CXX_TESTS = n +OPTION_EGLIBC_CATGETS = n +OPTION_EGLIBC_CHARSETS = n +OPTION_EGLIBC_DB_ALIASES = n +OPTION_EGLIBC_ENVZ = y +OPTION_EGLIBC_FCVT = y +OPTION_EGLIBC_FMTMSG = y +OPTION_EGLIBC_FSTAB = y +OPTION_EGLIBC_FTRAVERSE = y +OPTION_EGLIBC_GETLOGIN = y +OPTION_EGLIBC_INET = y +OPTION_EGLIBC_LIBM = y +OPTION_EGLIBC_LOCALES = n +OPTION_EGLIBC_LOCALE_CODE = n +OPTION_EGLIBC_MEMUSAGE = y +OPTION_EGLIBC_NIS = n +OPTION_EGLIBC_NSSWITCH = n +OPTION_EGLIBC_RCMD = y +OPTION_EGLIBC_SPAWN = y +OPTION_EGLIBC_STREAMS = y +OPTION_EGLIBC_SUNRPC = y +OPTION_EGLIBC_UTMP = y +OPTION_EGLIBC_UTMPX = y +OPTION_EGLIBC_WORDEXP = y +OPTION_POSIX_C_LANG_WIDE_CHAR = y +OPTION_POSIX_REGEXP = y +OPTION_POSIX_REGEXP_GLIBC = n +OPTION_POSIX_WIDE_CHAR_DEVICE_IO = y diff --git a/toolchain/eglibc/patches/eglibc-cross.patch b/toolchain/eglibc/patches/eglibc-cross.patch new file mode 100644 index 000000000..e2cc86c2e --- /dev/null +++ b/toolchain/eglibc/patches/eglibc-cross.patch @@ -0,0 +1,92 @@ +diff -Nur eglibc-2.11.1.orig/libc/sunrpc/rpc/types.h eglibc-2.11.1/libc/sunrpc/rpc/types.h +--- eglibc-2.11.1.orig/libc/sunrpc/rpc/types.h 2010-02-24 08:09:59.000000000 +0100 ++++ eglibc-2.11.1/libc/sunrpc/rpc/types.h 2010-03-22 18:30:14.944408497 +0100 +@@ -68,6 +68,7 @@ + #include <sys/types.h> + #endif + ++#if !defined(_CROSS_RPCGEN_) + #ifndef __u_char_defined + typedef __u_char u_char; + typedef __u_short u_short; +@@ -83,6 +84,7 @@ + typedef __caddr_t caddr_t; + # define __daddr_t_defined + #endif ++#endif + + #include <sys/time.h> + #include <sys/param.h> +diff -Nur eglibc-2.11.1.orig/libc/sunrpc/rpc_clntout.c eglibc-2.11.1/libc/sunrpc/rpc_clntout.c +--- eglibc-2.11.1.orig/libc/sunrpc/rpc_clntout.c 2010-02-24 08:10:01.000000000 +0100 ++++ eglibc-2.11.1/libc/sunrpc/rpc_clntout.c 2010-03-22 18:30:38.973160151 +0100 +@@ -31,7 +31,7 @@ + */ + #include <stdio.h> + #include <string.h> +-#include <rpc/types.h> ++#include "rpc/types.h" + #include "rpc_parse.h" + #include "rpc_util.h" + #include "proto.h" +diff -Nur eglibc-2.11.1.orig/libc/sunrpc/rpc_main.c eglibc-2.11.1/libc/sunrpc/rpc_main.c +--- eglibc-2.11.1.orig/libc/sunrpc/rpc_main.c 2010-02-24 08:10:00.000000000 +0100 ++++ eglibc-2.11.1/libc/sunrpc/rpc_main.c 2010-03-22 18:31:31.245661003 +0100 +@@ -37,7 +37,11 @@ + #include <stdio.h> + #include <string.h> + #include <unistd.h> ++#ifdef _CROSS_RPCGEN_ ++#define gettext(X) (X) ++#else + #include <libintl.h> ++#endif + #include <ctype.h> + #include <sys/types.h> + #include <sys/param.h> +diff -Nur eglibc-2.11.1.orig/libc/sunrpc/rpc_scan.c eglibc-2.11.1/libc/sunrpc/rpc_scan.c +--- eglibc-2.11.1.orig/libc/sunrpc/rpc_scan.c 2010-02-24 08:10:00.000000000 +0100 ++++ eglibc-2.11.1/libc/sunrpc/rpc_scan.c 2010-03-22 18:31:16.146907097 +0100 +@@ -36,7 +36,11 @@ + #include <stdio.h> + #include <ctype.h> + #include <string.h> ++#ifdef _CROSS_RPCGEN_ ++#define gettext(X) (X) ++#else + #include <libintl.h> ++#endif + #include "rpc_scan.h" + #include "rpc_parse.h" + #include "rpc_util.h" +diff -Nur eglibc-2.11.1.orig/libc/timezone/Makefile eglibc-2.11.1/libc/timezone/Makefile +--- eglibc-2.11.1.orig/libc/timezone/Makefile 2010-02-24 08:09:02.000000000 +0100 ++++ eglibc-2.11.1/libc/timezone/Makefile 2010-03-22 18:50:04.134408513 +0100 +@@ -69,10 +69,11 @@ + $(addprefix $(inst_zonedir)/, \ + $(posixrules-file))) + +-install-others = $(addprefix $(inst_zonedir)/,$(zonenames) \ +- $(zonenames:%=posix/%) \ +- $(zonenames:%=right/%)) \ +- $(installed-localtime-file) $(installed-posixrules-file) ++install-others = ++#install-others = $(addprefix $(inst_zonedir)/,$(zonenames) \ ++# $(zonenames:%=posix/%) \ ++# $(zonenames:%=right/%)) \ ++# $(installed-localtime-file) $(installed-posixrules-file) + + ifeq ($(have-ksh),yes) + install-others += $(inst_zonedir)/iso3166.tab $(inst_zonedir)/zone.tab +@@ -181,8 +182,9 @@ + $(objpfx)zic: $(addprefix $(objpfx), $(zic-objs)) + + $(addprefix $(objpfx)cross-,$(zic-objs)): $(objpfx)cross-%.o: %.c +- gcc $< -c $(OUTPUT_OPTION) $(CFLAGS-$*.c) $(CPPFLAGS-$*) \ +- -DCROSS_ZIC $(compile-mkdep-flags) ++ gcc $< -c $(OUTPUT_OPTION) \ ++ $(filter-out -DHAVE_GETTEXT,$(CFLAGS-$*.c)) \ ++ $(CPPFLAGS-$*) -DCROSS_ZIC $(compile-mkdep-flags) + + $(objpfx)cross-zic: $(addprefix $(objpfx)cross-,$(zic-objs)) + gcc $(addprefix $(objpfx)cross-,$(zic-objs)) -o $@ |