automatically detect if we have a usable version of sed
authorEric Andersen <andersen@codepoet.org>
Wed, 19 Nov 2003 17:17:56 +0000 (17:17 -0000)
committerEric Andersen <andersen@codepoet.org>
Wed, 19 Nov 2003 17:17:56 +0000 (17:17 -0000)
installed.  If not, we will now build our own version.

33 files changed:
Makefile
make/bash.mk
make/berkeleydb.mk
make/busybox.mk
make/bzip2.mk
make/coreutils.mk
make/fakeroot.mk
make/gcc-2.95.mk
make/gcc-3.3.mk
make/gdb.mk
make/hostap.mk
make/iproute2.mk
make/iptables.mk
make/libtool.mk
make/linux.mk
make/lrzsz.mk
make/microcom.mk
make/ncurses.mk
make/netkitbase.mk
make/netkittelnet.mk
make/ntp.mk
make/openssl.mk
make/pcmcia.mk
make/perl.mk
make/pppd.mk
make/sed.mk
make/tinylogin.mk
make/tinyx.mk
make/uclibc.mk
make/udhcp.mk
make/user-mode-linux.mk
make/util-linux.mk
sources/sedcheck.sh [new file with mode: 0755]

index 6aaf9fa414968a6a9779ecc8f1f0bf85fc81ff52..78dae94e4fb07064001630709cd3e79ef4be79f8 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -113,7 +113,7 @@ INSTALL_LIBSTDCPP=true
 # The list of stuff to build for the target filesystem
 #
 #############################################################
-TARGETS:=
+TARGETS:=host-sed
 # The toolchain comes next if we are building one
 ifeq ($(USE_UCLIBC_TOOLCHAIN),true)
 ifeq ($(GCC_2_95_TOOLCHAIN),true)
index 8aa236ecaf98297316ef7aaeb81c69187f7bcf80..26c408fc9d9b590113afc42bdb24de22856fbc33 100644 (file)
@@ -18,7 +18,7 @@ bash-source: $(DL_DIR)/$(BASH_SOURCE)
 $(BASH_DIR)/.unpacked: $(DL_DIR)/$(BASH_SOURCE)
        $(BASH_CAT) $(DL_DIR)/$(BASH_SOURCE) | tar -C $(BUILD_DIR) -xvf -
        # This is broken when -lintl is added to LIBS
-       sed -i -e 's,LIBS_FOR_BUILD =.*,LIBS_FOR_BUILD =,g' \
+       $(SED) 's,LIBS_FOR_BUILD =.*,LIBS_FOR_BUILD =,g' \
                $(BASH_DIR)/builtins/Makefile.in
        touch $(BASH_DIR)/.unpacked
 
index ca546d2d0667a1817b28e9b084a13699162647aa..5b4105a8e6e8cdc2060ab0f3b29db3a31b5ce960 100644 (file)
@@ -43,7 +43,7 @@ $(DB_DIR)/.configured: $(DB_DIR)/.dist
                --disable-compat185 \
                --with-pic \
        );
-       sed -i -e 's/\.lo/.o/g' $(DB_DIR)/build_unix/Makefile
+       $(SED) 's/\.lo/.o/g' $(DB_DIR)/build_unix/Makefile
        touch  $(DB_DIR)/.configured
 
 $(DB_DIR)/build_unix/.libs/libdb-4.1.so: $(DB_DIR)/.configured
index e0a5058ced44ddd7a30e8c2ee0ff32126574b3b5..09eef6d1dd73026650e5502624fbad2de0cacb1e 100644 (file)
@@ -28,20 +28,20 @@ $(BUSYBOX_DIR)/.configured: $(DL_DIR)/$(BUSYBOX_SOURCE) $(BUSYBOX_CONFIG)
        $(BUSYBOX_UNZIP) $(DL_DIR)/$(BUSYBOX_SOURCE) | tar -C $(BUILD_DIR) -xvf -
 ifeq ($(USE_BUSYBOX_SNAPSHOT),true)
        cp $(BUSYBOX_CONFIG) $(BUSYBOX_DIR)/.config
-       sed -i -e "s,^CROSS.*,CROSS=$(TARGET_CROSS)\n\
+       $(SED) "s,^CROSS.*,CROSS=$(TARGET_CROSS)\n\
                PREFIX=$(TARGET_DIR),;" $(BUSYBOX_DIR)/Rules.mak
 ifeq ($(strip $(BUILD_WITH_LARGEFILE)),true)
-       sed -i -e "s/^.*CONFIG_LFS.*/CONFIG_LFS=y/;" $(BUSYBOX_DIR)/.config
+       $(SED) "s/^.*CONFIG_LFS.*/CONFIG_LFS=y/;" $(BUSYBOX_DIR)/.config
 else
-       sed -i -e "s/^.*CONFIG_LFS.*/CONFIG_LFS=n/;" $(BUSYBOX_DIR)/.config
+       $(SED) "s/^.*CONFIG_LFS.*/CONFIG_LFS=n/;" $(BUSYBOX_DIR)/.config
 endif
        $(MAKE) CC=$(TARGET_CC) CROSS="$(TARGET_CROSS)" -C $(BUSYBOX_DIR) oldconfig
 else  # Not using snapshot
        cp $(BUSYBOX_CONFIG) $(BUSYBOX_DIR)/Config.h
-       sed -i -e "s,^CROSS.*,CROSS=$(TARGET_CROSS),;" $(BUSYBOX_DIR)/Makefile
-       sed -i -e "s,^PREFIX.*,PREFIX=$(TARGET_DIR),;" $(BUSYBOX_DIR)/Makefile
+       $(SED) "s,^CROSS.*,CROSS=$(TARGET_CROSS),;" $(BUSYBOX_DIR)/Makefile
+       $(SED) "s,^PREFIX.*,PREFIX=$(TARGET_DIR),;" $(BUSYBOX_DIR)/Makefile
 ifeq ($(strip $(BUILD_WITH_LARGEFILE)),true)
-       sed -i -e "s/^DOLFS.*/DOLFS=true/;" $(BUSYBOX_DIR)/Makefile
+       $(SED) "s/^DOLFS.*/DOLFS=true/;" $(BUSYBOX_DIR)/Makefile
 endif
 endif
        touch $(BUSYBOX_DIR)/.configured
index f2e21e93ffde3e599ddb6912bddd589a8bf1c14a..c16d785ac1c23b8a94b4f19daa0462cb9487aa65 100644 (file)
@@ -21,8 +21,8 @@ bzip2-source: $(DL_DIR)/$(BZIP2_SOURCE)
 
 $(BZIP2_DIR)/.unpacked: $(DL_DIR)/$(BZIP2_SOURCE)
        $(BZIP2_CAT) $(DL_DIR)/$(BZIP2_SOURCE) | tar -C $(BUILD_DIR) -xvf -
-       sed -i -e "s,ln \$$(,ln -sf \$$(,g" $(BZIP2_DIR)/Makefile
-       sed -i -e "s,ln -s (lib.*),ln -sf \$$1 ; ln -sf libbz2.so.1.0.2 libbz2.so,g" \
+       $(SED) "s,ln \$$(,ln -sf \$$(,g" $(BZIP2_DIR)/Makefile
+       $(SED) "s,ln -s (lib.*),ln -sf \$$1 ; ln -sf libbz2.so.1.0.2 libbz2.so,g" \
            $(BZIP2_DIR)/Makefile-libbz2_so
        touch $(BZIP2_DIR)/.unpacked
 
index 33cd847e4237f834976ae368b91b307730e9e367..825c0f354948db9b0b1a044e23c6d76f6ee14d5b 100644 (file)
@@ -46,10 +46,10 @@ $(COREUTILS_DIR)/.configured: $(COREUTILS_DIR)/.unpacked
        );
        #Fix up the max number of open files per process, which apparently 
        # is not set when cross compiling
