Project

General

Profile

Feature #845 ยป 0031-Msys2-Add-qt6x-installer.patch

Marko Lindqvist, 09/10/2024 06:29 AM

View differences:

platforms/windows/Makefile.am
installer_msys2/create-freeciv-gtk4-nsi.sh \
installer_msys2/create-freeciv-qt5-nsi.sh \
installer_msys2/create-freeciv-qt6-nsi.sh \
installer_msys2/create-freeciv-qt6x-nsi.sh \
installer_msys2/create-freeciv-sdl2-nsi.sh \
installer_msys2/create-freeciv-ruledit-nsi.sh \
installer_msys2/freeciv-gtk3.22.cmd \
platforms/windows/installer_msys2/Makefile.meson
all-win64: gtk3.22-installer sdl2-installer gtk4-installer qt5-installer ruledit-installer-qt5
all-win64-10: gtk3.22-installer sdl2-installer gtk4-installer qt6-installer ruledit-installer-qt6
all-win64-10: gtk3.22-installer sdl2-installer gtk4-installer qt6-installer ruledit-installer-qt6 qt6x-installer
all-win64+: gtk3.22-install sdl2-install gtk4-install qt6-install ruledit-install-qt6
......
qt6-installer:
make -f $(MAKEFILE_NAME) EXTRA_CONFIG="-Ddebug=false -Dqtver=qt6 -Dsvgflags=true $(EXTRA_CONFIG)" GUI=qt6 CLIENT=qt FCMP=qt installer-common
qt6x-installer:
make -f $(MAKEFILE_NAME) EXTRA_CONFIG="-Ddebug=false -Dqtver=qt6x -Dsvgflags=true $(EXTRA_CONFIG)" GUI=qt6x CLIENT=qt FCMP=qt installer-common
ruledit-installer-qt5:
make -f $(MAKEFILE_NAME) EXTRA_CONFIG="-Ddebug=false -Dqtver=qt5 $(EXTRA_CONFIG)" GUI=qt5 installer-ruledit-common
ruledit-installer-qt6:
make -f $(MAKEFILE_NAME) EXTRA_CONFIG="-Ddebug=false -Dqtver=qt6 $(EXTRA_CONFIG)" GUI=qt6 installer-ruledit-common
ruledit-installer-qt6x:
make -f $(MAKEFILE_NAME) EXTRA_CONFIG="-Ddebug=false -Dqtver=qt6x $(EXTRA_CONFIG)" GUI=qt6x installer-ruledit-common
gtk3.22-install:
make -f $(MAKEFILE_NAME) GUI=gtk3.22 CLIENT=gtk3.22 FCMP=gtk3 install-freeciv-gtk3.22
......
qt6-install:
make -f $(MAKEFILE_NAME) GUI=qt6 CLIENT=qt FCMP=qt EXTRA_CONFIG="-Dqtver=qt6 -Dsvgflags=true $(EXTRA_CONFIG)" install-freeciv-qt6
qt6x-install:
make -f $(MAKEFILE_NAME) GUI=qt6x CLIENT=qt FCMP=qt EXTRA_CONFIG="-Dqtver=qt6x -Dsvgflags=true $(EXTRA_CONFIG)" install-freeciv-qt6x
ruledit-install-qt5:
make -f $(MAKEFILE_NAME) GUI=qt5 EXTRA_CONFIG="-Dqtver=qt5 $(EXTRA_CONFIG)" install-ruledit-qt5
ruledit-install-qt6:
make -f $(MAKEFILE_NAME) GUI=qt6 EXTRA_CONFIG="-Dqtver=qt6 $(EXTRA_CONFIG)" install-ruledit-qt6
ruledit-install-qt6x:
make -f $(MAKEFILE_NAME) GUI=qt6x EXTRA_CONFIG="-Dqtver=qt6x $(EXTRA_CONFIG)" install-ruledit-qt6x
installer-common: install-freeciv-$(GUI) install-env-$(GUI)
# Extract Freeciv version
$(eval FREECIV_VERSION := $(shell $(SRC_ROOT)/fc_version))
......
install-freeciv-qt6: install-freeciv-common
install-freeciv-qt6x: install-freeciv-common
install-env-gtk3.22: install-env-gtk3-fcmp
install-env-gtk4: install-env-gtk4-fcmp
......
# Add DLLs
cp -R $(addprefix $(DLLPATH_PREFIX), $(CLIENT_QT6_DLLS)) $(INST_DIR)/$(WINARCH)-client-$(GUI)/
install-env-qt6x: install-env-qt6
installer-ruledit-common: install-ruledit-$(GUI)
# Add DLLs
cp -R $(addprefix $(DLLPATH_PREFIX), $(COMMON_DLLS)) $(INST_DIR)/$(WINARCH)-ruledit-$(GUI)/
......
cp -R /usr/share/locale $(INST_DIR)/$(WINARCH)-ruledit-$(GUI)/share/
find $(INST_DIR)/$(WINARCH)-ruledit-$(GUI)/share/locale -type f -not -name "freeciv-*.mo" -delete
install-ruledit-qt6: install-ruledit-qt6
# Cleanup
clean-build-client:
......
make -f $(MAKEFILE_NAME) GUI=sdl2 clean-build-client clean-install-client clean-installer-common
make -f $(MAKEFILE_NAME) GUI=qt5 clean-build-client clean-install-client clean-installer-common
make -f $(MAKEFILE_NAME) GUI=qt6 clean-build-client clean-install-client clean-installer-common
make -f $(MAKEFILE_NAME) GUI=qt6x clean-build-client clean-install-client clean-installer-common
make -f $(MAKEFILE_NAME) GUI=qt5 clean-build-ruledit clean-ruledit-install clean-ruledit-common
make -f $(MAKEFILE_NAME) GUI=qt6 clean-build-ruledit clean-ruledit-install clean-ruledit-common
make -f $(MAKEFILE_NAME) GUI=qt6x clean-build-ruledit clean-ruledit-install clean-ruledit-common
platforms/windows/installer_msys2/create-freeciv-gtk-qt-nsi.sh
SetOutPath \$INSTDIR
EOF
# find files and directories to exclude from default installation
# Find files and directories to exclude from default installation
echo -n " File /nonfatal /r "
# languages
# Languages
echo -n "/x locale "
# soundsets
# Soundsets
find $1/data -mindepth 1 -maxdepth 1 -name *.soundspec -printf %f\\n |
sed 's|.soundspec||' |
while read -r name
......
CreateShortCut "\$SMPROGRAMS\\\$STARTMENU_FOLDER\Freeciv Modpack Installer.lnk" "\$INSTDIR\freeciv-mp-\${MPEXE_ID}.cmd" "\$DefaultLanguageCode" "\$INSTDIR\freeciv-mp-\${MPEXE_ID}.exe" 0 SW_SHOWMINIMIZED
EOF
if test "$4" = "qt5" || test "$4" = "qt6" ; then
echo "CreateShortCut \"\$SMPROGRAMS\\\$STARTMENU_FOLDER\Freeciv Ruleset Editor.lnk\" \"\$INSTDIR\freeciv-ruledit.cmd\" \"\$DefaultLanguageCode\" \"\$INSTDIR\freeciv-ruledit.exe\" 0 SW_SHOWMINIMIZED"
if test "$4" = "qt5" || test "$4" = "qt6" || test "$4" = "qt6x" ; then
echo "CreateShortCut \"\$SMPROGRAMS\\\$STARTMENU_FOLDER\Freeciv Ruleset Editor.lnk\" \"\$INSTDIR\freeciv-ruledit.cmd\" \"\$DefaultLanguageCode\" \"\$INSTDIR\freeciv-ruledit.exe\" 0 SW_SHOWMINIMIZED"
fi
cat <<EOF
......
EOF
### soundsets ###
### Soundsets ###
cat <<EOF
SectionGroup "Soundsets"
platforms/windows/installer_msys2/create-freeciv-qt6x-nsi.sh
#!/bin/sh
# ./create-freeciv-qt6x-nsi.sh <freeciv files dir> <output dir> <version> <win32|win64|win>
./create-freeciv-gtk-qt-nsi.sh "$1" "$2" "$3" "qt6x" "Qt6x" "$4" "" "qt"
    (1-1/1)