furnace/scripts/release-win64.sh

43 lines
1.2 KiB
Bash
Raw Normal View History

2021-12-29 15:27:26 -05:00
#!/bin/bash
# make Windows release
2022-03-13 17:56:22 -04:00
# this script shall be run from Arch Linux with MinGW installed!
2021-12-29 15:27:26 -05:00
if [ ! -e /tmp/furnace ]; then
ln -s "$PWD" /tmp/furnace || exit 1
fi
cd /tmp/furnace
if [ ! -e winbuild ]; then
mkdir winbuild || exit 1
fi
cd winbuild
2022-03-13 17:56:22 -04:00
# TODO: potential Arch-ism?
2023-02-24 14:05:41 -05:00
x86_64-w64-mingw32-cmake -DCMAKE_BUILD_TYPE=RelWithDebInfo -DCMAKE_C_FLAGS="-O2" -DCMAKE_CXX_FLAGS="-O2 -Wall -Wextra -Wno-unused-parameter -Wno-cast-function-type -Wno-deprecated-declarations -Werror" .. || exit 1
2021-12-29 15:27:26 -05:00
make -j8 || exit 1
cd ..
mkdir -p release/windows || exit 1
cd release/windows
cp ../../LICENSE LICENSE.txt || exit 1
cp ../../winbuild/furnace.exe . || exit 1
2023-09-19 21:02:16 -04:00
cp ../../res/releaseReadme/stable-win.txt README.txt || exit 1
2021-12-29 15:27:26 -05:00
cp -r ../../papers papers || exit 1
2022-02-09 04:50:38 -05:00
cp -r ../../demos demos || exit 1
2022-06-06 19:18:45 -04:00
cp -r ../../instruments instruments || exit 1
cp -r ../../wavetables wavetables || exit 1
2021-12-29 15:27:26 -05:00
2023-09-19 21:14:30 -04:00
cp ../../res/docpdf/manual.pdf . || exit 1
x86_64-w64-mingw32-strip -s furnace.exe || exit 1
zip -r furnace.zip LICENSE.txt furnace.exe README.txt manual.pdf papers demos instruments wavetables
2022-03-14 00:37:12 -04:00
furName=$(git describe --tags | sed "s/v0/0/")
mv furnace.zip furnace-"$furName"-win64.zip