Name qt6-base
Description
Version
Package Base
Homepage
Maintainers ['Ubuntu Developers <ubuntu-devel-discuss@lists.ubuntu.com>']
Contributors ['Patrick Franz <deltaone@debian.org>,']
Distro-repo https://git.launchpad.net/ubuntu/+source/qt6-base/tree/?h=ubuntu/noble
Sources ['https://git.launchpad.net/ubuntu/+source/qt6-base/plain/debian/patches/../?h=ubuntu/noble', 'https://git.launchpad.net/ubuntu/+source/qt6-base/plain/debian/patches/Add-SH-detection.patch?h=ubuntu/noble', 'https://git.launchpad.net/ubuntu/+source/qt6-base/plain/debian/patches/armel-noyield.patch?h=ubuntu/noble', 'https://git.launchpad.net/ubuntu/+source/qt6-base/plain/debian/patches/build_path_embedded_qtbuildinternalsextra_cmake.patch?h=ubuntu/noble', 'https://git.launchpad.net/ubuntu/+source/qt6-base/plain/debian/patches/cross.patch?h=ubuntu/noble', 'https://git.launchpad.net/ubuntu/+source/qt6-base/plain/debian/patches/cve-2023-24607.patch?h=ubuntu/noble', 'https://git.launchpad.net/ubuntu/+source/qt6-base/plain/debian/patches/cve-2023-32762.diff?h=ubuntu/noble', 'https://git.launchpad.net/ubuntu/+source/qt6-base/plain/debian/patches/cve-2023-32763.diff?h=ubuntu/noble', 'https://git.launchpad.net/ubuntu/+source/qt6-base/plain/debian/patches/cve-2023-33285.diff?h=ubuntu/noble', 'https://git.launchpad.net/ubuntu/+source/qt6-base/plain/debian/patches/cve-2023-34410-57ba626.diff?h=ubuntu/noble', 'https://git.launchpad.net/ubuntu/+source/qt6-base/plain/debian/patches/cve-2023-34410-ada2c57.diff?h=ubuntu/noble', 'https://git.launchpad.net/ubuntu/+source/qt6-base/plain/debian/patches/cve-2023-37369.diff?h=ubuntu/noble', 'https://git.launchpad.net/ubuntu/+source/qt6-base/plain/debian/patches/cve-2023-51714.diff?h=ubuntu/noble', 'https://git.launchpad.net/ubuntu/+source/qt6-base/plain/debian/patches/force_shared_libzstd.patch?h=ubuntu/noble', 'https://git.launchpad.net/ubuntu/+source/qt6-base/plain/debian/patches/forkfd_grow_stack_upwards_on_hppa.patch?h=ubuntu/noble', 'https://git.launchpad.net/ubuntu/+source/qt6-base/plain/debian/patches/libxkbcommon_1.6.0.diff?h=ubuntu/noble', 'https://git.launchpad.net/ubuntu/+source/qt6-base/plain/debian/patches/no_htmlinfo_example.patch?h=ubuntu/noble', 'https://git.launchpad.net/ubuntu/+source/qt6-base/plain/debian/patches/remove_privacy_breaches.diff?h=ubuntu/noble', 'https://git.launchpad.net/ubuntu/+source/qt6-base/plain/debian/patches/remove_rpath_from_examples.patch?h=ubuntu/noble', 'https://git.launchpad.net/ubuntu/+source/qt6-base/plain/debian/patches/series?h=ubuntu/noble', 'https://git.launchpad.net/ubuntu/+source/qt6-base/plain/debian/patches/upstream_Add-HPPA-detection.patch?h=ubuntu/noble', 'https://git.launchpad.net/ubuntu/+source/qt6-base/plain/debian/patches/upstream_Add-M68k-detection.patch?h=ubuntu/noble', 'https://git.launchpad.net/ubuntu/+source/qt6-base/plain/debian/patches/upstream_Add-enable-Alpha-detection.patch?h=ubuntu/noble', 'https://git.launchpad.net/ubuntu/+source/qt6-base/plain/debian/watch?h=ubuntu/noble']
Dependencies []
Optional-Dependencies []
Build-Dependencies ['dpkg-dev', 'cmake', 'debhelper-compat', 'default-libmysqlclient-dev', 'dh-exec', 'firebird-dev [linux-any]', 'libatspi2.0-dev', 'libb2-dev', 'libcups2-dev', 'libdbus-1-dev', 'libdouble-conversion-dev', 'libdrm-dev [linux-any]', 'libfontconfig-dev', 'libfreetype-dev', 'libgbm-dev [linux-any]', 'libgl-dev', 'libgles-dev', 'libglib2.0-dev', 'libglu1-mesa-dev | libglu-dev', 'libgtk-3-dev', 'libharfbuzz-dev', 'libicu-dev', 'libinput-dev [linux-any]', 'libjpeg-dev', 'libkrb5-dev', 'liblttng-ust-dev [linux-any]', 'libmd4c-dev', 'libmd4c-html0-dev', 'libmtdev-dev [linux-any]', 'libpcre2-dev', 'libpng-dev', 'libpq-dev', 'libproxy-dev', 'libsctp-dev [linux-any]', 'libsqlite3-dev', 'libssl-dev', 'libsystemd-dev [linux-any]', 'libts-dev', 'libudev-dev [linux-any]', 'libvulkan-dev [linux-any]', 'libwayland-dev [linux-any]', 'libx11-dev', 'libx11-xcb-dev', 'libxcb-glx0-dev', 'libxcb-icccm4-dev', 'libxcb-image0-dev', 'libxcb-keysyms1-dev', 'libxcb-randr0-dev', 'libxcb-render-util0-dev', 'libxcb-render0-dev', 'libxcb-shape0-dev', 'libxcb-shm0-dev', 'libxcb-sync-dev', 'libxcb-util-dev', 'libxcb-xfixes0-dev', 'libxcb-xinerama0-dev', 'libxcb-xinput-dev', 'libxcb-xkb-dev', 'libxcb1-dev', 'libxext-dev', 'libxfixes-dev', 'libxi-dev', 'libxkbcommon-dev', 'libxkbcommon-x11-dev', 'libxrender-dev', 'libzstd-dev', 'ninja-build', 'pkg-config', 'pkg-kde-tools', 'qt6-base-dev', 'unixodbc-dev', 'zlib1g-dev']
Provides []
Builddate
Architecture amd64
Distro-Version noble
Licenses []
Hash
#!/usr/bin/make -f
#export DH_VERBOSE = 1

