Build using Meson
This commit is contained in:
		
							
								
								
									
										4
									
								
								debian/changelog
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										4
									
								
								debian/changelog
									
									
									
									
										vendored
									
									
								
							@ -7,6 +7,10 @@ gtk+3.0 (3.24.35-1) UNRELEASED; urgency=medium
 | 
				
			|||||||
  * d/p/Flush-drawable-surface-when-getting-a-pixbuf.patch:
 | 
					  * d/p/Flush-drawable-surface-when-getting-a-pixbuf.patch:
 | 
				
			||||||
    Add post-release fix from upstream to avoid an assertion failure in
 | 
					    Add post-release fix from upstream to avoid an assertion failure in
 | 
				
			||||||
    gnome-screenshot and epiphany
 | 
					    gnome-screenshot and epiphany
 | 
				
			||||||
 | 
					  * d/rules, d/run-tests.sh: Build using Meson
 | 
				
			||||||
 | 
					  * d/p/Disable-accessibility-dump-aka-a11ytests-test.patch,
 | 
				
			||||||
 | 
					    d/p/testsuite-Allow-reftest-output-directory-to-be-forced-via.patch:
 | 
				
			||||||
 | 
					    Drop patches that are not needed when building with Meson
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 -- Simon McVittie <smcv@debian.org>  Wed, 23 Nov 2022 15:21:00 +0000
 | 
					 -- Simon McVittie <smcv@debian.org>  Wed, 23 Nov 2022 15:21:00 +0000
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
				
			|||||||
							
								
								
									
										2
									
								
								debian/control
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										2
									
								
								debian/control
									
									
									
									
										vendored
									
									
								
							@ -43,6 +43,8 @@ Build-Depends: adwaita-icon-theme <!nocheck>,
 | 
				
			|||||||
               libxkbfile-dev,
 | 
					               libxkbfile-dev,
 | 
				
			||||||
               libxml2-utils,
 | 
					               libxml2-utils,
 | 
				
			||||||
               libxrandr-dev (>= 2:1.5.0),
 | 
					               libxrandr-dev (>= 2:1.5.0),
 | 
				
			||||||
 | 
					               meson (>= 0.48.0),
 | 
				
			||||||
 | 
					               ninja-build,
 | 
				
			||||||
               pkg-config,
 | 
					               pkg-config,
 | 
				
			||||||
               sassc,
 | 
					               sassc,
 | 
				
			||||||
               wayland-protocols (>= 1.17) [linux-any],
 | 
					               wayland-protocols (>= 1.17) [linux-any],
 | 
				
			||||||
 | 
				
			|||||||
							
								
								
									
										2
									
								
								debian/control.in
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										2
									
								
								debian/control.in
									
									
									
									
										vendored
									
									
								
							@ -43,6 +43,8 @@ Build-Depends: adwaita-icon-theme <!nocheck>,
 | 
				
			|||||||
               libxkbfile-dev,
 | 
					               libxkbfile-dev,
 | 
				
			||||||
               libxml2-utils,
 | 
					               libxml2-utils,
 | 
				
			||||||
               libxrandr-dev (>= 2:1.5.0),
 | 
					               libxrandr-dev (>= 2:1.5.0),
 | 
				
			||||||
 | 
					               meson (>= 0.48.0),
 | 
				
			||||||
 | 
					               ninja-build,
 | 
				
			||||||
               pkg-config,
 | 
					               pkg-config,
 | 
				
			||||||
               sassc,
 | 
					               sassc,
 | 
				
			||||||
               wayland-protocols (>= 1.17) [linux-any],
 | 
					               wayland-protocols (>= 1.17) [linux-any],
 | 
				
			||||||
 | 
				
			|||||||
@ -1,34 +0,0 @@
 | 
				
			|||||||
From: Simon McVittie <smcv@debian.org>
 | 
					 | 
				
			||||||
Date: Wed, 17 Jul 2019 17:20:23 +0100
 | 
					 | 
				
			||||||
Subject: Disable accessibility-dump (aka a11ytests) test
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
This test seems to be unreliable, with its results depending on
 | 
					 | 
				
			||||||
unknown environmental factors. Upstream disable it for CI purposes,
 | 
					 | 
				
			||||||
so we should probably do the same.
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
Forwarded: no
 | 
					 | 
				
			||||||