-       sed -i -e 's,.*UTILS_OPEN_MAX.*,#define UTILS_OPEN_MAX 1019,g' \
+       $(SED) 's,.*UTILS_OPEN_MAX.*,#define UTILS_OPEN_MAX 1019,g' \
                $(COREUTILS_DIR)/config.h
        # This is undefined when crosscompiling...
-       sed -i -e 's,.*HAVE_PROC_UPTIME.*,#define HAVE_PROC_UPTIME 1,g' \
+       $(SED) 's,.*HAVE_PROC_UPTIME.*,#define HAVE_PROC_UPTIME 1,g' \
                $(COREUTILS_DIR)/config.h
        touch  $(COREUTILS_DIR)/.configured
 
index 2922b75f65ff9036b7f4ffb952ebeb5b28dad187..f56105f7f8abcb325bbe9bfac205833c6549d224 100644 (file)
@@ -17,7 +17,7 @@ fakeroot-source: $(DL_DIR)/$(FAKEROOT_SOURCE)
 $(FAKEROOT_DIR)/.unpacked: $(DL_DIR)/$(FAKEROOT_SOURCE)
        $(FAKEROOT_CAT) $(DL_DIR)/$(FAKEROOT_SOURCE) | tar -C $(BUILD_DIR) -xvf -
        # If using busybox getopt, make it be quiet.
-       sed -i -e "s,getopt --version,getopt --version 2>/dev/null," \
+       $(SED) "s,getopt --version,getopt --version 2>/dev/null," \
                $(FAKEROOT_DIR)/scripts/fakeroot
        touch $(FAKEROOT_DIR)/.unpacked
 
index 8e1621c22e9435456bec2318327a0a386a8b353b..2d2ae8e939b9cad5a0f8c57a1e6a1e6eaec30c9b 100644 (file)
@@ -67,40 +67,40 @@ $(GCC_DIR)/.gcc2_95_build_hacks: $(GCC_DIR)/.patched
        #
        (cd $(GCC_DIR); set -e; export LIST=`grep -lr -- "-dynamic-linker.*\.so[\.0-9]*" *`;\
                if [ -n "$$LIST" ] ; then \
-               sed -i -e "s,-dynamic-linker.*\.so[\.0-9]*},\
+               $(SED) "s,-dynamic-linker.*\.so[\.0-9]*},\
                    -dynamic-linker /lib/ld-uClibc.so.0},;" $$LIST; fi);
        #
        # Prevent system glibc start files from leaking in uninvited...
        #
-       sed -i -e "s,standard_startfile_prefix_1 = \".*,standard_startfile_prefix_1 =\
+       $(SED) "s,standard_startfile_prefix_1 = \".*,standard_startfile_prefix_1 =\
                \"$(STAGING_DIR)/lib/\";,;" $(GCC_DIR)/gcc/gcc.c;
-       sed -i -e "s,standard_startfile_prefix_2 = \".*,standard_startfile_prefix_2 =\
+       $(SED) "s,standard_startfile_prefix_2 = \".*,standard_startfile_prefix_2 =\
                \"$(STAGING_DIR)/usr/lib/\";,;" $(GCC_DIR)/gcc/gcc.c;
        #
        # Prevent system glibc include files from leaking in uninvited...
        #
-       sed -i -e "s,^NATIVE_SYSTEM_HEADER_DIR.*,NATIVE_SYSTEM_HEADER_DIR=\
+       $(SED) "s,^NATIVE_SYSTEM_HEADER_DIR.*,NATIVE_SYSTEM_HEADER_DIR=\
                $(STAGING_DIR)/include,;" $(GCC_DIR)/gcc/Makefile.in;
-       sed -i -e "s,^CROSS_SYSTEM_HEADER_DIR.*,CROSS_SYSTEM_HEADER_DIR=\
+       $(SED) "s,^CROSS_SYSTEM_HEADER_DIR.*,CROSS_SYSTEM_HEADER_DIR=\
                $(STAGING_DIR)/include,;" $(GCC_DIR)/gcc/Makefile.in;
-       sed -i -e "s,^#define.*STANDARD_INCLUDE_DIR.*,#define STANDARD_INCLUDE_DIR \
+       $(SED) "s,^#define.*STANDARD_INCLUDE_DIR.*,#define STANDARD_INCLUDE_DIR \
                \"$(STAGING_DIR)/include\",;" $(GCC_DIR)/gcc/cppdefault.h;
        #
        # Prevent system glibc libraries from being found by collect2 
        # when it calls locatelib() and rummages about the system looking 
        # for libraries with the correct name...
        #
-       sed -i -e "s,\"/lib,\"$(STAGING_DIR)/lib,g;" $(GCC_DIR)/gcc/collect2.c
-       sed -i -e "s,\"/usr/,\"$(STAGING_DIR)/usr/,g;" $(GCC_DIR)/gcc/collect2.c
+       $(SED) "s,\"/lib,\"$(STAGING_DIR)/lib,g;" $(GCC_DIR)/gcc/collect2.c
+       $(SED) "s,\"/usr/,\"$(STAGING_DIR)/usr/,g;" $(GCC_DIR)/gcc/collect2.c
        #
        # Prevent gcc from using the unwind-dw2-fde-glibc code
        #
-       sed -i -e "s,^#ifndef inhibit_libc,#define inhibit_libc\n\
+       $(SED) "s,^#ifndef inhibit_libc,#define inhibit_libc\n\
                #ifndef inhibit_libc,g;" $(GCC_DIR)/gcc/unwind-dw2-fde-glibc.c;
        #
        # Use atexit() directly, rather than cxa_atexit
        #
-       sed -i -e "s,int flag_use_cxa_atexit = 1;,int flag_use_cxa_atexit = 0;,g;"\
+       $(SED) "s,int flag_use_cxa_atexit = 1;,int flag_use_cxa_atexit = 0;,g;"\
                $(GCC_DIR)/gcc/cp/decl2.c;
        #
        # We do not wish to build the libstdc++ library provided with gcc,
index b55235121923063c226609131133140651a1eefb..8ae0c4dd9a945e4c36e84b0f2ea5332de5d1230a 100644 (file)
@@ -80,35 +80,35 @@ $(GCC_DIR)/.gcc3_3_build_hacks: $(GCC_DIR)/.patched
        #
        (cd $(GCC_DIR); set -e; export LIST=`grep -lr -- "-dynamic-linker.*\.so[\.0-9]*" *`;\
                if [ -n "$$LIST" ] ; then \
-               sed -i -e "s,-dynamic-linker.*\.so[\.0-9]*},\
+               $(SED) "s,-dynamic-linker.*\.so[\.0-9]*},\
                    -dynamic-linker /lib/ld-uClibc.so.0},;" $$LIST; fi);
        #
        # Prevent system glibc start files from leaking in uninvited...
        #
-       sed -i -e "s,standard_startfile_prefix_1 = \".*,standard_startfile_prefix_1 =\
+       $(SED) "s,standard_startfile_prefix_1 = \".*,standard_startfile_prefix_1 =\
                \"$(STAGING_DIR)/lib/\";,;" $(GCC_DIR)/gcc/gcc.c;
-       sed -i -e "s,standard_startfile_prefix_2 = \".*,standard_startfile_prefix_2 =\
+       $(SED) "s,standard_startfile_prefix_2 = \".*,standard_startfile_prefix_2 =\
                \"$(STAGING_DIR)/usr/lib/\";,;" $(GCC_DIR)/gcc/gcc.c;
        #
        # Prevent system glibc include files from leaking in uninvited...
        #
-       sed -i -e "s,^NATIVE_SYSTEM_HEADER_DIR.*,NATIVE_SYSTEM_HEADER_DIR=\
+       $(SED) "s,^NATIVE_SYSTEM_HEADER_DIR.*,NATIVE_SYSTEM_HEADER_DIR=\
                $(STAGING_DIR)/include,;" $(GCC_DIR)/gcc/Makefile.in;
