diff options
author | "Steven J. Hill" <sjhill@realitydiluted.com> | 2005-08-30 03:35:37 +0000 |
---|---|---|
committer | "Steven J. Hill" <sjhill@realitydiluted.com> | 2005-08-30 03:35:37 +0000 |
commit | 6b632ad624ca771a6d1fe2dede82e5fa69bb2028 (patch) | |
tree | f16afb7e323c1ab1cead5882eae546759b1b8e70 /package/file/file.mk | |
parent | 4b186393b40453cc9749adc6e072eb70fc7baef7 (diff) | |
download | buildroot-novena-6b632ad624ca771a6d1fe2dede82e5fa69bb2028.tar.gz buildroot-novena-6b632ad624ca771a6d1fe2dede82e5fa69bb2028.zip |
Build 'file' for the host as well as the target. If the host system has a version older than that being built for buildroot, the target build will fail. So, we build 'file' for the host and add actually add '$(TOOL_BUILD_DIR)/bin' to the TARGET_PATH so that it takes precedence over the host system version.
Diffstat (limited to 'package/file/file.mk')
-rw-r--r-- | package/file/file.mk | 63 |
1 files changed, 49 insertions, 14 deletions
diff --git a/package/file/file.mk b/package/file/file.mk index d1f2f8e9b..21343a46a 100644 --- a/package/file/file.mk +++ b/package/file/file.mk @@ -6,7 +6,8 @@ FILE_VER:=4.15 FILE_SOURCE:=file-$(FILE_VER).tar.gz FILE_SITE:=ftp://ftp.astron.com/pub/file -FILE_DIR:=$(BUILD_DIR)/file-$(FILE_VER) +FILE_DIR1:=$(TOOL_BUILD_DIR)/file-$(FILE_VER) +FILE_DIR2:=$(BUILD_DIR)/file-$(FILE_VER) FILE_CAT:=zcat FILE_BINARY:=src/file FILE_TARGET_BINARY:=usr/bin/file @@ -16,13 +17,47 @@ $(DL_DIR)/$(FILE_SOURCE): file-source: $(DL_DIR)/$(FILE_SOURCE) -$(FILE_DIR)/.unpacked: $(DL_DIR)/$(FILE_SOURCE) + +############################################################# +# +# build file for use on the host system +# +############################################################# +$(FILE_DIR1)/.unpacked: $(DL_DIR)/$(FILE_SOURCE) + $(FILE_CAT) $(DL_DIR)/$(FILE_SOURCE) | tar -C $(TOOL_BUILD_DIR) $(TAR_OPTIONS) - + touch $(FILE_DIR1)/.unpacked + +$(FILE_DIR1)/.configured: $(FILE_DIR1)/.unpacked + (cd $(FILE_DIR1); rm -rf config.cache; \ + ./configure \ + --prefix=$(FILE_DIR1)/install \ + ); + touch $(FILE_DIR1)/.configured + +$(TOOL_BUILD_DIR)/bin/file: $(FILE_DIR1)/.configured + $(MAKE) -C $(FILE_DIR1) install + ln -sf $(FILE_DIR1)/install/bin/file $(TOOL_BUILD_DIR)/bin/file + +host-file: $(TOOL_BUILD_DIR)/bin/file + +host-file-clean: + $(MAKE) -C $(FILE_DIR1) clean + +host-file-dirclean: + rm -rf $(FILE_DIR1) + +############################################################# +# +# build file for use on the target system +# +############################################################# +$(FILE_DIR2)/.unpacked: $(DL_DIR)/$(FILE_SOURCE) $(FILE_CAT) $(DL_DIR)/$(FILE_SOURCE) | tar -C $(BUILD_DIR) $(TAR_OPTIONS) - - toolchain/patch-kernel.sh $(FILE_DIR) package/file/ file\*.patch - touch $(FILE_DIR)/.unpacked + toolchain/patch-kernel.sh $(FILE_DIR2) package/file/ file\*.patch + touch $(FILE_DIR2)/.unpacked -$(FILE_DIR)/.configured: $(FILE_DIR)/.unpacked - (cd $(FILE_DIR); rm -rf config.cache; \ +$(FILE_DIR2)/.configured: $(FILE_DIR2)/.unpacked + (cd $(FILE_DIR2); rm -rf config.cache; \ $(TARGET_CONFIGURE_OPTS) \ CFLAGS="$(TARGET_CFLAGS)" \ ./configure \ @@ -44,13 +79,13 @@ $(FILE_DIR)/.configured: $(FILE_DIR)/.unpacked --enable-static \ --disable-fsect-man5 \ ); - touch $(FILE_DIR)/.configured + touch $(FILE_DIR2)/.configured -$(FILE_DIR)/$(FILE_BINARY): $(FILE_DIR)/.configured - $(MAKE) $(TARGET_CONFIGURE_OPTS) LDFLAGS="-static" -C $(FILE_DIR) +$(FILE_DIR2)/$(FILE_BINARY): $(FILE_DIR2)/.configured + $(MAKE) $(TARGET_CONFIGURE_OPTS) LDFLAGS="-static" -C $(FILE_DIR2) -$(TARGET_DIR)/$(FILE_TARGET_BINARY): $(FILE_DIR)/$(FILE_BINARY) - $(MAKE) $(TARGET_CONFIGURE_OPTS) DESTDIR=$(TARGET_DIR) -C $(FILE_DIR) install +$(TARGET_DIR)/$(FILE_TARGET_BINARY): $(FILE_DIR2)/$(FILE_BINARY) + $(MAKE) $(TARGET_CONFIGURE_OPTS) DESTDIR=$(TARGET_DIR) -C $(FILE_DIR2) install -($(STRIP) $(TARGET_DIR)/usr/lib/libmagic.so.*.* > /dev/null 2>&1) rm -rf $(TARGET_DIR)/share/locale $(TARGET_DIR)/usr/info \ $(TARGET_DIR)/usr/man $(TARGET_DIR)/usr/share/doc @@ -58,11 +93,11 @@ $(TARGET_DIR)/$(FILE_TARGET_BINARY): $(FILE_DIR)/$(FILE_BINARY) file: zlib uclibc $(TARGET_DIR)/$(FILE_TARGET_BINARY) file-clean: - $(MAKE) DESTDIR=$(TARGET_DIR) CC=$(TARGET_CC) -C $(FILE_DIR) uninstall - -$(MAKE) -C $(FILE_DIR) clean + $(MAKE) DESTDIR=$(TARGET_DIR) CC=$(TARGET_CC) -C $(FILE_DIR2) uninstall + -$(MAKE) -C $(FILE_DIR2) clean file-dirclean: - rm -rf $(FILE_DIR) + rm -rf $(FILE_DIR2) ############################################################# # |