Changeset 65

Show
Ignore:
Timestamp:
06/16/06 08:14:56 (3 years ago)
Author:
wbx
Message:

cleanup toolchain Makefiles, Config.in is removed, we should always use a working and very well tested toolchain, developers who care about compiler optimizations should be able to change the settings

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • trunk/freewrt/Config.in

    r28 r65  
    102102source "target/linux/Config.in" 
    103103source "package/Config.in" 
    104 source "toolchain/Config.in" 
  • trunk/freewrt/toolchain/binutils/Makefile

    r43 r65  
     1# $FreeWRT$ 
     2 
    13include $(TOPDIR)/rules.mk 
    24 
    3 ############################################################# 
    4 
    5 # build binutils for use on the host system 
    6 
    7 ############################################################# 
    8 BINUTILS_VERSION:=$(strip $(subst ",, $(BR2_BINUTILS_VERSION))) 
    9 #" 
    10  
    11 BINUTILS_SITE:=http://www.fr.kernel.org/pub/linux/devel/binutils \ 
    12                http://www.fi.kernel.org/pub/linux/devel/binutils \ 
    13                http://ftp.kernel.org/pub/linux/devel/binutils \ 
    14                http://www.de.kernel.org/pub/linux/devel/binutils 
    15  
    16 BINUTILS_STABLE_SITE:=http://ftp.gnu.org/gnu/binutils/ \ 
     5BINUTILS_VERSION:=2.16.1 
     6BINUTILS_SITE:=http://ftp.gnu.org/gnu/binutils/ \ 
    177        ftp://gatekeeper.dec.com/pub/GNU/ \ 
    188        ftp://ftp.uu.net/archive/systems/gnu/ \ 
     
    2010        ftp://ftp.funet.fi/pub/gnu/prep/ \ 
    2111        ftp://ftp.leo.org/pub/comp/os/unix/gnu/  
    22  
    23 ifeq ($(BINUTILS_VERSION),2.16.1) 
    24 BINUTILS_SITE:=$(BINUTILS_STABLE_SITE) 
    25 endif 
    2612 
    2713BINUTILS_SOURCE:=binutils-$(BINUTILS_VERSION).tar.bz2 
     
    5541                --target=$(REAL_GNU_TARGET_NAME) \ 
    5642                --disable-werror \ 
    57                 $(DISABLE_NLS) \ 
    58                 $(MULTILIB) \ 
    59                 $(SOFT_FLOAT_CONFIG_OPTION) ); 
     43                --disable-nls \ 
     44        ); 
    6045        touch $(BINUTILS_DIR1)/.configured 
    6146 
  • trunk/freewrt/toolchain/gcc/Makefile

    r43 r65  
    2121include $(TOPDIR)/rules.mk 
    2222 
    23 GCC_VERSION:=$(strip $(GCC_VERSION)) 
    24  
    25 #GCC_SITE:=ftp://ftp.gnu.org/gnu/gcc/releases/gcc-$(GCC_VERSION) 
     23GCC_VERSION:=3.4.4 
    2624GCC_SITE:=ftp://ftp.fu-berlin.de/unix/languages/gcc/releases/gcc-$(GCC_VERSION) \ 
    2725        http://mirrors.rcn.net/pub/sourceware/gcc/releases/gcc-$(GCC_VERSION) 
     
    3230GCC_STRIP_HOST_BINARIES:=true 
    3331 
    34 ############################################################# 
    35 # 
    36 # Setup some initial stuff 
    37 # 
    38 ############################################################# 
    39  
    40 ifeq ($(BR2_INSTALL_LIBGCJ),y) 
    41 TARGET_LANGUAGES:=c,c++,java 
    42 else 
    43 ifeq ($(BR2_INSTALL_LIBSTDCPP),y) 
    4432TARGET_LANGUAGES:=c,c++ 
    45 else 
    46 TARGET_LANGUAGES:=c 
    47 endif 
    48 endif 
    4933 
    5034############################################################# 
     
    6347        mkdir -p $(TOOL_BUILD_DIR) 
    6448        $(GCC_CAT) $(DL_DIR)/$(GCC_SOURCE) | (cd $(TOOL_BUILD_DIR); $(TAR_EXTRACT) ) 
    65         touch $(GCC_DIR)/.unpacked 
     49        touch $@ 
    6650 
    6751$(GCC_DIR)/.patched: $(GCC_DIR)/.unpacked 
    6852        # Apply any files named gcc-*.patch from the source directory to gcc 
    6953        $(SCRIPT_DIR)/patch-kernel.sh $(GCC_DIR) ./$(GCC_VERSION) \*.patch 
    70         # Note: The soft float situation has improved considerably with gcc 3.4.x. 
    71         # We can dispense with the custom spec files, as well as libfloat for the arm case. 
    72         # However, we still need a patch for arm.  There's a similar patch for gcc 3.3.x 
    73         # which needs to be integrated so we can kill of libfloat for good. 
    74 ifeq ($(BR2_SOFT_FLOAT),y) 
    75 ifeq ("$(strip $(ARCH))","arm") 
    76         $(SCRIPT_DIR)/patch-kernel.sh $(GCC_DIR) ./$(GCC_VERSION) arm-softfloat.patch.conditional 
    77 endif 
    78 ifeq ("$(strip $(ARCH))","armeb") 
    79         $(SCRIPT_DIR)/patch-kernel.sh $(GCC_DIR) ./$(GCC_VERSION) arm-softfloat.patch.conditional 
    80 endif 
    81 endif 
    8254        $(SED) 's,\(version_string.. = "[0-9\.]*\).*\(";\),\1 (FreeWrt)\2,' $(GCC_DIR)/gcc/version.c 
    8355        $(SED) 's,\(bug_report_url.. = "\).*\(";\),\1<URL:http://www.freewrt.org/development>\2,' $(GCC_DIR)/gcc/version.c 
    84         touch $(GCC_DIR)/.patched 
    85  
    86 # The --without-headers option stopped working with gcc 3.0 and has never been 
    87 # # fixed, so we need to actually have working C library header files prior to 
    88 # # the step or libgcc will not build... 
     56        touch $@ 
    8957 
    9058$(GCC_BUILD_DIR1)/.configured: $(GCC_DIR)/.patched 
     
    10270                --enable-target-optspace \ 
    10371                --with-gnu-ld \ 
    104                 $(DISABLE_NLS) \ 
    105                 $(MULTILIB) \ 
    106                 $(SOFT_FLOAT_CONFIG_OPTION) \ 
    107                 $(GCC_WITH_CPU) $(GCC_WITH_ARCH) $(GCC_WITH_TUNE) \ 
    108                 $(EXTRA_GCC_CONFIG_OPTIONS)); 
    109         touch $(GCC_BUILD_DIR1)/.configured 
     72                --disable-nls \ 
     73                --enable-largefile \ 
     74        ); 
     75        touch $@ 
    11076 
    11177$(GCC_BUILD_DIR1)/.compiled: $(GCC_BUILD_DIR1)/.configured 
    11278        PATH=$(TARGET_PATH) $(MAKE) -C $(GCC_BUILD_DIR1) all-gcc 
    113         touch $(GCC_BUILD_DIR1)/.compiled 
     79        touch $@ 
    11480 
    11581$(STAGING_DIR)/bin/$(REAL_GNU_TARGET_NAME)-gcc: $(GCC_BUILD_DIR1)/.compiled 
     
    12288# 
    12389############################################################# 
    124 # 
    125 # Sigh... I had to rework things because using --with-gxx-include-dir 
    126 # causes issues with include dir search order for g++.  This seems to 
    127 # have something to do with "path translations" and possibly doesn't 
    128 # affect gcc-target.  However, I haven't tested gcc-target yet so no 
    129 # guarantees.  mjn3 
    13090 
    13191GCC_BUILD_DIR2:=$(TOOL_BUILD_DIR)/gcc-$(GCC_VERSION)-final 
     
    148108                --enable-target-optspace \ 
    149109                --with-gnu-ld \ 
    150                 $(DISABLE_NLS) \ 
    151                 $(MULTILIB) \ 
    152                 $(SOFT_FLOAT_CONFIG_OPTION) \ 
    153                 $(GCC_WITH_CPU) $(GCC_WITH_ARCH) $(GCC_WITH_TUNE) \ 
    154                 $(GCC_USE_SJLJ_EXCEPTIONS) \ 
    155                 $(EXTRA_GCC_CONFIG_OPTIONS)); 
    156         touch $(GCC_BUILD_DIR2)/.configured 
     110                --disable-nls \ 
     111                --enable-largefile \ 
     112        ); 
     113        touch $@ 
    157114 
    158115$(GCC_BUILD_DIR2)/.compiled: $(GCC_BUILD_DIR2)/.configured 
    159116        PATH=$(TARGET_PATH) $(MAKE) -C $(GCC_BUILD_DIR2) all 
    160         touch $(GCC_BUILD_DIR2)/.compiled 
     117        touch $@ 
    161118 
    162119gcc-install: $(GCC_BUILD_DIR2)/.compiled 
     
    173130                done; \ 
    174131        ); 
    175         # 
    176         # Now for the ugly 3.3.x soft float hack... 
    177         # 
    178 ifeq ($(BR2_SOFT_FLOAT),y) 
    179 ifeq ($(findstring 3.3.,$(GCC_VERSION)),3.3.) 
    180         # Make sure we have a soft float specs file for this arch 
    181         if [ ! -f ./$(GCC_VERSION)/specs-$(ARCH)-soft-float ] ; then \ 
    182                 echo soft float configured but no specs file for this arch ; \ 
    183                 /bin/false ; \ 
    184         fi; 
    185         # Replace specs file with one that defaults to soft float mode. 
    186         if [ ! -f $(STAGING_DIR)/lib/gcc-lib/$(REAL_GNU_TARGET_NAME)/$(GCC_VERSION)/specs ] ; then \ 
    187                 echo staging dir specs file is missing ; \ 
    188                 /bin/false ; \ 
    189         fi; 
    190         $(CP) ./$(GCC_VERSION)/specs-$(ARCH)-soft-float $(STAGING_DIR)/lib/gcc-lib/$(REAL_GNU_TARGET_NAME)/$(GCC_VERSION)/specs 
    191 endif 
    192 endif 
    193132# We do another ugly hack here because the standard behaviour is 
    194133# to include a reference to libgcc.so.1 in all binaries. For flash space 
  • trunk/freewrt/toolchain/uClibc/Makefile

    r44 r65  
     1# $FreeWRT$ 
     2 
    13include $(TOPDIR)/rules.mk 
    24 
    3 ############################################################# 
    4 # 
    5 # uClibc (the C library) 
    6 # 
    7 ############################################################# 
    8  
    9 ifeq ($(BR2_UCLIBC_VERSION_SNAPSHOT),y) 
    10 # Be aware that this changes daily.... 
    11 UCLIBC_DIR:=$(TOOL_BUILD_DIR)/uClibc 
    12 UCLIBC_SOURCE:=uClibc-$(strip $(subst ",, $(BR2_USE_UCLIBC_SNAPSHOT))).tar.bz2 
    13 #" 
    14 UCLIBC_SITE:=http://www.uclibc.org/downloads/snapshots 
    15 UCLIBC_VER:=PKG_VERSION:=0.${shell date +"%G%m%d"} 
    16 else 
    175UCLIBC_VER:=0.9.28 
    186UCLIBC_DIR:=$(TOOL_BUILD_DIR)/uClibc-$(UCLIBC_VER) 
    197UCLIBC_SOURCE:=uClibc-$(UCLIBC_VER).tar.bz2 
    208UCLIBC_SITE:=http://www.uclibc.org/downloads 
    21 endif 
    229 
    2310UCLIBC_TARGET_ARCH:=$(shell echo $(ARCH) | sed -e s'/-.*//' \ 
     
    5138        $(SED) 's,^KERNEL_SOURCE=.*,KERNEL_SOURCE=\"$(LINUX_HEADERS_DIR)\",g' \ 
    5239                $(UCLIBC_DIR)/.config 
    53 ifeq ($(BR2_LARGEFILE),y) 
    5440        $(SED) 's,^.*UCLIBC_HAS_LFS.*,UCLIBC_HAS_LFS=y,g' $(UCLIBC_DIR)/.config 
    55 else 
    56         $(SED) 's,^.*UCLIBC_HAS_LFS.*,UCLIBC_HAS_LFS=n,g' $(UCLIBC_DIR)/.config 
    57 endif 
    5841        $(SED) 's,.*UCLIBC_HAS_WCHAR.*,UCLIBC_HAS_WCHAR=y,g' $(UCLIBC_DIR)/.config 
    59 ifeq ($(BR2_SOFT_FLOAT),y) 
    60         $(SED) 's,.*HAS_FPU.*,HAS_FPU=n\nUCLIBC_HAS_FLOATS=y\nUCLIBC_HAS_SOFT_FLOAT=y,g' $(UCLIBC_DIR)/.config 
    61 endif 
    6242        mkdir -p $(TOOL_BUILD_DIR)/uClibc_dev/usr/include 
    6343        mkdir -p $(TOOL_BUILD_DIR)/uClibc_dev/usr/lib