diff options
author | Michael Olbrich <m.olbrich@pengutronix.de> | 2020-12-03 15:27:52 +0100 |
---|---|---|
committer | Michael Olbrich <m.olbrich@pengutronix.de> | 2020-12-04 08:16:28 +0100 |
commit | c7d53b7d511e3ab698a9d8a565a1093569b769f7 (patch) | |
tree | 1d1a7ca6bab7183eec9d2bf631ac2613a7f6fbc4 | |
parent | 1f3a5cf12f75a793facd41a8409a993ab72af844 (diff) | |
download | ptxdist-c7d53b7d511e3ab698a9d8a565a1093569b769f7.tar.gz ptxdist-c7d53b7d511e3ab698a9d8a565a1093569b769f7.tar.xz |
gobject-introspection: version bump 1.56.1 -> 1.66.1
Signed-off-by: Michael Olbrich <m.olbrich@pengutronix.de>
-rw-r--r-- | patches/gobject-introspection-1.56.1/0001-don-t-build-g-ir-scanner-when-cross-compiling.patch | 119 | ||||
l--------- | patches/gobject-introspection-1.56.1/autogen.sh | 1 | ||||
-rw-r--r-- | patches/gobject-introspection-1.56.1/series | 5 | ||||
-rw-r--r-- | patches/gobject-introspection-1.66.1/0001-dumper.py-don-t-close-fds.patch (renamed from patches/gobject-introspection-1.56.1/0002-dumper.py-don-t-close-fds.patch) | 4 | ||||
-rw-r--r-- | patches/gobject-introspection-1.66.1/0002-meson-fix-building-with-Dbuild_introspection_data-fa.patch | 31 | ||||
-rw-r--r-- | patches/gobject-introspection-1.66.1/0003-HACK-don-t-build-the-python-module-when-cross-compil.patch | 46 | ||||
-rw-r--r-- | patches/gobject-introspection-1.66.1/series | 6 | ||||
-rw-r--r-- | rules/gobject-introspection.in | 2 | ||||
-rw-r--r-- | rules/gobject-introspection.make | 26 | ||||
-rw-r--r-- | rules/host-gobject-introspection.in | 1 | ||||
-rw-r--r-- | rules/host-gobject-introspection.make | 22 |
11 files changed, 112 insertions, 151 deletions
diff --git a/patches/gobject-introspection-1.56.1/0001-don-t-build-g-ir-scanner-when-cross-compiling.patch b/patches/gobject-introspection-1.56.1/0001-don-t-build-g-ir-scanner-when-cross-compiling.patch deleted file mode 100644 index a711f7780..000000000 --- a/patches/gobject-introspection-1.56.1/0001-don-t-build-g-ir-scanner-when-cross-compiling.patch +++ /dev/null @@ -1,119 +0,0 @@ -From: Michael Olbrich <m.olbrich@pengutronix.de> -Date: Mon, 28 Dec 2015 11:42:16 +0100 -Subject: [PATCH] don't build g-ir-scanner when cross-compiling - -Note: Not for upstream. It depends on host-gobject-introspection. - -Signed-off-by: Michael Olbrich <m.olbrich@pengutronix.de> ---- - Makefile-gir.am | 5 ++++- - Makefile-tools.am | 4 ++++ - Makefile.am | 2 ++ - common.mk | 10 ++++++++++ - configure.ac | 3 +++ - 5 files changed, 23 insertions(+), 1 deletion(-) - -diff --git a/Makefile-gir.am b/Makefile-gir.am -index 86ab5bf1eda4..61a540df922e 100644 ---- a/Makefile-gir.am -+++ b/Makefile-gir.am -@@ -87,7 +87,10 @@ endif - - BUILT_GIRSOURCES += GLib-2.0.gir - --GLib-2.0.gir: g-ir-scanner g-ir-compiler$(EXEEXT) -+if !USE_HOST_GI -+GLib-2.0.gir: g-ir-scanner -+endif -+GLib-2.0.gir: g-ir-compiler$(EXEEXT) - - gir/DBusGLib-1.0.typelib: GObject-2.0.gir - -diff --git a/Makefile-tools.am b/Makefile-tools.am -index 952937354e43..54135bffb84b 100644 ---- a/Makefile-tools.am -+++ b/Makefile-tools.am -@@ -1,15 +1,18 @@ - bin_PROGRAMS += g-ir-compiler g-ir-generate g-ir-inspect -+if !USE_HOST_GI - bin_SCRIPTS += g-ir-scanner g-ir-annotation-tool - - if BUILD_DOCTOOL - bin_SCRIPTS += g-ir-doc-tool - endif -+endif - - EXTRA_DIST += \ - tools/g-ir-tool-template.in - - TOOL_SUBSTITUTIONS = -e s,@libdir\@,$(libdir), -e s,@datarootdir\@,$(datarootdir), -e s,@PYTHON\@,$(PYTHON), - -+if !USE_HOST_GI - g-ir-scanner: tools/g-ir-tool-template.in _giscanner.la Makefile - $(AM_V_GEN) sed $(TOOL_SUBSTITUTIONS) -e s,@TOOL_MODULE\@,scannermain, -e s,@TOOL_FUNCTION\@,scanner_main, $< > $@.tmp && mv $@.tmp $@ - @chmod a+x $@ -@@ -21,6 +24,7 @@ g-ir-annotation-tool: tools/g-ir-tool-template.in _giscanner.la Makefile - g-ir-doc-tool: tools/g-ir-tool-template.in _giscanner.la Makefile - $(AM_V_GEN) sed $(TOOL_SUBSTITUTIONS) -e s,@TOOL_MODULE\@,docmain, -e s,@TOOL_FUNCTION\@,doc_main, $< > $@.tmp && mv $@.tmp $@ - @chmod a+x $@ -+endif - - g_ir_compiler_SOURCES = tools/compiler.c - g_ir_compiler_CPPFLAGS = -DGIREPO_DEFAULT_SEARCH_PATH="\"$(libdir)\"" \ -diff --git a/Makefile.am b/Makefile.am -index dafea3846a30..0fcea1988378 100644 ---- a/Makefile.am -+++ b/Makefile.am -@@ -19,7 +19,9 @@ include Makefile.introspection - - include Makefile-cmph.am - include Makefile-girepository.am -+if !USE_HOST_GI - include Makefile-giscanner.am -+endif - include Makefile-examples.am - include Makefile-gir.am - include Makefile-tools.am -diff --git a/common.mk b/common.mk -index b778f7aaf955..70872cd3d53d 100644 ---- a/common.mk -+++ b/common.mk -@@ -6,6 +6,15 @@ - # module itself. - # - -+if USE_HOST_GI -+INTROSPECTION_SCANNER = \ -+ env PATH="$(PATH)" \ -+ LPATH=.libs \ -+ CC="$(CC)" \ -+ PYTHONPATH=$(top_builddir):$(top_srcdir) \ -+ UNINSTALLED_INTROSPECTION_BUILDDIR=$(top_builddir) \ -+ g-ir-scanner -+else - INTROSPECTION_SCANNER = \ - env PATH=".libs:$(PATH)" \ - LPATH=.libs \ -@@ -14,6 +23,7 @@ INTROSPECTION_SCANNER = \ - UNINSTALLED_INTROSPECTION_SRCDIR=$(top_srcdir) \ - UNINSTALLED_INTROSPECTION_BUILDDIR=$(top_builddir) \ - $(top_builddir)/g-ir-scanner -+endif - - INTROSPECTION_SCANNER_ARGS = \ - --verbose \ -diff --git a/configure.ac b/configure.ac -index 2a685146292a..e57144f9df56 100644 ---- a/configure.ac -+++ b/configure.ac -@@ -273,7 +273,10 @@ case "$host" in - pyexecdir=`echo $pyexecdir | tr '\\\\' '/'` - ;; - esac -+AM_CONDITIONAL([USE_HOST_GI], [test "$cross_compiling" = yes]) -+AS_IF([test "$cross_compiling" != yes], [ - AM_CHECK_PYTHON_HEADERS(, AC_MSG_ERROR([Python headers not found])) -+]) - if test "x$os_win32" = "xyes"; then - AM_CHECK_PYTHON_LIBS(, AC_MSG_ERROR([Python libs not found. Windows requires Python modules to be explicitly linked to libpython.])) - fi diff --git a/patches/gobject-introspection-1.56.1/autogen.sh b/patches/gobject-introspection-1.56.1/autogen.sh deleted file mode 120000 index 9f8a4cb7d..000000000 --- a/patches/gobject-introspection-1.56.1/autogen.sh +++ /dev/null @@ -1 +0,0 @@ -../autogen.sh
\ No newline at end of file diff --git a/patches/gobject-introspection-1.56.1/series b/patches/gobject-introspection-1.56.1/series deleted file mode 100644 index 91226cec0..000000000 --- a/patches/gobject-introspection-1.56.1/series +++ /dev/null @@ -1,5 +0,0 @@ -# generated by git-ptx-patches -#tag:base --start-number 1 -0001-don-t-build-g-ir-scanner-when-cross-compiling.patch -0002-dumper.py-don-t-close-fds.patch -# 576e62c4608e67bc940c4ff57593a48c - git-ptx-patches magic diff --git a/patches/gobject-introspection-1.56.1/0002-dumper.py-don-t-close-fds.patch b/patches/gobject-introspection-1.66.1/0001-dumper.py-don-t-close-fds.patch index 379950902..05606e784 100644 --- a/patches/gobject-introspection-1.56.1/0002-dumper.py-don-t-close-fds.patch +++ b/patches/gobject-introspection-1.66.1/0001-dumper.py-don-t-close-fds.patch @@ -10,10 +10,10 @@ Signed-off-by: Michael Olbrich <m.olbrich@pengutronix.de> 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/giscanner/dumper.py b/giscanner/dumper.py -index 3c7220bc036a..58f62ee7a284 100644 +index e4b6ea03a301..cb3a7ad1659e 100644 --- a/giscanner/dumper.py +++ b/giscanner/dumper.py -@@ -288,7 +288,7 @@ class DumpCompiler(object): +@@ -275,7 +275,7 @@ class DumpCompiler(object): shell = utils.which(shell) args = [shell, tf_name.replace('\\', '/')] try: diff --git a/patches/gobject-introspection-1.66.1/0002-meson-fix-building-with-Dbuild_introspection_data-fa.patch b/patches/gobject-introspection-1.66.1/0002-meson-fix-building-with-Dbuild_introspection_data-fa.patch new file mode 100644 index 000000000..f788c564f --- /dev/null +++ b/patches/gobject-introspection-1.66.1/0002-meson-fix-building-with-Dbuild_introspection_data-fa.patch @@ -0,0 +1,31 @@ +From: Michael Olbrich <m.olbrich@pengutronix.de> +Date: Thu, 3 Dec 2020 15:29:01 +0100 +Subject: [PATCH] meson: fix building with -Dbuild_introspection_data=false + +Signed-off-by: Michael Olbrich <m.olbrich@pengutronix.de> +--- + meson.build | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/meson.build b/meson.build +index 14af2b17109b..8429553d483e 100644 +--- a/meson.build ++++ b/meson.build +@@ -224,7 +224,7 @@ subdir('docs') + + # The tests will also run, which is not possible if they + # were built for a different architecture. +-if not meson.is_cross_build() ++if not meson.is_cross_build() and get_option('build_introspection_data') + subdir('tests') + endif + +@@ -283,7 +283,7 @@ pkg.generate( + # FIXME: meson.override_dependency() and declare_dependency()'s variable arguments + # are new in Meson 0.54.0, older versions of Meson won't be able to use g-i as + # subproject anyway +-if meson.version().version_compare('>=0.54.0') ++if meson.version().version_compare('>=0.54.0') and get_option('build_introspection_data') + girepo_dep = declare_dependency( + sources: typelibs, + dependencies: girepo_dep, diff --git a/patches/gobject-introspection-1.66.1/0003-HACK-don-t-build-the-python-module-when-cross-compil.patch b/patches/gobject-introspection-1.66.1/0003-HACK-don-t-build-the-python-module-when-cross-compil.patch new file mode 100644 index 000000000..ae368408a --- /dev/null +++ b/patches/gobject-introspection-1.66.1/0003-HACK-don-t-build-the-python-module-when-cross-compil.patch @@ -0,0 +1,46 @@ +From: Michael Olbrich <m.olbrich@pengutronix.de> +Date: Thu, 3 Dec 2020 17:14:56 +0100 +Subject: [PATCH] HACK: don't build the python module when cross-compiling + +Signed-off-by: Michael Olbrich <m.olbrich@pengutronix.de> +--- + giscanner/meson.build | 4 ++++ + meson.build | 6 ++++-- + 2 files changed, 8 insertions(+), 2 deletions(-) + +diff --git a/giscanner/meson.build b/giscanner/meson.build +index a3b06f37b912..b6dfb7144c76 100644 +--- a/giscanner/meson.build ++++ b/giscanner/meson.build +@@ -99,6 +99,7 @@ giscanner_lib = static_library('giscanner', + dependencies: [glib_dep, gobject_dep, gio_dep, gmodule_dep], + ) + ++if not meson.is_cross_build() + # https://github.com/mesonbuild/meson/issues/4117 + if host_machine.system() == 'windows' + python_ext_dep = python.dependency() +@@ -120,3 +121,6 @@ giscanner_pymod = python.extension_module('_giscanner', ['giscannermodule.c'], + install: true, + install_dir: giscannerdir, + ) ++else ++giscanner_pymod = [] ++endif +diff --git a/meson.build b/meson.build +index 8429553d483e..ec791006b29e 100644 +--- a/meson.build ++++ b/meson.build +@@ -157,8 +157,10 @@ endif + libffi_dep = dependency('libffi', + fallback : ['libffi', 'ffi_dep']) + +-# python headers +-cc.check_header('Python.h', dependencies: [python.dependency()], required: true) ++if not meson.is_cross_build() ++ # python headers ++ cc.check_header('Python.h', dependencies: [python.dependency()], required: true) ++endif + + # cairo + cairo_option = get_option('cairo') diff --git a/patches/gobject-introspection-1.66.1/series b/patches/gobject-introspection-1.66.1/series new file mode 100644 index 000000000..1b4ae1e76 --- /dev/null +++ b/patches/gobject-introspection-1.66.1/series @@ -0,0 +1,6 @@ +# generated by git-ptx-patches +#tag:base --start-number 1 +0001-dumper.py-don-t-close-fds.patch +0002-meson-fix-building-with-Dbuild_introspection_data-fa.patch +0003-HACK-don-t-build-the-python-module-when-cross-compil.patch +# 304833ca29e000d20d22ec6022863d8c - git-ptx-patches magic diff --git a/rules/gobject-introspection.in b/rules/gobject-introspection.in index 6fc1917c7..8fdf5cc91 100644 --- a/rules/gobject-introspection.in +++ b/rules/gobject-introspection.in @@ -14,6 +14,8 @@ config GOBJECT_INTROSPECTION default GOBJECT_INTROSPECTION_HELPER select HOST_CHRPATH select HOST_GOBJECT_INTROSPECTION + select HOST_MESON + select HOST_SYSTEM_PYTHON3 select GLIB endif diff --git a/rules/gobject-introspection.make b/rules/gobject-introspection.make index fda19cd13..4da94161b 100644 --- a/rules/gobject-introspection.make +++ b/rules/gobject-introspection.make @@ -14,8 +14,8 @@ PACKAGES-$(PTXCONF_GOBJECT_INTROSPECTION) += gobject-introspection # # Paths and names # -GOBJECT_INTROSPECTION_VERSION := 1.56.1 -GOBJECT_INTROSPECTION_MD5 := 62e5f5685b8d9752fdeaf17c057d53d1 +GOBJECT_INTROSPECTION_VERSION := 1.66.1 +GOBJECT_INTROSPECTION_MD5 := f43d661d39ff52d33622cb1854aaaf76 GOBJECT_INTROSPECTION := gobject-introspection-$(GOBJECT_INTROSPECTION_VERSION) GOBJECT_INTROSPECTION_SUFFIX := tar.xz GOBJECT_INTROSPECTION_URL := $(call ptx/mirror, GNOME, gobject-introspection/$(basename $(GOBJECT_INTROSPECTION_VERSION))/$(GOBJECT_INTROSPECTION).$(GOBJECT_INTROSPECTION_SUFFIX)) @@ -28,21 +28,23 @@ GOBJECT_INTROSPECTION_LICENSE := LGPL-2.1-or-later AND GPL-2.0-or-later # ---------------------------------------------------------------------------- # -# autoconf +# meson # -GOBJECT_INTROSPECTION_CONF_TOOL := autoconf +GOBJECT_INTROSPECTION_CONF_TOOL := meson GOBJECT_INTROSPECTION_CONF_OPT := \ - $(CROSS_AUTOCONF_USR) \ - --disable-gtk-doc \ - --disable-gtk-doc-html \ - --disable-gtk-doc-pdf \ - --disable-doctool \ - --without-cairo \ - --with-python=$(SYSTEMPYTHON3) + $(CROSS_MESON_USR) \ + -Dbuild_introspection_data=true \ + -Dcairo=disabled \ + -Ddoctool=disabled \ + -Dgi_cross_binary_wrapper=$(PTXDIST_SYSROOT_CROSS)/bin/qemu-cross \ + -Dgi_cross_ldd_wrapper=$(PTXDIST_SYSROOT_CROSS)/bin/qemu/ldd \ + -Dgi_cross_use_prebuilt_gi=true \ + -Dgtk_doc=false \ + -Dpython=$(SYSTEMPYTHON3) # needed so g-ir-compiler runs in qemu GOBJECT_INTROSPECTION_MAKE_ENV = \ - GI_CROSS_LAUNCHER="$(PTXDIST_SYSROOT_CROSS)/bin/qemu-cross -E LD_LIBRARY_PATH='$(GOBJECT_INTROSPECTION_DIR)/.libs:$(QEMU_CROSS_LD_LIBRARY_PATH)'" + CROSS_LD_LIBRARY_PATH=$(GOBJECT_INTROSPECTION_DIR)-build/girepository # ---------------------------------------------------------------------------- # Install diff --git a/rules/host-gobject-introspection.in b/rules/host-gobject-introspection.in index 52e53bb80..594dfee64 100644 --- a/rules/host-gobject-introspection.in +++ b/rules/host-gobject-introspection.in @@ -3,6 +3,7 @@ config HOST_GOBJECT_INTROSPECTION tristate default y if ALLYES + select HOST_MESON select HOST_SYSTEM_PYTHON3 select HOST_SYSTEM_PYTHON3_DEV select HOST_GLIB diff --git a/rules/host-gobject-introspection.make b/rules/host-gobject-introspection.make index 5c8e4e08c..d14b9ab34 100644 --- a/rules/host-gobject-introspection.make +++ b/rules/host-gobject-introspection.make @@ -18,15 +18,14 @@ HOST_PACKAGES-$(PTXCONF_HOST_GOBJECT_INTROSPECTION) += host-gobject-introspectio # # autoconf # -HOST_GOBJECT_INTROSPECTION_CONF_TOOL := autoconf +HOST_GOBJECT_INTROSPECTION_CONF_TOOL := meson HOST_GOBJECT_INTROSPECTION_CONF_OPT := \ - $(HOST_AUTOCONF) \ - --disable-gtk-doc \ - --disable-gtk-doc-html \ - --disable-gtk-doc-pdf \ - --disable-doctool \ - --without-cairo \ - --with-python=$(SYSTEMPYTHON3) + $(HOST_MESON_OPT) \ + -Dbuild_introspection_data=false \ + -Dcairo=disabled \ + -Ddoctool=disabled \ + -Dgtk_doc=false \ + -Dpython=$(SYSTEMPYTHON3) # ---------------------------------------------------------------------------- # Install @@ -40,11 +39,10 @@ $(STATEDIR)/host-gobject-introspection.install.post: @echo 'export pkg_ldflags="$$(find -H $${pkg_dir} -name .libs -printf "-Wl,-rpath,%p ")$${pkg_ldflags}"' \ >> $(PTXDIST_SYSROOT_CROSS)/bin/g-ir-scanner @echo 'export CC=$(CROSS_CC)' >> $(PTXDIST_SYSROOT_CROSS)/bin/g-ir-scanner - @echo 'export GI_CROSS_LAUNCHER="$(PTXDIST_SYSROOT_CROSS)/bin/qemu-cross"' \ - >> $(PTXDIST_SYSROOT_CROSS)/bin/g-ir-scanner - @echo 'PATH="$(PTXDIST_SYSROOT_CROSS)/bin/qemu:$$PATH"' \ - >> $(PTXDIST_SYSROOT_CROSS)/bin/g-ir-scanner @echo 'exec "$(PTXDIST_SYSROOT_HOST)/bin/g-ir-scanner" \ + --use-binary-wrapper="$(PTXDIST_SYSROOT_CROSS)/bin/qemu-cross" \ + --use-ldd-wrapper="$(PTXDIST_SYSROOT_CROSS)/bin/qemu/ldd" \ + --add-include-path=${PTXDIST_SYSROOT_TARGET}/usr/share/gir-1.0 \ "$${@}"' >> $(PTXDIST_SYSROOT_CROSS)/bin/g-ir-scanner @chmod +x $(PTXDIST_SYSROOT_CROSS)/bin/g-ir-scanner |