-       sed -i -e "s,^CROSS_SYSTEM_HEADER_DIR.*,CROSS_SYSTEM_HEADER_DIR=\
+       $(SED) "s,^CROSS_SYSTEM_HEADER_DIR.*,CROSS_SYSTEM_HEADER_DIR=\
                $(STAGING_DIR)/include,;" $(GCC_DIR)/gcc/Makefile.in;
-       sed -i -e "s,^#define.*STANDARD_INCLUDE_DIR.*,#define STANDARD_INCLUDE_DIR \
+       $(SED) "s,^#define.*STANDARD_INCLUDE_DIR.*,#define STANDARD_INCLUDE_DIR \
                \"$(STAGING_DIR)/include\",;" $(GCC_DIR)/gcc/cppdefault.h;
        #
        # Prevent system glibc libraries from being found by collect2 
        # when it calls locatelib() and rummages about the system looking 
        # for libraries with the correct name...
        #
-       sed -i -e "s,\"/lib,\"$(STAGING_DIR)/lib,g;" $(GCC_DIR)/gcc/collect2.c
-       sed -i -e "s,\"/usr/,\"$(STAGING_DIR)/usr/,g;" $(GCC_DIR)/gcc/collect2.c
+       $(SED) "s,\"/lib,\"$(STAGING_DIR)/lib,g;" $(GCC_DIR)/gcc/collect2.c
+       $(SED) "s,\"/usr/,\"$(STAGING_DIR)/usr/,g;" $(GCC_DIR)/gcc/collect2.c
        #
        # Prevent gcc from using the unwind-dw2-fde-glibc code
        #
-       sed -i -e "s,^#ifndef inhibit_libc,#define inhibit_libc\n\
+       $(SED) "s,^#ifndef inhibit_libc,#define inhibit_libc\n\
                #ifndef inhibit_libc,g;" $(GCC_DIR)/gcc/unwind-dw2-fde-glibc.c;
        touch $(GCC_DIR)/.gcc3_3_build_hacks
 
@@ -193,10 +193,10 @@ $(GCC_DIR)/.g++_build_hacks: $(GCC_DIR)/.patched
        #
        # Hack up the soname for libstdc++
        # 
-       sed -i -e "s,\.so\.1,.so.0.9.9,g;" $(GCC_DIR)/gcc/config/t-slibgcc-elf-ver;
-       sed -i -e "s,-version-info.*[0-9]:[0-9]:[0-9],-version-info 9:9:0,g;" \
+       $(SED) "s,\.so\.1,.so.0.9.9,g;" $(GCC_DIR)/gcc/config/t-slibgcc-elf-ver;
+       $(SED) "s,-version-info.*[0-9]:[0-9]:[0-9],-version-info 9:9:0,g;" \
                $(GCC_DIR)/libstdc++-v3/src/Makefile.am $(GCC_DIR)/libstdc++-v3/src/Makefile.in;
-       sed -i -e "s,3\.0\.0,9.9.0,g;" $(GCC_DIR)/libstdc++-v3/acinclude.m4 \
+       $(SED) "s,3\.0\.0,9.9.0,g;" $(GCC_DIR)/libstdc++-v3/acinclude.m4 \
                $(GCC_DIR)/libstdc++-v3/aclocal.m4 $(GCC_DIR)/libstdc++-v3/configure;
        touch $(GCC_DIR)/.g++_build_hacks
 
@@ -365,21 +365,21 @@ $(GCC_BUILD_DIR3)/.gcc3_3_build_hacks: $(GCC_BUILD_DIR3)/.patched
        #
        (cd $(GCC_BUILD_DIR3); set -e; export LIST=`grep -lr -- "-dynamic-linker.*\.so[\.0-9]*" *`;\
                if [ -n "$$LIST" ] ; then \
-               sed -i -e "s,-dynamic-linker.*\.so[\.0-9]*},\
+               $(SED) "s,-dynamic-linker.*\.so[\.0-9]*},\
                    -dynamic-linker /lib/ld-uClibc.so.0},;" $$LIST; fi);
        #
        # Prevent gcc from using the unwind-dw2-fde-glibc code
        #
-       sed -i -e "s,^#ifndef inhibit_libc,#define inhibit_libc\n\
+       $(SED) "s,^#ifndef inhibit_libc,#define inhibit_libc\n\
                #ifndef inhibit_libc,g;" $(GCC_BUILD_DIR3)/gcc/unwind-dw2-fde-glibc.c;
        #
        # Hack up the soname for libstdc++
        # 
-       sed -i -e "s,\.so\.1,.so.0.9.9,g;" $(GCC_BUILD_DIR3)/gcc/config/t-slibgcc-elf-ver;
-       sed -i -e "s,-version-info.*[0-9]:[0-9]:[0-9],-version-info 9:9:0,g;" \
+       $(SED) "s,\.so\.1,.so.0.9.9,g;" $(GCC_BUILD_DIR3)/gcc/config/t-slibgcc-elf-ver;
+       $(SED) "s,-version-info.*[0-9]:[0-9]:[0-9],-version-info 9:9:0,g;" \
                $(GCC_BUILD_DIR3)/libstdc++-v3/src/Makefile.am \
                $(GCC_BUILD_DIR3)/libstdc++-v3/src/Makefile.in;
-       sed -i -e "s,3\.0\.0,9.9.0,g;" $(GCC_BUILD_DIR3)/libstdc++-v3/acinclude.m4 \
+       $(SED) "s,3\.0\.0,9.9.0,g;" $(GCC_BUILD_DIR3)/libstdc++-v3/acinclude.m4 \
                $(GCC_BUILD_DIR3)/libstdc++-v3/aclocal.m4 \
                $(GCC_BUILD_DIR3)/libstdc++-v3/configure;
        touch $(GCC_BUILD_DIR3)/.gcc3_3_build_hacks
@@ -431,7 +431,7 @@ $(TARGET_DIR)/usr/bin/gcc: $(GCC_BUILD_DIR3)/.compiled
        # A nasty hack to work around g++ adding -lgcc_eh to the link
        -(cd $(TARGET_DIR)/usr/lib/gcc-lib/$(ARCH)-linux/$(GCC_VERSION)/ ; ln -s libgcc.a libgcc_eh.a)
        # Make sure gcc does not think we are cross compiling
-       sed -i -e "s/^1/0/;" $(TARGET_DIR)/usr/lib/gcc-lib/$(ARCH)-linux/$(GCC_VERSION)/specs
+       $(SED) "s/^1/0/;" $(TARGET_DIR)/usr/lib/gcc-lib/$(ARCH)-linux/$(GCC_VERSION)/specs
        -(cd $(TARGET_DIR)/bin; find -type f | xargs $(STRIP) > /dev/null 2>&1)
        -(cd $(TARGET_DIR)/usr/bin; find -type f | xargs $(STRIP) > /dev/null 2>&1)
        -(cd $(TARGET_DIR)/usr/lib/gcc-lib/$(ARCH)-linux/$(GCC_VERSION); $(STRIP) cc1 cc1plus collect2 > /dev/null 2>&1)
index 932f17d4a4eaaf8c8d87d04dd767f95e8c2517ab..06a75f682ac1370b36be35d08ac62b1413323405 100644 (file)
@@ -45,7 +45,7 @@ $(GDB_DIR)/.configured: $(GDB_DIR)/.unpacked
                --without-included-gettext \
        );
 ifeq ($(ENABLE_LOCALE),true)
-       -sed -i -e "s,^INTL *=.*,INTL = -lintl,g;" $(GDB_DIR)/gdb/Makefile
+       -$(SED) "s,^INTL *=.*,INTL = -lintl,g;" $(GDB_DIR)/gdb/Makefile
 endif
        touch  $(GDB_DIR)/.configured
 
index bc33393e471fb03e4858b687afe05fe5800d5b51..9d4ac1b7c6dfe47abd248468c4c42e246ebf771c 100644 (file)
@@ -19,7 +19,7 @@ $(HOSTAP_DIR)/.unpacked: $(DL_DIR)/$(HOSTAP_SOURCE)
        touch $(HOSTAP_DIR)/.unpacked
 
 $(HOSTAP_DIR)/.configured: $(HOSTAP_DIR)/.unpacked