# Use already defined DEB_HOST_* variables.
include /usr/share/dpkg/architecture.mk

export DEB_BUILD_MAINT_OPTIONS = hardening=+all optimize=+lto
sslpkgname := $(shell dpkg-query --show '--showformat=$${Depends}' libssl-dev | cut -d ' ' -f1)

ifneq (,$(filter libqt6sql6-ibase,$(shell dh_listpackages)))
        extra_cmake_args += -DFEATURE_sql_ibase=ON
else
        extra_cmake_args += -DFEATURE_sql_ibase=OFF
endif

ifeq ($(DEB_HOST_ARCH_OS),linux)
        extra_cmake_args += -DFEATURE_sctp=ON
else
        extra_cmake_args += -DFEATURE_sctp=OFF
endif

# cross-builds
ifneq ($(DEB_BUILD_ARCH),$(DEB_HOST_ARCH))
	extra_cmake_args += \
		-DQT_HOST_PATH=/usr \
		-DQT_HOST_PATH_CMAKE_DIR=/usr/lib/${DEB_BUILD_MULTIARCH}/cmake \
		-DQT_FORCE_BUILD_TOOLS=ON
endif

%:
	dh $@ --with pkgkde_symbolshelper --buildsystem=cmake+ninja


override_dh_auto_configure:
	dh_auto_configure -- \
		--log-level=STATUS \
		-DCMAKE_LIBRARY_PATH=$(DEB_HOST_MULTIARCH) \
		-DCMAKE_INSTALL_PREFIX=/usr \
		-DINSTALL_BINDIR=lib/qt6/bin \
		-DINSTALL_LIBDIR=lib/$(DEB_HOST_MULTIARCH) \
		-DINSTALL_LIBEXECDIR=lib/qt6/libexec \
		-DINSTALL_ARCHDATADIR=lib/$(DEB_HOST_MULTIARCH)/qt6 \
		-DINSTALL_EXAMPLESDIR=lib/$(DEB_HOST_MULTIARCH)/qt6/examples \
		-DINSTALL_DATADIR=share/qt6 \
		-DINSTALL_HOSTDATADIR=lib/$(DEB_HOST_MULTIARCH)/qt6 \
		-DINSTALL_DOCDIR=share/qt6/doc \
		-DINSTALL_SYSCONFDIR=/etc/xdg \
		-DINSTALL_INCLUDEDIR=include/$(DEB_HOST_MULTIARCH)/qt6 \
		-DINSTALL_PLUGINDIR=lib/$(DEB_HOST_MULTIARCH)/qt6/plugins \
		-DINSTALL_TRANSLATIONDIR=share/qt6/translations \
		-DINSTALL_MKSPECSDIR=lib/$(DEB_HOST_MULTIARCH)/qt6/mkspecs \
		-DINSTALL_PUBLICBINDIR=bin \
		-DQT_BUILD_EXAMPLES=ON \
		-DFEATURE_mimetype_database=OFF \
		-DFEATURE_dbus_linked=ON \
		-DFEATURE_accessibility=ON \
		-DFEATURE_doubleconversion=ON \
		-DFEATURE_glib=ON \
		-DFEATURE_icu=ON \
		-DFEATURE_pcre2=ON \
		-DFEATURE_system_pcre2=ON \
		-DFEATURE_zlib=ON \
		-DFEATURE_ssl=ON \
		-DFEATURE_libproxy=ON \
		-DFEATURE_system_proxies=ON \
		-DFEATURE_cups=ON \
		-DFEATURE_fontconfig=ON \
		-DFEATURE_freetype=ON \
		-DFEATURE_harfbuzz=ON \
		-DFEATURE_gtk=ON \
		-DFEATURE_directfb=OFF \
		-DFEATURE_sql_odbc=ON \
		-DFEATURE_sql_mysql=ON \
		-DFEATURE_sql_psql=ON \
		-DFEATURE_sql_sqlite=ON \
		-DFEATURE_system_sqlite=ON \
		-DFEATURE_jpeg=ON \
		-DFEATURE_system_jpeg=ON \
		-DFEATURE_png=ON \
		-DFEATURE_system_png=ON \
		-DFEATURE_system_libb2=ON \
		-DFEATURE_rpath=OFF \
		-DFEATURE_relocatable=OFF \
		$(extra_cmake_args)


