Re: Review requested for piano tuning software
Roger Olofsson <[email protected]> Mon, 29 Jun 2026 11:44:41 +0200
| Newsgroups | gmane.os.freebsd.devel.ports |
|---|---|
| Message-ID | <[email protected]> |
Den 2026-06-28 kl. 21:04, skrev Piotr Smyrak: > On Sun, 28 Jun 2026 20:55:01 +0200 > Piotr Smyrak <[email protected]> wrote: > >> On Sat, 27 Jun 2026 10:00:29 +0200 >> Roger Olofsson <[email protected]> wrote: >> >>> Den 2026-06-26 kl. 21:02, skrev Piotr Smyrak: >>>> On Fri, 26 Jun 2026 20:35:43 +0200 >>>> Roger Olofsson <[email protected]> wrote: >>>> >>>>> A few months ago I made an attempt to create a port for a >>>>> software that can help with tuning a piano. >>>>> >>>>> I would be glad for feedback and review. >>>>> >>>>> Bugzilla link >>>>> <https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=293877> >>>> You are using a hardcoded /usr/local path in the .desktop file. >>>> That shall rather be $PREFIX, which might change on sysop >>>> discretion. >>>> >>>> Same remark regarging this patch: >>>> files/patch-modules_core_calculation_calculationmanager.cpp >>>> >>> Hi Piotr, >>> >>> Thanks for your feedback, I appreciate it! >>> >>> I am guessing that sysops wants to do "make PREFIX=/path"? >> Yes, exactly. Port is a skeleton to build a package, one may instruct >> all packages to be built with PREFIX different from the default >> LOCALBASE. >> >>> 1. For the >>> files/patch-modules_core_calculation_caclulationmanager.cpp the >>> hardcoding affects the ${STAGEDIR}, ie the files being built lands >>> in ${STAGEDIR} and then the do-install: part of the Makefile takes >>> ${PREFIX} into consideration. This should be fine? >> STAGEDIR is only a temporary location, note, you never run software >> from within there. >> >>> 2. I have removed the patch file for the .desktop file and done a >>> ${REINPLACE_CMD} to change the contents of the .desktop file while >>> in ${STAGEDIR} so this also now takes ${PREFIX} into consideration. >>> >>> The test mentioned in the porters handbook that says to check make >>> clean; make package PREFIX=/var/tmp/'make -V PORTNAME' fails and >>> says it can find /lib/qt6/bin/qmake in the /var/tmp path. I suspect >>> the qmake comes from USES= qmake. I don't know how to workaround >>> this right now. >> This is expected, since to do a real test you would need to set PREFIX >> to all dependencies, too. >> > As for how adapt patch-modules_core_calculation_calculationmanager.cpp > you might want to look into this patch [1] as an example. > > 1. > /usr/ports/www/qt6-webengine/files/patch-src_3rdparty_chromium_third__party_pdfium_core_fxge_linux_fx__linux__impl.cpp > Hi Piotr and thank you for the link! I have modified the patch file for calculationmanager.cpp and replaced /usr/local with %%PREFIX%% and added a post-patch part in the Makefile that replaces the %%PREFIX%% by the Makefile ${PREFIX}. The patch has been updated on Bugzilla. Have a nice day! Roger