git: a3940b83e061 - main - www/wt: Revamp port and update 4.8.0 → 4.10.4

From: Vladimir Druzenko <vvd_at_FreeBSD.org>
Date: Fri, 20 Sep 2024 13:48:54 UTC
The branch main has been updated by vvd:

URL: https://cgit.FreeBSD.org/ports/commit/?id=a3940b83e061e764555a568b2c92656aa6487219

commit a3940b83e061e764555a568b2c92656aa6487219
Author:     Bram Ton <bram@cbbg.nl>
AuthorDate: 2024-09-20 13:34:43 +0000
Commit:     Vladimir Druzenko <vvd@FreeBSD.org>
CommitDate: 2024-09-20 13:34:43 +0000

    www/wt: Revamp port and update 4.8.0 → 4.10.4
    
    Release notes:
    https://www.webtoolkit.eu/wt/doc/reference/html/Releasenotes.html
    Changelogs:
    https://github.com/emweb/wt/releases/tag/4.8.1
    https://github.com/emweb/wt/releases/tag/4.8.2
    https://github.com/emweb/wt/releases/tag/4.8.3
    https://github.com/emweb/wt/releases/tag/4.9.0
    https://github.com/emweb/wt/releases/tag/4.9.1
    https://github.com/emweb/wt/releases/tag/4.9.2
    https://github.com/emweb/wt/releases/tag/4.10.0
    https://github.com/emweb/wt/releases/tag/4.10.1
    https://github.com/emweb/wt/releases/tag/4.10.2
    https://github.com/emweb/wt/releases/tag/4.10.3
    https://github.com/emweb/wt/releases/tag/4.10.4
    
    Improve port:
    - Sort options
    - Fix dependencies
    - Make all database backends default on
    - Add EXTRACT_AFTER_ARGS for reduce IO during build
    - Pet portclippy
    
    This update is a team effort between the reporter (Bram Ton), the
    maintainer (Mamadou Babai) and me.
    
    PR:             281206
    Approved by:    Mamadou Babaei <info@babaei.net> (maintainer)
---
 www/wt/Makefile                   | 147 +++++++++++++++-------------------
 www/wt/distinfo                   |   8 +-
 www/wt/files/patch-CMakeLists.txt |  45 -----------
 www/wt/pkg-plist                  | 164 +++++++++++++++++++-------------------
 4 files changed, 148 insertions(+), 216 deletions(-)

diff --git a/www/wt/Makefile b/www/wt/Makefile
index b2170bd0b178..368d46020879 100644
--- a/www/wt/Makefile
+++ b/www/wt/Makefile
@@ -1,11 +1,7 @@
 PORTNAME=	wt
-DISTVERSION=	4.8.0
-PORTREVISION=	6
+DISTVERSION=	4.10.4
 CATEGORIES=	www
 
-PATCH_SITES=	https://github.com/emweb/wt/commit/
-PATCHFILES+=	450675abc789d135e456bf42a0eb7260bf3d9cbd.diff:-p1 # haru 2.4+
-
 MAINTAINER=	info@babaei.net
 COMMENT=	Widget-centric C++ library for developing web applications
 WWW=		https://www.webtoolkit.eu/wt
@@ -14,86 +10,80 @@ LICENSE=	GPLv2
 LICENSE_FILE=	${WRKSRC}/LICENSE
 
 LIB_DEPENDS=	libpng.so:graphics/png \
-		libboost_system.so:devel/boost-libs \
+		libboost_thread.so:devel/boost-libs \
 		libGraphicsMagick.so:graphics/GraphicsMagick
 
 USES=		cmake:testing compiler:c++14-lang cpe pkgconfig ssl
+CPE_VENDOR=	emweb
 USE_GITHUB=	yes
 GH_ACCOUNT=	emweb
-CPE_VENDOR=	emweb
-USE_XORG=	x11
 USE_LDCONFIG=	yes
+USE_XORG=	x11
 
-CMAKE_ARGS=	-DCONFIGDIR:STRING=${LOCALBASE}/etc/${PORTNAME} \
+CMAKE_ARGS=	-DCONFIGDIR:STRING=${ETCDIR} \
+		-DDESTDIR:STRING=${STAGEDIR} \
+		-DDOCUMENTATION_DESTINATION:STRING=${DOCSDIR} \
+		-DEXAMPLES_DESTINATION:STRING=${EXAMPLESDIR_REL} \
 		-DGM_PREFIX:STRING=${LOCALBASE} \
-		-DEXAMPLES_DESTINATION:STRING=share/examples/${PORTNAME} \
-		-DSSL_PREFIX:STRING=/usr \
-		-DZLIB_PREFIX:STRING=/usr \
-		-DCONNECTOR_ISAPI:BOOL=OFF \
-		-DWEBUSER:STRING=www \
-		-DWEBGROUP:STRING=www \
-		-DWT_WRASTERIMAGE_IMPLEMENTATION:STRING=GraphicsMagick \
-		-DENABLE_SSL:BOOL=ON \
-		-DDESTDIR:STRING=${STAGEDIR}
-CMAKE_OFF=	BUILD_TESTS
+		-DWEBGROUP:STRING=${WWWGRP} \
+		-DWEBUSER:STRING=${WWWOWN} \
+		-DWT_WRASTERIMAGE_IMPLEMENTATION:STRING=GraphicsMagick
+CMAKE_OFF=	BUILD_EXAMPLES BUILD_TESTS ENABLE_MYSQLSERVER \
+		ENABLE_QT4 ENABLE_QT5 ENABLE_QT6
 CMAKE_TESTING_ON=	BUILD_TESTS
 
