diff --git a/lib/meson.build b/lib/meson.build index c427407..a8cd16b 100644 --- a/lib/meson.build +++ b/lib/meson.build @@ -53,6 +53,8 @@ libmks_private_sources = [ ] libmks_enums = gnome.mkenums_simple('mks-enums', + body_prefix: '#include "config.h"', + decorator: '_MKS_EXTERN', sources: libmks_enum_headers, install_header: true, install_dir: libmks_headers_dir, @@ -95,6 +97,7 @@ libmks_gresources = gnome.compile_resources( 'mks-resources', 'mks.gresource.xml', c_name: 'mks', + extra_args: [ '--manual-register', ], ) libmks_generated_sources = [ @@ -151,9 +154,18 @@ pkg.generate( ) if get_option('introspection').allowed() + libmks_gir_extra_args = [ + '--c-include=libmks.h', + '--quiet', + '-DMKS_COMPILATION', + ] libmks_gir = gnome.generate_gir(libmks, - sources: libmks_sources + libmks_headers, + sources: libmks_sources + + libmks_headers + + libmks_generated_sources + + libmks_generated_headers, nsversion: api_version, + link_with: libmks, namespace: 'Mks', symbol_prefix: 'mks', identifier_prefix: 'Mks', @@ -161,7 +173,8 @@ if get_option('introspection').allowed() include_directories: libmks_include_directories, includes: ['Gio-2.0', 'Gtk-4.0'], install: true, - header: 'libmks-1.h' + header: 'libmks-1.h', + extra_args: libmks_gir_extra_args, ) if get_option('vapi') diff --git a/lib/mks-init.c b/lib/mks-init.c index cd0db47..7466a65 100644 --- a/lib/mks-init.c +++ b/lib/mks-init.c @@ -41,8 +41,6 @@ static void mks_init_gtypes (void) { - g_resources_register (mks_get_resource ()); - /* First register GTypes for QEMU IPC */ g_type_ensure (MKS_QEMU_TYPE_AUDIO); g_type_ensure (MKS_QEMU_TYPE_AUDIO_IN_LISTENER); @@ -83,6 +81,7 @@ mks_init (void) if (g_once_init_enter (&initialized)) { + mks_register_resource (); mks_init_gtypes (); g_once_init_leave (&initialized, TRUE); }