--- pulseaudio.orig/Makefile 2016-04-01 13:29:15 UTC +++ pulseaudio/Makefile @@ -5,7 +5,7 @@ # PORTREVISION bumps of depending ports. PORTNAME= pulseaudio -PORTVERSION= 8.0 +PORTVERSION= 9.0 CATEGORIES= audio MASTER_SITES= http://freedesktop.org/software/pulseaudio/releases/ @@ -16,28 +16,24 @@ LICENSE_FILE= ${WRKSRC}/LGPL LIB_DEPENDS= libsndfile.so:audio/libsndfile \ - libspeexdsp.so:audio/speexdsp \ libfftw3.so:math/fftw3 \ libfftw3f.so:math/fftw3-float \ - liborc-0.4.so:devel/orc \ libjson-c.so:devel/json-c \ libdbus-1.so:devel/dbus \ libltdl.so:devel/libltdl \ libck-connector.so:sysutils/consolekit USE_GNOME= glib20 intltool -USE_XORG= x11 sm xtst ice +USE_XORG= ice sm x11 xcb xtst USE_LDCONFIG= yes -USES= cpe compiler:c11 execinfo gettext gmake gnome libtool \ - pathfix pkgconfig shebangfix tar:xz +USES= compiler:c11 cpe execinfo gettext gmake gnome iconv libtool \ + localbase pathfix pkgconfig shebangfix ssl tar:xz GNU_CONFIGURE= yes CONFIGURE_ENV= PTHREAD_LIBS="-lpthread" \ - OPENSSL_CFLAGS="-I/usr/include" \ - OPENSSL_LIBS="-lcrypto -lssl" \ + OPENSSL_CFLAGS="-I${OPENSSLINC}" \ + OPENSSL_LIBS="-L${OPENSSLLIB} -lcrypto -lssl" \ LIBS="-lm -lintl" \ ac_cv_header_linux_input_h="" -CPPFLAGS+= -I${LOCALBASE}/include -LDFLAGS+= -L${LOCALBASE}/lib INSTALL_TARGET= install-strip SHEBANG_FILES= shell-completion/bash/pulseaudio @@ -45,53 +41,76 @@ SUB_FILES= pkg-message CONFIGURE_ARGS= --localstatedir=/var \ - --with-database=simple \ --without-caps \ --disable-udev \ --disable-gtk3 \ - --disable-systemd \ + --disable-systemd-daemon \ + --disable-systemd-journal \ + --disable-systemd-login \ --disable-neon-opt \ --disable-xen \ --disable-lirc # untested -#FIXME --with-database=auto|tdb|gdbm|simple - USERS= pulse GROUPS= pulse pulse-access pulse-rt OPTIONS_SUB= yes -OPTIONS_DEFINE= JACK AVAHI GCONF ALSA SIMD BASH ZSH -OPTIONS_DEFAULT=AVAHI SIMD -JACK_CONFIGURE_ENABLE= jack -JACK_LIB_DEPENDS= libjack.so:audio/jack +OPTIONS_DEFINE= AVAHI GCONF SIMD +OPTIONS_DEFAULT=AVAHI SIMD SIMPLE SOXR SPEEX AVAHI_CONFIGURE_ENABLE= avahi AVAHI_LIB_DEPENDS= libavahi-client.so:net/avahi-app GCONF_CONFIGURE_ENABLE= gconf GCONF_USE= GNOME=gconf2 -ALSA_CONFIGURE_ENABLE= alsa -ALSA_LIB_DEPENDS= libasound.so:audio/alsa-lib SIMD_CONFIGURE_ENABLE= orc SIMD_LIB_DEPENDS= liborc-0.4.so:devel/orc + +OPTIONS_GROUP= AUDIO COMPLETIONS +OPTIONS_GROUP_AUDIO= ALSA JACK SOXR SPEEX +OPTIONS_GROUP_COMPLETIONS= BASH ZSH +AUDIO_DESC= Audio support +COMPLETIONS_DESC= Programmable completions +ALSA_CONFIGURE_ENABLE= alsa +ALSA_LIB_DEPENDS= libasound.so:audio/alsa-lib +JACK_CONFIGURE_ENABLE= jack +JACK_LIB_DEPENDS= libjack.so:audio/jack +SOXR_DESC= SoX resampler support +SOXR_CONFIGURE_WITH= soxr +SOXR_LIB_DEPENDS= libsoxr.so:audio/libsoxr +SPEEX_DESC= Speex resampler and AEC support +SPEEX_CONFIGURE_WITH= speex +SPEEX_LIB_DEPENDS= libspeexdsp.so:audio/speexdsp ZSH_CONFIGURE_OFF= --without-zsh-completion-dir +OPTIONS_SINGLE= DATABASE +OPTIONS_SINGLE_DATABASE= TDB GDBM SIMPLE +DATABASE_DESC= Database support +GDBM_DESC= GNU database manager support +GDBM_CONFIGURE_ON= --with-database=gdbm +GDBM_LIB_DEPENDS= libgdbm.so:databases/gdbm +SIMPLE_DESC= Simple database support +SIMPLE_CONFIGURE_ON= --with-database=simple +TDB_DESC= Trivial database support +TDB_CONFIGURE_ON= --with-database=tdb +TDB_LIB_DEPENDS= libtdb.so:databases/tdb + PULSE_VERSION= ${PORTVERSION:C/^([0-9]+\.[0-9]+).*/\1/} PLIST_SUB= PULSE_VERSION=${PULSE_VERSION} post-patch: - @${REINPLACE_CMD} -e 's|%%LOCALBASE%%|${LOCALBASE}|g' \ + @${REINPLACE_CMD} -e 's|/usr/share|${LOCALBASE}/share|g' \ ${WRKSRC}/src/daemon/default.pa.in @${REINPLACE_CMD} -e 's|-Wmissing-include-dirs||g' \ -e 's|/lib/dbus/machine-id|/db/dbus/machine-id|g' \ ${WRKSRC}/configure post-install: - ${MKDIR} ${STAGEDIR}${PREFIX}/etc/pulse + @${MKDIR} ${STAGEDIR}${PREFIX}/etc/pulse .for ii in default.pa daemon.conf client.conf system.pa ${INSTALL_DATA} ${WRKSRC}/src/${ii} \ ${STAGEDIR}${PREFIX}/etc/pulse/${ii}.sample .endfor post-install-BASH-off: - @${RM} -rf ${STAGEDIR}${PREFIX}/share/bash-completion + @${RM} -r ${STAGEDIR}${PREFIX}/share/bash-completion .include --- pulseaudio.orig/distinfo 2016-02-14 18:57:53 UTC +++ pulseaudio/distinfo @@ -1,2 +1,3 @@ -SHA256 (pulseaudio-8.0.tar.xz) = 690eefe28633466cfd1ab9d85ebfa9376f6b622deec6bfee5091ac9737cd1989 -SIZE (pulseaudio-8.0.tar.xz) = 1517656 +TIMESTAMP = 1466578411 +SHA256 (pulseaudio-9.0.tar.xz) = c3d3d66b827f18fbe903fe3df647013f09fc1e2191c035be1ee2d82a9e404686 +SIZE (pulseaudio-9.0.tar.xz) = 1537568 --- pulseaudio.orig/files/patch-src_Makefile.in 2016-07-26 16:51:15 UTC +++ pulseaudio/files/patch-src_Makefile.in @@ -1,6 +1,6 @@ ---- src/Makefile.in.orig 2016-01-22 07:34:26 UTC +--- src/Makefile.in.orig 2016-06-24 23:00:54 UTC +++ src/Makefile.in -@@ -11042,7 +11042,7 @@ info-am: +@@ -11092,7 +11092,7 @@ info-am: install-data-am: install-commonlibLTLIBRARIES install-dbuspolicyDATA \ install-dist_alsapathsDATA install-dist_alsaprofilesetsDATA \ --- pulseaudio.orig/files/patch-src_daemon_default.pa.in 2016-07-26 16:51:15 UTC +++ pulseaudio/files/patch-src_daemon_default.pa.in @@ -1,26 +0,0 @@ ---- src/daemon/default.pa.in.orig 2016-01-18 10:14:20 UTC -+++ src/daemon/default.pa.in -@@ -26,10 +26,10 @@ ifelse(@OS_IS_WIN32@, 1, [dnl - load-sample x11-bell %WINDIR%\Media\ding.wav - load-sample-dir-lazy %WINDIR%\Media\*.wav - ], [dnl --#load-sample-lazy x11-bell /usr/share/sounds/freedesktop/stereo/bell.oga --#load-sample-lazy pulse-hotplug /usr/share/sounds/freedesktop/stereo/device-added.oga --#load-sample-lazy pulse-coldplug /usr/share/sounds/freedesktop/stereo/device-added.oga --#load-sample-lazy pulse-access /usr/share/sounds/freedesktop/stereo/message.oga -+#load-sample-lazy x11-bell %%LOCALBASE%%/share/sounds/freedesktop/stereo/bell.oga -+#load-sample-lazy pulse-hotplug %%LOCALBASE%%/share/sounds/freedesktop/stereo/device-added.oga -+#load-sample-lazy pulse-coldplug %%LOCALBASE%%/share/sounds/freedesktop/stereo/device-added.oga -+#load-sample-lazy pulse-access %%LOCALBASE%%/share/sounds/freedesktop/stereo/message.oga - ])dnl - - .fail -@@ -40,7 +40,7 @@ load-module module-stream-restore - load-module module-card-restore - - ### Automatically augment property information from .desktop files --### stored in /usr/share/application -+### stored in %%LOCALBASE%%/share/application - load-module module-augment-properties - - ### Should be after module-*-restore but before module-*-detect --- pulseaudio.orig/files/patch-src_modules_module-detect.c 2016-07-26 16:51:15 UTC +++ pulseaudio/files/patch-src_modules_module-detect.c @@ -1,22 +1,51 @@ ---- src/modules/module-detect.c.orig 2015-09-10 04:51:41 UTC +--- src/modules/module-detect.c.orig 2016-05-10 12:28:04 UTC +++ src/modules/module-detect.c -@@ -46,7 +46,9 @@ PA_MODULE_DESCRIPTION("Detect available - PA_MODULE_VERSION(PACKAGE_VERSION); - PA_MODULE_LOAD_ONCE(true); - PA_MODULE_USAGE("just-one="); -+#ifdef __linux__ - PA_MODULE_DEPRECATED("Please use module-udev-detect instead of module-detect!"); -+#endif - - static const char* const valid_modargs[] = { - "just-one", -@@ -157,8 +159,7 @@ static int detect_oss(pa_core *c, int ju +@@ -160,11 +160,45 @@ static int detect_oss(pa_core *c, int ju continue; } else if (sscanf(line, "pcm%u: ", &device) == 1) { - /* FreeBSD support, the devices are named /dev/dsp0.0, dsp0.1 and so on */ - pa_snprintf(args, sizeof(args), "device=/dev/dsp%u.0", device); + pa_snprintf(args, sizeof(args), "device=/dev/dsp%u", device); ++ pa_module *m = pa_module_load(c, "module-oss", args); - if (!pa_module_load(c, "module-oss", args)) +- if (!pa_module_load(c, "module-oss", args)) ++ if (!m) ++ continue; ++ ++ if (!pa_endswith(line, "default")) ++ continue; ++ ++ const char *p = strrchr(line, '>'); ++ ++ if (!p) continue; ++ ++ if (!c->default_sink && strstr(p, "play")) { ++ uint32_t idx = PA_IDXSET_INVALID; ++ pa_sink *s; ++ PA_IDXSET_FOREACH(s, c->sinks, idx) { ++ if (s->module == m) { ++ if (!pa_namereg_set_default_sink(c, s)) ++ pa_log_error("failed to set default sink for device: /dev/dsp%u", device); ++ ++ break; ++ } ++ } ++ } ++ ++ if (!c->default_source && strstr(p, "rec")) { ++ uint32_t idx = PA_IDXSET_INVALID; ++ pa_source *s; ++ PA_IDXSET_FOREACH(s, c->sources, idx) { ++ if (s->module == m) { ++ if (!pa_namereg_set_default_source(c, s)) ++ pa_log_error("failed to set default source for device: /dev/dsp%u", device); ++ ++ break; ++ } ++ } ++ } + } + + n++; --- pulseaudio.orig/files/patch-src_pulsecore_shm.c 2016-07-26 16:51:15 UTC +++ pulseaudio/files/patch-src_pulsecore_shm.c @@ -1,6 +1,6 @@ ---- src/pulsecore/shm.c.orig 2015-12-31 06:28:35 UTC +--- src/pulsecore/shm.c.orig 2016-06-21 10:58:21 UTC +++ src/pulsecore/shm.c -@@ -95,7 +95,7 @@ struct shm_marker { +@@ -102,7 +102,7 @@ static inline size_t shm_marker_size(pa_ #ifdef HAVE_SHM_OPEN static char *segment_name(char *fn, size_t l, unsigned id) { --- pulseaudio.orig/files/pkg-message.in 2015-06-14 02:54:49 UTC +++ pulseaudio/files/pkg-message.in @@ -1,8 +1,10 @@ +Pulseaudio tries to determine default values for FreeBSD OSS driver at first +start, based on /dev/sndstat output. The hw.snd.default_unit sysctl may affect +these values, but restart of the Pulseaudio might be needed to rescan it again, +e.g. `pacmd exit`. -Pulseaudio doesn't know about the hw.snd.default_unit=3 sysctl for the -FreeBSD OSS driver that is used to select the active input/output. So -for Pulseaudio we also need to tell it which input/output to use. The -difference is that Pulseaudio has separate input and output configure lines. +Pulseaudio has separate input and output configure lines. You can change them +with using following commands: To change the default sink (output): # pacmd set-default-sink 3 @@ -11,7 +13,7 @@ This can also be set in %%PREFIX%%/etc/pulse/default.pa -Replace the number '3' with the new default your want to set. +Replace the number '3' with the new default you want to set. The audio/freedesktop-sound-theme is needed if the default sound files --- pulseaudio.orig/pkg-plist 2016-02-14 18:57:53 UTC +++ pulseaudio/pkg-plist @@ -69,7 +69,7 @@ lib/libpulse-simple.so.0.1.0 lib/libpulse.so lib/libpulse.so.0 -lib/libpulse.so.0.19.0 +lib/libpulse.so.0.20.0 %%AVAHI%%lib/pulse-%%PULSE_VERSION%%/modules/libavahi-wrap.so lib/pulse-%%PULSE_VERSION%%/modules/module-device-manager.so %%ALSA%%lib/pulse-%%PULSE_VERSION%%/modules/libalsa-util.so