-OPTIONS_DEFINE=	\
-	DEBUG \
-	EXAMPLES \
-	RESOURCES \
-	HARU \
-	PANGO \
-	QT5 \
-	OPENGL \
-	SAML \
-	LIBWTTEST \
-	UNWIND
-OPTIONS_DEFAULT=	\
-	RESOURCES \
-	HARU \
-	PANGO \
-	OPENGL \
-	LIBWTTEST
-OPTIONS_GROUP=	CONNECTOR DBO WSTRING
-OPTIONS_SUB=	yes
+EXTRACT_AFTER_ARGS=	--exclude .gitignore \
+			--exclude ${PORTNAME}-${DISTVERSION}/.vscode \
+			--exclude ${PORTNAME}-${DISTVERSION}/fuzz \
+			--exclude ${PORTNAME}-${DISTVERSION}/jenkins \
+			--exclude ${PORTNAME}-${DISTVERSION}/migrate \
+			--exclude ${PORTNAME}-${DISTVERSION}/selenium \
+			--exclude ${PORTNAME}-${DISTVERSION}/target \
+			--no-same-owner --no-same-permissions
+
+PLIST_SUB=		VERSION=${DISTVERSION}
+PORTEXAMPLES=		*
+
+OPTIONS_DEFINE=		DEBUG EXAMPLES HARU LIBWTTEST OPENGL PANGO \
+			RESOURCES SAML THEMES UNWIND
+OPTIONS_DEFAULT=	EXAMPLES FASTCGI FIREBIRD HARU LIBWTTEST MYSQL OPENGL \
+			PANGO PGSQL RESOURCES SAML SQLITE3 THEMES WTHTTP
+OPTIONS_GROUP=		CONNECTOR DBO WSTRING
+OPTIONS_GROUP_CONNECTOR=	FASTCGI WTHTTP
+OPTIONS_GROUP_DBO=	FIREBIRD MYSQL PGSQL SQLITE3
 NO_OPTIONS_SORT=	yes
+OPTIONS_SUB=		yes
 
+CONNECTOR_DESC=		Connector
+DBO_DESC=		Wt::DBO
 EXAMPLES_DESC=		Install examples (implies SQLITE3 and WTHTTP)
-RESOURCES_DESC=		Install resources directory
+FASTCGI_DESC=		Build FastCGI connector
+FIREBIRD_DESC=		Build Wt with FirebirdSQL support
 HARU_DESC=		Enable Haru Free PDF Library
-SAML_DESC=		Build built-in SAML service provider for Wt::Auth
 LIBWTTEST_DESC=		Build Wt::Test for automated (integration/unit) tests
+MYSQL_DESC=		Build Wt with MariaDB or MySQL support
+PGSQL_DESC=		Build Wt with PostgreSQL support
+RESOURCES_DESC=		Install resources directory
+SAML_DESC=		Build built-in SAML service provider for Wt::Auth
+SQLITE3_DESC=		Build Wt with SQLite 3 support
+THEMES_DESC=		Install the source files for Wt's themes
 UNWIND_DESC=		Build Wt with stacktrace support using libunwind
-
-OPTIONS_GROUP_CONNECTOR=	FCGI WTHTTP
-OPTIONS_DEFAULT+=	FCGI WTHTTP
-CONNECTOR_DESC=		Connector
-FCGI_DESC=		Build FastCGI connector
 WTHTTP_DESC=		Build Wt stand-alone httpd connector
 
-OPTIONS_GROUP_DBO=	SQLITE3 POSTGRES FIREBIRD MYSQL
-OPTIONS_DEFAULT+=	SQLITE3
-DBO_DESC=		Wt::DBO
-SQLITE3_DESC=		Build Wt with SQLite 3 support
-POSTGRES_DESC=		Build Wt with PostgreSQL support
-FIREBIRD_DESC=		Build Wt with FirebirdSQL support
-MYSQL_DESC=		Build Wt with MariaDB or MySQL support
-
 EXAMPLES_IMPLIES=	SQLITE3 WTHTTP
 EXAMPLES_CMAKE_BOOL=	BUILD_EXAMPLES INSTALL_EXAMPLES
 
-FCGI_CMAKE_BOOL=	CONNECTOR_FCGI
-FCGI_LIB_DEPENDS=	libfcgi.so:www/fcgi \
+FASTCGI_LIB_DEPENDS=	libfcgi.so:www/fcgi \
 			libfcgi++.so:www/fcgi
-FCGI_CMAKE_ON=		-DFCGI_PREFIX:STRING=${LOCALBASE}
+FASTCGI_CMAKE_BOOL=	CONNECTOR_FCGI
+FASTCGI_CMAKE_ON=	-DFCGI_PREFIX:STRING=${LOCALBASE}
 
-FIREBIRD_CMAKE_BOOL=	ENABLE_FIREBIRD
 FIREBIRD_USES=		firebird
+FIREBIRD_CMAKE_BOOL=	ENABLE_FIREBIRD
 
-HARU_CMAKE_BOOL=	ENABLE_HARU
 HARU_LIB_DEPENDS=	libhpdf.so:print/libharu
-HARU_CMAKE_ON=	-DHARU_PREFIX:STRING=${LOCALBASE}
+HARU_CMAKE_BOOL=	ENABLE_HARU
+HARU_CMAKE_ON=		-DHARU_PREFIX:STRING=${LOCALBASE}
 
 LIBWTTEST_CMAKE_BOOL=	ENABLE_LIBWTTEST
 
@@ -102,65 +92,56 @@ MYSQL_CMAKE_BOOL=	ENABLE_MYSQL
 MYSQL_CMAKE_ON=		-DMYSQL_PREFIX:STRING=${LOCALBASE} \
 			-DENABLE_LIBWTDBO:BOOL=ON
 
-OPENGL_CMAKE_BOOL=	ENABLE_OPENGL
 OPENGL_USES=		gl xorg
-OPENGL_USE=		GL=gl,glew xorg=x11
+OPENGL_USE=		GL=opengl,glew xorg=x11
+OPENGL_CMAKE_BOOL=	ENABLE_OPENGL
 
-PANGO_CMAKE_BOOL=	ENABLE_PANGO
+PANGO_LIB_DEPENDS=	libfontconfig.so:x11-fonts/fontconfig
 PANGO_USES=		gnome
 PANGO_USE=		GNOME=pango
-PANGO_LIB_DEPENDS=	libfontconfig.so:x11-fonts/fontconfig
+PANGO_CMAKE_BOOL=	ENABLE_PANGO
 