---
 | 
					 | 
				
			||||||
 testsuite/a11y/Makefile.am | 3 ---
 | 
					 | 
				
			||||||
 1 file changed, 3 deletions(-)
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
diff --git a/testsuite/a11y/Makefile.am b/testsuite/a11y/Makefile.am
 | 
					 | 
				
			||||||
index 73519e9..9b475b4 100644
 | 
					 | 
				
			||||||
--- a/testsuite/a11y/Makefile.am
 | 
					 | 
				
			||||||
+++ b/testsuite/a11y/Makefile.am
 | 
					 | 
				
			||||||
@@ -28,8 +28,6 @@ TESTS_ENVIRONMENT = 			\
 | 
					 | 
				
			||||||
 	GTK_CSD=1			\
 | 
					 | 
				
			||||||
 	G_ENABLE_DIAGNOSTIC=0
 | 
					 | 
				
			||||||
 
 | 
					 | 
				
			||||||
-TEST_PROGS += accessibility-dump
 | 
					 | 
				
			||||||
-
 | 
					 | 
				
			||||||
 TEST_PROGS += tree-performance
 | 
					 | 
				
			||||||
 
 | 
					 | 
				
			||||||
 TEST_PROGS += text
 | 
					 | 
				
			||||||
@@ -89,7 +87,6 @@ testdata = \
 | 
					 | 
				
			||||||
 	$(NULL)
 | 
					 | 
				
			||||||
 
 | 
					 | 
				
			||||||
 test_in_files = \
 | 
					 | 
				
			||||||
-	a11ytests.test.in \
 | 
					 | 
				
			||||||
 	a11ychildren.test.in \
 | 
					 | 
				
			||||||
 	a11ytree.test.in \
 | 
					 | 
				
			||||||
 	a11yvalue.test.in \
 | 
					 | 
				
			||||||
							
								
								
									
										2
									
								
								debian/patches/series
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										2
									
								
								debian/patches/series
									
									
									
									
										vendored
									
									
								
							@ -3,7 +3,5 @@ Flush-drawable-surface-when-getting-a-pixbuf.patch
 | 
				
			|||||||
016_no_offscreen_widgets_grabbing.patch
 | 
					016_no_offscreen_widgets_grabbing.patch
 | 
				
			||||||
017_no_offscreen_device_grabbing.patch
 | 
					017_no_offscreen_device_grabbing.patch
 | 
				
			||||||
060_ignore-random-icons.patch
 | 
					060_ignore-random-icons.patch
 | 
				
			||||||
Disable-accessibility-dump-aka-a11ytests-test.patch
 | 
					 | 
				
			||||||
reftest_compare_surfaces-Report-how-much-the-images-diffe.patch
 | 
					reftest_compare_surfaces-Report-how-much-the-images-diffe.patch
 | 
				
			||||||
reftests-Allow-minor-differences-to-be-tolerated.patch
 | 
					reftests-Allow-minor-differences-to-be-tolerated.patch
 | 
				
			||||||
testsuite-Allow-reftest-output-directory-to-be-forced-via.patch
 | 
					 | 
				
			||||||
 | 
				
			|||||||
@ -1,30 +0,0 @@
 | 
				
			|||||||
From: Simon McVittie <smcv@debian.org>
 | 
					 | 
				
			||||||
Date: Sun, 21 Aug 2022 10:45:03 +0100
 | 
					 | 
				
			||||||
Subject: testsuite: Allow reftest output directory to be forced via
 | 
					 | 
				
			||||||
 environment
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
On a buildd, we don't want this going into /tmp where we won't find it.
 | 
					 | 
				
			||||||
Building with Meson wouldn't need this, but we're currently building
 | 
					 | 
				
			||||||
with Autotools and I don't want to change more parameters at once than
 | 
					 | 
				
			||||||
I have to.
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
Forwarded: not-needed, the Meson build doesn't need this
 | 
					 | 
				
			||||||
---
 | 
					 | 
				
			||||||
 testsuite/reftests/gtk-reftest.c | 4 ++++
 | 
					 | 
				
			||||||
 1 file changed, 4 insertions(+)
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
diff --git a/testsuite/reftests/gtk-reftest.c b/testsuite/reftests/gtk-reftest.c
 | 
					 | 
				
			||||||
index e526bc8..1645d8b 100644
 | 
					 | 
				
			||||||
--- a/testsuite/reftests/gtk-reftest.c
 | 
					 | 
				
			||||||
+++ b/testsuite/reftests/gtk-reftest.c
 | 
					 | 
				
			||||||
