Even with --auto-features=enabled MAC related things should be only checked on MAC.

Sounds reasonable to me; and --auto-features=enabled seems useful to make sure a (potentially new) dependency is not missed.

Would something like this work?

diff --git a/meson.build b/meson.build
index 5c7bc0a04..e5b55aebe 100644
--- a/meson.build
+++ b/meson.build
@@ -23,9 +23,6 @@ foreach dep : deps_in
 	deps_for_pc += ' ' + dep[0] + ' >= ' + dep[1]
 endforeach
 
-dep_mac_integration = dependency('gtk-mac-integration', version: '>= 3.0.1',
-	required: get_option('mac-integration'))
-
 glib = deps[0]
 
 # detect libc
@@ -741,6 +738,17 @@ if (host_machine.system() == 'windows')
 	endforeach
 endif
 
+osx_src = []
+osx_deps = []
+if host_machine.system() == 'darwin'
+	dep_mac_integration = dependency('gtk-mac-integration', version: '>= 3.0.1',
+		required: get_option('mac-integration'))
+	if dep_mac_integration.found()
+		osx_src += ['src/osx.c', 'src/osx.h']
+		osx_deps += [dep_mac_integration]
+	endif
+endif
+
 install_headers(
 	'plugins/geanyfunctions.h',
 	'plugins/geanyplugin.h',
@@ -857,12 +865,12 @@ libgeany = shared_library('geany',
 	'src/utils.h',
 	gen_src,
 	win_src,
-	dep_mac_integration.found() ? ['src/osx.c', 'src/osx.h'] : [],
+	osx_src,
 	host_machine.system() == 'windows' ? ['src/win32.c',  'src/win32.h'] : [ 'src/vte.c', 'src/vte.h' ],
 	soversion: '0',
 	c_args: geany_cflags + [ '-DG_LOG_DOMAIN="Geany"' ],
 	include_directories: [iscintilla],
-	dependencies: [dep_tagmanager, dep_ctags, dep_scintilla, dep_mac_integration] + deps + win_deps,
+	dependencies: [dep_tagmanager, dep_ctags, dep_scintilla] + deps + win_deps + osx_deps,
 	install: true
 )
 dep_libgeany = declare_dependency(


Reply to this email directly, view it on GitHub, or unsubscribe.
You are receiving this because you are subscribed to this thread.Message ID: <geany/geany/issues/3649/1786101543@github.com>