execute_after_dh_auto_install-arch:
	# Policy ยง 10.4. Remove this if https://bugs.debian.org/904409 gets fixed.
	sed -i 's,bin/env perl,bin/perl,' debian/tmp/usr/lib/qt6/libexec/*.pl \
		debian/tmp/usr/lib/$(DEB_HOST_MULTIARCH)/qt6/mkspecs/features/data/unix/findclasslist.pl

	# Reproducible builds: remove build paths from .prl files
	sed -i -e '/^QMAKE_PRL_BUILD_DIR/d' debian/tmp/usr/lib/$(DEB_HOST_MULTIARCH)/libQt6*.prl

	# Specifies parameters to pass to the platform plugin.
	mkdir -p debian/tmp/usr/lib/$(DEB_HOST_MULTIARCH)/qt6
	sed 's/@DEB_HOST_MULTIARCH@/$(DEB_HOST_MULTIARCH)/' debian/qt.conf.in \
		> debian/tmp/usr/lib/$(DEB_HOST_MULTIARCH)/qt6/qt6.conf

	# Inject cross-wrapper for qmake6
	mkdir -p debian/tmp/usr/bin
	sed -e 's/@DEB_HOST_MULTIARCH@/$(DEB_HOST_MULTIARCH)/g' \
		-e 's/@DEB_HOST_GNU_TYPE@/$(DEB_HOST_GNU_TYPE)/g' \
		< debian/qmake-cross-wrapper.in > debian/tmp/usr/bin/$(DEB_HOST_GNU_TYPE)-qmake6
	chmod +x debian/tmp/usr/bin/$(DEB_HOST_GNU_TYPE)-qmake6

	# Fix Qt6::qmake IMPORTED_LOCATION, see https://bugs.debian.org/1030980
	sed -i 's,lib/qt6/bin/qmake,bin/$(DEB_HOST_GNU_TYPE)-qmake6,' \
		debian/tmp/usr/lib/$(DEB_HOST_MULTIARCH)/cmake/Qt6CoreTools/Qt6CoreToolsTargets-none.cmake

override_dh_auto_build-indep:
	dh_auto_build -- docs

override_dh_auto_install-indep:
	DESTDIR=$(CURDIR)/debian/tmp dh_auto_build -- install_docs
	# Remove build path from index files.
	find $(CURDIR)/debian/tmp/usr/share/qt6/doc -type f -name *.index -exec \
		sed -i 's@$(CURDIR)/@@g' {} \;

override_dh_makeshlibs:
	dh_makeshlibs -XlibQt6EglFSDeviceIntegration -XlibQt6EglFsKmsGbmSupport -XlibQt6EglFsKmsSupport -XlibQt6XcbQpa

execute_after_dh_shlibdeps-arch:
	echo libssl:Depends=$(sslpkgname) >> debian/libqt6network6.substvars