Created attachment 160468 [details] Makefile.diff - Drop unused qt4-linguist (the port already contains prebuilt translations), qt4-sql and qt4-qt3support. - Add missing qt4-xmlpatterns dependency. - Add LICENSE_FILE. - Add new options: -- DEBUG. -- TEST + test target. -- RUBBERBAND (from hydrogen-devel). -- LIBARCHIVE (from hydrogen-devel). - Make OSS support optional. - Add LIBTAR option (and fix libtar detection). - Bump PORTREVISION.
Created attachment 160469 [details] portlint.log
Created attachment 160470 [details] poudriere-9.3-i386-nothing.log
Created attachment 160471 [details] poudriere-9.3-i386-default.log
Created attachment 160472 [details] poudriere-9.3-i386-all.log
Created attachment 160473 [details] poudriere-10.2-amd64-default.log
Created attachment 160474 [details] poudriere-10.2-amd64-all.log
Some of the changes are useful some aren't. Adding LICENSE_FILE is not desired, hydrogen uses the gplv2 and multiple copies of the same license are not wanted. Cleanup of USE_QT4 - yes I should have looked at that a long time ago. Adding CFLAGS is not needed. Adding options DEBUG and TEST - not sure DEBUG and TEST would be needed outside of initial port testing but no harm. Adding librubberband support - this is an experimental feature that can be used in a -devel port but doesn't belong in a stable release. If a user installs audio/rubberband then hydrogen will use the cli tool to provide time stretching. While the rubberband port can be added as a dependency, hydrogen isn't really dependent on it, it will be used if it is there and ignored if it isn't. Disabling OSS does nothing, as oss is part of the base system hydrogen finds it and uses it even if you say you don't want it. The same goes for libarchive and libtar, hydrogen uses a tar format to combine multiple samples into one file, libarchive provides the same functionality with the addition of compression. If libarchive is found hydrogen will use it and ignore libtar, even if you say you don't want libarchive, as it is in the base system it will be found and libtar will never be use, so adding it as an option is pointless. The addition of USES=libarchive is useful so that the newer port version can be used. So the update I submit cleans up USE_QT4 and CMAKE_ARGS, adds libarchive to USES and adds DEBUG and TEST options.
Created attachment 160581 [details] Maintainer update for audio/hydrogen
(In reply to FreeBSD from comment #7) > Disabling OSS does nothing, as oss is part of the base system hydrogen finds it > and uses it even if you say you don't want it. > The same goes for libarchive and libtar, hydrogen uses a tar format to combine > multiple samples into one file, libarchive provides the same functionality with > the addition of compression. If libarchive is found hydrogen will use it and > ignore libtar, even if you say you don't want libarchive, as it is in the base > system it will be found and libtar will never be use, so adding it as an option > is pointless. The addition of USES=libarchive is useful so that the newer port > version can be used. I cannot agree with this statements - at least, poudriere logs say the opposite: poudriere-9.3-i386-nothing.log: OSS : ? available but not desired ( /usr/lib/libc.so ) poudriere-9.3-i386-all.log libarchive : ? available but not desired ( /usr/local/lib/libarchive.so ) ... ====>> Checking shared library dependencies 0x00000001 (NEEDED) Shared library: [libQtCore.so.4] 0x00000001 (NEEDED) Shared library: [libQtGui.so.4] 0x00000001 (NEEDED) Shared library: [libQtNetwork.so.4] 0x00000001 (NEEDED) Shared library: [libQtXml.so.4] 0x00000001 (NEEDED) Shared library: [libQtXmlPatterns.so.4] 0x00000001 (NEEDED) Shared library: [libasound.so.2] 0x00000001 (NEEDED) Shared library: [libc.so.7] 0x00000001 (NEEDED) Shared library: [libgcc_s.so.1] 0x00000001 (NEEDED) Shared library: [libhydrogen-core-0.9.6.1.so] 0x00000001 (NEEDED) Shared library: [libjack.so.0] 0x00000001 (NEEDED) Shared library: [liblash.so.1] 0x00000001 (NEEDED) Shared library: [liblrdf.so.2] 0x00000001 (NEEDED) Shared library: [libm.so.5] 0x00000001 (NEEDED) Shared library: [libportaudio.so.2] 0x00000001 (NEEDED) Shared library: [libpulse.so.0] 0x00000001 (NEEDED) Shared library: [librubberband.so.2] 0x00000001 (NEEDED) Shared library: [libsndfile.so.1] 0x00000001 (NEEDED) Shared library: [libstdc++.so.6] 0x00000001 (NEEDED) Shared library: [libtar.so.0] <<<<< 0x00000001 (NEEDED) Shared library: [libthr.so.3] 0x00000001 (NEEDED) Shared library: [libz.so.6]
I can't get it to ignore libarchive, adding - CMAKE_ARGS+= -DWANT_LIBARCHIVE:BOOL=OFF -DWANT_LIBTAR:BOOL=ON LIB_DEPENDS+= libtar.so:${PORTSDIR}/devel/libtar I get * libtar : ? available but not desired ( /usr/local/lib/libtar.so ) * libarchive : + used ( /usr/local/lib/libarchive.so ) # ldd work/stage/usr/local/bin/hydrogen | grep arch libarchive.so.13 => /usr/local/lib/libarchive.so.13 (0x802ea2000) and I get the same in every poudriere setup
(In reply to FreeBSD from comment #10) Have you applied post-patch fix?
The issue with libtar stems from the search for libtar.h failing, while /usr/local/lib/libtar.so is found, only the base system is searched for libtar.h and after failing to find libtar.h it then causes libarchive to become mandatory. The libtar.h search can be influenced by setting CMAKE_REQUIRED_INCLUDES making the choice between libtar and libarchive feasible.
Created attachment 161190 [details] Maintainer update for audio/hydrogen
Committed, with minor changes. The tests fails though: =======================<phase: test >============================ ===> Testing for hydrogen-0.9.6.1_3 cd /wrkdirs/usr/ports/audio/hydrogen/work/hydrogen-0.9.6.1 && ./src/tests/tests ..Error XSDError in file:./data/xsd/drumkit_pattern.xsd, at line 31, column 75: Type psfloat of element element cannot be resolved. ...Assertion failed: (__instance), function get_instance, file /wrkdirs/usr/ports/audio/hydrogen/work/hydrogen-0.9.6.1/src/core/include/hydrogen/Preferences.h, line 238. *** Signal 6 Stop.
A commit references this bug: Author: mat Date: Thu Oct 29 13:47:30 UTC 2015 New revision: 400458 URL: https://svnweb.freebsd.org/changeset/ports/400458 Log: fix dependencies, add more options PR: 202737 Submitted by: Andriy Voskoboinyk, maintainer Sponsored by: Absolight Changes: head/audio/hydrogen/Makefile