From 70c44baa23fbf86a888f6f37a75bca10a631a01c Mon Sep 17 00:00:00 2001 From: Waldemar Brodkorb Date: Thu, 20 Aug 2009 20:41:41 +0200 Subject: add eglibc support all three libraries tested with qemu-x86 --- toolchain/Makefile | 23 ++++++-- toolchain/binutils/Makefile | 4 +- toolchain/eglibc/Makefile | 101 ++++++++++++++++++++++++++++++++++ toolchain/eglibc/Makefile.inc | 8 +++ toolchain/eglibc/eglibc.config | 26 +++++++++ toolchain/eglibc/patches/gcc_eh.patch | 18 ++++++ toolchain/gcc/Makefile | 80 ++++++++++++++++++--------- toolchain/gcc/Makefile.inc | 2 +- toolchain/gdb/Makefile | 2 +- toolchain/glibc/Makefile | 98 ++++++++++++++++----------------- toolchain/glibc/Makefile.inc | 4 +- toolchain/gmp/Makefile | 4 +- toolchain/mpfr/Makefile | 4 +- toolchain/uClibc/Makefile | 2 +- 14 files changed, 284 insertions(+), 92 deletions(-) create mode 100644 toolchain/eglibc/Makefile create mode 100644 toolchain/eglibc/Makefile.inc create mode 100644 toolchain/eglibc/eglibc.config create mode 100644 toolchain/eglibc/patches/gcc_eh.patch (limited to 'toolchain') diff --git a/toolchain/Makefile b/toolchain/Makefile index c492ef339..2c424ed7d 100644 --- a/toolchain/Makefile +++ b/toolchain/Makefile @@ -1,5 +1,15 @@ # This file is part of the OpenADK project. OpenADK is copyrighted # material, please see the LICENCE file in the top-level directory. +# +# Steps to build toolchains +# 1) build and install binutils +# 2) build and install mpfr and gmp +# 3) build and install gcc c compiler +# 4) install kernel-headers +# 5) install libc headers +# 6) build and install full gcc +# 7) build and install full libc +# 8) build and install gdb debugger include $(TOPDIR)/rules.mk @@ -7,7 +17,12 @@ TARGETS:=binutils gmp mpfr gcc ifeq ($(ADK_TARGET_LIB_GLIBC),y) TARGETS+=glibc LIBC:=glibc -else +endif +ifeq ($(ADK_TARGET_LIB_EGLIBC),y) +TARGETS+=eglibc +LIBC:=eglibc +endif +ifeq ($(ADK_TARGET_LIB_UCLIBC),y) TARGETS+=uClibc LIBC:=uClibc endif @@ -22,9 +37,9 @@ install: $(TARGETS_INSTALL) clean: $(TARGETS_CLEAN) download: $(DOWNLOAD) -$(LIBC)-prepare: kernel-headers-prepare -binutils-prepare: $(LIBC)-prepare -gcc-configure: binutils-install gmp-install mpfr-install +gcc-prepare: binutils-install gmp-install mpfr-install +$(LIBC)-prepare: gcc-prepare kernel-headers-prepare +gcc-configure: $(LIBC)-prepare $(LIBC)-compile: gcc-configure gcc-compile: $(LIBC)-install diff --git a/toolchain/binutils/Makefile b/toolchain/binutils/Makefile index 057c6f232..bb7797e92 100644 --- a/toolchain/binutils/Makefile +++ b/toolchain/binutils/Makefile @@ -17,7 +17,7 @@ CONFOPTS+= --enable-64-bit-bfd endif $(WRKBUILD)/.headers: -$(WRKBUILD)/.configure_done: +$(WRKBUILD)/.configured: (cd $(WRKBUILD); \ $(WRKBUILD)/configure \ --prefix=$(STAGING_TOOLS) \ @@ -35,7 +35,7 @@ $(WRKBUILD)/.configure_done: ); touch $@ -$(WRKBUILD)/.compiled: $(WRKBUILD)/.configure_done +$(WRKBUILD)/.compiled: $(WRKBUILD)/.configured $(MAKE) -C $(WRKBUILD) all touch $@ diff --git a/toolchain/eglibc/Makefile b/toolchain/eglibc/Makefile new file mode 100644 index 000000000..374439100 --- /dev/null +++ b/toolchain/eglibc/Makefile @@ -0,0 +1,101 @@ +# 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 +include Makefile.inc + +include ${TOPDIR}/mk/buildhlp.mk + +EGLIBC_CONFOPTS:= \ + --build=$(GNU_HOST_NAME) \ + --host=$(REAL_GNU_TARGET_NAME) \ + --with-headers=$(TOOLCHAIN_SYSROOT)/usr/include \ + --disable-nls \ + --without-cvs \ + --disable-profile \ + --disable-debug \ + --without-gd \ + --enable-add-ons + +EGLIBC_ENV:= PATH='${TARGET_PATH}' \ + BUILD_CC=${HOSTCC} \ + 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_forced_unwind=yes \ + libc_cv_c_cleanup=yes \ + libc_cv_gnu99_inline=yes + +ifeq ($(ADK_DEVICE_NO_FPU),y) +EGLIBC_CONFOPTS+= --without-fp +endif + +EGLIBC_BUILD_DIR_INITIAL:= ${WRKDIR}/$(PKG_NAME)-$(PKG_VERSION)-headers +EGLIBC_BUILD_DIR_FINAL:= ${WRKDIR}/$(PKG_NAME)-$(PKG_VERSION)-final + +$(WRKBUILD)/.headers_configure: + (cd ${WRKDIR}/$(PKG_NAME)-$(PKG_VERSION); \ + ln -sf ../ports ${WRKDIR}/$(PKG_NAME)-$(PKG_VERSION)/libc); + (cd ${WRKDIR}/$(PKG_NAME)-$(PKG_VERSION)/libc; autoconf --force); + mkdir -p $(EGLIBC_BUILD_DIR_INITIAL) + $(CP) ${TOPDIR}/toolchain/eglibc/eglibc.config \ + $(EGLIBC_BUILD_DIR_INITIAL) + (cd $(EGLIBC_BUILD_DIR_INITIAL); \ + ${EGLIBC_ENV} \ + $(WRKBUILD)/libc/configure \ + --prefix=$(TOOLCHAIN_SYSROOT)/usr \ + --with-headers=$(TOOLCHAIN_SYSROOT)/usr/include \ + ${EGLIBC_CONFOPTS} \ + ); + 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 + 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: + mkdir -p $(EGLIBC_BUILD_DIR_FINAL) + $(CP) ${TOPDIR}/toolchain/eglibc/eglibc.config \ + $(EGLIBC_BUILD_DIR_FINAL) + (cd $(EGLIBC_BUILD_DIR_FINAL); \ + ${EGLIBC_ENV} \ + $(WRKBUILD)/libc/configure \ + --prefix=/usr \ + --enable-shared \ + --enable-stackguard-randomization \ + --with-__thread \ + --with-tls \ + --enable-kernel=2.6.0 \ + ${EGLIBC_CONFOPTS} \ + ); + touch $@ + +$(WRKBUILD)/.compiled: + ${EGLIBC_ENV} \ + CFLAGS="$(TARGET_CFLAGS)" \ + $(MAKE) -C $(EGLIBC_BUILD_DIR_FINAL) all + touch $@ + +$(WRKBUILD)/.installed: + PATH='${TARGET_PATH}' \ + $(MAKE) -C $(EGLIBC_BUILD_DIR_FINAL) \ + install_root=$(STAGING_DIR) \ + install + touch $@ + +include ${TOPDIR}/mk/toolchain.mk diff --git a/toolchain/eglibc/Makefile.inc b/toolchain/eglibc/Makefile.inc new file mode 100644 index 000000000..0ae28f033 --- /dev/null +++ b/toolchain/eglibc/Makefile.inc @@ -0,0 +1,8 @@ +# 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.10.1 +PKG_RELEASE:= 1 +PKG_MD5SUM:= 1b5d08c87de09018dcabd9974ba754d4 +PKG_SITES:= http://www.openadk.org/distfiles diff --git a/toolchain/eglibc/eglibc.config b/toolchain/eglibc/eglibc.config new file mode 100644 index 000000000..198741139 --- /dev/null +++ b/toolchain/eglibc/eglibc.config @@ -0,0 +1,26 @@ +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 diff --git a/toolchain/eglibc/patches/gcc_eh.patch b/toolchain/eglibc/patches/gcc_eh.patch new file mode 100644 index 000000000..1635a7d66 --- /dev/null +++ b/toolchain/eglibc/patches/gcc_eh.patch @@ -0,0 +1,18 @@ +diff -Nur eglibc-2.10.orig/libc/Makeconfig eglibc-2.10/libc/Makeconfig +--- eglibc-2.10.orig/libc/Makeconfig 2009-08-13 13:26:57.000000000 +0200 ++++ eglibc-2.10/libc/Makeconfig 2009-08-18 23:03:50.000000000 +0200 +@@ -538,12 +538,12 @@ + libunwind = -lunwind + endif + ifneq ($(have-as-needed),yes) +- libgcc_eh := -lgcc_eh $(libunwind) ++ libgcc_eh := $(libunwind) + else + libgcc_eh := -Wl,--as-needed -lgcc_s$(libgcc_s_suffix) $(libunwind) -Wl,--no-as-needed + endif + gnulib := -lgcc $(libgcc_eh) +-static-gnulib := -lgcc -lgcc_eh $(libunwind) ++static-gnulib := -lgcc $(libunwind) + libc.so-gnulib := -lgcc + endif + ifeq ($(elf),yes) diff --git a/toolchain/gcc/Makefile b/toolchain/gcc/Makefile index 6148985c1..a7bc45e00 100644 --- a/toolchain/gcc/Makefile +++ b/toolchain/gcc/Makefile @@ -48,51 +48,81 @@ endif include ${TOPDIR}/mk/buildhlp.mk -GCC_BUILD_DIR1:= $(WRKBUILD)-initial -GCC_BUILD_DIR2:= $(WRKBUILD)-final +GCC_BUILD_DIR_MINIMAL:= $(WRKBUILD)-minimal +GCC_BUILD_DIR_INITIAL:= $(WRKBUILD)-initial +GCC_BUILD_DIR_FINAL:= $(WRKBUILD)-final + +$(GCC_BUILD_DIR_MINIMAL)/.configured: + mkdir -p $(GCC_BUILD_DIR_MINIMAL) + (cd $(GCC_BUILD_DIR_MINIMAL); rm -f config.cache; \ + PATH=$(TARGET_PATH) \ + $(WRKBUILD)/configure \ + ${GCC_CONFOPTS} \ + --enable-languages=c \ + --disable-shared \ + --with-newlib \ + --without-headers \ + ); + touch $@ + +$(GCC_BUILD_DIR_MINIMAL)/.compiled: $(GCC_BUILD_DIR_MINIMAL)/.configured + PATH=$(TARGET_PATH) \ + $(MAKE) -C $(GCC_BUILD_DIR_MINIMAL) all-gcc + touch $@ + +$(WRKBUILD)/.headers: $(GCC_BUILD_DIR_MINIMAL)/.compiled + PATH=$(TARGET_PATH) \ + $(MAKE) -C $(GCC_BUILD_DIR_MINIMAL) install-gcc + touch $@ -$(WRKBUILD)/.headers: -$(GCC_BUILD_DIR1)/.configured: +$(GCC_BUILD_DIR_INITIAL)/.configured: rm -rf $(STAGING_TOOLS)/$(REAL_GNU_TARGET_NAME)/sys-include ln -sf ${STAGING_DIR}/include $(STAGING_TOOLS)/$(REAL_GNU_TARGET_NAME)/sys-include rm -rf ${STAGING_TOOLS}/$(REAL_GNU_TARGET_NAME)/lib ln -sf ${STAGING_DIR}/lib $(STAGING_TOOLS)/$(REAL_GNU_TARGET_NAME)/lib - mkdir -p $(GCC_BUILD_DIR1) - (cd $(GCC_BUILD_DIR1); rm -f config.cache; PATH=$(TARGET_PATH) \ + mkdir -p $(GCC_BUILD_DIR_INITIAL) + (cd $(GCC_BUILD_DIR_INITIAL); rm -f config.cache; \ + PATH=$(TARGET_PATH) \ $(WRKBUILD)/configure \ - ${GCC_CONFOPTS} \ - --enable-languages=c \ - --disable-shared \ - --with-sysroot=$(TOOLCHAIN_SYSROOT) \ + ${GCC_CONFOPTS} \ + --enable-languages=c \ + --disable-shared \ + --with-sysroot=$(TOOLCHAIN_SYSROOT) \ ); touch $@ -$(GCC_BUILD_DIR1)/.compiled: $(GCC_BUILD_DIR1)/.configured - PATH=$(TARGET_PATH) $(MAKE) -C $(GCC_BUILD_DIR1) all-gcc all-target-libgcc + +$(GCC_BUILD_DIR_INITIAL)/.compiled: $(GCC_BUILD_DIR_INITIAL)/.configured + PATH=$(TARGET_PATH) \ + $(MAKE) -C $(GCC_BUILD_DIR_INITIAL) all touch $@ -$(WRKBUILD)/.configure_done: $(GCC_BUILD_DIR1)/.compiled - PATH=$(TARGET_PATH) $(MAKE) -C $(GCC_BUILD_DIR1) install-gcc install-target-libgcc +$(WRKBUILD)/.configured: $(GCC_BUILD_DIR_INITIAL)/.compiled + PATH=$(TARGET_PATH) \ + $(MAKE) -C $(GCC_BUILD_DIR_INITIAL) install touch $@ -$(GCC_BUILD_DIR2)/.configured: - mkdir -p $(GCC_BUILD_DIR2) - (cd $(GCC_BUILD_DIR2); rm -f config.cache; PATH=$(TARGET_PATH) \ +$(GCC_BUILD_DIR_FINAL)/.configured: + mkdir -p $(GCC_BUILD_DIR_FINAL) + (cd $(GCC_BUILD_DIR_FINAL); rm -f config.cache; \ + PATH=$(TARGET_PATH) \ $(WRKBUILD)/configure \ - ${GCC_CONFOPTS} \ - --enable-languages=$(TARGET_LANGUAGES) \ - --with-sysroot=$(STAGING_DIR) \ - --with-slibdir=$(STAGING_DIR)/lib \ - --enable-shared \ + ${GCC_CONFOPTS} \ + --enable-languages=$(TARGET_LANGUAGES) \ + --with-sysroot=$(STAGING_DIR) \ + --with-slibdir=$(STAGING_DIR)/lib \ + --enable-shared \ ); touch $@ -$(WRKBUILD)/.compiled: $(GCC_BUILD_DIR2)/.configured - PATH=$(TARGET_PATH) $(MAKE) -C $(GCC_BUILD_DIR2) all +$(WRKBUILD)/.compiled: $(GCC_BUILD_DIR_FINAL)/.configured + PATH=$(TARGET_PATH) \ + $(MAKE) -C $(GCC_BUILD_DIR_FINAL) all touch $@ $(WRKBUILD)/.installed: $(WRKBUILD)/.compiled - PATH=$(TARGET_PATH) $(MAKE) -C $(GCC_BUILD_DIR2) install + PATH=$(TARGET_PATH) \ + $(MAKE) -C $(GCC_BUILD_DIR_FINAL) install # Set up the symlinks to enable lying about target name. set -e; \ (cd $(STAGING_TOOLS); \ diff --git a/toolchain/gcc/Makefile.inc b/toolchain/gcc/Makefile.inc index 9b771706f..3fa197be8 100644 --- a/toolchain/gcc/Makefile.inc +++ b/toolchain/gcc/Makefile.inc @@ -2,7 +2,7 @@ # material, please see the LICENCE file in the top-level directory. PKG_NAME:= gcc -PKG_VERSION:= 4.4.0 +PKG_VERSION:= 4.4.1 PKG_RELEASE:= 1 PKG_MD5SUM:= cf5d787bee57f38168b74d65a7c0e6fd PKG_SITES:= ${MASTER_SITE_GNU:=gcc/gcc-${PKG_VERSION}/} diff --git a/toolchain/gdb/Makefile b/toolchain/gdb/Makefile index 4eed496c0..0d6b7cb48 100644 --- a/toolchain/gdb/Makefile +++ b/toolchain/gdb/Makefile @@ -8,7 +8,7 @@ include Makefile.inc include ${TOPDIR}/mk/buildhlp.mk $(WRKBUILD)/.headers: -$(WRKBUILD)/.configure_done: +$(WRKBUILD)/.configured: (cd $(WRKBUILD); \ gdb_cv_func_sigsetjmp=yes \ ./configure \ diff --git a/toolchain/glibc/Makefile b/toolchain/glibc/Makefile index d1066bccd..0a93e123e 100644 --- a/toolchain/glibc/Makefile +++ b/toolchain/glibc/Makefile @@ -1,7 +1,7 @@ # This file is part of the OpenADK project. OpenADK is copyrighted # material, please see the LICENCE file in the top-level directory. -_IN_CVTC= 1 +#_IN_CVTC= 1 include $(TOPDIR)/rules.mk include ../rules.mk @@ -9,35 +9,53 @@ include Makefile.inc include ${TOPDIR}/mk/buildhlp.mk +GLIBC_CONFOPTS:= \ + --build=$(GNU_HOST_NAME) \ + --host=$(REAL_GNU_TARGET_NAME) \ + --with-headers=$(TOOLCHAIN_SYSROOT)/usr/include \ + --disable-nls \ + --disable-sanity-checks \ + --disable-nls \ + --without-cvs \ + --disable-profile \ + --disable-debug \ + --without-gd \ + --with-__thread \ + --with-tls \ + --enable-kernel="2.6.0" \ + --enable-add-ons + +GLIBC_ENV:= PATH='${TARGET_PATH}' \ + BUILD_CC=${HOSTCC} \ + CFLAGS="$(TARGET_CFLAGS_ARCH) -O2 -pipe" \ + CC=${REAL_GNU_TARGET_NAME}-gcc \ + CXX=${REAL_GNU_TARGET_NAME}-g++ \ + AR=${REAL_GNU_TARGET_NAME}-ar \ + RANLIB=${REAL_GNU_TARGET_NAME}-ranlib \ + LD=${REAL_GNU_TARGET_NAME}-ld \ + libc_cv_forced_unwind=yes \ + libc_cv_c_cleanup=yes \ + libc_cv_gnu99_inline=yes \ + ifeq ($(ADK_DEVICE_NO_FPU),y) -GLIBC_CONFOPTS:= --without-fp +GLIBC_CONFOPTS+= --without-fp endif -GLIBC_BUILD_DIR:= ${WRKDIR}/$(PKG_NAME)-$(PKG_VERSION)-headers -GLIBC_BUILD_DIR2:= ${WRKDIR}/$(PKG_NAME)-$(PKG_VERSION)-final +GLIBC_BUILD_DIR_INITIAL:= ${WRKDIR}/$(PKG_NAME)-$(PKG_VERSION)-headers +GLIBC_BUILD_DIR_FINAL:= ${WRKDIR}/$(PKG_NAME)-$(PKG_VERSION)-final $(WRKBUILD)/.headers_configure: - mkdir -p $(GLIBC_BUILD_DIR) - (cd $(GLIBC_BUILD_DIR); \ + mkdir -p $(GLIBC_BUILD_DIR_INITIAL) + (cd $(GLIBC_BUILD_DIR_INITIAL); \ $(WRKBUILD)/configure \ --prefix=/usr \ - --build=$(GNU_HOST_NAME) \ - --host=$(REAL_GNU_TARGET_NAME) \ - --disable-nls \ - --without-cvs \ - --with-__thread \ - --with-tls \ - --enable-add-ons \ - --enable-kernel="2.6.0" \ - --disable-sanity-checks \ - --with-headers=$(TOOLCHAIN_SYSROOT)/usr/include \ --with-sysroot=$(TOOLCHAIN_SYSROOT) \ ${GLIBC_CONFOPTS} \ ); touch $@ $(WRKBUILD)/.headers: $(WRKBUILD)/.headers_configure - $(MAKE) -C $(GLIBC_BUILD_DIR) \ + $(MAKE) -C $(GLIBC_BUILD_DIR_INITIAL) \ cross-compiling=yes \ install_root=$(TOOLCHAIN_SYSROOT) \ CFLAGS="-DBOOTSTRAP_GCC" install-headers @@ -45,52 +63,28 @@ $(WRKBUILD)/.headers: $(WRKBUILD)/.headers_configure touch $(TOOLCHAIN_SYSROOT)/usr/include/bits/stdio_lim.h touch $@ -$(WRKBUILD)/.configure_done: - mkdir -p $(GLIBC_BUILD_DIR2) - (cd $(GLIBC_BUILD_DIR2); \ - PATH='${TARGET_PATH}' \ - BUILD_CC=gcc \ - CFLAGS="$(TARGET_CFLAGS_ARCH) -O2 -pipe" \ - CC=${REAL_GNU_TARGET_NAME}-gcc \ - AR=${REAL_GNU_TARGET_NAME}-ar \ - RANLIB=${REAL_GNU_TARGET_NAME}-ranlib \ - LD=${REAL_GNU_TARGET_NAME}-ld \ - libc_cv_forced_unwind=yes \ - libc_cv_c_cleanup=yes \ - libc_cv_gnu99_inline=yes \ +$(WRKBUILD)/.configured: + mkdir -p $(GLIBC_BUILD_DIR_FINAL) + (cd $(GLIBC_BUILD_DIR_FINAL); \ + ${GLIBC_ENV} \ $(WRKBUILD)/configure \ - --prefix=/usr \ - --build=$(GNU_HOST_NAME) \ - --host=$(REAL_GNU_TARGET_NAME) \ - --disable-nls \ - --without-cvs \ - --disable-profile \ - --disable-debug \ - --without-gd \ - --enable-shared \ - --enable-stackguard-randomization \ - --with-__thread \ - --with-tls \ - --enable-add-ons \ - --enable-kernel=2.6.0 \ - --with-headers=$(TOOLCHAIN_SYSROOT)/usr/include \ - ${GLIBC_CONFOPTS} \ + --prefix=/usr \ + --enable-shared \ + --enable-stackguard-randomization \ + ${GLIBC_CONFOPTS} \ ); touch $@ $(WRKBUILD)/.compiled: - PATH='${TARGET_PATH}' \ + ${GLIBC_ENV} \ CFLAGS="$(TARGET_CFLAGS_ARCH) -O2 -pipe" \ - CC=${REAL_GNU_TARGET_NAME}-gcc \ - LD=${REAL_GNU_TARGET_NAME}-ld \ - RANLIB=${REAL_GNU_TARGET_NAME}-ranlib \ - $(MAKE) -C $(GLIBC_BUILD_DIR2) lib \ + $(MAKE) -C $(GLIBC_BUILD_DIR_FINAL) lib \ cross-compiling=yes touch $@ $(WRKBUILD)/.installed: PATH='${TARGET_PATH}' \ - $(MAKE) -C $(GLIBC_BUILD_DIR2) \ + $(MAKE) -C $(GLIBC_BUILD_DIR_FINAL) \ install_root=$(STAGING_DIR) \ install-lib-all install-headers \ install-others cross-compiling=yes diff --git a/toolchain/glibc/Makefile.inc b/toolchain/glibc/Makefile.inc index 3e5d8b475..3ba08efa3 100644 --- a/toolchain/glibc/Makefile.inc +++ b/toolchain/glibc/Makefile.inc @@ -2,7 +2,7 @@ # material, please see the LICENCE file in the top-level directory. PKG_NAME:= glibc -PKG_VERSION:= 2.10.90 +PKG_VERSION:= 2.10.1 PKG_RELEASE:= 1 -PKG_MD5SUM:= f1d6d30f762e0be537a1f84d26fa0403 +PKG_MD5SUM:= adfbd93cada84dc16259f4dffa60dc34 PKG_SITES:= http://www.openadk.org/distfiles diff --git a/toolchain/gmp/Makefile b/toolchain/gmp/Makefile index cff400736..bbe26f14d 100644 --- a/toolchain/gmp/Makefile +++ b/toolchain/gmp/Makefile @@ -7,7 +7,7 @@ include Makefile.inc include ${TOPDIR}/mk/buildhlp.mk $(WRKBUILD)/.headers: -$(WRKBUILD)/.configure_done: +$(WRKBUILD)/.configured: (cd $(WRKBUILD); \ $(WRKBUILD)/configure \ --prefix=$(STAGING_TOOLS) \ @@ -19,7 +19,7 @@ $(WRKBUILD)/.configure_done: ); touch $@ -$(WRKBUILD)/.compiled: $(WRKBUILD)/.configure_done +$(WRKBUILD)/.compiled: $(WRKBUILD)/.configured $(MAKE) -C $(WRKBUILD) all touch $@ diff --git a/toolchain/mpfr/Makefile b/toolchain/mpfr/Makefile index 38ceed749..f74f0199f 100644 --- a/toolchain/mpfr/Makefile +++ b/toolchain/mpfr/Makefile @@ -8,7 +8,7 @@ include Makefile.inc include ${TOPDIR}/mk/buildhlp.mk $(WRKBUILD)/.headers: -$(WRKBUILD)/.configure_done: +$(WRKBUILD)/.configured: (cd $(WRKBUILD); \ $(WRKBUILD)/configure \ --prefix=$(STAGING_TOOLS) \ @@ -20,7 +20,7 @@ $(WRKBUILD)/.configure_done: ); touch $@ -$(WRKBUILD)/.compiled: $(WRKBUILD)/.configure_done +$(WRKBUILD)/.compiled: $(WRKBUILD)/.configured $(MAKE) -C $(WRKBUILD) all touch $@ diff --git a/toolchain/uClibc/Makefile b/toolchain/uClibc/Makefile index e393eba5b..9ae8016cc 100644 --- a/toolchain/uClibc/Makefile +++ b/toolchain/uClibc/Makefile @@ -35,7 +35,7 @@ endif HOSTCC="$(HOSTCC)" \ CPU_CFLAGS="$(TARGET_CFLAGS)" \ install_headers - touch $(WRKBUILD)/.configure_done + touch $(WRKBUILD)/.configured touch $@ $(WRKBUILD)/.compiled: -- cgit v1.2.3