From 548433bf61c63ce28473d5be74f1baa746f688f8 Mon Sep 17 00:00:00 2001
From: nico <nico@3c298f89-4303-0410-b956-a3cf2f4a3e73>
Date: Mon, 17 Oct 2005 22:04:28 +0000
Subject: [PATCH] add libmad package (thanks to David Collet)

git-svn-id: svn://svn.openwrt.org/openwrt/trunk@2154 3c298f89-4303-0410-b956-a3cf2f4a3e73
---
 openwrt/package/Config.in                  |  1 +
 openwrt/package/Makefile                   |  1 +
 openwrt/package/libmad/Config.in           | 11 +++
 openwrt/package/libmad/Makefile            | 95 ++++++++++++++++++++++
 openwrt/package/libmad/ipkg/libmad.control |  8 ++
 5 files changed, 116 insertions(+)
 create mode 100644 openwrt/package/libmad/Config.in
 create mode 100644 openwrt/package/libmad/Makefile
 create mode 100644 openwrt/package/libmad/ipkg/libmad.control

diff --git a/openwrt/package/Config.in b/openwrt/package/Config.in
index d736ac375..0734eab70 100644
--- a/openwrt/package/Config.in
+++ b/openwrt/package/Config.in
@@ -158,6 +158,7 @@ source "package/jpeg/Config.in"  # libjpeg
 source "package/libogg/Config.in"
 source "package/libtool/Config.in"  # libltdl
 source "package/lzo/Config.in"  # liblzo
+source "package/libmad/Config.in"
 source "package/matrixssl/Config.in"  # libmatrixssl
 source "package/mysql/Config.in"  # limysqlclient
 source "package/ncurses/Config.in"  # libncurses
diff --git a/openwrt/package/Makefile b/openwrt/package/Makefile
index 034dc474a..0e0e64e29 100644
--- a/openwrt/package/Makefile
+++ b/openwrt/package/Makefile
@@ -81,6 +81,7 @@ package-$(BR2_PACKAGE_LIBGD) += libgd
 package-$(BR2_PACKAGE_LIBGDBM) += libgdbm
 package-$(BR2_PACKAGE_LIBGPG_ERROR) += libgpg-error
 package-$(BR2_PACKAGE_LIBID3TAG) += libid3tag
+package-$(BR2_PACKAGE_LIBMAD) += libmad
 package-$(BR2_PACKAGE_LIBNET) += libnet
 package-$(BR2_PACKAGE_LIBNIDS) += libnids
 package-$(BR2_PACKAGE_LIBOGG) += libogg
