47 lines
		
	
	
		
			1.4 KiB
		
	
	
	
		
			Bash
		
	
	
		
			Executable file
		
	
	
	
	
			
		
		
	
	
			47 lines
		
	
	
		
			1.4 KiB
		
	
	
	
		
			Bash
		
	
	
		
			Executable file
		
	
	
	
	
| #!/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 -Werror" -DBUILD_SHARED_LIBS=OFF -DSUPPORT_XP=ON -DWITH_RENDER_DX11=ON .. || 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
 | 
