1
0
mirror of https://github.com/open-simh/simh.git synced 2026-02-12 02:57:44 +00:00

Github CI/CD updates

- Nuke and reinstall HomeBrew for macOS builds. Gets around the whole
  problem of stale links and conflicting packages installed in the GitHub
  macOS images.

- macOS 12 and Ubuntu 20.04 officially deprecated. Ubuntu 20.04 will be
  removed from GitHub's runner images on 01 APR 2025.

- .travis/deps.sh: Add mingw32 as a dependency target, enable MinGW64
  32-bit builds.

- Work around LTO bug on Ubuntu and macOS compilers, where LTO appears
  to miscalculate the number of bytes stored when using the default byte
  swapping 'for' loop. This is a workaround that uses compiler swapping
  intrinsics for well known sizes that appeases LTO. The alternative is
  to wait for a compiler fix, which is infeasible.
This commit is contained in:
B. Scott Michel
2025-03-03 12:13:24 -08:00
committed by Paul Koning
parent 6fd146ae66
commit 7adffe5794
4 changed files with 144 additions and 60 deletions

View File

@@ -27,7 +27,20 @@ install_linux() {
sudo apt-get install -ym libegl1-mesa-dev libgles2-mesa-dev
sudo apt-get install -ym libsdl2-dev libfreetype6-dev libsdl2-ttf-dev
sudo apt-get install -ym libpcap-dev libvdeplug-dev
sudo apt-get install -ym cmake cmake-data
sudo apt-get install -ym cmake cmake-data ninja-build
}
install_mingw32() {
## Doesn't have libpcap or cmake's extra modules. Not that this
## makes much of a difference.
pacman -S --needed mingw-w64-i686-ninja \
mingw-w64-i686-cmake \
mingw-w64-i686-gcc \
mingw-w64-i686-make \
mingw-w64-i686-pcre \
mingw-w64-i686-freetype \
mingw-w64-i686-SDL2 \
mingw-w64-i686-SDL2_ttf
}
install_mingw64() {
@@ -71,14 +84,15 @@ install_clang64() {
case "$1" in
osx|macports|linux|mingw64|ucrt64|clang64)
osx|macports|linux|mingw32|mingw64|ucrt64|clang64)
install_"$1"
;;
arch-linux)
install_arch_linux
;;
*)
echo "$0: Need an operating system name: osx, arch-linux, linux, mingw64 or ucrt64"
echo "$0: Need an operating system name:"
typeset -f | sed -e '/^install_/!d' -e 's/^install_/ - /' -e 's/ ()//' | sort
exit 1
;;
esac