Mercurial > repos > blastem
annotate build_release @ 1971:80920c21bb52
Add an event log soft flush and call it twice per frame in between hard flushes to netplay latency when there are insufficient hardware updates to flush packets in the middle of a frame
author | Michael Pavone <pavone@retrodev.com> |
---|---|
date | Fri, 08 May 2020 11:40:30 -0700 |
parents | 794a5c9a2c73 |
children | 33f454232aee |
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 |
1943
794a5c9a2c73
Kill the stateview target as it is not very useful these days and breaks a lot
Michael Pavone <pavone@retrodev.com>
parents:
1900
diff
changeset
|
37 binaries="dis.exe zdis.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 |
1943
794a5c9a2c73
Kill the stateview target as it is not very useful these days and breaks a lot
Michael Pavone <pavone@retrodev.com>
parents:
1900
diff
changeset
|
41 binaries="dis zdis 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 |