aboutsummaryrefslogtreecommitdiffstats
path: root/meta-oe
diff options
context:
space:
mode:
authorKoen Kooi <koen@dominion.thruhere.net>2011-10-11 09:47:50 +0200
committerKoen Kooi <koen@dominion.thruhere.net>2011-10-11 09:47:50 +0200
commit0f52cc583d829e4df410bbdcd8d487b2f21ccc1b (patch)
tree241b0bd2936dfe6cbbaa84cccf3837936e66c4be /meta-oe
parent7ab4010c82780f15ad4d16a17f43defdb43f6d8d (diff)
downloadmeta-openembedded-contrib-0f52cc583d829e4df410bbdcd8d487b2f21ccc1b.tar.gz
libmikmod 3.1.12: import from OE classic
Signed-off-by: Koen Kooi <koen@dominion.thruhere.net>
Diffstat (limited to 'meta-oe')
-rw-r--r--meta-oe/recipes-multimedia/mikmod/libmikmod/CVE-2010-2971.patch24
-rw-r--r--meta-oe/recipes-multimedia/mikmod/libmikmod/autofoo.patch16
-rw-r--r--meta-oe/recipes-multimedia/mikmod/libmikmod/ldflags.patch12
-rw-r--r--meta-oe/recipes-multimedia/mikmod/libmikmod/m4.patch197
-rw-r--r--meta-oe/recipes-multimedia/mikmod/libmikmod_3.1.12.bb31
5 files changed, 280 insertions, 0 deletions
diff --git a/meta-oe/recipes-multimedia/mikmod/libmikmod/CVE-2010-2971.patch b/meta-oe/recipes-multimedia/mikmod/libmikmod/CVE-2010-2971.patch
new file mode 100644
index 0000000000..94ea8f52a2
--- /dev/null
+++ b/meta-oe/recipes-multimedia/mikmod/libmikmod/CVE-2010-2971.patch
@@ -0,0 +1,24 @@
+---
+ loaders/load_it.c | 4 ++++
+ 1 file changed, 4 insertions(+)
+
+--- libmikmod-3.1.12.orig/loaders/load_it.c
++++ libmikmod-3.1.12/loaders/load_it.c
+@@ -743,6 +743,8 @@ BOOL IT_Load(BOOL curious)
+ #define IT_LoadEnvelope(name,type) \
+ ih. name##flg =_mm_read_UBYTE(modreader); \
+ ih. name##pts =_mm_read_UBYTE(modreader); \
++ if (ih. name##pts > ITENVCNT) \
++ ih. name##pts = ITENVCNT; \
+ ih. name##beg =_mm_read_UBYTE(modreader); \
+ ih. name##end =_mm_read_UBYTE(modreader); \
+ ih. name##susbeg=_mm_read_UBYTE(modreader); \
+@@ -756,6 +758,8 @@ BOOL IT_Load(BOOL curious)
+ #define IT_LoadEnvelope(name,type) \
+ ih. name/**/flg =_mm_read_UBYTE(modreader); \
+ ih. name/**/pts =_mm_read_UBYTE(modreader); \
++ if (ih. name/**/pts > ITENVCNT) \
++ ih. name/**/pts = ITENVCNT; \
+ ih. name/**/beg =_mm_read_UBYTE(modreader); \
+ ih. name/**/end =_mm_read_UBYTE(modreader); \
+ ih. name/**/susbeg=_mm_read_UBYTE(modreader); \
diff --git a/meta-oe/recipes-multimedia/mikmod/libmikmod/autofoo.patch b/meta-oe/recipes-multimedia/mikmod/libmikmod/autofoo.patch
new file mode 100644
index 0000000000..22d8170aa8
--- /dev/null
+++ b/meta-oe/recipes-multimedia/mikmod/libmikmod/autofoo.patch
@@ -0,0 +1,16 @@
+
+#
+# Patch managed by http://www.holgerschurig.de/patcher.html
+#
+
+--- libmikmod-3.2.0-beta2/configure.in~autofoo
++++ libmikmod-3.2.0-beta2/configure.in
+@@ -415,8 +415,6 @@
+
+ AC_CHECK_FUNCS(setenv snprintf srandom)
+ AC_REPLACE_FUNCS(strcasecmp strdup strstr)
+-# Change extension, as we use libtool
+-LIBOBJS="`echo $LIBOBJS|sed -e 's/\.o/\.lo/g'`"
+
+ AC_HEADER_EGREP(srandom,math.h,AC_DEFINE(SRANDOM_IN_MATH_H))
+
diff --git a/meta-oe/recipes-multimedia/mikmod/libmikmod/ldflags.patch b/meta-oe/recipes-multimedia/mikmod/libmikmod/ldflags.patch
new file mode 100644
index 0000000000..4261379ee4
--- /dev/null
+++ b/meta-oe/recipes-multimedia/mikmod/libmikmod/ldflags.patch
@@ -0,0 +1,12 @@
+diff -urN libmikmod-3.1.12.orig/libmikmod/Makefile.in libmikmod-3.1.12/libmikmod/Makefile.in
+--- libmikmod-3.1.12.orig/libmikmod/Makefile.in 2004-01-21 17:43:52.000000000 +0000
++++ libmikmod-3.1.12/libmikmod/Makefile.in 2009-04-02 11:28:01.000000000 +0000
+@@ -72,7 +72,7 @@
+ rm -f Makefile
+
+ $(LIB): $(OBJ)
+- $(LIBTOOL) --mode=link $(CC) -version-info 2:4:0 -o $@ $(OBJ) $(LIBRARY_LIB) -rpath $(DESTDIR)$(libdir)
++ $(LIBTOOL) --mode=link $(CC) $(LDFLAGS) -version-info 2:4:0 -o $@ $(OBJ) $(LIBRARY_LIB) -rpath $(DESTDIR)$(libdir)
+
+ dl_hpux.lo: $(top_srcdir)/dlapi/dl_hpux.c \
+ $(top_srcdir)/dlapi/dlfcn.h
diff --git a/meta-oe/recipes-multimedia/mikmod/libmikmod/m4.patch b/meta-oe/recipes-multimedia/mikmod/libmikmod/m4.patch
new file mode 100644
index 0000000000..ac7f2d7d04
--- /dev/null
+++ b/meta-oe/recipes-multimedia/mikmod/libmikmod/m4.patch
@@ -0,0 +1,197 @@
+--- /dev/null
++++ libmikmod-3.2.0-beta2/m4/esd.m4
+@@ -0,0 +1,194 @@
++# Configure paths for ESD
++# Manish Singh 98-9-30
++# stolen back from Frank Belew
++# stolen from Manish Singh
++# Shamelessly stolen from Owen Taylor
++
++dnl AM_PATH_ESD([MINIMUM-VERSION, [ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND]]])
++dnl Test for ESD, and define ESD_CFLAGS and ESD_LIBS
++dnl
++AC_DEFUN(AM_PATH_ESD,
++[dnl
++dnl Get the cflags and libraries from the esd-config script
++dnl
++AC_ARG_WITH(esd-prefix,[ --with-esd-prefix=PFX Prefix where ESD is installed (optional)],
++ esd_prefix="$withval", esd_prefix="")
++AC_ARG_WITH(esd-exec-prefix,[ --with-esd-exec-prefix=PFX Exec prefix where ESD is installed (optional)],
++ esd_exec_prefix="$withval", esd_exec_prefix="")
++AC_ARG_ENABLE(esdtest, [ --disable-esdtest Do not try to compile and run a test ESD program],
++ , enable_esdtest=yes)
++
++ if test x$esd_exec_prefix != x ; then
++ esd_args="$esd_args --exec-prefix=$esd_exec_prefix"
++ if test x${ESD_CONFIG+set} != xset ; then
++ ESD_CONFIG=$esd_exec_prefix/bin/esd-config
++ fi
++ fi
++ if test x$esd_prefix != x ; then
++ esd_args="$esd_args --prefix=$esd_prefix"
++ if test x${ESD_CONFIG+set} != xset ; then
++ ESD_CONFIG=$esd_prefix/bin/esd-config
++ fi
++ fi
++
++ AC_PATH_PROG(ESD_CONFIG, esd-config, no)
++ min_esd_version=ifelse([$1], ,0.2.7,$1)
++ AC_MSG_CHECKING(for ESD - version >= $min_esd_version)
++ no_esd=""
++ if test "$ESD_CONFIG" = "no" ; then
++ no_esd=yes
++ else
++ AC_LANG_SAVE
++ AC_LANG_C
++ ESD_CFLAGS=`$ESD_CONFIG $esdconf_args --cflags`
++ ESD_LIBS=`$ESD_CONFIG $esdconf_args --libs`
++
++ esd_major_version=`$ESD_CONFIG $esd_args --version | \
++ sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\1/'`
++ esd_minor_version=`$ESD_CONFIG $esd_args --version | \
++ sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\2/'`
++ esd_micro_version=`$ESD_CONFIG $esd_config_args --version | \
++ sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\3/'`
++ if test "x$enable_esdtest" = "xyes" ; then
++ ac_save_CFLAGS="$CFLAGS"
++ ac_save_LIBS="$LIBS"
++ CFLAGS="$CFLAGS $ESD_CFLAGS"
++ LIBS="$LIBS $ESD_LIBS"
++dnl
++dnl Now check if the installed ESD is sufficiently new. (Also sanity
++dnl checks the results of esd-config to some extent
++dnl
++ rm -f conf.esdtest
++ AC_TRY_RUN([
++#include <stdio.h>
++#include <stdlib.h>
++#include <string.h>
++#include <esd.h>
++
++char*
++my_strdup (char *str)
++{
++ char *new_str;
++
++ if (str)
++ {
++ new_str = malloc ((strlen (str) + 1) * sizeof(char));
++ strcpy (new_str, str);
++ }
++ else
++ new_str = NULL;
++
++ return new_str;
++}
++
++int main ()
++{
++ int major, minor, micro;
++ char *tmp_version;
++
++ system ("touch conf.esdtest");
++
++ /* HP/UX 9 (%@#!) writes to sscanf strings */
++ tmp_version = my_strdup("$min_esd_version");
++ if (sscanf(tmp_version, "%d.%d.%d", &major, &minor, &micro) != 3) {
++ printf("%s, bad version string\n", "$min_esd_version");
++ exit(1);
++ }
++
++ if (($esd_major_version > major) ||
++ (($esd_major_version == major) && ($esd_minor_version > minor)) ||
++ (($esd_major_version == major) && ($esd_minor_version == minor) && ($esd_micro_version >= micro)))
++ {
++ return 0;
++ }
++ else
++ {
++ printf("\n*** 'esd-config --version' returned %d.%d.%d, but the minimum version\n", $esd_major_version, $esd_minor_version, $esd_micro_version);
++ printf("*** of ESD required is %d.%d.%d. If esd-config is correct, then it is\n", major, minor, micro);
++ printf("*** best to upgrade to the required version.\n");
++ printf("*** If esd-config was wrong, set the environment variable ESD_CONFIG\n");
++ printf("*** to point to the correct copy of esd-config, and remove the file\n");
++ printf("*** config.cache before re-running configure\n");
++ return 1;
++ }
++}
++
++],, no_esd=yes,[echo $ac_n "cross compiling; assumed OK... $ac_c"])
++ CFLAGS="$ac_save_CFLAGS"
++ LIBS="$ac_save_LIBS"
++ AC_LANG_RESTORE
++ fi
++ fi
++ if test "x$no_esd" = x ; then
++ AC_MSG_RESULT(yes)
++ ifelse([$2], , :, [$2])
++ else
++ AC_MSG_RESULT(no)
++ if test "$ESD_CONFIG" = "no" ; then
++ echo "*** The esd-config script installed by ESD could not be found"
++ echo "*** If ESD was installed in PREFIX, make sure PREFIX/bin is in"
++ echo "*** your path, or set the ESD_CONFIG environment variable to the"
++ echo "*** full path to esd-config."
++ else
++ if test -f conf.esdtest ; then
++ :
++ else
++ echo "*** Could not run ESD test program, checking why..."
++ CFLAGS="$CFLAGS $ESD_CFLAGS"
++ LIBS="$LIBS $ESD_LIBS"
++ AC_LANG_SAVE
++ AC_LANG_C
++ AC_TRY_LINK([
++#include <stdio.h>
++#include <esd.h>
++], [ return 0; ],
++ [ echo "*** The test program compiled, but did not run. This usually means"
++ echo "*** that the run-time linker is not finding ESD or finding the wrong"
++ echo "*** version of ESD. If it is not finding ESD, you'll need to set your"
++ echo "*** LD_LIBRARY_PATH environment variable, or edit /etc/ld.so.conf to point"
++ echo "*** to the installed location Also, make sure you have run ldconfig if that"
++ echo "*** is required on your system"
++ echo "***"
++ echo "*** If you have an old version installed, it is best to remove it, although"
++ echo "*** you may also be able to get things to work by modifying LD_LIBRARY_PATH"],
++ [ echo "*** The test program failed to compile or link. See the file config.log for the"
++ echo "*** exact error that occured. This usually means ESD was incorrectly installed"
++ echo "*** or that you have moved ESD since it was installed. In the latter case, you"
++ echo "*** may want to edit the esd-config script: $ESD_CONFIG" ])
++ CFLAGS="$ac_save_CFLAGS"
++ LIBS="$ac_save_LIBS"
++ AC_LANG_RESTORE
++ fi
++ fi
++ ESD_CFLAGS=""
++ ESD_LIBS=""
++ ifelse([$3], , :, [$3])
++ fi
++ AC_SUBST(ESD_CFLAGS)
++ AC_SUBST(ESD_LIBS)
++ rm -f conf.esdtest
++])
++
++dnl AM_ESD_SUPPORTS_MULTIPLE_RECORD([ACTION-IF-SUPPORTS [, ACTION-IF-NOT-SUPPORTS]])
++dnl Test, whether esd supports multiple recording clients (version >=0.2.21)
++dnl
++AC_DEFUN(AM_ESD_SUPPORTS_MULTIPLE_RECORD,
++[dnl
++ AC_MSG_NOTICE([whether installed esd version supports multiple recording clients])
++ ac_save_ESD_CFLAGS="$ESD_CFLAGS"
++ ac_save_ESD_LIBS="$ESD_LIBS"
++ AM_PATH_ESD(0.2.21,
++ ifelse([$1], , [
++ AM_CONDITIONAL(ESD_SUPPORTS_MULTIPLE_RECORD, true)
++ AC_DEFINE(ESD_SUPPORTS_MULTIPLE_RECORD, 1,
++ [Define if you have esound with support of multiple recording clients.])],
++ [$1]),
++ ifelse([$2], , [AM_CONDITIONAL(ESD_SUPPORTS_MULTIPLE_RECORD, false)], [$2])
++ if test "x$ac_save_ESD_CFLAGS" != x ; then
++ ESD_CFLAGS="$ac_save_ESD_CFLAGS"
++ fi
++ if test "x$ac_save_ESD_LIBS" != x ; then
++ ESD_LIBS="$ac_save_ESD_LIBS"
++ fi
++ )
++])
diff --git a/meta-oe/recipes-multimedia/mikmod/libmikmod_3.1.12.bb b/meta-oe/recipes-multimedia/mikmod/libmikmod_3.1.12.bb
new file mode 100644
index 0000000000..cd80a6fd9e
--- /dev/null
+++ b/meta-oe/recipes-multimedia/mikmod/libmikmod_3.1.12.bb
@@ -0,0 +1,31 @@
+DESCRIPTION = "libmikmod is a module player library supporting many formats, including mod, s3m, it, and xm."
+SECTION = "libs"
+LICENSE = "LGPLv2.1"
+LIC_FILES_CHKSUM = "file://COPYING.LESSER;md5=b2b941d484c442e5c031a51463d8e11b"
+
+DEPENDS = "alsa-lib"
+
+SRC_URI = "\
+ ${SOURCEFORGE_MIRROR}/mikmod/libmikmod-${PV}.tar.gz \
+ file://m4.patch \
+ file://autofoo.patch \
+ file://ldflags.patch \
+ file://CVE-2010-2971.patch \
+"
+
+SRC_URI[md5sum] = "9f3c740298260d5f88981fc0d51f6f16"
+SRC_URI[sha256sum] = "891a2b780306e6ef86e381f459e71a085d4e7f56c970a879d3bf341c01bdfc32"
+
+inherit autotools binconfig lib_package
+
+EXTRA_OECONF = "\
+ --disable-af \
+ --enable-alsa \
+ --disable-esd \
+ --enable-oss \
+ --disable-sam9407 \
+ --disable-ultra \
+ --disable-esdtest \
+ --enable-threads \
+"
+