libmusicbrainz: Add libmusicbrainz 5.1.0 recipe and patchset

This commit is contained in:
Theodore Kokkoris
2015-01-17 17:30:19 +02:00
parent 22d8b50810
commit fc4d492b24
3 changed files with 165 additions and 30 deletions

View File

@@ -1,30 +0,0 @@
DESCRIPTION="The MusicBrainz Client Library (for accessing the latest XML based web service"
HOMEPAGE="http://musicbrainz.org/doc/libmusicbrainz"
SRC_URI="https://github.com/downloads/metabrainz/libmusicbrainz/libmusicbrainz-5.0.1.tar.gz"
REVISION="1"
STATUS_HAIKU="stable"
DEPEND=""
CHECKSUM_MD5="a0406b94c341c2b52ec0fe98f57cadf3"
MESSAGE="This port only builds with gcc4. Use 'setgcc gcc4' before building."
BUILD()
{
cd libmusicbrainz-5.0.1
cmake .
make
}
INSTALL()
{
cd libmusicbrainz-5.0.1
make install
}
TEST()
{
cd libmusicbrainz-5.0.1
make test
}
LICENSE="GNU LGPL v2.1"
COPYRIGHT="2012 Andrew Hawkins"

View File

@@ -0,0 +1,61 @@
SUMMARY="Lookup capabilities for music files"
DESCRIPTION="The MusicBrainz Client Library (libmusicbrainz), also known as \
mb_client, is a development library geared towards developers who wish to \
add MusicBrainz lookup capabilities to their applications."
REVISION="1"
HOMEPAGE="http://musicbrainz.org/doc/libmusicbrainz"
SRC_URI="https://github.com/metabrainz/libmusicbrainz/releases/download/release-5.1.0/libmusicbrainz-5.1.0.tar.gz"
CHECKSUM_SHA256="6749259e89bbb273f3f5ad7acdffb7c47a2cf8fcaeab4c4695484cef5f4c6b46"
COPYRIGHT="2012 Andrew Hawkins"
LICENSE="GNU LGPL v2.1"
ARCHITECTURES="x86_gcc2 x86 ?x86_64"
SECONDARY_ARCHITECTURES="x86"
PROVIDES="
musicbrainz$secondaryArchSuffix = $portVersion
lib:libmusicbrainz5$secondaryArchSuffix = $portVersion
"
REQUIRES="
haiku$secondaryArchSuffix
lib:libneon$secondaryArchSuffix
lib:libxml2$secondaryArchSuffix
"
BUILD_REQUIRES="
devel:libneon$secondaryArchSuffix
devel:libxml2$secondaryArchSuffix
"
BUILD_PREREQUIRES="
haiku${secondaryArchSuffix}_devel
cmd:gcc$secondaryArchSuffix
cmd:cmake
cmd:make
cmd:pkg_config$secondaryArchSuffix
"
PATCHES="musicbrainz-5.1.0.patchset"
BUILD() {
cmake . -DCMAKE_INSTALL_PREFIX=$prefix
make
}
INSTALL() {
make install
prepareInstalledDevelLibs libmusicbrainz5
fixPkgconfig
packageEntries devel \
$developDir
}
PROVIDES_devel="
musicbrainz${secondaryArchSuffix}_devel = $portVersion
devel:libmusicbrainz5$secondaryArchSuffix = $portVersion
"
REQUIRES_devel="
musicbrainz$secondaryArchSuffix == $portVersion base
"

View File

