diff options
author | Peter Korsgaard <jacmet@sunsite.dk> | 2010-06-15 23:10:03 +0200 |
---|---|---|
committer | Peter Korsgaard <jacmet@sunsite.dk> | 2010-06-15 23:16:55 +0200 |
commit | 5fd095b3748115d7cbe89524332e4b310550b7c3 (patch) | |
tree | c0cd0d9cf49956b73afe3b3b90e79106044f8102 /toolchain/gcc/gcc-uclibc-3.x.mk | |
parent | 144e4ed085d67b46cb0ce9c1c45794bce3c8cb99 (diff) | |
download | buildroot-novena-5fd095b3748115d7cbe89524332e4b310550b7c3.tar.gz buildroot-novena-5fd095b3748115d7cbe89524332e4b310550b7c3.zip |
toolchain: remove gcc 4.1.2 and non-sysroot support
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Diffstat (limited to 'toolchain/gcc/gcc-uclibc-3.x.mk')
-rw-r--r-- | toolchain/gcc/gcc-uclibc-3.x.mk | 484 |
1 files changed, 0 insertions, 484 deletions
diff --git a/toolchain/gcc/gcc-uclibc-3.x.mk b/toolchain/gcc/gcc-uclibc-3.x.mk deleted file mode 100644 index 332af884a..000000000 --- a/toolchain/gcc/gcc-uclibc-3.x.mk +++ /dev/null @@ -1,484 +0,0 @@ -# Makefile for to build a gcc/uClibc toolchain -# -# Copyright (C) 2002-2003 Erik Andersen <andersen@uclibc.org> -# Copyright (C) 2004 Manuel Novoa III <mjn3@uclibc.org> -# -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2 of the License, or -# (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -# General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - -ifeq ($(BR2_TOOLCHAIN_BUILDROOT),y) - -# without sysroot support. Sysroot toolchain is gcc-uclibc-4.x.mk -ifneq ($(BR2_TOOLCHAIN_SYSROOT),y) - -ifneq ($(GCC_SNAP_DATE),) - GCC_SITE:=ftp://sources.redhat.com/pub/gcc/snapshots/$(GCC_VERSION) -else ifeq ($(findstring avr32,$(GCC_VERSION)),avr32) - GCC_SITE:=ftp://www.at91.com/pub/buildroot/ -else - GCC_SITE:=$(BR2_GNU_MIRROR)/gcc/gcc-$(GCC_VERSION) -endif - -GCC_SOURCE:=gcc-$(GCC_VERSION).tar.bz2 -GCC_DIR:=$(TOOLCHAIN_DIR)/gcc-$(GCC_VERSION) -GCC_PATCH_DIR:=toolchain/gcc/$(GCC_VERSION) -GCC_CAT:=$(BZCAT) -GCC_STRIP_HOST_BINARIES:=true - -ifneq ($(BR2_INSTALL_FORTRAN),y) -# fortran needs gmp and mpfr -ifeq ($(findstring 4.0.,$(GCC_VERSION)),4.0.) -GCC_NO_MPFR:=y -endif -ifeq ($(findstring 4.1.,$(GCC_VERSION)),4.1.) -GCC_NO_MPFR:=y -endif -endif - -############################################################# -# -# Setup some initial stuff -# -############################################################# - - -GCC_CROSS_LANGUAGES:=c -ifeq ($(BR2_GCC_CROSS_CXX),y) -GCC_CROSS_LANGUAGES:=$(GCC_CROSS_LANGUAGES),c++ -endif -ifeq ($(BR2_GCC_CROSS_FORTRAN),y) -GCC_CROSS_LANGUAGES:=$(GCC_CROSS_LANGUAGES),fortran -endif -ifeq ($(BR2_GCC_CROSS_OBJC),y) -GCC_CROSS_LANGUAGES:=$(GCC_CROSS_LANGUAGES),objc -endif - - -GCC_TARGET_LANGUAGES:=c -ifeq ($(BR2_INSTALL_LIBSTDCPP),y) -GCC_TARGET_LANGUAGES:=$(GCC_TARGET_LANGUAGES),c++ -endif -ifeq ($(BR2_INSTALL_LIBGCJ),y) -GCC_TARGET_LANGUAGES:=$(GCC_TARGET_LANGUAGES),java -endif -ifeq ($(BR2_INSTALL_OBJC),y) -GCC_TARGET_LANGUAGES:=$(GCC_TARGET_LANGUAGES),objc -endif - -GCC_TARGET_PREREQ = -GCC_STAGING_PREREQ= $(STAGING_DIR)/usr/lib/libc.a - -ifndef GCC_NO_MPFR -GCC_WITH_HOST_GMP=--with-gmp=$(GMP_HOST_DIR) -GCC_WITH_HOST_MPFR=--with-mpfr=$(MPFR_HOST_DIR) - -ifeq ($(BR2_INSTALL_FORTRAN),y) -GCC_TARGET_LANGUAGES:=$(GCC_TARGET_LANGUAGES),fortran -#GCC_TARGET_PREREQ += $(TARGET_DIR)/lib/libmpfr.so $(TARGET_DIR)/lib/libgmp.so -#GCC_STAGING_PREREQ+= $(TOOLCHAIN_DIR)/mpfr/lib/libmpfr.so -GCC_WITH_TARGET_GMP=--with-gmp="$(GMP_TARGET_DIR)" -GCC_WITH_TARGET_MPFR=--with-mpfr="$(MPFR_TARGET_DIR)" -endif -endif # ifndef GCC_NO_MPFR - -ifeq ($(BR2_GCC_SHARED_LIBGCC),y) -GCC_SHARED_LIBGCC:=--enable-shared -else -GCC_SHARED_LIBGCC:=--disable-shared -endif - -HOST_SOURCE+=gcc-source - -############################################################# -# -# build the first pass gcc compiler -# -############################################################# -GCC_BUILD_DIR1:=$(TOOLCHAIN_DIR)/gcc-$(GCC_VERSION)-initial - -$(DL_DIR)/$(GCC_SOURCE): - mkdir -p $(DL_DIR) - $(call DOWNLOAD,$(GCC_SITE),$(GCC_SOURCE)) - -gcc-unpacked: $(GCC_DIR)/.patched -$(GCC_DIR)/.unpacked: $(DL_DIR)/$(GCC_SOURCE) - mkdir -p $(TOOLCHAIN_DIR) - $(GCC_CAT) $(DL_DIR)/$(GCC_SOURCE) | tar -C $(TOOLCHAIN_DIR) $(TAR_OPTIONS) - - $(CONFIG_UPDATE) $(@D) - touch $@ - -gcc-patched: $(GCC_DIR)/.patched -$(GCC_DIR)/.patched: $(GCC_DIR)/.unpacked - # Apply any files named gcc-*.patch from the source directory to gcc -ifneq ($(wildcard $(GCC_PATCH_DIR)),) - toolchain/patch-kernel.sh $(GCC_DIR) $(GCC_PATCH_DIR) \*.patch -endif - # Note: The soft float situation has improved considerably with gcc 3.4.x. - # We can dispense with the custom spec files, as well as libfloat for the arm case. - # However, we still need a patch for arm. There's a similar patch for gcc 3.3.x - # which needs to be integrated so we can kill of libfloat for good, except for - # anyone (?) who might still be using gcc 2.95. mjn3 -ifeq ($(BR2_SOFT_FLOAT),y) -ifeq ("$(strip $(ARCH))","arm") - toolchain/patch-kernel.sh $(GCC_DIR) toolchain/gcc/$(GCC_VERSION) arm-softfloat.patch.conditional -endif -ifeq ("$(strip $(ARCH))","armeb") - toolchain/patch-kernel.sh $(GCC_DIR) toolchain/gcc/$(GCC_VERSION) arm-softfloat.patch.conditional -endif -endif - touch $@ - -# The --without-headers option stopped working with gcc 3.0 and has never been -# fixed, so we need to actually have working C library header files prior to -# the step or libgcc will not build... - -$(GCC_BUILD_DIR1)/.configured: $(GCC_DIR)/.patched - mkdir -p $(GCC_BUILD_DIR1) - (cd $(GCC_BUILD_DIR1); PATH=$(TARGET_PATH) \ - $(HOST_CONFIGURE_OPTS) \ - $(GCC_DIR)/configure $(QUIET) \ - --prefix=$(STAGING_DIR)/usr \ - --build=$(GNU_HOST_NAME) \ - --host=$(GNU_HOST_NAME) \ - --target=$(REAL_GNU_TARGET_NAME) \ - --enable-languages=c \ - --with-sysroot=$(TOOLCHAIN_DIR)/uClibc_dev/ \ - --disable-__cxa_atexit \ - --enable-target-optspace \ - --with-gnu-ld \ - --disable-shared \ - --disable-libssp \ - $(GCC_WITH_HOST_GMP) \ - $(GCC_WITH_HOST_MPFR) \ - $(DISABLE_NLS) \ - $(THREADS) \ - $(MULTILIB) \ - $(SOFT_FLOAT_CONFIG_OPTION) \ - $(GCC_WITH_ABI) $(GCC_WITH_ARCH) $(GCC_WITH_TUNE) \ - $(EXTRA_GCC_CONFIG_OPTIONS) \ - $(QUIET) \ - ) - touch $@ - -$(GCC_BUILD_DIR1)/.compiled: $(GCC_BUILD_DIR1)/.configured - PATH=$(TARGET_PATH) $(MAKE) -C $(GCC_BUILD_DIR1) all-gcc - touch $@ - -gcc_initial=$(GCC_BUILD_DIR1)/.installed -$(gcc_initial) $(STAGING_DIR)/usr/bin/$(REAL_GNU_TARGET_NAME)-gcc: $(GCC_BUILD_DIR1)/.compiled - PATH=$(TARGET_PATH) $(MAKE) -C $(GCC_BUILD_DIR1) install-gcc - #rm -f $(STAGING_DIR)/bin/gccbug $(STAGING_DIR)/bin/gcov - #rm -rf $(STAGING_DIR)/info $(STAGING_DIR)/man $(STAGING_DIR)/share/doc $(STAGING_DIR)/share/locale - touch $(gcc_initial) - -gcc_initial: uclibc-configured binutils $(STAGING_DIR)/usr/bin/$(REAL_GNU_TARGET_NAME)-gcc - -gcc_initial-clean: - rm -rf $(GCC_BUILD_DIR1) - -gcc_initial-dirclean: - rm -rf $(GCC_BUILD_DIR1) $(GCC_DIR) - -############################################################# -# -# second pass compiler build. Build the compiler targeting -# the newly built shared uClibc library. -# -############################################################# -# -# Sigh... I had to rework things because using --with-gxx-include-dir -# causes issues with include dir search order for g++. This seems to -# have something to do with "path translations" and possibly doesn't -# affect gcc-target. However, I haven't tested gcc-target yet so no -# guarantees. mjn3 - -GCC_BUILD_DIR2:=$(TOOLCHAIN_DIR)/gcc-$(GCC_VERSION)-final -$(GCC_BUILD_DIR2)/.configured: $(GCC_DIR)/.patched $(GCC_STAGING_PREREQ) - mkdir -p $(GCC_BUILD_DIR2) - # Important! Required for limits.h to be fixed. - ln -snf ../include $(STAGING_DIR)/usr/$(REAL_GNU_TARGET_NAME)/sys-include - #-rmdir $(STAGING_DIR)/usr/$(REAL_GNU_TARGET_NAME)/lib - #ln -snf ../lib/ $(STAGING_DIR)/usr/$(REAL_GNU_TARGET_NAME)/lib - (cd $(GCC_BUILD_DIR2); rm -rf config.cache; \ - $(HOST_CONFIGURE_OPTS) \ - GCC=$(TARGET_CROSS)gcc \ - CPP=$(TARGET_CROSS)cpp \ - LDFLAGS_FOR_TARGET="$(patsubst %,LDFLAGS+=-Wl$(comma)%,$(TARGET_LDFLAGS)) -L$(STAGING_DIR)/lib -L$(STAGING_DIR)/usr/lib" \ - $(GCC_DIR)/configure $(QUIET) \ - --prefix=$(STAGING_DIR) \ - --build=$(GNU_HOST_NAME) \ - --host=$(GNU_HOST_NAME) \ - --target=$(REAL_GNU_TARGET_NAME) \ - --enable-languages=$(GCC_CROSS_LANGUAGES) \ - --disable-__cxa_atexit \ - --enable-target-optspace \ - --with-gnu-ld \ - --disable-libssp \ - $(GCC_WITH_HOST_GMP) \ - $(GCC_WITH_HOST_MPFR) \ - $(GCC_SHARED_LIBGCC) \ - $(DISABLE_NLS) \ - $(THREADS) \ - $(MULTILIB) \ - $(SOFT_FLOAT_CONFIG_OPTION) \ - $(GCC_WITH_ABI) $(GCC_WITH_ARCH) $(GCC_WITH_TUNE) \ - $(GCC_USE_SJLJ_EXCEPTIONS) \ - $(DISABLE_LARGEFILE) \ - $(EXTRA_GCC_CONFIG_OPTIONS) \ - ) - touch $@ - -$(GCC_BUILD_DIR2)/.compiled: $(GCC_BUILD_DIR2)/.configured - PATH=$(TARGET_PATH) $(MAKE) $(HOST_CONFIGURE_OPTS) CPP=$(TARGET_CROSS)cpp -C $(GCC_BUILD_DIR2) all - touch $@ - -$(GCC_BUILD_DIR2)/.installed: $(GCC_BUILD_DIR2)/.compiled - PATH=$(TARGET_PATH) \ - $(MAKE) $(HOST_CONFIGURE_OPTS) \ - LDFLAGS_FOR_TARGET="$(patsubst %,LDFLAGS+=-Wl$(comma)%,$(TARGET_LDFLAGS)) -L$(STAGING_DIR)/lib -L$(STAGING_DIR)/usr/lib" \ - -C $(GCC_BUILD_DIR2) install - if [ -d "$(STAGING_DIR)/usr/lib64" ]; then \ - if [ ! -e "$(STAGING_DIR)/usr/lib" ]; then \ - mkdir -p "$(STAGING_DIR)/usr/lib"; \ - fi; \ - mv "$(STAGING_DIR)/usr/lib64/"* "$(STAGING_DIR)/usr/lib/"; \ - rmdir "$(STAGING_DIR)/usr/lib64"; \ - fi - # Strip the host binaries -ifeq ($(GCC_STRIP_HOST_BINARIES),true) - strip --strip-all -R .note -R .comment $(filter-out %-gccbug %-embedspu,$(wildcard $(STAGING_DIR)/usr/bin/$(REAL_GNU_TARGET_NAME)-*)) -endif - # Make sure we have 'cc'. - if [ ! -e $(STAGING_DIR)/usr/bin/$(REAL_GNU_TARGET_NAME)-cc ]; then \ - ln -snf $(REAL_GNU_TARGET_NAME)-gcc \ - $(STAGING_DIR)/usr/bin/$(REAL_GNU_TARGET_NAME)-cc; \ - fi - if [ ! -e $(STAGING_DIR)/usr/bin/gcc ]; then \ - ln -snf gcc $(STAGING_DIR)/usr/bin/$(REAL_GNU_TARGET_NAME)-cc; \ - fi - # Set up the symlinks to enable lying about target name. - set -e; \ - (cd $(STAGING_DIR)/usr; \ - ln -snf $(REAL_GNU_TARGET_NAME) $(GNU_TARGET_NAME); \ - cd bin; \ - for app in $(REAL_GNU_TARGET_NAME)-*; do \ - ln -snf $${app} \ - $(GNU_TARGET_NAME)$${app##$(REAL_GNU_TARGET_NAME)}; \ - done; \ - ) - # - # Now for the ugly 3.3.x soft float hack... - # -ifeq ($(BR2_SOFT_FLOAT),y) -ifeq ($(findstring 3.3.,$(GCC_VERSION)),3.3.) - # Make sure we have a soft float specs file for this arch - if [ ! -f toolchain/gcc/$(GCC_VERSION)/specs-$(ARCH)-soft-float ]; then \ - echo soft float configured but no specs file for this arch; \ - /bin/false; \ - fi - # Replace specs file with one that defaults to soft float mode. - if [ ! -f $(STAGING_DIR)/usr/lib/gcc-lib/$(REAL_GNU_TARGET_NAME)/$(GCC_VERSION)/specs ]; then \ - echo staging dir specs file is missing; \ - /bin/false; \ - fi - cp toolchain/gcc/$(GCC_VERSION)/specs-$(ARCH)-soft-float $(STAGING_DIR)/usr/lib/gcc-lib/$(REAL_GNU_TARGET_NAME)/$(GCC_VERSION)/specs -endif -endif - # - # Ok... that's enough of that. - # - mkdir -p $(TARGET_DIR)/usr/lib $(TARGET_DIR)/usr/sbin - touch $@ - -$(STAMP_DIR)/gcc_libs_target_installed: $(GCC_BUILD_DIR2)/.installed -ifeq ($(BR2_GCC_SHARED_LIBGCC),y) - # These are in /lib, so... - rm -rf $(TARGET_DIR)/usr/lib/libgcc_s*.so* - -cp -dpf $(STAGING_DIR)/usr/$(REAL_GNU_TARGET_NAME)/lib/libgcc_s* \ - $(TARGET_DIR)/lib/ - -$(STRIPCMD) $(STRIP_STRIP_UNNEEDED) $(TARGET_DIR)/lib/libgcc_s* -endif -ifeq ($(BR2_INSTALL_LIBSTDCPP),y) -ifeq ($(BR2_GCC_SHARED_LIBGCC),y) - mkdir -p $(TARGET_DIR)/usr/lib - -cp -dpf $(STAGING_DIR)/lib/libstdc++.so* $(TARGET_DIR)/usr/lib/ - -$(STRIPCMD) $(STRIP_STRIP_UNNEEDED) $(TARGET_DIR)/usr/lib/libstdc++.so* -endif -endif -ifeq ($(BR2_INSTALL_LIBGCJ),y) - cp -dpf $(STAGING_DIR)/lib/libgcj.so* $(TARGET_DIR)/usr/lib/ - cp -dpf $(STAGING_DIR)/lib/lib-org-w3c-dom.so* $(TARGET_DIR)/usr/lib/ - cp -dpf $(STAGING_DIR)/lib/lib-org-xml-sax.so* $(TARGET_DIR)/usr/lib/ - mkdir -p $(TARGET_DIR)/usr/lib/security - cp -dpf $(STAGING_DIR)/usr/lib/security/libgcj.security \ - $(TARGET_DIR)/usr/lib/security/ - cp -dpf $(STAGING_DIR)/usr/lib/security/classpath.security \ - $(TARGET_DIR)/usr/lib/security/ -endif - mkdir -p $(@D) - touch $@ - -cross_compiler:=$(STAGING_DIR)/usr/bin/$(REAL_GNU_TARGET_NAME)-gcc -cross_compiler gcc: gcc-config $(GCC_BUILD_DIR2)/.installed \ - $(STAMP_DIR)/gcc_libs_target_installed \ - $(GCC_TARGETS) - -gcc-source: $(DL_DIR)/$(GCC_SOURCE) - -gcc-config: uclibc-configured binutils gcc_initial $(LIBFLOAT_TARGET) \ - uclibc $(GCC_BUILD_DIR2)/.configured - -gcc-clean: - rm -rf $(GCC_BUILD_DIR2) - for prog in cpp gcc gcc-[0-9]* protoize unprotoize gcov gccbug cc; do \ - rm -f $(STAGING_DIR)/usr/bin/$(REAL_GNU_TARGET_NAME)-$$prog; \ - rm -f $(STAGING_DIR)/usr/bin/$(GNU_TARGET_NAME)-$$prog; \ - done - -gcc-dirclean: gcc_initial-dirclean - rm -rf $(GCC_BUILD_DIR2) - -############################################################# -# -# Next build target gcc compiler -# -############################################################# -GCC_BUILD_DIR3:=$(BUILD_DIR)/gcc-$(GCC_VERSION)-target - -$(GCC_BUILD_DIR3)/.prepared: $(STAMP_DIR)/gcc_libs_target_installed $(GCC_TARGET_PREREQ) - mkdir -p $(GCC_BUILD_DIR3) - touch $@ - -$(GCC_BUILD_DIR3)/.configured: $(GCC_BUILD_DIR3)/.prepared - (cd $(GCC_BUILD_DIR3); rm -rf config.cache; \ - $(TARGET_CONFIGURE_OPTS) \ - CFLAGS_FOR_BUILD="-g -O2 $(HOST_CFLAGS)" \ - $(TARGET_GCC_FLAGS) \ - $(GCC_DIR)/configure $(QUIET) \ - --prefix=/usr \ - --build=$(GNU_HOST_NAME) \ - --host=$(REAL_GNU_TARGET_NAME) \ - --target=$(REAL_GNU_TARGET_NAME) \ - --enable-languages=$(GCC_TARGET_LANGUAGES) \ - --with-gxx-include-dir=/usr/include/c++ \ - --disable-__cxa_atexit \ - --with-gnu-ld \ - --with-gnu-as \ - --disable-libssp \ - $(GCC_SHARED_LIBGCC) \ - $(GCC_WITH_TARGET_GMP) \ - $(GCC_WITH_TARGET_MPFR) \ - $(DISABLE_NLS) \ - $(THREADS) \ - $(MULTILIB) \ - $(SOFT_FLOAT_CONFIG_OPTION) \ - $(GCC_WITH_ABI) $(GCC_WITH_ARCH) $(GCC_WITH_TUNE) \ - $(GCC_USE_SJLJ_EXCEPTIONS) \ - $(DISABLE_LARGEFILE) \ - $(EXTRA_GCC_CONFIG_OPTIONS) \ - $(EXTRA_TARGET_GCC_CONFIG_OPTIONS) \ - ) - touch $@ - -$(GCC_BUILD_DIR3)/.compiled: $(GCC_BUILD_DIR3)/.configured - PATH=$(TARGET_PATH) \ - $(MAKE) $(TARGET_CONFIGURE_OPTS) \ - CFLAGS_FOR_BUILD="-g -O2 $(HOST_CFLAGS)" \ - $(TARGET_GCC_FLAGS) \ - -C $(GCC_BUILD_DIR3) all - touch $@ - -# -# gcc-lib dir changes names to gcc with 3.4.mumble -# -ifeq ($(findstring 3.4.,$(GCC_VERSION)),3.4.) -GCC_LIB_SUBDIR=lib/gcc/$(REAL_GNU_TARGET_NAME)/$(GCC_VERSION) -else -GCC_LIB_SUBDIR=lib/gcc-lib/$(REAL_GNU_TARGET_NAME)/$(GCC_VERSION) -endif -# sigh... we need to find a better way -ifeq ($(findstring 4.0.,$(GCC_VERSION)),4.0.) -GCC_LIB_SUBDIR=lib/gcc/$(REAL_GNU_TARGET_NAME)/$(GCC_VERSION) -endif -ifeq ($(findstring 4.1.,$(GCC_VERSION)),4.1.) -GCC_LIB_SUBDIR=lib/gcc/$(REAL_GNU_TARGET_NAME)/$(GCC_VERSION) -endif -ifeq ($(findstring 4.2,$(GCC_VERSION)),4.2) -ifneq ($(findstring 4.2.,$(GCC_VERSION)),4.2.) -REAL_GCC_VERSION=$(shell cat $(GCC_DIR)/gcc/BASE-VER) -GCC_LIB_SUBDIR=lib/gcc/$(REAL_GNU_TARGET_NAME)/$(REAL_GCC_VERSION) -else -GCC_LIB_SUBDIR=lib/gcc/$(REAL_GNU_TARGET_NAME)/$(GCC_VERSION) -endif -endif - -$(TARGET_DIR)/usr/bin/gcc: $(GCC_BUILD_DIR3)/.compiled - PATH=$(TARGET_PATH) \ - $(MAKE) $(TARGET_CONFIGURE_OPTS) \ - CFLAGS_FOR_BUILD="-g -O2 $(HOST_CFLAGS)" \ - $(TARGET_GCC_FLAGS) \ - DESTDIR=$(TARGET_DIR) \ - -C $(GCC_BUILD_DIR3) install - # Remove broken specs file (cross compile flag is set). - rm -f $(TARGET_DIR)/usr/$(GCC_LIB_SUBDIR)/specs - # - # Now for the ugly 3.3.x soft float hack... - # -ifeq ($(BR2_SOFT_FLOAT),y) -ifeq ($(findstring 3.3.,$(GCC_VERSION)),3.3.) - # Add a specs file that defaults to soft float mode. - cp toolchain/gcc/$(GCC_VERSION)/specs-$(ARCH)-soft-float $(TARGET_DIR)/usr/lib/gcc-lib/$(REAL_GNU_TARGET_NAME)/$(GCC_VERSION)/specs - # Make sure gcc does not think we are cross compiling - $(SED) "s/^1/0/;" $(TARGET_DIR)/usr/lib/gcc-lib/$(REAL_GNU_TARGET_NAME)/$(GCC_VERSION)/specs -endif -endif - # - # Ok... that's enough of that. - # - -(cd $(TARGET_DIR)/bin && find -type f | xargs $(STRIPCMD) > /dev/null 2>&1) - -(cd $(TARGET_DIR)/usr/bin && find -type f | xargs $(STRIPCMD) > /dev/null 2>&1) - -(cd $(TARGET_DIR)/usr/$(GCC_LIB_SUBDIR) && $(STRIPCMD) cc1 cc1plus collect2 > /dev/null 2>&1) - -(cd $(TARGET_DIR)/usr/lib && $(STRIPCMD) libstdc++.so.*.*.* > /dev/null 2>&1) - -(cd $(TARGET_DIR)/lib && $(STRIPCMD) libgcc_s*.so.*.*.* > /dev/null 2>&1) - # - rm -f $(TARGET_DIR)/usr/lib/*.la* - #rm -rf $(TARGET_DIR)/share/locale $(TARGET_DIR)/usr/info \ - # $(TARGET_DIR)/usr/man $(TARGET_DIR)/usr/share/doc - # Work around problem of missing syslimits.h - if [ ! -f $(TARGET_DIR)/usr/$(GCC_LIB_SUBDIR)/include/syslimits.h ]; then \ - echo "warning: working around missing syslimits.h"; \ - cp -f $(STAGING_DIR)/usr/$(GCC_LIB_SUBDIR)/include/syslimits.h \ - $(TARGET_DIR)/usr/$(GCC_LIB_SUBDIR)/include/; \ - fi - # Make sure we have 'cc'. - if [ ! -e $(TARGET_DIR)/usr/bin/cc ]; then \ - ln -snf gcc $(TARGET_DIR)/usr/bin/cc; \ - fi - # These are in /lib, so... - #rm -rf $(TARGET_DIR)/usr/lib/libgcc_s*.so* - #touch -c $(TARGET_DIR)/usr/bin/gcc - -gcc_target: uclibc_target binutils_target $(TARGET_DIR)/usr/bin/gcc - -gcc_target-clean: - rm -rf $(GCC_BUILD_DIR3) - rm -f $(TARGET_DIR)/usr/bin/$(REAL_GNU_TARGET_NAME)* - -gcc_target-dirclean: - rm -rf $(GCC_BUILD_DIR3) - -endif -# gcc-3.x only - -endif |