From 962943185d010a2772f089d0609f6fe2199b6ae6 Mon Sep 17 00:00:00 2001 From: tildearrow Date: Sat, 26 Aug 2023 12:55:32 -0500 Subject: [PATCH] split 32-bit Windows release --- .gitignore | 1 + scripts/release-win32.sh | 21 +++++++----------- scripts/release-winxp.sh | 46 ++++++++++++++++++++++++++++++++++++++++ 3 files changed, 55 insertions(+), 13 deletions(-) create mode 100755 scripts/release-winxp.sh diff --git a/.gitignore b/.gitignore index 55120b42..1c7ed1ea 100644 --- a/.gitignore +++ b/.gitignore @@ -6,6 +6,7 @@ release/ t/ winbuild/ win32build/ +xpbuild/ macbuild/ linuxbuild/ *.swp diff --git a/scripts/release-win32.sh b/scripts/release-win32.sh index 7db78a38..fe7ec930 100755 --- a/scripts/release-win32.sh +++ b/scripts/release-win32.sh @@ -8,23 +8,23 @@ fi cd /tmp/furnace -if [ ! -e win32build ]; then - mkdir win32build || exit 1 +if [ ! -e xpbuild ]; then + mkdir xpbuild || exit 1 fi -cd win32build +cd xpbuild # TODO: potential Arch-ism? -i686-w64-mingw32-cmake -DCMAKE_BUILD_TYPE=RelWithDebInfo -DCMAKE_C_FLAGS="-O2" -DCMAKE_CXX_FLAGS="-O2 -Wall -Wextra -Wno-unused-parameter -Wno-cast-function-type" -DBUILD_SHARED_LIBS=OFF -DSUPPORT_XP=ON -DWITH_RENDER_DX11=OFF .. || exit 1 +i686-w64-mingw32-cmake -DCMAKE_BUILD_TYPE=RelWithDebInfo -DCMAKE_C_FLAGS="-O2" -DCMAKE_CXX_FLAGS="-O2 -Wall -Wextra -Wno-unused-parameter -Wno-cast-function-type" -DBUILD_SHARED_LIBS=OFF -DSUPPORT_XP=OFF -DWITH_RENDER_DX11=ON .. || exit 1 make -j8 || exit 1 cd .. -mkdir -p release/win32 || exit 1 -cd release/win32 +mkdir -p release/winxp || exit 1 +cd release/winxp cp ../../LICENSE LICENSE.txt || exit 1 -cp ../../win32build/furnace.exe . || exit 1 +cp ../../xpbuild/furnace.exe . || exit 1 cp ../../README.md README.txt || exit 1 cp -r ../../papers papers || exit 1 cp -r ../../doc doc || exit 1 @@ -34,13 +34,8 @@ cp -r ../../wavetables wavetables || exit 1 i686-w64-mingw32-strip -s furnace.exe || exit 1 -# patch to remove GetTickCount64 -xxd -c 256 -ps furnace.exe | sed "s/4765745469636b436f756e743634/4765745469636b436f756e740000/g" | xxd -ps -r > furnace-patched.exe -rm furnace.exe -mv furnace-patched.exe furnace.exe - zip -r furnace.zip LICENSE.txt furnace.exe README.txt papers doc demos instruments wavetables furName=$(git describe --tags | sed "s/v0/0/") -mv furnace.zip furnace-"$furName"-win32.zip +mv furnace.zip furnace-"$furName"-win32-XP-ONLY.zip diff --git a/scripts/release-winxp.sh b/scripts/release-winxp.sh new file mode 100755 index 00000000..7db78a38 --- /dev/null +++ b/scripts/release-winxp.sh @@ -0,0 +1,46 @@ +#!/bin/bash +# make Windows release +# this script shall be run from Arch Linux with MinGW installed! + +if [ ! -e /tmp/furnace ]; then + ln -s "$PWD" /tmp/furnace || exit 1 +fi + +cd /tmp/furnace + +if [ ! -e win32build ]; then + mkdir win32build || exit 1 +fi + +cd win32build + +# TODO: potential Arch-ism? +i686-w64-mingw32-cmake -DCMAKE_BUILD_TYPE=RelWithDebInfo -DCMAKE_C_FLAGS="-O2" -DCMAKE_CXX_FLAGS="-O2 -Wall -Wextra -Wno-unused-parameter -Wno-cast-function-type" -DBUILD_SHARED_LIBS=OFF -DSUPPORT_XP=ON -DWITH_RENDER_DX11=OFF .. || exit 1 +make -j8 || exit 1 + +cd .. + +mkdir -p release/win32 || exit 1 +cd release/win32 + +cp ../../LICENSE LICENSE.txt || exit 1 +cp ../../win32build/furnace.exe . || exit 1 +cp ../../README.md README.txt || exit 1 +cp -r ../../papers papers || exit 1 +cp -r ../../doc doc || exit 1 +cp -r ../../demos demos || exit 1 +cp -r ../../instruments instruments || exit 1 +cp -r ../../wavetables wavetables || exit 1 + +i686-w64-mingw32-strip -s furnace.exe || exit 1 + +# patch to remove GetTickCount64 +xxd -c 256 -ps furnace.exe | sed "s/4765745469636b436f756e743634/4765745469636b436f756e740000/g" | xxd -ps -r > furnace-patched.exe +rm furnace.exe +mv furnace-patched.exe furnace.exe + +zip -r furnace.zip LICENSE.txt furnace.exe README.txt papers doc demos instruments wavetables + +furName=$(git describe --tags | sed "s/v0/0/") + +mv furnace.zip furnace-"$furName"-win32.zip