102 lines
3.3 KiB
Bash
102 lines
3.3 KiB
Bash
# Maintainer: Alexey Pavlov <alexpux@gmail.com>
|
|
|
|
_realname=fluidsynth
|
|
pkgbase=mingw-w64-${_realname}
|
|
pkgname="${MINGW_PACKAGE_PREFIX}-${_realname}"
|
|
pkgver=2.3.4
|
|
pkgrel=1
|
|
pkgdesc="A real-time software synthesizer based on the SoundFont 2 specifications (mingw-w64)"
|
|
arch=('any')
|
|
mingw_arch=('mingw32' 'mingw64' 'ucrt64' 'clang64' 'clang32' 'clangarm64')
|
|
url="https://www.fluidsynth.org/"
|
|
msys2_references=(
|
|
"cpe: cpe:/a:fluidsynth:fluidsynth"
|
|
)
|
|
license=('spdx:LGPL-2.1-or-later')
|
|
depends=("${MINGW_PACKAGE_PREFIX}-gcc-libs"
|
|
"${MINGW_PACKAGE_PREFIX}-glib2"
|
|
"${MINGW_PACKAGE_PREFIX}-libsndfile"
|
|
"${MINGW_PACKAGE_PREFIX}-portaudio"
|
|
"${MINGW_PACKAGE_PREFIX}-readline"
|
|
"${MINGW_PACKAGE_PREFIX}-SDL2")
|
|
makedepends=("${MINGW_PACKAGE_PREFIX}-cc"
|
|
"${MINGW_PACKAGE_PREFIX}-cmake"
|
|
"${MINGW_PACKAGE_PREFIX}-ladspa-sdk"
|
|
"${MINGW_PACKAGE_PREFIX}-ninja"
|
|
"${MINGW_PACKAGE_PREFIX}-pkgconf")
|
|
source=("${_realname}-${pkgver}.tar.gz::https://github.com/FluidSynth/${_realname}/archive/v${pkgver}.tar.gz"
|
|
"010-no-undefined.patch")
|
|
sha256sums=('1529ef5bc3b9ef3adc2a7964505912f7305103e269e50cc0316f500b22053ac9'
|
|
'8b865ac2b0ea760f3c5fa640573793131a09cdc7af833ab6fd8f69b583e41153')
|
|
noextract=("${_realname}-${pkgver}.tar.gz")
|
|
|
|
prepare() {
|
|
cd ${srcdir}
|
|
tar -xf "${_realname}-${pkgver}.tar.gz" || true
|
|
|
|
cd "${_realname}-${pkgver}"
|
|
patch -p1 -i ${srcdir}/010-no-undefined.patch
|
|
}
|
|
|
|
build() {
|
|
declare -a extra_config
|
|
if check_option "debug" "n"; then
|
|
extra_config+=("-DCMAKE_BUILD_TYPE=Release")
|
|
else
|
|
extra_config+=("-DCMAKE_BUILD_TYPE=Debug")
|
|
fi
|
|
|
|
local -a _static_flags=(
|
|
-DGIO_STATIC_COMPILATION
|
|
-DGLIB_STATIC_COMPILATION
|
|
-DGMODULE_STATIC_COMPILATION
|
|
-DGOBJECT_STATIC_COMPILATION
|
|
)
|
|
|
|
mkdir -p "${srcdir}"/build-${MSYSTEM}-static && cd "${srcdir}"/build-${MSYSTEM}-static
|
|
|
|
CFLAGS+=" ${_static_flags[@]}" \
|
|
CXXFLAGS+=" ${_static_flags[@]}" \
|
|
MSYS2_ARG_CONV_EXCL="-DCMAKE_INSTALL_PREFIX=" \
|
|
${MINGW_PREFIX}/bin/cmake.exe \
|
|
-G'Ninja' \
|
|
-DCMAKE_INSTALL_PREFIX=${MINGW_PREFIX} \
|
|
"${extra_config[@]}" \
|
|
-DBUILD_SHARED_LIBS=OFF \
|
|
-Denable-portaudio=ON \
|
|
-Denable-dbus=OFF \
|
|
../${_realname}-${pkgver}
|
|
|
|
${MINGW_PREFIX}/bin/cmake.exe --build ./
|
|
|
|
mkdir -p "${srcdir}"/build-${MSYSTEM}-shared && cd "${srcdir}"/build-${MSYSTEM}-shared
|
|
|
|
MSYS2_ARG_CONV_EXCL="-DCMAKE_INSTALL_PREFIX=" \
|
|
${MINGW_PREFIX}/bin/cmake.exe \
|
|
-G'Ninja' \
|
|
-DCMAKE_INSTALL_PREFIX=${MINGW_PREFIX} \
|
|
"${extra_config[@]}" \
|
|
-DBUILD_SHARED_LIBS=ON \
|
|
-Denable-portaudio=ON \
|
|
-Denable-dbus=OFF \
|
|
../${_realname}-${pkgver}
|
|
|
|
${MINGW_PREFIX}/bin/cmake.exe --build ./
|
|
}
|
|
|
|
package() {
|
|
cd "${srcdir}"/build-${MSYSTEM}-static
|
|
DESTDIR="${pkgdir}" ${MINGW_PREFIX}/bin/cmake.exe --install ./
|
|
|
|
cd "${srcdir}"/build-${MSYSTEM}-shared
|
|
DESTDIR="${pkgdir}" ${MINGW_PREFIX}/bin/cmake.exe --install ./
|
|
|
|
local MINGW_PREFIX_WIN=$(cygpath -am ${MINGW_PREFIX})
|
|
find "${pkgdir}${MINGW_PREFIX}/lib/pkgconfig" -type f -name '*.pc' \
|
|
-exec sed -i -e "s|${MINGW_PREFIX_WIN}|${MINGW_PREFIX}|g" \
|
|
-e "s|${MINGW_PREFIX}/include|\${prefix}/include|g" \
|
|
-e "s|${MINGW_PREFIX}/lib|\${prefix}/lib|g" {} \;
|
|
|
|
install -vDm644 "${srcdir}/${_realname}-${pkgver}/LICENSE" "${pkgdir}${MINGW_PREFIX}/share/licenses/${_realname}/LICENSE"
|
|
}
|