summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--meta/packages/musicbrainz/libmusicbrainz/fix_build_issue_for_gcc_4.5.0.patch37
-rw-r--r--meta/packages/musicbrainz/libmusicbrainz_3.0.2.bb5
2 files changed, 40 insertions, 2 deletions
diff --git a/meta/packages/musicbrainz/libmusicbrainz/fix_build_issue_for_gcc_4.5.0.patch b/meta/packages/musicbrainz/libmusicbrainz/fix_build_issue_for_gcc_4.5.0.patch
new file mode 100644
index 0000000000..80d4d8bf2f
--- /dev/null
+++ b/meta/packages/musicbrainz/libmusicbrainz/fix_build_issue_for_gcc_4.5.0.patch
@@ -0,0 +1,37 @@
+GCC 4.4 cleaned up some more C++ headers. You always have to #include
+headers directly and cannot rely for things to be included indirectly.
+
+Otherwise you get errors like this:
+
+| /home/nitin/build/build0/tmp/work/i586-poky-linux/libmusicbrainz-3.0.2-r0/libmusicbrainz-3.0.2/src/utils_private.cpp: In function 'std::string MusicBrainz::intToString(int)':
+| /home/nitin/build/build0/tmp/work/i586-poky-linux/libmusicbrainz-3.0.2-r0/libmusicbrainz-3.0.2/src/utils_private.cpp:38:23: error: 'sprintf' was not declared in this scope
+| /home/nitin/build/build0/tmp/work/i586-poky-linux/libmusicbrainz-3.0.2-r0/libmusicbrainz-3.0.2/src/utils_private.cpp: In function 'void MusicBrainz::debug(const char*, ...)':
+| /home/nitin/build/build0/tmp/work/i586-poky-linux/libmusicbrainz-3.0.2-r0/libmusicbrainz-3.0.2/src/utils_private.cpp:80:10: error: 'stderr' was not declared in this scope
+| /home/nitin/build/build0/tmp/work/i586-poky-linux/libmusicbrainz-3.0.2-r0/libmusicbrainz-3.0.2/src/utils_private.cpp:80:33: error: 'fprintf' was not declared in this scope
+| /home/nitin/build/build0/tmp/work/i586-poky-linux/libmusicbrainz-3.0.2-r0/libmusicbrainz-3.0.2/src/utils_private.cpp:81:26: error: 'vfprintf' was not declared in this scope
+| make[2]: *** [src/CMakeFiles/musicbrainz3.dir/utils_private.o] Error 1
+| make[2]: *** Waiting for unfinished jobs....
+| /home/nitin/build/build0/tmp/work/i586-poky-linux/libmusicbrainz-3.0.2-r0/libmusicbrainz-3.0.2/src/xmlParser/xmlParser.cpp:116:1: warning: 'typedef' was ignored in this declaration
+| make[1]: *** [src/CMakeFiles/musicbrainz3.dir/all] Error 2
+| make: *** [all] Error 2
+| FATAL: oe_runmake failed
+NOTE: package libmusicbrainz-3.0.2-r0: task do_compile: Failed
+
+Found the solution here:
+http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=504895
+
+Date: 2010/07/28
+Nitin A Kamble <nitin.a.kamble@intel.com>
+
+Index: libmusicbrainz-3.0.2/src/utils_private.cpp
+===================================================================
+--- libmusicbrainz-3.0.2.orig/src/utils_private.cpp
++++ libmusicbrainz-3.0.2/src/utils_private.cpp
+@@ -20,6 +20,7 @@
+ * $Id: utils_private.cpp 9934 2008-07-02 06:57:10Z luks $
+ */
+
++#include <cstdio>
+ #include <cstdlib>
+ #include <cstring>
+ #include <cstdarg>
diff --git a/meta/packages/musicbrainz/libmusicbrainz_3.0.2.bb b/meta/packages/musicbrainz/libmusicbrainz_3.0.2.bb
index b649620ac4..5dfda12a3d 100644
--- a/meta/packages/musicbrainz/libmusicbrainz_3.0.2.bb
+++ b/meta/packages/musicbrainz/libmusicbrainz_3.0.2.bb
@@ -5,8 +5,9 @@ LIC_FILES_CHKSUM = "file://COPYING.txt;md5=fbc093901857fcd118f065f900982c24 \
file://include/musicbrainz3/includes.h;beginline=1;endline=21;md5=e7d3b3e6d8bb7ee278dc4040d380ebd5"
DEPENDS = "expat neon"
-PR = "r0"
+PR = "r1"
-SRC_URI = "http://ftp.musicbrainz.org/pub/musicbrainz/${PN}-${PV}.tar.gz"
+SRC_URI = "http://ftp.musicbrainz.org/pub/musicbrainz/${PN}-${PV}.tar.gz \
+ file://fix_build_issue_for_gcc_4.5.0.patch"
inherit cmake pkgconfig