udev-detect: Changes default latency 50ms to 25ms
[platform/upstream/pulseaudio.git] / meson.build
index 18fc869..c93a73d 100644 (file)
@@ -63,7 +63,9 @@ includedir = join_paths(prefix, get_option('includedir'))
 libdir = join_paths(prefix, get_option('libdir'))
 libexecdir = join_paths(prefix, get_option('libexecdir'))
 mandir = join_paths(prefix, get_option('mandir'))
-datadir = join_paths(prefix, get_option('datadir'))
+#datadir = join_paths(prefix, get_option('datadir'))
+#FIXME: meson.build:1:0: ERROR: The value of the 'datadir' option is '/hal/share' which must be a subdir of the prefix '/usr'.
+datadir = get_option('hal-datadir')
 localedir = join_paths(prefix, get_option('localedir'))
 localstatedir = join_paths(prefix, get_option('localstatedir'))
 sysconfdir = join_paths(prefix, get_option('sysconfdir'))
@@ -81,7 +83,8 @@ endif
 
 pkgconfigdir = join_paths(libdir, 'pkgconfig')
 pulselibexecdir = join_paths(libexecdir, 'pulse')
-pulsesysconfdir = join_paths(sysconfdir, 'pulse')
+#pulsesysconfdir = join_paths(sysconfdir, 'pulse')
+pulsesysconfdir = join_paths(get_option('hal-sysconfdir'), 'pulse')
 
 modlibexecdir = get_option('modlibexecdir')
 if modlibexecdir == ''
@@ -99,6 +102,7 @@ if pulsedsp_location == ''
 endif
 
 systemduserunitdir = get_option('systemduserunitdir')
+systemdsystemunitdir = get_option('systemdsystemunitdir')
 # the default value is set below
 
 udevrulesdir = get_option('udevrulesdir')
@@ -164,10 +168,15 @@ cdata.set('top_srcdir', meson.source_root())
 # First some defaults to keep config file generation happy
 cdata.set('HAVE_COREAUDIO', 0)
 cdata.set('HAVE_WAVEOUT', 0)
+cdata.set('OS_IS_FREEBSD', 0)
 
 platform_socket_dep = []
 platform_dep = []
 
+if host_machine.endian() == 'big'
+  cdata.set('WORDS_BIGENDIAN', 1)
+endif
+
 # FIXME: This was not tested. Maybe some flags should better be CFLAGS,
 # rather than ending up in the config.h file?
 if host_machine.system() == 'darwin'
@@ -560,8 +569,11 @@ if host_machine.cpu_family() == 'arm'
 endif
 # NEON checks are automatically done by the unstable-simd module
 
-# FIXME: make sure it's >= 2.2
-ltdl_dep = cc.find_library('ltdl', required : true)
+if get_option('daemon')
+  # FIXME: make sure it's >= 2.2
+  ltdl_dep = cc.find_library('ltdl', required : true)
+endif
+
 # FIXME: can meson support libtool -dlopen/-dlpreopen things?
 #        and do we still want to support this at all?
 cdata.set('DISABLE_LIBTOOL_PRELOAD', 1)
@@ -574,6 +586,88 @@ else
   database_dep = dependency('', required: false)
 endif
 
