Skip to content

Commit 920f01a

Browse files
committed
Merge branch 'development' into zip-save-files
2 parents 56bd587 + b2c504e commit 920f01a

File tree

1,577 files changed

+105657
-63140
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

1,577 files changed

+105657
-63140
lines changed

.git-blame-ignore-revs

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,3 +13,7 @@ b22c5ab241f040a16ef502a8b5f2bca125368060
1313
f701bc23cfae7c1cafc48070d986ba16a5873416
1414
5efd90188ede818ed42fee06bb65f29cb892c54f
1515
b21b546e2dc9062b1918e7e01d517a537437bbc4
16+
d7fadcc33a4dc18c5bc214f4930011f073f1d8f5
17+
ed9fe94aca5e514a13e3c551e30af3862a31b0b5
18+
1578aaf760454156359e295bd8b498f744f3ecd7
19+
0d9d14f0e7a2a1326dd143652cbb74609966956f

.github/actions/bundle_release/action.yaml

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ runs:
77
shell: bash
88

99
- name: Download build artefacts
10-
uses: actions/download-artifact@v3
10+
uses: actions/download-artifact@v4
1111
with:
1212
path: release
1313

@@ -18,12 +18,14 @@ runs:
1818
shell: bash
1919
run: |
2020
zip --must-match -j CortexCommand.windows.zip \
21-
release/Cortex\ Command*.exe/Cortex\ Command*.exe \
21+
release/Cortex\ Command*/Cortex\ Command*.exe \
22+
release/Cortex\ Command*/Cortex\ Command*.pdb \
2223
external/lib/win/{fmod,SDL2}.dll
2324
2425
- name: Compress Linux Release
2526
shell: bash
2627
run: |
28+
chmod +x "release/CortexCommand (Linux)/CortexCommand.AppImage"
2729
zip --must-match -j CortexCommand.linux.zip \
2830
"release/CortexCommand (Linux)/CortexCommand.AppImage" \
2931
external/lib/linux/x86_64/libfmod.so*
Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
name: 'Get Game version Version'
2+
description: 'Fetches the current game version from the source code'
3+
4+
inputs:
5+
version-file:
6+
description: 'The file containing the version string'
7+
required: false
8+
default: Source/System/GameVersion.h
9+
10+
outputs:
11+
game-version:
12+
description: 'The current version string'
13+
value: ${{ steps.read-version.outputs.game-version }}
14+
15+
runs:
16+
using: "composite"
17+
steps:
18+
- name: Get the current Game Version from the source code
19+
id: read-version
20+
run: echo "game-version=$(grep 'c_VersionString = ' ${{ inputs.version-file }} | awk -F'"' '{print $2}')" >> $GITHUB_OUTPUT
21+
shell: bash

.github/actions/osxcross/action.yml

