From 44cf8ec67278bd1ab6c7f83a9993f7a5686a9541 Mon Sep 17 00:00:00 2001 From: Daniel Baumann Date: Sat, 9 Mar 2024 01:06:44 +0100 Subject: Adding upstream version 0.23.93. Signed-off-by: Daniel Baumann --- gtk/Makefile.am | 88 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 88 insertions(+) create mode 100644 gtk/Makefile.am (limited to 'gtk/Makefile.am') diff --git a/gtk/Makefile.am b/gtk/Makefile.am new file mode 100644 index 0000000..8744682 --- /dev/null +++ b/gtk/Makefile.am @@ -0,0 +1,88 @@ +lib_LTLIBRARIES = libzbargtk.la +libzbargtk_la_CPPFLAGS = $(GTK_CFLAGS) $(AM_CPPFLAGS) +libzbargtk_la_LDFLAGS = -version-info $(ZGTK_LIB_VERSION) \ + -export-symbols-regex "^zbar_.*" $(AM_LDFLAGS) -no-undefined +libzbargtk_la_LIBADD = $(GTK_LIBS) ../zbar/libzbar.la $(AM_LIBADD) +libzbargtk_la_DEPENDENCIES = ../zbar/libzbar.la + + +if HAVE_X +libzbargtk_la_CPPFLAGS += -DHAVE_X +endif + +dist_libzbargtk_la_SOURCES = zbargtk.c zbargtkprivate.h +nodist_libzbargtk_la_SOURCES = zbarmarshal.c zbarmarshal.h +BUILT_SOURCES = zbarmarshal.c zbarmarshal.h +CLEANFILES = $(BUILT_SOURCES) +EXTRA_DIST = zbarmarshal.list + +%.h: %.list + $(GLIB_GENMARSHAL) --g-fatal-warnings --prefix=zbar_marshal \ + --header $^ > $@ + +%.c: %.list + $(GLIB_GENMARSHAL) --g-fatal-warnings --prefix=zbar_marshal \ + --body $^ > $@ + +../zbar/libzbar.la: + $(MAKE) -C $(abs_top_srcdir) zbar/libzbar.la + +../zbarcam/zbarcam-gtk: libzbargtk.la + $(MAKE) -C $(abs_top_srcdir) zbarcam/zbarcam-gtk + +# GObject Introspection + +include $(INTROSPECTION_MAKEFILE) + + + +# NOTE: +# +# At least with Fedora 30 builds using mock (e. g. inside a chroot and +# having the build dir different than the source dir, using +# gobject-introspection-1.60, there is a bug with GIR file generation: +# sometimes, g-ir-scanner is not capable of producing a C file that would +# be loading libzbargtk.so.0. So, it fails with: +# +# error while loading shared libraries: libzbargtk.so.0: +# cannot open shared object file: No such file or directory +# +# I suspect that it has something to do with libtool-2.4.6. + +# The fix is hackish, but it should be safe: it should manually include +# the paths where libtool generate those at INTROSPECTION_SCANNER_ARGS. +# +# It should be noticed that, this shouldn't affect a non-buggy environment, +# so, better to be safe than sorry. +INTROSPECTION_SCANNER_ARGS = --warn-all \ + --symbol-prefix=zbar \ + --identifier-prefix=zbar_ \ + --identifier-prefix=ZBar \ + --library-path=$(abs_builddir)/.libs \ + --library-path=$(abs_top_builddir)/zbar/.libs + +# Just in case +INTROSPECTION_SCANNER_ENV = GI_SCANNER_DISABLE_CACHE=yes + +INTROSPECTION_GIRS = ZBar-1.0.gir + +ZBar_1_0_gir_NAMESPACE = ZBar +ZBar_1_0_gir_VERSION = 1.0 +ZBar_1_0_gir_LIBS = $(lib_LTLIBRARIES) $(top_builddir)/zbar/libzbar.la +ZBar_1_0_gir_FILES = $(top_builddir)/include/zbar/zbargtk.h zbargtk.c +ZBar_1_0_gir_INCLUDES = Gtk-@GTK_VERSION_MAJOR@ Gdk-@GTK_VERSION_MAJOR@ +ZBar_1_0_gir_CFLAGS = $(libzbargtk_la_CPPFLAGS) + +# This may generate some warnings, but it is needed for "make dist" +ZBar-1.0.gir: $(lib_LTLIBRARIES) + +if HAVE_INTROSPECTION + +girdir = $(INTROSPECTION_GIRDIR) +dist_gir_DATA = $(INTROSPECTION_GIRS) +typelibdir = $(INTROSPECTION_TYPELIBDIR) +typelib_DATA = ZBar-1.0.typelib + +CLEANFILES += $(dist_gir_DATA) $(typelib_DATA) + +endif -- cgit v1.2.3