summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--package/libmad/Config.in41
-rw-r--r--package/libmad/libmad.mk6
2 files changed, 46 insertions, 1 deletions
diff --git a/package/libmad/Config.in b/package/libmad/Config.in
index 4d4f9301a..d0edc497c 100644
--- a/package/libmad/Config.in
+++ b/package/libmad/Config.in
@@ -6,3 +6,44 @@ config BR2_PACKAGE_LIBMAD
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
diff --git a/package/libmad/libmad.mk b/package/libmad/libmad.mk
index 6e53cf257..3c92d528d 100644
--- a/package/libmad/libmad.mk
+++ b/package/libmad/libmad.mk
@@ -30,6 +30,10 @@ LIBMAD_POST_INSTALL_TARGET_HOOKS += LIBMAD_INSTALL_TARGET_PC
LIBMAD_CONF_OPT = \
--disable-debugging \
- --enable-speed
+ $(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 $(call AUTOTARGETS))