--- a/configure.ac +++ b/configure.ac @@ -140,6 +140,16 @@ dnl = GTK Doc Check ==================== GTK_DOC_CHECK([1.8]) +dnl = GTK+ Ubuntu Private API ================================================= + +AC_ARG_ENABLE([ubuntu-private-api], + [AS_HELP_STRING([--enable-ubuntu-private-api=@<:@no/yes@:>@], + [Use Ubuntu GTK+ Private API @<:@default=yes@:>@])], + [enable_ubuntu_private_api="$enableval"], + [enable_ubuntu_private_api=yes]) + +AM_CONDITIONAL([USE_UBUNTU_PRIVATE_API], [test "x$enable_ubuntu_private_api" != xno]) + dnl =========================================================================== AC_CONFIG_FILES([ @@ -160,6 +170,7 @@ echo "" echo " Prefix : ${prefix}" echo " gcov : ${use_gcov}" echo " introspection: ${enable_introspection}" +echo " ubuntu gtk+ : ${enable_ubuntu_private_api}" echo "" echo " Documentation: ${enable_gtk_doc}" echo "" --- a/src/idomenuitemfactory.c +++ b/src/idomenuitemfactory.c @@ -17,6 +17,7 @@ * Lars Uebernickel */ +#ifdef USE_UBUNTU_PRIVATE_API #include #include @@ -117,3 +118,4 @@ static void ido_menu_item_factory_init (IdoMenuItemFactory *factory) { } +#endif --- a/src/libido.c +++ b/src/libido.c @@ -28,9 +28,11 @@ void ido_init (void) { +#ifdef USE_UBUNTU_PRIVATE_API GType ido_menu_item_factory_get_type (void); /* make sure this extension point is registered so that gtk calls it * when finding custom menu items */ g_type_ensure (ido_menu_item_factory_get_type ()); +#endif } --- a/src/Makefile.am +++ b/src/Makefile.am @@ -68,6 +68,10 @@ AM_CPPFLAGS = \ $(MAINTAINER_CFLAGS) \ -Wall -Werror -Wextra -Wno-unused-parameter -Wno-error=deprecated-declarations +if USE_UBUNTU_PRIVATE_API +AM_CPPFLAGS += -DUSE_UBUNTU_PRIVATE_API +endif + AM_CFLAGS = \ $(COVERAGE_CFLAGS)