annotate build_release @ 1925:039553703c20

Don't apply address and cd register changes to the 'live' registers until pending flag is cleared, but do preserve the upper address bits in the latch. Fixes regression in Overdrive 2 while preserving fix to Mona in 344 bytes
author Michael Pavone <pavone@retrodev.com>
date Mon, 13 Apr 2020 20:43:25 -0700
parents 93960907807a
children 794a5c9a2c73
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
806
2dfcd20a00b6 Added script for building and packaging releases
Michael Pavone <pavone@retrodev.com>
parents:
diff changeset
1 #!/bin/sh
2dfcd20a00b6 Added script for building and packaging releases
Michael Pavone <pavone@retrodev.com>
parents:
diff changeset
2
2dfcd20a00b6 Added script for building and packaging releases
Michael Pavone <pavone@retrodev.com>
parents:
diff changeset
3 set -e
2dfcd20a00b6 Added script for building and packaging releases
Michael Pavone <pavone@retrodev.com>
parents:
diff changeset
4
2dfcd20a00b6 Added script for building and packaging releases
Michael Pavone <pavone@retrodev.com>
parents:
diff changeset
5 if [ -z "$OS" ]; then
2dfcd20a00b6 Added script for building and packaging releases
Michael Pavone <pavone@retrodev.com>
parents:
diff changeset
6 OS=`uname -s`
2dfcd20a00b6 Added script for building and packaging releases
Michael Pavone <pavone@retrodev.com>
parents:
diff changeset
7 fi
2dfcd20a00b6 Added script for building and packaging releases
Michael Pavone <pavone@retrodev.com>
parents:
diff changeset
8
2dfcd20a00b6 Added script for building and packaging releases
Michael Pavone <pavone@retrodev.com>
parents:
diff changeset
9 if [ $OS = "Linux" ]; then
2dfcd20a00b6 Added script for building and packaging releases
Michael Pavone <pavone@retrodev.com>
parents:
diff changeset
10 cd sdl
2dfcd20a00b6 Added script for building and packaging releases
Michael Pavone <pavone@retrodev.com>
parents:
diff changeset
11 ./configure
1239
cd9c1acb0053 Remove clean step from SDL and glew dependencies in release_build script. Should not be needed now that each build type will have it's own environment
Michael Pavone <pavone@retrodev.com>
parents: 1238
diff changeset
12 make all
806
2dfcd20a00b6 Added script for building and packaging releases
Michael Pavone <pavone@retrodev.com>
parents:
diff changeset
13 cd ..
2dfcd20a00b6 Added script for building and packaging releases
Michael Pavone <pavone@retrodev.com>
parents:
diff changeset
14 rm -rf lib
2dfcd20a00b6 Added script for building and packaging releases
Michael Pavone <pavone@retrodev.com>
parents:
diff changeset
15 mkdir lib
2dfcd20a00b6 Added script for building and packaging releases
Michael Pavone <pavone@retrodev.com>
parents:
diff changeset
16 cp sdl/build/.libs/libSDL2-*.so.*.*.* lib
2dfcd20a00b6 Added script for building and packaging releases
Michael Pavone <pavone@retrodev.com>
parents:
diff changeset
17 sdl=`ls lib`
2dfcd20a00b6 Added script for building and packaging releases
Michael Pavone <pavone@retrodev.com>
parents:
diff changeset
18 link=`echo $sdl | sed -E 's/(so\.[0-9]*).*/\1/'`
2dfcd20a00b6 Added script for building and packaging releases
Michael Pavone <pavone@retrodev.com>
parents:
diff changeset
19 cd lib
2dfcd20a00b6 Added script for building and packaging releases
Michael Pavone <pavone@retrodev.com>
parents:
diff changeset
20 ln -s "$sdl" "$link"
2dfcd20a00b6 Added script for building and packaging releases
Michael Pavone <pavone@retrodev.com>
parents:
diff changeset
21 ln -s "$sdl" libSDL2.so
2dfcd20a00b6 Added script for building and packaging releases
Michael Pavone <pavone@retrodev.com>
parents:
diff changeset
22 cd ..
811
b1a09ef90755 Do a clean build of glew from release script
Michael Pavone <pavone@retrodev.com>
parents: 806
diff changeset
23 cd glew
1239
cd9c1acb0053 Remove clean step from SDL and glew dependencies in release_build script. Should not be needed now that each build type will have it's own environment
Michael Pavone <pavone@retrodev.com>
parents: 1238
diff changeset
24 make all
811
b1a09ef90755 Do a clean build of glew from release script
Michael Pavone <pavone@retrodev.com>
parents: 806
diff changeset
25 cd ..
806
2dfcd20a00b6 Added script for building and packaging releases
Michael Pavone <pavone@retrodev.com>
parents:
diff changeset
26 fi
1360
e1a6e8ee656f Print PATH in build_release script to help debug future build failures
Michael Pavone <pavone@retrodev.com>
parents: 1355
diff changeset
27 echo "Path is: $PATH"
1830
2f3600e204b0 Update build_release script to support Win64
Michael Pavone <pavone@retrodev.com>
parents: 1671
diff changeset
28 if [ $OS = "Win64" ]; then
2f3600e204b0 Update build_release script to support Win64
Michael Pavone <pavone@retrodev.com>
parents: 1671
diff changeset
29 make PORTABLE=1 OS=Windows CPU=x86_64 clean all
2f3600e204b0 Update build_release script to support Win64
Michael Pavone <pavone@retrodev.com>
parents: 1671
diff changeset
30 SDLDLLPATH=sdl/x86_64-w64-mingw32/bin
2f3600e204b0 Update build_release script to support Win64
Michael Pavone <pavone@retrodev.com>
parents: 1671
diff changeset
31 else
2f3600e204b0 Update build_release script to support Win64
Michael Pavone <pavone@retrodev.com>
parents: 1671
diff changeset
32 make PORTABLE=1 clean all
2f3600e204b0 Update build_release script to support Win64
Michael Pavone <pavone@retrodev.com>
parents: 1671
diff changeset
33 SDLDLLPATH=sdl/i686-w64-mingw32/bin
2f3600e204b0 Update build_release script to support Win64
Michael Pavone <pavone@retrodev.com>
parents: 1671
diff changeset
34 fi
977
4cbc349a82a9 Inclue menu.bin in release directories. Added a Windows RC file and icon
Michael Pavone <pavone@retrodev.com>
parents: 812
diff changeset
35 make menu.bin
1830
2f3600e204b0 Update build_release script to support Win64
Michael Pavone <pavone@retrodev.com>
parents: 1671
diff changeset
36 if [ $OS = "Windows" -o $OS = "Win64" ]; then
2f3600e204b0 Update build_release script to support Win64
Michael Pavone <pavone@retrodev.com>
parents: 1671
diff changeset
37 binaries="dis.exe zdis.exe stateview.exe vgmplay.exe blastem.exe $SDLDLLPATH/SDL2.dll"
1249
83b3b7ba910e Eliminate usage of wine in build_release
Michael Pavone <pavone@retrodev.com>
parents: 1240
diff changeset
38 verstr=`sed -E -n 's/^[^B]+BLASTEM_VERSION "([^"]+)"/blastem \1/p' blastem.c`
806
2dfcd20a00b6 Added script for building and packaging releases
Michael Pavone <pavone@retrodev.com>
parents:
diff changeset
39 txt=".txt"
2dfcd20a00b6 Added script for building and packaging releases
Michael Pavone <pavone@retrodev.com>
parents:
diff changeset
40 else
977
4cbc349a82a9 Inclue menu.bin in release directories. Added a Windows RC file and icon
Michael Pavone <pavone@retrodev.com>
parents: 812
diff changeset
41 binaries="dis zdis stateview vgmplay blastem termhelper"
812
574495372d1c Finish OS X support in build_release script. Fix a name conflict in vgmplay on OS X. Call set_exe_str in vgmplay and stateview
Michael Pavone <pavone@retrodev.com>
parents: 811
diff changeset
42 if [ $OS = "Darwin" ]; then
977
4cbc349a82a9 Inclue menu.bin in release directories. Added a Windows RC file and icon
Michael Pavone <pavone@retrodev.com>
parents: 812
diff changeset
43 binaries="$binaries Frameworks"
812
574495372d1c Finish OS X support in build_release script. Fix a name conflict in vgmplay on OS X. Call set_exe_str in vgmplay and stateview
Michael Pavone <pavone@retrodev.com>
parents: 811
diff changeset
44 else
977
4cbc349a82a9 Inclue menu.bin in release directories. Added a Windows RC file and icon
Michael Pavone <pavone@retrodev.com>
parents: 812
diff changeset
45 binaries="$binaries lib"
812
574495372d1c Finish OS X support in build_release script. Fix a name conflict in vgmplay on OS X. Call set_exe_str in vgmplay and stateview
Michael Pavone <pavone@retrodev.com>
parents: 811
diff changeset
46 fi
1249
83b3b7ba910e Eliminate usage of wine in build_release
Michael Pavone <pavone@retrodev.com>
parents: 1240
diff changeset
47 verstr=`./blastem -v`
806
2dfcd20a00b6 Added script for building and packaging releases
Michael Pavone <pavone@retrodev.com>
parents:
diff changeset
48 txt=""
2dfcd20a00b6 Added script for building and packaging releases
Michael Pavone <pavone@retrodev.com>
parents:
diff changeset
49 fi
977
4cbc349a82a9 Inclue menu.bin in release directories. Added a Windows RC file and icon
Michael Pavone <pavone@retrodev.com>
parents: 812
diff changeset
50 binaries="$binaries menu.bin"
1249
83b3b7ba910e Eliminate usage of wine in build_release
Michael Pavone <pavone@retrodev.com>
parents: 1240
diff changeset
51 ver=`echo $verstr | awk '/blastem/ { gsub(/\r/, "", $2); print $2 }'`
806
2dfcd20a00b6 Added script for building and packaging releases
Michael Pavone <pavone@retrodev.com>
parents:
diff changeset
52 if [ $OS = "Windows" ]; then
2dfcd20a00b6 Added script for building and packaging releases
Michael Pavone <pavone@retrodev.com>
parents:
diff changeset
53 suffix='-win32'
1830
2f3600e204b0 Update build_release script to support Win64
Michael Pavone <pavone@retrodev.com>
parents: 1671
diff changeset
54 elif [ $OS = "Win64" ]; then
2f3600e204b0 Update build_release script to support Win64
Michael Pavone <pavone@retrodev.com>
parents: 1671
diff changeset
55 suffix='-win64'
806
2dfcd20a00b6 Added script for building and packaging releases
Michael Pavone <pavone@retrodev.com>
parents:
diff changeset
56 elif [ $OS = "Darwin" ]; then
2dfcd20a00b6 Added script for building and packaging releases
Michael Pavone <pavone@retrodev.com>
parents:
diff changeset
57 suffix='-osx'
2dfcd20a00b6 Added script for building and packaging releases
Michael Pavone <pavone@retrodev.com>
parents:
diff changeset
58 else
2dfcd20a00b6 Added script for building and packaging releases
Michael Pavone <pavone@retrodev.com>
parents:
diff changeset
59 suffix=`file ./blastem | sed -E 's/^[^:]*: [^ ]* ([0-9]*)-bit .*/\1/'`
2dfcd20a00b6 Added script for building and packaging releases
Michael Pavone <pavone@retrodev.com>
parents:
diff changeset
60 fi
2dfcd20a00b6 Added script for building and packaging releases
Michael Pavone <pavone@retrodev.com>
parents:
diff changeset
61 dir="blastem${suffix}-${ver}"
2dfcd20a00b6 Added script for building and packaging releases
Michael Pavone <pavone@retrodev.com>
parents:
diff changeset
62 echo $dir
2dfcd20a00b6 Added script for building and packaging releases
Michael Pavone <pavone@retrodev.com>
parents:
diff changeset
63 rm -rf "$dir"
2dfcd20a00b6 Added script for building and packaging releases
Michael Pavone <pavone@retrodev.com>
parents:
diff changeset
64 mkdir "$dir"
1900
93960907807a Added UI for selecting configured model
Michael Pavone <pavone@retrodev.com>
parents: 1830
diff changeset
65 cp -r $binaries shaders images default.cfg rom.db gamecontrollerdb.txt systems.cfg "$dir"
806
2dfcd20a00b6 Added script for building and packaging releases
Michael Pavone <pavone@retrodev.com>
parents:
diff changeset
66 for file in README COPYING CHANGELOG; do
2dfcd20a00b6 Added script for building and packaging releases
Michael Pavone <pavone@retrodev.com>
parents:
diff changeset
67 cp "$file" "$dir"/"$file$txt"
2dfcd20a00b6 Added script for building and packaging releases
Michael Pavone <pavone@retrodev.com>
parents:
diff changeset
68 done
812
574495372d1c Finish OS X support in build_release script. Fix a name conflict in vgmplay on OS X. Call set_exe_str in vgmplay and stateview
Michael Pavone <pavone@retrodev.com>
parents: 811
diff changeset
69 if [ $OS = "Darwin" ]; then
574495372d1c Finish OS X support in build_release script. Fix a name conflict in vgmplay on OS X. Call set_exe_str in vgmplay and stateview
Michael Pavone <pavone@retrodev.com>
parents: 811
diff changeset
70 cp SDL-LICENSE "$dir"
574495372d1c Finish OS X support in build_release script. Fix a name conflict in vgmplay on OS X. Call set_exe_str in vgmplay and stateview
Michael Pavone <pavone@retrodev.com>
parents: 811
diff changeset
71 else
574495372d1c Finish OS X support in build_release script. Fix a name conflict in vgmplay on OS X. Call set_exe_str in vgmplay and stateview
Michael Pavone <pavone@retrodev.com>
parents: 811
diff changeset
72 cp sdl/COPYING.txt "$dir"/SDL-LICENSE$txt
574495372d1c Finish OS X support in build_release script. Fix a name conflict in vgmplay on OS X. Call set_exe_str in vgmplay and stateview
Michael Pavone <pavone@retrodev.com>
parents: 811
diff changeset
73 fi
806
2dfcd20a00b6 Added script for building and packaging releases
Michael Pavone <pavone@retrodev.com>
parents:
diff changeset
74 cp glew/LICENSE.txt "$dir"/GLEW-LICENSE$txt
2dfcd20a00b6 Added script for building and packaging releases
Michael Pavone <pavone@retrodev.com>
parents:
diff changeset
75
1830
2f3600e204b0 Update build_release script to support Win64
Michael Pavone <pavone@retrodev.com>
parents: 1671
diff changeset
76 if [ $OS = "Windows" -o $OS = "Win64" ]; then
806
2dfcd20a00b6 Added script for building and packaging releases
Michael Pavone <pavone@retrodev.com>
parents:
diff changeset
77 rm -f "${dir}.zip"
2dfcd20a00b6 Added script for building and packaging releases
Michael Pavone <pavone@retrodev.com>
parents:
diff changeset
78 zip -r "${dir}.zip" "$dir"
1240
c63516b6824a Fun untested changes for uploading nightly builds
Michael Pavone <pavone@retrodev.com>
parents: 1239
diff changeset
79 echo "${dir}.zip"
806
2dfcd20a00b6 Added script for building and packaging releases
Michael Pavone <pavone@retrodev.com>
parents:
diff changeset
80 else
2dfcd20a00b6 Added script for building and packaging releases
Michael Pavone <pavone@retrodev.com>
parents:
diff changeset
81 rm -f "${dir}.tar.gz"
2dfcd20a00b6 Added script for building and packaging releases
Michael Pavone <pavone@retrodev.com>
parents:
diff changeset
82 tar -cvzf "${dir}.tar.gz" "$dir"
1240
c63516b6824a Fun untested changes for uploading nightly builds
Michael Pavone <pavone@retrodev.com>
parents: 1239
diff changeset
83 echo "${dir}.tar.gz"
806
2dfcd20a00b6 Added script for building and packaging releases
Michael Pavone <pavone@retrodev.com>
parents:
diff changeset
84 fi