diff options
author | nbd <nbd@3c298f89-4303-0410-b956-a3cf2f4a3e73> | 2006-09-27 14:06:46 +0000 |
---|---|---|
committer | nbd <nbd@3c298f89-4303-0410-b956-a3cf2f4a3e73> | 2006-09-27 14:06:46 +0000 |
commit | 44af1866aa41cfbbad48583106cb82201ded4fcb (patch) | |
tree | dc35000b8b3ff329b1029e8563aab31aaba9f98b /tools/sed | |
parent | f4e092f9df4fde40d424747f4c509f67cb50a03f (diff) |
move tools from toolchain/ to tools/
git-svn-id: svn://svn.openwrt.org/openwrt/branches/buildroot-ng/openwrt@4866 3c298f89-4303-0410-b956-a3cf2f4a3e73
Diffstat (limited to 'tools/sed')
-rw-r--r-- | tools/sed/Makefile | 63 | ||||
-rwxr-xr-x | tools/sed/sedcheck.sh | 25 |
2 files changed, 88 insertions, 0 deletions
diff --git a/tools/sed/Makefile b/tools/sed/Makefile new file mode 100644 index 000000000..b3169918b --- /dev/null +++ b/tools/sed/Makefile @@ -0,0 +1,63 @@ +# +# Copyright (C) 2006 OpenWrt.org +# +# This is free software, licensed under the GNU General Public License v2. +# See /LICENSE for more information. +# +include $(TOPDIR)/rules.mk + +PKG_NAME:=sed +PKG_VERSION:=4.1.2 + +PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz +PKG_SOURCE_URL:=ftp://ftp.gnu.org/gnu/$(PKG_NAME) +PKG_MD5SUM:=928f0e06422f414091917401f1a834d0 +PKG_CAT:=zcat + +PKG_BUILD_DIR:=$(TOOL_BUILD_DIR)/$(PKG_NAME)-$(PKG_VERSION) + +HOST_SED_TARGET=$(strip $(shell ./sedcheck.sh)) + +ifneq ($(HOST_SED_TARGET),build-sed-host-binary) + PKG_SOURCE:= + PKG_CAT:= +endif + +include $(INCLUDE_DIR)/host-build.mk + +ifeq ($(HOST_SED_TARGET),build-sed-host-binary) + define Build/Configure + (cd $(PKG_BUILD_DIR); rm -rf config.cache; \ + ./configure \ + --prefix=$(STAGING_DIR) \ + --prefix=/usr \ + ); + endef + + define Build/Compile + $(MAKE) -C $(PKG_BUILD_DIR) + endef + + define Build/Install + @if [ -L $(STAGING_DIR)/bin/sed ] ; then \ + rm -f $(STAGING_DIR)/bin/sed; fi; + @if [ ! -f $(STAGING_DIR)/bin/sed -o $(STAGING_DIR)/bin/sed -ot $(PKG_BUILD_DIR)/sed/sed ]; then \ + set -x; \ + mkdir -p $(STAGING_DIR)/bin; \ + $(MAKE) DESTDIR=$(STAGING_DIR) -C $(PKG_BUILD_DIR) 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 + endef +else + define Build/Compile + endef + define Build/Install + rm -rf $(STAGING_DIR)/bin/sed + mkdir -p $(STAGING_DIR)/bin + ln -s `which sed` $(STAGING_DIR)/bin/sed + endef +endif + +$(eval $(call HostBuild)) diff --git a/tools/sed/sedcheck.sh b/tools/sed/sedcheck.sh new file mode 100755 index 000000000..de15ac2f1 --- /dev/null +++ b/tools/sed/sedcheck.sh @@ -0,0 +1,25 @@ +#!/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 + +case "$1" in + *) + if [ $? != 0 ] ; then + echo build-sed-host-binary + else + echo use-sed-host-binary + fi; + ;; +esac +rm -f .sedtest + + |