diff --git a/.gitignore b/.gitignore index 86045e68..71068f1b 100644 --- a/.gitignore +++ b/.gitignore @@ -49,3 +49,5 @@ lib/xdg-app-version-macros.h xdg-app.pc lib/xdg-app-enum-types.c lib/xdg-app-enum-types.h +test-libxdg-app +XdgApp-1.0.* diff --git a/Makefile.am b/Makefile.am index e7f8df04..08ceaabc 100644 --- a/Makefile.am +++ b/Makefile.am @@ -3,6 +3,7 @@ NULL = bin_PROGRAMS = $(NULL) noinst_PROGRAMS = $(NULL) libexec_PROGRAMS = $(NULL) +CLEANFILES = $(NULL) DISTCLEANFILES= $(NULL) BUILT_SOURCES = $(NULL) diff --git a/lib/Makefile.am.inc b/lib/Makefile.am.inc index 1c1e2dbe..837eed0d 100644 --- a/lib/Makefile.am.inc +++ b/lib/Makefile.am.inc @@ -37,9 +37,7 @@ lib/xdg-app-enum-types.c: $(public_headers) lib/xdg-app-enum-types.c.template xdgappincludedir = $(includedir)/xdg-app xdgappinclude_HEADERS = $(public_headers) $(generated_public_headers) -libxdg_app_la_SOURCES = \ - $(public_headers) \ - $(generated_public_headers) \ +sources = \ lib/xdg-app.c \ lib/xdg-app-enum-types.c \ lib/xdg-app-ref.c \ @@ -50,8 +48,14 @@ libxdg_app_la_SOURCES = \ lib/xdg-app-installation.c \ $(NULL) +libxdg_app_la_SOURCES = \ + $(public_headers) \ + $(generated_public_headers) \ + $(sources) \ + $(NULL) + libxdg_app_la_CFLAGS = \ - $(HIDDEN_VISIBILITY_CFLAGS) \ + $(HIDDEN_VISIBILITY_CFLAGS) \ -DXDG_APP_COMPILATION \ -I$(top_srcdir)/lib \ -I$(top_builddir)/lib \ @@ -88,3 +92,37 @@ test_libxdg_app_LDADD = \ $(BASE_LIBS) \ libxdg-app.la \ $(NULL) + +# gobject-introspection rules +-include $(INTROSPECTION_MAKEFILE) + +INTROSPECTION_GIRS = + +if HAVE_INTROSPECTION +XdgApp-1.0.gir: libxdg-app.la Makefile + +introspected_headers = $(public_headers) +introspected_sources = $(filter-out %-private.h,$(sources)) + +XdgApp_1_0_gir_NAMESPACE = XdgApp +XdgApp_1_0_gir_VERSION = 1.0 +XdgApp_1_0_gir_LIBS = libxdg-app.la +XdgApp_1_0_gir_FILES = $(introspected_headers) $(introspected_sources) +XdgApp_1_0_gir_CFLAGS = $(libxdg_app_la_CFLAGS) +XdgApp_1_0_gir_INCLUDES = GObject-2.0 Gio-2.0 +XdgApp_1_0_gir_SCANNERFLAGS = \ + --warn-all \ + --c-include='xdg-app.h' \ + --pkg-export=xdg-app + +INTROSPECTION_GIRS += XdgApp-1.0.gir + +girdir = $(datadir)/gir-1.0 +nodist_gir_DATA = $(INTROSPECTION_GIRS) +CLEANFILES += $(nodist_gir_DATA) + +typelibdir = $(libdir)/girepository-1.0 +nodist_typelib_DATA = $(INTROSPECTION_GIRS:.gir=.typelib) +CLEANFILES += $(nodist_typelib_DATA) + +endif # HAVE_INTROSPECTION