1################################################################################ 2# 3# pulseaudio 4# 5################################################################################ 6 7PULSEAUDIO_VERSION = 14.2 8PULSEAUDIO_SOURCE = pulseaudio-$(PULSEAUDIO_VERSION).tar.xz 9PULSEAUDIO_SITE = https://freedesktop.org/software/pulseaudio/releases 10PULSEAUDIO_INSTALL_STAGING = YES 11PULSEAUDIO_LICENSE = LGPL-2.1+ (specific license for modules, see LICENSE file) 12PULSEAUDIO_LICENSE_FILES = LICENSE GPL LGPL 13PULSEAUDIO_CPE_ID_VENDOR = pulseaudio 14PULSEAUDIO_SELINUX_MODULES = pulseaudio xdg 15PULSEAUDIO_CONF_OPTS = \ 16 --disable-default-build-tests \ 17 --disable-legacy-database-entry-format \ 18 --disable-manpages \ 19 --disable-running-from-build-tree 20 21PULSEAUDIO_DEPENDENCIES = \ 22 host-pkgconf libtool libsndfile speex \ 23 $(TARGET_NLS_DEPENDENCIES) \ 24 $(if $(BR2_PACKAGE_LIBGLIB2),libglib2) \ 25 $(if $(BR2_PACKAGE_AVAHI_DAEMON),avahi) \ 26 $(if $(BR2_PACKAGE_DBUS),dbus) \ 27 $(if $(BR2_PACKAGE_NCURSES),ncurses) \ 28 $(if $(BR2_PACKAGE_OPENSSL),openssl) \ 29 $(if $(BR2_PACKAGE_FFTW_SINGLE),fftw-single) \ 30 $(if $(BR2_PACKAGE_SYSTEMD),systemd) 31 32ifeq ($(BR2_PACKAGE_LIBSAMPLERATE),y) 33PULSEAUDIO_CONF_OPTS += --enable-samplerate 34PULSEAUDIO_DEPENDENCIES += libsamplerate 35else 36PULSEAUDIO_CONF_OPTS += --disable-samplerate 37endif 38 39ifeq ($(BR2_PACKAGE_GDBM),y) 40PULSEAUDIO_CONF_OPTS += --with-database=gdbm 41PULSEAUDIO_DEPENDENCIES += gdbm 42else 43PULSEAUDIO_CONF_OPTS += --with-database=simple 44endif 45 46ifeq ($(BR2_PACKAGE_JACK2),y) 47PULSEAUDIO_CONF_OPTS += --enable-jack 48PULSEAUDIO_DEPENDENCIES += jack2 49else 50PULSEAUDIO_CONF_OPTS += --disable-jack 51endif 52 53ifeq ($(BR2_PACKAGE_LIBATOMIC_OPS),y) 54PULSEAUDIO_DEPENDENCIES += libatomic_ops 55ifeq ($(BR2_sparc_v8)$(BR2_sparc_leon3),y) 56PULSEAUDIO_CONF_ENV += CFLAGS="$(TARGET_CFLAGS) -DAO_NO_SPARC_V9" 57endif 58endif 59 60ifeq ($(BR2_PACKAGE_ORC),y) 61PULSEAUDIO_DEPENDENCIES += orc 62PULSEAUDIO_CONF_ENV += ORCC=$(HOST_DIR)/bin/orcc 63PULSEAUDIO_CONF_OPTS += --enable-orc 64else 65PULSEAUDIO_CONF_OPTS += --disable-orc 66endif 67 68ifeq ($(BR2_PACKAGE_LIBCAP),y) 69PULSEAUDIO_DEPENDENCIES += libcap 70PULSEAUDIO_CONF_OPTS += --with-caps 71else 72PULSEAUDIO_CONF_OPTS += --without-caps 73endif 74 75# gtk3 support needs X11 backend 76ifeq ($(BR2_PACKAGE_LIBGTK3_X11),y) 77PULSEAUDIO_DEPENDENCIES += libgtk3 78PULSEAUDIO_CONF_OPTS += --enable-gtk3 79else 80PULSEAUDIO_CONF_OPTS += --disable-gtk3 81endif 82 83ifeq ($(BR2_PACKAGE_LIBSOXR),y) 84PULSEAUDIO_CONF_OPTS += --with-soxr 85PULSEAUDIO_DEPENDENCIES += libsoxr 86else 87PULSEAUDIO_CONF_OPTS += --without-soxr 88endif 89 90ifeq ($(BR2_PACKAGE_BLUEZ5_UTILS)$(BR2_PACKAGE_SBC),yy) 91PULSEAUDIO_CONF_OPTS += --enable-bluez5 92PULSEAUDIO_DEPENDENCIES += bluez5_utils sbc 93else 94PULSEAUDIO_CONF_OPTS += --disable-bluez5 95endif 96 97ifeq ($(BR2_PACKAGE_HAS_UDEV),y) 98PULSEAUDIO_CONF_OPTS += --enable-udev 99PULSEAUDIO_DEPENDENCIES += udev 100else 101PULSEAUDIO_CONF_OPTS += --disable-udev 102endif 103 104ifeq ($(BR2_PACKAGE_WEBRTC_AUDIO_PROCESSING),y) 105PULSEAUDIO_CONF_OPTS += --enable-webrtc-aec 106PULSEAUDIO_DEPENDENCIES += webrtc-audio-processing 107else 108PULSEAUDIO_CONF_OPTS += --disable-webrtc-aec 109endif 110 111# neon intrinsics not available with float-abi=soft 112ifeq ($(BR2_ARM_SOFT_FLOAT),) 113ifeq ($(BR2_ARM_CPU_HAS_NEON),y) 114PULSEAUDIO_USE_NEON = y 115endif 116endif 117 118ifeq ($(PULSEAUDIO_USE_NEON),y) 119PULSEAUDIO_CONF_OPTS += --enable-neon-opt=yes 120else 121PULSEAUDIO_CONF_OPTS += --enable-neon-opt=no 122endif 123 124# pulseaudio alsa backend needs pcm/mixer apis 125ifeq ($(BR2_PACKAGE_ALSA_LIB_PCM)$(BR2_PACKAGE_ALSA_LIB_MIXER),yy) 126PULSEAUDIO_DEPENDENCIES += alsa-lib 127PULSEAUDIO_CONF_OPTS += --enable-alsa 128else 129PULSEAUDIO_CONF_OPTS += --disable-alsa 130endif 131 132ifeq ($(BR2_PACKAGE_LIBXCB)$(BR2_PACKAGE_XLIB_LIBSM)$(BR2_PACKAGE_XLIB_LIBXTST),yyy) 133PULSEAUDIO_DEPENDENCIES += libxcb xlib_libSM xlib_libXtst 134 135# .desktop file generation needs nls support, so fake it for !locale builds 136# https://bugs.freedesktop.org/show_bug.cgi?id=54658 137ifeq ($(BR2_SYSTEM_ENABLE_NLS),) 138define PULSEAUDIO_FIXUP_DESKTOP_FILES 139 cp $(@D)/src/daemon/pulseaudio.desktop.in \ 140 $(@D)/src/daemon/pulseaudio.desktop 141endef 142PULSEAUDIO_POST_PATCH_HOOKS += PULSEAUDIO_FIXUP_DESKTOP_FILES 143endif 144 145else 146PULSEAUDIO_CONF_OPTS += --disable-x11 147endif 148 149# ConsoleKit module init failure breaks user daemon startup 150define PULSEAUDIO_REMOVE_CONSOLE_KIT 151 rm -f $(TARGET_DIR)/usr/lib/pulseaudio/modules/module-console-kit.so 152endef 153 154define PULSEAUDIO_REMOVE_VALA 155 rm -rf $(TARGET_DIR)/usr/share/vala 156endef 157 158PULSEAUDIO_POST_INSTALL_TARGET_HOOKS += PULSEAUDIO_REMOVE_VALA \ 159 PULSEAUDIO_REMOVE_CONSOLE_KIT 160 161ifeq ($(BR2_PACKAGE_PULSEAUDIO_DAEMON),y) 162define PULSEAUDIO_USERS 163 pulse -1 pulse -1 * /var/run/pulse - audio,pulse-access 164endef 165 166define PULSEAUDIO_INSTALL_INIT_SYSV 167 $(INSTALL) -D -m 755 package/pulseaudio/S50pulseaudio \ 168 $(TARGET_DIR)/etc/init.d/S50pulseaudio 169 $(INSTALL) -D -m 755 package/pulseaudio/pulse.sh \ 170 $(TARGET_DIR)/etc/profile.d/pulse.sh 171 $(INSTALL) -D -m 755 package/pulseaudio/default.pa \ 172 $(TARGET_DIR)/etc/pulse/default.pa 173 $(INSTALL) -D -m 755 package/pulseaudio/daemon.conf \ 174 $(TARGET_DIR)/etc/pulse/daemon.conf 175 $(INSTALL) -D -m 755 package/pulseaudio/client.conf \ 176 $(TARGET_DIR)/etc/pulse/client.conf 177endef 178 179define PULSEAUDIO_INSTALL_INIT_SYSTEMD 180 $(INSTALL) -D -m 644 package/pulseaudio/pulseaudio.service \ 181 $(TARGET_DIR)/usr/lib/systemd/system/pulseaudio.service 182endef 183 184endif 185 186$(eval $(autotools-package)) 187