Lines changed: 154 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,154 @@
1+
name: "Setup osxcross"
2+
author: mbround18
3+
description: Setup osxcross for rust/other compilation projects.
4+
branding:
5+
icon: 'aperture'
6+
color: 'green'
7+
8+
9+
inputs:
10+
osx-version:
11+
description: "Version of osx to use."
12+
required: true
13+
14+
outputs:
15+
legacy-ssl:
16+
value: ${{steps.gen_configs.outputs.legacy-ssl}}
17+
meson-osxcross:
18+
value: ${{steps.gen_configs.outputs.meson-osxcross}}
19+
20+
runs:
21+
using: "composite"
22+
steps:
23+
- shell: bash
24+
run: |
25+
mkdir -p $GITHUB_ACTION_PATH/osxcross
26+
echo "OSXCROSS_FOLDER=$(echo "$GITHUB_ACTION_PATH/osxcross" | sed 's/\.\/*//g')" >> $GITHUB_ENV
27+
28+
29+
- uses: actions/checkout@v4
30+
with:
31+
repository: tpoechtrager/osxcross
32+
path: ${{env.OSXCROSS_FOLDER}}
33+
34+
- shell: bash
35+
id: target
36+
run: |
37+
repeat(){
38+
for i in {1..90}; do echo -n "$1"; done
39+
}
40+
41+
echo "::group::Disclaimer Click Here for Info"
42+
echo ""
43+
repeat "-"
44+
echo ""
45+
echo "The first time you run this it will take upwards of 9 minutes to compile. Subsequent builds are cached."
46+
echo ""
47+
repeat "-"
48+
echo ""
49+
echo "::endgroup::"
50+
51+
52+
echo "::group::Installing Deps"
53+
54+
sudo apt-get update
55+
sudo apt-get install --no-install-recommends -y -qq clang gcc g++ zlib1g-dev libmpc-dev libmpfr-dev libgmp-dev cmake libxml2-dev libssl-dev xz-utils
56+
echo "::endgroup::"
57+
58+
# Check setup for osx version
59+
echo "::group::Fetching macosx SDK"
60+
FILE_NAME="MacOSX${{ inputs.osx-version }}.sdk.tar.xz"
61+
62+
# Check joseluisq/macosx-sdks for release
63+
wget -nc "https://github.com/joseluisq/macosx-sdks/releases/download/${{ inputs.osx-version }}/${FILE_NAME}" -O "$OSXCROSS_FOLDER/tarballs/${FILE_NAME}"
64+
echo "::endgroup::"
65+
66+
echo "OSXCROSS_TARGET=${OSXCROSS_FOLDER}/target" >> $GITHUB_ENV
67+
68+
- uses: actions/cache@v4
69+
id: cache
70+
with:
71+
key: ${{ runner.os }}-osxcross-${{ inputs.osx-version }}
72+
path: |
73+
${{ env.OSXCROSS_TARGET }}
74+
75+
76+
- shell: bash
77+
if: steps.cache.outputs.cache-hit != 'true'
78+
env:
79+
SDK_VERSION: "${{ inputs.osx-version }}"
80+
UNATTENDED: "yes"
81+
run: |
82+
cd ${OSXCROSS_FOLDER}
83+
echo "::group::Build osxcross"
84+
./build.sh
85+
echo "::endgroup::"
86+
echo "::group::Build GCC"
87+
./build_gcc.sh
88+
echo "::endgroup::"
89+
90+
- shell: bash
91+
id: gen_configs
92+
run: |
93+
echo "::group::Setting up Bin files"
94+
OSXCROSS_FOLDER="$(echo "${GITHUB_ACTION_PATH}/osxcross" | sed 's/\.\/*//g')"
95+
echo "OSXCROSS Folder = ${OSXCROSS_FOLDER}"
96+
97+
if [ ! -d "$OSXCROSS_FOLDER/target/bin" ]; then
98+
echo "Error! Failed to find ${OSXCROSS_FOLDER}/target/bin folder!"
99+
exit 1
100+
else
101+
if hash sudo 2>/dev/null; then
102+
sudo chmod +x $OSXCROSS_FOLDER/target/bin/*
103+
else
104+
chmod +x $OSXCROSS_FOLDER/target/bin/*
105+
fi
106+
fi
107+
echo "::endgroup::"
108+
109+
echo "::group::Finding Arch Name"
110+
echo "$OSXCROSS_FOLDER/target/bin" >> $GITHUB_PATH
111+
ARCH_TARGET="$(ls $OSXCROSS_FOLDER/target | grep apple)"
112+
echo "::endgroup::"
113+
114+
ln -sf ${ARCH_TARGET}-otool ${OSXCROSS_TARGET}/bin/otool
115+
ln -sf ${ARCH_TARGET}-install_name_tool ${OSXCROSS_TARGET}/bin/install_name_tool
116+
117+
echo "::group::Write meson cross file"
118+
cat << EOF > $OSXCROSS_FOLDER/meson_osxcross.txt
119+
[constants]
120+
arch = '${ARCH_TARGET}'
121+
[binaries]
122+
c = ['ccache', arch + '-gcc']
123+
cpp = ['ccache', arch + '-g++']
124+
strip = arch + '-strip'
125+
pkg-config = arch + '-pkg-config'
126+
ranlib = arch + '-gcc-ranlib'
127+
ar = arch + '-gcc-ar'
128+
129+
[host_machine]
130+
system = 'darwin'
131+
cpu_family = 'x86_64'
132+
cpu = 'x86_64'
133+
endian = 'little'
134+
EOF
135+
echo "::endgroup::"
136+
137+
echo "meson-osxcross=${OSXCROSS_FOLDER}/meson_osxcross.txt" >> $GITHUB_OUTPUT
138+
139+
- shell: bash
140+
run: |
141+
OUT=$(patch -N -i ${GITHUB_ACTION_PATH}/macports.patch ${OSXCROSS_FOLDER}/target/bin/osxcross-macports) || echo "${OUT}" | grep "Skipping patch" -q || (echo "$OUT" && false);
142+
143+
- uses: actions/checkout@v4
144+
with:
145+
repository: auriamg/macdylibbundler
146+
path: ${{env.OSXCROSS_FOLDER}}/dylibbundler
147+
148+
- shell: bash
149+
run: |
150+
echo "::group::Install dylibbundler"
151+
cd ${OSXCROSS_FOLDER}/dylibbundler
152+
make
153+
echo "${OSXCROSS_FOLDER}/dylibbundler" >> $GITHUB_PATH
154+
echo "::endgroup::"
Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,26 @@
1+
diff --git a/tools/osxcross-macports b/tools/osxcross-macports
2+
index 3e87735..5c48e4e 100755
3+
--- a/tools/osxcross-macports
4+
+++ b/tools/osxcross-macports
5+
@@ -250,8 +250,10 @@ verifyFileIntegrity()
6+
getFile $PUBKEYURL "$PUBKEY"
7+
fi
8+
9+
- local rmd160=$(openssl rmd160 "$PUBKEY" | awk '{print $2}')
10+
- local sha1=$(openssl sha1 "$PUBKEY" | awk '{print $2}')
11+
+ errorMsg "set rmd160"
12+
+ local rmd160=$(openssl rmd160 -provider legacy "$PUBKEY" | awk '{print $2}')
13+
+ errorMsg "set sha1"
14+
+ local sha1=$(openssl sha1 "$PUBKEY" | awk '{print $2}')
15+
16+
if [ "$rmd160" != "$PUBKEYRMD160" -o "$sha1" != "$PUBKEYSHA1" ]; then
17+
errorMsg "invalid macports public key (hash check failed)"
18+
@@ -262,7 +264,7 @@ verifyFileIntegrity()
19+
20+
set +e
21+
22+
- openssl dgst -ripemd160 -verify "$PUBKEY" -signature \
23+
+ openssl dgst -provider legacy -provider default -ripemd160 -verify "$PUBKEY" -signature \
24+
"$CACHE/$file.rmd160" "$CACHE/$file" 1>/dev/null
25+
26+
if [ $? -ne 0 ]; then

.github/actions/set_version/action.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ runs:
1111
run: sed -i -E '/c_VersionString = /s/"[^"]*"/"${{inputs.new_release_version}}"/' Source/System/GameVersion.h
1212
shell: bash
1313

14-
- uses: actions/setup-python@v3
14+
- uses: actions/setup-python@v5
1515

1616
- name: Rewrite meson version
1717
run: |

.github/parameters/macports.yml

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,4 +12,5 @@ ports:
1212
- name: luajit
1313
- name: flac
1414
- name: dylibbundler
15-
- name: tree
15+
- name: tree
16+
- name: ccache

.github/workflows/clang-format.yml

Lines changed: 9 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -27,15 +27,19 @@ jobs:
2727

2828
steps:
2929
# Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it
30-
- uses: actions/checkout@v3
31-
- uses: actions/setup-python@v3
30+
- uses: actions/checkout@v4
31+
- uses: actions/setup-python@v5
3232

3333
- name: Install dependencies
34-
run: sudo apt-get install -y clang-format
34+
run: |
35+
mkdir bin
36+
wget https://github.com/muttleyxd/clang-tools-static-binaries/releases/download/master-8f72ab3c/clang-format-17_linux-amd64 -O bin/clang-format-17
37+
chmod +x bin/clang-format-17
3538
3639
- name: Run clang-format
3740
run: |
3841
.github/scripts/run-clang-format.py \
42+
--clang-format-executable bin/clang-format-17 \
3943
-i \
4044
-r Source Data/Base.rte/Shaders \
4145
--exclude Source/System/Base64 \
@@ -47,7 +51,8 @@ jobs:
4751
- name: Add missing newlines
4852
run: |
4953
.github/scripts/run-clang-format.py \
50-
-i --clang-format-executable .github/scripts/add-eol.sh \
54+
--clang-format-executable .github/scripts/add-eol.sh \
55+
-i \
5156
-r Source Data/Base.rte/Shaders \
5257
--exclude Source/System/Base64 \
5358
--exclude Source/System/BitMask \

0 commit comments

Comments
 (0)