diff --git a/community/zynaddsubfx/PKGBUILD b/community/zynaddsubfx/PKGBUILD index c29b0e4ec..1beeda767 100644 --- a/community/zynaddsubfx/PKGBUILD +++ b/community/zynaddsubfx/PKGBUILD @@ -1,4 +1,3 @@ -# $Id$ # Maintainer: David Runge # Contributor: Sergej Pupykin # Contributor: SpepS @@ -9,26 +8,40 @@ # - don't build with neon (-DNoNeonPlease=1) pkgname=zynaddsubfx -pkgver=3.0.3 -pkgrel=6 +pkgver=3.0.5 +pkgrel=1 pkgdesc="Opensource software synthesizer capable of making a countless number of instruments." arch=('x86_64') url="http://zynaddsubfx.sourceforge.net" license=('GPL2') groups=('lv2-plugins' 'pro-audio' 'vst-plugins') -depends=('fftw' 'hicolor-icon-theme' 'liblo' 'libxpm' 'mxml' 'ntk' 'portaudio') -makedepends=('asciidoc' 'cmake' 'doxygen' 'gnuplot' 'dblatex' 'imagemagick' 'ghostscript' 'texlive-pstricks') -source=("https://downloads.sourceforge.net/project/${pkgname}/${pkgname}/${pkgver}/${pkgname}-${pkgver}.tar.bz2") -sha512sums=('e60e22656388d444114959859c12014ec79d7ba555b0d217ad98ad06e273916eea0eee521bb9dbfdef5be34205280d355b44a8f15760eeff06b16410d560b5d7') +depends=('fftw' 'hicolor-icon-theme' 'liblo' 'libxpm' 'mxml' 'ntk' 'portaudio' 'rtosc') +#makedepends=('asciidoc' 'asciidoctor' 'dblatex' 'cmake' 'doxygen' 'ghostscript' 'gnuplot' 'imagemagick' 'texlive-pictures' 'texlive-pstricks') +makedepends=('asciidoc' 'asciidoctor' 'cmake' 'doxygen') +# tests don't link: https://sourceforge.net/p/zynaddsubfx/bugs/186/ +# checkdepends=('cxxtest') +# zyn-fusion is still too fragmented to be build: +# https://github.com/zynaddsubfx/zyn-fusion-issues/issues/214 +# https://github.com/zynaddsubfx/zyn-fusion-issues/issues/215 +# https://github.com/zynaddsubfx/zyn-fusion-issues/issues/216 +# https://github.com/zynaddsubfx/zyn-fusion-issues/issues/217 +source=("https://downloads.sourceforge.net/project/${pkgname}/${pkgname}/${pkgver}/${pkgname}-${pkgver}.tar.bz2" + "${pkgname}-system-rtosc.patch" + "${pkgname}-fix-bash-completion-installation.patch") +sha512sums=('1e4d5a6393937e6c7103e6d0e97df76f2d129350854c2f338aa888591091b1508c63e9b52c8e5a176e282ff2f6b72c6a87de54875c412771aff26e8ece2c84e8' + 'e12f6925bc18012a2cee816d94eca51a0e39a9ba020f9692537ba8df839faa954c6dda86a334de59d7c036fa00b77968bae78eb39971a4c58eb126fafafedd7e' + '667196e5c75286613e6b191645c7edf1e8da6ca54a4e95a34994c3172a0706c1dae48804081299f03cd75b63907f972b2c1ccfa3bb07011cdfda1fd29b21ed69') prepare() { cd "${pkgname}-${pkgver}" mkdir -vp build + # devendor rtosc: https://sourceforge.net/p/zynaddsubfx/bugs/184/ + patch -Np1 -i "../${pkgname}-system-rtosc.patch" + patch -Np1 -i "../${pkgname}-fix-bash-completion-installation.patch" } build() { cd "${pkgname}-${pkgver}/build" - cmake \ -DCMAKE_INSTALL_PREFIX=/usr \ -DDefaultOutput=jack \ @@ -36,12 +49,22 @@ build() { -DGuiModule=ntk \ -DNoNeonPlease=1 \ .. - make - # build documentation + make VERBOSE=1 + ( + # building only man and html documentation + # generating a pdf is broken: https://bugs.archlinux.org/task/59778 + # https://sourceforge.net/p/zynaddsubfx/bugs/185/ cd ../doc - make + make man + make xhtml + ) } +# check() { +# cd "${pkgname}-${pkgver}/build" +# make -k test +# } + package() { cd "${pkgname}-${pkgver}/build" make DESTDIR="${pkgdir}/" install @@ -60,7 +83,7 @@ package() { # documentation install -vDm 644 "../doc/${pkgname}.html" \ "${pkgdir}/usr/share/doc/${pkgname}/${pkgname}.html" - install -vDm 644 "../doc/${pkgname}.pdf" \ - "${pkgdir}/usr/share/doc/${pkgname}/${pkgname}.pdf" +# install -vDm 644 "../doc/${pkgname}.pdf" \ +# "${pkgdir}/usr/share/doc/${pkgname}/${pkgname}.pdf" cp -va ../doc/images "${pkgdir}/usr/share/doc/${pkgname}/" } diff --git a/community/zynaddsubfx/zynaddsubfx-fix-bash-completion-installation.patch b/community/zynaddsubfx/zynaddsubfx-fix-bash-completion-installation.patch new file mode 100644 index 000000000..0c96ecaa9 --- /dev/null +++ b/community/zynaddsubfx/zynaddsubfx-fix-bash-completion-installation.patch @@ -0,0 +1,24 @@ +diff -ruN a/cmake/BashCompletion.cmake d/cmake/BashCompletion.cmake +--- a/cmake/BashCompletion.cmake 2019-02-23 16:43:37.000000000 +0100 ++++ d/cmake/BashCompletion.cmake 2019-04-19 00:21:17.721631142 +0200 +@@ -78,15 +78,15 @@ + BASHCOMP_PKG_PATH=\"${BASHCOMP_PKG_PATH}\"\n\ + fi\n\ + echo -e \"\\nInstalling bash completion...\\n\"\n\ +-mkdir -p \"\$BASHCOMP_PKG_PATH\"\n\ +-cp \"${CMAKE_CURRENT_BINARY_DIR}/${SCRIPT_NAME}\" \"\$BASHCOMP_PKG_PATH\"\n\ +-chmod a+r \"\$BASHCOMP_PKG_PATH/${SCRIPT_NAME}\"\n\ +-echo -e \"Bash completion for ${SCRIPT_NAME} has been installed to \$BASHCOMP_PKG_PATH/${SCRIPT_NAME}\"\n\ ++mkdir -p \"\${DESTDIR}/$BASHCOMP_PKG_PATH\"\n\ ++cp \"${CMAKE_CURRENT_BINARY_DIR}/${SCRIPT_NAME}\" \"\${DESTDIR}/$BASHCOMP_PKG_PATH\"\n\ ++chmod a+r \"\${DESTDIR}/$BASHCOMP_PKG_PATH/${SCRIPT_NAME}\"\n\ ++echo -e \"Bash completion for ${SCRIPT_NAME} has been installed to \${DESTDIR}/$BASHCOMP_PKG_PATH/${SCRIPT_NAME}\"\n\ + ") + INSTALL(CODE "EXECUTE_PROCESS(COMMAND chmod u+x \"install_${SCRIPT_NAME}_completion.sh\" WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR} )") + INSTALL(CODE "EXECUTE_PROCESS(COMMAND \"./install_${SCRIPT_NAME}_completion.sh\" WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR} )") + +- MESSAGE(STATUS "Bash completion script for ${SCRIPT_NAME} will be installed to ${BASHCOMP_PKG_PATH} or fallback to ${BASHCOMP_USER_PATH} if unwritable.") ++ MESSAGE(STATUS "Bash completion script for ${SCRIPT_NAME} will be installed to ${DESTDIR}/${BASHCOMP_PKG_PATH} or fallback to ${BASHCOMP_USER_PATH} if unwritable.") + ENDMACRO() + ENDIF() + diff --git a/community/zynaddsubfx/zynaddsubfx-system-rtosc.patch b/community/zynaddsubfx/zynaddsubfx-system-rtosc.patch new file mode 100644 index 000000000..35b7a3996 --- /dev/null +++ b/community/zynaddsubfx/zynaddsubfx-system-rtosc.patch @@ -0,0 +1,49 @@ +diff -ruN a/CMakeLists.txt b/CMakeLists.txt +--- a/CMakeLists.txt 2019-04-15 06:05:59.000000000 +0200 ++++ b/CMakeLists.txt 2019-04-16 21:01:48.285475235 +0200 +@@ -11,23 +11,32 @@ + endif() + + #Include RTOSC +-if(NOT EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/rtosc/CMakeLists.txt") +- message(STATUS "RTOSC NOT FOUND") +- message(STATUS "Attempting to checkout submodule") +- find_package(Git REQUIRED) +- execute_process(COMMAND git submodule update --init) ++find_package(PkgConfig) ++set(PKG_CONFIG_USE_CMAKE_PREFIX_PATH TRUE) ++pkg_check_modules(RTOSC REQUIRED librtosc ) ++if(RTOSC_FOUND) ++ message(STATUS "Found Rtosc system package...") ++ message(STATUS "Including from: ${RTOSC_INCLUDE_DIR}") ++ include_directories(${RTOSC_INCLUDE_DIR}) ++else() + if(NOT EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/rtosc/CMakeLists.txt") +- message(FATAL_ERROR "FAILED TO CHECKOUT RTOSC\n" +- "please check file permissions and your network") ++ message(STATUS "RTOSC NOT FOUND") ++ message(STATUS "Attempting to checkout submodule") ++ find_package(Git REQUIRED) ++ execute_process(COMMAND git submodule update --init) ++ if(NOT EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/rtosc/CMakeLists.txt") ++ message(FATAL_ERROR "FAILED TO CHECKOUT RTOSC\n" ++ "please check file permissions and your network") ++ endif() ++ else() ++ message(STATUS "Found Rtosc Submodule...") + endif() +-else() +- message(STATUS "Found Rtosc Submodule...") ++ set(RTOSC_NO_INSTALL TRUE) ++ include("rtosc/cmake/ColorMessage.cmake") ++ add_subdirectory(rtosc) ++ include_directories(rtosc/include) + endif() + +-set(RTOSC_NO_INSTALL TRUE) +-include("rtosc/cmake/ColorMessage.cmake") +-add_subdirectory(rtosc) +-include_directories(rtosc/include) + + enable_testing() + include(CTestConfig.cmake)