@@ -0,0 +1,104 @@
From 5b985f20b6ac7aafaaccba676aeda2770b0794ed Mon Sep 17 00:00:00 2001
From: Theodore Kokkoris <t.kokkoris@gmail.com>
Date: Sat, 17 Jan 2015 17:23:20 +0200
Subject: [PATCH 1/4] Add secondary arch suffix to library path
---
CMakeLists.txt | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 384cb65..32770df 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -22,7 +22,7 @@ SET(CMAKE_MODULE_PATH ${CMAKE_SOURCE_DIR}/cmake/modules)
FIND_PACKAGE(Neon REQUIRED)
FIND_PACKAGE(LibXml2 REQUIRED)
-SET(LIB_SUFFIX "" CACHE STRING "Define suffix of directory name (32/64)")
+SET(LIB_SUFFIX "${CMAKE_HAIKU_SECONDARY_ARCH_SUBDIR}" CACHE STRING "Define suffix of directory name (32/64)")
SET(EXEC_INSTALL_PREFIX ${CMAKE_INSTALL_PREFIX} CACHE PATH "Installation prefix for executables and object code libraries" FORCE)
SET(BIN_INSTALL_DIR ${EXEC_INSTALL_PREFIX}/bin CACHE PATH "Installation prefix for user executables" FORCE)
SET(LIB_INSTALL_DIR ${EXEC_INSTALL_PREFIX}/lib${LIB_SUFFIX} CACHE PATH "Installation prefix for object code libraries" FORCE)
--
1.8.3.4
From 43f6063c57e697082e7942248ee471677e157f50 Mon Sep 17 00:00:00 2001
From: Theodore Kokkoris <t.kokkoris@gmail.com>
Date: Sat, 17 Jan 2015 17:25:04 +0200
Subject: [PATCH 2/4] Change header installation directory on Haiku
---
CMakeLists.txt | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 32770df..a3550a1 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -26,7 +26,11 @@ SET(LIB_SUFFIX "${CMAKE_HAIKU_SECONDARY_ARCH_SUBDIR}" CACHE STRING "Define suffi
SET(EXEC_INSTALL_PREFIX ${CMAKE_INSTALL_PREFIX} CACHE PATH "Installation prefix for executables and object code libraries" FORCE)
SET(BIN_INSTALL_DIR ${EXEC_INSTALL_PREFIX}/bin CACHE PATH "Installation prefix for user executables" FORCE)
SET(LIB_INSTALL_DIR ${EXEC_INSTALL_PREFIX}/lib${LIB_SUFFIX} CACHE PATH "Installation prefix for object code libraries" FORCE)
+if (HAIKU)
+SET(INCLUDE_INSTALL_DIR ${CMAKE_INSTALL_PREFIX}/develop/headers CACHE PATH "Installation prefix for C header files" FORCE)
+else (HAIKU)
SET(INCLUDE_INSTALL_DIR ${CMAKE_INSTALL_PREFIX}/include CACHE PATH "Installation prefix for C header files" FORCE)
+endif (HAIKU)
CONFIGURE_FILE(${CMAKE_CURRENT_SOURCE_DIR}/libmusicbrainz5.pc.cmake ${CMAKE_CURRENT_BINARY_DIR}/libmusicbrainz5.pc)
CONFIGURE_FILE(${CMAKE_CURRENT_SOURCE_DIR}/Doxyfile.cmake ${CMAKE_CURRENT_SOURCE_DIR}/Doxyfile)
--
1.8.3.4
From bb1836b89190990cae7f4ef505824eae6baa61be Mon Sep 17 00:00:00 2001
From: Theodore Kokkoris <t.kokkoris@gmail.com>
Date: Sat, 17 Jan 2015 17:25:26 +0200
Subject: [PATCH 3/4] Remove tests and examples build
Doesn't work with gcc2 (std::boolalpha)
---
CMakeLists.txt | 2 --
1 file changed, 2 deletions(-)
diff --git a/CMakeLists.txt b/CMakeLists.txt
index a3550a1..4d5fa02 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -41,8 +41,6 @@ INSTALL(FILES ${headers} ${CMAKE_CURRENT_BINARY_DIR}/include/musicbrainz5/mb5_c.
INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/libmusicbrainz5.pc DESTINATION ${LIB_INSTALL_DIR}/pkgconfig)
ADD_SUBDIRECTORY(src)
-ADD_SUBDIRECTORY(tests)
-ADD_SUBDIRECTORY(examples)
ADD_CUSTOM_TARGET(docs
doxygen
--
1.8.3.4
From f980c76455c341b6f97f728709a4e726447f0355 Mon Sep 17 00:00:00 2001
From: Theodore Kokkoris <t.kokkoris@gmail.com>
Date: Sat, 17 Jan 2015 17:25:56 +0200
Subject: [PATCH 4/4] Remove -Wextra (doesn't exist on gcc2)
---
src/CMakeLists.txt | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
index c91a565..160d5c0 100644
--- a/src/CMakeLists.txt
+++ b/src/CMakeLists.txt
@@ -65,7 +65,7 @@ IF(WIN32)
ENDIF(WIN32)
IF(CMAKE_COMPILER_IS_GNUCXX)
- SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wall -Wextra -pedantic-errors")
+ SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wall -pedantic-errors")
IF(EXISTS ${CMAKE_CURRENT_SOURCE_DIR}/../.git)
SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Werror")
ENDIF(EXISTS ${CMAKE_CURRENT_SOURCE_DIR}/../.git)
--
1.8.3.4