diff options
Diffstat (limited to 'package/libmad')
-rw-r--r-- | package/libmad/Config.in | 11 | ||||
-rw-r--r-- | package/libmad/libmad.mk | 39 |
2 files changed, 37 insertions, 13 deletions
diff --git a/package/libmad/Config.in b/package/libmad/Config.in index 540ac0267..bf7c55f48 100644 --- a/package/libmad/Config.in +++ b/package/libmad/Config.in @@ -2,8 +2,15 @@ config BR2_PACKAGE_LIBMAD bool "libmad" default n help - High-quality MPEG audio decoder. All computations are performed - with fixed-point integer arithmetic, making it ideal for systems + High-quality MPEG audio decoder. All computations are performed + with fixed-point integer arithmetic, making it ideal for systems without a floating-point unit. http://www.underbit.com/products/mad/ + +config BR2_PACKAGE_LIBMAD_TARGET_HEADERS + bool "libmad headers in target" + default n + depends on BR2_PACKAGE_LIBMAD + help + Put headers files in the target. diff --git a/package/libmad/libmad.mk b/package/libmad/libmad.mk index dc7791193..69552737c 100644 --- a/package/libmad/libmad.mk +++ b/package/libmad/libmad.mk @@ -7,8 +7,7 @@ LIBMAD_VERSION=0.15.1b LIBMAD_SOURCE=libmad-$(LIBMAD_VERSION).tar.gz LIBMAD_SITE=http://$(BR2_SOURCEFORGE_MIRROR).dl.sourceforge.net/sourceforge/mad/ -LIBMAD_DIR=$(BUILD_DIR)/${shell basename $(LIBMAD_SOURCE) .tar.gz} -LIBMAD_WORKDIR=$(BUILD_DIR)/libmad-$(LIBMAD_VERSION) +LIBMAD_DIR=$(BUILD_DIR)/libmad-$(LIBMAD_VERSION) LIBMAD_CAT:=$(ZCAT) $(DL_DIR)/$(LIBMAD_SOURCE): @@ -33,25 +32,40 @@ $(LIBMAD_DIR)/.configured: $(LIBMAD_DIR)/.unpacked ); touch $(LIBMAD_DIR)/.configured -$(LIBMAD_WORKDIR)/libmad.la: $(LIBMAD_DIR)/.configured +$(LIBMAD_DIR)/libmad.la: $(LIBMAD_DIR)/.configured rm -f $@ - $(MAKE) CC=$(TARGET_CC) -C $(LIBMAD_WORKDIR) + $(MAKE) CC=$(TARGET_CC) -C $(LIBMAD_DIR) -$(LIBMAD_WORKDIR)/.installed: $(LIBMAD_WORKDIR)/libmad.la - $(MAKE) prefix=$(TARGET_DIR)/usr -C $(LIBMAD_WORKDIR) install - touch $(LIBMAD_WORKDIR)/.installed +$(STAGING_DIR)/usr/lib/libmad.so: $(LIBMAD_DIR)/libmad.la + $(MAKE) DESTDIR=$(STAGING_DIR) -C $(LIBMAD_DIR) install -libmad: uclibc $(LIBMAD_WORKDIR)/.installed +$(TARGET_DIR)/usr/lib/libmad.so: $(STAGING_DIR)/usr/lib/libmad.so + cp -dpf $(STAGING_DIR)/usr/lib/libmad.so* $(TARGET_DIR)/usr/lib/ + $(STRIP) --strip-unneeded $(TARGET_DIR)/usr/lib/libmad.so* + +$(TARGET_DIR)/usr/lib/libmad.a: $(STAGING_DIR)/usr/lib/libmad.so + mkdir -p $(TARGET_DIR)/usr/include + cp -dpf $(STAGING_DIR)/usr/include/mad.h $(TARGET_DIR)/usr/include/ + cp -dpf $(STAGING_DIR)/usr/lib/libmad.*a $(TARGET_DIR)/usr/lib/ + +libmad: uclibc $(TARGET_DIR)/usr/lib/libmad.so + +libmad-headers: $(TARGET_DIR)/usr/lib/libmad.a libmad-source: $(DL_DIR)/$(LIBMAD_SOURCE) libmad-clean: - @if [ -d $(LIBMAD_WORKDIR)/Makefile ] ; then \ - $(MAKE) -C $(LIBMAD_WORKDIR) clean ; \ + @if [ -d $(LIBMAD_DIR)/Makefile ] ; then \ + $(MAKE) -C $(LIBMAD_DIR) clean ; \ fi; + rm -f $(STAGING_DIR)/usr/lib/libmad.* + rm -f $(STAGING_DIR)/usr/include/mad.h + rm -f $(TARGET_DIR)/usr/lib/libmad.* + rm -f $(TARGET_DIR)/usr/include/mad.h + libmad-dirclean: - rm -rf $(LIBMAD_DIR) $(LIBMAD_WORKDIR) + rm -rf $(LIBMAD_DIR) ############################################################# # # Toplevel Makefile options @@ -60,3 +74,6 @@ libmad-dirclean: ifeq ($(strip $(BR2_PACKAGE_LIBMAD)),y) TARGETS+=libmad endif +ifeq ($(strip $(BR2_PACKAGE_LIBMAD_TARGET_HEADERS)),y) +TARGETS+=libmad-headers +endif |