Cleanup + ALSA support for madplay

This commit is contained in:
Ulf Samuelsson 2007-07-28 15:57:09 +00:00
parent 412a8dbcbd
commit fdda0233d8
2 changed files with 45 additions and 26 deletions

View File

@ -4,9 +4,15 @@ config BR2_PACKAGE_MADPLAY
select BR2_PACKAGE_LIBMAD
select BR2_PACKAGE_LIBID3TAG
help
MAD is a high-quality fixed-point MPEG audio decoder with
24-bit output. The implementation is entirely new, based on
the ISO/IEC standards, and performs especially well on systems
without native floating-point support.
Command-line front-end to libmad, 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/
config BR2_PACKAGE_MADPLAY_ALSA
bool
default y
depends on BR2_PACKAGE_MADPLAY && BR2_PACKAGE_ALSA_LIB

View File

@ -3,52 +3,65 @@
# madplay
#
#############################################################
MADPLAY_VERSION=0.15.2b
MADPLAY_SOURCE=madplay-$(MADPLAY_VERSION).tar.gz
MADPLAY_SITE=http://$(BR2_SOURCEFORGE_MIRROR).dl.sourceforge.net/sourceforge/mad
MADPLAY_DIR=$(BUILD_DIR)/madplay-$(MADPLAY_VERSION)
MADPLAY_VERSION:=0.15.2b
MADPLAY_SOURCE:=madplay-$(MADPLAY_VERSION).tar.gz
MADPLAY_SITE:=http://$(BR2_SOURCEFORGE_MIRROR).dl.sourceforge.net/sourceforge/mad
MADPLAY_CAT:=$(ZCAT)
MADPLAY_DIR:=$(BUILD_DIR)/madplay-$(MADPLAY_VERSION)
MADPLAY_BIN:=madplay
MADPLAY_TARGET_BIN:=usr/bin/$(MADPLAY_BIN)
# Check if ALSA is built, then we should configure after alsa-lib so
# ./configure can find alsa-lib.
ifeq ($(strip $(BR2_PACKAGE_MADPLAY_ALSA)),y)
MADPLAY_USE_ALSA:=--with-alsa
MADPLAY_ALSA_DEP:=alsa-lib
endif
$(DL_DIR)/$(MADPLAY_SOURCE):
$(WGET) -P $(DL_DIR) $(MADPLAY_SITE)/$(MADPLAY_SOURCE)
$(WGET) -P $(DL_DIR) $(MADPLAY_SITE)/$(MADPLAY_SOURCE)
$(MADPLAY_DIR)/.unpacked: $(DL_DIR)/$(MADPLAY_SOURCE)
$(MADPLAY_CAT) $(DL_DIR)/$(MADPLAY_SOURCE) | tar -C $(BUILD_DIR) $(TAR_OPTIONS) -
touch $(MADPLAY_DIR)/.unpacked
toolchain/patch-kernel.sh $(MADPLAY_DIR) package/madplay madplay\*.patch\*
$(CONFIG_UPDATE) $(MADPLAY_DIR)
touch $@
$(MADPLAY_DIR)/.configured: $(MADPLAY_DIR)/.unpacked
(cd $(MADPLAY_DIR); rm -rf config.cache; \
$(TARGET_CONFIGURE_OPTS) \
$(TARGET_CONFIGURE_ARGS) \
CFLAGS="$(TARGET_CFLAGS) $(BR2_MADPLAY_CFLAGS)" \
LDFLAGS="$(TARGET_LDFLAGS)" \
./configure \
--target=$(GNU_TARGET_NAME) \
--host=$(GNU_TARGET_NAME) \
--target=$(REAL_GNU_TARGET_NAME) \
--host=$(REAL_GNU_TARGET_NAME) \
--build=$(GNU_HOST_NAME) \
--prefix=/usr \
--sysconfdir=/etc \
$(MADPLAY_USE_ALSA) \
$(DISABLE_NLS) \
$(DISABLE_LARGEFILE) \
);
touch $(MADPLAY_DIR)/.configured
touch $@
$(MADPLAY_DIR)/src/madplay: $(MADPLAY_DIR)/.configured
$(MAKE) CC=$(TARGET_CC) -C $(MADPLAY_DIR)
$(MADPLAY_DIR)/$(MADPLAY_BIN): $(MADPLAY_DIR)/.configured
$(MAKE) -C $(MADPLAY_DIR)
$(MADPLAY_DIR)/.installed: $(MADPLAY_DIR)/src/madplay
$(MAKE) -C $(MADPLAY_DIR) DESTDIR=$(TARGET_DIR) install
touch $(MADPLAY_DIR)/.installed
$(TARGET_DIR)/$(MADPLAY_TARGET_BIN): $(MADPLAY_DIR)/$(MADPLAY_BIN)
$(INSTALL) -D $(MADPLAY_DIR)/$(MADPLAY_BIN) $(TARGET_DIR)/$(MADPLAY_TARGET_BIN)
$(STRIP) --strip-unneeded $(TARGET_DIR)/$(MADPLAY_TARGET_BIN)
madplay: uclibc libmad $(MADPLAY_DIR)/.installed
madplay-source: $(DL_DIR)/$(MADPLAY_SOURCE)
madplay: uclibc $(MADPLAY_ALSA_DEP) libmad libid3tag $(TARGET_DIR)/$(MADPLAY_TARGET_BIN)
madplay-clean:
@if [ -d $(MADPLAY_DIR)/Makefile ] ; then \
$(MAKE) -C $(MADPLAY_DIR) clean ; \
fi;
rm -f $(TARGET_DIR)/$(MADPLAY_TARGET_BIN)
$(MAKE) -C $(MADPLAY_DIR) clean
madplay-dirclean:
rm -rf $(MADPLAY_DIR)
madplay-source: $(DL_DIR)/$(MADPLAY_SOURCE)
#############################################################
#
# Toplevel Makefile options