-POSTGRES_CMAKE_BOOL=	ENABLE_POSTGRES
-POSTGRES_USES=		pgsql
-POSTGRES_CMAKE_ON=	-DPOSTGRES_PREFIX:STRING=${LOCALBASE} \
+PGSQL_USES=		pgsql
+PGSQL_CMAKE_BOOL=	ENABLE_POSTGRES
+PGSQL_CMAKE_ON=		-DPOSTGRES_PREFIX:STRING=${LOCALBASE} \
 			-DENABLE_LIBWTDBO:BOOL=ON
 
-QT5_CMAKE_BOOL=		ENABLE_QT5
-QT5_USES=		qt:5
-QT5_USE=		qt=buildtools:build,core,qmake:build
-
 RESOURCES_CMAKE_BOOL=	INSTALL_RESOURCES
 
-SAML_CMAKE_BOOL=	ENABLE_SAML
 SAML_LIB_DEPENDS=	libsaml.so:security/opensaml \
 			liblog4shib.so:devel/log4shib \
 			libxerces-c-3.2.so:textproc/xerces-c3 \
 			libxml-security-c.so:security/apache-xml-security-c \
 			libxmltooling.so:devel/xmltooling
+SAML_CMAKE_BOOL=	ENABLE_SAML
 
-SQLITE3_CMAKE_BOOL=	ENABLE_SQLITE
 SQLITE3_USES=		sqlite:3
+SQLITE3_CMAKE_BOOL=	ENABLE_SQLITE
 SQLITE3_CMAKE_ON=	-DENABLE_LIBWTDBO:BOOL=ON
 
-UNWIND_CMAKE_BOOL=	ENABLE_UNWIND
+THEMES_CMAKE_BOOL=	INSTALL_THEMES
+
 UNWIND_LIB_DEPENDS=	libunwind.so:devel/libunwind
+UNWIND_CMAKE_BOOL=	ENABLE_UNWIND
 
 WTHTTP_CMAKE_BOOL=	CONNECTOR_HTTP
 
-PORTEXAMPLES=	*
-
-PLIST_SUB=	VERSION=${DISTVERSION}
-
 .include <bsd.port.options.mk>
 
-.if ${PORT_OPTIONS:MDEBUG} || defined(WITH_DEBUG)
-WITH_DEBUG?=	yes
+.if defined(WITH_DEBUG)
 PLIST_SUB+=	DEBUG_LIBS_POSTFIX="d"
+CMAKE_ON+=	DEBUG
 .else
 PLIST_SUB+=	DEBUG_LIBS_POSTFIX=""
 .endif
 
-.if ${PORT_OPTIONS:MSQLITE3} || \
-    ${PORT_OPTIONS:MPOSTGRES} || \
-    ${PORT_OPTIONS:MMYSQL}
+.if ${PORT_OPTIONS:MMYSQL} || ${PORT_OPTIONS:MPGSQL} || ${PORT_OPTIONS:MSQLITE3}
 PLIST_SUB+=	DBO=""
 .else
 PLIST_SUB+=	DBO="@comment "
 .endif
 
 post-install:
-	@${RM} ${STAGEDIR}${ETCDIR}/wt_config.xml
 	@${MKDIR} ${STAGEDIR}${ETCDIR}
 	${INSTALL_DATA} ${BUILD_WRKSRC}/wt_config.xml \
 		${STAGEDIR}${ETCDIR}/wt_config.xml.sample
