void-packages/srcpkgs/libmusicbrainz5/template

48 lines
1.6 KiB
Bash

# Template file for 'libmusicbrainz5'
pkgname=libmusicbrainz5
version=5.1.0
revision=4
build_style=cmake
make_build_args="make-c-interface all"
wrksrc="libmusicbrainz-${version}"
hostmakedepends="pkg-config"
makedepends="neon-devel libxml2-devel"
short_desc="Library That Provides Access to the MusicBrainz Server (5.x)"
maintainer="Orphaned <orphan@voidlinux.org>"
license="LGPL-2.1"
homepage="http://musicbrainz.org/"
distfiles="https://github.com/metabrainz/libmusicbrainz/releases/download/release-${version}/libmusicbrainz-${version}.tar.gz"
checksum=6749259e89bbb273f3f5ad7acdffb7c47a2cf8fcaeab4c4695484cef5f4c6b46
if [ "$CROSS_BUILD" ]; then
hostmakedepends+=" ${makedepends}"
fi
pre_configure() {
# Building for the host architecture is needed to generate C interface source files
# see https://github.com/metabrainz/libmusicbrainz/blob/master/INSTALL.txt
if [ "$CROSS_BUILD" ]; then
mkdir build-native
cd build-native
CC=${CC_host} CFLAGS=${XBPS_CFLAGS} CXX=${CXX_host} \
CXXFLAGS=${XBPS_CXXFLAGS} LDFLAGS=${XBPS_LDFLAGS} cmake ..
make ${makejobs} make-c-interface
configure_args+=" -DIMPORT_EXECUTABLES=../build-native/ImportExecutables.cmake"
cd ..
fi
# The line 'DEPENDS ... *.inc' in src/CMakeLists.txt produces this error:
# *** No rule to make target 'src/*.inc', needed by 'src/mb5_c.cc'. Stop.
# We do not edit the *.inc files thus just remove the '*.inc'
vsed -i src/CMakeLists.txt -e "s; \*\.inc;;"
}
libmusicbrainz5-devel_package() {
depends="${makedepends} ${sourcepkg}>=${version}_${revision}"
short_desc+=" -- development files"
pkg_install() {
vmove usr/include
vmove usr/lib/pkgconfig
vmove "usr/lib/*.so"
}
}