diff --git a/openwrt/package/libmad/Config.in b/openwrt/package/libmad/Config.in
new file mode 100644
index 000000000..ccbfa4b84
--- /dev/null
+++ b/openwrt/package/libmad/Config.in
@@ -0,0 +1,11 @@
+config BR2_PACKAGE_LIBMAD
+	tristate "libmad - An high-quality MPEG audio decoding library"
+	default m if CONFIG_DEVEL
+	help
+	  MAD is a high-quality MPEG audio decoder. It currently supports 
+	  MPEG-1 and the MPEG-2 extension to lower sampling frequencies, 
+	  as well as the de facto MPEG 2.5 format. All three audio layers -
+	  Layer I, Layer II, and Layer III (i.e. MP3) - are fully implemented.
+	  
+	  http://www.underbit.com/products/mad/
+	  
diff --git a/openwrt/package/libmad/Makefile b/openwrt/package/libmad/Makefile
new file mode 100644
index 000000000..4a979d0c0
--- /dev/null
+++ b/openwrt/package/libmad/Makefile
@@ -0,0 +1,95 @@
+# $Id$
+
+include $(TOPDIR)/rules.mk
+
+PKG_NAME:=libmad
+PKG_VERSION:=0.15.1b
+PKG_RELEASE:=1
+PKG_MD5SUM:=1be543bc30c56fb6bea1d7bf6a64e66c
+
+PKG_SOURCE_URL:=@SF/mad \
+	ftp://ftp.mars.org/pub/mpeg/
+PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
+PKG_CAT:=zcat
+
+PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(PKG_VERSION)
+PKG_INSTALL_DIR:=$(PKG_BUILD_DIR)/ipkg-install
+
+include $(TOPDIR)/package/rules.mk
+
+$(eval $(call PKG_template,LIBMAD,libmad,$(PKG_VERSION)-$(PKG_RELEASE),$(ARCH)))
+
+$(PKG_BUILD_DIR)/.configured:
+	(cd $(PKG_BUILD_DIR); rm -rf config.{cache,status} ; \
+		$(TARGET_CONFIGURE_OPTS) \
+		CFLAGS="$(strip $(TARGET_CFLAGS))" \
+		CPPFLAGS="-I$(STAGING_DIR)/usr/include -I$(STAGING_DIR)/include" \
+		LDFLAGS="-L$(STAGING_DIR)/usr/lib -L$(STAGING_DIR)/lib" \
+		PKG_CONFIG_PATH="$(STAGING_DIR)/usr/lib/pkgconfig" \
+		./configure \
+			--target=$(GNU_TARGET_NAME) \
+			--host=$(GNU_TARGET_NAME) \
+			--build=$(GNU_HOST_NAME) \
+			--program-prefix="" \
+			--program-suffix="" \
+			--prefix=/usr \
+			--exec-prefix=/usr \
+			--bindir=/usr/bin \
+			--datadir=/usr/share \
+			--includedir=/usr/include \
+			--infodir=/usr/share/info \
+			--libdir=/usr/lib \
+			--libexecdir=/usr/lib \
+			--localstatedir=/var \
+			--mandir=/usr/share/man \
+			--sbindir=/usr/sbin \
+			--sysconfdir=/etc \
+			$(DISABLE_LARGEFILE) \
+			$(DISABLE_NLS) \
+			--enable-shared \
+			--enable-static \
+			--disable-rpath \
+			--with-gnu-ld \
+			--enable-fpm=mips \
+			--disable-debugging \
+			--enable-speed \
+	);
+	touch $@
+
+$(PKG_BUILD_DIR)/.built:
+	rm -rf $(PKG_INSTALL_DIR)
+	mkdir -p $(PKG_INSTALL_DIR)
+	$(MAKE) -C $(PKG_BUILD_DIR) \
+		DESTDIR="$(PKG_INSTALL_DIR)" \
+		all install
+	touch $@
+
+$(IPKG_LIBMAD):
+	install -m0755 -d $(IDIR_LIBMAD)/usr/lib
+	cp -fpR $(PKG_INSTALL_DIR)/usr/lib/libmad.so.* $(IDIR_LIBMAD)/usr/lib/
+	$(RSTRIP) $(IDIR_LIBMAD)
+	$(IPKG_BUILD) $(IDIR_LIBMAD) $(PACKAGE_DIR)
+
+$(STAGING_DIR)/usr/lib/libmad.so: $(PKG_BUILD_DIR)/.built
+	mkdir -p $(STAGING_DIR)/usr/include
+	cp -fpR $(PKG_INSTALL_DIR)/usr/include/mad.h $(STAGING_DIR)/usr/include/
+	mkdir -p $(STAGING_DIR)/usr/lib
+	cp -fpR $(PKG_INSTALL_DIR)/usr/lib/libmad.a $(STAGING_DIR)/usr/lib/
+	cp -fpR $(PKG_INSTALL_DIR)/usr/lib/libmad.so* $(STAGING_DIR)/usr/lib/
+	touch $@
+
+install-dev: $(STAGING_DIR)/usr/lib/libmad.so
+
+uninstall-dev:
+	rm -rf \
+		$(STAGING_DIR)/usr/include/mad.h \
+		$(STAGING_DIR)/usr/lib/libmad.a \
+		$(STAGING_DIR)/usr/lib/libmad.so* \
+
+compile: install-dev
+clean: uninstall-dev
+
+mostlyclean:
+	-$(MAKE) -C $(PKG_BUILD_DIR) clean
+	rm -f $(PKG_BUILD_DIR)/.built
+
diff --git a/openwrt/package/libmad/ipkg/libmad.control b/openwrt/package/libmad/ipkg/libmad.control
new file mode 100644
index 000000000..bd37fd4d0
--- /dev/null
+++ b/openwrt/package/libmad/ipkg/libmad.control
@@ -0,0 +1,8 @@
+Package: libmad
+Priority: optional
+Section: libs
+Version: [TBDL]
+Architecture: [TBDL]
+Maintainer: OpenWrt Developers Team <openwrt-devel@openwrt.org>, David Collett <daveco@users.sourceforge.net>
+Source: http://openwrt.org/cgi-bin/viewcvs.cgi/openwrt/package/libmad/
+Description: An high-quality MPEG audio decoding library
-- 
2.20.1