From: Patrick Steinhardt Date: Thu, 30 Jan 2025 14:43:58 GMT Subject: [PATCH v2 06/13] meson: stop linking libcurl into all executables Message-ID: <20250130-b4-pks-meson-improvements-v2-6-2f05581ffb44@pks.im> In-Reply-To: <20250130-b4-pks-meson-improvements-v2-0-2f05581ffb44@pks.im> We set up libcurl via the `libgit_dependencies` variable, which gets propagated into every user of the `libgit` dependency. This is not necessary though, as most of our executables aren't even supposed to link against libcurl. Fix this by only propagating include directories as a libgit dependency and propagating the full curl dependency via `libgit_curl`. Signed-off-by: Patrick Steinhardt --- meson.build | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/meson.build b/meson.build index 820008f6de..4b641095a1 100644 --- a/meson.build +++ b/meson.build @@ -927,7 +927,9 @@ if curl.found() use_curl_for_imap_send = true endif - libgit_dependencies += curl + # Most executables don't have to link against libcurl, but we still need its + # include directories so that we can resolve LIBCURL_VERSION in "help.c". + libgit_dependencies += curl.partial_dependency(includes: true) libgit_c_args += '-DCURL_DISABLE_TYPECHECK' build_options_config.set('NO_CURL', '') else @@ -1663,7 +1665,7 @@ if get_option('curl').enabled() 'http.c', 'http-walker.c', ], - dependencies: [libgit_commonmain], + dependencies: [libgit_commonmain, curl], ) test_dependencies += executable('git-remote-http', -- 2.48.1.468.gbf5f394be8.dirty