diff options
author | Eric Andersen <andersen@codepoet.org> | 2003-12-19 23:59:04 +0000 |
---|---|---|
committer | Eric Andersen <andersen@codepoet.org> | 2003-12-19 23:59:04 +0000 |
commit | 0af92f5e6f57ad00c8e4af266919387daab02227 (patch) | |
tree | 8eb6b8a73d8fa505b974b908729550a7106fdd8f | |
parent | 21a6d6102a25a0470928be89d676deb4ccb9de69 (diff) | |
download | buildroot-novena-0af92f5e6f57ad00c8e4af266919387daab02227.tar.gz buildroot-novena-0af92f5e6f57ad00c8e4af266919387daab02227.zip |
Paul Fox writes:
hi erik --
bash versions 2.04.11 and 2.04.21 (at least -- they're the only
non-2.05 versions i have) seem to get the "older than" (test -ot)
answer wrong if one of the files is missing.
this patch explicitly bypasses the test if the "older" file is missing.
paul
-rw-r--r-- | make/sed.mk | 27 |
1 files changed, 15 insertions, 12 deletions
diff --git a/make/sed.mk b/make/sed.mk index aef55e185..56aac286b 100644 --- a/make/sed.mk +++ b/make/sed.mk @@ -50,12 +50,13 @@ $(SED_DIR1)/$(SED_BINARY): $(SED_DIR1)/.configured 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 + @if [ ! -f $(STAGING_DIR)/$(SED_TARGET_BINARY) -o $(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 \ @@ -113,12 +114,14 @@ $(SED_DIR2)/$(SED_BINARY): $(SED_DIR2)/.configured 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_DIR2)/$(SED_BINARY) ] ; then \ - set -x; \ - $(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 + + @if [ ! -f $(SED_DIR2)/$(SED_BINARY) -o $(TARGET_DIR)/$(SED_TARGET_BINARY) \ + -ot $(SED_DIR2)/$(SED_BINARY) ] ; then \ + set -x; \ + $(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 sed: uclibc sed-target_binary |