+# TIZEN BUILD OPTION
+vconf_dep = dependency('vconf')
+if vconf_dep.found()
+  cdata.set('HAVE_VCONF', 1)
+endif
+
+dlog_dep = dependency('dlog', required : get_option('dlog'))
+if dlog_dep.found()
+  cdata.set('TIZEN_DLOG', 1)
+endif
+
+if get_option('buffer-attribute')
+  cdata.set('TIZEN_BUFFER_ATTR', 1)
+endif
+
+if get_option('udev-usb-only')
+  cdata.set('TIZEN_UDEV_USB_ONLY', 1)
+endif
+
+if get_option('pcm-dump')
+  cdata.set('TIZEN_PCM_DUMP', 1)
+endif
+
+if get_option('udev-usb-only')
+  cdata.set('TIZEN_UDEV_USB_ONLY', 1)
+endif
+
+if get_option('pa-ready')
+  cdata.set('TIZEN_PA_READY', 1)
+endif
+
+if get_option('pa-simple-extensions')
+  cdata.set('TIZEN_PA_SIMPLE_EXT', 1)
+endif
+
+if get_option('empty-pop')
+  cdata.set('TIZEN_EMPTY_POP', 1)
+endif
+
+if get_option('volume-ramp')
+  cdata.set('TIZEN_VOLUME_RAMP', 1)
+endif
+
+if get_option('individual-volume-ratio')
+  cdata.set('TIZEN_INDIVIDUAL_VOLUME_RATIO', 1)
+endif
+
+if get_option('filter-group')
+  cdata.set('TIZEN_FILTER_GROUP', 1)
+endif
+
+if get_option('prelink')
+  cdata.set('TIZEN_TV_PROD_PRELINK', 1)
+endif
+
+if get_option('cpu-boosting')
+  cdata.set('TIZEN_TV_PROD_CPU_BOOSTING', 1)
+endif
+
+lwipc_dep = dependency('lwipc', required : get_option('lwipc'))
+if lwipc_dep.found()
+  cdata.set('TIZEN_TV_PROD_LWIPC', 1)
+endif
+
+boost_tv_dep = dependency('capi-boost-tv', required : get_option('cpu-boosting'))
+system_info_dep = dependency('capi-system-info', required : get_option('cpu-boosting'))
+
+if get_option('aec')
+  cdata.set('TIZEN_AEC', 1)
+endif
+
+enable_security = false
+cynara_client_dep = dependency('cynara-client', required : get_option('security'))
+cynara_creds_socket_dep = dependency('cynara-creds-socket', required : get_option('security'))
+cynara_session_dep = dependency('cynara-session', required : get_option('security'))
+if cynara_client_dep.found() and cynara_creds_socket_dep.found() and cynara_session_dep.found()
+  cdata.set('TIZEN_SECURITY', 1)
+  enable_security = true
+endif
+
+# TIZEN BUILD OPTION end
+
 if get_option('ipv6')
   cdata.set('HAVE_IPV6', 1)
 endif
@@ -606,9 +700,12 @@ if dbus_dep.found()
   cdata.set('HAVE_DBUS', 1)
 endif
 
-gio_dep = dependency('gio-2.0', version : '>= 2.26.0', required : get_option('gsettings'))
-if gio_dep.found()
+gio_dep = dependency('gio-2.0', version : '>= 2.26.0')
+if get_option('gsettings').enabled()
+  assert(gio_dep.found(), 'GSettings support needs glib I/O library (GIO)')
   cdata.set('HAVE_GSETTINGS', 1)
+else
+  cdata.set('HAVE_GSETTINGS', 0)
 endif
 
 glib_dep = dependency('glib-2.0', version : '>= 2.28.0', required: get_option('glib'))
@@ -656,6 +753,9 @@ systemd_dep = dependency('systemd', required : get_option('systemd'))
 if systemd_dep.found() and systemduserunitdir == ''
   systemduserunitdir = systemd_dep.get_pkgconfig_variable('systemduserunitdir')
 endif
+if systemd_dep.found() and systemdsystemunitdir == ''
+  systemdsystemunitdir = systemd_dep.get_pkgconfig_variable('systemdsystemunitdir')
+endif
 
 libelogind_dep = dependency('libelogind', required : get_option('elogind'))
 if libelogind_dep.found()
@@ -682,6 +782,7 @@ endif
 # Module dependencies
 if cc.has_header('sys/soundcard.h', required: get_option('oss-output'))
   cdata.set('HAVE_OSS_OUTPUT', 1)
+  # OSS wrapper
   cdata.set('HAVE_OSS_WRAPPER', 1)
   cdata.set('PULSEDSP_LOCATION', pulsedsp_location)
 endif
@@ -693,13 +794,14 @@ endif
 avahi_dep = dependency('avahi-client', version : '>= 0.6.0', required : get_option('avahi'), disabler : true)
 if avahi_dep.found()
   cdata.set('HAVE_AVAHI', 1)
+else
+  cdata.set('HAVE_AVAHI', 0)
 endif
 
-sbc_dep = dependency('sbc', version : '>= 1.0', required : false)
-
 if get_option('bluez5')
-  assert(dbus_dep.found(), 'BlueZ requires D-Bus support')
+  sbc_dep = dependency('sbc', version : '>= 1.0', required : false)
   assert(sbc_dep.found(), 'BlueZ requires SBC support')
+  assert(dbus_dep.found(), 'BlueZ requires D-Bus support')
   cdata.set('HAVE_SBC', 1)
   cdata.set('HAVE_BLUEZ', 1)
   cdata.set('HAVE_BLUEZ_5', 1)
@@ -726,7 +828,7 @@ if lirc_dep.found()
   cdata.set('HAVE_LIRC', 1)
 endif
 
