mxe/src/file.mk

43 lines
1.4 KiB
Makefile

# This file is part of MXE.
# See index.html for further information.
# file
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