diff --git a/www/wt/distinfo b/www/wt/distinfo
index c5b84d7143e4..5c35046e9fcc 100644
--- a/www/wt/distinfo
+++ b/www/wt/distinfo
@@ -1,5 +1,3 @@
-TIMESTAMP = 1704660192
-SHA256 (emweb-wt-4.8.0_GH0.tar.gz) = e4030d8f530ec7bdd6b341a2bf31a608fb9ebcedb905155f83ec7f300a7d420d
-SIZE (emweb-wt-4.8.0_GH0.tar.gz) = 10604286
-SHA256 (450675abc789d135e456bf42a0eb7260bf3d9cbd.diff) = 8584e9e61ca6d774e6e10d89150e60f9eea717b8f9dab63742bb4fef62659df8
-SIZE (450675abc789d135e456bf42a0eb7260bf3d9cbd.diff) = 2437
+TIMESTAMP = 1724754925
+SHA256 (emweb-wt-4.10.4_GH0.tar.gz) = dd6092abe599d9254242225e801da38085847b3147c1748e1212f274398a2e9a
+SIZE (emweb-wt-4.10.4_GH0.tar.gz) = 10449928
diff --git a/www/wt/files/patch-CMakeLists.txt b/www/wt/files/patch-CMakeLists.txt
deleted file mode 100644
index d5a4d0b69d8c..000000000000
--- a/www/wt/files/patch-CMakeLists.txt
+++ /dev/null
@@ -1,45 +0,0 @@
---- CMakeLists.txt.orig	2022-08-17 14:32:16 UTC
-+++ CMakeLists.txt
-@@ -25,28 +25,28 @@ ENDIF(NOT SHARED_LIBS)
- #
- # Various things that must be configured by the user or packager ...
- #
--OPTION(BUILD_EXAMPLES "Build examples" ON)
-+OPTION(BUILD_EXAMPLES "Build examples" OFF) # OFF is a more convenient default for FreeBSD options
- OPTION(INSTALL_DOCUMENTATION "Install documentation (tutorials and reference)" OFF)
- OPTION(INSTALL_EXAMPLES "Install examples (binaries and source)" OFF)
--OPTION(INSTALL_RESOURCES "Install resources directory" ON)
-+OPTION(INSTALL_RESOURCES "Install resources directory" OFF) # OFF is a more convenient default for FreeBSD options
- OPTION(ENABLE_SSL "Enable cryptography functions, using OpenSSL" ON)
--OPTION(ENABLE_HARU "Enable Haru Free PDF Library, which is used to provide support for painting to PDF (WPdfImage)" ON)
--OPTION(ENABLE_PANGO "Enable Pango Library, which is used for improved font support (WPdfImage and WRasterImage)" ON)
-+OPTION(ENABLE_HARU "Enable Haru Free PDF Library, which is used to provide support for painting to PDF (WPdfImage)" OFF) # OFF is a more convenient default for FreeBSD options
-+OPTION(ENABLE_PANGO "Enable Pango Library, which is used for improved font support (WPdfImage and WRasterImage)" OFF) # OFF is a more convenient default for FreeBSD options
- OPTION(ENABLE_EXT "Build Wt Ext library with JavaScript-only widgets (http://extjs.com/) DEPRECATED" OFF)
--OPTION(ENABLE_SQLITE "Build SQLite3 backend for Wt::Dbo" ON)
--OPTION(ENABLE_POSTGRES "Build PostgreSQL backend for Wt::Dbo" ON)
--OPTION(ENABLE_FIREBIRD "Build FirebirdSQL backend for Wt::Dbo" ON)
--OPTION(ENABLE_MYSQL "Build mariadb/mysql backend for Wt::Dbo" ON)
--OPTION(ENABLE_MSSQLSERVER "Build Microsoft SQL Server backend for Wt::Dbo" ON)
--OPTION(ENABLE_QT4 "Build Qt4 interworking library (libwtwithqt)" ON)
-+OPTION(ENABLE_SQLITE "Build SQLite3 backend for Wt::Dbo" OFF) # OFF is a more convenient default for FreeBSD options
-+OPTION(ENABLE_POSTGRES "Build PostgreSQL backend for Wt::Dbo" OFF) # OFF is a more convenient default for FreeBSD options
-+OPTION(ENABLE_FIREBIRD "Build FirebirdSQL backend for Wt::Dbo" OFF) # OFF is a more convenient default for FreeBSD options
-+OPTION(ENABLE_MYSQL "Build mariadb/mysql backend for Wt::Dbo" OFF) # OFF is a more convenient default for FreeBSD options
-+OPTION(ENABLE_MSSQLSERVER "Build Microsoft SQL Server backend for Wt::Dbo" OFF) # Microsoft Windows only option
-+OPTION(ENABLE_QT4 "Build Qt4 interworking library (libwtwithqt)" OFF) # QT4 is no longer available in FreeBSD Ports
- OPTION(ENABLE_QT5 "Build Qt5 interworking library (libwtwithqt5)" ON)
--OPTION(ENABLE_QT6 "Build Qt6 interworking library (libwtwithqt6)" ON)
-+OPTION(ENABLE_QT6 "Build Qt6 interworking library (libwtwithqt6)" OFF) # QT6 is not yet available in FreeBSD Ports
- OPTION(ENABLE_SAML "Build built-in SAML service provider for Wt::Auth" OFF)
--OPTION(ENABLE_LIBWTTEST "Build Wt::Test" ON)
--OPTION(ENABLE_LIBWTDBO "Build Wt::Dbo" ON)
-+OPTION(ENABLE_LIBWTTEST "Build Wt::Test" OFF) # OFF is a more convenient default for FreeBSD options
-+OPTION(ENABLE_LIBWTDBO "Build Wt::Dbo" OFF) # OFF is a more convenient default for FreeBSD options
- OPTION(WT_NO_STD_LOCALE "Build Wt to run on a system without std::locale support" OFF)
- OPTION(WT_NO_STD_WSTRING "Build Wt to run on a system without std::wstring support" OFF)
--OPTION(ENABLE_OPENGL "Build Wt with support for server-side opengl rendering" ON)
-+OPTION(ENABLE_OPENGL "Build Wt with support for server-side opengl rendering" OFF) # OFF is a more convenient default for FreeBSD options
- OPTION(ENABLE_UNWIND "Build Wt with stacktrace support using libunwind" OFF)
- 
- IF(NOT CMAKE_CXX_STANDARD)
diff --git a/www/wt/pkg-plist b/www/wt/pkg-plist
index 996fe5c5226c..6b28f68dd92f 100644
--- a/www/wt/pkg-plist
+++ b/www/wt/pkg-plist
@@ -37,6 +37,7 @@ include/Wt/Auth/PasswordStrengthValidator.h
 include/Wt/Auth/PasswordVerifier.h
 include/Wt/Auth/RegistrationModel.h
 include/Wt/Auth/RegistrationWidget.h
+include/Wt/Auth/ResendEmailVerificationWidget.h
 %%SAML%%include/Wt/Auth/Saml/Assertion.h
 %%SAML%%include/Wt/Auth/Saml/Process.h
 %%SAML%%include/Wt/Auth/Saml/ProcessImpl.h
@@ -76,12 +77,6 @@ include/Wt/Core/observable.hpp
 include/Wt/Core/observable_impl.hpp
 include/Wt/Core/observing_ptr.hpp
 include/Wt/Core/observing_ptr_impl.hpp
-include/Wt/cpp17/any.hpp
-include/Wt/cpp17/any/any.hpp
-include/Wt/cpp17/any/LICENSE_1_0.txt
-include/Wt/cpp17/any/README.md
-include/Wt/cpp20/date.hpp
-include/Wt/cpp20/tz.hpp
 include/Wt/Date/date.h
 include/Wt/Date/include/date/chrono_io.h
 include/Wt/Date/include/date/date.h
@@ -94,18 +89,8 @@ include/Wt/Date/include/date/solar_hijri.h
 include/Wt/Date/include/date/tz.h
 include/Wt/Date/include/date/tz_private.h
 include/Wt/Date/tz.h
-%%FIREBIRD%%include/Wt/Dbo/backend/Firebird.h
-%%MYSQL%%include/Wt/Dbo/backend/MySQL.h
-%%POSTGRES%%include/Wt/Dbo/backend/Postgres.h
-%%SQLITE3%%include/Wt/Dbo/backend/Sqlite3.h
-%%FIREBIRD%%include/Wt/Dbo/backend/WDboFirebirdDllDefs.h
-%%MYSQL%%include/Wt/Dbo/backend/WDboMySQLDllDefs.h
-%%POSTGRES%%include/Wt/Dbo/backend/WDboPostgresDllDefs.h
-%%SQLITE3%%include/Wt/Dbo/backend/WDboSqlite3DllDefs.h
 %%DBO%%include/Wt/Dbo/Call.h
 %%DBO%%include/Wt/Dbo/Call_impl.h