-openssl_dep = dependency('openssl', version : '>= 0.9', required : get_option('openssl'))
+openssl_dep = dependency('openssl3', version : '>= 0.9', required : get_option('openssl'))
 if openssl_dep.found()
   cdata.set('HAVE_OPENSSL', 1)
 endif
@@ -752,6 +854,7 @@ gstrtp_dep = dependency('gstreamer-rtp-1.0', required : get_option('gstreamer'))
 
 have_gstreamer = false
 if gst_dep.found() and gstapp_dep.found() and gstrtp_dep.found()
+  assert(gio_dep.found(), 'GStreamer-based RTP needs glib I/O library (GIO)')
   have_gstreamer = true
 endif
 
@@ -777,7 +880,9 @@ check_dep = dependency('check', version : '>= 0.9.10', required : get_option('te
 
 # Subdirs
 
-subdir('doxygen')
+if get_option('doxygen')
+  subdir('doxygen')
+endif
 subdir('po')
 if get_option('man')
   subdir('man')
@@ -806,10 +911,12 @@ pc_cdata.set('PA_MAJORMINOR', pa_version_major_minor)
 # get_configtool_variable() work with it, so we have no way to get this flag right,
 # unless we do all the work ourselves. See current work in glib, also meson #553.
 pc_cdata.set('PTHREAD_LIBS', '-pthread')
+pc_cdata.set('PA_DEFAULT_CONFIG_DIR', cdata.get_unquoted('PA_DEFAULT_CONFIG_DIR'))
 
 pc_files = [
   'libpulse.pc',
   'libpulse-simple.pc',
+  'pulsecore.pc',
 ]
 
 if glib_dep.found()
@@ -902,9 +1009,9 @@ summary = [
   'Enable Async DNS:              @0@'.format(asyncns_dep.found()),
   'Enable LIRC:                   @0@'.format(lirc_dep.found()),
   'Enable D-Bus:                  @0@'.format(dbus_dep.found()),
-  '  Enable BlueZ 5:              @0@'.format(get_option('bluez5')),
-  '    Enable native headsets:    @0@'.format(get_option('bluez5-native-headset')),
-  '    Enable  ofono headsets:    @0@'.format(get_option('bluez5-ofono-headset')),
+  '  Enable BlueZ 5:              @0@'.format(cdata.has('HAVE_BLUEZ_5')),
+  '    Enable native headsets:    @0@'.format(cdata.has('HAVE_BLUEZ_5_NATIVE_HEADSET')),
+  '    Enable  ofono headsets:    @0@'.format(cdata.has('HAVE_BLUEZ_5_OFONO_HEADSET')),
   '    Enable GStreamer based codecs: @0@'.format(have_bluez5_gstreamer),
   'Enable udev:                   @0@'.format(udev_dep.found()),
   '  Enable HAL->udev compat:     @0@'.format(get_option('hal-compat')),
@@ -937,6 +1044,22 @@ summary = [
 #  'Enable per-user EsounD socket: @0@'.format(${ENABLE_PER_USER_ESOUND_SOCKET}),
 #  'Force preopen:                 @0@'.format(${FORCE_PREOPEN}),
 #  'Preopened modules:             @0@'.format(${PREOPEN_MODS}),
+  '',
+  'Tizen options:',
+  '  dlog:                        @0@'.format(dlog_dep.found()),
+  '  buffer-attribute:            @0@'.format(get_option('buffer-attribute')),
+  '  pcm-dump:                    @0@'.format(get_option('pcm-dump')),
+  '  security:                    @0@'.format(enable_security),
+  '  udev-usb-only:               @0@'.format(get_option('udev-usb-only')),
+  '  pa-ready:                    @0@'.format(get_option('pa-ready')),
+  '  pa-simple-extensions:        @0@'.format(get_option('pa-simple-extensions')),
+  '  empty-pop:                   @0@'.format(get_option('empty-pop')),
+  '  volume-ramp:                 @0@'.format(get_option('volume-ramp')),
+  '  individual-volume-ratio:     @0@'.format(get_option('individual-volume-ratio')),
+  '  aec:                         @0@'.format(get_option('aec')),
+  '  prelink (for TV):            @0@'.format(get_option('prelink')),
+  '  lwipc (for TV):              @0@'.format(get_option('lwipc')),
+  '  cpu-boosting (for TV):       @0@'.format(get_option('cpu-boosting')),
 ]
 
 message('\n    '.join(summary))