Mercurial > repos > blastem
annotate build_release @ 2648:e16f567be36c
Fix lsl/lsr/asl/asr with memory operand
author | Michael Pavone <pavone@retrodev.com> |
---|---|
date | Sat, 01 Mar 2025 17:23:43 -0800 |
parents | c9bfed9156dc |
children |
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 |
2573
639561060a28
Do a little work towards eventual support for building against SDL3
Michael Pavone <pavone@retrodev.com>
parents:
2549
diff
changeset
|
8 SDL="sdl2" |
806
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 rm -rf lib |
2dfcd20a00b6
Added script for building and packaging releases
Michael Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
11 mkdir lib |
2573
639561060a28
Do a little work towards eventual support for building against SDL3
Michael Pavone <pavone@retrodev.com>
parents:
2549
diff
changeset
|
12 cd sdl |
639561060a28
Do a little work towards eventual support for building against SDL3
Michael Pavone <pavone@retrodev.com>
parents:
2549
diff
changeset
|
13 if [ -f ./configure ]; then |
639561060a28
Do a little work towards eventual support for building against SDL3
Michael Pavone <pavone@retrodev.com>
parents:
2549
diff
changeset
|
14 ./configure |
639561060a28
Do a little work towards eventual support for building against SDL3
Michael Pavone <pavone@retrodev.com>
parents:
2549
diff
changeset
|
15 make all |
639561060a28
Do a little work towards eventual support for building against SDL3
Michael Pavone <pavone@retrodev.com>
parents:
2549
diff
changeset
|
16 cd .. |
2576
c9bfed9156dc
Fix linux nightly builds
Michael Pavone <pavone@retrodev.com>
parents:
2573
diff
changeset
|
17 cp sdl/build/.libs/libSDL2-*.so.*.*.* lib |
2573
639561060a28
Do a little work towards eventual support for building against SDL3
Michael Pavone <pavone@retrodev.com>
parents:
2549
diff
changeset
|
18 sdl=`ls lib` |
639561060a28
Do a little work towards eventual support for building against SDL3
Michael Pavone <pavone@retrodev.com>
parents:
2549
diff
changeset
|
19 link=`echo $sdl | sed -E 's/(so\.[0-9]*).*/\1/'` |
639561060a28
Do a little work towards eventual support for building against SDL3
Michael Pavone <pavone@retrodev.com>
parents:
2549
diff
changeset
|
20 cd lib |
639561060a28
Do a little work towards eventual support for building against SDL3
Michael Pavone <pavone@retrodev.com>
parents:
2549
diff
changeset
|
21 ln -s "$sdl" "$link" |
639561060a28
Do a little work towards eventual support for building against SDL3
Michael Pavone <pavone@retrodev.com>
parents:
2549
diff
changeset
|
22 ln -s "$sdl" libSDL2.so |
639561060a28
Do a little work towards eventual support for building against SDL3
Michael Pavone <pavone@retrodev.com>
parents:
2549
diff
changeset
|
23 elif [ -f ./CMakeLists.txt ]; then |
639561060a28
Do a little work towards eventual support for building against SDL3
Michael Pavone <pavone@retrodev.com>
parents:
2549
diff
changeset
|
24 cmake -S . -B build |
639561060a28
Do a little work towards eventual support for building against SDL3
Michael Pavone <pavone@retrodev.com>
parents:
2549
diff
changeset
|
25 cmake --build build |
639561060a28
Do a little work towards eventual support for building against SDL3
Michael Pavone <pavone@retrodev.com>
parents:
2549
diff
changeset
|
26 cp build/libSDL3.so* ../lib |
639561060a28
Do a little work towards eventual support for building against SDL3
Michael Pavone <pavone@retrodev.com>
parents:
2549
diff
changeset
|
27 SDL="sdl3" |
639561060a28
Do a little work towards eventual support for building against SDL3
Michael Pavone <pavone@retrodev.com>
parents:
2549
diff
changeset
|
28 else |
639561060a28
Do a little work towards eventual support for building against SDL3
Michael Pavone <pavone@retrodev.com>
parents:
2549
diff
changeset
|
29 echo "Failed to find SDL build file!"; |
639561060a28
Do a little work towards eventual support for building against SDL3
Michael Pavone <pavone@retrodev.com>
parents:
2549
diff
changeset
|
30 exit 1 |
639561060a28
Do a little work towards eventual support for building against SDL3
Michael Pavone <pavone@retrodev.com>
parents:
2549
diff
changeset
|
31 fi |
806
2dfcd20a00b6
Added script for building and packaging releases
Michael Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
32 cd .. |
811
b1a09ef90755
Do a clean build of glew from release script
Michael Pavone <pavone@retrodev.com>
parents:
806
diff
changeset
|
33 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
|
34 make all |
811
b1a09ef90755
Do a clean build of glew from release script
Michael Pavone <pavone@retrodev.com>
parents:
806
diff
changeset
|
35 cd .. |
806
2dfcd20a00b6
Added script for building and packaging releases
Michael Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
36 fi |
1360
e1a6e8ee656f
Print PATH in build_release script to help debug future build failures
Michael Pavone <pavone@retrodev.com>
parents:
1355
diff
changeset
|
37 echo "Path is: $PATH" |
1830
2f3600e204b0
Update build_release script to support Win64
Michael Pavone <pavone@retrodev.com>
parents:
1671
diff
changeset
|
38 if [ $OS = "Win64" ]; then |
2573
639561060a28
Do a little work towards eventual support for building against SDL3
Michael Pavone <pavone@retrodev.com>
parents:
2549
diff
changeset
|
39 make PORTABLE=1 OS=Windows CPU=x86_64 SDL=$SDL clean all |
1830
2f3600e204b0
Update build_release script to support Win64
Michael Pavone <pavone@retrodev.com>
parents:
1671
diff
changeset
|
40 SDLDLLPATH=sdl/x86_64-w64-mingw32/bin |
2f3600e204b0
Update build_release script to support Win64
Michael Pavone <pavone@retrodev.com>
parents:
1671
diff
changeset
|
41 else |
2573
639561060a28
Do a little work towards eventual support for building against SDL3
Michael Pavone <pavone@retrodev.com>
parents:
2549
diff
changeset
|
42 make PORTABLE=1 SDL=$SDL clean all |
1830
2f3600e204b0
Update build_release script to support Win64
Michael Pavone <pavone@retrodev.com>
parents:
1671
diff
changeset
|
43 SDLDLLPATH=sdl/i686-w64-mingw32/bin |
2f3600e204b0
Update build_release script to support Win64
Michael Pavone <pavone@retrodev.com>
parents:
1671
diff
changeset
|
44 fi |
2035
33f454232aee
Added open source TMSS replacement
Michael Pavone <pavone@retrodev.com>
parents:
1943
diff
changeset
|
45 make menu.bin tmss.md |
1830
2f3600e204b0
Update build_release script to support Win64
Michael Pavone <pavone@retrodev.com>
parents:
1671
diff
changeset
|
46 if [ $OS = "Windows" -o $OS = "Win64" ]; then |
2487
2ea2f3aa5aa8
Remove dis.exe and zdis.exe from Windows builds due to silly antivirus false positives
Michael Pavone <pavone@retrodev.com>
parents:
2289
diff
changeset
|
47 binaries="blastem.exe $SDLDLLPATH/SDL2.dll" |
2549
2d32c1232fff
Fix Windows build version extraction for version.inc change
Michael Pavone <pavone@retrodev.com>
parents:
2487
diff
changeset
|
48 verstr=`sed -E -n 's/^[^B]+BLASTEM_VERSION "([^"]+)"/blastem \1/p' version.inc` |
806
2dfcd20a00b6
Added script for building and packaging releases
Michael Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
49 txt=".txt" |
2dfcd20a00b6
Added script for building and packaging releases
Michael Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
50 else |
2289
92449b47cce8
Integrate VGM player into main blastem binary
Michael Pavone <pavone@retrodev.com>
parents:
2051
diff
changeset
|
51 binaries="dis zdis 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
|
52 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
|
53 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
|
54 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
|
55 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
|
56 fi |
1249
83b3b7ba910e
Eliminate usage of wine in build_release
Michael Pavone <pavone@retrodev.com>
parents:
1240
diff
changeset
|
57 verstr=`./blastem -v` |
806
2dfcd20a00b6
Added script for building and packaging releases
Michael Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
58 txt="" |
2dfcd20a00b6
Added script for building and packaging releases
Michael Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
59 fi |
2035
33f454232aee
Added open source TMSS replacement
Michael Pavone <pavone@retrodev.com>
parents:
1943
diff
changeset
|
60 binaries="$binaries menu.bin tmss.md" |
1249
83b3b7ba910e
Eliminate usage of wine in build_release
Michael Pavone <pavone@retrodev.com>
parents:
1240
diff
changeset
|
61 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
|
62 if [ $OS = "Windows" ]; then |
2dfcd20a00b6
Added script for building and packaging releases
Michael Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
63 suffix='-win32' |
1830
2f3600e204b0
Update build_release script to support Win64
Michael Pavone <pavone@retrodev.com>
parents:
1671
diff
changeset
|
64 elif [ $OS = "Win64" ]; then |
2f3600e204b0
Update build_release script to support Win64
Michael Pavone <pavone@retrodev.com>
parents:
1671
diff
changeset
|
65 suffix='-win64' |
806
2dfcd20a00b6
Added script for building and packaging releases
Michael Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
66 elif [ $OS = "Darwin" ]; then |
2dfcd20a00b6
Added script for building and packaging releases
Michael Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
67 suffix='-osx' |
2dfcd20a00b6
Added script for building and packaging releases
Michael Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
68 else |
2dfcd20a00b6
Added script for building and packaging releases
Michael Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
69 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
|
70 fi |
2dfcd20a00b6
Added script for building and packaging releases
Michael Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
71 dir="blastem${suffix}-${ver}" |
2dfcd20a00b6
Added script for building and packaging releases
Michael Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
72 echo $dir |
2dfcd20a00b6
Added script for building and packaging releases
Michael Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
73 rm -rf "$dir" |
2dfcd20a00b6
Added script for building and packaging releases
Michael Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
74 mkdir "$dir" |
1900
93960907807a
Added UI for selecting configured model
Michael Pavone <pavone@retrodev.com>
parents:
1830
diff
changeset
|
75 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
|
76 for file in README COPYING CHANGELOG; do |
2dfcd20a00b6
Added script for building and packaging releases
Michael Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
77 cp "$file" "$dir"/"$file$txt" |
2dfcd20a00b6
Added script for building and packaging releases
Michael Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
78 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
|
79 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
|
80 cp SDL-LICENSE "$dir" |
2051
97bfb6089274
Update source path of SDL license file for Linux builds
Michael Pavone <pavone@retrodev.com>
parents:
2035
diff
changeset
|
81 elif [ $OS = "Windows" -o $OS = "Win64" ]; then |
97bfb6089274
Update source path of SDL license file for Linux builds
Michael Pavone <pavone@retrodev.com>
parents:
2035
diff
changeset
|
82 cp sdl/COPYING.txt "$dir"/SDL-LICENSE$txt |
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
|
83 else |
2051
97bfb6089274
Update source path of SDL license file for Linux builds
Michael Pavone <pavone@retrodev.com>
parents:
2035
diff
changeset
|
84 cp sdl/LICENSE.txt "$dir"/SDL-LICENSE$txt |
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
|
85 fi |
806
2dfcd20a00b6
Added script for building and packaging releases
Michael Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
86 cp glew/LICENSE.txt "$dir"/GLEW-LICENSE$txt |
2dfcd20a00b6
Added script for building and packaging releases
Michael Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
87 |
1830
2f3600e204b0
Update build_release script to support Win64
Michael Pavone <pavone@retrodev.com>
parents:
1671
diff
changeset
|
88 if [ $OS = "Windows" -o $OS = "Win64" ]; then |
806
2dfcd20a00b6
Added script for building and packaging releases
Michael Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
89 rm -f "${dir}.zip" |
2dfcd20a00b6
Added script for building and packaging releases
Michael Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
90 zip -r "${dir}.zip" "$dir" |
1240
c63516b6824a
Fun untested changes for uploading nightly builds
Michael Pavone <pavone@retrodev.com>
parents:
1239
diff
changeset
|
91 echo "${dir}.zip" |
806
2dfcd20a00b6
Added script for building and packaging releases
Michael Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
92 else |
2dfcd20a00b6
Added script for building and packaging releases
Michael Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
93 rm -f "${dir}.tar.gz" |
2dfcd20a00b6
Added script for building and packaging releases
Michael Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
94 tar -cvzf "${dir}.tar.gz" "$dir" |
1240
c63516b6824a
Fun untested changes for uploading nightly builds
Michael Pavone <pavone@retrodev.com>
parents:
1239
diff
changeset
|
95 echo "${dir}.tar.gz" |
806
2dfcd20a00b6
Added script for building and packaging releases
Michael Pavone <pavone@retrodev.com>
parents:
diff
changeset
|
96 fi |