]> git.ipfire.org Git - thirdparty/qemu.git/commitdiff
meson: ensure dbus-display generated code is built before other units
authorMarc-André Lureau <marcandre.lureau@redhat.com>
Thu, 11 Aug 2022 11:59:40 +0000 (15:59 +0400)
committerMichael Tokarev <mjt@tls.msk.ru>
Wed, 21 Feb 2024 11:18:01 +0000 (14:18 +0300)
It's simply by luck that dbus-display header is built first before the
other units using it.

With sourceset, I can't find an easier way out than declaring an extra
dependency for dbus-display1 generate code.

Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
Reviewed-by: Daniel P. Berrangé <berrange@redhat.com>
(cherry picked from commit 1222070e772833c6875e0ca63565db12c22df39e)
Signed-off-by: Michael Tokarev <mjt@tls.msk.ru>
ui/meson.build

index c1b137bf330cff357a5d37b590cc6a26f9dc6c4b..76c6644b3f3bea5f44a6e134383b330f2f9cf5e4 100644 (file)
@@ -81,7 +81,9 @@ if dbus_display
                                           '--interface-prefix', 'org.qemu.',
                                           '--c-namespace', 'QemuDBus',
                                           '--generate-c-code', '@BASENAME@'])
-  dbus_ss.add(when: [gio, pixman, opengl, gbm],
+  dbus_display1_lib = static_library('dbus-display1', dbus_display1, dependencies: gio)
+  dbus_display1_dep = declare_dependency(link_with: dbus_display1_lib, include_directories: include_directories('.'))
+  dbus_ss.add(when: [gio, pixman, opengl, gbm, dbus_display1_dep],
               if_true: [files(
                 'dbus-chardev.c',
                 'dbus-clipboard.c',
@@ -89,7 +91,7 @@ if dbus_display
                 'dbus-error.c',
                 'dbus-listener.c',
                 'dbus.c',
-              ), dbus_display1])
+              )])
   ui_modules += {'dbus' : dbus_ss}
 endif