-%%DBO%%include/Wt/Dbo/collection.h
-%%DBO%%include/Wt/Dbo/collection_impl.h
 %%DBO%%include/Wt/Dbo/DbAction.h
 %%DBO%%include/Wt/Dbo/DbAction_impl.h
 %%DBO%%include/Wt/Dbo/Dbo.h
@@ -117,14 +102,11 @@ include/Wt/Date/tz.h
 %%DBO%%include/Wt/Dbo/Impl.h
 %%DBO%%include/Wt/Dbo/Json.h
 %%DBO%%include/Wt/Dbo/Logger.h
-%%DBO%%include/Wt/Dbo/ptr.h
-%%DBO%%include/Wt/Dbo/ptr_impl.h
-%%DBO%%include/Wt/Dbo/ptr_tuple.h
 %%DBO%%include/Wt/Dbo/Query.h
-%%DBO%%include/Wt/Dbo/Query_impl.h
 %%DBO%%include/Wt/Dbo/QueryColumn.h
 %%DBO%%include/Wt/Dbo/QueryModel.h
 %%DBO%%include/Wt/Dbo/QueryModel_impl.h
+%%DBO%%include/Wt/Dbo/Query_impl.h
 %%DBO%%include/Wt/Dbo/Session.h
 %%DBO%%include/Wt/Dbo/Session_impl.h
 %%DBO%%include/Wt/Dbo/SqlConnection.h
@@ -137,9 +119,22 @@ include/Wt/Date/tz.h
 %%DBO%%include/Wt/Dbo/Transaction.h
 %%DBO%%include/Wt/Dbo/Types.h
 %%DBO%%include/Wt/Dbo/WDboDllDefs.h
+%%DBO%%include/Wt/Dbo/WtSqlTraits.h
+%%FIREBIRD%%include/Wt/Dbo/backend/Firebird.h
+%%MYSQL%%include/Wt/Dbo/backend/MySQL.h
+%%PGSQL%%include/Wt/Dbo/backend/Postgres.h
+%%SQLITE3%%include/Wt/Dbo/backend/Sqlite3.h
+%%FIREBIRD%%include/Wt/Dbo/backend/WDboFirebirdDllDefs.h
+%%MYSQL%%include/Wt/Dbo/backend/WDboMySQLDllDefs.h
+%%PGSQL%%include/Wt/Dbo/backend/WDboPostgresDllDefs.h
+%%SQLITE3%%include/Wt/Dbo/backend/WDboSqlite3DllDefs.h
+%%DBO%%include/Wt/Dbo/collection.h
+%%DBO%%include/Wt/Dbo/collection_impl.h
+%%DBO%%include/Wt/Dbo/ptr.h
+%%DBO%%include/Wt/Dbo/ptr_impl.h
+%%DBO%%include/Wt/Dbo/ptr_tuple.h
 %%DBO%%include/Wt/Dbo/weak_ptr.h
 %%DBO%%include/Wt/Dbo/weak_ptr_impl.h
-%%DBO%%include/Wt/Dbo/WtSqlTraits.h
 include/Wt/DomElement.h
 include/Wt/EscapeOStream.h
 %%DBO%%include/Wt/Form/Dbo/Actions.h
@@ -150,6 +145,7 @@ include/Wt/EscapeOStream.h
 include/Wt/Form/WAbstractFormDelegate.h
 include/Wt/Form/WFormDelegate.h
 include/Wt/Http/Client.h
+include/Wt/Http/Cookie.h
 include/Wt/Http/Message.h
 include/Wt/Http/Method.h
 include/Wt/Http/Request.h
@@ -229,6 +225,8 @@ include/Wt/WDialog.h
 include/Wt/WDllDefs.h
 include/Wt/WDoubleSpinBox.h
 include/Wt/WDoubleValidator.h
+include/Wt/WEmailEdit.h
+include/Wt/WEmailValidator.h
 include/Wt/WEnvironment.h
 include/Wt/WEvent.h
 include/Wt/WException.h
@@ -242,22 +240,22 @@ include/Wt/WFont.h
 include/Wt/WFontMetrics.h
 include/Wt/WFormModel.h
 include/Wt/WFormWidget.h
+include/Wt/WGLWidget.h
 include/Wt/WGenericMatrix.h
 include/Wt/WGlobal.h
-include/Wt/WGLWidget.h
 include/Wt/WGoogleMap.h
 include/Wt/WGradient.h
 include/Wt/WGridLayout.h
 include/Wt/WGroupBox.h
 include/Wt/WHBoxLayout.h
+include/Wt/WIOService.h
 include/Wt/WIcon.h
 include/Wt/WIconPair.h
 include/Wt/WIdentityProxyModel.h
 include/Wt/WImage.h
 include/Wt/WInPlaceEdit.h
-include/Wt/WInteractWidget.h
 include/Wt/WIntValidator.h
-include/Wt/WIOService.h
+include/Wt/WInteractWidget.h
 include/Wt/WItemDelegate.h
 include/Wt/WItemSelectionModel.h
 include/Wt/WJavaScript.h
@@ -282,8 +280,8 @@ include/Wt/WLoadingIndicator.h
 include/Wt/WLocalDateTime.h
 include/Wt/WLocale.h
 include/Wt/WLocalizedStrings.h
-include/Wt/WLogger.h
 include/Wt/WLogSink.h
+include/Wt/WLogger.h
 include/Wt/WMatrix4x4.h
 include/Wt/WMeasurePaintDevice.h
 include/Wt/WMediaPlayer.h
@@ -345,12 +343,12 @@ include/Wt/WStringUtil.h
 include/Wt/WSubMenuItem.h
 include/Wt/WSuggestionPopup.h
 include/Wt/WSvgImage.h
+include/Wt/WTabWidget.h
 include/Wt/WTable.h
 include/Wt/WTableCell.h
 include/Wt/WTableColumn.h
 include/Wt/WTableRow.h
 include/Wt/WTableView.h
