meson: make ‘i3’ plugin compile time optional

This commit is contained in:
Daniel Eklöf 2022-12-14 09:39:47 +01:00
parent 85d55905f9
commit f54f583be1
No known key found for this signature in database
GPG key ID: 5BBD4992C116573F
4 changed files with 18 additions and 3 deletions

View file

@ -141,6 +141,7 @@ yambar = executable(
plugin_dwl_enabled ? '-DPLUGIN_ENABLED_DWL' : [],
plugin_mem_enabled ? '-DPLUGIN_ENABLED_MEM' : [],
plugin_mpd_enabled ? '-DPLUGIN_ENABLED_MPD' : [],
plugin_i3_enabled ? '-DPLUGIN_ENABLED_I3' : [],
plugin_pipewire_enabled ? '-DPLUGIN_ENABLED_PIPEWIRE' : [],
plugin_pulse_enabled ? '-DPLUGIN_ENABLED_PULSE' : [],
],
@ -190,6 +191,7 @@ summary(
'DWL (dwm for Wayland)': plugin_dwl_enabled,
'Memory monitoring': plugin_mem_enabled,
'Music Player Daemon (MPD)': plugin_mpd_enabled,
'i3+Sway': plugin_i3_enabled,
'Pipewire': plugin_pipewire_enabled,
'PulseAudio': plugin_pulse_enabled,
},

View file

@ -24,6 +24,8 @@ option('plugin-mem', type: 'feature', value: 'auto',
description: 'Memory monitoring support')
option('plugin-mpd', type: 'feature', value: 'auto',
description: 'Music Player Daemon (MPD) support')
option('plugin-i3', type: 'feature', value: 'auto',
description: 'i3+Sway support')
option('plugin-pipewire', type: 'feature', value: 'auto',
description: 'Pipewire support')
option('plugin-pulse', type: 'feature', value: 'auto',

View file

@ -24,6 +24,9 @@ plugin_mem_enabled = get_option('plugin-mem').allowed()
mpd = dependency('libmpdclient', required: get_option('plugin-mpd'))
plugin_mpd_enabled = mpd.found()
json_i3 = dependency('json-c', required: get_option('plugin-i3'))
plugin_i3_enabled = json_i3.found()
pipewire = dependency('libpipewire-0.3', required: get_option('plugin-pipewire'))
plugin_pipewire_enabled = pipewire.found()
@ -34,7 +37,6 @@ plugin_dwl_enabled = get_option('plugin-dwl').allowed()
# Module name -> (source-list, dep-list)
mod_data = {
'i3': [['i3-common.c', 'i3-common.h'], [dynlist, json]],
'label': [[], []],
'network': [[], []],
'removables': [[], [dynlist, udev]],
@ -77,6 +79,11 @@ endif
if plugin_mpd_enabled
mod_data += {'mpd': [[], [mpd]]}
endif
if plugin_i3_enabled
mod_data += {'i3': [['i3-common.c', 'i3-common.h'], [dynlist, json_i3]]}
endif
if plugin_pipewire_enabled
mod_data += {'pipewire': [[], [pipewire, dynlist, json]]}
endif

View file

@ -54,7 +54,6 @@ EXTERN_MODULE(disk_io);
EXTERN_MODULE(dwl);
#endif
EXTERN_MODULE(foreign_toplevel);
EXTERN_MODULE(i3);
EXTERN_MODULE(label);
#if defined(PLUGIN_ENABLED_MEM)
EXTERN_MODULE(mem);
@ -62,6 +61,9 @@ EXTERN_MODULE(mem);
#if defined(PLUGIN_ENABLED_MPD)
EXTERN_MODULE(mpd);
#endif
#if defined(PLUGIN_ENABLED_I3)
EXTERN_MODULE(i3);
#endif
EXTERN_MODULE(network);
#if defined(PLUGIN_ENABLED_PULSE)
EXTERN_MODULE(pulse);
@ -162,13 +164,15 @@ init(void)
#if defined(HAVE_PLUGIN_foreign_toplevel)
REGISTER_CORE_MODULE(foreign-toplevel, foreign_toplevel);
#endif
REGISTER_CORE_MODULE(i3, i3);
REGISTER_CORE_MODULE(label, label);
#if defined(PLUGIN_ENABLED_MEM)
REGISTER_CORE_MODULE(mem, mem);
#endif
#if defined(PLUGIN_ENABLED_MPD)
REGISTER_CORE_MODULE(mpd, mpd);
#endif
#if defined(PLUGIN_ENABLED_I3)
REGISTER_CORE_MODULE(i3, i3);
#endif
REGISTER_CORE_MODULE(network, network);
#if defined(PLUGIN_ENABLED_PULSE)