# 
# Copyright (C) 2007 OpenWrt.org
#
# This is free software, licensed under the GNU General Public License v2.
# See /LICENSE for more information.
#
# $Id$

include $(TOPDIR)/rules.mk

PKG_NAME:=file
PKG_VERSION:=4.19
PKG_RELEASE:=1

PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
PKG_SOURCE_URL:=ftp://ftp.astron.com/pub/file/
PKG_MD5SUM:=a61ef3aa8339d5987148089afde25f60

include $(INCLUDE_DIR)/package.mk

define Package/libmagic
  SECTION:=libs
  CATEGORY:=Libraries
  DEPENDS:=+zlib
  TITLE:=Determines file type using "magic" numbers
  URL:=ftp://ftp.astron.com/pub/file/
endef

define Package/file
  SECTION:=utils
  CATEGORY:=Utilities
  DEPENDS:=+libmagic
  TITLE:=Determines file type using "magic" numbers
  URL:=ftp://ftp.astron.com/pub/file/
endef

define Package/file/description
 File tests each argument in an attempt to classify it. There
 are three sets of tests, performed in this order: filesystem
 tests, magic number tests, and language tests. The first test
 that succeeds causes the file type to be printed.

 Starting with version 4, the file command is not much more than
 a wrapper around the "magic" library. 
endef

CONFIGURE_ARGS += \
	--enable-shared \
	--enable-static \
	--disable-rpath \
	--without-libiconv-prefix \
	--without-libintl-prefix \

MAKE_FLAGS += \
	-C $(PKG_BUILD_DIR)/src \
	DESTDIR="$(PKG_INSTALL_DIR)" \
	all install \

define Build/InstallDev
	mkdir -p $(1)/usr/include
	$(CP) $(PKG_INSTALL_DIR)/usr/include/magic.h $(1)/usr/include/
	mkdir -p $(1)/usr/lib
	$(CP) $(PKG_INSTALL_DIR)/usr/lib/libmagic.{a,so*} $(1)/usr/lib/
endef

define Package/libmagic/install
	$(INSTALL_DIR) $(1)/usr/lib
	$(CP) $(PKG_INSTALL_DIR)/usr/lib/libmagic.so.* $(1)/usr/lib/
endef

define Package/file/install
	$(INSTALL_DIR) $(1)/usr/bin
	$(INSTALL_DIR) $(1)/usr/share/file
	$(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/file $(1)/usr/bin
	$(INSTALL_DATA) $(PKG_BUILD_DIR)/magic/Magdir/linux $(1)/usr/share/file/magic
	$(INSTALL_DATA) $(PKG_BUILD_DIR)/magic/magic.mime $(1)/usr/share/file/magic.mime
endef

$(eval $(call BuildPackage,libmagic))
$(eval $(call BuildPackage,file))