-include/Wt/WTabWidget.h
 include/Wt/WTemplate.h
 include/Wt/WTemplateFormView.h
 include/Wt/WText.h
@@ -360,9 +358,9 @@ include/Wt/WTheme.h
 include/Wt/WTime.h
 include/Wt/WTimeEdit.h
 include/Wt/WTimePicker.h
+include/Wt/WTimeValidator.h
 include/Wt/WTimer.h
 include/Wt/WTimerWidget.h
-include/Wt/WTimeValidator.h
 include/Wt/WToolBar.h
 include/Wt/WTransform.h
 include/Wt/WTree.h
@@ -370,8 +368,8 @@ include/Wt/WTreeNode.h
 include/Wt/WTreeTable.h
 include/Wt/WTreeTableNode.h
 include/Wt/WTreeView.h
-include/Wt/WValidator.h
 include/Wt/WVBoxLayout.h
+include/Wt/WValidator.h
 include/Wt/WVector3.h
 include/Wt/WVector4.h
 include/Wt/WVectorImage.h
@@ -383,6 +381,12 @@ include/Wt/WWebWidget.h
 include/Wt/WWidget.h
 include/Wt/WWidgetItem.h
 include/Wt/WWidgetItemImpl.h
+include/Wt/cpp17/any.hpp
+include/Wt/cpp17/any/LICENSE_1_0.txt
+include/Wt/cpp17/any/README.md
+include/Wt/cpp17/any/any.hpp
+include/Wt/cpp20/date.hpp
+include/Wt/cpp20/tz.hpp
 lib/cmake/wt/wt-config-version.cmake
 lib/cmake/wt/wt-config.cmake
 %%DBO%%lib/cmake/wt/wt-target-dbo-%%CMAKE_BUILD_TYPE%%.cmake
@@ -391,12 +395,12 @@ lib/cmake/wt/wt-config.cmake
 %%FIREBIRD%%lib/cmake/wt/wt-target-dbofirebird.cmake
 %%MYSQL%%lib/cmake/wt/wt-target-dbomysql-%%CMAKE_BUILD_TYPE%%.cmake
 %%MYSQL%%lib/cmake/wt/wt-target-dbomysql.cmake
-%%POSTGRES%%lib/cmake/wt/wt-target-dbopostgres-%%CMAKE_BUILD_TYPE%%.cmake
-%%POSTGRES%%lib/cmake/wt/wt-target-dbopostgres.cmake
+%%PGSQL%%lib/cmake/wt/wt-target-dbopostgres-%%CMAKE_BUILD_TYPE%%.cmake
+%%PGSQL%%lib/cmake/wt/wt-target-dbopostgres.cmake
 %%SQLITE3%%lib/cmake/wt/wt-target-dbosqlite3-%%CMAKE_BUILD_TYPE%%.cmake
 %%SQLITE3%%lib/cmake/wt/wt-target-dbosqlite3.cmake
-%%FCGI%%lib/cmake/wt/wt-target-fcgi-%%CMAKE_BUILD_TYPE%%.cmake
-%%FCGI%%lib/cmake/wt/wt-target-fcgi.cmake
+%%FASTCGI%%lib/cmake/wt/wt-target-fcgi-%%CMAKE_BUILD_TYPE%%.cmake
+%%FASTCGI%%lib/cmake/wt/wt-target-fcgi.cmake
 %%WTHTTP%%lib/cmake/wt/wt-target-http-%%CMAKE_BUILD_TYPE%%.cmake
 %%WTHTTP%%lib/cmake/wt/wt-target-http.cmake
 %%LIBWTTEST%%lib/cmake/wt/wt-target-test-%%CMAKE_BUILD_TYPE%%.cmake
@@ -411,12 +415,12 @@ lib/libwt%%DEBUG_LIBS_POSTFIX%%.so.%%VERSION%%
 %%FIREBIRD%%lib/libwtdbofirebird%%DEBUG_LIBS_POSTFIX%%.so.%%VERSION%%
 %%MYSQL%%lib/libwtdbomysql%%DEBUG_LIBS_POSTFIX%%.so
 %%MYSQL%%lib/libwtdbomysql%%DEBUG_LIBS_POSTFIX%%.so.%%VERSION%%
-%%POSTGRES%%lib/libwtdbopostgres%%DEBUG_LIBS_POSTFIX%%.so
-%%POSTGRES%%lib/libwtdbopostgres%%DEBUG_LIBS_POSTFIX%%.so.%%VERSION%%
+%%PGSQL%%lib/libwtdbopostgres%%DEBUG_LIBS_POSTFIX%%.so
+%%PGSQL%%lib/libwtdbopostgres%%DEBUG_LIBS_POSTFIX%%.so.%%VERSION%%
 %%SQLITE3%%lib/libwtdbosqlite3%%DEBUG_LIBS_POSTFIX%%.so
 %%SQLITE3%%lib/libwtdbosqlite3%%DEBUG_LIBS_POSTFIX%%.so.%%VERSION%%
-%%FCGI%%lib/libwtfcgi%%DEBUG_LIBS_POSTFIX%%.so
-%%FCGI%%lib/libwtfcgi%%DEBUG_LIBS_POSTFIX%%.so.%%VERSION%%
+%%FASTCGI%%lib/libwtfcgi%%DEBUG_LIBS_POSTFIX%%.so
+%%FASTCGI%%lib/libwtfcgi%%DEBUG_LIBS_POSTFIX%%.so.%%VERSION%%
 %%WTHTTP%%lib/libwthttp%%DEBUG_LIBS_POSTFIX%%.so
 %%WTHTTP%%lib/libwthttp%%DEBUG_LIBS_POSTFIX%%.so.%%VERSION%%
 %%LIBWTTEST%%lib/libwttest%%DEBUG_LIBS_POSTFIX%%.so
@@ -427,15 +431,15 @@ lib/libwt%%DEBUG_LIBS_POSTFIX%%.so.%%VERSION%%
 %%RESOURCES%%share/Wt/resources/date.gif
 %%RESOURCES%%share/Wt/resources/expand-rtl.gif
 %%RESOURCES%%share/Wt/resources/expand.gif