-       sed -i -e "s,/.*#define PRISM2_DOWNLOAD_SUPPORT.*/,#define PRISM2_DOWNLOAD_SUPPORT,g" \
+       $(SED) "s,/.*#define PRISM2_DOWNLOAD_SUPPORT.*/,#define PRISM2_DOWNLOAD_SUPPORT,g" \
                $(HOSTAP_DIR)/driver/modules/hostap_config.h
        touch  $(HOSTAP_DIR)/.configured
 
index 9819fdbad53570b76ab06c8064c7068946e020bc..7a33034b62eb8c9178a2ba3a6e96b7dd9f9aaad6 100644 (file)
@@ -29,14 +29,14 @@ $(IPROUTE2_DIR)/.unpacked: $(DL_DIR)/$(IPROUTE2_SOURCE) #$(DL_DIR)/$(IPROUTE2_PA
        touch $(IPROUTE2_DIR)/.unpacked
 
 $(IPROUTE2_DIR)/.configured: $(IPROUTE2_DIR)/.unpacked
-       sed -i -e "s,-I/usr/include/db3,," $(IPROUTE2_DIR)/Makefile
-       sed -i -e "s,^KERNEL_INCLUDE.*,KERNEL_INCLUDE=$(LINUX_DIR)/include," \
+       $(SED) "s,-I/usr/include/db3,," $(IPROUTE2_DIR)/Makefile
+       $(SED) "s,^KERNEL_INCLUDE.*,KERNEL_INCLUDE=$(LINUX_DIR)/include," \
                $(IPROUTE2_DIR)/Makefile
-       sed -i -e "s,^LIBC_INCLUDE.*,LIBC_INCLUDE=$(STAGING_DIR)/include," \
+       $(SED) "s,^LIBC_INCLUDE.*,LIBC_INCLUDE=$(STAGING_DIR)/include," \
                $(IPROUTE2_DIR)/Makefile
        # For now disable compiling of the misc directory because it seems to fail
        rm -rf $(IPROUTE2_DIR)/misc 
-       sed -i -e "s, misc,," $(IPROUTE2_DIR)/Makefile
+       $(SED) "s, misc,," $(IPROUTE2_DIR)/Makefile
        touch  $(IPROUTE2_DIR)/.configured
 
 $(IPROUTE2_DIR)/tc/tc: $(IPROUTE2_DIR)/.configured
index 1fe0e7f438f9733ac96f975c2c769df282213722..edebaff78bcde59e77bfe18cd85fc80306bb1a6f 100644 (file)
@@ -15,7 +15,7 @@ $(IPTABLES_BUILD_DIR)/.unpacked: $(DL_DIR)/$(IPTABLES_SOURCE)
        touch $(IPTABLES_BUILD_DIR)/.unpacked
 
 $(IPTABLES_BUILD_DIR)/.configured: $(IPTABLES_BUILD_DIR)/.unpacked
-       sed -i -e "s@shell.*YES.*@shell grep -q '__UCLIBC_HAS_IPV6__.*1' \
+       $(SED) "s@shell.*YES.*@shell grep -q '__UCLIBC_HAS_IPV6__.*1' \
                $(BUILD_DIR)/uClibc/include/bits/uClibc_config.h && \
                echo YES\), YES\)@;" $(IPTABLES_BUILD_DIR)/Makefile
        touch  $(IPTABLES_BUILD_DIR)/.configured
index 47f23aaf4a96679e9b4dcf50bfd5939bf1690220..fbe1fb663fe4bebc7b37f771556006752ec70b47 100644 (file)
@@ -61,8 +61,8 @@ $(TARGET_DIR)/$(LIBTOOL_TARGET_BINARY): $(LIBTOOL_DIR)/$(LIBTOOL_BINARY)
            includedir=$(TARGET_DIR)/usr/include \
            -C $(LIBTOOL_DIR) install;
        $(STRIP) $(TARGET_DIR)//usr/lib/libltdl.so.*.*.* > /dev/null 2>&1
-       sed -i -e "s,^CC.*,CC=\"/usr/bin/gcc\"," $(TARGET_DIR)/usr/bin/libtool
-       sed -i -e "s,^LD.*,LD=\"/usr/bin/ld\"," $(TARGET_DIR)/usr/bin/libtool
+       $(SED) "s,^CC.*,CC=\"/usr/bin/gcc\"," $(TARGET_DIR)/usr/bin/libtool
+       $(SED) "s,^LD.*,LD=\"/usr/bin/ld\"," $(TARGET_DIR)/usr/bin/libtool
        rm -rf $(TARGET_DIR)/share/locale $(TARGET_DIR)/usr/info \
                $(TARGET_DIR)/usr/man $(TARGET_DIR)/usr/share/doc
 
index 39caf81341267f119736e920218d3186d88b0f3b..d57d59007ebb1de85132fd5776d5ad5636e55afa 100644 (file)
@@ -65,7 +65,7 @@ $(LINUX_KCONFIG):
        fi;
 
 $(LINUX_DIR)/.configured $(BUILD_DIR)/linux/.configured:  $(LINUX_DIR)/.unpacked  $(LINUX_KCONFIG)
-       sed -i -e "s,^CROSS_COMPILE.*,CROSS_COMPILE=$(KERNEL_CROSS),g;" $(LINUX_DIR)/Makefile
+       $(SED) "s,^CROSS_COMPILE.*,CROSS_COMPILE=$(KERNEL_CROSS),g;" $(LINUX_DIR)/Makefile
        -cp $(LINUX_KCONFIG) $(LINUX_DIR)/.config
        $(MAKE) -C $(LINUX_DIR) oldconfig include/linux/version.h
        touch $(LINUX_DIR)/.configured
index 933418727290271b784fe4b738b6f82244f54a5a..222d64a7125229260fda08de3947dc14b86055b2 100644 (file)
@@ -54,8 +54,8 @@ $(LRZSZ_DIR)/.configured: $(LRZSZ_DIR)/.unpacked
                $(DISABLE_NLS) \
                --disable-timesync \
        );
-       sed -i -e "s/-lnsl//;" $(LRZSZ_DIR)/src/Makefile
-       sed -i -e "s~\(#define ENABLE_SYSLOG.*\)~/* \1 */~;" $(LRZSZ_DIR)/config.h
+       $(SED) "s/-lnsl//;" $(LRZSZ_DIR)/src/Makefile
+       $(SED) "s~\(#define ENABLE_SYSLOG.*\)~/* \1 */~;" $(LRZSZ_DIR)/config.h
        touch  $(LRZSZ_DIR)/.configured
 
 $(LRZSZ_DIR)/src/lrz: $(LRZSZ_DIR)/.configured
index 9c1e662e2d2b7ccdb2b1c9333b5beb7a0d35a459..bf01cf3d7f3aeb4f7c9ee75fafdc4d984443fff7 100644 (file)
@@ -40,7 +40,7 @@ $(MICROCOM_DIR)/.unpacked: $(DL_DIR)/$(MICROCOM_SOURCE)
        touch  $(MICROCOM_DIR)/.unpacked
 
 $(MICROCOM_DIR)/.configured: $(MICROCOM_DIR)/.unpacked
-       sed -i -e 's~gcc~${TARGET_CC}~' $(MICROCOM_DIR)/Makefile
+       $(SED) 's~gcc~${TARGET_CC}~' $(MICROCOM_DIR)/Makefile
        touch  $(MICROCOM_DIR)/.configured
 
 $(MICROCOM_DIR)/microcom: $(MICROCOM_DIR)/.configured
index 03f60a8e5d7f83cf31e90d483aa6fd9f24b6e6b3..d0e401a6bae73c7b27ada5d17d72e58d796d616b 100644 (file)
@@ -5,7 +5,7 @@
 #
 #############################################################
 # Copyright (C) 2002 by Ken Restivo <ken@246gt.com>
