summaryrefslogtreecommitdiffstats
path: root/src/file.mk
diff options
context:
space:
mode:
Diffstat (limited to 'src/file.mk')
-rw-r--r--src/file.mk41
1 files changed, 41 insertions, 0 deletions
diff --git a/src/file.mk b/src/file.mk
new file mode 100644
index 0000000..14af0de
--- /dev/null
+++ b/src/file.mk
@@ -0,0 +1,41 @@
+# This file is part of MXE.
+# See index.html for further information.
+
+PKG := file
+$(PKG)_IGNORE :=
+$(PKG)_CHECKSUM := df8ffe8759ec8cd85a98dc98e858563ea2555f64
+$(PKG)_SUBDIR := file-$($(PKG)_VERSION)
+$(PKG)_FILE := file-$($(PKG)_VERSION).tar.gz
+$(PKG)_URL := ftp://ftp.astron.com/pub/file/$($(PKG)_FILE)
+$(PKG)_DEPS := gcc libgnurx
+
+define $(PKG)_UPDATE
+ wget -q -O- 'ftp://ftp.astron.com/pub/file/' | \
+ grep 'file-' | \
+ $(SED) -n 's,.*file-\([0-9][^>]*\)\.tar.*,\1,p' | \
+ tail -1
+endef
+
+define $(PKG)_BUILD
+ # "file" needs a runnable version of the "file" utility
+ # itself. This must match the source code regarding its
+ # version. Therefore we build a native one ourselves first.
+
+ cp -Rp '$(1)' '$(1).native'
+ cd '$(1).native' && ./configure \
+ --disable-shared
+ $(MAKE) -C '$(1).native/src' -j '$(JOBS)' file
+
+ cd '$(1)' && ./configure \
+ --host='$(TARGET)' \
+ --build="`config.guess`" \
+ --disable-shared \
+ --prefix='$(PREFIX)/$(TARGET)'
+ $(MAKE) -C '$(1)' -j '$(JOBS)' bin_PROGRAMS= sbin_PROGRAMS= noinst_PROGRAMS= man_MANS= FILE_COMPILE='$(1).native/src/file'
+ $(MAKE) -C '$(1)' -j 1 install bin_PROGRAMS= sbin_PROGRAMS= noinst_PROGRAMS= man_MANS=
+
+ '$(TARGET)-gcc' \
+ -W -Wall -Werror -ansi -pedantic \
+ '$(2).c' -o '$(PREFIX)/$(TARGET)/bin/test-file.exe' \
+ -lmagic -lgnurx -lshlwapi
+endef