Summary: | audio/pulseaudio: update the port to 14.2 | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Product: | Ports & Packages | Reporter: | Matthias Apitz <guru> | ||||||||||
Component: | Individual Port(s) | Assignee: | freebsd-desktop (Team) <desktop> | ||||||||||
Status: | Closed FIXED | ||||||||||||
Severity: | Affects Some People | CC: | david, diizzy, fluffy, guru, kbowling, meta, pi, rhurlin, tcberner | ||||||||||
Priority: | --- | Flags: | tcberner:
maintainer-feedback+
|
||||||||||
Version: | Latest | ||||||||||||
Hardware: | Any | ||||||||||||
OS: | Any | ||||||||||||
URL: | https://github.com/freebsd/freebsd-ports-kde/tree/pulseaudio-14 | ||||||||||||
Attachments: |
|
Description
Matthias Apitz
2021-01-23 22:47:03 UTC
Created attachment 221857 [details]
output of: svn diff audio/pulseaudio
PORTVERSION --> DISTVERSION See Porters Handbook, "Table 5.2. Package Naming Examples" PORTREVISION should be removed MASTER_SITES=http://freedesktop.org/software/pulseaudio/releases/ shoud be https://freedesktop.org/software/pulseaudio/releases/ (redirects) CPPFLAGS + LDFLAGS should be replaced by USES= localbase:ldflags Can you have a look at converting this port to using meson instead? Does it pass poudriere? The original (svn head) ports Makefile has set --disable-udev which leads to not compiling the module module-udev-detect.so. After deleting this line in the Makefile, the module compiles fine but says on pacmd load-module module-udev-detect in /var/log/messages: Jan 24 00:52:22 c720-r368166 pulseaudio[85187]: [(null)] ltdl-bind-now.c: No se pudo abrir el módulo /usr/local/lib/pulse-14.2/modules/module-udev-detect.so: /usr/local/lib/pulse-14.2/modules/module-udev-detect.so: Undefined symbol """ "inotify_init1" seems to be a Linux sys or function call not implemented in FreeBSD. (In reply to daniel.engberg.lists from comment #2) Thanks a lot for the patch -- but converting it to meson too would be great :) Created attachment 221870 [details]
new patch, output off: svn diff audio/pulseaudio
This patch:
1) cleans the raised issues in the Makefile
2) was tested in poudriere:
...
===> Building package for pulseaudio-14.2
file sizes/checksums [224]: ... done
packing files [224]: ... done
packing directories [0]: . done
===========================================================================
=>> Cleaning up wrkdir
===> Cleaning for pulseaudio-14.2
build of audio/pulseaudio | pulseaudio-14.2 ended at Sun Jan 24 11:33:47 CET 2021
build time: 00:01:08
Re/ meson: I never used this, so I let this to MAINTAINER of the port.
Comment on attachment 221870 [details] new patch, output off: svn diff audio/pulseaudio > -WEBRTC_AEC_LIB_DEPENDS= libwebrtc_audio_processing.so:audio/webrtc-audio-processing0 > +WEBRTC_AEC_LIB_DEPENDS= libwebrtc_audio_processing.so:audio/webrtc-audio-processing Why? Upstream hasn't switched yet, see https://gitlab.freedesktop.org/pulseaudio/pulseaudio/-/merge_requests/395 $ poudriere testport -j 122amd64 audio/pulseaudio [...] ===> pulseaudio-14.2 depends on shared library: libwebrtc_audio_processing.so - not found ===> Installing existing package /packages/All/webrtc-audio-processing-1.0_1.txz Installing webrtc-audio-processing-1.0_1... `-- Installing abseil-20200923.3... `-- Extracting abseil-20200923.3: .......... done Extracting webrtc-audio-processing-1.0_1: .......... done ===> pulseaudio-14.2 depends on shared library: libwebrtc_audio_processing.so - not found *** Error code 1 $ make check-plist [...] ====> Checking for pkg-plist issues (check-plist) ===> Parsing plist ===> Checking for items in STAGEDIR missing from pkg-plist Error: Orphaned: share/locale/bg/LC_MESSAGES/pulseaudio.mo Error: Orphaned: share/locale/kk/LC_MESSAGES/pulseaudio.mo ===> Checking for items in pkg-plist which are not in STAGEDIR ===> Error: Plist issues found. *** Error code 1 (In reply to Jan Beich from comment #7) the change re/ WEBRTC_AEC_LIB_DEPENDS was not introduced by me; before starting on the work of the update, I fetched the most recent version out of SVN: root@c720-r368166:/usr/ports/audio/pulseaudio # svn info Path: . Working Copy Root Path: /usr/ports URL: svn://svn.freebsd.org/ports/head/audio/pulseaudio Relative URL: ^/head/audio/pulseaudio Repository Root: svn://svn.freebsd.org/ports Repository UUID: 35697150-7ecd-e111-bb59-0022644237b5 Revision: 562403 Node Kind: directory Schedule: normal Last Changed Author: jbeich Last Changed Rev: 557409 Last Changed Date: 2020-12-10 03:42:18 +0100 (Thu, 10 Dec 2020) root@c720-r368166:/usr/ports/audio/pulseaudio # grep WEBRTC_AEC_LIB_DEPENDS Makefile WEBRTC_AEC_LIB_DEPENDS= libwebrtc_audio_processing.so:audio/webrtc-audio-processing Created attachment 222036 [details]
new patch, fixed pkg-plist issue, output of: svn diff audio/pulseaudio
A commit in branch main references this bug: URL: https://cgit.FreeBSD.org/ports/commit/?id=6dd01d1520ee30194d0493c1dea31bc71a12151d commit 6dd01d1520ee30194d0493c1dea31bc71a12151d Author: Kevin Bowling <kbowling@FreeBSD.org> AuthorDate: 2021-04-12 22:50:11 +0000 Commit: Kevin Bowling <kbowling@FreeBSD.org> CommitDate: 2021-04-12 23:09:54 +0000 audio/pulseaudio: update the port to 14.2 PR: 252957 Reported by: Matthias Apitz <guru@unixarea.de> Reviewed by: daniel.engberg.lists@pyret.net Approved by: tcberner (previous version) Obtained from: https://github.com/freebsd/freebsd-ports-kde/tree/pulseaudio-14 audio/pulseaudio/Makefile | 9 +++------ audio/pulseaudio/distinfo | 4 ++-- audio/pulseaudio/files/patch-src_pulsecore_atomic.h | 18 +++++++++--------- audio/pulseaudio/pkg-plist | 6 ++++-- 4 files changed, 18 insertions(+), 19 deletions(-) This is already a lot of change so I committed this with a minor correction to preserve the webrtc-audio-processing support to move things along and make sure the new version works well for everyone. We can progress on cleanups/build changes with more commits :) You should really also take care of other audio/pulseaudio* ports when updating audio/pulseaudio. tobik always does so. https://cgit.freebsd.org/ports/log/?id=7caef03e71c35489b8bb4c11d6ca9910eeb18f05&qt=grep&q=pulseaudio (In reply to Koichiro Iwao from comment #12) Can you explain which ports must be rev'd? The history looks sporadic there for pulseaudio-module-xrdp and pulseaudio-module-sndio but what about others? Internally upstream changed the soname so they do want to communicate the ABI bump. I thought LIB_DEPENDS handles this in general for poudriere so I am curious what hazards I should look out for and what needs to be bumped. (In reply to Kevin Bowling from comment #13) Formerly, there're so many PulseAudio module ports but I realized there're few ports -xrdp and -sndio now. So these two ports must be bumped at least. These ports install files into `pkg-config --variable=modlibexecdir libpulse` directory. It contains PulseAudio version like "/usr/local/lib/pulse-14.2/modules". PulseAudio looks up modules under "modulelibexecdir" directory so modules are installed under the old PulseAudio directory cannot be recognized by PulseAudio. I think even the modules and new PulseAudio are ABI compatible, they must be rebuilt in order to install into the correct directory. If other ports install any files under version-specific directories, rebuild them too. Created attachment 224074 [details]
patch with corrected pkg-plist
Building audio/pulseaudio outside of Poudriere and/or with non-default options set like ALSA, there are several problems.
The attached patch contains a renewed pkg-plist, which builds fine for me.
HTH,
Rainer
Reopen, port needs more love and package testing Thank you, Rainer: that patch allowed me to update from pulseaudio-13.0_2 to pulseaudio-14.2, with a ports tree at main-n541366-de9bd29d2b9b. Prior to the patch, building the port was OK, but attempting to install it yielded: ===> Installing for pulseaudio-14.2 ===> Registering installation for pulseaudio-14.2 as automatic pkg-static: Unable to access file /common/ports/audio/pulseaudio/work/stage/usr/local/share/pulseaudio/alsa-mixer/paths/steelseries-arctis-5-output-chat.conf:No such file or directory pkg-static: Unable to access file /common/ports/audio/pulseaudio/work/stage/usr/local/share/pulseaudio/alsa-mixer/paths/steelseries-arctis-5-output-game.conf:No such file or directory pkg-static: Unable to access file /common/ports/audio/pulseaudio/work/stage/usr/local/share/pulseaudio/alsa-mixer/paths/steelseries-arctis-7-input.conf:No such file or directory pkg-static: Unable to access file /common/ports/audio/pulseaudio/work/stage/usr/local/share/pulseaudio/alsa-mixer/paths/steelseries-arctis-7-output-mono.conf:No such file or directory .... pkg-static: Unable to access file /common/ports/audio/pulseaudio/work/stage/usr/ local/share/pulseaudio/alsa-mixer/profile-sets/steelseries-arctis-5-usb-audio.co nf:No such file or directory pkg-static: Unable to access file /common/ports/audio/pulseaudio/work/stage/usr/ local/share/pulseaudio/alsa-mixer/profile-sets/steelseries-arctis-7-usb-audio.co nf:No such file or directory *** Error code 1 A commit in branch main references this bug: URL: https://cgit.FreeBSD.org/ports/commit/?id=9b6915182bad2de2492d69e2578542740d6f4357 commit 9b6915182bad2de2492d69e2578542740d6f4357 Author: Kevin Bowling <kbowling@FreeBSD.org> AuthorDate: 2021-04-13 15:44:59 +0000 Commit: Kevin Bowling <kbowling@FreeBSD.org> CommitDate: 2021-04-13 15:55:20 +0000 audio/pulseaudio: fix build with ALSA option PR: 252957 Reported by: rhurlin, fluffy Tested by: david@catwhisker.org Fixes: 6dd01d1520ee audio/pulseaudio: update the port to 14.2 audio/pulseaudio/pkg-plist | 145 +++++++++++++++++++++++---------------------- 1 file changed, 73 insertions(+), 72 deletions(-) A commit in branch main references this bug: URL: https://cgit.FreeBSD.org/ports/commit/?id=a6dc40c2effdd050b01ff937ac133015a55a385c commit a6dc40c2effdd050b01ff937ac133015a55a385c Author: Kevin Bowling <kbowling@FreeBSD.org> AuthorDate: 2021-04-13 15:58:08 +0000 Commit: Kevin Bowling <kbowling@FreeBSD.org> CommitDate: 2021-04-13 16:00:17 +0000 audio/pulseaudio-module-sndio: bump portrevision Force a rebuild for pulseaudio 14.2 PR: 252957 Reported by: meta audio/pulseaudio-module-sndio/Makefile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) Changes applied as above, thanks for the additional testing and fixes! |