diff --git a/gdk/meson.build b/gdk/meson.build index e8656f14b9..fa5b66fb5c 100644 --- a/gdk/meson.build +++ b/gdk/meson.build @@ -199,15 +199,13 @@ libgdk = static_library('gdk', c_args: ['-DGDK_COMPILATION', '-DG_LOG_DOMAIN="Gdk"'], include_directories: [confinc, xinc, wlinc], link_with: gdk_backends, - dependencies: gdk_deps, -) - + dependencies: gdk_deps) +# We don't have link_with: to internal static libs here on purpose, just +# list the dependencies and generated headers and such, for use in the +# "public" libgtk_dep used by internal executables. libgdk_dep = declare_dependency( sources: ['gdk.h', gdkconfig, gdkenum_h], depends: gdk_sources, include_directories: [confinc, xinc, wlinc], - dependencies: gdk_deps, - link_with: libgdk, - link_args: ['-Bsymbolic'], -) + dependencies: gdk_deps) diff --git a/gsk/meson.build b/gsk/meson.build index 3bd0590a2e..0b8743838b 100644 --- a/gsk/meson.build +++ b/gsk/meson.build @@ -157,12 +157,14 @@ libgsk = static_library('gsk', dependencies: gsk_deps, include_directories: [confinc], c_args: ['-DGSK_COMPILATION', '-DG_LOG_DOMAIN="Gsk"'], -) + link_with: libgdk, + link_args: ['-Bsymbolic']) +# We don't have link_with: to internal static libs here on purpose, just +# list the dependencies and generated headers and such, for use in the +# "public" libgtk_dep used by internal executables. libgsk_dep = declare_dependency( depends: gsk_sources, - link_with: libgsk, - link_args: ['-Bsymbolic'], include_directories: [confinc], - sources: [gskenum_h, gskresources] -) + sources: [gskenum_h, gskresources], + dependencies: libgdk_dep) diff --git a/gtk/meson.build b/gtk/meson.build index d667a6c036..2adbe2c6ea 100644 --- a/gtk/meson.build +++ b/gtk/meson.build @@ -830,22 +830,17 @@ libgtk = shared_library('gtk-4', sources: [typefuncs, gtk_sources, gtkmarshal_h, gtkprivatetypebuiltins_h], c_args: gtk_cargs, include_directories: [confinc, gdkinc, gtkinc], - dependencies: [gtk_deps, libgdk_dep, libgsk_dep], - install: true -) + dependencies: gtk_deps + [libgdk_dep, libgsk_dep], + link_with: [libgdk, libgsk], + link_args: ['-Bsymbolic'], + install: true) libgtk_dep = declare_dependency( - sources: [ - 'gtk.h', - gtkversion, - gtktypebuiltins_h, - ], - include_directories: [confinc], - dependencies: gtk_deps, + sources: [gtkversion, gtktypebuiltins_h], + include_directories: [confinc, gtkinc], + dependencies: gtk_deps + [libgdk_dep, libgsk_dep], link_with: libgtk, - link_args: ['-Bsymbolic'], - include_directories: [confinc, gtkinc] -) + link_args: ['-Bsymbolic']) # Installed tools diff --git a/testsuite/gdk/meson.build b/testsuite/gdk/meson.build index 6c85e75b93..cfe2d07913 100644 --- a/testsuite/gdk/meson.build +++ b/testsuite/gdk/meson.build @@ -17,7 +17,7 @@ test('gdk/keysyms', test_keysyms) test_rectangle = executable('rectangle', 'rectangle.c', dependencies: libgtk_dep) test('gdk/rectangle', test_rectangle) -test_rgba = executable('rgba', 'rgba.c', dependencies: libgdk_dep) +test_rgba = executable('rgba', 'rgba.c', dependencies: libgtk_dep) test('gdk/rgba', test_rgba) test_seat = executable('seat', 'seat.c', dependencies: libgtk_dep)