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
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
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