diff options
author | Waldemar Brodkorb <wbx@openadk.org> | 2014-03-02 10:35:12 +0100 |
---|---|---|
committer | Waldemar Brodkorb <wbx@openadk.org> | 2014-03-02 10:35:12 +0100 |
commit | bc6ae3bd97162e25aff366acabbf80f096ccd8b7 (patch) | |
tree | d4c362e9c9aad370335a36414e1362e59052d6d1 /toolchain | |
parent | 4210ea9c8f69095fa0efaf5247f6c12925dcb4f0 (diff) |
goodbye eglibc, see my blog http://blog.waldemar-brodkorb.de/
Diffstat (limited to 'toolchain')
-rw-r--r-- | toolchain/Makefile | 6 | ||||
-rw-r--r-- | toolchain/eglibc/Makefile | 99 | ||||
-rw-r--r-- | toolchain/eglibc/Makefile.inc | 34 | ||||
-rw-r--r-- | toolchain/eglibc/eglibc.config | 47 | ||||
-rw-r--r-- | toolchain/eglibc/patches/cygwin.patch | 9 | ||||
-rw-r--r-- | toolchain/eglibc/patches/eglibc-cross.patch | 80 | ||||
-rw-r--r-- | toolchain/eglibc/patches/sparc64.patch | 21 |
7 files changed, 1 insertions, 295 deletions
diff --git a/toolchain/Makefile b/toolchain/Makefile index b61133b28..933a919c7 100644 --- a/toolchain/Makefile +++ b/toolchain/Makefile @@ -10,7 +10,7 @@ # 6) build and install initial static gcc # 7) build and install full libc # 8) build and install full shared gcc -# 9) rebuild and install full libc (in case of musl) +# 9) rebuild and install full libc (in case of musl/uclibc) # 10) build and install gdb debugger include $(TOPDIR)/rules.mk @@ -20,10 +20,6 @@ ifeq ($(ADK_TARGET_LIB_GLIBC),y) TARGETS+=glibc LIBC:=glibc endif -ifeq ($(ADK_TARGET_LIB_EGLIBC),y) -TARGETS+=eglibc -LIBC:=eglibc -endif ifeq ($(ADK_TARGET_LIB_UCLIBC),y) TARGETS+=uClibc LIBC:=uClibc diff --git a/toolchain/eglibc/Makefile b/toolchain/eglibc/Makefile deleted file mode 100644 index e2028dcd4..000000000 --- a/toolchain/eglibc/Makefile +++ /dev/null @@ -1,99 +0,0 @@ -# This file is part of the OpenADK project. OpenADK is copyrighted -# material, please see the LICENCE file in the top-level directory. - -include $(TOPDIR)/rules.mk -include ../rules.mk - -# eglibc does not compile with Os on some architectures -ifeq ($(ADK_LINUX_SPARC),y) -TARGET_CFLAGS_LIBC:= $(subst Os,O2,$(TARGET_CFLAGS)) -endif -ifeq ($(ADK_LINUX_MICROBLAZE),y) -TARGET_CFLAGS_LIBC:= $(subst Os,O2,$(TARGET_CFLAGS)) -endif -ifeq ($(ADK_LINUX_PPC64),y) -TARGET_CFLAGS_LIBC:= $(subst Os,O2,$(TARGET_CFLAGS)) -endif - -# ssp not supported -TARGET_CFLAGS_LIBC:= $(filter-out -fstack-protector,$(TARGET_CFLAGS_LIBC)) - -include Makefile.inc -include ${TOPDIR}/mk/buildhlp.mk - -EGLIBC_BUILD_DIR_INITIAL:= ${WRKDIR}/$(PKG_NAME)-$(PKG_VERSION)-headers -EGLIBC_BUILD_DIR_FINAL:= ${WRKDIR}/$(PKG_NAME)-$(PKG_VERSION)-final - -$(WRKBUILD)/.headers_configure: - mkdir -p $(EGLIBC_BUILD_DIR_INITIAL) - $(CP) ${TOPDIR}/toolchain/eglibc/eglibc.config \ - $(WRKBUILD)/libc/option-groups.config - (cd $(EGLIBC_BUILD_DIR_INITIAL); \ - ${EGLIBC_ENV} \ - CC="${REAL_GNU_TARGET_NAME}-gcc $(ADK_TARGET_ABI_CFLAGS)" \ - $(WRKBUILD)/libc/configure \ - --prefix=$(STAGING_TARGET_DIR)/usr \ - --with-headers=$(STAGING_TARGET_DIR)/usr/include \ - --host=$(REAL_GNU_TARGET_NAME) \ - ${EGLIBC_CONFOPTS} \ - ); - touch $@ - -$(WRKBUILD)/.headers: $(WRKBUILD)/.headers_configure - (cd $(EGLIBC_BUILD_DIR_INITIAL); \ - ${EGLIBC_ENV} \ - CC="${REAL_GNU_TARGET_NAME}-gcc $(ADK_TARGET_ABI_CFLAGS)" \ - $(MAKE) install-headers install-bootstrap-headers=yes cross-compiling=yes \ - ); - touch $(STAGING_TARGET_DIR)/usr/include/gnu/stubs.h - touch $(STAGING_TARGET_DIR)/usr/include/gnu/stubs-{32,x32,64,o32,n32,soft,hard}.h - touch $@ - -ifeq ($(ADK_TOOLCHAIN_GCC_USE_SSP),y) -EGLIBC_ENV+= libc_cv_ssp=yes -else -EGLIBC_ENV+= libc_cv_ssp=no -endif - -$(WRKBUILD)/.configured: - mkdir -p $(EGLIBC_BUILD_DIR_FINAL) - $(CP) ${TOPDIR}/toolchain/eglibc/eglibc.config \ - $(EGLIBC_BUILD_DIR_FINAL)/option-groups.config - (cd $(EGLIBC_BUILD_DIR_FINAL); \ - ${EGLIBC_ENV} \ - CC="${REAL_GNU_TARGET_NAME}-gcc $(ADK_TARGET_ABI_CFLAGS)" \ - $(WRKBUILD)/libc/configure \ - --prefix=/usr \ - --enable-shared \ - --enable-stackguard-randomization \ - --host=$(REAL_GNU_TARGET_NAME) \ - ${EGLIBC_CONFOPTS} \ - ); - touch $@ - -$(EGLIBC_BUILD_DIR_FINAL)/libc.so: -$(WRKBUILD)/.compiled: $(WRKBUILD)/.configured - ${EGLIBC_ENV} \ - CC="${REAL_GNU_TARGET_NAME}-gcc $(ADK_TARGET_ABI_CFLAGS)" \ - $(MAKE) -C $(EGLIBC_BUILD_DIR_FINAL) cross-compiling=yes all - touch $@ - -$(WRKBUILD)/.installed: $(EGLIBC_BUILD_DIR_FINAL)/libc.so - ${EGLIBC_ENV} \ - CC="${REAL_GNU_TARGET_NAME}-gcc $(ADK_TARGET_ABI_CFLAGS)" \ - $(MAKE) -C $(EGLIBC_BUILD_DIR_FINAL) install_root=$(STAGING_TARGET_DIR) install - ${INSTALL_DIR} ${STAGING_TARGET_DIR}/etc - ${INSTALL_DATA} ${WRKBUILD}/libc/posix/gai.conf ${STAGING_TARGET_DIR}/etc/ - ${INSTALL_DATA} ${WRKBUILD}/libc/nss/nsswitch.conf ${STAGING_TARGET_DIR}/etc/ - touch $@ - -$(WRKBUILD)/.fixup: - -find $(STAGING_TARGET_DIR) $(STAGING_HOST_DIR) -name \*.la -delete - -find $(STAGING_TARGET_DIR) -type -f -name \*_pic\* -delete - rm -rf $(STAGING_TARGET_DIR)/usr/share/locale $(STAGING_TARGET_DIR)/usr/share/i18n - rm -rf $(STAGING_TARGET_DIR)/usr/lib/gconv - PATH="$(TARGET_PATH)" debug='' prefix='${TARGET_CROSS}' ${BASH} ${SCRIPT_DIR}/rstrip.sh $(STAGING_TARGET_DIR) - debug='' prefix=' ' ${BASH} ${SCRIPT_DIR}/rstrip.sh $(STAGING_HOST_DIR) - touch $@ - -include ${TOPDIR}/mk/toolchain.mk diff --git a/toolchain/eglibc/Makefile.inc b/toolchain/eglibc/Makefile.inc deleted file mode 100644 index 1ac72ef54..000000000 --- a/toolchain/eglibc/Makefile.inc +++ /dev/null @@ -1,34 +0,0 @@ -# This file is part of the OpenADK project. OpenADK is copyrighted -# material, please see the LICENCE file in the top-level directory. - -PKG_NAME:= eglibc -PKG_VERSION:= 2.19 -PKG_RELEASE:= 1 -PKG_MD5SUM:= b54dfce017ee3132f7b2a8d8f46067cf -PKG_SITES:= http://openadk.org/distfiles/ -EGLIBC_CONFOPTS:= --build=$(GNU_HOST_NAME) \ - --without-cvs \ - --disable-profile \ - --disable-debug \ - --enable-kernel=2.6.32 \ - --without-gd \ - --disable-nscd \ - --with-__thread \ - --with-tls \ - --disable-obsolete-rpc \ - --enable-add-ons \ - --disable-nls -EGLIBC_ENV:= PATH='${TARGET_PATH}' \ - BUILD_CC=${CC_FOR_BUILD} \ - GCC_HONOUR_COPTS=s \ - CFLAGS="$(TARGET_CFLAGS_LIBC)" \ - CC=${REAL_GNU_TARGET_NAME}-gcc \ - CXX=${REAL_GNU_TARGET_NAME}-g++ \ - AR=${REAL_GNU_TARGET_NAME}-ar \ - RANLIB=${REAL_GNU_TARGET_NAME}-ranlib \ - libc_cv_cc_with_libunwind=no \ - libc_cv_forced_unwind=yes \ - libc_cv_c_cleanup=yes \ - libc_cv_gnu99_inline=yes \ - libc_cv_initfini_array=yes \ - libc_cv_slibdir="/lib" diff --git a/toolchain/eglibc/eglibc.config b/toolchain/eglibc/eglibc.config deleted file mode 100644 index f0304ff85..000000000 --- a/toolchain/eglibc/eglibc.config +++ /dev/null @@ -1,47 +0,0 @@ -# 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 = y -OPTION_EGLIBC_BIG_MACROS = y -OPTION_EGLIBC_BSD = y -OPTION_EGLIBC_CXX_TESTS = 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 -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 = y -OPTION_EGLIBC_LOCALE_CODE = y -OPTION_EGLIBC_MEMUSAGE = y -OPTION_EGLIBC_NIS = n -OPTION_EGLIBC_NSSWITCH = y -OPTION_EGLIBC_RCMD = y -OPTION_EGLIBC_RTLD_DEBUG = y -OPTION_EGLIBC_SPAWN = y -OPTION_EGLIBC_STREAMS = y -OPTION_EGLIBC_SUNRPC = n -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 = y -OPTION_POSIX_WIDE_CHAR_DEVICE_IO = y diff --git a/toolchain/eglibc/patches/cygwin.patch b/toolchain/eglibc/patches/cygwin.patch deleted file mode 100644 index 647d27a25..000000000 --- a/toolchain/eglibc/patches/cygwin.patch +++ /dev/null @@ -1,9 +0,0 @@ -diff -Nur eglibc-2.17.orig/libc/ports/sysdeps/arm/nptl/pthread_spin_lock.c eglibc-2.17/libc/ports/sysdeps/arm/nptl/pthread_spin_lock.c ---- eglibc-2.17.orig/libc/ports/sysdeps/arm/nptl/pthread_spin_lock.c 2013-05-08 14:27:27.000000000 +0200 -+++ eglibc-2.17/libc/ports/sysdeps/arm/nptl/pthread_spin_lock.c 2013-07-10 12:48:57.000000000 +0200 -@@ -20,4 +20,4 @@ - /* We can't use the normal "#include <nptl/pthread_spin_lock.c>" because - it will resolve to this very file. Using "sysdeps/.." as reference to the - top level directory does the job. */ --#include <sysdeps/../nptl/pthread_spin_lock.c> -+#include <../sysdeps/../nptl/pthread_spin_lock.c> diff --git a/toolchain/eglibc/patches/eglibc-cross.patch b/toolchain/eglibc/patches/eglibc-cross.patch deleted file mode 100644 index 6d74ec327..000000000 --- a/toolchain/eglibc/patches/eglibc-cross.patch +++ /dev/null @@ -1,80 +0,0 @@ -diff -Nur eglibc-2.18.orig/libc/sunrpc/rpc/types.h eglibc-2.18/libc/sunrpc/rpc/types.h ---- eglibc-2.18.orig/libc/sunrpc/rpc/types.h 2013-09-13 10:20:22.000000000 +0200 -+++ eglibc-2.18/libc/sunrpc/rpc/types.h 2014-01-25 13:23:20.000000000 +0100 -@@ -70,6 +70,7 @@ - #endif - - #ifndef __u_char_defined -+#if !defined(__APPLE__) && !defined(__BSD__) - typedef __u_char u_char; - typedef __u_short u_short; - typedef __u_int u_int; -@@ -79,11 +80,14 @@ - typedef __fsid_t fsid_t; - # define __u_char_defined - #endif -+#endif - #ifndef __daddr_t_defined -+#if !defined(__APPLE__) && !defined(__BSD__) - typedef __daddr_t daddr_t; - typedef __caddr_t caddr_t; - # define __daddr_t_defined - #endif -+#endif - - #include <sys/time.h> - #include <sys/param.h> -diff -Nur eglibc-2.18.orig/libc/sunrpc/rpc_main.c eglibc-2.18/libc/sunrpc/rpc_main.c ---- eglibc-2.18.orig/libc/sunrpc/rpc_main.c 2013-09-13 10:20:22.000000000 +0200 -+++ eglibc-2.18/libc/sunrpc/rpc_main.c 2014-01-25 09:57:31.000000000 +0100 -@@ -38,7 +38,6 @@ - #include <stdio.h> - #include <string.h> - #include <unistd.h> --#include <libintl.h> - #include <locale.h> - #include <ctype.h> - #include <sys/types.h> -@@ -51,6 +50,8 @@ - #include "rpc_scan.h" - #include "proto.h" - -+#define gettext(X) (X) -+ - #include "../version.h" - #define PACKAGE _libc_intl_domainname - -@@ -958,10 +959,12 @@ - abort (); - temp = rindex (cmd->infile, '.'); - cp = stpcpy (mkfilename, "Makefile."); -- if (temp != NULL) -- *((char *) stpncpy (cp, cmd->infile, temp - cmd->infile)) = '\0'; -- else -+ if (temp != NULL) { -+ strncpy (cp, cmd->infile, temp - cmd->infile); -+ cp[temp - cmd->infile - 1] = '\0'; -+ } else { - stpcpy (cp, cmd->infile); -+ } - - } - else -diff -Nur eglibc-2.18.orig/libc/sunrpc/rpc_scan.c eglibc-2.18/libc/sunrpc/rpc_scan.c ---- eglibc-2.18.orig/libc/sunrpc/rpc_scan.c 2013-09-13 10:20:22.000000000 +0200 -+++ eglibc-2.18/libc/sunrpc/rpc_scan.c 2014-01-25 09:57:31.000000000 +0100 -@@ -37,12 +37,13 @@ - #include <stdio.h> - #include <ctype.h> - #include <string.h> --#include <libintl.h> - #include "rpc_scan.h" - #include "rpc_parse.h" - #include "rpc_util.h" - #include "proto.h" - -+#define gettext(X) (X) -+ - #define startcomment(where) (where[0] == '/' && where[1] == '*') - #define endcomment(where) (where[-1] == '*' && where[0] == '/') - diff --git a/toolchain/eglibc/patches/sparc64.patch b/toolchain/eglibc/patches/sparc64.patch deleted file mode 100644 index 1fa281a9a..000000000 --- a/toolchain/eglibc/patches/sparc64.patch +++ /dev/null @@ -1,21 +0,0 @@ -diff -Nur eglibc-2.12.1.orig/libc/sysdeps/sparc/sparc64/Makefile eglibc-2.12.1/libc/sysdeps/sparc/sparc64/Makefile ---- eglibc-2.12.1.orig/libc/sysdeps/sparc/sparc64/Makefile 2010-09-28 19:13:11.000000000 +0200 -+++ eglibc-2.12.1/libc/sysdeps/sparc/sparc64/Makefile 2011-01-02 12:43:41.009426907 +0100 -@@ -1,3 +1,5 @@ -+sysdep-CFLAGS += -mcpu=v9 -Wa,-Av9a -+ - ifeq ($(subdir),csu) - sysdep_routines += hp-timing - elide-routines.os += hp-timing -@@ -10,3 +12,11 @@ - ifeq ($(subdir),string) - sysdep_routines += align-cpy - endif -+ -+ASFLAGS-.o += -Wa,-Av9a -+ASFLAGS-.os += -Wa,-Av9a -+ASFLAGS-.op += -Wa,-Av9a -+ASFLAGS-.og += -Wa,-Av9a -+ASFLAGS-.ob += -Wa,-Av9a -+ASFLAGS-.oS += -Wa,-Av9a -+ |