Bug 268132

Summary: [NEW PORT] audio/grandorgue: Virtual Pipe Organ Software
Product: Ports & Packages Reporter: tuc03516
Component: Individual Port(s)Assignee: freebsd-ports-bugs (Nobody) <ports-bugs>
Status: Open ---    
Severity: Affects Only Me CC: eduardo, grahamperrin, kwhite.uottawa, meta, tuc03516
Priority: ---    
Version: Latest   
Hardware: Any   
OS: Any   
URL: https://github.com/GrandOrgue/grandorgue
Attachments:
Description Flags
patch to add grandorgue to ports collection
none
updated patch for GrandOrgue
none
poudriere build log
none
fix dep issues GrandOrgue
none
Update to GrandOrgue v3.11.0 and fix poudriere build
none
build online documentation
none
Update to GrandOrgue v3.13.0 and RtAudio6
none
Update to GrandOrgue v3.13.0 and RtAudio6 (updated)
none
Update to GrandOrgue v3.13.1
none
Update to GrandOrgue v3.13.2
none
Update to GrandOrgue v3.13.3
none
update to 3.14.0.1
none
update to 3.14.0.1 - remove constant update available notice
none
Update to GrandOrgue v3.14.1 none

Description tuc03516 2022-12-02 23:34:13 UTC
Created attachment 238494 [details]
patch to add grandorgue to ports collection

GrandOrgue is a Virtual Pipe Organ program that allows people to play virtual pipe organs based on samples of existing organs. It compiles without changes on FreeBSD, I've attached a patch file for the new port. Installing from this patch is working on FreeBSD 13.1-p5.
Comment 1 Koichiro Iwao freebsd_committer freebsd_triage 2022-12-05 06:18:09 UTC
You should check your port with portlint before submitting.
Comment 2 tuc03516 2022-12-05 18:30:48 UTC
(In reply to Koichiro Iwao from comment #1)
I checked it with portlint and didn't see anything come back, did it show you something on your side of things?
Comment 3 tuc03516 2022-12-05 19:17:27 UTC
Created attachment 238556 [details]
updated patch for GrandOrgue

wait my apologies I was running a different tool. This patch is showing no errors through portlint. Also included a png-message for usb-midi passthrough.
Comment 4 Koichiro Iwao freebsd_committer freebsd_triage 2022-12-09 01:04:41 UTC
(In reply to tuc03516 from comment #3)
Looks nicer. I forgot to mention that you also need to run portfmt to format port Makefile. I'll do it on my side at this time. Please keep in mind next.
Comment 5 Koichiro Iwao freebsd_committer freebsd_triage 2022-12-09 01:52:07 UTC
Created attachment 238655 [details]
poudriere build log

It doesn't build. Have you tested?
Comment 6 tuc03516 2022-12-09 03:19:41 UTC
(In reply to Koichiro Iwao from comment #5)
It built on both my test benches, I'll review your log tomorrow and see if I can figure out what the issue is.
Comment 7 tuc03516 2022-12-10 17:43:13 UTC
Created attachment 238696 [details]
fix dep issues GrandOrgue

Found the issue, both my test benches have KDE installed which fixed a dependency not in the makers build configuration (ImageMagick7). This patch has built and installed on 2 fresh jails.
Comment 8 Keith White 2023-04-28 00:53:58 UTC
Created attachment 241803 [details]
Update to GrandOrgue v3.11.0 and fix poudriere build

Do we think this will land in the ports tree?

I attach a patch to bring version to 3.11.0, and the requirements for a successful build in a "clean" poudriere 13.2-RELEASE or 14.0-CURRENT jail.
Adding alsa-lib to allow use of /dev/dsp audio output without necessarily needing jack or pulseaudio. Added yaml-cpp required for GrandOrgue v3.11.0.

The built GrandOrgue installation tested successfully with my Viscount organ console interfaced with jack_umidi.
Comment 9 Keith White 2023-05-02 00:22:15 UTC
Created attachment 241918 [details]
build online documentation

Online help was missing.  Additional patch to Makefile and pkg-plist.
Comment 10 Keith White 2023-10-19 11:43:43 UTC
Created attachment 245740 [details]
Update to GrandOrgue v3.13.0 and RtAudio6

GrandOrgue v3.13.0 has been released.

GrandOrgue uses RtAudio-5.  The API for audio/rtaudio-5* and audio/rtaudio-6* is different,  so a patch from debian is included to build GrandOrgue against audio/rtaudio-6.0.1
Comment 11 Keith White 2023-10-19 11:48:45 UTC
Created attachment 245741 [details]
Update to GrandOrgue v3.13.0 and RtAudio6  (updated)

Oops, wrong patch.  Keyboard was acting up.  I'm *sure* you don't want all my ports diffs...

This one just includes the patches for audio/grandorgue
Comment 12 Keith White 2023-11-07 23:20:21 UTC
Created attachment 246188 [details]
Update to GrandOrgue v3.13.1

Update to v3.13.1 and add some -Wno-* CXXFLAGS to reduce the build log errors.
Comment 13 Keith White 2023-11-19 15:28:24 UTC
Created attachment 246425 [details]
Update to GrandOrgue v3.13.2

update to v3.13.2
Comment 14 Keith White 2024-01-11 14:11:57 UTC
Created attachment 247594 [details]
Update to GrandOrgue v3.13.3

Update to GrandOrgue v3.13.3.   Tested on amd64, armv7
Comment 15 tuc03516 2024-03-29 15:17:58 UTC
Created attachment 249557 [details]
update to 3.14.0.1

Tested working on amd64 running FreeBSD 13.3-p1.
Comment 16 Keith White 2024-03-29 16:50:04 UTC
For me, it was necessary to add -DBUILD_VERSION=1 to CMAKE_ARGS in the Makefile. Otherwise "Update available!" is triggered each time you start GrandOrgue.

===
--- ./Makefile  2024-03-29 12:32:14.210171000 -0400
+++ audio/grandorgue/Makefile        2024-03-29 09:26:41.150040000 -0400
@@ -45,6 +45,7 @@
 CMAKE_ARGS=    -DUSE_INTERNAL_PORTAUDIO:BOOL=FALSE \
                -DUSE_INTERNAL_RTAUDIO:BOOL=FALSE \
                -DUSE_INTERNAL_ZITACONVOLVER:BOOL=FALSE \
+               -DBUILD_VERSION=1 \
                -DDOCBOOK_DIR=/usr/local/share/xsl/docbook
 CXXFLAGS+=     -Wno-inconsistent-missing-override -Wno-unused-but-set-variable -Wno-mismatched-tags -Wno-unused-const-variable -Wno-unused-private-field -Wno-unused-command-line-argument
 .include <bsd.port.mk>
===

Tested on amd64 15.0-CURRENT, armv7 14.0
Comment 17 tuc03516 2024-03-29 22:28:12 UTC
Created attachment 249570 [details]
update to 3.14.0.1 - remove constant update available notice

(In reply to Keith White from comment #16)
Thank you for catching that, I've updated the patch to add this in.
Comment 18 Keith White 2024-04-19 15:04:26 UTC
Created attachment 250087 [details]
Update to GrandOrgue v3.14.1

Update to v3.14.1
Tested on 15.0 amd64, 14.0 aarch64, 14.0 armv7

o Changed Makefile to use DISTVERSION to derive BUILD_VERSION and LIB_VERSION.
o Use %%LIB_VERSION%% in pkg-plist to substitute for the installed shareable library version.

This should mean that only DISTVERSION in the Makefile needs to change for new releases.