From 9e9b24cdeff07e6d8908ad3e4f74555c24521d2e Mon Sep 17 00:00:00 2001 From: lukefromdc Date: Mon, 19 Jan 2026 22:23:16 -0500 Subject: plugins: Support building against newer libpeas1 versions This commit allows and requires building against libpeas1 versions that contain the fix for gobject-introspection 1.80 or later --- src/eom-plugin-engine.c | 20 ++++++++++++++++++++ src/main.c | 8 ++++++++ 2 files changed, 28 insertions(+) (limited to 'src') diff --git a/src/eom-plugin-engine.c b/src/eom-plugin-engine.c index dc434f2..5b93de3 100644 --- a/src/eom-plugin-engine.c +++ b/src/eom-plugin-engine.c @@ -34,7 +34,11 @@ #include #include #include +#ifdef HAVE_GIREPOSITORY_2 +#include +#else #include +#endif #define USER_EOM_PLUGINS_LOCATION "plugins/" @@ -87,25 +91,41 @@ eom_plugin_engine_new (void) private_path = g_build_filename (LIBDIR, "girepository-1.0", NULL); /* This should be moved to libpeas */ +#ifdef HAVE_GIREPOSITORY_2 + if (gi_repository_require (gi_repository_dup_default (), + "Peas", "1.0", 0, &error) == NULL) +#else if (g_irepository_require (g_irepository_get_default (), "Peas", "1.0", 0, &error) == NULL) +#endif { g_warning ("Error loading Peas typelib: %s\n", error->message); g_clear_error (&error); } +#ifdef HAVE_GIREPOSITORY_2 + if (gi_repository_require (gi_repository_dup_default (), + "PeasGtk", "1.0", 0, &error) == NULL) +#else if (g_irepository_require (g_irepository_get_default (), "PeasGtk", "1.0", 0, &error) == NULL) +#endif { g_warning ("Error loading PeasGtk typelib: %s\n", error->message); g_clear_error (&error); } +#ifdef HAVE_GIREPOSITORY_2 + if (gi_repository_require_private (gi_repository_dup_default (), + private_path, "Eom", "1.0", 0, + &error) == NULL) +#else if (g_irepository_require_private (g_irepository_get_default (), private_path, "Eom", "1.0", 0, &error) == NULL) +#endif { g_warning ("Error loading Eom typelib: %s\n", error->message); diff --git a/src/main.c b/src/main.c index 94487d8..f11618d 100644 --- a/src/main.c +++ b/src/main.c @@ -27,8 +27,12 @@ #include "config.h" #endif #ifdef HAVE_INTROSPECTION +#ifdef HAVE_GIREPOSITORY_2 +#include +#else #include #endif +#endif #include "eom-session.h" #include "eom-debug.h" @@ -116,7 +120,11 @@ main (int argc, char **argv) * Using gtk_get_option_group here initializes gtk during parsing */ g_option_context_add_group (ctx, gtk_get_option_group (TRUE)); #ifdef HAVE_INTROSPECTION +#ifdef HAVE_GIREPOSITORY_2 + g_option_context_add_group (ctx, gi_repository_get_option_group ()); +#else g_option_context_add_group (ctx, g_irepository_get_option_group ()); +#endif #endif if (!g_option_context_parse (ctx, &argc, &argv, &error)) { -- cgit v1.2.1