-# $Id: ncurses.mk,v 1.31 2003/11/18 07:18:25 andersen Exp $
+# $Id: ncurses.mk,v 1.32 2003/11/19 17:17:54 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
@@ -33,7 +33,7 @@ $(DL_DIR)/$(NCURSES_SOURCE):
 $(NCURSES_DIR)/.dist: $(DL_DIR)/$(NCURSES_SOURCE)
        gunzip -c $(DL_DIR)/$(NCURSES_SOURCE) | tar -C $(BUILD_DIR) -xvf -
        #use the local tic and not whatever the build system was going to find.
-       sed -i -e 's~\$$srcdir/shlib tic\$$suffix~/usr/bin/tic~' \
+       $(SED) 's~\$$srcdir/shlib tic\$$suffix~/usr/bin/tic~' \
                $(NCURSES_DIR)/misc/run_tic.in
        touch  $(NCURSES_DIR)/.dist
 
index 13d1fee584489ced7ca11311b47bcdddcb46f680..cb2a023e00aa198845020a260c03107877e27c61 100644 (file)
@@ -18,9 +18,9 @@ netkitbase-source: $(DL_DIR)/$(NETKITBASE_SOURCE)
 $(NETKITBASE_DIR)/.unpacked: $(DL_DIR)/$(NETKITBASE_SOURCE)
        $(NETKITBASE_CAT) $(DL_DIR)/$(NETKITBASE_SOURCE) | tar -C $(BUILD_DIR) -xvf -
        # use ANSI syntax
-       sed -i -e "s/main()/main(void)/;" $(NETKITBASE_DIR)/configure
+       $(SED) "s/main()/main(void)/;" $(NETKITBASE_DIR)/configure
        # don't try to run cross compiled binaries while configuring things
-       sed -i -e "s~./__conftest~#./__conftest~;" $(NETKITBASE_DIR)/configure
+       $(SED) "s~./__conftest~#./__conftest~;" $(NETKITBASE_DIR)/configure
        touch $(NETKITBASE_DIR)/.unpacked
 
 $(NETKITBASE_DIR)/.configured: $(NETKITBASE_DIR)/.unpacked
