Tcl installs private headers. Also, make installation nicer.
[gumsense-br.git] / package / file / file.mk
blob17c4fd94a2d0fe4287521599020e432f14c49bdf
1 #############################################################
3 # file
5 #############################################################
6 FILE_VER:=4.16
7 FILE_SOURCE:=file-$(FILE_VER).tar.gz
8 FILE_SITE:=ftp://ftp.astron.com/pub/file
9 FILE_DIR1:=$(TOOL_BUILD_DIR)/file-$(FILE_VER)
10 FILE_DIR2:=$(BUILD_DIR)/file-$(FILE_VER)
11 FILE_CAT:=zcat
12 FILE_BINARY:=src/file
13 FILE_TARGET_BINARY:=usr/bin/file
15 $(DL_DIR)/$(FILE_SOURCE):
16 $(WGET) -P $(DL_DIR) $(FILE_SITE)/$(FILE_SOURCE)
18 file-source: $(DL_DIR)/$(FILE_SOURCE)
21 #############################################################
23 # build file for use on the host system
25 #############################################################
26 $(FILE_DIR1)/.unpacked: $(DL_DIR)/$(FILE_SOURCE)
27 $(FILE_CAT) $(DL_DIR)/$(FILE_SOURCE) | tar -C $(TOOL_BUILD_DIR) $(TAR_OPTIONS) -
28 touch $(FILE_DIR1)/.unpacked
30 $(FILE_DIR1)/.configured: $(FILE_DIR1)/.unpacked
31 (cd $(FILE_DIR1); rm -rf config.cache; \
32 ./configure \
33 --prefix=$(FILE_DIR1)/install \
35 touch $(FILE_DIR1)/.configured
37 $(TOOL_BUILD_DIR)/bin/file: $(FILE_DIR1)/.configured
38 $(MAKE) -C $(FILE_DIR1) install
39 ln -sf $(FILE_DIR1)/install/bin/file $(TOOL_BUILD_DIR)/bin/file
41 host-file: $(TOOL_BUILD_DIR)/bin/file
43 host-file-clean:
44 $(MAKE) -C $(FILE_DIR1) clean
46 host-file-dirclean:
47 rm -rf $(FILE_DIR1)
49 #############################################################
51 # build file for use on the target system
53 #############################################################
54 $(FILE_DIR2)/.unpacked: $(DL_DIR)/$(FILE_SOURCE)
55 $(FILE_CAT) $(DL_DIR)/$(FILE_SOURCE) | tar -C $(BUILD_DIR) $(TAR_OPTIONS) -
56 toolchain/patch-kernel.sh $(FILE_DIR2) package/file/ file\*.patch
57 touch $(FILE_DIR2)/.unpacked
59 $(FILE_DIR2)/.configured: $(FILE_DIR2)/.unpacked
60 (cd $(FILE_DIR2); rm -rf config.cache; \
61 $(TARGET_CONFIGURE_OPTS) \
62 CFLAGS="$(TARGET_CFLAGS)" \
63 ./configure \
64 --target=$(GNU_TARGET_NAME) \
65 --host=$(GNU_TARGET_NAME) \
66 --build=$(GNU_HOST_NAME) \
67 --prefix=/usr \
68 --exec-prefix=/usr \
69 --bindir=/usr/bin \
70 --sbindir=/usr/sbin \
71 --libexecdir=/usr/lib \
72 --sysconfdir=/etc \
73 --datadir=/usr/share/misc \
74 --localstatedir=/var \
75 --mandir=/usr/man \
76 --infodir=/usr/info \
77 $(DISABLE_NLS) \
78 $(DISABLE_LARGEFILE) \
79 --enable-static \
80 --disable-fsect-man5 \
82 touch $(FILE_DIR2)/.configured
84 $(FILE_DIR2)/$(FILE_BINARY): $(FILE_DIR2)/.configured $(TOOL_BUILD_DIR)/bin/file
85 $(MAKE) $(TARGET_CONFIGURE_OPTS) LDFLAGS="-static" -C $(FILE_DIR2)
87 $(TARGET_DIR)/$(FILE_TARGET_BINARY): $(FILE_DIR2)/$(FILE_BINARY)
88 $(MAKE) $(TARGET_CONFIGURE_OPTS) DESTDIR=$(TARGET_DIR) -C $(FILE_DIR2) install
89 -($(STRIP) $(TARGET_DIR)/usr/lib/libmagic.so.*.* > /dev/null 2>&1)
90 rm -rf $(TARGET_DIR)/share/locale $(TARGET_DIR)/usr/info \
91 $(TARGET_DIR)/usr/man $(TARGET_DIR)/usr/share/doc
93 file: zlib uclibc $(TARGET_DIR)/$(FILE_TARGET_BINARY)
95 file-clean:
96 $(MAKE) DESTDIR=$(TARGET_DIR) CC=$(TARGET_CC) -C $(FILE_DIR2) uninstall
97 -$(MAKE) -C $(FILE_DIR2) clean
99 file-dirclean:
100 rm -rf $(FILE_DIR2)
102 #############################################################
104 # Toplevel Makefile options
106 #############################################################
107 ifeq ($(strip $(BR2_PACKAGE_FILE)),y)
108 TARGETS+=file
109 endif