Skip to content

Instantly share code, notes, and snippets.

@henry0312
Created October 18, 2012 14:41
Show Gist options
  • Save henry0312/3912302 to your computer and use it in GitHub Desktop.
Save henry0312/3912302 to your computer and use it in GitHub Desktop.
Revert 276e2eb46735726eff17ecda1ead08c6001db9af
diff --git a/contrib/src/taglib/7036.patch b/contrib/src/taglib/7036.patch
new file mode 100644
index 0000000..4c8f98c
--- /dev/null
+++ b/contrib/src/taglib/7036.patch
@@ -0,0 +1,27 @@
+From 7cc36db7606dfc85d2e344d35c4e26fe8f698bdc Mon Sep 17 00:00:00 2001
+From: Jonathan Liu <[email protected]>
+Date: Sat, 6 Aug 2011 11:05:11 +0200
+Subject: [PATCH] Use the default frame factory when it's necessary to parse
+ ID3v2 tags in APE files
+
+https://bugs.kde.org/show_bug.cgi?id=278773
+---
+ taglib/ape/apeproperties.cpp | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/taglib/ape/apeproperties.cpp b/taglib/ape/apeproperties.cpp
+index 3154d10..aab9d25 100644
+--- a/taglib/ape/apeproperties.cpp
++++ b/taglib/ape/apeproperties.cpp
+@@ -137,7 +137,7 @@ long APE::Properties::findDescriptor()
+ long ID3v2OriginalSize = 0;
+ bool hasID3v2 = false;
+ if(ID3v2Location >= 0) {
+- ID3v2::Tag tag(d->file, ID3v2Location, 0);
++ ID3v2::Tag tag(d->file, ID3v2Location);
+ ID3v2OriginalSize = tag.header()->completeTagSize();
+ if(tag.header()->tagSize() > 0)
+ hasID3v2 = true;
+--
+1.7.9.5
+
diff --git a/contrib/src/taglib/SHA512SUMS b/contrib/src/taglib/SHA512SUMS
index f7df259..bd92395 100644
--- a/contrib/src/taglib/SHA512SUMS
+++ b/contrib/src/taglib/SHA512SUMS
@@ -1 +1 @@
-04c3b12bd11d11000ebf6721bfebd47e2995b9b11ad28c1560a83370b9d871eb37155a006637b36b4c3daa68cd690f09c1ab4faf4d3214e6f3f5388b5581fc94 taglib-1.8.tar.gz
+1bd86179eea713259ef70962b8d3e9b54a3ef3a8800f13969bdf8e70222d8f74726a1dd3b50e21cf68a948f728de3cd5dd89251967bdb3d709447c1c0a0f8856 taglib-1.7.2.tar.gz
diff --git a/contrib/src/taglib/rules.mak b/contrib/src/taglib/rules.mak
index af967ea..0ca8242 100644
--- a/contrib/src/taglib/rules.mak
+++ b/contrib/src/taglib/rules.mak
@@ -1,6 +1,6 @@
# TagLib
-TAGLIB_VERSION := 1.8
+TAGLIB_VERSION := 1.7.2
TAGLIB_URL := https://github.com/downloads/taglib/taglib/taglib-$(TAGLIB_VERSION).tar.gz
PKGS += taglib
@@ -12,7 +12,11 @@ $(TARBALLS)/taglib-$(TAGLIB_VERSION).tar.gz:
taglib: taglib-$(TAGLIB_VERSION).tar.gz .sum-taglib
$(UNPACK)
- $(APPLY) $(SRC)/taglib/taglib-pc.patch
+ $(APPLY) $(SRC)/taglib/taglib-static.patch
+ $(APPLY) $(SRC)/taglib/7036.patch
+ifdef HAVE_WIN32
+ $(APPLY) $(SRC)/taglib/taglib-win32.patch
+endif
$(MOVE)
.taglib: taglib toolchain.cmake
diff --git a/contrib/src/taglib/taglib-pc.patch b/contrib/src/taglib/taglib-pc.patch
deleted file mode 100644
index 977034f..0000000
--- a/contrib/src/taglib/taglib-pc.patch
+++ /dev/null
@@ -1,13 +0,0 @@
---- taglib-1.8/CMakeLists.txt.orig 2012-09-06 20:03:15.000000000 +0200
-+++ taglib-1.8/CMakeLists.txt 2012-09-27 15:24:05.840067656 +0200
-@@ -69,10 +69,8 @@
- configure_file(${CMAKE_CURRENT_SOURCE_DIR}/taglib-config.cmake ${CMAKE_CURRENT_BINARY_DIR}/taglib-config )
- install(PROGRAMS ${CMAKE_CURRENT_BINARY_DIR}/taglib-config DESTINATION ${BIN_INSTALL_DIR})
-
--if(NOT WIN32 AND NOT BUILD_FRAMEWORK)
- configure_file(${CMAKE_CURRENT_SOURCE_DIR}/taglib.pc.cmake ${CMAKE_CURRENT_BINARY_DIR}/taglib.pc )
- install(FILES ${CMAKE_CURRENT_BINARY_DIR}/taglib.pc DESTINATION ${LIB_INSTALL_DIR}/pkgconfig)
--endif()
-
- include_directories(${CMAKE_CURRENT_BINARY_DIR})
- configure_file(config-taglib.h.cmake ${CMAKE_CURRENT_BINARY_DIR}/config.h)
diff --git a/contrib/src/taglib/taglib-static.patch b/contrib/src/taglib/taglib-static.patch
new file mode 100644
index 0000000..eafeec8
--- /dev/null
+++ b/contrib/src/taglib/taglib-static.patch
@@ -0,0 +1,31 @@
+diff -ru taglib-1.5/taglib/taglib_export.h taglib/taglib/taglib_export.h
+--- taglib-1.5/taglib/taglib_export.h 2008-02-04 15:14:46.000000000 +0000
++++ taglib/taglib/taglib_export.h 2008-04-13 18:25:29.000000000 +0100
+@@ -28,9 +28,9 @@
+
+ #if !defined(TAGLIB_STATIC) && (defined(_WIN32) || defined(_WIN64))
+ #ifdef MAKE_TAGLIB_LIB
+-#define TAGLIB_EXPORT __declspec(dllexport)
++#define TAGLIB_EXPORT
+ #else
+-#define TAGLIB_EXPORT __declspec(dllimport)
++#define TAGLIB_EXPORT
+ #endif
+ #elif defined(__GNUC__) && (__GNUC__ > 4 || __GNUC__ == 4 && __GNUC_MINOR__ >= 1)
+ #define TAGLIB_EXPORT __attribute__ ((visibility("default")))
+diff -ru taglib.orig/bindings/c/CMakeLists.txt taglib/bindings/c/CMakeLists.txt
+--- taglib.orig/bindings/c/CMakeLists.txt 2011-07-04 23:25:15.000000000 +0300
++++ taglib/bindings/c/CMakeLists.txt 2011-07-04 23:27:43.000000000 +0300
+@@ -19,9 +19,11 @@
+ configure_file(${CMAKE_CURRENT_SOURCE_DIR}/taglib_c.pc.cmake ${CMAKE_CURRENT_BINARY_DIR}/taglib_c.pc )
+ ########### next target ###############
+
+-ADD_LIBRARY(tag_c SHARED tag_c.cpp)
+ if(ENABLE_STATIC)
++ add_LIBRARY(tag_c STATIC tag_c.cpp)
+ set_target_properties(tag_c PROPERTIES COMPILE_DEFINITIONS TAGLIB_STATIC)
++else(ENABLE_STATIC)
++ add_LIBRARY(tag_c SHARED tag_c.cpp)
+ endif(ENABLE_STATIC)
+
+ TARGET_LINK_LIBRARIES(tag_c tag )
diff --git a/contrib/src/taglib/taglib-win32.patch b/contrib/src/taglib/taglib-win32.patch
new file mode 100644
index 0000000..9425bde
--- /dev/null
+++ b/contrib/src/taglib/taglib-win32.patch
@@ -0,0 +1,23 @@
+diff -ru taglib-1.7.orig/CMakeLists.txt taglib-1.7/CMakeLists.txt
+--- taglib-1.7.orig/CMakeLists.txt 2011-11-06 19:44:44.574744323 -0500
++++ taglib-1.7/CMakeLists.txt 2011-11-06 19:44:56.118801560 -0500
+@@ -49,9 +49,7 @@
+
+ configure_file(${CMAKE_CURRENT_SOURCE_DIR}/taglib-config.cmake ${CMAKE_CURRENT_BINARY_DIR}/taglib-config )
+
+-if(NOT WIN32)
+ configure_file(${CMAKE_CURRENT_SOURCE_DIR}/taglib.pc.cmake ${CMAKE_CURRENT_BINARY_DIR}/taglib.pc )
+-endif(NOT WIN32)
+ include_directories(${CMAKE_CURRENT_BINARY_DIR})
+ configure_file(config-taglib.h.cmake ${CMAKE_CURRENT_BINARY_DIR}/config.h )
+
+@@ -70,9 +68,7 @@
+ ADD_SUBDIRECTORY(examples)
+
+ ADD_SUBDIRECTORY(bindings)
+-if(NOT WIN32)
+ install( FILES ${CMAKE_CURRENT_BINARY_DIR}/taglib.pc DESTINATION ${LIB_INSTALL_DIR}/pkgconfig )
+-endif(NOT WIN32)
+
+ INSTALL( PROGRAMS ${CMAKE_CURRENT_BINARY_DIR}/taglib-config DESTINATION ${BIN_INSTALL_DIR})
+
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment