summaryrefslogtreecommitdiffstats
path: root/meta/recipes-multimedia/flac
diff options
context:
space:
mode:
Diffstat (limited to 'meta/recipes-multimedia/flac')
-rw-r--r--meta/recipes-multimedia/flac/flac-1.2.1/disable-xmms-plugin.patch24
-rw-r--r--meta/recipes-multimedia/flac/flac-1.2.1/flac-gcc43-fixes.patch14
-rw-r--r--meta/recipes-multimedia/flac/flac-1.2.1/xmms.m4149
-rw-r--r--meta/recipes-multimedia/flac/flac_1.2.1.bb49
4 files changed, 236 insertions, 0 deletions
diff --git a/meta/recipes-multimedia/flac/flac-1.2.1/disable-xmms-plugin.patch b/meta/recipes-multimedia/flac/flac-1.2.1/disable-xmms-plugin.patch
new file mode 100644
index 0000000000..e2f4fa1360
--- /dev/null
+++ b/meta/recipes-multimedia/flac/flac-1.2.1/disable-xmms-plugin.patch
@@ -0,0 +1,24 @@
1# Acquired from OpenEmbedded
2
3diff -ruN flac-1.2.1-orig/src/Makefile.am flac-1.2.1-new/src/Makefile.am
4--- flac-1.2.1-orig/src/Makefile.am 2010-06-23 15:06:29.167865355 +0800
5+++ flac-1.2.1-new/src/Makefile.am 2010-06-25 16:23:05.555202728 +0800
6@@ -15,10 +15,6 @@
7 # restrictive of those mentioned above. See the file COPYING.Xiph in this
8 # distribution.
9
10-if FLaC__HAS_XMMS
11-XMMS_DIRS = plugin_common plugin_xmms
12-endif
13-
14 if FLaC__WITH_CPPLIBS
15 CPPLIBS_DIRS = libFLAC++ test_libFLAC++
16 endif
17@@ -29,7 +25,6 @@
18 flac \
19 metaflac \
20 monkeys_audio_utilities \
21- $(XMMS_DIRS) \
22 plugin_winamp2 \
23 test_grabbag \
24 test_libs_common \
diff --git a/meta/recipes-multimedia/flac/flac-1.2.1/flac-gcc43-fixes.patch b/meta/recipes-multimedia/flac/flac-1.2.1/flac-gcc43-fixes.patch
new file mode 100644
index 0000000000..fdb6f1337e
--- /dev/null
+++ b/meta/recipes-multimedia/flac/flac-1.2.1/flac-gcc43-fixes.patch
@@ -0,0 +1,14 @@
1# Acquired from OpenEmbedded
2# Fix no declaration of memcmp()
3
4diff -urN flac-1.2.1-orig/examples/cpp/encode/file/main.cpp flac-1.2.1/examples/cpp/encode/file/main.cpp
5--- flac-1.2.1-orig/examples/cpp/encode/file/main.cpp 2010-06-23 15:06:29.159481339 +0800
6+++ flac-1.2.1/examples/cpp/encode/file/main.cpp 2010-06-23 15:06:46.233384883 +0800
7@@ -30,6 +30,7 @@
8
9 #include <stdio.h>
10 #include <stdlib.h>
11+#include <string.h>
12 #include "FLAC++/metadata.h"
13 #include "FLAC++/encoder.h"
14
diff --git a/meta/recipes-multimedia/flac/flac-1.2.1/xmms.m4 b/meta/recipes-multimedia/flac/flac-1.2.1/xmms.m4
new file mode 100644
index 0000000000..5e250cdd38
--- /dev/null
+++ b/meta/recipes-multimedia/flac/flac-1.2.1/xmms.m4
@@ -0,0 +1,149 @@
1# CFLAGS and library paths for XMMS
2# written 15 December 1999 by Ben Gertzfield <che@debian.org>
3# Acquired from OpenEmbedded
4
5dnl Usage:
6dnl AM_PATH_XMMS([MINIMUM-VERSION, [ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND]]])
7dnl
8dnl Example:
9dnl AM_PATH_XMMS(0.9.5.1, , AC_MSG_ERROR([*** XMMS >= 0.9.5.1 not installed - please install first ***]))
10dnl
11dnl Defines XMMS_CFLAGS, XMMS_LIBS, XMMS_DATA_DIR, XMMS_PLUGIN_DIR,
12dnl XMMS_VISUALIZATION_PLUGIN_DIR, XMMS_INPUT_PLUGIN_DIR,
13dnl XMMS_OUTPUT_PLUGIN_DIR, XMMS_GENERAL_PLUGIN_DIR, XMMS_EFFECT_PLUGIN_DIR,
14dnl and XMMS_VERSION for your plugin pleasure.
15dnl
16
17dnl XMMS_TEST_VERSION(AVAILABLE-VERSION, NEEDED-VERSION [, ACTION-IF-OKAY [, ACTION-IF-NOT-OKAY]])
18AC_DEFUN(XMMS_TEST_VERSION, [
19
20# Determine which version number is greater. Prints 2 to stdout if
21# the second number is greater, 1 if the first number is greater,
22# 0 if the numbers are equal.
23
24# Written 15 December 1999 by Ben Gertzfield <che@debian.org>
25# Revised 15 December 1999 by Jim Monty <monty@primenet.com>
26
27 AC_PROG_AWK
28 xmms_got_version=[` $AWK ' \
29BEGIN { \
30 print vercmp(ARGV[1], ARGV[2]); \
31} \
32 \
33function vercmp(ver1, ver2, ver1arr, ver2arr, \
34 ver1len, ver2len, \
35 ver1int, ver2int, len, i, p) { \
36 \
37 ver1len = split(ver1, ver1arr, /\./); \
38 ver2len = split(ver2, ver2arr, /\./); \
39 \
40 len = ver1len > ver2len ? ver1len : ver2len; \
41 \
42 for (i = 1; i <= len; i++) { \
43 p = 1000 ^ (len - i); \
44 ver1int += ver1arr[i] * p; \
45 ver2int += ver2arr[i] * p; \
46 } \
47 \
48 if (ver1int < ver2int) \
49 return 2; \
50 else if (ver1int > ver2int) \
51 return 1; \
52 else \
53 return 0; \
54}' $1 $2`]
55
56 if test $xmms_got_version -eq 2; then # failure
57 ifelse([$4], , :, $4)
58 else # success!
59 ifelse([$3], , :, $3)
60 fi
61])
62
63AC_DEFUN(AM_PATH_XMMS,
64[
65AC_ARG_WITH(xmms-prefix,[ --with-xmms-prefix=PFX Prefix where XMMS is installed (optional)],
66 xmms_config_prefix="$withval", xmms_config_prefix="")
67AC_ARG_WITH(xmms-exec-prefix,[ --with-xmms-exec-prefix=PFX Exec prefix where XMMS is installed (optional)],
68 xmms_config_exec_prefix="$withval", xmms_config_exec_prefix="")
69
70if test x$xmms_config_exec_prefix != x; then
71 xmms_config_args="$xmms_config_args --exec-prefix=$xmms_config_exec_prefix"
72 if test x${XMMS_CONFIG+set} != xset; then
73 XMMS_CONFIG=$xmms_config_exec_prefix/bin/xmms-config
74 fi
75fi
76
77if test x$xmms_config_prefix != x; then
78 xmms_config_args="$xmms_config_args --prefix=$xmms_config_prefix"
79 if test x${XMMS_CONFIG+set} != xset; then
80 XMMS_CONFIG=$xmms_config_prefix/bin/xmms-config
81 fi
82fi
83
84AC_PATH_PROG(XMMS_CONFIG, xmms-config, no)
85min_xmms_version=ifelse([$1], ,0.9.5.1, $1)
86
87if test "$XMMS_CONFIG" = "no"; then
88 no_xmms=yes
89else
90 XMMS_CFLAGS=`$XMMS_CONFIG $xmms_config_args --cflags`
91 XMMS_LIBS=`$XMMS_CONFIG $xmms_config_args --libs`
92 XMMS_VERSION=`$XMMS_CONFIG $xmms_config_args --version`
93 XMMS_DATA_DIR=`$XMMS_CONFIG $xmms_config_args --data-dir`
94 XMMS_PLUGIN_DIR=`$XMMS_CONFIG $xmms_config_args --plugin-dir`
95 XMMS_VISUALIZATION_PLUGIN_DIR=`$XMMS_CONFIG $xmms_config_args \
96 --visualization-plugin-dir`
97 XMMS_INPUT_PLUGIN_DIR=`$XMMS_CONFIG $xmms_config_args --input-plugin-dir`
98 XMMS_OUTPUT_PLUGIN_DIR=`$XMMS_CONFIG $xmms_config_args --output-plugin-dir`
99 XMMS_EFFECT_PLUGIN_DIR=`$XMMS_CONFIG $xmms_config_args --effect-plugin-dir`
100 XMMS_GENERAL_PLUGIN_DIR=`$XMMS_CONFIG $xmms_config_args --general-plugin-dir`
101
102 XMMS_TEST_VERSION($XMMS_VERSION, $min_xmms_version, ,no_xmms=version)
103fi
104
105AC_MSG_CHECKING(for XMMS - version >= $min_xmms_version)
106
107if test "x$no_xmms" = x; then
108 AC_MSG_RESULT(yes)
109 ifelse([$2], , :, [$2])
110else
111 AC_MSG_RESULT(no)
112
113 if test "$XMMS_CONFIG" = "no" ; then
114 echo "*** The xmms-config script installed by XMMS could not be found."
115 echo "*** If XMMS was installed in PREFIX, make sure PREFIX/bin is in"
116 echo "*** your path, or set the XMMS_CONFIG environment variable to the"
117 echo "*** full path to xmms-config."
118 else
119 if test "$no_xmms" = "version"; then
120 echo "*** An old version of XMMS, $XMMS_VERSION, was found."
121 echo "*** You need a version of XMMS newer than $min_xmms_version."
122 echo "*** The latest version of XMMS is always available from"
123 echo "*** http://www.xmms.org/"
124 echo "***"
125
126 echo "*** If you have already installed a sufficiently new version, this error"
127 echo "*** probably means that the wrong copy of the xmms-config shell script is"
128 echo "*** being found. The easiest way to fix this is to remove the old version"
129 echo "*** of XMMS, but you can also set the XMMS_CONFIG environment to point to the"
130 echo "*** correct copy of xmms-config. (In this case, you will have to"
131 echo "*** modify your LD_LIBRARY_PATH enviroment variable, or edit /etc/ld.so.conf"
132 echo "*** so that the correct libraries are found at run-time)"
133 fi
134 fi
135 XMMS_CFLAGS=""
136 XMMS_LIBS=""
137 ifelse([$3], , :, [$3])
138fi
139AC_SUBST(XMMS_CFLAGS)
140AC_SUBST(XMMS_LIBS)
141AC_SUBST(XMMS_VERSION)
142AC_SUBST(XMMS_DATA_DIR)
143AC_SUBST(XMMS_PLUGIN_DIR)
144AC_SUBST(XMMS_VISUALIZATION_PLUGIN_DIR)
145AC_SUBST(XMMS_INPUT_PLUGIN_DIR)
146AC_SUBST(XMMS_OUTPUT_PLUGIN_DIR)
147AC_SUBST(XMMS_GENERAL_PLUGIN_DIR)
148AC_SUBST(XMMS_EFFECT_PLUGIN_DIR)
149])
diff --git a/meta/recipes-multimedia/flac/flac_1.2.1.bb b/meta/recipes-multimedia/flac/flac_1.2.1.bb
new file mode 100644
index 0000000000..30a8cfb933
--- /dev/null
+++ b/meta/recipes-multimedia/flac/flac_1.2.1.bb
@@ -0,0 +1,49 @@
1DESCRIPTION = "FLAC stands for Free Lossless Audio Codec, an audio format similar to MP3, but lossless."
2HOMEPAGE = "http://flac.sourceforge.net/"
3BUGTRACKER = "http://sourceforge.net/tracker/?group_id=13478&atid=113478"
4SECTION = "libs"
5LICENSE = "FDLv1.2 & GPLv2+ & LGPLv2.1+ & BSD"
6LIC_FILES_CHKSUM = "file://COPYING.FDL;md5=ad1419ecc56e060eccf8184a87c4285f \
7 file://src/Makefile.am;beginline=1;endline=16;md5=8dee151a56a3122f064a9dce771db37d \
8 file://COPYING.GPL;md5=079b27cd65c86dbc1b6997ffde902735 \
9 file://src/flac/main.c;beginline=1;endline=17;md5=756c4234516e4266ea45ee7bbbd798cf \
10 file://COPYING.LGPL;md5=fbc093901857fcd118f065f900982c24 \
11 file://src/plugin_common/all.h;beginline=1;endline=17;md5=b2e7960da6b43e4eccabf999bcf7f3a9 \
12 file://COPYING.Xiph;md5=df8975c0225f83ed7b567587ed953b83 \
13 file://include/FLAC/all.h;beginline=64;endline=69;md5=64474f2b22e9e77b28d8b8b25c983a48"
14DEPENDS = "libogg"
15
16PR = "r0"
17
18SRC_URI = "${SOURCEFORGE_MIRROR}/flac/flac-${PV}.tar.gz \
19 file://disable-xmms-plugin.patch;patch=1 \
20 file://flac-gcc43-fixes.patch;patch=1 \
21 file://xmms.m4"
22
23S = "${WORKDIR}/flac-${PV}"
24
25inherit autotools
26
27EXTRA_OECONF = "--disable-oggtest --disable-id3libtest \
28 --with-ogg-libraries=${STAGING_LIBDIR} \
29 --with-ogg-includes=${STAGING_INCDIR} \
30 --without-xmms-prefix \
31 --without-xmms-exec-prefix \
32 --without-libiconv-prefix \
33 --without-id3lib"
34
35PACKAGES += "libflac libflac++ liboggflac liboggflac++"
36FILES_${PN} = "${bindir}/*"
37FILES_libflac = "${libdir}/libFLAC.so.*"
38FILES_libflac++ = "${libdir}/libFLAC++.so.*"
39FILES_liboggflac = "${libdir}/libOggFLAC.so.*"
40FILES_liboggflac++ = "${libdir}/libOggFLAC++.so.*"
41
42do_configure () {
43 install -d ${S}/m4
44 install -m 0644 ${WORKDIR}/xmms.m4 ${S}/m4/
45 autotools_do_configure
46 # removes '-read-only-relocs' which is enabled for PowerPC builds.
47 # It makes the build fail, other archs are not affected. Fixes #1775.
48 sed -i 's/-Wl,-read_only_relocs,warning//g' src/libFLAC/Makefile
49}