supercollider: use system glob(3) on musl

This commit is contained in:
Đoàn Trần Công Danh 2021-03-12 07:29:34 +07:00
parent 38deec1623
commit ea41ac0d5e

View file

@ -1,12 +1,12 @@
# Template file for 'supercollider'
pkgname=supercollider
version=3.11.1
revision=1
revision=2
wrksrc="SuperCollider-${version}-Source"
build_style=cmake
make_cmd=make
configure_args="-DENABLE_TESTSUITE=OFF -DSYSTEM_BOOST=ON -DSYSTEM_YAMLCPP=ON"
hostmakedepends="emacs pkg-config"
hostmakedepends="emacs pkg-config qt5-host-tools qt5-qmake"
makedepends="avahi-libs-devel boost-devel fftw-devel jack-devel libatomic-devel
libsndfile-devel libXt-devel qt5-declarative-devel qt5-location-devel
qt5-plugin-mysql qt5-plugin-odbc qt5-plugin-pgsql qt5-plugin-sqlite
@ -19,10 +19,6 @@ homepage="https://github.com/supercollider/supercollider"
distfiles="https://github.com/supercollider/supercollider/releases/download/Version-${version}/SuperCollider-${version}-Source.tar.bz2"
checksum=2dd2f8179a55de4735ac940e2e2d0df4e68cc3a33172628e4dd99ae89c74856b
if [ "$CROSS_BUILD" ]; then
hostmakedepends+=" qt5-host-tools qt5-devel"
fi
export CMAKE_GENERATOR="Unix Makefiles"
build_options="webengine"
@ -40,30 +36,13 @@ else
configure_args+=" -DSC_USE_QTWEBENGINE=OFF"
fi
if [ "$XBPS_TARGET_LIBC" = musl ]; then
makedepends+=" libglob-devel"
fi
case "$XBPS_TARGET_MACHINE" in
x86_64*|i686*);;
*) configure_args+=" -DSSE=OFF -DSSE2=OFF";;
esac
pre_configure() {
rm -rf external_libraries/boost # https://github.com/supercollider/supercollider/issues/4096
# https://github.com/supercollider/supercollider/issues/4096
rm -rf external_libraries/boost
sed -i 's/yaml/yaml-cpp/g' CMakeLists.txt editors/sc-ide/CMakeLists.txt
case "$XBPS_TARGET_MACHINE" in
*-musl)
sed -i \
-e '/include/s,glob\.h,libglob/glob.h,g' \
-e 's/glob(/g_glob(/g' \
-e 's/globfree(/g_globfree(/g' \
common/SC_Filesystem_unix.cpp
sed -i 's/__va_copy/va_copy/g' common/SC_StringBuffer.cpp
echo 'target_link_libraries(sclang glob)' >> lang/CMakeLists.txt
echo 'target_link_libraries(scsynth glob)' >> server/scsynth/CMakeLists.txt
echo 'target_link_libraries(supernova glob)' >> server/supernova/CMakeLists.txt
echo 'target_link_libraries(SuperCollider glob)' >> editors/sc-ide/CMakeLists.txt
;;
esac
}