From d322f37644811964ee7da64c4d3fcffd8898869f Mon Sep 17 00:00:00 2001 From: Eric Andersen Date: Wed, 12 Feb 2003 08:10:40 +0000 Subject: [PATCH] Lots and lots of changes --- make/autoconf.mk | 5 +- make/automake.mk | 7 +- make/bash.mk | 3 +- make/berkeleydb.mk | 2 +- make/coreutils.mk | 2 +- make/dhcp_relay.mk | 5 +- make/ext2root.mk | 2 +- make/findutils.mk | 2 +- make/gawk.mk | 5 +- make/gcc_target.mk | 37 +++++++--- make/gdb.mk | 4 +- make/gdbserver.mk | 4 +- make/jpeg.mk | 2 +- make/libglib12.mk | 2 +- make/libtool.mk | 3 +- make/links.mk | 2 +- make/lrzsz.mk | 2 +- make/m4.mk | 3 +- make/make.mk | 8 +-- make/mke2fs.mk | 2 +- make/ncurses.mk | 14 ++-- make/netkitbase.mk | 2 +- make/netkittelnet.mk | 2 +- make/newt.mk | 2 +- make/ntp.mk | 2 +- make/openssh.mk | 2 +- make/openssl.mk | 8 +++ make/pciutils.mk | 2 +- make/pppd.mk | 2 +- make/rxvt.mk | 2 +- make/sed.mk | 2 +- make/socat.mk | 2 +- make/strace.mk | 2 +- make/tn5250.mk | 2 +- make/uclibc_toolchain.mk | 121 +++++++++++++++++--------------- make/uclibc_toolchain_2_95.mk | 70 +++++++++--------- make/udhcp.mk | 1 + make/valgrind.mk | 5 +- make/zlib.mk | 3 + sources/busybox.config | 11 ++- sources/gcc-002-mips-swfp.patch | 52 -------------- 41 files changed, 204 insertions(+), 207 deletions(-) delete mode 100644 sources/gcc-002-mips-swfp.patch diff --git a/make/autoconf.mk b/make/autoconf.mk index 0067702674..92b4df36d5 100644 --- a/make/autoconf.mk +++ b/make/autoconf.mk @@ -20,8 +20,8 @@ $(AUTOCONF_DIR)/.unpacked: $(DL_DIR)/$(AUTOCONF_SOURCE) touch $(AUTOCONF_DIR)/.unpacked $(AUTOCONF_DIR)/.configured: $(AUTOCONF_DIR)/.unpacked - (cd $(AUTOCONF_DIR); rm -rf config.cache; PATH=$(STAGING_DIR)/bin:$$PATH \ - CC=$(TARGET_CC) EMACS="no" \ + (cd $(AUTOCONF_DIR); rm -rf config.cache; \ + PATH=$(TARGET_PATH) CC=$(TARGET_CC) EMACS="no" \ ./configure \ --target=$(GNU_TARGET_NAME) \ --prefix=/usr \ @@ -41,7 +41,6 @@ $(AUTOCONF_DIR)/bin/$(AUTOCONF_BINARY): $(AUTOCONF_DIR)/.configured $(MAKE) CC=$(TARGET_CC) -C $(AUTOCONF_DIR) $(TARGET_DIR)/$(AUTOCONF_TARGET_BINARY): $(AUTOCONF_DIR)/bin/$(AUTOCONF_BINARY) - PATH=$(STAGING_DIR)/bin:$$PATH CC=$(TARGET_CC) \ $(MAKE) \ prefix=$(TARGET_DIR)/usr \ exec_prefix=$(TARGET_DIR)/usr \ diff --git a/make/automake.mk b/make/automake.mk index 02e0d968b6..bc226c10f4 100644 --- a/make/automake.mk +++ b/make/automake.mk @@ -21,7 +21,7 @@ $(AUTOMAKE_DIR)/.unpacked: $(DL_DIR)/$(AUTOMAKE_SOURCE) $(AUTOMAKE_DIR)/.configured: $(AUTOMAKE_DIR)/.unpacked (cd $(AUTOMAKE_DIR); rm -rf config.cache; \ - PATH=$(STAGING_DIR)/bin:$$PATH CC=$(TARGET_CC) \ + PATH=$(TARGET_PATH) CC=$(TARGET_CC) \ ./configure \ --target=$(GNU_TARGET_NAME) \ --prefix=/usr \ @@ -38,11 +38,10 @@ $(AUTOMAKE_DIR)/.configured: $(AUTOMAKE_DIR)/.unpacked touch $(AUTOMAKE_DIR)/.configured $(AUTOMAKE_DIR)/$(AUTOMAKE_BINARY): $(AUTOMAKE_DIR)/.configured - $(MAKE) CC=$(TARGET_CC) -C $(AUTOMAKE_DIR) + $(MAKE) -C $(AUTOMAKE_DIR) touch -c $(AUTOMAKE_DIR)/$(AUTOMAKE_BINARY) $(TARGET_DIR)/$(AUTOMAKE_TARGET_BINARY): $(AUTOMAKE_DIR)/$(AUTOMAKE_BINARY) - PATH=$(STAGING_DIR)/bin:$$PATH CC=$(TARGET_CC) \ $(MAKE) \ prefix=$(TARGET_DIR)/usr \ exec_prefix=$(TARGET_DIR)/usr \ @@ -63,7 +62,7 @@ $(TARGET_DIR)/$(AUTOMAKE_TARGET_BINARY): $(AUTOMAKE_DIR)/$(AUTOMAKE_BINARY) automake: uclibc $(TARGET_DIR)/$(AUTOMAKE_TARGET_BINARY) automake-clean: - $(MAKE) DESTDIR=$(TARGET_DIR) CC=$(TARGET_CC) -C $(AUTOMAKE_DIR) uninstall + $(MAKE) DESTDIR=$(TARGET_DIR) -C $(AUTOMAKE_DIR) uninstall -$(MAKE) -C $(AUTOMAKE_DIR) clean automake-dirclean: diff --git a/make/bash.mk b/make/bash.mk index 302244c65b..da4c733ec3 100644 --- a/make/bash.mk +++ b/make/bash.mk @@ -21,8 +21,7 @@ $(BASH_DIR)/.unpacked: $(DL_DIR)/$(BASH_SOURCE) $(BASH_DIR)/.configured: $(BASH_DIR)/.unpacked (cd $(BASH_DIR); rm -rf config.cache; \ - PATH=$(STAGING_DIR)/bin:$$PATH \ - CC=$(TARGET_CC) CC_FOR_BUILD=$(HOSTCC) \ + PATH=$(TARGET_PATH) CC=$(TARGET_CC) CC_FOR_BUILD=$(HOSTCC) \ ./configure \ --target=$(GNU_TARGET_NAME) \ --host=$(GNU_TARGET_NAME) \ diff --git a/make/berkeleydb.mk b/make/berkeleydb.mk index a907cec6e4..e6bcfb29cf 100644 --- a/make/berkeleydb.mk +++ b/make/berkeleydb.mk @@ -19,7 +19,7 @@ $(DB_DIR)/.dist: $(DL_DIR)/$(DB_SOURCE) $(DB_DIR)/.configured: $(DB_DIR)/.dist (cd $(DB_DIR)/build_unix; rm -rf config.cache; \ - PATH=$(STAGING_DIR)/bin:$$PATH CC=$(TARGET_CC) \ + PATH=$(TARGET_PATH) CC=$(TARGET_CC) \ ../dist/configure \ --target=$(GNU_TARGET_NAME) \ --prefix=/usr \ diff --git a/make/coreutils.mk b/make/coreutils.mk index 96869e0969..ebfd11b9ae 100644 --- a/make/coreutils.mk +++ b/make/coreutils.mk @@ -23,7 +23,7 @@ $(COREUTILS_DIR)/.unpacked: $(DL_DIR)/$(COREUTILS_SOURCE) $(COREUTILS_DIR)/.configured: $(COREUTILS_DIR)/.unpacked (cd $(COREUTILS_DIR); rm -rf config.cache; \ - PATH=$(STAGING_DIR)/bin:$$PATH CC=$(TARGET_CC) \ + PATH=$(TARGET_PATH) CC=$(TARGET_CC) \ ./configure \ --target=$(GNU_TARGET_NAME) \ --prefix=/usr \ diff --git a/make/dhcp_relay.mk b/make/dhcp_relay.mk index a5e24d1ef3..31651ef8cf 100644 --- a/make/dhcp_relay.mk +++ b/make/dhcp_relay.mk @@ -23,10 +23,7 @@ $(DHCP_RELAY_DIR)/.unpacked: $(DL_DIR)/$(DHCP_RELAY_SOURCE) touch $(DHCP_RELAY_DIR)/.unpacked $(DHCP_RELAY_DIR)/.configured: $(DHCP_RELAY_DIR)/.unpacked - (cd $(DHCP_RELAY_DIR); PATH=$(STAGING_DIR)/bin:$$PATH \ - CC=$(TARGET_CC) \ - ./configure \ - ); + (cd $(DHCP_RELAY_DIR); PATH=$(TARGET_PATH) CC=$(TARGET_CC) ./configure ); touch $(DHCP_RELAY_DIR)/.configured $(DHCP_RELAY_DIR)/$(DHCP_RELAY_BINARY): $(DHCP_RELAY_DIR)/.configured diff --git a/make/ext2root.mk b/make/ext2root.mk index f9c79b0001..e5ad68968a 100644 --- a/make/ext2root.mk +++ b/make/ext2root.mk @@ -37,7 +37,7 @@ GENEXT2_REALSIZE=$(subst total,, $(shell du $(TARGET_DIR) -s -c -k | grep total GENEXT2_SIZE=$(shell expr $(GENEXT2_REALSIZE) + $(GENEXT2_ADDTOROOTSIZE)) # We currently add about 400 device nodes, so add that into the total GENEXT2_INODES=$(shell expr $(shell find $(TARGET_DIR) | wc -l) + 400) -#GENEXT2_SIZE=100000 +GENEXT2_SIZE=100000 ext2root: genext2fs -@find $(TARGET_DIR)/lib -type f -name \*.so\* | xargs $(STRIP) --strip-unneeded 2>/dev/null || true; diff --git a/make/findutils.mk b/make/findutils.mk index 0a521cfa29..540965e5ea 100644 --- a/make/findutils.mk +++ b/make/findutils.mk @@ -24,7 +24,7 @@ $(FINDUTILS_DIR)/.unpacked: $(DL_DIR)/$(FINDUTILS_SOURCE) $(FINDUTILS_DIR)/.configured: $(FINDUTILS_DIR)/.unpacked (cd $(FINDUTILS_DIR); rm -rf config.cache; \ - PATH=$(STAGING_DIR)/bin:$$PATH CC=$(TARGET_CC) \ + PATH=$(TARGET_PATH) CC=$(TARGET_CC) \ ./configure \ --target=$(GNU_TARGET_NAME) \ --prefix=/usr \ diff --git a/make/gawk.mk b/make/gawk.mk index 84e85c27ed..691dff4a76 100644 --- a/make/gawk.mk +++ b/make/gawk.mk @@ -21,7 +21,7 @@ $(GAWK_DIR)/.unpacked: $(DL_DIR)/$(GAWK_SOURCE) $(GAWK_DIR)/.configured: $(GAWK_DIR)/.unpacked (cd $(GAWK_DIR); rm -rf config.cache; \ - PATH=$(STAGING_DIR)/bin:$$PATH CC=$(TARGET_CC) \ + PATH=$(TARGET_PATH) CC=$(TARGET_CC) \ ./configure \ --target=$(GNU_TARGET_NAME) \ --prefix=/usr \ @@ -42,7 +42,10 @@ $(GAWK_DIR)/$(GAWK_BINARY): $(GAWK_DIR)/.configured $(MAKE) CC=$(TARGET_CC) -C $(GAWK_DIR) $(TARGET_DIR)/$(GAWK_TARGET_BINARY): $(GAWK_DIR)/$(GAWK_BINARY) + rm -f $(TARGET_DIR)/usr/bin/awk $(MAKE) DESTDIR=$(TARGET_DIR) CC=$(TARGET_CC) -C $(GAWK_DIR) install + rm -f $(TARGET_DIR)/usr/bin/gawk-* + (cd $(TARGET_DIR)/usr/bin; ln -sf gawk awk) rm -rf $(TARGET_DIR)/share/locale $(TARGET_DIR)/usr/info \ $(TARGET_DIR)/usr/man $(TARGET_DIR)/usr/share/doc diff --git a/make/gcc_target.mk b/make/gcc_target.mk index 7bef9ff61d..6c1236b58e 100644 --- a/make/gcc_target.mk +++ b/make/gcc_target.mk @@ -48,10 +48,8 @@ $(BINUTILS_DIR2)/.configured: mkdir -p $(BINUTILS_DIR2) mkdir -p $(TARGET_DIR)/usr/include mkdir -p $(TARGET_DIR)/usr/$(GNU_TARGET_NAME)/ - #(cd $(TARGET_DIR)/usr/$(GNU_TARGET_NAME); ln -fs ../lib) - #(cd $(TARGET_DIR)/usr/$(GNU_TARGET_NAME); ln -fs ../include) (cd $(TARGET_DIR)/usr/$(GNU_TARGET_NAME); ln -fs ../include sys-include) - (cd $(BINUTILS_DIR2); PATH=$(STAGING_DIR)/bin:$$PATH AR=$(TARGET_CROSS)ar \ + (cd $(BINUTILS_DIR2); PATH=$(TARGET_PATH) AR=$(TARGET_CROSS)ar \ RANLIB=$(TARGET_CROSS)ranlib LD=$(TARGET_CROSS)ld NM=$(TARGET_CROSS)nm \ CC=$(TARGET_CROSS)gcc \ $(BINUTILS_DIR)/configure \ @@ -70,23 +68,24 @@ $(BINUTILS_DIR2)/.configured: --infodir=/usr/info \ --includedir=$(STAGING_DIR)/include \ --with-gxx-include-dir=$(STAGING_DIR)/include/c++ \ - --disable-shared $(MULTILIB) \ + --enable-shared $(MULTILIB) \ --program-prefix="" \ ); touch $(BINUTILS_DIR2)/.configured $(BINUTILS_DIR2)/binutils/objdump: $(BINUTILS_DIR2)/.configured - PATH=$(STAGING_DIR)/bin:$$PATH $(MAKE) AR=$(TARGET_CROSS)ar \ + $(MAKE) AR=$(TARGET_CROSS)ar \ RANLIB=$(TARGET_CROSS)ranlib LD=$(TARGET_CROSS)ld \ CC=$(TARGET_CROSS)gcc GCC_FOR_TARGET=$(TARGET_CROSS)gcc \ - CC_FOR_TARGET=$(TARGET_CROSS)gcc -C $(BINUTILS_DIR2) + CC_FOR_TARGET=$(TARGET_CROSS)gcc tooldir=/usr -C $(BINUTILS_DIR2) $(TARGET_DIR)/usr/bin/ld: $(BINUTILS_DIR2)/binutils/objdump - PATH=$(STAGING_DIR)/bin:$$PATH CC=$(HOSTCC) GCC_FOR_TARGET=$(TARGET_CROSS)gcc \ + CC=$(HOSTCC) GCC_FOR_TARGET=$(TARGET_CROSS)gcc \ AR_FOR_TARGET=$(TARGET_CROSS)ar RANLIB_FOR_TARGET=$(TARGET_CROSS)ranlib \ LD_FOR_TARGET=$(TARGET_CROSS)ld NM_FOR_TARGET=$(TARGET_CROSS)nm \ CC_FOR_TARGET=$(TARGET_CROSS)gcc \ $(MAKE) \ + tooldor=/usr \ prefix=$(TARGET_DIR)/usr \ exec_prefix=$(TARGET_DIR)/usr \ bindir=$(TARGET_DIR)/usr/bin \ @@ -109,7 +108,16 @@ $(TARGET_DIR)/usr/bin/ld: $(BINUTILS_DIR2)/binutils/objdump -$(STRIP) $(TARGET_DIR)/usr/bin/* $(TARGET_DIR)/usr/lib/libg.a: - $(STAGING_DIR)/$(GNU_TARGET_NAME)/bin/ar rv $(TARGET_DIR)/usr/lib/libg.a; + $(TARGET_CROSS)ar rv $(TARGET_DIR)/usr/lib/libg.a; + cp $(BINUTILS_DIR)/include/ansidecl.h $(TARGET_DIR)/usr/include/ + cp $(BINUTILS_DIR)/include/bfdlink.h $(TARGET_DIR)/usr/include/ + cp $(BINUTILS_DIR)/include/dis-asm.h $(TARGET_DIR)/usr/include/ + cp $(BINUTILS_DIR)/include/libiberty.h $(TARGET_DIR)/usr/include/ + cp $(BINUTILS_DIR)/include/symcat.h $(TARGET_DIR)/usr/include/ + cp $(BINUTILS_DIR2)/bfd/bfd.h $(TARGET_DIR)/usr/include/ + cp -a $(BINUTILS_DIR2)/bfd/.libs/* $(TARGET_DIR)/usr/lib/ + cp -a $(BINUTILS_DIR2)/opcodes/.libs/* $(TARGET_DIR)/usr/lib/ + cp -a $(BINUTILS_DIR2)/libiberty/libiberty.a $(TARGET_DIR)/usr/lib/ binutils_target: gcc_final $(TARGET_DIR)/usr/bin/ld $(TARGET_DIR)/usr/lib/libg.a @@ -133,6 +141,8 @@ $(TARGET_DIR)/usr/lib/libc.a: $(STAGING_DIR)/lib/libc.a $(MAKE) DEVEL_PREFIX=$(TARGET_DIR)/usr SYSTEM_DEVEL_PREFIX=$(TARGET_DIR) \ DEVEL_TOOL_PREFIX=$(TARGET_DIR) -C $(UCLIBC_DIR) \ install_dev + #remove the extra copy of the shared libs + rm -f $(TARGET_DIR)/usr/lib/*-*.so (cd $(TARGET_DIR)/usr/lib; \ ln -fs /lib/libc.so.0 libc.so; \ ln -fs /lib/libdl.so.0 libdl.so; \ @@ -141,6 +151,7 @@ $(TARGET_DIR)/usr/lib/libc.a: $(STAGING_DIR)/lib/libc.a ln -fs /lib/libutil.so.0 libutil.so; \ ln -fs /lib/libm.so.0 libm.so; \ ln -fs /lib/libpthread.so.0 libpthread.so; \ + ln -fs /lib/libnsl.so.0 libnsl.so; \ ) uclibc_target: gcc_final $(TARGET_DIR)/usr/lib/libc.a @@ -183,7 +194,7 @@ $(GCC_BUILD_DIR3)/.configured: $(GCC_BUILD_DIR3)/.gcc_build_hacks mkdir -p $(TARGET_DIR)/usr/$(GNU_TARGET_NAME) (cd $(TARGET_DIR)/usr/$(GNU_TARGET_NAME); ln -fs ../include) (cd $(TARGET_DIR)/usr/$(GNU_TARGET_NAME); ln -fs ../include sys-include) - (cd $(GCC_BUILD_DIR3); PATH=$(STAGING_DIR)/bin:$$PATH \ + (cd $(GCC_BUILD_DIR3); PATH=$(TARGET_PATH) \ AS=$(TARGET_CROSS)as \ LD=$(TARGET_CROSS)ld \ AR=$(TARGET_CROSS)ar \ @@ -218,7 +229,6 @@ $(GCC_BUILD_DIR3)/.configured: $(GCC_BUILD_DIR3)/.gcc_build_hacks touch $(GCC_BUILD_DIR3)/.configured $(GCC_BUILD_DIR3)/.compiled: $(GCC_BUILD_DIR3)/.configured - PATH=$(STAGING_DIR)/bin:$$PATH \ AS=$(TARGET_CROSS)as \ LD=$(TARGET_CROSS)ld \ AR=$(TARGET_CROSS)ar \ @@ -231,7 +241,6 @@ $(GCC_BUILD_DIR3)/.compiled: $(GCC_BUILD_DIR3)/.configured touch $(GCC_BUILD_DIR3)/.compiled $(TARGET_DIR)/usr/bin/gcc: $(GCC_BUILD_DIR3)/.compiled - PATH=$(STAGING_DIR)/bin:$$PATH \ $(MAKE) \ CC=$(TARGET_CROSS)gcc \ AS=$(TARGET_CROSS)as \ @@ -263,14 +272,20 @@ $(TARGET_DIR)/usr/bin/gcc: $(GCC_BUILD_DIR3)/.compiled (cd $(TARGET_DIR)/usr/bin; ln -fs gcc cc) rm -rf $(TARGET_DIR)/usr/$(GNU_TARGET_NAME)/include rm -rf $(TARGET_DIR)/usr/$(GNU_TARGET_NAME)/sys-include + rm -rf $(TARGET_DIR)/usr/include/include $(TARGET_DIR)/usr/usr -mv $(TARGET_DIR)/usr/bin/$(GNU_TARGET_NAME)-cpp $(TARGET_DIR)/usr/bin/cpp -mv $(TARGET_DIR)/usr/bin/$(GNU_TARGET_NAME)-gcc $(TARGET_DIR)/usr/bin/gcc -mv $(TARGET_DIR)/usr/bin/$(GNU_TARGET_NAME)-c++ $(TARGET_DIR)/usr/bin/c++ -mv $(TARGET_DIR)/usr/bin/$(GNU_TARGET_NAME)-g++ $(TARGET_DIR)/usr/bin/g++ -mv $(TARGET_DIR)/usr/bin/$(GNU_TARGET_NAME)-c++filt $(TARGET_DIR)/usr/bin/c++filt -cp -dpf $(STAGING_DIR)/lib/libgcc* $(TARGET_DIR)/lib/ + chmod a-x $(STAGING_DIR)/lib/*++* cp -a $(STAGING_DIR)/lib/*++* $(TARGET_DIR)/lib/ cp -a $(STAGING_DIR)/include/c++ $(TARGET_DIR)/usr/include/ + -mv $(TARGET_DIR)/lib/*.a $(TARGET_DIR)/usr/lib/ + -mv $(TARGET_DIR)/lib/*.la $(TARGET_DIR)/usr/lib/ + rm -f $(TARGET_DIR)/lib/libstdc++.so + (cd $(TARGET_DIR)/usr/lib; ln -fs /lib/libstdc++.a libstdc++.so) -$(STRIP) $(TARGET_DIR)/bin/* -$(STRIP) $(TARGET_DIR)/usr/bin/* rm -rf $(TARGET_DIR)/share/locale $(TARGET_DIR)/usr/info \ diff --git a/make/gdb.mk b/make/gdb.mk index 851c3ddbb3..5b6650af76 100644 --- a/make/gdb.mk +++ b/make/gdb.mk @@ -17,10 +17,10 @@ $(GDB_DIR)/.unpacked: $(DL_DIR)/$(GDB_SOURCE) $(GDB_DIR)/.configured: $(GDB_DIR)/.unpacked (cd $(GDB_DIR); rm -rf config.cache; \ - PATH=$(STAGING_DIR)/bin:$$PATH AR=$(TARGET_CROSS)ar \ + AR=$(TARGET_CROSS)ar \ AS=$(TARGET_CROSS)as LD=$(TARGET_CROSS)ld \ RANLIB=$(TARGET_CROSS)ranlib NM=$(TARGET_CROSS)nm \ - CC=$(TARGET_CC) \ + PATH=$(TARGET_PATH) CC=$(TARGET_CC) \ ./configure \ --target=$(GNU_TARGET_NAME) \ --host=$(GNU_TARGET_NAME) \ diff --git a/make/gdbserver.mk b/make/gdbserver.mk index e9e04da5d7..c1ef1f1aa2 100644 --- a/make/gdbserver.mk +++ b/make/gdbserver.mk @@ -12,10 +12,10 @@ GDB_WDIR:=$(BUILD_DIR)/gdbserver $(GDB_WDIR)/.configured: $(GDB_DIR)/.unpacked mkdir -p $(GDB_WDIR) (cd $(GDB_WDIR); rm -rf config.cache; \ - PATH=$(STAGING_DIR)/bin:$$PATH AR=$(TARGET_CROSS)ar \ + AR=$(TARGET_CROSS)ar \ AS=$(TARGET_CROSS)as LD=$(TARGET_CROSS)ld \ RANLIB=$(TARGET_CROSS)ranlib NM=$(TARGET_CROSS)nm \ - CC=$(TARGET_CC) \ + PATH=$(TARGET_PATH) CC=$(TARGET_CC) \ $(GDB_DIR)/gdb/gdbserver/configure \ --target=$(GNU_TARGET_NAME) \ --prefix=/usr \ diff --git a/make/jpeg.mk b/make/jpeg.mk index 6cb8ec423e..34e985e5d1 100644 --- a/make/jpeg.mk +++ b/make/jpeg.mk @@ -37,7 +37,7 @@ $(JPEG_DIR)/.unpacked: $(DL_DIR)/$(JPEG_SOURCE) $(JPEG_DIR)/.configured: $(JPEG_DIR)/.unpacked zcat $(DL_DIR)/$(JPEG_SOURCE) | tar -C $(BUILD_DIR) -xvf - (cd $(JPEG_DIR); rm -rf config.cache; \ - PATH=$(STAGING_DIR)/bin:$$PATH CC=$(TARGET_CC) \ + PATH=$(TARGET_PATH) CC=$(TARGET_CC) \ ./configure \ --target=$(GNU_TARGET_NAME) \ --prefix=/usr \ diff --git a/make/libglib12.mk b/make/libglib12.mk index 6519239d56..07218e4c30 100644 --- a/make/libglib12.mk +++ b/make/libglib12.mk @@ -20,7 +20,7 @@ $(LIBGLIB12_DIR)/.unpacked: $(DL_DIR)/$(LIBGLIB12_SOURCE) $(LIBGLIB12_DIR)/.configured: $(LIBGLIB12_DIR)/.unpacked (cd $(LIBGLIB12_DIR); rm -rf config.cache; \ - PATH=$(STAGING_DIR)/bin:$$PATH CC=$(TARGET_CC) \ + PATH=$(TARGET_PATH) CC=$(TARGET_CC) \ ./configure \ --target=$(GNU_TARGET_NAME) \ --prefix=/usr \ diff --git a/make/libtool.mk b/make/libtool.mk index b1871eaa91..6043f52856 100644 --- a/make/libtool.mk +++ b/make/libtool.mk @@ -21,7 +21,7 @@ $(LIBTOOL_DIR)/.unpacked: $(DL_DIR)/$(LIBTOOL_SOURCE) $(LIBTOOL_DIR)/.configured: $(LIBTOOL_DIR)/.unpacked (cd $(LIBTOOL_DIR); rm -rf config.cache; \ - PATH=$(STAGING_DIR)/bin:$$PATH CC=$(TARGET_CC) \ + PATH=$(TARGET_PATH) CC=$(TARGET_CC) \ ./configure \ --target=$(GNU_TARGET_NAME) \ --prefix=/usr \ @@ -43,7 +43,6 @@ $(LIBTOOL_DIR)/$(LIBTOOL_BINARY): $(LIBTOOL_DIR)/.configured touch -c $(LIBTOOL_DIR)/$(LIBTOOL_BINARY) $(TARGET_DIR)/$(LIBTOOL_TARGET_BINARY): $(LIBTOOL_DIR)/$(LIBTOOL_BINARY) - PATH=$(STAGING_DIR)/bin:$$PATH CC=$(TARGET_CC) \ $(MAKE) \ prefix=$(TARGET_DIR)/usr \ exec_prefix=$(TARGET_DIR)/usr \ diff --git a/make/links.mk b/make/links.mk index 6aab1f314c..d664cc8f35 100644 --- a/make/links.mk +++ b/make/links.mk @@ -18,7 +18,7 @@ $(LINKS_DIR)/.unpacked: $(DL_DIR)/$(LINKS_SOURCE) $(LINKS_DIR)/.configured: $(LINKS_DIR)/.unpacked (cd $(LINKS_DIR); rm -rf config.cache; \ - PATH=$(STAGING_DIR)/bin:$$PATH CC=$(TARGET_CC) \ + PATH=$(TARGET_PATH) CC=$(TARGET_CC) \ ./configure \ --target=$(GNU_TARGET_NAME) \ --prefix=/usr \ diff --git a/make/lrzsz.mk b/make/lrzsz.mk index 0ed34f5975..a212052ba1 100644 --- a/make/lrzsz.mk +++ b/make/lrzsz.mk @@ -36,7 +36,7 @@ $(LRZSZ_DIR)/.unpacked: $(DL_DIR)/$(LRZSZ_SOURCE) $(LRZSZ_DIR)/.configured: $(LRZSZ_DIR)/.unpacked (cd $(LRZSZ_DIR); rm -rf config.cache; \ - PATH=$(STAGING_DIR)/bin:$$PATH CC=$(TARGET_CC) \ + PATH=$(TARGET_PATH) CC=$(TARGET_CC) \ ./configure \ --target=$(GNU_TARGET_NAME) \ --prefix=/usr \ diff --git a/make/m4.mk b/make/m4.mk index 4c96eda759..8be5ddedb1 100644 --- a/make/m4.mk +++ b/make/m4.mk @@ -21,7 +21,7 @@ $(M4_DIR)/.unpacked: $(DL_DIR)/$(M4_SOURCE) $(M4_DIR)/.configured: $(M4_DIR)/.unpacked (cd $(M4_DIR); rm -rf config.cache; \ - PATH=$(STAGING_DIR)/bin:$$PATH CC=$(TARGET_CC) \ + PATH=$(TARGET_PATH) CC=$(TARGET_CC) \ ./configure \ --target=$(GNU_TARGET_NAME) \ --prefix=/usr \ @@ -33,7 +33,6 @@ $(M4_DIR)/src/$(M4_BINARY): $(M4_DIR)/.configured $(MAKE) CC=$(TARGET_CC) -C $(M4_DIR) $(TARGET_DIR)/$(M4_TARGET_BINARY): $(M4_DIR)/src/$(M4_BINARY) - PATH=$(STAGING_DIR)/bin:$$PATH CC=$(TARGET_CC) \ $(MAKE) \ prefix=$(TARGET_DIR)/usr \ exec_prefix=$(TARGET_DIR)/usr \ diff --git a/make/make.mk b/make/make.mk index b0a82a83e4..08240d937c 100644 --- a/make/make.mk +++ b/make/make.mk @@ -21,7 +21,7 @@ $(GNUMAKE_DIR)/.unpacked: $(DL_DIR)/$(GNUMAKE_SOURCE) $(GNUMAKE_DIR)/.configured: $(GNUMAKE_DIR)/.unpacked (cd $(GNUMAKE_DIR); rm -rf config.cache; \ - PATH=$(STAGING_DIR)/bin:$$PATH CC=$(TARGET_CC) \ + PATH=$(TARGET_PATH) CC=$(TARGET_CC) \ ./configure \ --target=$(GNU_TARGET_NAME) \ --prefix=/usr \ @@ -39,17 +39,17 @@ $(GNUMAKE_DIR)/.configured: $(GNUMAKE_DIR)/.unpacked touch $(GNUMAKE_DIR)/.configured $(GNUMAKE_DIR)/$(GNUMAKE_BINARY): $(GNUMAKE_DIR)/.configured - $(MAKE) CC=$(TARGET_CC) -C $(GNUMAKE_DIR) + $(MAKE) -C $(GNUMAKE_DIR) $(TARGET_DIR)/$(GNUMAKE_TARGET_BINARY): $(GNUMAKE_DIR)/$(GNUMAKE_BINARY) - $(MAKE) DESTDIR=$(TARGET_DIR) CC=$(TARGET_CC) -C $(GNUMAKE_DIR) install + $(MAKE) DESTDIR=$(TARGET_DIR) -C $(GNUMAKE_DIR) install rm -rf $(TARGET_DIR)/share/locale $(TARGET_DIR)/usr/info \ $(TARGET_DIR)/usr/man $(TARGET_DIR)/usr/share/doc make: uclibc $(TARGET_DIR)/$(GNUMAKE_TARGET_BINARY) make-clean: - $(MAKE) DESTDIR=$(TARGET_DIR) CC=$(TARGET_CC) -C $(GNUMAKE_DIR) uninstall + $(MAKE) DESTDIR=$(TARGET_DIR) -C $(GNUMAKE_DIR) uninstall -$(MAKE) -C $(GNUMAKE_DIR) clean make-dirclean: diff --git a/make/mke2fs.mk b/make/mke2fs.mk index 2d340cb84d..589da672b8 100644 --- a/make/mke2fs.mk +++ b/make/mke2fs.mk @@ -21,7 +21,7 @@ $(MKE2FS_DIR)/.unpacked: $(DL_DIR)/$(MKE2FS_SOURCE) $(MKE2FS_DIR)/.configured: $(MKE2FS_DIR)/.unpacked (cd $(MKE2FS_DIR); rm -rf config.cache; \ - PATH=$(STAGING_DIR)/bin:$$PATH CC=$(TARGET_CC) \ + PATH=$(TARGET_PATH) CC=$(TARGET_CC) \ ./configure \ --target=$(GNU_TARGET_NAME) \ --with-cc=$(TARGET_CC) \ diff --git a/make/ncurses.mk b/make/ncurses.mk index 692a5ba846..7ff8f73c73 100644 --- a/make/ncurses.mk +++ b/make/ncurses.mk @@ -5,7 +5,7 @@ # ############################################################# # Copyright (C) 2002 by Ken Restivo -# $Id: ncurses.mk,v 1.20 2003/01/23 01:18:58 andersen Exp $ +# $Id: ncurses.mk,v 1.21 2003/02/12 08:10:38 andersen Exp $ # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU Library General Public License as @@ -38,8 +38,9 @@ $(NCURSES_DIR)/.dist: $(DL_DIR)/$(NCURSES_SOURCE) touch $(NCURSES_DIR)/.dist $(NCURSES_DIR)/.configured: $(NCURSES_DIR)/.dist - (cd $(NCURSES_DIR); rm -rf config.cache; PATH=$(STAGING_DIR)/bin:$$PATH \ - BUILD_CC=$(HOSTCC) HOSTCC=$(HOSTCC) CC=$(TARGET_CC) \ + (cd $(NCURSES_DIR); rm -rf config.cache; \ + PATH=$(TARGET_PATH) BUILD_CC=$(HOSTCC) \ + HOSTCC=$(HOSTCC) CC=$(TARGET_CC) \ ./configure \ --target=$(GNU_TARGET_NAME) \ --prefix=/usr \ @@ -65,7 +66,7 @@ $(NCURSES_DIR)/lib/libncurses.so: $(NCURSES_DIR)/.configured DESTDIR=$(STAGING_DIR) -C $(NCURSES_DIR) $(STAGING_DIR)/lib/libncurses.a: $(NCURSES_DIR)/lib/libncurses.so - PATH=$(STAGING_DIR)/bin:$$PATH BUILD_CC=$(HOSTCC) \ + BUILD_CC=$(HOSTCC) \ HOSTCC=$(HOSTCC) CC=$(TARGET_CC) $(MAKE) \ prefix=$(STAGING_DIR) \ exec_prefix=$(STAGING_DIR) \ @@ -82,6 +83,7 @@ $(STAGING_DIR)/lib/libncurses.a: $(NCURSES_DIR)/lib/libncurses.so gxx_include_dir=$(STAGING_DIR)/include/c++ \ ticdir=$(STAGING_DIR)/usr/share/terminfo \ -C $(NCURSES_DIR) install; + chmod a-x $(NCURSES_DIR)/lib/libncurses.so* touch -c $(STAGING_DIR)/lib/libncurses.a $(TARGET_DIR)/lib/libncurses.so: $(STAGING_DIR)/lib/libncurses.a @@ -98,9 +100,13 @@ $(TARGET_DIR)/usr/lib/libncurses.a: $(TARGET_DIR)/lib/libncurses.so cp -dpf $(NCURSES_DIR)/include/unctrl.h $(TARGET_DIR)/usr/include/ cp -dpf $(NCURSES_DIR)/include/termcap.h $(TARGET_DIR)/usr/include/ cp -dpf $(NCURSES_DIR)/lib/libncurses.a $(TARGET_DIR)/usr/lib/ + rm -f $(TARGET_DIR)/usr/lib/terminfo + (cd $(TARGET_DIR)/usr/lib; ln -fs /usr/share/terminfo) (cd $(TARGET_DIR)/usr/lib; ln -fs libncurses.a libcurses.a) (cd $(TARGET_DIR)/usr/lib; ln -fs libncurses.a libtermcap.a) (cd $(TARGET_DIR)/usr/include; ln -fs ncurses.h curses.h) + rm -f $(TARGET_DIR)/lib/libncurses.so + (cd $(TARGET_DIR)/usr/lib; ln -fs /lib/libncurses.so.5.2 libncurses.so) touch -c $(TARGET_DIR)/usr/lib/libncurses.a ncurses-headers: $(TARGET_DIR)/usr/lib/libncurses.a diff --git a/make/netkitbase.mk b/make/netkitbase.mk index e0d92c4f63..262b459e02 100644 --- a/make/netkitbase.mk +++ b/make/netkitbase.mk @@ -24,7 +24,7 @@ $(NETKITBASE_DIR)/.unpacked: $(DL_DIR)/$(NETKITBASE_SOURCE) touch $(NETKITBASE_DIR)/.unpacked $(NETKITBASE_DIR)/.configured: $(NETKITBASE_DIR)/.unpacked - (cd $(NETKITBASE_DIR); PATH=$(STAGING_DIR)/bin:$$PATH CC=$(TARGET_CC) \ + (cd $(NETKITBASE_DIR); PATH=$(TARGET_PATH) CC=$(TARGET_CC) \ ./configure --installroot=$(TARGET_DIR) --with-c-compiler=$(TARGET_CC) \ ) touch $(NETKITBASE_DIR)/.configured diff --git a/make/netkittelnet.mk b/make/netkittelnet.mk index a082764afb..ab4a2cb26b 100644 --- a/make/netkittelnet.mk +++ b/make/netkittelnet.mk @@ -27,7 +27,7 @@ $(NETKITTELNET_DIR)/.unpacked: $(DL_DIR)/$(NETKITTELNET_SOURCE) touch $(NETKITTELNET_DIR)/.unpacked $(NETKITTELNET_DIR)/.configured: $(NETKITTELNET_DIR)/.unpacked - (cd $(NETKITTELNET_DIR); PATH=$(STAGING_DIR)/bin:$$PATH CC=$(TARGET_CC) \ + (cd $(NETKITTELNET_DIR); PATH=$(TARGET_PATH) CC=$(TARGET_CC) \ ./configure --installroot=$(TARGET_DIR) --with-c-compiler=$(TARGET_CC) \ ) touch $(NETKITTELNET_DIR)/.configured diff --git a/make/newt.mk b/make/newt.mk index 4cdb705320..5fc322eb6a 100644 --- a/make/newt.mk +++ b/make/newt.mk @@ -23,7 +23,7 @@ $(NEWT_DIR)/.source: $(DL_DIR)/$(NEWT_SOURCE) $(NEWT_DIR)/.configured: $(NEWT_DIR)/.source (cd $(NEWT_DIR); rm -rf config.cache; \ - PATH=$(STAGING_DIR)/bin:$$PATH CC=$(TARGET_CC) \ + PATH=$(TARGET_PATH) CC=$(TARGET_CC) \ ./configure \ --target=$(GNU_TARGET_NAME) \ --prefix=/usr \ diff --git a/make/ntp.mk b/make/ntp.mk index 6e29565ea4..e7c820aeb8 100644 --- a/make/ntp.mk +++ b/make/ntp.mk @@ -24,7 +24,7 @@ $(NTP_DIR)/.unpacked: $(DL_DIR)/$(NTP_SOURCE) $(NTP_DIR)/.configured: $(NTP_DIR)/.unpacked (cd $(NTP_DIR); rm -rf config.cache; \ - PATH=$(STAGING_DIR)/bin:$$PATH CC=$(TARGET_CC) \ + PATH=$(TARGET_PATH) CC=$(TARGET_CC) \ ./configure \ --target=$(GNU_TARGET_NAME) \ --prefix=/usr \ diff --git a/make/openssh.mk b/make/openssh.mk index 7a00934ae0..21a04c2a7b 100644 --- a/make/openssh.mk +++ b/make/openssh.mk @@ -17,7 +17,7 @@ $(OPENSSH_DIR)/.unpacked: $(DL_DIR)/$(OPENSSH_SOURCE) $(OPENSSH_DIR)/.configured: $(OPENSSH_DIR)/.unpacked (cd $(OPENSSH_DIR); rm -rf config.cache; \ - PATH=$(STAGING_DIR)/bin:$$PATH CC=$(TARGET_CC) \ + PATH=$(TARGET_PATH) CC=$(TARGET_CC) \ ./configure \ --target=$(GNU_TARGET_NAME) \ --prefix=/usr \ diff --git a/make/openssl.mk b/make/openssl.mk index 89490a3916..9dc5e34dc9 100644 --- a/make/openssl.mk +++ b/make/openssl.mk @@ -32,9 +32,11 @@ $(OPENSSL_DIR)/apps/openssl: $(OPENSSL_DIR)/Makefile $(STAGING_DIR)/lib/libcrypto.so.0: $(OPENSSL_DIR)/apps/openssl $(MAKE) CC=$(TARGET_CC) INSTALL_PREFIX=$(STAGING_DIR) -C $(OPENSSL_DIR) install cp -fa $(OPENSSL_DIR)/libcrypto.so* $(STAGING_DIR)/lib/ + chmod a-x $(STAGING_DIR)/lib/libcrypto.so.0.9.7 (cd $(STAGING_DIR)/lib; ln -fs libcrypto.so.0.9.7 libcrypto.so) (cd $(STAGING_DIR)/lib; ln -fs libcrypto.so.0.9.7 libcrypto.so.0) cp -fa $(OPENSSL_DIR)/libssl.so* $(STAGING_DIR)/lib/ + chmod a-x $(STAGING_DIR)/lib/libssl.so.0.9.7 (cd $(STAGING_DIR)/lib; ln -fs libssl.so.0.9.7 libssl.so) (cd $(STAGING_DIR)/lib; ln -fs libssl.so.0.9.7 libssl.so.0) @@ -48,6 +50,12 @@ $(TARGET_DIR)/usr/lib/libssl.a: $(TARGET_DIR)/lib/libcrypto.so.0 cp -a $(STAGING_DIR)/include/openssl $(TARGET_DIR)/usr/include/ cp -dpf $(STAGING_DIR)/lib/libssl.a $(TARGET_DIR)/usr/lib/ cp -dpf $(STAGING_DIR)/lib/libcrypto.a $(TARGET_DIR)/usr/lib/ + rm -f $(TARGET_DIR)/lib/libcrypto.so + rm -f $(TARGET_DIR)/lib/libssl.so + (cd $(TARGET_DIR)/usr/lib; \ + ln -fs /lib/libssl.so.0.9.7 libssl.so; \ + ln -fs /lib/libcrypto.so.0.9.7 libcrypto.so; \ + ) touch -c $(TARGET_DIR)/usr/lib/libssl.a openssl-headers: $(TARGET_DIR)/usr/lib/libssl.a diff --git a/make/pciutils.mk b/make/pciutils.mk index 893b472b0f..8daf033f7b 100644 --- a/make/pciutils.mk +++ b/make/pciutils.mk @@ -28,7 +28,7 @@ $(PCIUTILS_DIR)/.unpacked: $(DL_DIR)/$(PCIUTILS_SOURCE) $(DL_DIR)/$(PCIIDS_SOURC $(PCIUTILS_DIR)/.configured: $(PCIUTILS_DIR)/.unpacked (cd $(PCIUTILS_DIR); rm -rf config.cache; \ - PATH=$(STAGING_DIR)/bin:$$PATH CC=$(TARGET_CC) \ + PATH=$(TARGET_PATH) CC=$(TARGET_CC) \ ./configure \ --target=$(GNU_TARGET_NAME) \ --prefix=/usr \ diff --git a/make/pppd.mk b/make/pppd.mk index 2daf27a668..81fa87b51b 100644 --- a/make/pppd.mk +++ b/make/pppd.mk @@ -26,7 +26,7 @@ $(PPPD_DIR)/.unpacked: $(DL_DIR)/$(PPPD_SOURCE) $(PPPD_DIR)/.configured: $(PPPD_DIR)/.unpacked (cd $(PPPD_DIR); rm -rf config.cache; \ - PATH=$(STAGING_DIR)/bin:$$PATH CC=$(TARGET_CC) \ + PATH=$(TARGET_PATH) CC=$(TARGET_CC) \ ./configure \ --target=$(GNU_TARGET_NAME) \ --prefix=/usr \ diff --git a/make/rxvt.mk b/make/rxvt.mk index fd85643cda..0d6e9732b4 100644 --- a/make/rxvt.mk +++ b/make/rxvt.mk @@ -38,7 +38,7 @@ $(RXVT_DIR)/.unpacked: $(DL_DIR)/$(RXVT_SOURCE) $(RXVT_DIR)/.configured: $(RXVT_DIR)/.unpacked (cd $(RXVT_DIR); rm -rf config.cache; \ - PATH=$(STAGING_DIR)/bin:$$PATH CC=$(TARGET_CC) \ + PATH=$(TARGET_PATH) CC=$(TARGET_CC) \ ./configure \ --target=$(GNU_TARGET_NAME) \ --prefix=/usr/X11R6 \ diff --git a/make/sed.mk b/make/sed.mk index 383ba6477e..1b0b66577c 100644 --- a/make/sed.mk +++ b/make/sed.mk @@ -21,7 +21,7 @@ $(SED_DIR)/.unpacked: $(DL_DIR)/$(SED_SOURCE) $(SED_DIR)/.configured: $(SED_DIR)/.unpacked (cd $(SED_DIR); rm -rf config.cache; \ - PATH=$(STAGING_DIR)/bin:$$PATH CC=$(TARGET_CC) \ + PATH=$(TARGET_PATH) CC=$(TARGET_CC) \ ./configure \ --target=$(GNU_TARGET_NAME) \ --prefix=/usr \ diff --git a/make/socat.mk b/make/socat.mk index d64612970e..92344d07ca 100644 --- a/make/socat.mk +++ b/make/socat.mk @@ -27,7 +27,7 @@ $(SOCAT_WORKDIR)/Makefile: $(SOCAT_DIR)/.unpacked rm -f $(SOCAT_WORKDIR)/Makefile mkdir -p $(SOCAT_WORKDIR) (cd $(SOCAT_WORKDIR); rm -rf config.cache; \ - PATH=$(STAGING_DIR)/bin:$$PATH CC=$(TARGET_CC) \ + PATH=$(TARGET_PATH) CC=$(TARGET_CC) \ $(SOCAT_DIR)/configure \ --target=$(GNU_TARGET_NAME) \ --prefix=/usr \ diff --git a/make/strace.mk b/make/strace.mk index d4b2b41f91..fdca1ee0d0 100644 --- a/make/strace.mk +++ b/make/strace.mk @@ -20,7 +20,7 @@ $(STRACE_DIR)/.unpacked: $(DL_DIR)/$(STRACE_SOURCE) $(STRACE_DIR)/.configured: $(STRACE_DIR)/.unpacked (cd $(STRACE_DIR); rm -rf config.cache; \ - PATH=$(STAGING_DIR)/bin:$$PATH CC=$(TARGET_CC) \ + PATH=$(TARGET_PATH) CC=$(TARGET_CC) \ ./configure \ --target=$(GNU_TARGET_NAME) \ --host=$(GNU_TARGET_NAME) \ diff --git a/make/tn5250.mk b/make/tn5250.mk index 3ac95e895f..d37d4f4742 100644 --- a/make/tn5250.mk +++ b/make/tn5250.mk @@ -11,7 +11,7 @@ $(TN5250_DIR)/.dist: $(DL_DIR)/$(TN5250_SOURCE) $(TN5250_DIR)/.configured: $(TN5250_DIR)/.dist (cd $(TN5250_DIR); rm -rf config.cache; \ - PATH=$(STAGING_DIR)/bin:$$PATH CC=$(TARGET_CC) \ + PATH=$(TARGET_PATH) CC=$(TARGET_CC) \ ./configure \ --target=$(GNU_TARGET_NAME) \ --prefix=/usr \ diff --git a/make/uclibc_toolchain.mk b/make/uclibc_toolchain.mk index d8ccea34a2..a262666f6e 100644 --- a/make/uclibc_toolchain.mk +++ b/make/uclibc_toolchain.mk @@ -25,6 +25,9 @@ ifeq ($(GCC_2_95_TOOLCHAIN),false) # hacking on the toolchain... # ############################################################# +#Directory in which to build the toolchain +TOOL_BUILD_DIR=$(BASE_DIR)/toolchain_build + TARGET_LANGUAGES:=c,c++ # If you want multilib enabled, enable this... @@ -40,12 +43,12 @@ MULTILIB:=--enable-multilib ############################################################# BINUTILS_SITE:=ftp://ftp.gnu.org/gnu/binutils/ BINUTILS_SOURCE:=binutils-2.13.2.1.tar.bz2 -BINUTILS_DIR:=$(BUILD_DIR)/binutils-2.13.2.1 +BINUTILS_DIR:=$(TOOL_BUILD_DIR)/binutils-2.13.2.1 # # Perhaps you would perfer to use the older 2.12.1 version? #BINUTILS_SITE:=ftp://ftp.gnu.org/gnu/binutils/ #BINUTILS_SOURCE:=binutils-2.12.1.tar.bz2 -#BINUTILS_DIR:=$(BUILD_DIR)/binutils-2.12.1 +#BINUTILS_DIR:=$(TOOL_BUILD_DIR)/binutils-2.12.1 ifeq ($(USE_UCLIBC_SNAPSHOT),true) # Be aware that this changes daily.... @@ -60,7 +63,7 @@ endif GCC_SITE:=ftp://ftp.gnu.org/gnu/gcc/ GCC_SOURCE:=gcc-3.2.2.tar.gz -GCC_DIR:=$(BUILD_DIR)/gcc-3.2.2 +GCC_DIR:=$(TOOL_BUILD_DIR)/gcc-3.2.2 @@ -69,19 +72,20 @@ GCC_DIR:=$(BUILD_DIR)/gcc-3.2.2 # Setup some initial paths # ############################################################# -$(BUILD_DIR)/.setup: - mkdir -p $(BUILD_DIR) +$(TOOL_BUILD_DIR)/.setup: + mkdir -p $(TOOL_BUILD_DIR) mkdir -p $(DL_DIR) mkdir -p $(STAGING_DIR) mkdir -p $(STAGING_DIR)/include mkdir -p $(STAGING_DIR)/lib/gcc-lib + mkdir -p $(STAGING_DIR)/usr/lib + mkdir -p $(STAGING_DIR)/usr/bin; mkdir -p $(STAGING_DIR)/$(GNU_TARGET_NAME)/ (cd $(STAGING_DIR)/$(GNU_TARGET_NAME); ln -fs ../lib) (cd $(STAGING_DIR)/$(GNU_TARGET_NAME); ln -fs ../include) (cd $(STAGING_DIR)/$(GNU_TARGET_NAME); ln -fs ../include sys-include) - mkdir -p $(STAGING_DIR)/usr/lib (cd $(STAGING_DIR)/usr/lib; ln -fs ../../lib/gcc-lib) - touch $(BUILD_DIR)/.setup + touch $(TOOL_BUILD_DIR)/.setup ############################################################# @@ -102,12 +106,12 @@ uclibc_toolchain-dirclean: gcc_final-dirclean uclibc-dirclean gcc_initial-dircle # build binutils # ############################################################# -BINUTILS_DIR1:=$(BUILD_DIR)/binutils-build +BINUTILS_DIR1:=$(TOOL_BUILD_DIR)/binutils-build $(DL_DIR)/$(BINUTILS_SOURCE): $(WGET) -P $(DL_DIR) $(BINUTILS_SITE)/$(BINUTILS_SOURCE) -$(BINUTILS_DIR)/.unpacked: $(BUILD_DIR)/.setup $(DL_DIR)/$(BINUTILS_SOURCE) - bzcat $(DL_DIR)/$(BINUTILS_SOURCE) | tar -C $(BUILD_DIR) -xvf - +$(BINUTILS_DIR)/.unpacked: $(TOOL_BUILD_DIR)/.setup $(DL_DIR)/$(BINUTILS_SOURCE) + bzcat $(DL_DIR)/$(BINUTILS_SOURCE) | tar -C $(TOOL_BUILD_DIR) -xvf - touch $(BINUTILS_DIR)/.unpacked $(BINUTILS_DIR)/.patched: $(BINUTILS_DIR)/.unpacked @@ -128,7 +132,8 @@ $(BINUTILS_DIR)/.patched: $(BINUTILS_DIR)/.unpacked $(BINUTILS_DIR1)/.configured: $(BINUTILS_DIR)/.patched mkdir -p $(BINUTILS_DIR1) - (cd $(BINUTILS_DIR1); CC=$(HOSTCC) $(BINUTILS_DIR)/configure \ + (cd $(BINUTILS_DIR1); CC=$(HOSTCC) \ + $(BINUTILS_DIR)/configure \ --target=$(GNU_TARGET_NAME) \ --prefix=$(STAGING_DIR) \ --exec-prefix=$(STAGING_DIR) \ @@ -153,6 +158,20 @@ $(STAGING_DIR)/$(GNU_TARGET_NAME)/bin/ld: $(BINUTILS_DIR1)/binutils/objdump $(MAKE) -C $(BINUTILS_DIR1) install rm -rf $(STAGING_DIR)/info $(STAGING_DIR)/man $(STAGING_DIR)/share/doc \ $(STAGING_DIR)/share/locale + mkdir -p $(STAGING_DIR)/usr/bin; + set -e; \ + for app in addr2line ar as c++filt gprof ld nm objcopy \ + objdump ranlib readelf size strings strip ; \ + do \ + if [ -x $(STAGING_DIR)/bin/$(ARCH)-uclibc-$${app} ] ; then \ + (cd $(STAGING_DIR)/$(GNU_TARGET_NAME)/bin; \ + ln -fs ../../bin/$(ARCH)-uclibc-$${app} $${app}; \ + ); \ + (cd $(STAGING_DIR)/usr/bin; \ + ln -fs ../../bin/$(ARCH)-uclibc-$${app} $${app}; \ + ); \ + fi; \ + done; $(STAGING_DIR)/lib/libg.a: $(STAGING_DIR)/$(GNU_TARGET_NAME)/bin/ar rv $(STAGING_DIR)/lib/libg.a; @@ -174,12 +193,12 @@ binutils-dirclean: # Next build first pass gcc compiler # ############################################################# -GCC_BUILD_DIR1:=$(BUILD_DIR)/gcc-initial +GCC_BUILD_DIR1:=$(TOOL_BUILD_DIR)/gcc-initial $(DL_DIR)/$(GCC_SOURCE): $(WGET) -P $(DL_DIR) $(GCC_SITE)/$(GCC_SOURCE) -$(GCC_DIR)/.unpacked: $(BUILD_DIR)/.setup $(DL_DIR)/$(GCC_SOURCE) - zcat $(DL_DIR)/$(GCC_SOURCE) | tar -C $(BUILD_DIR) -xvf - +$(GCC_DIR)/.unpacked: $(TOOL_BUILD_DIR)/.setup $(DL_DIR)/$(GCC_SOURCE) + zcat $(DL_DIR)/$(GCC_SOURCE) | tar -C $(TOOL_BUILD_DIR) -xvf - touch $(GCC_DIR)/.unpacked $(GCC_DIR)/.patched: $(GCC_DIR)/.unpacked @@ -223,8 +242,9 @@ $(GCC_DIR)/.gcc_build_hacks: $(GCC_DIR)/.patched # # the step or libgcc will not build... $(GCC_BUILD_DIR1)/.configured: $(GCC_DIR)/.gcc_build_hacks mkdir -p $(GCC_BUILD_DIR1) - (cd $(GCC_BUILD_DIR1); PATH=$(STAGING_DIR)/bin:$$PATH AR=$(ARCH)-uclibc-ar \ - RANLIB=$(ARCH)-uclibc-ranlib CC=$(HOSTCC) $(GCC_DIR)/configure \ + (cd $(GCC_BUILD_DIR1); AR=$(ARCH)-uclibc-ar \ + RANLIB=$(ARCH)-uclibc-ranlib CC=$(HOSTCC) \ + $(GCC_DIR)/configure \ --target=$(GNU_TARGET_NAME) \ --prefix=$(STAGING_DIR) \ --exec-prefix=$(STAGING_DIR) \ @@ -245,22 +265,21 @@ $(GCC_BUILD_DIR1)/.configured: $(GCC_DIR)/.gcc_build_hacks touch $(GCC_BUILD_DIR1)/.configured $(GCC_BUILD_DIR1)/.compiled: $(GCC_BUILD_DIR1)/.configured - PATH=$(STAGING_DIR)/bin:$$PATH $(MAKE) -C $(GCC_BUILD_DIR1) \ + $(MAKE) -C $(GCC_BUILD_DIR1) \ AR_FOR_TARGET=$(STAGING_DIR)/bin/$(ARCH)-uclibc-ar \ RANLIB_FOR_TARGET=$(STAGING_DIR)/bin/$(ARCH)-uclibc-ranlib touch $(GCC_BUILD_DIR1)/.compiled -$(GCC_BUILD_DIR1)/.installed: $(GCC_BUILD_DIR1)/.compiled - PATH=$(STAGING_DIR)/bin:$$PATH $(MAKE) -C $(GCC_BUILD_DIR1) install; +$(STAGING_DIR)/bin/$(ARCH)-uclibc-gcc: $(GCC_BUILD_DIR1)/.compiled + $(MAKE) -C $(GCC_BUILD_DIR1) install; #Cleanup then mess when --program-prefix mysteriously fails -mv $(STAGING_DIR)/bin/$(GNU_TARGET_NAME)-cpp $(STAGING_DIR)/bin/$(ARCH)-uclibc-cpp -mv $(STAGING_DIR)/bin/$(GNU_TARGET_NAME)-gcc $(STAGING_DIR)/bin/$(ARCH)-uclibc-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_BUILD_DIR1)/.installed -gcc_initial: binutils $(UCLIBC_DIR)/.configured $(GCC_BUILD_DIR1)/.installed +gcc_initial: binutils $(UCLIBC_DIR)/.configured $(STAGING_DIR)/bin/$(ARCH)-uclibc-gcc gcc_initial-clean: rm -rf $(GCC_BUILD_DIR1) @@ -282,7 +301,7 @@ gcc_initial-dirclean: $(DL_DIR)/$(UCLIBC_SOURCE): $(WGET) -P $(DL_DIR) $(UCLIBC_SITE)/$(UCLIBC_SOURCE) -$(UCLIBC_DIR)/.unpacked: $(BUILD_DIR)/.setup $(DL_DIR)/$(UCLIBC_SOURCE) +$(UCLIBC_DIR)/.unpacked: $(TOOL_BUILD_DIR)/.setup $(DL_DIR)/$(UCLIBC_SOURCE) bzcat $(DL_DIR)/$(UCLIBC_SOURCE) | tar -C $(BUILD_DIR) -xvf - touch $(UCLIBC_DIR)/.unpacked @@ -324,11 +343,13 @@ $(TARGET_DIR)/lib/libc.so.0: $(STAGING_DIR)/lib/libc.a $(TARGET_DIR)/usr/bin/ldd: $(TARGET_DIR)/lib/libc.so.0 $(MAKE) -C $(UCLIBC_DIR) PREFIX=$(TARGET_DIR) install_target_utils + (cd $(TARGET_DIR)/sbin; ln -s /bin/true ldconfig) UCLIBC_TARGETS=$(TARGET_DIR)/lib/libc.so.0 $(TARGET_DIR)/usr/bin/ldd endif -uclibc: gcc_initial $(STAGING_DIR)/lib/libc.a $(UCLIBC_TARGETS) +uclibc: $(STAGING_DIR)/bin/$(ARCH)-uclibc-gcc $(STAGING_DIR)/lib/libc.a \ + $(UCLIBC_TARGETS) uclibc-clean: -$(MAKE) -C $(UCLIBC_DIR) clean @@ -347,7 +368,7 @@ uclibc-dirclean: # the newly built shared uClibc library. # ############################################################# -GCC_BUILD_DIR2:=$(BUILD_DIR)/gcc-final +GCC_BUILD_DIR2:=$(TOOL_BUILD_DIR)/gcc-final $(GCC_DIR)/.g++_build_hacks: $(GCC_DIR)/.patched # # Hack up the soname for libstdc++ @@ -373,9 +394,10 @@ $(GCC_DIR)/.g++_build_hacks: $(GCC_DIR)/.patched $(GCC_BUILD_DIR2)/.configured: $(GCC_DIR)/.g++_build_hacks mkdir -p $(GCC_BUILD_DIR2) - (cd $(GCC_BUILD_DIR2); PATH=$(STAGING_DIR)/bin:$$PATH AR=$(TARGET_CROSS)ar \ - RANLIB=$(TARGET_CROSS)ranlib LD=$(TARGET_CROSS)ld NM=$(TARGET_CROSS)nm \ - CC=$(HOSTCC) $(GCC_DIR)/configure \ + (cd $(GCC_BUILD_DIR2); AR=$(TARGET_CROSS)ar \ + RANLIB=$(TARGET_CROSS)ranlib LD=$(TARGET_CROSS)ld \ + NM=$(TARGET_CROSS)nm CC=$(HOSTCC) \ + $(GCC_DIR)/configure \ --target=$(GNU_TARGET_NAME) \ --prefix=$(STAGING_DIR) \ --exec-prefix=$(STAGING_DIR) \ @@ -401,21 +423,20 @@ $(GCC_BUILD_DIR2)/.configured: $(GCC_DIR)/.g++_build_hacks touch $(GCC_BUILD_DIR2)/.configured $(GCC_BUILD_DIR2)/.compiled: $(GCC_BUILD_DIR2)/.configured - PATH=$(STAGING_DIR)/bin:$$PATH CC=$(HOSTCC) \ + CC=$(HOSTCC) \ AR_FOR_TARGET=$(TARGET_CROSS)ar RANLIB_FOR_TARGET=$(TARGET_CROSS)ranlib \ LD_FOR_TARGET=$(TARGET_CROSS)ld NM_FOR_TARGET=$(TARGET_CROSS)nm \ CC_FOR_TARGET=$(TARGET_CROSS)gcc $(MAKE) -C $(GCC_BUILD_DIR2) touch $(GCC_BUILD_DIR2)/.compiled $(GCC_BUILD_DIR2)/.installed: $(GCC_BUILD_DIR2)/.compiled - PATH=$(STAGING_DIR)/bin:$$PATH $(MAKE) -C $(GCC_BUILD_DIR2) install; touch $(GCC_BUILD_DIR2)/.installed -#Cleanup then mess when --program-prefix mysteriously fails -$(GCC_BUILD_DIR2)/.fixedup: $(GCC_BUILD_DIR2)/.installed - -mv $(STAGING_DIR)/bin/gcc $(STAGING_DIR)/$(GNU_TARGET_NAME)/bin; - -mv $(STAGING_DIR)/bin/protoize $(STAGING_DIR)/$(GNU_TARGET_NAME)/bin; - -mv $(STAGING_DIR)/bin/unprotoize $(STAGING_DIR)/$(GNU_TARGET_NAME)/bin; +$(STAGING_DIR)/bin/$(ARCH)-uclibc-g++: $(GCC_BUILD_DIR2)/.compiled + $(MAKE) -C $(GCC_BUILD_DIR2) install; + -mv $(STAGING_DIR)/bin/gcc $(STAGING_DIR)/usr/bin; + -mv $(STAGING_DIR)/bin/protoize $(STAGING_DIR)/usr/bin; + -mv $(STAGING_DIR)/bin/unprotoize $(STAGING_DIR)/usr/bin; -mv $(STAGING_DIR)/bin/$(GNU_TARGET_NAME)-cpp $(STAGING_DIR)/bin/$(ARCH)-uclibc-cpp -mv $(STAGING_DIR)/bin/$(GNU_TARGET_NAME)-gcc $(STAGING_DIR)/bin/$(ARCH)-uclibc-gcc -mv $(STAGING_DIR)/bin/$(GNU_TARGET_NAME)-c++ $(STAGING_DIR)/bin/$(ARCH)-uclibc-c++ @@ -424,32 +445,20 @@ $(GCC_BUILD_DIR2)/.fixedup: $(GCC_BUILD_DIR2)/.installed rm -f $(STAGING_DIR)/bin/cpp $(STAGING_DIR)/bin/gcov $(STAGING_DIR)/bin/*gccbug rm -rf $(STAGING_DIR)/info $(STAGING_DIR)/man $(STAGING_DIR)/share/doc \ $(STAGING_DIR)/share/locale - touch $(GCC_BUILD_DIR2)/.fixedup - -$(BUILD_DIR)/.shuffled: $(GCC_BUILD_DIR2)/.fixedup - mkdir -p $(STAGING_DIR)/usr/bin; - (set -e; cd $(STAGING_DIR)/usr/bin; \ - for i in $(STAGING_DIR)/bin/* ; do \ - j=`basename $$i`; \ - k=`basename $$i| sed -e "s,$(ARCH)-uclibc-,,g"`; \ - ln -fs ../../bin/$$j $$k; \ - done) - (set -e; cd $(STAGING_DIR)/$(GNU_TARGET_NAME)/bin; \ - for i in $(STAGING_DIR)/bin/* ; do \ - j=`basename $$i`; \ - k=`basename $$i| sed -e "s,$(ARCH)-uclibc-,,g"`; \ - ln -fs ../../bin/$$j $$k; \ - done) - touch $(BUILD_DIR)/.shuffled - -$(BUILD_DIR)/.stripped: $(BUILD_DIR)/.shuffled # Strip the host binaries -strip --strip-all -R .note -R .comment $(STAGING_DIR)/bin/* # Strip the target shared libs -$(STRIP) --strip-unneeded -R .note -R .comment $(STAGING_DIR)/lib/*.so*; - touch $(BUILD_DIR)/.stripped - -gcc_final: uclibc $(BUILD_DIR)/.stripped + set -e; + for app in cc gcc c89 cpp c++ g++ ; do \ + if [ -x $(STAGING_DIR)/bin/$(ARCH)-uclibc-$${app} ] ; then \ + (cd $(STAGING_DIR)/usr/bin; \ + ln -fs ../../bin/$(ARCH)-uclibc-$${app} $${app}; \ + ); \ + fi; \ + done; + +gcc_final: binutils gcc_initial uclibc $(STAGING_DIR)/bin/$(ARCH)-uclibc-g++ gcc_final-clean: rm -rf $(GCC_BUILD_DIR2) diff --git a/make/uclibc_toolchain_2_95.mk b/make/uclibc_toolchain_2_95.mk index 4778d7e634..ff4efb83f2 100644 --- a/make/uclibc_toolchain_2_95.mk +++ b/make/uclibc_toolchain_2_95.mk @@ -25,6 +25,9 @@ ifeq ($(GCC_2_95_TOOLCHAIN),true) # hacking on the toolchain... # ############################################################# +#Directory in which to build the toolchain +TOOL_BUILD_DIR:=$(BASE_DIR)/toolchain_build + TARGET_LANGUAGES:=c,c++ # If you want multilib enabled, enable this... @@ -40,35 +43,35 @@ MULTILIB:=--enable-multilib ############################################################# BINUTILS_SITE:=ftp://ftp.gnu.org/gnu/binutils/ BINUTILS_SOURCE:=binutils-2.13.2.1.tar.bz2 -BINUTILS_DIR:=$(BUILD_DIR)/binutils-2.13.2.1 +BINUTILS_DIR:=$(TOOL_BUILD_DIR)/binutils-2.13.2.1 # # Perhaps you would perfer to use the older 2.12.1 version? #BINUTILS_SITE:=ftp://ftp.gnu.org/gnu/binutils/ #BINUTILS_SOURCE:=binutils-2.12.1.tar.bz2 -#BINUTILS_DIR:=$(BUILD_DIR)/binutils-2.12.1 +#BINUTILS_DIR:=$(TOOL_BUILD_DIR)/binutils-2.12.1 ifeq ($(USE_UCLIBC_SNAPSHOT),true) # Be aware that this changes daily.... -UCLIBC_DIR=$(BUILD_DIR)/uClibc +UCLIBC_DIR=$(TOOL_BUILD_DIR)/uClibc UCLIBC_SOURCE=uClibc-snapshot.tar.bz2 UCLIBC_SITE:=ftp://www.uclibc.org/uClibc else -UCLIBC_DIR:=$(BUILD_DIR)/uClibc-0.9.17 +UCLIBC_DIR:=$(TOOL_BUILD_DIR)/uClibc-0.9.17 UCLIBC_SOURCE:=uClibc-0.9.17.tar.bz2 UCLIBC_SITE:=http://www.kernel.org/pub/linux/libs/uclibc endif GCC_SITE:=http://www.kernel.org/pub/linux/libs/uclibc/toolchain GCC_SOURCE:=gcc-20011006.tar.bz2 -GCC_DIR:=$(BUILD_DIR)/gcc-20011006 +GCC_DIR:=$(TOOL_BUILD_DIR)/gcc-20011006 ELF2FLT_SITE:=http://www.kernel.org/pub/linux/libs/uclibc/toolchain ELF2FLT_SOURCE:=elf2flt-20020731.tar.bz2 -ELF2FLT_DIR:=$(BUILD_DIR)/elf2flt +ELF2FLT_DIR:=$(TOOL_BUILD_DIR)/elf2flt STLPORT_SITE=http://www.stlport.org/archive STLPORT_SOURCE=STLport-4.5.3.tar.gz -STLPORT_DIR=$(BUILD_DIR)/STLport-4.5.3 +STLPORT_DIR=$(TOOL_BUILD_DIR)/STLport-4.5.3 @@ -77,8 +80,8 @@ STLPORT_DIR=$(BUILD_DIR)/STLport-4.5.3 # Setup some initial paths # ############################################################# -$(BUILD_DIR)/.setup: - mkdir -p $(BUILD_DIR) +$(TOOL_BUILD_DIR)/.setup: + mkdir -p $(TOOL_BUILD_DIR) mkdir -p $(DL_DIR) mkdir -p $(STAGING_DIR) mkdir -p $(STAGING_DIR)/include @@ -89,7 +92,7 @@ $(BUILD_DIR)/.setup: (cd $(STAGING_DIR)/$(GNU_TARGET_NAME); ln -fs ../include sys-include) mkdir -p $(STAGING_DIR)/usr/lib (cd $(STAGING_DIR)/usr/lib; ln -fs ../../lib/gcc-lib) - touch $(BUILD_DIR)/.setup + touch $(TOOL_BUILD_DIR)/.setup ############################################################# @@ -113,12 +116,12 @@ uclibc_toolchain-dirclean: gcc_final-dirclean uclibc-dirclean gcc_initial-dircle # build binutils # ############################################################# -BINUTILS_DIR1:=$(BUILD_DIR)/binutils-build +BINUTILS_DIR1:=$(TOOL_BUILD_DIR)/binutils-build $(DL_DIR)/$(BINUTILS_SOURCE): $(WGET) -P $(DL_DIR) $(BINUTILS_SITE)/$(BINUTILS_SOURCE) -$(BINUTILS_DIR)/.unpacked: $(BUILD_DIR)/.setup $(DL_DIR)/$(BINUTILS_SOURCE) - bzcat $(DL_DIR)/$(BINUTILS_SOURCE) | tar -C $(BUILD_DIR) -xvf - +$(BINUTILS_DIR)/.unpacked: $(TOOL_BUILD_DIR)/.setup $(DL_DIR)/$(BINUTILS_SOURCE) + bzcat $(DL_DIR)/$(BINUTILS_SOURCE) | tar -C $(TOOL_BUILD_DIR) -xvf - touch $(BINUTILS_DIR)/.unpacked $(BINUTILS_DIR)/.patched: $(BINUTILS_DIR)/.unpacked @@ -185,12 +188,12 @@ binutils-dirclean: # Next build first pass gcc compiler # ############################################################# -GCC_BUILD_DIR1:=$(BUILD_DIR)/gcc-initial +GCC_BUILD_DIR1:=$(TOOL_BUILD_DIR)/gcc-initial $(DL_DIR)/$(GCC_SOURCE): $(WGET) -P $(DL_DIR) $(GCC_SITE)/$(GCC_SOURCE) -$(GCC_DIR)/.unpacked: $(BUILD_DIR)/.setup $(DL_DIR)/$(GCC_SOURCE) - bzcat $(DL_DIR)/$(GCC_SOURCE) | tar -C $(BUILD_DIR) -xvf - +$(GCC_DIR)/.unpacked: $(TOOL_BUILD_DIR)/.setup $(DL_DIR)/$(GCC_SOURCE) + bzcat $(DL_DIR)/$(GCC_SOURCE) | tar -C $(TOOL_BUILD_DIR) -xvf - touch $(GCC_DIR)/.unpacked $(GCC_DIR)/.patched: $(GCC_DIR)/.unpacked @@ -245,7 +248,7 @@ $(GCC_DIR)/.gcc_build_hacks: $(GCC_DIR)/.patched # # the step or libgcc will not build... $(GCC_BUILD_DIR1)/.configured: $(GCC_DIR)/.gcc_build_hacks mkdir -p $(GCC_BUILD_DIR1) - (cd $(GCC_BUILD_DIR1); PATH=$(STAGING_DIR)/bin:$$PATH AR=$(ARCH)-uclibc-ar \ + (cd $(GCC_BUILD_DIR1); AR=$(ARCH)-uclibc-ar \ RANLIB=$(ARCH)-uclibc-ranlib CC=$(HOSTCC) $(GCC_DIR)/configure \ --target=$(GNU_TARGET_NAME) \ --prefix=$(STAGING_DIR) \ @@ -267,13 +270,13 @@ $(GCC_BUILD_DIR1)/.configured: $(GCC_DIR)/.gcc_build_hacks touch $(GCC_BUILD_DIR1)/.configured $(GCC_BUILD_DIR1)/.compiled: $(GCC_BUILD_DIR1)/.configured - PATH=$(STAGING_DIR)/bin:$$PATH $(MAKE) -C $(GCC_BUILD_DIR1) \ + $(MAKE) -C $(GCC_BUILD_DIR1) \ AR_FOR_TARGET=$(STAGING_DIR)/bin/$(ARCH)-uclibc-ar \ RANLIB_FOR_TARGET=$(STAGING_DIR)/bin/$(ARCH)-uclibc-ranlib touch $(GCC_BUILD_DIR1)/.compiled $(GCC_BUILD_DIR1)/.installed: $(GCC_BUILD_DIR1)/.compiled - PATH=$(STAGING_DIR)/bin:$$PATH $(MAKE) -C $(GCC_BUILD_DIR1) install; + $(MAKE) -C $(GCC_BUILD_DIR1) install; #Cleanup then mess when --program-prefix mysteriously fails -mv $(STAGING_DIR)/bin/$(GNU_TARGET_NAME)-cpp $(STAGING_DIR)/bin/$(ARCH)-uclibc-cpp -mv $(STAGING_DIR)/bin/$(GNU_TARGET_NAME)-gcc $(STAGING_DIR)/bin/$(ARCH)-uclibc-gcc @@ -304,11 +307,11 @@ gcc_initial-dirclean: $(DL_DIR)/$(UCLIBC_SOURCE): $(WGET) -P $(DL_DIR) $(UCLIBC_SITE)/$(UCLIBC_SOURCE) -$(UCLIBC_DIR)/.unpacked: $(BUILD_DIR)/.setup $(DL_DIR)/$(UCLIBC_SOURCE) - bzcat $(DL_DIR)/$(UCLIBC_SOURCE) | tar -C $(BUILD_DIR) -xvf - +$(UCLIBC_DIR)/.unpacked: $(TOOL_BUILD_DIR)/.setup $(DL_DIR)/$(UCLIBC_SOURCE) + bzcat $(DL_DIR)/$(UCLIBC_SOURCE) | tar -C $(TOOL_BUILD_DIR) -xvf - touch $(UCLIBC_DIR)/.unpacked -$(UCLIBC_DIR)/.configured: $(UCLIBC_DIR)/.unpacked $(BUILD_DIR)/linux/.configured +$(UCLIBC_DIR)/.configured: $(UCLIBC_DIR)/.unpacked $(TOOL_BUILD_DIR)/linux/.configured perl -i -p -e 's,^CROSS=.*,TARGET_ARCH=$(ARCH)\nCROSS=$(TARGET_CROSS),g' \ $(UCLIBC_DIR)/Rules.mak cp $(SOURCE_DIR)/uClibc.config $(UCLIBC_DIR)/.config @@ -369,7 +372,7 @@ uclibc-dirclean: # the newly built shared uClibc library. # ############################################################# -GCC_BUILD_DIR2:=$(BUILD_DIR)/gcc-final +GCC_BUILD_DIR2:=$(TOOL_BUILD_DIR)/gcc-final $(GCC_DIR)/.g++_build_hacks: $(GCC_DIR)/.patched # # Hack up the soname for libstdc++ @@ -395,7 +398,7 @@ $(GCC_DIR)/.g++_build_hacks: $(GCC_DIR)/.patched $(GCC_BUILD_DIR2)/.configured: $(GCC_DIR)/.g++_build_hacks mkdir -p $(GCC_BUILD_DIR2) - (cd $(GCC_BUILD_DIR2); PATH=$(STAGING_DIR)/bin:$$PATH AR=$(TARGET_CROSS)ar \ + (cd $(GCC_BUILD_DIR2); AR=$(TARGET_CROSS)ar \ RANLIB=$(TARGET_CROSS)ranlib LD=$(TARGET_CROSS)ld NM=$(TARGET_CROSS)nm \ CC=$(HOSTCC) $(GCC_DIR)/configure \ --target=$(GNU_TARGET_NAME) \ @@ -423,14 +426,14 @@ $(GCC_BUILD_DIR2)/.configured: $(GCC_DIR)/.g++_build_hacks touch $(GCC_BUILD_DIR2)/.configured $(GCC_BUILD_DIR2)/.compiled: $(GCC_BUILD_DIR2)/.configured - PATH=$(STAGING_DIR)/bin:$$PATH CC=$(HOSTCC) \ + CC=$(HOSTCC) \ AR_FOR_TARGET=$(TARGET_CROSS)ar RANLIB_FOR_TARGET=$(TARGET_CROSS)ranlib \ LD_FOR_TARGET=$(TARGET_CROSS)ld NM_FOR_TARGET=$(TARGET_CROSS)nm \ CC_FOR_TARGET=$(TARGET_CROSS)gcc $(MAKE) -C $(GCC_BUILD_DIR2) touch $(GCC_BUILD_DIR2)/.compiled $(GCC_BUILD_DIR2)/.installed: $(GCC_BUILD_DIR2)/.compiled - PATH=$(STAGING_DIR)/bin:$$PATH $(MAKE) -C $(GCC_BUILD_DIR2) install; + $(MAKE) -C $(GCC_BUILD_DIR2) install; touch $(GCC_BUILD_DIR2)/.installed #Cleanup then mess when --program-prefix mysteriously fails @@ -459,7 +462,7 @@ $(DL_DIR)/$(STLPORT_SOURCE): $(WGET) -P $(DL_DIR) $(STLPORT_SITE)/$(STLPORT_SOURCE) $(STLPORT_DIR)/Makefile: $(DL_DIR)/$(STLPORT_SOURCE) $(STLPORT_PATCH) - zcat $(DL_DIR)/$(STLPORT_SOURCE) | tar -C $(BUILD_DIR) -xvf - + zcat $(DL_DIR)/$(STLPORT_SOURCE) | tar -C $(TOOL_BUILD_DIR) -xvf - cat $(STLPORT_PATCH) | patch -d $(STLPORT_DIR) -p1 $(STLPORT_DIR)/lib/libstdc++.a: $(STLPORT_DIR)/Makefile @@ -490,7 +493,7 @@ stlport-dirclean: # Final cleanups.... # ############################################################# -$(BUILD_DIR)/.shuffled: $(GCC_BUILD_DIR2)/.fixedup +$(TOOL_BUILD_DIR)/.shuffled: $(GCC_BUILD_DIR2)/.fixedup mkdir -p $(STAGING_DIR)/usr/bin; (set -e; cd $(STAGING_DIR)/usr/bin; \ for i in $(STAGING_DIR)/bin/* ; do \ @@ -504,16 +507,19 @@ $(BUILD_DIR)/.shuffled: $(GCC_BUILD_DIR2)/.fixedup k=`basename $$i| sed -e "s,$(ARCH)-uclibc-,,g"`; \ ln -fs ../../bin/$$j $$k; \ done) - touch $(BUILD_DIR)/.shuffled + touch $(TOOL_BUILD_DIR)/.shuffled -$(BUILD_DIR)/.stripped: $(BUILD_DIR)/.shuffled +$(TOOL_BUILD_DIR)/.stripped: $(TOOL_BUILD_DIR)/.shuffled # Strip the host binaries -strip --strip-all -R .note -R .comment $(STAGING_DIR)/bin/* # Strip the target shared libs -$(STRIP) --strip-unneeded -R .note -R .comment $(STAGING_DIR)/lib/*.so*; - touch $(BUILD_DIR)/.stripped + touch $(TOOL_BUILD_DIR)/.stripped + +$(STAGING_DIR)/bin/$(TARGET_CC): $(GCC_BUILD_DIR2)/.fixedup $(TOOL_BUILD_DIR)/.stripped $(STLPORT_TARGET) + cp --remove-destination -a $(STAGING_DIR) $(STAGING_DIR) -gcc_final: uclibc $(GCC_BUILD_DIR2)/.fixedup $(BUILD_DIR)/.stripped $(STLPORT_TARGET) +gcc_final: uclibc $(STAGING_DIR)/bin/$(TARGET_CC) gcc_final-clean: rm -rf $(GCC_BUILD_DIR2) diff --git a/make/udhcp.mk b/make/udhcp.mk index 6c7acbd558..8bd5c9067b 100644 --- a/make/udhcp.mk +++ b/make/udhcp.mk @@ -48,6 +48,7 @@ $(TARGET_DIR)/sbin/udhcpc: $(UDHCP_DIR)/udhcpc perl -i -p -e 's/PUMP/UDHCPC/' $(TARGET_DIR)/etc/pcmcia/network* perl -i -p -e 's/DHCP="n"/DHCP="y"/' $(TARGET_DIR)/etc/pcmcia/network* mkdir -p $(TARGET_DIR)/sbin + rm -f $(TARGET_DIR)/sbin/udhcpc cp $(UDHCP_DIR)/udhcpc $(TARGET_DIR)/sbin/ mkdir -p $(TARGET_DIR)/usr/share/udhcpc cp $(UDHCP_DIR)/samples/simple.script $(TARGET_DIR)/usr/share/udhcpc/default.script diff --git a/make/valgrind.mk b/make/valgrind.mk index 2214153394..54c09ac285 100644 --- a/make/valgrind.mk +++ b/make/valgrind.mk @@ -22,7 +22,7 @@ $(VALGRIND_DIR)/.patched: $(VALGRIND_DIR)/.unpacked $(VALGRIND_DIR)/.configured: $(VALGRIND_DIR)/.patched (cd $(VALGRIND_DIR); rm -rf config.cache; \ - PATH=$(STAGING_DIR)/bin:$$PATH CC=$(TARGET_CC) \ + PATH=$(TARGET_PATH) CC=$(TARGET_CC) \ ./configure \ --target=$(GNU_TARGET_NAME) \ --prefix=/usr \ @@ -43,12 +43,11 @@ $(VALGRIND_DIR)/.configured: $(VALGRIND_DIR)/.patched touch $(VALGRIND_DIR)/.configured $(VALGRIND_DIR)/valgrind.so: $(VALGRIND_DIR)/.configured - $(MAKE) CC=$(TARGET_CC) -C $(VALGRIND_DIR) + $(MAKE) -C $(VALGRIND_DIR) -$(STRIP) --strip-unneeded $(VALGRIND_DIR)/*.so* touch -c $(VALGRIND_DIR)/valgrind.so $(TARGET_DIR)/usr/bin/valgrind: $(VALGRIND_DIR)/valgrind.so - PATH=$(STAGING_DIR)/bin:$$PATH CC=$(TARGET_CC) \ $(MAKE) \ prefix=$(TARGET_DIR)/usr \ exec_prefix=$(TARGET_DIR)/usr \ diff --git a/make/zlib.mk b/make/zlib.mk index 1139faf0a9..ce48f4b521 100644 --- a/make/zlib.mk +++ b/make/zlib.mk @@ -42,6 +42,7 @@ $(STAGING_DIR)/lib/libz.so.1.1.4: $(ZLIB_DIR)/libz.so.1.1.4 cp -dpf $(ZLIB_DIR)/zconf.h $(STAGING_DIR)/include; cp -dpf $(ZLIB_DIR)/libz.so* $(STAGING_DIR)/lib; (cd $(STAGING_DIR)/lib; ln -fs libz.so.1.1.4 libz.so.1); + chmod a-x $(STAGING_DIR)/lib/libz.so.1.1.4 touch -c $(STAGING_DIR)/lib/libz.so.1.1.4 $(TARGET_DIR)/lib/libz.so.1.1.4: $(STAGING_DIR)/lib/libz.so.1.1.4 @@ -54,6 +55,8 @@ $(TARGET_DIR)/usr/lib/libz.a: $(TARGET_DIR)/lib/libz.so.1.1.4 cp -dpf $(STAGING_DIR)/include/zlib.h $(TARGET_DIR)/usr/include/ cp -dpf $(STAGING_DIR)/include/zconf.h $(TARGET_DIR)/usr/include/ cp -dpf $(STAGING_DIR)/lib/libz.a $(TARGET_DIR)/usr/lib/ + rm -f $(TARGET_DIR)/lib/libz.so + (cd $(TARGET_DIR)/usr/lib; ln -fs /lib/libz.so.1.1.4 libz.so) touch -c $(TARGET_DIR)/usr/lib/libz.a zlib-headers: $(TARGET_DIR)/usr/lib/libz.a diff --git a/sources/busybox.config b/sources/busybox.config index fbb2e9879b..db462882a5 100644 --- a/sources/busybox.config +++ b/sources/busybox.config @@ -29,6 +29,7 @@ EXTRA_CFLAGS_OPTIONS="" # Installation Options # # CONFIG_INSTALL_NO_USR is not set +PREFIX="./_install" # # Archival Utilities @@ -52,8 +53,8 @@ CONFIG_FEATURE_TAR_CREATE=y CONFIG_FEATURE_TAR_BZIP2=y CONFIG_FEATURE_TAR_EXCLUDE=y CONFIG_FEATURE_TAR_GZIP=y -# CONFIG_FEATURE_TAR_OLD_FORMAT is not set -CONFIG_FEATURE_GNUTAR_LONG_FILENAME=y +# CONFIG_FEATURE_TAR_OLDGNU_COMPATABILITY is not set +CONFIG_FEATURE_TAR_GNU_EXTENSIONS=y CONFIG_FEATURE_UNARCHIVE_TAPE=y CONFIG_UNCOMPRESS=y CONFIG_UNZIP=y @@ -241,6 +242,12 @@ CONFIG_FEATURE_IFUPDOWN_IPV4=y CONFIG_FEATURE_IFUPDOWN_IPV6=y CONFIG_FEATURE_IFUPDOWN_IPX=y CONFIG_FEATURE_IFUPDOWN_MAPPING=y +CONFIG_INETD=y +# CONFIG_FEATURE_INETD_SUPPORT_BILTIN_ECHO is not set +# CONFIG_FEATURE_INETD_SUPPORT_BILTIN_DISCARD is not set +# CONFIG_FEATURE_INETD_SUPPORT_BILTIN_TIME is not set +# CONFIG_FEATURE_INETD_SUPPORT_BILTIN_DAYTIME is not set +# CONFIG_FEATURE_INETD_SUPPORT_BILTIN_CHARGEN is not set CONFIG_IP=y CONFIG_FEATURE_IP_ADDRESS=y diff --git a/sources/gcc-002-mips-swfp.patch b/sources/gcc-002-mips-swfp.patch deleted file mode 100644 index 34e6566a9e..0000000000 --- a/sources/gcc-002-mips-swfp.patch +++ /dev/null @@ -1,52 +0,0 @@ -diff -urN gcc-3.2/gcc/config/mips/t-linux gcc-3.2-patched/gcc/config/mips/t-linux ---- gcc-3.2.orig/gcc/config/mips/t-linux Wed Jan 16 17:22:02 2002 -+++ gcc-3.2/gcc/config/mips/t-linux Mon Nov 11 15:23:33 2002 -@@ -1,3 +1,48 @@ -+# Don't run fixproto -+STMP_FIXPROTO = -+ -+# Don't install "assert.h" in gcc. We use the one in glibc. -+INSTALL_ASSERT_H = -+ -+# nop@nop.com: -fdata-sections messes with crtstuff.c's strategy to get -+# ctors/dtors/eh in special sections. -+CRTSTUFF_T_CFLAGS = -fno-data-sections -+CRTSTUFF_T_CFLAGS_S = -fno-data-sections -+# Hopefully that's enough. -+ -+# Do not build libgcc1. Let gcc generate those functions. The GNU/Linux -+# C library can handle them. -+LIBGCC1 = -+CROSS_LIBGCC1 = -+LIBGCC1_TEST = -+ -+# Standard softfloat incantation: -+ -+LIB2FUNCS_EXTRA = fp-bit.c dp-bit.c -+ -+dp-bit.c: $(srcdir)/config/fp-bit.c -+ echo '#ifdef __MIPSEL__' > dp-bit.c -+ echo '#define FLOAT_BIT_ORDER_MISMATCH' >> dp-bit.c -+ echo '#endif' >> dp-bit.c -+ echo '#undef US_SOFTWARE_GOFAST' >> dp-bit.c -+ echo '#undef FLOAT' >> dp-bit.c -+ cat $(srcdir)/config/fp-bit.c >> dp-bit.c -+ -+fp-bit.c: $(srcdir)/config/fp-bit.c -+ echo '#ifdef __MIPSEL__' > fp-bit.c -+ echo '#define FLOAT_BIT_ORDER_MISMATCH' >> fp-bit.c -+ echo '#endif' >> fp-bit.c -+ echo '#undef US_SOFTWARE_GOFAST' >> fp-bit.c -+ echo '#define FLOAT' >> fp-bit.c -+ cat $(srcdir)/config/fp-bit.c >> fp-bit.c -+ -+MULTILIB_OPTIONS = msoft-float -+MULTILIB_DIRNAMES = soft-float -+MULTILIB_MATCHES = -+MULTILIB_EXTRA_OPTS = -+ -+LIBGCC = stmp-multilib -+INSTALL_LIBGCC = install-multilib - # We want fine grained libraries, so use the new code to build the - # floating point emulation libraries. - FPBIT = fp-bit.c -- 2.30.2