@@ -109,6 +109,10 @@ get_output_dir (void)
 | 
					 | 
				
			||||||
       output_dir = g_file_get_path (file);
 | 
					 | 
				
			||||||
       g_object_unref (file);
 | 
					 | 
				
			||||||
     }
 | 
					 | 
				
			||||||
+  else if (g_getenv ("REFTEST_OUTPUT_DIR") != NULL)
 | 
					 | 
				
			||||||
+    {
 | 
					 | 
				
			||||||
+      output_dir = g_getenv ("REFTEST_OUTPUT_DIR");
 | 
					 | 
				
			||||||
+    }
 | 
					 | 
				
			||||||
   else
 | 
					 | 
				
			||||||
     {
 | 
					 | 
				
			||||||
       output_dir = g_get_tmp_dir ();
 | 
					 | 
				
			||||||
							
								
								
									
										73
									
								
								debian/rules
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										73
									
								
								debian/rules
									
									
									
									
										vendored
									
									
								
							@ -57,8 +57,6 @@ unexport XDG_CACHE_HOME
 | 
				
			|||||||
unexport XDG_CONFIG_DIRS
 | 
					unexport XDG_CONFIG_DIRS
 | 
				
			||||||
unexport XDG_CONFIG_HOME
 | 
					unexport XDG_CONFIG_HOME
 | 
				
			||||||
unexport XDG_DATA_HOME
 | 
					unexport XDG_DATA_HOME
 | 
				
			||||||
# Get failing tests' stdout/err so we have some information when a build fails
 | 
					 | 
				
			||||||
export VERBOSE=1
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
# macro computing the list of 'debian/<pkg>.*" files which have a
 | 
					# macro computing the list of 'debian/<pkg>.*" files which have a
 | 
				
			||||||
# corresponding ".in" file; pass the list of packages in $(1)
 | 
					# corresponding ".in" file; pass the list of packages in $(1)
 | 
				
			||||||
@ -90,60 +88,51 @@ debian/%: debian/%.in
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
configure_flags_common = \
 | 
					configure_flags_common = \
 | 
				
			||||||
	--libdir=/$(LIBDIR) \
 | 
						--libdir=/$(LIBDIR) \
 | 
				
			||||||
	--enable-test-print-backend
 | 
						-Dx11_backend=true \
 | 
				
			||||||
 | 
						$(NULL)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
configure_flags_deb = \
 | 
					configure_flags_deb = \
 | 
				
			||||||
	--enable-broadway-backend \
 | 
						--default-library=shared \
 | 
				
			||||||
	--enable-x11-backend \
 | 
						-Dbroadway_backend=true \
 | 
				
			||||||
	--enable-gtk-doc \
 | 
						-Dgtk_doc=true \
 | 
				
			||||||
	--enable-man \
 | 
						-Dinstalled_tests=true \
 | 
				
			||||||
	--enable-shared \
 | 
						-Dintrospection=true \
 | 
				
			||||||
	--enable-introspection \
 | 
						-Dman=true \
 | 
				
			||||||
	--disable-static \
 | 
						-Dprint_backends=cups,file,lpr,test \
 | 
				
			||||||
	--enable-installed-tests
 | 
						$(NULL)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
ifeq (,$(filter stage1,$(DEB_BUILD_PROFILES)))
 | 
					ifeq (,$(filter stage1,$(DEB_BUILD_PROFILES)))
 | 
				
			||||||
configure_flags_deb += --enable-colord
 | 
					configure_flags_deb += -Dcolord=yes
 | 
				
			||||||
else
 | 
					else
 | 
				
			||||||
configure_flags_deb += --disable-colord
 | 
					configure_flags_deb += -Dcolord=no
 | 
				
			||||||
endif
 | 
					endif
 | 
				
			||||||
 | 
					
 | 
				
			||||||
ifeq (linux,$(DEB_HOST_ARCH_OS))
 | 
					ifeq (linux,$(DEB_HOST_ARCH_OS))
 | 
				
			||||||
configure_flags_deb += --enable-wayland-backend
 | 
					configure_flags_deb += -Dwayland_backend=true
 | 
				
			||||||
else
 | 
					else
 | 
				
			||||||
configure_flags_deb += --disable-wayland-backend
 | 
					configure_flags_deb += -Dwayland_backend=false
 | 
				
			||||||
endif
 | 
					endif
 | 
				
			||||||
 | 
					
 | 
				
			||||||
ifeq ($(filter %-doc,$(built_binaries)),)
 | 
					ifeq ($(filter %-doc,$(built_binaries)),)
 | 
				
			||||||
configure_flags_deb += --disable-gtk-doc --disable-man
 | 
					configure_flags_deb += -Dgtk_doc=false
 | 
				
			||||||
 | 
					else
 | 
				
			||||||
 | 
					configure_flags_deb += -Dgtk_doc=true
 | 
				
			||||||
endif
 | 
					endif
 | 
				
			||||||
 | 
					
 | 
				
			||||||
configure_flags_udeb = \
 | 
					configure_flags_udeb = \
 | 
				
			||||||
	--disable-broadway-backend \
 | 
						-Dbroadway_backend=false \
 | 
				
			||||||
	--disable-wayland-backend \
 | 
						-Dcolord=no \
 | 
				
			||||||
	--enable-x11-backend \
 | 
						-Dgtk_doc=false \
 | 
				
			||||||
	--disable-introspection \
 | 
						-Dintrospection=false \
 | 
				
			||||||
	--disable-colord \
 | 
						-Dman=false \
 | 
				
			||||||
	--disable-xcomposite \
 | 
						-Dprint_backends=file \
 | 
				
			||||||
	--disable-xdamage \
 | 
						-Dwayland_backend=false \
 | 
				
			||||||
	--disable-xfixes \
 | 
					 | 
				
			||||||
	--disable-xrandr
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
%:
 | 
					 | 
				
			||||||
	dh $@ --buildsystem=autoconf
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
fuzzy_reftests = \
 | 
					 | 
				
			||||||
	$(NULL)
 | 
						$(NULL)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
# See testsuite/reftests/meson.build
 | 
					%:
 | 
				
			||||||
ignore_reftests = \
 | 
						dh $@ --buildsystem=meson
 | 
				
			||||||
	button-wrapping \
 | 
					
 | 
				
			||||||
	cellrenderer-pixbuf-stock-rtl \
 | 
					fuzzy_reftests = \
 | 
				
			||||||
	label-sizing \
 | 
					 | 
				
			||||||
	label-wrap-justify \
 | 
					 | 
				
			||||||
	quit-mnemonic \
 | 
					 | 
				
			||||||
	symbolic-icon-translucent-color \
 | 
					 | 
				
			||||||
	window-height-for-width \
 | 
					 | 
				
			||||||
	$(NULL)
 | 
						$(NULL)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
# Debian-specific
 | 
					# Debian-specific
 | 
				
			||||||
@ -206,7 +195,7 @@ rebuild-emoji:
 | 
				
			|||||||
	done
 | 
						done
 | 
				
			||||||
 | 
					
 | 
				
			||||||
override_dh_autoreconf:
 | 
					override_dh_autoreconf:
 | 
				
			||||||
	NOCONFIGURE=true dh_autoreconf ./autogen.sh
 | 
						: # Do nothing, we're using Meson
 | 
				
			||||||
 | 
					
 | 
				
			||||||
override_dh_auto_configure: debian/control
 | 
					override_dh_auto_configure: debian/control
 | 
				
			||||||
	dh_auto_configure \
 | 
						dh_auto_configure \
 | 
				
			||||||
@ -246,13 +235,12 @@ ifeq (,$(filter nocheck,$(DEB_BUILD_OPTIONS)))
 | 
				
			|||||||
		FUZZY_REFTESTS="$(fuzzy_reftests)" \
 | 
							FUZZY_REFTESTS="$(fuzzy_reftests)" \
 | 
				
			||||||
		IGNORE_REFTESTS="$(ignore_reftests)" \
 | 
							IGNORE_REFTESTS="$(ignore_reftests)" \
 | 
				
			||||||
		XFAIL_REFTESTS="$(xfail_reftests)" \
 | 
							XFAIL_REFTESTS="$(xfail_reftests)" \
 | 
				
			||||||
	debian/run-tests.sh
 | 
						debian/run-tests.sh --timeout-multiplier 4
 | 
				
			||||||
endif
 | 
					endif
 | 
				
			||||||
endif
 | 
					endif
 | 
				
			||||||
 | 
					
 | 
				
			||||||
override_dh_auto_install:
 | 
					override_dh_auto_install:
 | 
				
			||||||
	dh_auto_install --builddirectory=debian/build/deb --destdir=debian/install/deb
 | 
						dh_auto_install --builddirectory=debian/build/deb --destdir=debian/install/deb
 | 
				
			||||||
	rm -v -f debian/install/deb/usr/libexec/installed-tests/gtk+/reftests/libreftest.la
 | 
					 | 
				
			||||||
ifneq ($(filter %-udeb,$(built_binaries)),)
 | 
					ifneq ($(filter %-udeb,$(built_binaries)),)
 | 
				
			||||||
	dh_auto_install --builddirectory=debian/build/udeb --destdir=debian/install/udeb
 | 
						dh_auto_install --builddirectory=debian/build/udeb --destdir=debian/install/udeb
 | 
				
			||||||
endif
 | 
					endif
 | 
				
			||||||
@ -266,7 +254,6 @@ override_dh_install:
 | 
				
			|||||||
override_dh_fixperms:
 | 
					override_dh_fixperms:
 | 
				
			||||||
	dh_fixperms -Xusr/libexec/installed-tests
 | 
						dh_fixperms -Xusr/libexec/installed-tests
 | 
				
			||||||
ifneq ($(filter $(EXAMPLES_PKG),$(built_binaries)),)
 | 
					ifneq ($(filter $(EXAMPLES_PKG),$(built_binaries)),)
 | 
				
			||||||
	chmod --changes u=rw,og=r debian/$(EXAMPLES_PKG)/usr/libexec/installed-tests/*/*/*.so
 | 
					 | 
				
			||||||
	chmod --recursive --changes a+rX,u+w,og-w debian/$(EXAMPLES_PKG)/usr/libexec/installed-tests
 | 
						chmod --recursive --changes a+rX,u+w,og-w debian/$(EXAMPLES_PKG)/usr/libexec/installed-tests
 | 
				
			||||||
endif
 | 
					endif
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
				
			|||||||
							
								
								
									
										7
									
								
								debian/run-tests.sh
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										7
									
								
								debian/run-tests.sh
									
									
									
									
										vendored
									
									
								
							@ -42,12 +42,11 @@ for BACKEND in x11; do
 | 
				
			|||||||
        -u LD_PRELOAD \
 | 
					        -u LD_PRELOAD \
 | 
				
			||||||
        GIO_USE_VFS=local \
 | 
					        GIO_USE_VFS=local \
 | 
				
			||||||
        GIO_USE_VOLUME_MONITOR=unix \
 | 
					        GIO_USE_VOLUME_MONITOR=unix \
 | 
				
			||||||
        REFTEST_OUTPUT_DIR="$BUILDDIR/testsuite/reftests/output" \
 | 
					 | 
				
			||||||
        dbus-run-session -- \
 | 
					        dbus-run-session -- \
 | 
				
			||||||
            xvfb-run -a \
 | 
					            xvfb-run -a \
 | 
				
			||||||
                dh_auto_test --builddirectory="$BUILDDIR" -- \
 | 
					                dh_auto_test --builddirectory="$BUILDDIR" -- \
 | 
				
			||||||
                    -k check -j1 \
 | 
					                    --no-suite=gtk+-3.0:a11y \
 | 
				
			||||||
                    GTESTER="gtester -k --verbose -o gtester.xml" \
 | 
					                    "$@" \
 | 
				
			||||||
    || touch "$test_data/tests-failed"
 | 
					    || touch "$test_data/tests-failed"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    # Don't base64-encode the image results for tests that upstream
 | 
					    # Don't base64-encode the image results for tests that upstream
 | 
				
			||||||
@ -57,8 +56,6 @@ for BACKEND in x11; do
 | 
				
			|||||||
    done
 | 
					    done
 | 
				
			||||||
done
 | 
					done
 | 
				
			||||||
 | 
					
 | 
				
			||||||
# gtester unhelpfully suppresses stdout/stderr, add those to the log
 | 
					 | 
				
			||||||
find "$BUILDDIR" -name gtester.xml -print0 | xargs -0 -r head -v -n-0
 | 
					 | 
				
			||||||
# Put the images in the log as base64 since we don't have an
 | 
					# Put the images in the log as base64 since we don't have an
 | 
				
			||||||
# equivalent of AUTOPKGTEST_ARTIFACTS for buildds
 | 
					# equivalent of AUTOPKGTEST_ARTIFACTS for buildds
 | 
				
			||||||
debian/log-reftests.py
 | 
					debian/log-reftests.py
 | 
				
			||||||
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user