diff --git a/.cirrus.yml b/.cirrus.yml index fa3eb11c6..32a2a66a4 100644 --- a/.cirrus.yml +++ b/.cirrus.yml @@ -18,7 +18,7 @@ task: build_script: - mkdir build - cd build - - meson setup -Dalsa=enabled -Dpipewire-alsa=enabled -Dbluez5=disabled -Djack=disabled -Dpipewire-jack=disabled -Dpw-cat=enabled -Dv4l2=disabled -Dsdl2=enabled -Dsystemd=disabled -Dsession-managers=media-session -Ddefault-session-manager=media-session .. + - meson setup -Dalsa=enabled -Dpipewire-alsa=enabled -Dbluez5=disabled -Djack=disabled -Dpipewire-jack=disabled -Dpw-cat=enabled -Dv4l2=disabled -Dsdl2=enabled -Dsystemd=disabled -Dsession-managers=media-session .. - ninja test_script: - cd build diff --git a/meson_options.txt b/meson_options.txt index 2fc75d394..3d4d65335 100644 --- a/meson_options.txt +++ b/meson_options.txt @@ -204,8 +204,3 @@ option('session-managers', type : 'array', choices : ['media-session', 'wireplumber'], value : ['media-session']) -option('default-session-manager', - description : 'Default session manager (leave as-is if none are built)', - type : 'combo', - choices : ['auto', 'media-session', 'wireplumber'], - value : 'auto') diff --git a/src/daemon/meson.build b/src/daemon/meson.build index a65bebd7d..c9c292dad 100644 --- a/src/daemon/meson.build +++ b/src/daemon/meson.build @@ -17,57 +17,43 @@ conf_config.set('sm_comment', '#') conf_config.set('pulse_comment', '#') conf_config_uninstalled = conf_config -conf_config_uninstalled.set('session_manager_path', - meson.build_root() / 'src' / 'examples' / 'pipewire-media-session') conf_config_uninstalled.set('pipewire_path', meson.build_root() / 'src' / 'daemon' / 'pipewire') conf_config_uninstalled.set('pipewire_pulse_path', meson.build_root() / 'src' / 'daemon' / 'pipewire-pulse') -conf_config_uninstalled.set('sm_comment', '') conf_config_uninstalled.set('pulse_comment', '') build_ms = get_option('session-managers').contains('media-session') build_wp = get_option('session-managers').contains('wireplumber') -sm_choice = get_option('default-session-manager') -if sm_choice == 'auto' - sm_choice = get_option('session-managers').get(0, '') -endif +default_sm = get_option('session-managers').get(0, '') summary({'Build media-session': build_ms, 'Build wireplumber': build_wp, - 'Default session-manager': sm_choice}, + 'Default session-manager': default_sm}, section: 'Session managers', bool_yn: true) -if sm_choice == 'media-session' - if get_option('session-managers') == [] - summary({'No session manager': 'pw-uninstalled.sh will not work out of the box!'}) - elif not build_ms - error('media-session is the selected default session manager but it won\'t be built') - endif +if build_wp + wp_proj = subproject('wireplumber', required : true) endif -if not build_wp and (sm_choice == 'wireplumber') - wp_prog = find_program('wireplumber') - conf_config.set('session_manager_path', wp_prog.full_path()) - conf_config_uninstalled.set('session_manager_path', wp_prog.full_path()) - conf_config_uninstalled.set('session_manager_args', '') - summary({'Using system wireplumber': wp_prog.full_path()}, - section: 'Session managers', - bool_yn: true) -elif build_wp - wp_proj = subproject('wireplumber', required : true) - if sm_choice == 'wireplumber' - wp_bindir = wp_proj.get_variable('wireplumber_bin_dir', pipewire_bindir) +if default_sm == '' + summary({'No session manager': 'pw-uninstalled.sh will not work out of the box!'}) +elif default_sm == 'media-session' + conf_config_uninstalled.set('session_manager_path', + meson.build_root() / 'src' / 'examples' / 'pipewire-media-session') + conf_config_uninstalled.set('sm_comment', '') +elif default_sm == 'wireplumber' + wp_bindir = wp_proj.get_variable('wireplumber_bin_dir', pipewire_bindir) - conf_config.set('session_manager_path', wp_bindir / 'wireplumber') + conf_config.set('session_manager_path', wp_bindir / 'wireplumber') - # wp-uninstalled.sh -b path/to/wp/build/root wireplumber - conf_config_uninstalled.set('session_manager_path', - meson.source_root() / 'subprojects' / 'wireplumber' / 'wp-uninstalled.sh') - conf_config_uninstalled.set('session_manager_args', - '-b ' + meson.build_root() / 'subprojects' / 'wireplumber' + ' wireplumber') - endif + # wp-uninstalled.sh -b path/to/wp/build/root wireplumber + conf_config_uninstalled.set('session_manager_path', + meson.source_root() / 'subprojects' / 'wireplumber' / 'wp-uninstalled.sh') + conf_config_uninstalled.set('session_manager_args', + '-b ' + meson.build_root() / 'subprojects' / 'wireplumber' + ' wireplumber') + conf_config_uninstalled.set('sm_comment', '') endif conf_files = [