aboutsummaryrefslogtreecommitdiffstats
path: root/package
diff options
context:
space:
mode:
Diffstat (limited to 'package')
-rw-r--r--package/Makefile.in2
-rw-r--r--package/file/file.mk63
2 files changed, 50 insertions, 15 deletions
diff --git a/package/Makefile.in b/package/Makefile.in
index b76f3ba70..a81d469a1 100644
--- a/package/Makefile.in
+++ b/package/Makefile.in
@@ -26,7 +26,7 @@ TOOL_BUILD_DIR=$(BASE_DIR)/toolchain_build_$(ARCH)$(ARCH_FPU_SUFFIX)
# Strip off the annoying quoting
STAGING_DIR:=$(strip $(subst ",, $(BR2_STAGING_DIR)))
#"
-TARGET_PATH=$(STAGING_DIR)/bin:/bin:/sbin:/usr/bin:/usr/sbin
+TARGET_PATH=$(STAGING_DIR)/bin:$(TOOL_BUILD_DIR)/bin:/bin:/sbin:/usr/bin:/usr/sbin
IMAGE:=$(BASE_DIR)/rootfs.$(ARCH)$(ARCH_FPU_SUFFIX)
REAL_GNU_TARGET_NAME=$(OPTIMIZE_FOR_CPU)-linux-uclibc
GNU_TARGET_NAME=$(OPTIMIZE_FOR_CPU)-linux
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)
#############################################################
#