+%%RESOURCES%%share/Wt/resources/font-awesome/LICENSE.txt
 %%RESOURCES%%share/Wt/resources/font-awesome/css/font-awesome.css
 %%RESOURCES%%share/Wt/resources/font-awesome/css/font-awesome.min.css
+%%RESOURCES%%share/Wt/resources/font-awesome/fonts/FontAwesome.otf
 %%RESOURCES%%share/Wt/resources/font-awesome/fonts/fontawesome-webfont.eot
 %%RESOURCES%%share/Wt/resources/font-awesome/fonts/fontawesome-webfont.svg
 %%RESOURCES%%share/Wt/resources/font-awesome/fonts/fontawesome-webfont.ttf
 %%RESOURCES%%share/Wt/resources/font-awesome/fonts/fontawesome-webfont.woff
 %%RESOURCES%%share/Wt/resources/font-awesome/fonts/fontawesome-webfont.woff2
-%%RESOURCES%%share/Wt/resources/font-awesome/fonts/FontAwesome.otf
-%%RESOURCES%%share/Wt/resources/font-awesome/LICENSE.txt
 %%RESOURCES%%share/Wt/resources/form.css
 %%RESOURCES%%share/Wt/resources/html4_default.css
 %%RESOURCES%%share/Wt/resources/icon_clock.gif
@@ -566,56 +570,15 @@ lib/libwt%%DEBUG_LIBS_POSTFIX%%.so.%%VERSION%%
 %%RESOURCES%%share/Wt/resources/themes/bootstrap/3/time-edit-button.png
 %%RESOURCES%%share/Wt/resources/themes/bootstrap/3/wt.css
 %%RESOURCES%%share/Wt/resources/themes/bootstrap/3/wt.less
+%%RESOURCES%%share/Wt/resources/themes/bootstrap/5/bootstrap.bundle.min.js
+%%RESOURCES%%share/Wt/resources/themes/bootstrap/5/bootstrap.bundle.min.js.map
 %%RESOURCES%%share/Wt/resources/themes/bootstrap/5/calendar-date.svg
-%%RESOURCES%%share/Wt/resources/themes/bootstrap/5/css/bootstrap-grid.css
-%%RESOURCES%%share/Wt/resources/themes/bootstrap/5/css/bootstrap-grid.css.map
-%%RESOURCES%%share/Wt/resources/themes/bootstrap/5/css/bootstrap-grid.min.css
-%%RESOURCES%%share/Wt/resources/themes/bootstrap/5/css/bootstrap-grid.min.css.map
-%%RESOURCES%%share/Wt/resources/themes/bootstrap/5/css/bootstrap-grid.rtl.css
-%%RESOURCES%%share/Wt/resources/themes/bootstrap/5/css/bootstrap-grid.rtl.css.map
-%%RESOURCES%%share/Wt/resources/themes/bootstrap/5/css/bootstrap-grid.rtl.min.css
-%%RESOURCES%%share/Wt/resources/themes/bootstrap/5/css/bootstrap-grid.rtl.min.css.map
-%%RESOURCES%%share/Wt/resources/themes/bootstrap/5/css/bootstrap-reboot.css
-%%RESOURCES%%share/Wt/resources/themes/bootstrap/5/css/bootstrap-reboot.css.map
-%%RESOURCES%%share/Wt/resources/themes/bootstrap/5/css/bootstrap-reboot.min.css
-%%RESOURCES%%share/Wt/resources/themes/bootstrap/5/css/bootstrap-reboot.min.css.map
-%%RESOURCES%%share/Wt/resources/themes/bootstrap/5/css/bootstrap-reboot.rtl.css
-%%RESOURCES%%share/Wt/resources/themes/bootstrap/5/css/bootstrap-reboot.rtl.css.map
-%%RESOURCES%%share/Wt/resources/themes/bootstrap/5/css/bootstrap-reboot.rtl.min.css
-%%RESOURCES%%share/Wt/resources/themes/bootstrap/5/css/bootstrap-reboot.rtl.min.css.map
-%%RESOURCES%%share/Wt/resources/themes/bootstrap/5/css/bootstrap-utilities.css
-%%RESOURCES%%share/Wt/resources/themes/bootstrap/5/css/bootstrap-utilities.css.map
-%%RESOURCES%%share/Wt/resources/themes/bootstrap/5/css/bootstrap-utilities.min.css
-%%RESOURCES%%share/Wt/resources/themes/bootstrap/5/css/bootstrap-utilities.min.css.map
-%%RESOURCES%%share/Wt/resources/themes/bootstrap/5/css/bootstrap-utilities.rtl.css
-%%RESOURCES%%share/Wt/resources/themes/bootstrap/5/css/bootstrap-utilities.rtl.css.map
-%%RESOURCES%%share/Wt/resources/themes/bootstrap/5/css/bootstrap-utilities.rtl.min.css
-%%RESOURCES%%share/Wt/resources/themes/bootstrap/5/css/bootstrap-utilities.rtl.min.css.map
-%%RESOURCES%%share/Wt/resources/themes/bootstrap/5/css/bootstrap.css
-%%RESOURCES%%share/Wt/resources/themes/bootstrap/5/css/bootstrap.css.map
-%%RESOURCES%%share/Wt/resources/themes/bootstrap/5/css/bootstrap.min.css
-%%RESOURCES%%share/Wt/resources/themes/bootstrap/5/css/bootstrap.min.css.map
-%%RESOURCES%%share/Wt/resources/themes/bootstrap/5/css/bootstrap.rtl.css
-%%RESOURCES%%share/Wt/resources/themes/bootstrap/5/css/bootstrap.rtl.css.map
-%%RESOURCES%%share/Wt/resources/themes/bootstrap/5/css/bootstrap.rtl.min.css
-%%RESOURCES%%share/Wt/resources/themes/bootstrap/5/css/bootstrap.rtl.min.css.map
-%%RESOURCES%%share/Wt/resources/themes/bootstrap/5/js/bootstrap.bundle.js
-%%RESOURCES%%share/Wt/resources/themes/bootstrap/5/js/bootstrap.bundle.js.map
-%%RESOURCES%%share/Wt/resources/themes/bootstrap/5/js/bootstrap.bundle.min.js
-%%RESOURCES%%share/Wt/resources/themes/bootstrap/5/js/bootstrap.bundle.min.js.map
-%%RESOURCES%%share/Wt/resources/themes/bootstrap/5/js/bootstrap.esm.js
-%%RESOURCES%%share/Wt/resources/themes/bootstrap/5/js/bootstrap.esm.js.map
-%%RESOURCES%%share/Wt/resources/themes/bootstrap/5/js/bootstrap.esm.min.js
-%%RESOURCES%%share/Wt/resources/themes/bootstrap/5/js/bootstrap.esm.min.js.map
-%%RESOURCES%%share/Wt/resources/themes/bootstrap/5/js/bootstrap.js
-%%RESOURCES%%share/Wt/resources/themes/bootstrap/5/js/bootstrap.js.map
-%%RESOURCES%%share/Wt/resources/themes/bootstrap/5/js/bootstrap.min.js
-%%RESOURCES%%share/Wt/resources/themes/bootstrap/5/js/bootstrap.min.js.map
+%%RESOURCES%%share/Wt/resources/themes/bootstrap/5/main.css
+%%RESOURCES%%share/Wt/resources/themes/bootstrap/5/main.css.map
 %%RESOURCES%%share/Wt/resources/themes/bootstrap/5/nav-minus-rtl.gif
 %%RESOURCES%%share/Wt/resources/themes/bootstrap/5/nav-minus.gif
 %%RESOURCES%%share/Wt/resources/themes/bootstrap/5/nav-plus-rtl.gif
 %%RESOURCES%%share/Wt/resources/themes/bootstrap/5/nav-plus.gif
