Created attachment 171770 [details] Proposed patch (since 412344 revision) Patch to update audio/pulseaudio port from 8.0 to 9.0 version. Look following link for changes: https://www.freedesktop.org/wiki/Software/PulseAudio/Notes/9.0/ - Add xcb to USE_XORG, required by bin/pacat - Add iconv to USES, required by bin/pacat - Replace --disable-systemd with correct --disable-systemd-* configure arguments - Move ALSA and JACK to AUDIO options group - Move BASH and ZSH to COMPLETIONS options group - Add DATABASE single option to be able to select supported database - Add SIMPLE (database support) to default options - Silence mkdir - Remove unnecessary "-f" option near RM variable, because it's already defined - Replace files/patch-src_daemon_default.pa.in with sed patch - Regenerate patches - Adapt pkg-plist
Possible to add localbase to USES, instead of CPPFLAGS and LDFLAGS defines, but I'm not sure about OPENSSL_CFLAGS="-I/usr/include", which configured to root location of so called base OpenSSL libraries. The security/openssl(-devel) port installs include and lib directories to ${LOCALBASE}, which may be found first, because of -isystem paths of Mk/Uses/localbase.mk. Therefore, I didn't propose USES+=localbase.
There is a note in port's Makefile, which recommends to bump PORTREVISION(s) of dependent ports, in case of PORTVERSION change(s). The list of dependent ports may be found with following command: % cd /usr/ports && find * -type f -iname Makefile\* | xargs -L1 egrep -He '(LIB|RUN)_DEPENDS.*audio/pulseaudio' | sed -e 's|/Makefile.*||' | sort -u | fmt Current output for LIB_DEPENDS and RUN_DEPENDS: accessibility/speech-dispatcher audio/alsa-plugins audio/aqualung audio/clementine-player audio/cmus audio/csound audio/csound6 audio/darkice audio/deadbeef audio/dream audio/fluidsynth audio/gnome-media audio/gogglesmm audio/harp audio/hydrogen audio/hydrogen-devel audio/libao audio/libcanberra audio/libmatemixer audio/lmms audio/mangler audio/mhwaveedit audio/musescore audio/musicpd audio/openal-soft audio/pavucontrol audio/pavumeter audio/siren audio/sox audio/wavbreaker audio/xfce4-pulseaudio-plugin audio/xmms2 audio/xmp comms/fldigi comms/morse comms/twpsk deskutils/cairo-dock-plugins deskutils/spice-gtk deskutils/xfce4-volumed-pulse devel/allegro-devel devel/efl devel/ptlib devel/sdl12 emulators/dolphin-emu emulators/higan emulators/snes9x-gtk emulators/vice emulators/virtualbox-ose games/retroarch games/stepmania-devel graphics/swfdec multimedia/aegisub multimedia/audacious-plugins multimedia/avidemux multimedia/ffmpeg multimedia/gmerlin multimedia/gmtk multimedia/gnome-mplayer multimedia/gstreamer-plugins multimedia/gstreamer1-plugins multimedia/kodi multimedia/libav multimedia/libxine multimedia/mplayer multimedia/mplayer2 multimedia/mpv multimedia/mythtv-frontend multimedia/phonon multimedia/plexhometheater multimedia/qmmp multimedia/qmmp-qt5 multimedia/qt4-mobility multimedia/qt5-multimedia multimedia/qt5-phonon4 multimedia/vlc net/freerdp net/gtk-vnc net/guacamole-server sysutils/mate-settings-daemon www/chromium x11-wm/e16 x11/i3status x11/kde4-runtime x11/workrave Current output for BUILD_DEPENDS, excluding audio/pavumeter port, which available in previous output: net/xrdp-devel Not sure about "cascade effect" to dependent ports, which may require PORTREVISION changes for their dependent ports, etc. Personally, I tested multimedia/mpv, www/firefox and www/seamonkey ports, which works without recompile. Also tested the build of multimedia/mpv port, which builds fine with audio/pulseaudio v9.0.
Created attachment 171771 [details] The poudriere testport log (FreeBSD 10.2 amd64, with default options)
Created attachment 171772 [details] The poudriere testport log (FreeBSD 10.2 amd64, with TDB=on)
Created attachment 171773 [details] The poudriere testport log (FreeBSD 10.2 amd64, with GDBM=on)
(In reply to comment #2) The list of dependent ports for which audio/pulseaudio required by default may be obtained, for example, from http://www.freshports.org/audio/pulseaudio/
(In reply to comment #6) or by different method, known to committer, of course.
Created attachment 171774 [details] The poudriere testport log (FreeBSD 10.2 amd64, with all (possible) options enabled)
Created attachment 171775 [details] The poudriere testport log (FreeBSD 10.2 amd64, with all (possible) options disabled)
Looks like, the method which I used to search *_DEPENDS in comment #2 is wrong, because it doesn't mention multi-line *_DEPENDS. It's possible to search with using pcregrep program (from devel/pcre port): % cd /usr/ports && find * -type f -iname Makefile\* | xargs -L1 pcregrep -Mle 'LIB_DEPENDS(.*\\.*\n)*.*:.*audio/pulseaudio' | sed -e 's|/Makefile.*||' | sort -u | fmt Current output for LIB_DEPENDS: accessibility/speech-dispatcher audio/alsa-plugins audio/aqualung audio/clementine-player audio/cmus audio/csound audio/csound6 audio/darkice audio/deadbeef audio/dream audio/fluidsynth audio/gnome-media audio/gogglesmm audio/gtick audio/harp audio/hydrogen audio/hydrogen-devel audio/kmix audio/libao audio/libcanberra audio/libmatemixer audio/lmms audio/mangler audio/mhwaveedit audio/musescore audio/musicpd audio/openal-soft audio/paman audio/paprefs audio/pavucontrol audio/pavumeter audio/siren audio/sox audio/wavbreaker audio/xfce4-pulseaudio-plugin audio/xmms2 audio/xmp comms/deforaos-phone comms/fldigi comms/gqrx comms/morse comms/qsstv comms/quisk comms/twpsk deskutils/cairo-dock-plugins deskutils/spice-gtk deskutils/xfce4-volumed-pulse devel/allegro-devel devel/efl devel/ptlib devel/sdl12 emulators/dolphin-emu emulators/higan emulators/snes9x-gtk emulators/vice emulators/virtualbox-ose games/retroarch games/stepmania-devel graphics/swfdec lang/squeak multimedia/aegisub multimedia/audacious-plugins multimedia/avidemux multimedia/ffmpeg multimedia/gmerlin multimedia/gmtk multimedia/gnome-mplayer multimedia/gstreamer-plugins multimedia/gstreamer1-plugins multimedia/kodi multimedia/libav multimedia/libxine multimedia/lives multimedia/mplayer multimedia/mplayer2 multimedia/mpv multimedia/mythtv-frontend multimedia/obs-studio multimedia/phonon multimedia/plexhometheater multimedia/qmmp multimedia/qmmp-qt5 multimedia/qt4-mobility multimedia/qt5-multimedia multimedia/qt5-phonon4 multimedia/vlc net-im/empathy net-im/ring-daemon net-p2p/gnunet net/freerdp net/gtk-vnc net/guacamole-server sysutils/cinnamon-control-center sysutils/cinnamon-settings-daemon sysutils/gnome-settings-daemon sysutils/mate-settings-daemon www/chromium x11-wm/e16 x11/cinnamon x11/gnome-shell x11/i3status x11/kde4-runtime x11/workrave Current output for RUN_DEPENDS: audio/pavumeter Current output for BUILD_DEPENDS: audio/pavumeter net/xrdp-devel Still, I'm not sure whether PORTREVISION changes for dependent ports are needed, e.g. because of libpulse.so.0.19.0 -> libpulse.so.0.20.0 changes, while programs/libraries links with libpulse.so.0 only, which not changed its name.
Created attachment 171803 [details] Proposed patch (since 412344 revision) The new audio/libsoxr port was added in ports r417476. The configure script of audio/pulseaudio port tries to check availability of libsoxr.so library and use it by default, if found. This requires to implement SOXR option to be able to configure this. Also possible to add SPEEX option. The duplicate of devel/orc may be removed from global LIB_DEPENDS, because of available SIMD option with SIMD_LIB_DEPENDS. - Remove devel/orc from LIB_DEPENDS, because of available SIMD_LIB_DEPENDS - Add SOXR and SPEEX options, enabled by default - Move audio/speexdsp from LIB_DEPENDS to SPEEX_LIB_DEPENDS - Add xcb to USE_XORG, required by bin/pacat - Add iconv to USES, required by bin/pacat - Replace --disable-systemd with correct --disable-systemd-* configure arguments - Move ALSA and JACK to AUDIO options group - Move BASH and ZSH to COMPLETIONS options group - Add DATABASE single option to be able to select supported database - Add SIMPLE (database support) to default options - Silence mkdir - Remove unnecessary "-f" option near RM variable, because it's already defined - Replace files/patch-src_daemon_default.pa.in with correct sed patch - Regenerate patches - Adapt pkg-plist
Created attachment 171805 [details] The poudriere testport log (FreeBSD 10.2 amd64, with default options)
(In reply to comment #10) > e.g. because of libpulse.so.0.19.0 -> libpulse.so.0.20.0 changes also there were 8.0 -> 9.0 changes for some other libraries.
Created attachment 171807 [details] Proposed patch (since 412344 revision) Moved SOXR and SPEEX to AUDIO options group. Clarified descriptions for SOXR and SPEEX options.
Created attachment 172447 [details] PORTREVISION bumps for LIB_DEPENDS I found other method about how to get list of ports, for which audio/pulseaudio port is LIB_DEPENDS, including as default option: http://www.freshports.org/search.php?stype=depends_lib&method=match&query=audio%2Fpulseaudio&orderby=category&orderbyupdown=asc&search=Search % wget -qO - "http://www.freshports.org/search.php?stype=depends_lib&method=match&query=audio%2Fpulseaudio&orderby=category&orderbyupdown=asc&search=Search" | grep -o "/usr/ports/[[:alnum:]_-]*/[[:alnum:]_-]*" | sed -e 's|/usr/ports/||' | fmt audio/gnome-media audio/gstreamer-plugins-pulse audio/gstreamer1-plugins-pulse audio/gtick audio/paman audio/paprefs audio/pavucontrol audio/pavumeter audio/xfce4-pulseaudio-plugin comms/deforaos-phone comms/gqrx comms/qsstv comms/quisk comms/twpsk deskutils/xfce4-volumed-pulse games/retroarch lang/squeak multimedia/aegisub multimedia/gmerlin multimedia/lives multimedia/obs-studio multimedia/qmmp multimedia/qmmp-qt5 multimedia/qt4-mobility net/gtk-vnc net-im/empathy net-im/ring-daemon net-p2p/gnunet sysutils/cinnamon-control-center sysutils/cinnamon-settings-daemon sysutils/gnome-settings-daemon x11/cinnamon x11/gnome-shell Possible patch for PORTREVISION bumps attached, based on current state of ports. Need to correct it, if mentioned ports changed their PORTREVISION. The method in comment #10 returned full list of ports, including all options (default and non-default).
Created attachment 172743 [details] Proposed patch (since 412344 revision) Generated TIMESTAMP for distinfo, just in case.
Created attachment 172765 [details] Proposed patch (since 412344 revision) Added localbase and ssl to USES, with following overall changes: - Add xcb to USE_XORG, required by bin/pacat - Add iconv to USES, required by bin/pacat - Add localbase to USES and remove CPPFLAGS and LDFLAGS - Add ssl to USES and correct OPENSSL_CFLAGS and OPENSSL_LIBS - Replace --disable-systemd with correct --disable-systemd-* configure arguments - Move ALSA and JACK to AUDIO options group - Move BASH and ZSH to COMPLETIONS options group - Add DATABASE single option to be able to select supported database - Add SIMPLE (database support) to default options - Silence mkdir - Remove unnecessary "-f" option near RM variable, because it's already defined - Replace files/patch-src_daemon_default.pa.in with sed patch - Regenerate patches - Adapt pkg-plist
Created attachment 173016 [details] Proposed patch (since 419133 revision) Updated patch after ports r419133 changes.
Created attachment 173025 [details] PORTREVISION bumps for LIB_DEPENDS Updated patch for PORTREVISION bumps after ports r418497 changes. But according to ABI tracker, the 8.0 and 9.0 versions are backward compatible: http://abi-laboratory.pro/tracker/objects_report/pulseaudio/8.0/8.99.1/report.html http://abi-laboratory.pro/tracker/objects_report/pulseaudio/8.99.1/8.99.2/report.html http://abi-laboratory.pro/tracker/objects_report/pulseaudio/8.99.2/9.0/report.html
There were some updates on http://www.freshports.org site, which allows to do queries with plain text results, e.g. for dependent ports with LIB_DEPENDS of specified port: http://www.freshports.org/search.php?stype=depends_lib&method=match&query=audio%2Fpulseaudio&orderby=category&orderbyupdown=asc&search=Search&format=plaintext&minimal=1 This simplifies command in comment #15: % wget -qO - "http://www.freshports.org/search.php?stype=depends_lib&method=match&query=audio%2Fpulseaudio&orderby=category&orderbyupdown=asc&search=Search&format=plaintext&minimal=1" | fmt Based on this, I created following shell script (named freshports_depends_lib, just in case): -8<-- #!/bin/sh query=$1 # Also possible to use http://dev.freshports.org address, but results may differ site=http://www.freshports.org # Search type: depends_build, depends_lib, depends_run, depends_all, etc. stype=depends_lib # Search method: exact (equal to), prefix (starting with), match (containing), suffix (ending with), soundex (sounds like) method=match url="${site}/search.php?stype=${stype}&method=${method}&query=${query}&orderby=category&orderbyupdown=asc&search=Search&format=plaintext&minimal=1" if [ -z "${query}" ]; then echo "Required to specify argument with query, e.g. audio/pulseaudio" exit 1 fi fetch -qo - ${url} -->8- Then the previous query may be produced with following command (the current result of which is identical to the result in a comment #15): % freshports_depends_lib audio/pulseaudio | fmt audio/gnome-media audio/gstreamer-plugins-pulse audio/gstreamer1-plugins-pulse audio/gtick audio/paman audio/paprefs audio/pavucontrol audio/pavumeter audio/xfce4-pulseaudio-plugin comms/deforaos-phone comms/gqrx comms/qsstv comms/quisk comms/twpsk deskutils/xfce4-volumed-pulse games/retroarch lang/squeak multimedia/aegisub multimedia/gmerlin multimedia/lives multimedia/obs-studio multimedia/qmmp multimedia/qmmp-qt5 multimedia/qt4-mobility net/gtk-vnc net-im/empathy net-im/ring-daemon net-p2p/gnunet sysutils/cinnamon-control-center sysutils/cinnamon-settings-daemon sysutils/gnome-settings-daemon x11/cinnamon x11/gnome-shell I posted the previous shell script for informative purposes only, because the format of query and options may be changed, which may require to adapt the script. Possible to use http://www.freshports.org/search.php page directly.
There is no feedback from gnome@ team. Maintainer timeout (> 1 month), similar to many other PRs.
@Lightside, I see two patches here (for separate ports) and it is unclear from the history what is required to progress the issue. I also note that both attachments were created 2016-07-26, which means the maintainer-timeout period has not passed (for those proposed changes). Can you please combine the attachments into a single unified diff please
Created attachment 173073 [details] Single patch (Update to 9.0 and PORTREVISION bumps for LIB_DEPENDS) Hello Kubilay Kocak. (In reply to comment #22) > I see two patches here (for separate ports) and it is unclear from the history > what is required to progress the issue. The second patch (current attachment #173025 [details]) was created because of following statement in audio/pulseaudio/Makefile file: https://svnweb.freebsd.org/ports/head/audio/pulseaudio/Makefile?revision=412344&view=markup#l4 -8<-- # !!!NOTE!!! Any PORTVERSION update to this port must be accompanied by # PORTREVISION bumps of depending ports. -->8- The links to ABI tracker for PulseAudio in comment #19 shows, that 8.0 and 9.0 versions are backward compatible, which means, that there should be no breakage for dependent ports (and no requirement for exp-run, I guess). (In reply to comment #22) > I also note that both attachments were created 2016-07-26, which means the > maintainer-timeout period has not passed (for those proposed changes). The new attachments were created because of updates by other committers for related ports. The previous attachments were iterative updates (which didn't change the meaning of the first attachment), because of no feedback from maintainer, but raised issues (e.g. about USES+=localbase ssl). (In reply to comment #22) > Can you please combine the attachments into a single unified diff please This is not practical, in my opinion, because the proposed patch for audio/pulseaudio and dependent ports related to different revisions. I submitted second patch for informative purposes (the committer may know what ports needs PORTREVISION bumps, I think), because the possible changes for dependent ports may invalidate some parts of it. Either way, this is just two patch commands, instead of one. I can post single patch, of course. The statement in comment #21 about no maintainer-feedback is still true, as well as for maintainer timeout, based on many unresolved PRs (with gnome@ assignee) currently and closed recently with similar maintainer timeout statement(s). There is no point to do further work on this PR because of this (or possible changes by other committers outside of this PR, which may do (and did) similar things, proposed in this PR). Thanks for your attention.
Ok, let's wait possible feedback or interested committer. I can do possible changes on request (e.g. because of possible changes in the related ports), to not break a (hypothetical) timer.
Turns out, the gnome@ address is a redirection address to freebsd-gnome mailing list: https://lists.freebsd.org/mailman/listinfo/freebsd-gnome Like the ports@ address is a redirection address to freebsd-ports mailing list: https://lists.freebsd.org/mailman/listinfo/freebsd-ports I found comment #23 in freebsd-gnome mailing list archives, for example: https://lists.freebsd.org/pipermail/freebsd-gnome/2016-July/034604.html So, actually, there is no (real) maintainer assigned. And like a "FreeBSD Ports Bugs (Mailing List)" for ports@, it might be "FreeBSD Gnome Bugs (Mailing list)" (in plain text) for gnome@, I guess.
(In reply to comment #25) > Like the ports@ address is a redirection address to freebsd-ports mailing > list: > https://lists.freebsd.org/mailman/listinfo/freebsd-ports Actually, not. The ports@ address is a redirection address to freebsd-bugs@ mailing list: https://lists.freebsd.org/mailman/listinfo/freebsd-bugs The freebsd-ports@ mailing list is for other purposes.
(In reply to comment #26) > Actually, not. The ports@ address is a redirection address to freebsd-bugs@ > mailing list: > https://lists.freebsd.org/mailman/listinfo/freebsd-bugs Again, not. Looks like, the ports@ address is a redirection address to freebsd-ports-bugs@ mailing list: https://lists.freebsd.org/mailman/listinfo/freebsd-ports-bugs
CC freebsd-ports-bugs@ (direct address to FreeBSD Ports Bugs mailing list), where this PR might have more attention.
The attachment #173025 [details] and attachment #173073 [details] were obsoleted, to not "confuse" the possible committer. They can be used for reference, if PORTREVISION bumps for dependent ports is really needed. It wasn't for 6.0 and 8.0 versions, for example: ports r384072 and ports r408881.
The maintainer(s) aware about this PR. The freebsd-ports-bugs@ might be removed from CC.
Created attachment 173914 [details] Proposed patch (since 419133 revision) Corrected description for AUDIO and DATABASE options.
Created attachment 175353 [details] Proposed patch (since 419133 revision) (In reply to comment #17) > - Add localbase to USES and remove CPPFLAGS and LDFLAGS The ports r423014 changed defaults in Mk/Uses/localbase.mk file from LDFLAGS+=-L${LOCALBASE}/lib to LIBS+=-L${LOCALBASE}/lib. This affected proposed patch in this PR. I proposed to return defaults in bug 212987 comment 18. I reverted proposal for USES+=localbase (even if USES+=localbase:ldflags is possible) for new attachment, because of this.
Created attachment 176132 [details] Proposed patch (since 424411 revision) Updated patch after ports r424411 changes. This obsoleted following line: (In reply to comment #17) > - Remove unnecessary "-f" option near RM variable, because it's already defined
A commit references this bug: Author: jbeich Date: Tue Oct 25 12:53:24 UTC 2016 New revision: 424621 URL: https://svnweb.freebsd.org/changeset/ports/424621 Log: audio/pulseaudio: update to 9.0 - Add xcb to USE_XORG, required by bin/pacat - Add iconv to USES, required by bin/pacat - Add ssl to USES and correct OPENSSL_CFLAGS and OPENSSL_LIBS - Replace --disable-systemd with correct --disable-systemd-* configure arguments - Move ALSA and JACK to AUDIO options group - Move BASH and ZSH to COMPLETIONS options group - Add DATABASE single option to be able to select supported database - Add SIMPLE (database support) to default options - Silence mkdir - Replace files/patch-src_daemon_default.pa.in with sed patch - Adapt pkg-plist Changes: https://www.freedesktop.org/wiki/Software/PulseAudio/Notes/9.0/ ABI: https://abi-laboratory.pro/tracker/timeline/pulseaudio/ PR: 210548 Submitted by: lightside@gmx.com Approved by: maintainer timeout (4 months) Changes: head/audio/pulseaudio/Makefile head/audio/pulseaudio/distinfo head/audio/pulseaudio/files/patch-src_Makefile.in head/audio/pulseaudio/files/patch-src_daemon_default.pa.in head/audio/pulseaudio/files/patch-src_modules_module-detect.c head/audio/pulseaudio/files/patch-src_pulsecore_shm.c head/audio/pulseaudio/pkg-plist
Thanks. Landed without blindly trusting some crufty comment in Makefile about when to bump PORTREVISION. For one, gnome-volume-control from audio/gnome-media works fine without rebuild.