From ac699559b517afab63e75a47d3d3bd67921b2333 Mon Sep 17 00:00:00 2001
From: Marko Lindqvist <cazfi74@gmail.com>
Date: Fri, 30 Dec 2022 18:21:12 +0200
Subject: [PATCH 26/26] Msys2 Makefile.meson: Add Qt5-client installer

Built for pre-win10 systems.

See osdn #46359

Signed-off-by: Marko Lindqvist <cazfi74@gmail.com>
---
 windows/installer_msys2/Makefile.meson | 29 ++++++++++++++++++++++++--
 1 file changed, 27 insertions(+), 2 deletions(-)

diff --git a/windows/installer_msys2/Makefile.meson b/windows/installer_msys2/Makefile.meson
index 80066664bf..1c1025df20 100644
--- a/windows/installer_msys2/Makefile.meson
+++ b/windows/installer_msys2/Makefile.meson
@@ -54,9 +54,9 @@ endif
 
 all: all-$(WINARCH)
 
-all-win64: gtk3.22-installer sdl2-installer gtk4-installer
+all-win64: gtk3.22-installer sdl2-installer gtk4-installer qt5-installer
 
-all-win32: gtk3.22-installer sdl2-installer gtk4-installer
+all-win32: gtk3.22-installer sdl2-installer gtk4-installer qt5-installer
 
 all-win64-10: gtk3.22-installer sdl2-installer gtk4-installer qt6-installer ruledit-installer-qt6
 
@@ -77,6 +77,9 @@ gtk4-installer:
 sdl2-installer:
 	make -f $(MAKEFILE_NAME) GUI=sdl2 CLIENT=sdl2 FCMP=gtk4 installer-common
 
+qt5-installer:
+	make -f $(MAKEFILE_NAME) EXTRA_CONFIG="-Dqtver=qt5 $(EXTRA_CONFIG)" GUI=qt5 CLIENT=qt FCMP=qt installer-common
+
 qt6-installer:
 	make -f $(MAKEFILE_NAME) EXTRA_CONFIG="-Ddebug=false $(EXTRA_CONFIG)" GUI=qt6 CLIENT=qt FCMP=qt installer-common
 
@@ -264,6 +267,8 @@ install-freeciv-gtk4: install-freeciv-common
 
 install-freeciv-sdl2: install-freeciv-common
 
+install-freeciv-qt5: install-freeciv-common
+
 install-freeciv-qt6: install-freeciv-common
 
 install-env-gtk3.22: install-env-gtk3-fcmp
@@ -282,6 +287,25 @@ install-env-sdl2: install-env-gtk4-fcmp
 	# add DLLs
 	cp -R $(addprefix $(DLLPATH_PREFIX), $(SDL2_DLLS)) meson-install-$(WINARCH)-$(GUI)/
 
+FCMP_QT5_DLLS := \
+	Qt5Core.dll \
+	Qt5Gui.dll \
+	Qt5Widgets.dll \
+	libdouble-conversion.dll \
+	libicuin${ICUVER}.dll \
+	libpcre2-16-0.dll \
+	libmd4c.dll
+
+install-env-qt5-fcmp: install-env-common
+	# Add DLLs
+	cp -R $(addprefix $(DLLPATH_PREFIX), $(FCMP_QT5_DLLS)) meson-install-$(WINARCH)-$(GUI)/
+	# Add additional Qt5 files
+	cp -R /$(ARCHDIR)/share/qt5/plugins meson-install-$(WINARCH)-$(GUI)/
+	cp -R /$(ARCHDIR)/share/locale meson-install-$(WINARCH)-$(GUI)/share/
+	find meson-install-$(WINARCH)-$(GUI)/share/locale -type f -not -name "freeciv-*.mo" -delete
+
+install-env-qt5: install-env-qt5-fcmp
+
 FCMP_QT6_DLLS := \
 	Qt6Core.dll \
 	Qt6Gui.dll \
@@ -351,5 +375,6 @@ clean:
 	make -f $(MAKEFILE_NAME) GUI=gtk3.22 clean-build-common clean-install-common clean-installer-common
 	make -f $(MAKEFILE_NAME) GUI=gtk4 clean-build-common clean-install-common clean-installer-common
 	make -f $(MAKEFILE_NAME) GUI=sdl2 clean-build-common clean-install-common clean-installer-common
+	make -f $(MAKEFILE_NAME) GUI=qt5 clean-build-common clean-install-common clean-installer-common
 	make -f $(MAKEFILE_NAME) GUI=qt6 clean-build-common clean-install-common clean-installer-common
 	make -f $(MAKEFILE_NAME) GUI=qt6 clean-build-common clean-install-common clean-ruledit-common
-- 
2.39.0