-%%RESOURCES%%share/Wt/resources/themes/bootstrap/5/wt.css
 %%RESOURCES%%share/Wt/resources/themes/bootstrap/img/glyphicons-halflings-white.png
 %%RESOURCES%%share/Wt/resources/themes/bootstrap/img/glyphicons-halflings.png
 %%RESOURCES%%share/Wt/resources/themes/bootstrap/sort-arrow-down.gif
@@ -822,3 +785,38 @@ lib/libwt%%DEBUG_LIBS_POSTFIX%%.so.%%VERSION%%
 %%RESOURCES%%share/Wt/resources/tv-line-last-rtl.gif
 %%RESOURCES%%share/Wt/resources/tv-line-last.gif
 %%RESOURCES%%share/Wt/resources/webkit-transitions.css
+%%THEMES%%share/Wt/themes/bootstrap/5/gulpfile.js
+%%THEMES%%share/Wt/themes/bootstrap/5/main.scss
+%%THEMES%%share/Wt/themes/bootstrap/5/package.yaml
+%%THEMES%%share/Wt/themes/bootstrap/5/pnpm-lock.yaml
+%%THEMES%%share/Wt/themes/bootstrap/5/wt/_index.scss
+%%THEMES%%share/Wt/themes/bootstrap/5/wt/_variables.scss
+%%THEMES%%share/Wt/themes/bootstrap/5/wt/widgets/_calendar.scss
+%%THEMES%%share/Wt/themes/bootstrap/5/wt/widgets/_date-edit.scss
+%%THEMES%%share/Wt/themes/bootstrap/5/wt/widgets/_date-picker.scss
+%%THEMES%%share/Wt/themes/bootstrap/5/wt/widgets/_dialog.scss
+%%THEMES%%share/Wt/themes/bootstrap/5/wt/widgets/_file-drop-widget.scss
+%%THEMES%%share/Wt/themes/bootstrap/5/wt/widgets/_google-map.scss
+%%THEMES%%share/Wt/themes/bootstrap/5/wt/widgets/_grid-layout.scss
+%%THEMES%%share/Wt/themes/bootstrap/5/wt/widgets/_icon.scss
+%%THEMES%%share/Wt/themes/bootstrap/5/wt/widgets/_index.scss
+%%THEMES%%share/Wt/themes/bootstrap/5/wt/widgets/_menu-item.scss
+%%THEMES%%share/Wt/themes/bootstrap/5/wt/widgets/_menu.scss
+%%THEMES%%share/Wt/themes/bootstrap/5/wt/widgets/_navigation-bar.scss
+%%THEMES%%share/Wt/themes/bootstrap/5/wt/widgets/_panel.scss
+%%THEMES%%share/Wt/themes/bootstrap/5/wt/widgets/_popup-menu.scss
+%%THEMES%%share/Wt/themes/bootstrap/5/wt/widgets/_progress-bar.scss
+%%THEMES%%share/Wt/themes/bootstrap/5/wt/widgets/_push-button.scss
+%%THEMES%%share/Wt/themes/bootstrap/5/wt/widgets/_slider.scss
+%%THEMES%%share/Wt/themes/bootstrap/5/wt/widgets/_spin-box.scss
+%%THEMES%%share/Wt/themes/bootstrap/5/wt/widgets/_stacked-widget.scss
+%%THEMES%%share/Wt/themes/bootstrap/5/wt/widgets/_suggestion-popup.scss
+%%THEMES%%share/Wt/themes/bootstrap/5/wt/widgets/_time-edit.scss
+%%THEMES%%share/Wt/themes/bootstrap/5/wt/widgets/_toolbar.scss
+%%THEMES%%share/Wt/themes/bootstrap/5/wt/widgets/_tree-table.scss
+%%THEMES%%share/Wt/themes/bootstrap/5/wt/widgets/_tree.scss
+%%THEMES%%share/Wt/themes/bootstrap/5/wt/widgets/item-views/_abstract-item-view.scss
+%%THEMES%%share/Wt/themes/bootstrap/5/wt/widgets/item-views/_index.scss
+%%THEMES%%share/Wt/themes/bootstrap/5/wt/widgets/item-views/_paging-bar.scss
+%%THEMES%%share/Wt/themes/bootstrap/5/wt/widgets/item-views/_table-view.scss
+%%THEMES%%share/Wt/themes/bootstrap/5/wt/widgets/item-views/_tree-view.scss