@@ -39,7 +39,7 @@ $(TARGET_DIR)/$(NETKITBASE_TARGET_BINARY): $(NETKITBASE_DIR)/$(NETKITBASE_BINARY
        cp $(NETKITBASE_DIR)/$(NETKITBASE_BINARY) $(TARGET_DIR)/$(NETKITBASE_TARGET_BINARY)
        mkdir -p $(TARGET_DIR)/etc
        cp $(NETKITBASE_DIR)/etc.sample/inetd.conf $(TARGET_DIR)/etc/
-       sed -i -e "s/^\([a-z]\)/#\1/;" $(TARGET_DIR)/etc/inetd.conf
+       $(SED) "s/^\([a-z]\)/#\1/;" $(TARGET_DIR)/etc/inetd.conf
        #$(MAKE) DESTDIR=$(TARGET_DIR) CC=$(TARGET_CC) -C $(NETKITBASE_DIR) install
        #rm -rf $(TARGET_DIR)/share/locale $(TARGET_DIR)/usr/info \
        #       $(TARGET_DIR)/usr/man $(TARGET_DIR)/usr/share/doc
index b59f29fc915107ed561bfd9c3f408c0af7b297e2..401b885cab5aa27b6d99cca86b3175051ebc02ff 100644 (file)
@@ -19,9 +19,9 @@ netkittelnet-source: $(DL_DIR)/$(NETKITTELNET_SOURCE)
 $(NETKITTELNET_DIR)/.unpacked: $(DL_DIR)/$(NETKITTELNET_SOURCE)
        $(NETKITTELNET_CAT) $(DL_DIR)/$(NETKITTELNET_SOURCE) | tar -C $(BUILD_DIR) -xvf -
        # use ANSI syntax
-       sed -i -e "s/main()/main(void)/;" $(NETKITTELNET_DIR)/configure
+       $(SED) "s/main()/main(void)/;" $(NETKITTELNET_DIR)/configure
        # Disable termcap support
-       sed -i -e "s~\(.*termcap\.h.*\)~/* \1 */~;" $(NETKITTELNET_DIR)/telnetd/telnetd.c
+       $(SED) "s~\(.*termcap\.h.*\)~/* \1 */~;" $(NETKITTELNET_DIR)/telnetd/telnetd.c
        # don't try to run cross compiled binaries while configuring things
        cat $(NETKITTELNET_PATCH) | patch -p1 -d $(NETKITTELNET_DIR)
        touch $(NETKITTELNET_DIR)/.unpacked
@@ -42,7 +42,7 @@ $(TARGET_DIR)/$(NETKITTELNET_TARGET_BINARY): $(NETKITTELNET_DIR)/$(NETKITTELNET_
        rm -f $(TARGET_DIR)/$(NETKITTELNET_TARGET_BINARY)
        cp $(NETKITTELNET_DIR)/$(NETKITTELNET_BINARY) $(TARGET_DIR)/$(NETKITTELNET_TARGET_BINARY)
        # Enable telnet in inetd
-       sed -i -e "s~^#telnet.*~telnet\tstream\ttcp\tnowait\troot\t/usr/sbin/telnetd\t/usr/sbin/telnetd~;" $(TARGET_DIR)/etc/inetd.conf
+       $(SED) "s~^#telnet.*~telnet\tstream\ttcp\tnowait\troot\t/usr/sbin/telnetd\t/usr/sbin/telnetd~;" $(TARGET_DIR)/etc/inetd.conf
        #$(MAKE) DESTDIR=$(TARGET_DIR) CC=$(TARGET_CC) -C $(NETKITTELNET_DIR) install
        #rm -rf $(TARGET_DIR)/share/locale $(TARGET_DIR)/usr/info \
        #       $(TARGET_DIR)/usr/man $(TARGET_DIR)/usr/share/doc
index a13e99b55f1f8f6a45ab4957a9ecdd8a3b985ea2..f4cfaf365c469c3c84f4d5c543331efa56d91c2e 100644 (file)
@@ -18,7 +18,7 @@ ntp-source: $(DL_DIR)/$(NTP_SOURCE)
 
 $(NTP_DIR)/.unpacked: $(DL_DIR)/$(NTP_SOURCE)
        $(NTP_CAT) $(DL_DIR)/$(NTP_SOURCE) | tar -C $(BUILD_DIR) -xvf -
-       sed -i -e "s,^#if.*__GLIBC__.*_BSD_SOURCE.*$$,#if 0," \
+       $(SED) "s,^#if.*__GLIBC__.*_BSD_SOURCE.*$$,#if 0," \
                $(NTP_DIR)/ntpd/refclock_pcf.c;
        touch $(NTP_DIR)/.unpacked
 
index 50d3cf6bbae1628ba216624ac232b89906760ed0..aa9f9f06e664fea7b91dcd8f049387ec9655d186 100644 (file)
@@ -17,7 +17,7 @@ $(OPENSSL_DIR)/.unpacked: $(DL_DIR)/$(OPENSSL_SOURCE) $(OPENSSL_PATCH)
        gunzip -c $(DL_DIR)/$(OPENSSL_SOURCE) | tar -C $(BUILD_DIR) -xvf -
        cat $(OPENSSL_PATCH) | patch -p1 -d $(OPENSSL_DIR)
        # sigh... we have to resort to this just to set a gcc flag.
-       sed -i -e 's,/CFLAG=,/CFLAG= $(TARGET_SOFT_FLOAT) ,g' \
+       $(SED) 's,/CFLAG=,/CFLAG= $(TARGET_SOFT_FLOAT) ,g' \
                $(OPENSSL_DIR)/Configure
        touch  $(OPENSSL_DIR)/.unpacked
 
index 3508bc067b68685d2f3d4ddd4829e92ba44e6cb5..e5067ab0bbffed7d170d37ebd23a486a916121c4 100644 (file)
@@ -45,9 +45,9 @@ $(PCMCIA_DIR)/.configured: $(PCMCIA_DIR)/.patched
                --rcdir=/etc --arch=$(ARCH) --trust --srctree --nocardbus \
                --sysv --kcc=$(KERNEL_CROSS)gcc --ucc=$(TARGET_CC) --ld=$(TARGET_CROSS)ld \
                --target=$(TARGET_DIR))
-       sed -i -e "s/pump/udhcpc/" $(PCMCIA_DIR)/etc/network
-       sed -i -e "s/ide_cs/ide-cs/" $(PCMCIA_DIR)/etc/config
-       sed -i -e "s/bind \"wvlan_cs\"/bind \"orinoco_cs\"/g" $(PCMCIA_DIR)/etc/config
+       $(SED) "s/pump/udhcpc/" $(PCMCIA_DIR)/etc/network
+       $(SED) "s/ide_cs/ide-cs/" $(PCMCIA_DIR)/etc/config
+       $(SED) "s/bind \"wvlan_cs\"/bind \"orinoco_cs\"/g" $(PCMCIA_DIR)/etc/config
        touch $(PCMCIA_DIR)/.configured
 
 $(PCMCIA_DIR)/cardmgr/cardmgr: $(PCMCIA_DIR)/.configured
index 3a9223c8016c5981475ec266291e6ca896011799..de04df702524f073b3a46fe257c850873f9e31d2 100644 (file)
@@ -22,11 +22,11 @@ $(PERL_DIR)/.unpacked: $(DL_DIR)/$(PERL_SOURCE)
        $(PERL_CAT) $(DL_DIR)/$(PERL_SOURCE) | tar -C $(BUILD_DIR) -xvf -
        $(PERL_CAT) $(PERL_SOURCE_2) | tar -C $(PERL_DIR) -xvf -
        cat $(PERL_PATCH) | patch -p1 -d $(PERL_DIR)
-       sed -i -e "s,^ARCH.*,ARCH=$(ARCH)," $(PERL_DIR)/cross/config
-       sed -i -e "s,^CONFIG_TARGET_.*,\#," $(PERL_DIR)/cross/config
-       sed -i -e "s,^export CROSS=.*,export CROSS=$(TARGET_CROSS)," $(PERL_DIR)/cross/Makefile
-       sed -i -e "s,TARGET_ARCH,$(ARCH)," $(PERL_DIR)/cross/config.sh.uclibc
-       sed -i -e "s,TARGET_CROSS,$(TARGET_CROSS)," $(PERL_DIR)/cross/config.sh.uclibc
+       $(SED) "s,^ARCH.*,ARCH=$(ARCH)," $(PERL_DIR)/cross/config
+       $(SED) "s,^CONFIG_TARGET_.*,\#," $(PERL_DIR)/cross/config
+       $(SED) "s,^export CROSS=.*,export CROSS=$(TARGET_CROSS)," $(PERL_DIR)/cross/Makefile
+       $(SED) "s,TARGET_ARCH,$(ARCH)," $(PERL_DIR)/cross/config.sh.uclibc
+       $(SED) "s,TARGET_CROSS,$(TARGET_CROSS)," $(PERL_DIR)/cross/config.sh.uclibc
        touch $(PERL_DIR)/.unpacked
 
 $(PERL_DIR)/.configured: $(PERL_DIR)/.unpacked
index cf25ac8bead023bc08970c41cc7f3c7b056e483a..217f5fae7f9c1b62737c91c755d229952dd06c76 100644 (file)
@@ -18,10 +18,10 @@ pppd-source: $(DL_DIR)/$(PPPD_SOURCE)
 
 $(PPPD_DIR)/.unpacked: $(DL_DIR)/$(PPPD_SOURCE)
        $(PPPD_CAT) $(DL_DIR)/$(PPPD_SOURCE) | tar -C $(BUILD_DIR) -xvf -
-       sed -i -e 's/ -DIPX_CHANGE -DHAVE_MULTILINK -DHAVE_MMAP//' $(PPPD_DIR)/pppd/Makefile.linux
-       sed -i -e 's/$(INSTALL) -s/$(INSTALL)/' $(PPPD_DIR)/*/Makefile.linux
-       sed -i -e 's/ -o root//' $(PPPD_DIR)/*/Makefile.linux
-       sed -i -e 's/ -g daemon//' $(PPPD_DIR)/*/Makefile.linux
+       $(SED) 's/ -DIPX_CHANGE -DHAVE_MULTILINK -DHAVE_MMAP//' $(PPPD_DIR)/pppd/Makefile.linux
+       $(SED) 's/$(INSTALL) -s/$(INSTALL)/' $(PPPD_DIR)/*/Makefile.linux
+       $(SED) 's/ -o root//' $(PPPD_DIR)/*/Makefile.linux
+       $(SED) 's/ -g daemon//' $(PPPD_DIR)/*/Makefile.linux
        touch $(PPPD_DIR)/.unpacked
 
 $(PPPD_DIR)/.configured: $(PPPD_DIR)/.unpacked
index c643f5b17422af166c4e3fc8a61f30c1c09efeca..cb4379d76def552c76a59bb0df6c5d851bd84fbf 100644 (file)
@@ -3,27 +3,85 @@
 # sed
 #
 #############################################################
-SED_SOURCE:=sed-3.02.tar.gz
+SED_SOURCE:=sed-4.0.8.tar.gz
 SED_SITE:=ftp://ftp.gnu.org/gnu/sed
 SED_CAT:=zcat
-SED_DIR:=$(BUILD_DIR)/sed-3.02
+SED_DIR1:=$(TOOL_BUILD_DIR)/sed-4.0.8
+SED_DIR2:=$(BUILD_DIR)/sed-4.0.8
 SED_BINARY:=sed/sed
 SED_TARGET_BINARY:=bin/sed
 ifeq ($(strip $(BUILD_WITH_LARGEFILE)),true)
 SED_CPPFLAGS=-D_FILE_OFFSET_BITS=64
 endif
+SED:=$(STAGING_DIR)/bin/sed -i -e
+
+HOST_SED_TARGET=$(shell ./sources/sedcheck.sh)
 
 $(DL_DIR)/$(SED_SOURCE):
         $(WGET) -P $(DL_DIR) $(SED_SITE)/$(SED_SOURCE)
 
 sed-source: $(DL_DIR)/$(SED_SOURCE)
 
-$(SED_DIR)/.unpacked: $(DL_DIR)/$(SED_SOURCE)
+
+#############################################################
+#
+# build sed for use on the host system
+#
+#############################################################
+$(SED_DIR1)/.unpacked: $(DL_DIR)/$(SED_SOURCE)
+       $(SED_CAT) $(DL_DIR)/$(SED_SOURCE) | tar -C $(TOOL_BUILD_DIR) -xvf -
+       touch $(SED_DIR1)/.unpacked
+
+$(SED_DIR1)/.configured: $(SED_DIR1)/.unpacked
+       (cd $(SED_DIR1); rm -rf config.cache; \
+               ./configure \
+               --prefix=$(STAGING_DIR) \
+               --prefix=/usr \
+       );
+       touch  $(SED_DIR1)/.configured
+
+$(SED_DIR1)/$(SED_BINARY): $(SED_DIR1)/.configured
+       $(MAKE) -C $(SED_DIR1)
+
+# This stuff is needed to work around GNU make deficiencies
+build-sed-host-binary: $(SED_DIR1)/$(SED_BINARY)
+       @if [ -L $(STAGING_DIR)/$(SED_TARGET_BINARY) ] ; then \
+               rm -f $(STAGING_DIR)/$(SED_TARGET_BINARY); fi;
+       @if [ $(STAGING_DIR)/$(SED_TARGET_BINARY) -ot $(SED_DIR1)/$(SED_BINARY) ] ; then \
+       set -x; \
+       $(MAKE) DESTDIR=$(STAGING_DIR) -C $(SED_DIR1) install; \
+       mv $(STAGING_DIR)/usr/bin/sed $(STAGING_DIR)/bin/; \
+       rm -rf $(STAGING_DIR)/share/locale $(STAGING_DIR)/usr/info \
+               $(STAGING_DIR)/usr/man $(STAGING_DIR)/usr/share/doc; fi
+
+use-sed-host-binary:
+       @if [ -x /usr/bin/sed ]; then SED="/usr/bin/sed"; else \
+           if [ -x /bin/sed ]; then SED="/bin/sed"; fi; fi; \
+           mkdir -p $(STAGING_DIR)/bin; \
+           rm -f $(STAGING_DIR)/$(SED_TARGET_BINARY); \
+           ln -s $$SED $(STAGING_DIR)/$(SED_TARGET_BINARY)
+
+host-sed: $(HOST_SED_TARGET)
+
+host-sed-clean:
+       $(MAKE) DESTDIR=$(STAGING_DIR) -C $(SED_DIR1) uninstall
+       -sed -C $(SED_DIR1) clean
+
+host-sed-dirclean:
+       rm -rf $(SED_DIR1)
+
+
+#############################################################
+#
+# build sed for use on the target system
+#
+#############################################################
+$(SED_DIR2)/.unpacked: $(DL_DIR)/$(SED_SOURCE)
        $(SED_CAT) $(DL_DIR)/$(SED_SOURCE) | tar -C $(BUILD_DIR) -xvf -
-       touch $(SED_DIR)/.unpacked
+       touch $(SED_DIR2)/.unpacked
 
-$(SED_DIR)/.configured: $(SED_DIR)/.unpacked
-       (cd $(SED_DIR); rm -rf config.cache; \
+$(SED_DIR2)/.configured: $(SED_DIR2)/.unpacked
+       (cd $(SED_DIR2); rm -rf config.cache; \
                $(TARGET_CONFIGURE_OPTS) \
                CFLAGS="$(TARGET_CFLAGS)" \
                CPPFLAGS="$(SED_CFLAGS)" \
@@ -43,18 +101,18 @@ $(SED_DIR)/.configured: $(SED_DIR)/.unpacked
                --infodir=/usr/info \
                $(DISABLE_NLS) \
        );
-       touch  $(SED_DIR)/.configured
+       touch  $(SED_DIR2)/.configured
 
-$(SED_DIR)/$(SED_BINARY): $(SED_DIR)/.configured
-       $(MAKE) CC=$(TARGET_CC) -C $(SED_DIR)
+$(SED_DIR2)/$(SED_BINARY): $(SED_DIR2)/.configured
+       $(MAKE) CC=$(TARGET_CC) -C $(SED_DIR2)
 
 # This stuff is needed to work around GNU make deficiencies
-sed-target_binary: $(SED_DIR)/$(SED_BINARY)
+sed-target_binary: $(SED_DIR2)/$(SED_BINARY)
        @if [ -L $(TARGET_DIR)/$(SED_TARGET_BINARY) ] ; then \
                rm -f $(TARGET_DIR)/$(SED_TARGET_BINARY); fi;
-       @if [ $(TARGET_DIR)/$(SED_TARGET_BINARY) -ot $(SED_DIR)/$(SED_BINARY) ] ; then \
+       @if [ $(TARGET_DIR)/$(SED_TARGET_BINARY) -ot $(SED_DIR2)/$(SED_BINARY) ] ; then \
        set -x; \
-       $(MAKE) DESTDIR=$(TARGET_DIR) CC=$(TARGET_CC) -C $(SED_DIR) install; \
+       $(MAKE) DESTDIR=$(TARGET_DIR) CC=$(TARGET_CC) -C $(SED_DIR2) install; \
        mv $(TARGET_DIR)/usr/bin/sed $(TARGET_DIR)/bin/; \
        rm -rf $(TARGET_DIR)/share/locale $(TARGET_DIR)/usr/info \
                $(TARGET_DIR)/usr/man $(TARGET_DIR)/usr/share/doc; fi
@@ -62,9 +120,10 @@ sed-target_binary: $(SED_DIR)/$(SED_BINARY)
 sed: uclibc sed-target_binary
 
 sed-clean:
-       $(MAKE) DESTDIR=$(TARGET_DIR) CC=$(TARGET_CC) -C $(SED_DIR) uninstall
-       -sed -C $(SED_DIR) clean
+       $(MAKE) DESTDIR=$(TARGET_DIR) CC=$(TARGET_CC) -C $(SED_DIR2) uninstall
+       -sed -C $(SED_DIR2) clean
 
 sed-dirclean:
-       rm -rf $(SED_DIR)
+       rm -rf $(SED_DIR2)
+
 
index 82faddc50b58d2a0e85796db992733fcff2f848f..d15aa49b1b9689606547d480d2f4aadf3c0b6bfa 100644 (file)
@@ -24,12 +24,12 @@ tinylogin-source: $(DL_DIR)/$(TINYLOGIN_SOURCE)
 
 $(TINYLOGIN_DIR)/Config.h: $(DL_DIR)/$(TINYLOGIN_SOURCE)
        bzcat $(DL_DIR)/$(TINYLOGIN_SOURCE) | tar -C $(BUILD_DIR) -xvf -
-       sed -i -e "s/\`id -u\` -ne 0/0 == 1/" \
+       $(SED) "s/\`id -u\` -ne 0/0 == 1/" \
                $(TINYLOGIN_DIR)/install.sh
-       sed -i -e "s/4755 --owner=root --group=root/755/" \
+       $(SED) "s/4755 --owner=root --group=root/755/" \
                $(TINYLOGIN_DIR)/install.sh
-       sed -i -e "s/^DOSTATIC.*/DOSTATIC=false/g;" $(TINYLOGIN_DIR)/Makefile
-       sed -i -e "s/^DODEBUG.*/DODEBUG=false/g;" $(TINYLOGIN_DIR)/Makefile
+       $(SED) "s/^DOSTATIC.*/DOSTATIC=false/g;" $(TINYLOGIN_DIR)/Makefile
+       $(SED) "s/^DODEBUG.*/DODEBUG=false/g;" $(TINYLOGIN_DIR)/Makefile
        # date test this one
        touch $(TINYLOGIN_DIR)/Config.h
 
index 4bbe26648479a53288749f2a28b368ad7a85ce3c..6c57e881fb93535828b8bcaba437d6e82c677aaa 100644 (file)
@@ -75,7 +75,7 @@ $(TINYX_DIR)/.configure: $(DL_DIR)/$(TINYX_SOURCE) $(DL_DIR)/cross.def $(DL_DIR)
        cat $(TINYX_PATCH) | patch -d $(TINYX_DIR) -p1
        cp $(DL_DIR)/host.def $(TINYX_CF)/host.def
        cp $(DL_DIR)/cross.def $(TINYX_CF)/cross.def
-       sed -i -e 's:REPLACE_STAGING_DIR:$(STAGING_DIR):g' \
+       $(SED) 's:REPLACE_STAGING_DIR:$(STAGING_DIR):g' \
                        $(TINYX_CF)/cross.def \
                        $(TINYX_LDIR)/X11/Xlib.h
        touch $(TINYX_DIR)/.configure
index faf6de9db045d8fd9a6275bb5d38f4181bdaebb0..ed56446b9f1ddc4bb53ca573dbc1ff5ab2ba4369 100644 (file)
@@ -37,33 +37,33 @@ $(UCLIBC_DIR)/.unpacked: $(DL_DIR)/$(UCLIBC_SOURCE)
        touch $(UCLIBC_DIR)/.unpacked
 
 $(UCLIBC_DIR)/.configured: $(UCLIBC_DIR)/.unpacked $(LINUX_DIR)/.configured
-       sed -i -e 's,^CROSS=.*,CROSS=$(TARGET_CROSS),g' $(UCLIBC_DIR)/Rules.mak
+       $(SED) 's,^CROSS=.*,CROSS=$(TARGET_CROSS),g' $(UCLIBC_DIR)/Rules.mak
 ifeq ($(ENABLE_LOCALE),true)
        cp $(SOURCE_DIR)/uClibc.config-locale $(UCLIBC_DIR)/.config
 else
        cp $(SOURCE_DIR)/uClibc.config $(UCLIBC_DIR)/.config
 endif
-       sed -i -e 's,^.*TARGET_$(UCLIBC_TARGET_ARCH).*,TARGET_$(UCLIBC_TARGET_ARCH)=y,g' \
+       $(SED) 's,^.*TARGET_$(UCLIBC_TARGET_ARCH).*,TARGET_$(UCLIBC_TARGET_ARCH)=y,g' \
                $(UCLIBC_DIR)/.config
-       sed -i -e 's,^TARGET_ARCH.*,TARGET_ARCH=\"$(UCLIBC_TARGET_ARCH)\",g' $(UCLIBC_DIR)/.config
-       sed -i -e 's,^KERNEL_SOURCE=.*,KERNEL_SOURCE=\"$(LINUX_DIR)\",g' \
+       $(SED) 's,^TARGET_ARCH.*,TARGET_ARCH=\"$(UCLIBC_TARGET_ARCH)\",g' $(UCLIBC_DIR)/.config
+       $(SED) 's,^KERNEL_SOURCE=.*,KERNEL_SOURCE=\"$(LINUX_DIR)\",g' \
                $(UCLIBC_DIR)/.config
-       sed -i -e 's,^RUNTIME_PREFIX=.*,RUNTIME_PREFIX=\"/\",g' \
+       $(SED) 's,^RUNTIME_PREFIX=.*,RUNTIME_PREFIX=\"/\",g' \
                $(UCLIBC_DIR)/.config
-       sed -i -e 's,^DEVEL_PREFIX=.*,DEVEL_PREFIX=\"/usr/\",g' \
+       $(SED) 's,^DEVEL_PREFIX=.*,DEVEL_PREFIX=\"/usr/\",g' \
                $(UCLIBC_DIR)/.config
-       sed -i -e 's,^SHARED_LIB_LOADER_PREFIX=.*,SHARED_LIB_LOADER_PREFIX=\"/lib\",g' \
+       $(SED) 's,^SHARED_LIB_LOADER_PREFIX=.*,SHARED_LIB_LOADER_PREFIX=\"/lib\",g' \
                $(UCLIBC_DIR)/.config
 ifeq ($(strip $(BUILD_WITH_LARGEFILE)),true)
-       sed -i -e "s/^.*UCLIBC_HAS_LFS.*/UCLIBC_HAS_LFS=y/;" \
+       $(SED) "s/^.*UCLIBC_HAS_LFS.*/UCLIBC_HAS_LFS=y/;" \
                $(UCLIBC_DIR)/.config
 else
-       sed -i -e "s/^.*UCLIBC_HAS_LFS.*/UCLIBC_HAS_LFS=n/;" \
+       $(SED) "s/^.*UCLIBC_HAS_LFS.*/UCLIBC_HAS_LFS=n/;" \
                $(UCLIBC_DIR)/.config
 endif
-       sed -i -e 's,.*UCLIBC_HAS_WCHAR.*,UCLIBC_HAS_WCHAR=y,g' $(UCLIBC_DIR)/.config
+       $(SED) 's,.*UCLIBC_HAS_WCHAR.*,UCLIBC_HAS_WCHAR=y,g' $(UCLIBC_DIR)/.config
        if [ -n "$(strip $(TARGET_SOFT_FLOAT))" ] ; then \
-               sed -i -e 's,.*HAS_FPU.*,HAS_FPU=n\nUCLIBC_HAS_FLOATS=y\nUCLIBC_HAS_SOFT_FLOAT=y,g' \
+               $(SED) 's,.*HAS_FPU.*,HAS_FPU=n\nUCLIBC_HAS_FLOATS=y\nUCLIBC_HAS_SOFT_FLOAT=y,g' \
                        $(UCLIBC_DIR)/.config; \
        fi
        $(MAKE) -C $(UCLIBC_DIR) PREFIX=$(STAGING_DIR) headers install_dev;
index d92dd5c2b8ab4b7295824929ed7992c32a84e4f5..46cb203d0fb3468c7e51cc5df0fc30b6ba842241 100644 (file)
@@ -44,9 +44,9 @@ $(UDHCP_DIR)/udhcpc: $(UDHCP_DIR)/.unpacked
        $(MAKE) CROSS_COMPILE="$(TARGET_CROSS)" prefix="$(TARGET_DIR)" -C $(UDHCP_DIR)
 
 $(TARGET_DIR)/sbin/udhcpc: $(UDHCP_DIR)/udhcpc
-       sed -i -e 's/pump/udhcpc/' $(TARGET_DIR)/etc/pcmcia/network*
-       sed -i -e 's/PUMP/UDHCPC/' $(TARGET_DIR)/etc/pcmcia/network*
-       sed -i -e 's/DHCP="n"/DHCP="y"/' $(TARGET_DIR)/etc/pcmcia/network*
+       $(SED) 's/pump/udhcpc/' $(TARGET_DIR)/etc/pcmcia/network*
+       $(SED) 's/PUMP/UDHCPC/' $(TARGET_DIR)/etc/pcmcia/network*
+       $(SED) '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/
index 1572cefb925aef3c0083727c81934504747c3d17..e84541c03e718d5f2e4c43da21f14c352f589c2c 100644 (file)
@@ -35,7 +35,7 @@ $(LINUX_DIR)/.patched: $(LINUX_DIR)/.unpacked
        touch $(LINUX_DIR)/.patched
 
 $(LINUX_DIR)/.set_arch: $(LINUX_DIR)/.patched
-       sed -i -e "s/^ARCH :=.*/ARCH:=um/g;" $(LINUX_DIR)/Makefile
+       $(SED) "s/^ARCH :=.*/ARCH:=um/g;" $(LINUX_DIR)/Makefile
        touch $(LINUX_DIR)/.set_arch
 
 $(LINUX_DIR)/.configured $(BUILD_DIR)/linux/.configured:  $(LINUX_DIR)/.set_arch  $(LINUX_KCONFIG)
index 48dd32d1fb628b73b14b0b52fc41b0e6414f30a8..d1ac18ccad984045942c6f754b5d5b44e85841e3 100644 (file)
@@ -34,9 +34,9 @@ $(UTIL-LINUX_DIR)/.configured: $(UTIL-LINUX_DIR)/.unpacked
                --infodir=/usr/info \
                $(DISABLE_NLS) \
        );
-       sed -i -e "s,^INSTALLSUID=.*,INSTALLSUID=\\$$\(INSTALL\) -m \\$$\(BINMODE\)," \
+       $(SED) "s,^INSTALLSUID=.*,INSTALLSUID=\\$$\(INSTALL\) -m \\$$\(BINMODE\)," \
                $(UTIL-LINUX_DIR)/MCONFIG
-       sed -i -e "s,^USE_TTY_GROUP=.*,USE_TTY_GROUP=no," $(UTIL-LINUX_DIR)/MCONFIG
+       $(SED) "s,^USE_TTY_GROUP=.*,USE_TTY_GROUP=no," $(UTIL-LINUX_DIR)/MCONFIG
        touch $(UTIL-LINUX_DIR)/.configured
 
 $(UTIL-LINUX_BINARY): $(UTIL-LINUX_DIR)/.configured
diff --git a/sources/sedcheck.sh b/sources/sedcheck.sh
new file mode 100755 (executable)
index 0000000..f6fcebd
--- /dev/null
@@ -0,0 +1,21 @@
+#!/bin/sh
+
+if [ -x /usr/bin/sed ]; then 
+    SED="/usr/bin/sed";
+else
+    if [ -x /bin/sed ]; then 
+       SED="/bin/sed";
+    fi;
+fi;
+
+echo "HELLO" > .sedtest
+$SED -i -e "s/HELLO/GOODBYE/" .sedtest >/dev/null 2>&1
+
+if [ $? != 0 ] ; then
+       rm -f .sedtest
+       echo build-sed-host-binary
+fi;
+rm -f .sedtest
+echo use-sed-host-binary
+
+