This is an automated email from the git hooks/post-receive script.
git pushed a commit to branch fix-modern-macos
in repository efl.
View the commit online.
commit 92d3febd5f4219b6318d97c6aaa62faadb5b2764
Author: Cedric BAIL <[email protected]>
AuthorDate: Thu Apr 30 11:17:42 2026 -0600
build: auto-disable systemd on non-Linux platforms
systemd does not exist on macOS, BSD, or Windows. Combining the existing
'systemd' option with 'sys_linux' in all four call sites makes the option
auto-disable on non-Linux hosts even when its default of true is left alone.
Without this, recent ecore_con changes that compile under HAVE_SYSTEMD
(e.g. the SO_DOMAIN reference in efl_net_server_fd.c) cause build
failures on macOS where SO_DOMAIN is undeclared.
Linux behavior is unchanged: 'systemd=true and sys_linux' is still TRUE.
The option's description is updated to document the auto-disable so
non-Linux users aren't surprised by the silent override.
Also harmonises 'get_option('systemd') == true' to the idiomatic
'get_option('systemd')' across the four sites that previously varied.
---
dbus-services/meson.build | 2 +-
meson_options.txt | 2 +-
src/lib/eina/meson.build | 2 +-
src/modules/ecore/system/systemd/meson.build | 2 +-
systemd-services/meson.build | 2 +-
5 files changed, 5 insertions(+), 5 deletions(-)
diff --git a/dbus-services/meson.build b/dbus-services/meson.build
index e8faa851d6..a9af4f3e44 100644
--- a/dbus-services/meson.build
+++ b/dbus-services/meson.build
@@ -5,7 +5,7 @@ org_enlightenment_ethumb_service_config = configuration_data()
org_enlightenment_ethumb_service_config.set('prefix', dir_prefix)
systemd_dbus_prefix = '# '
-if get_option('systemd') == true
+if get_option('systemd') and sys_linux
systemd_dbus_prefix = ''
endif
org_enlightenment_ethumb_service_config.set('systemd_dbus_prefix',
diff --git a/meson_options.txt b/meson_options.txt
index 39998b3f37..ac8657d16e 100644
--- a/meson_options.txt
+++ b/meson_options.txt
@@ -134,7 +134,7 @@ option('gstreamer',
option('systemd',
type : 'boolean',
value : true,
- description : 'Systemd and Elogind support at runtime in efl'
+ description : 'Systemd and Elogind support at runtime in efl. Automatically disabled on non-Linux platforms (macOS, BSD, Windows) where systemd does not exist.'
)
option('pulseaudio',
diff --git a/src/lib/eina/meson.build b/src/lib/eina/meson.build
index 5b8cdc3333..531c1593ae 100644
--- a/src/lib/eina/meson.build
+++ b/src/lib/eina/meson.build
@@ -272,7 +272,7 @@ if default_mempool
eina_config.set('EINA_DEFAULT_MEMPOOL', '1')
endif
-if get_option('systemd') == true
+if get_option('systemd') and sys_linux
config_h.set('HAVE_SYSTEMD', '1')
endif
diff --git a/src/modules/ecore/system/systemd/meson.build b/src/modules/ecore/system/systemd/meson.build
index 2a1104ca6a..7d98ad996d 100644
--- a/src/modules/ecore/system/systemd/meson.build
+++ b/src/modules/ecore/system/systemd/meson.build
@@ -1,4 +1,4 @@
-if get_option('systemd')
+if get_option('systemd') and sys_linux
ecore_systemd_mod = shared_module('systemd',
'ecore_system_systemd.c',
dependencies: [ecore, eldbus],
diff --git a/systemd-services/meson.build b/systemd-services/meson.build
index b4d96e8cae..2a9a591a6e 100644
--- a/systemd-services/meson.build
+++ b/systemd-services/meson.build
@@ -1,4 +1,4 @@
-if get_option('systemd') == true
+if get_option('systemd') and sys_linux
sys_dep = dependency('systemd', required: false)
if sys_dep.found()
sys_dir = sys_dep.get_variable(pkgconfig: 'systemduserunitdir')
--
To stop receiving notification emails like this one, please contact
the administrator of this repository.