summaryrefslogtreecommitdiff
path: root/package/madplay/madplay.mk
diff options
context:
space:
mode:
Diffstat (limited to 'package/madplay/madplay.mk')
-rw-r--r--package/madplay/madplay.mk57
1 files changed, 35 insertions, 22 deletions
diff --git a/package/madplay/madplay.mk b/package/madplay/madplay.mk
index a7ab97366..3ec3be5da 100644
--- a/package/madplay/madplay.mk
+++ b/package/madplay/madplay.mk
@@ -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
-
-$(MADPLAY_DIR)/src/madplay: $(MADPLAY_DIR)/.configured
- $(MAKE) CC=$(TARGET_CC) -C $(MADPLAY_DIR)
+ touch $@
-$(MADPLAY_DIR)/.installed: $(MADPLAY_DIR)/src/madplay
- $(MAKE) -C $(MADPLAY_DIR) DESTDIR=$(TARGET_DIR) install
- touch $(MADPLAY_DIR)/.installed
+$(MADPLAY_DIR)/$(MADPLAY_BIN): $(MADPLAY_DIR)/.configured
+ $(MAKE) -C $(MADPLAY_DIR)
-madplay: uclibc libmad $(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-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