Move all to deprecated folder.
This commit is contained in:
@@ -0,0 +1,72 @@
|
||||
http://patchwork.openembedded.org/patch/921/
|
||||
|
||||
diff -ur libmad-0.15.1b-orig/fixed.h libmad-0.15.1b/fixed.h
|
||||
--- libmad-0.15.1b-orig/fixed.h 2004-02-17 12:32:03.000000000 +1030
|
||||
+++ libmad-0.15.1b/fixed.h 2009-08-05 10:46:30.000000000 +0930
|
||||
@@ -299,6 +299,23 @@
|
||||
|
||||
# elif defined(FPM_MIPS)
|
||||
|
||||
+/* Test for gcc >= maj.min, as per __GNUC_PREREQ in glibc */
|
||||
+#if defined (__GNUC__) && defined (__GNUC_MINOR__)
|
||||
+#define __GNUC_PREREQ(maj, min) \
|
||||
+ ((__GNUC__ << 16) + __GNUC_MINOR__ >= ((maj) << 16) + (min))
|
||||
+#else
|
||||
+#define __GNUC_PREREQ(maj, min) 0
|
||||
+#endif
|
||||
+
|
||||
+#if __GNUC_PREREQ(4,4)
|
||||
+ typedef unsigned int u64_di_t __attribute__ ((mode (DI)));
|
||||
+# define MAD_F_MLX(hi, lo, x, y) \
|
||||
+ do { \
|
||||
+ u64_di_t __ll = (u64_di_t) (x) * (y); \
|
||||
+ hi = __ll >> 32; \
|
||||
+ lo = __ll; \
|
||||
+ } while (0)
|
||||
+#else
|
||||
/*
|
||||
* This MIPS version is fast and accurate; the disposition of the least
|
||||
* significant bit depends on OPT_ACCURACY via mad_f_scale64().
|
||||
@@ -328,6 +345,7 @@
|
||||
: "%r" ((x) >> 12), "r" ((y) >> 16))
|
||||
# define MAD_F_MLZ(hi, lo) ((mad_fixed_t) (lo))
|
||||
# endif
|
||||
+#endif /* __GNU_PREREQ(4,4) */
|
||||
|
||||
# if defined(OPT_SPEED)
|
||||
# define mad_f_scale64(hi, lo) \
|
||||
diff -ur libmad-0.15.1b-orig/mad.h libmad-0.15.1b/mad.h
|
||||
--- libmad-0.15.1b-orig/mad.h 2004-02-17 13:25:44.000000000 +1030
|
||||
+++ libmad-0.15.1b/mad.h 2009-08-05 10:42:40.000000000 +0930
|
||||
@@ -344,6 +344,23 @@
|
||||
|
||||
# elif defined(FPM_MIPS)
|
||||
|
||||
+/* Test for gcc >= maj.min, as per __GNUC_PREREQ in glibc */
|
||||
+#if defined (__GNUC__) && defined (__GNUC_MINOR__)
|
||||
+#define __GNUC_PREREQ(maj, min) \
|
||||
+ ((__GNUC__ << 16) + __GNUC_MINOR__ >= ((maj) << 16) + (min))
|
||||
+#else
|
||||
+#define __GNUC_PREREQ(maj, min) 0
|
||||
+#endif
|
||||
+
|
||||
+#if __GNUC_PREREQ(4,4)
|
||||
+ typedef unsigned int u64_di_t __attribute__ ((mode (DI)));
|
||||
+# define MAD_F_MLX(hi, lo, x, y) \
|
||||
+ do { \
|
||||
+ u64_di_t __ll = (u64_di_t) (x) * (y); \
|
||||
+ hi = __ll >> 32; \
|
||||
+ lo = __ll; \
|
||||
+ } while (0)
|
||||
+#else
|
||||
/*
|
||||
* This MIPS version is fast and accurate; the disposition of the least
|
||||
* significant bit depends on OPT_ACCURACY via mad_f_scale64().
|
||||
@@ -373,6 +390,7 @@
|
||||
: "%r" ((x) >> 12), "r" ((y) >> 16))
|
||||
# define MAD_F_MLZ(hi, lo) ((mad_fixed_t) (lo))
|
||||
# endif
|
||||
+#endif /* __GNU_PREREQ(4,4) */
|
||||
|
||||
# if defined(OPT_SPEED)
|
||||
# define mad_f_scale64(hi, lo) \
|
||||
@@ -0,0 +1,33 @@
|
||||
libmad: remove deprecated cflags (-fforce-mem)
|
||||
|
||||
fforce-mem has long been deprecated, and is completely removed from
|
||||
gcc 4.3.x on.
|
||||
---
|
||||
configure | 1 -
|
||||
configure.ac | 1 -
|
||||
2 files changed, 2 deletions(-)
|
||||
|
||||
Index: libmad-0.15.1b/configure.ac
|
||||
===================================================================
|
||||
--- libmad-0.15.1b.orig/configure.ac
|
||||
+++ libmad-0.15.1b/configure.ac
|
||||
@@ -140,7 +140,6 @@
|
||||
case "$optimize" in
|
||||
-O|"-O "*)
|
||||
optimize="-O"
|
||||
- optimize="$optimize -fforce-mem"
|
||||
optimize="$optimize -fforce-addr"
|
||||
: #x optimize="$optimize -finline-functions"
|
||||
: #- optimize="$optimize -fstrength-reduce"
|
||||
Index: libmad-0.15.1b/configure
|
||||
===================================================================
|
||||
--- libmad-0.15.1b.orig/configure
|
||||
+++ libmad-0.15.1b/configure
|
||||
@@ -19099,7 +19099,6 @@
|
||||
case "$optimize" in
|
||||
-O|"-O "*)
|
||||
optimize="-O"
|
||||
- optimize="$optimize -fforce-mem"
|
||||
optimize="$optimize -fforce-addr"
|
||||
: #x optimize="$optimize -finline-functions"
|
||||
: #- optimize="$optimize -fstrength-reduce"
|
||||
@@ -0,0 +1,40 @@
|
||||
Fixes Thumb2-related build failure
|
||||
|
||||
Patch below comes from the Debian libmad package.
|
||||
|
||||
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
|
||||
|
||||
From: Dave Martin
|
||||
Subject: "rsc" doesnt exist anymore in thumb2
|
||||
|
||||
diff --git a/fixed.h b/fixed.h
|
||||
index 4b58abf..ba4bc26 100644
|
||||
--- a/fixed.h
|
||||
+++ b/fixed.h
|
||||
@@ -275,12 +275,25 @@ mad_fixed_t mad_f_mul_inline(mad_fixed_t x, mad_fixed_t y)
|
||||
: "+r" (lo), "+r" (hi) \
|
||||
: "%r" (x), "r" (y))
|
||||
|
||||
+#ifdef __thumb__
|
||||
+/* In Thumb-2, the RSB-immediate instruction is only allowed with a zero
|
||||
+ operand. If needed this code can also support Thumb-1
|
||||
+ (simply append "s" to the end of the second two instructions). */
|
||||
+# define MAD_F_MLN(hi, lo) \
|
||||
+ asm ("rsbs %0, %0, #0\n\t" \
|
||||
+ "sbc %1, %1, %1\n\t" \
|
||||
+ "sub %1, %1, %2" \
|
||||
+ : "+&r" (lo), "=&r" (hi) \
|
||||
+ : "r" (hi) \
|
||||
+ : "cc")
|
||||
+#else /* ! __thumb__ */
|
||||
# define MAD_F_MLN(hi, lo) \
|
||||
asm ("rsbs %0, %2, #0\n\t" \
|
||||
"rsc %1, %3, #0" \
|
||||
- : "=r" (lo), "=r" (hi) \
|
||||
+ : "=&r" (lo), "=r" (hi) \
|
||||
: "0" (lo), "1" (hi) \
|
||||
: "cc")
|
||||
+#endif /* __thumb__ */
|
||||
|
||||
# define mad_f_scale64(hi, lo) \
|
||||
({ mad_fixed_t __result; \
|
||||
@@ -0,0 +1,20 @@
|
||||
Fixes Thumb2 related build failure
|
||||
|
||||
Patch below comes from the Debian libmad package.
|
||||
|
||||
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
|
||||
|
||||
From: Konstantinos Margaritis <markos@debian.org>
|
||||
Subject: use "adr" instead of "add" to make code ready for thumb2
|
||||
|
||||
--- ./imdct_l_arm.S.orig 2010-02-25 13:25:23.000000000 +0100
|
||||
+++ ./imdct_l_arm.S 2010-02-25 13:27:26.000000000 +0100
|
||||
@@ -468,7 +468,7 @@
|
||||
|
||||
@----
|
||||
|
||||
- add r2, pc, #(imdct36_long_karray-.-8) @ r2 = base address of Knn array (PIC safe ?)
|
||||
+ adr r2, imdct36_long_karray
|
||||
|
||||
|
||||
loop:
|
||||
49
deprecated/firmware/buildroot/package/libmad/Config.in
Normal file
49
deprecated/firmware/buildroot/package/libmad/Config.in
Normal file
@@ -0,0 +1,49 @@
|
||||
config BR2_PACKAGE_LIBMAD
|
||||
bool "libmad"
|
||||
help
|
||||
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/
|
||||
|
||||
if BR2_PACKAGE_LIBMAD
|
||||
|
||||
choice
|
||||
prompt "Speed vs. accuracy"
|
||||
default BR2_PACKAGE_LIBMAD_OPTIMIZATION_DEFAULT
|
||||
|
||||
config BR2_PACKAGE_LIBMAD_OPTIMIZATION_DEFAULT
|
||||
bool "Default"
|
||||
help
|
||||
Keep optimizations balanced between speed and accuracy.
|
||||
|
||||
config BR2_PACKAGE_LIBMAD_OPTIMIZATION_SPEED
|
||||
bool "Optimize for speed over accuracy"
|
||||
help
|
||||
Compromise accuracy for speed.
|
||||
|
||||
config BR2_PACKAGE_LIBMAD_OPTIMIZATION_ACCURACY
|
||||
bool "Optimize for accuracy over speed"
|
||||
help
|
||||
Compromise speed for accuracy.
|
||||
|
||||
endchoice
|
||||
|
||||
config BR2_PACKAGE_LIBMAD_SSO
|
||||
bool "Subband synthesis optimization"
|
||||
help
|
||||
Use the subband synthesis optimization, with reduced accuracy.
|
||||
|
||||
config BR2_PACKAGE_LIBMAD_ASO
|
||||
bool "Architecture-specific optimizations"
|
||||
default y
|
||||
help
|
||||
Use certain architecture-specific optimizations.
|
||||
|
||||
config BR2_PACKAGE_LIBMAD_STRICT_ISO
|
||||
bool "Strict ISO/IEC interpretations"
|
||||
help
|
||||
Use strict ISO/IEC interpretations.
|
||||
|
||||
endif
|
||||
2
deprecated/firmware/buildroot/package/libmad/libmad.hash
Normal file
2
deprecated/firmware/buildroot/package/libmad/libmad.hash
Normal file
@@ -0,0 +1,2 @@
|
||||
# Locally computed:
|
||||
sha256 bbfac3ed6bfbc2823d3775ebb931087371e142bb0e9bb1bee51a76a6e0078690 libmad-0.15.1b.tar.gz
|
||||
41
deprecated/firmware/buildroot/package/libmad/libmad.mk
Normal file
41
deprecated/firmware/buildroot/package/libmad/libmad.mk
Normal file
@@ -0,0 +1,41 @@
|
||||
################################################################################
|
||||
#
|
||||
# libmad
|
||||
#
|
||||
################################################################################
|
||||
|
||||
LIBMAD_VERSION = 0.15.1b
|
||||
LIBMAD_SITE = http://downloads.sourceforge.net/project/mad/libmad/$(LIBMAD_VERSION)
|
||||
LIBMAD_INSTALL_STAGING = YES
|
||||
LIBMAD_LIBTOOL_PATCH = NO
|
||||
LIBMAD_LICENSE = GPLv2+
|
||||
LIBMAD_LICENSE_FILES = COPYING
|
||||
|
||||
define LIBMAD_PREVENT_AUTOMAKE
|
||||
# Prevent automake from running.
|
||||
(cd $(@D); touch -c config* aclocal.m4 Makefile*);
|
||||
endef
|
||||
|
||||
define LIBMAD_INSTALL_STAGING_PC
|
||||
$(INSTALL) -D package/libmad/mad.pc \
|
||||
$(STAGING_DIR)/usr/lib/pkgconfig/mad.pc
|
||||
endef
|
||||
|
||||
define LIBMAD_INSTALL_TARGET_PC
|
||||
$(INSTALL) -D package/libmad/mad.pc \
|
||||
$(TARGET_DIR)/usr/lib/pkgconfig/mad.pc
|
||||
endef
|
||||
|
||||
LIBMAD_POST_PATCH_HOOKS += LIBMAD_PREVENT_AUTOMAKE
|
||||
LIBMAD_POST_INSTALL_STAGING_HOOKS += LIBMAD_INSTALL_STAGING_PC
|
||||
LIBMAD_POST_INSTALL_TARGET_HOOKS += LIBMAD_INSTALL_TARGET_PC
|
||||
|
||||
LIBMAD_CONF_OPTS = \
|
||||
--disable-debugging \
|
||||
$(if $(BR2_PACKAGE_LIBMAD_OPTIMIZATION_SPEED),--enable-speed) \
|
||||
$(if $(BR2_PACKAGE_LIBMAD_OPTIMIZATION_ACCURACY),--enable-accuracy) \
|
||||
--$(if $(BR2_PACKAGE_LIBMAD_SSO),enable,disable)-sso \
|
||||
--$(if $(BR2_PACKAGE_LIBMAD_ASO),enable,disable)-aso \
|
||||
--$(if $(BR2_PACKAGE_LIBMAD_STRICT_ISO),enable,disable)-strict-iso
|
||||
|
||||
$(eval $(autotools-package))
|
||||
11
deprecated/firmware/buildroot/package/libmad/mad.pc
Normal file
11
deprecated/firmware/buildroot/package/libmad/mad.pc
Normal file
@@ -0,0 +1,11 @@
|
||||
prefix=/usr
|
||||
exec_prefix=${prefix}
|
||||
libdir=${exec_prefix}/lib
|
||||
includedir=${prefix}/include
|
||||
|
||||
Name: mad
|
||||
Description: MPEG Audio Decoder
|
||||
Requires:
|
||||
Version: 0.15.1b
|
||||
Libs: -L${libdir} -lmad
|
||||
Cflags: -I${includedir}
|
||||
Reference in New Issue
Block a user