Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Sign in / Register
Toggle navigation
Y
ygopro
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Locked Files
Issues
0
Issues
0
List
Boards
Labels
Service Desk
Milestones
Merge Requests
1
Merge Requests
1
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Security & Compliance
Security & Compliance
Dependency List
License Compliance
Packages
Packages
List
Container Registry
Analytics
Analytics
CI / CD
Code Review
Insights
Issues
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
nanahira
ygopro
Commits
5fd6cd19
Commit
5fd6cd19
authored
Mar 10, 2026
by
mercury233
Committed by
GitHub
Mar 10, 2026
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
add CI override, refactor downloading dependencies in CI (#2999)
parent
e69da396
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
222 additions
and
329 deletions
+222
-329
.github/workflows/build.yml
.github/workflows/build.yml
+222
-329
No files found.
.github/workflows/build.yml
View file @
5fd6cd19
...
@@ -11,71 +11,97 @@ on:
...
@@ -11,71 +11,97 @@ on:
branches
:
[
"
master"
]
branches
:
[
"
master"
]
jobs
:
jobs
:
build-windows
:
prepare
:
strategy
:
runs-on
:
ubuntu-latest
fail-fast
:
false
outputs
:
matrix
:
ocgcore-url
:
${{ steps.parse-pr-override.outputs.ocgcore-url }}
name
:
ocgcore-branch
:
${{ steps.parse-pr-override.outputs.ocgcore-branch }}
-
windows
# - windows-irrklang
# - windows-no-dxsdk
-
windows-x64
# - windows-2025
include
:
-
name
:
windows
os
:
windows-2022
vs
:
vs2022
audiolib
:
miniaudio
# - name: windows-irrklang
# os: windows-2022
# vs: vs2022
# audiolib: irrklang
# - name: windows-no-dxsdk
# os: windows-2022
# vs: vs2022
# audiolib: miniaudio
# nodxsdk: true
-
name
:
windows-x64
os
:
windows-2022
vs
:
vs2022
audiolib
:
miniaudio
x64
:
true
# - name: windows-2025
# os: windows-2025
# vs: vs2025 # to be enabled after the release of Visual Studio 2025
# audiolib: miniaudio
runs-on
:
${{ matrix.os }}
steps
:
steps
:
-
name
:
Checkout repository with submodules
-
name
:
Parse pull request description for dependency overrides
uses
:
actions/checkout@v4
id
:
parse-pr-override
with
:
env
:
fetch-depth
:
1
PR_BODY
:
${{ github.event.pull_request.body }}
submodules
:
true
shell
:
python
run
:
|
# You can override the URLs and branches of dependencies by adding lines in the pull request description.
# This is useful when you want to test changes which require modifications in the submodules or dependencies.
# Expected description format:
# > name: owner/repo@branch
# (leading >, dependency name, followed by GitHub repository, optional branch)
# Example:
# > ocgcore: mercury233/ygopro-core@patch-branch
# Supported dependencies:
# ocgcore, irrlicht
import re, os
body = os.environ.get('PR_BODY', '')
# Default URLs and branches for dependencies
ocgcore_url = 'https://github.com/Fluorohydride/ygopro-core'
ocgcore_branch = ''
irrlicht_url = 'https://github.com/mercury233/irrlicht'
irrlicht_branch = ''
# Regex patterns for parsing:
# REPO_RE: matches format "owner/repo" (e.g., "user/repo-name")
# BRANCH_RE: matches branch names with dots, slashes, and hyphens (e.g., "feature/my-branch", "v1.0")
REPO_RE = r'[\w][\w.-]*/[\w][\w.-]*'
BRANCH_RE = r'[\w][\w./-]*'
m = re.search(rf'(?m)^\s*>\s*ocgcore\s*:\s*({REPO_RE})(?:@({BRANCH_RE}))?\s*$', body)
if m:
ocgcore_url = f'https://github.com/{m.group(1)}'
if m.group(2):
ocgcore_branch = m.group(2)
m = re.search(rf'(?m)^\s*>\s*irrlicht\s*:\s*({REPO_RE})(?:@({BRANCH_RE}))?\s*$', body)
if m:
irrlicht_url = f'https://github.com/{m.group(1)}'
if m.group(2):
irrlicht_branch = m.group(2)
# Output the parsed URLs and branches for downstream jobs
with open(os.environ['GITHUB_OUTPUT'], 'a') as f:
f.write(f'ocgcore-url={ocgcore_url}\n')
f.write(f'ocgcore-branch={ocgcore_branch}\n')
f.write(f'irrlicht-url={irrlicht_url}\n')
f.write(f'irrlicht-branch={irrlicht_branch}\n')
-
name
:
Update submodules
-
name
:
Download irrlicht
run
:
|
run
:
|
cd ocgcore
branch="${{ steps.parse-pr-override.outputs.irrlicht-branch }}"
git checkout master
if [ -n "$branch" ]; then
git pull origin master
git clone --depth=1 -b "$branch" ${{ steps.parse-pr-override.outputs.irrlicht-url }} irrlicht
cd ..
else
# cd script
git clone --depth=1 ${{ steps.parse-pr-override.outputs.irrlicht-url }} irrlicht
# git checkout master
fi
# git pull origin master
# cd ..
-
name
:
Download
premake
-
name
:
Download
lua
id
:
premake
id
:
lua
uses
:
mercury233/action-cache-download-file@v1.0.0
uses
:
mercury233/action-cache-download-file@v1.0.0
with
:
with
:
url
:
https://github.com/premake/premake-core/releases/download/v5.0.0-beta7/premake-5.0.0-beta7-windows.zip
url
:
https://www.lua.org/ftp/lua-5.4.8.tar.gz
filename
:
premake5.zip
-
name
:
Extract
premake
-
name
:
Extract
lua
run
:
|
run
:
|
7z x ${{ steps.premake.outputs.filepath }}
tar xf ${{ steps.lua.outputs.filepath }}
mv lua-5.4.8 lua
-
name
:
Download miniaudio
run
:
|
git clone --depth=1 -b 0.11.23 https://github.com/mackron/miniaudio
cd miniaudio
cp extras/miniaudio_split/miniaudio.* .
cd ..
-
name
:
Upload sources
uses
:
actions/upload-artifact@v4
with
:
name
:
dependencies-sources
path
:
|
lua/
miniaudio/
irrlicht/
prepare-static-dependencies
:
runs-on
:
ubuntu-latest
steps
:
-
name
:
Download libevent
-
name
:
Download libevent
id
:
libevent
id
:
libevent
uses
:
mercury233/action-cache-download-file@v1.0.0
uses
:
mercury233/action-cache-download-file@v1.0.0
...
@@ -86,7 +112,7 @@ jobs:
...
@@ -86,7 +112,7 @@ jobs:
-
name
:
Extract libevent
-
name
:
Extract libevent
run
:
|
run
:
|
tar xf ${{ steps.libevent.outputs.filepath }}
tar xf ${{ steps.libevent.outputs.filepath }}
m
ove
libevent-2.1.12-stable event
m
v
libevent-2.1.12-stable event
-
name
:
Download freetype
-
name
:
Download freetype
id
:
freetype
id
:
freetype
...
@@ -97,18 +123,7 @@ jobs:
...
@@ -97,18 +123,7 @@ jobs:
-
name
:
Extract freetype
-
name
:
Extract freetype
run
:
|
run
:
|
tar xf ${{ steps.freetype.outputs.filepath }}
tar xf ${{ steps.freetype.outputs.filepath }}
move freetype-2.13.3 freetype
mv freetype-2.13.3 freetype
-
name
:
Download lua
id
:
lua
uses
:
mercury233/action-cache-download-file@v1.0.0
with
:
url
:
https://www.lua.org/ftp/lua-5.4.8.tar.gz
-
name
:
Extract lua
run
:
|
tar xf ${{ steps.lua.outputs.filepath }}
move lua-5.4.8 lua
-
name
:
Download sqlite
-
name
:
Download sqlite
id
:
sqlite
id
:
sqlite
...
@@ -119,67 +134,146 @@ jobs:
...
@@ -119,67 +134,146 @@ jobs:
-
name
:
Extract sqlite
-
name
:
Extract sqlite
run
:
|
run
:
|
7z x ${{ steps.sqlite.outputs.filepath }}
7z x ${{ steps.sqlite.outputs.filepath }}
m
ove
sqlite-amalgamation-3500100 sqlite3
m
v
sqlite-amalgamation-3500100 sqlite3
-
name
:
Download miniaudio
-
name
:
Create miniaudio external directory
if
:
matrix.audiolib == 'miniaudio'
run
:
|
run
:
|
git clone --depth=1 -b 0.11.23 https://github.com/mackron/miniaudio
mkdir -p miniaudio/external
cd miniaudio
xcopy /Y extras\miniaudio_split\miniaudio.* .
cd ..
-
name
:
Download ogg
-
name
:
Download ogg
if
:
matrix.audiolib == 'miniaudio'
id
:
ogg
id
:
ogg
uses
:
mercury233/action-cache-download-file@v1.0.0
uses
:
mercury233/action-cache-download-file@v1.0.0
with
:
with
:
url
:
https://github.com/xiph/ogg/releases/download/v1.3.5/libogg-1.3.5.tar.gz
url
:
https://github.com/xiph/ogg/releases/download/v1.3.5/libogg-1.3.5.tar.gz
-
name
:
Extract ogg
-
name
:
Extract ogg
if
:
matrix.audiolib == 'miniaudio'
run
:
|
run
:
|
tar xf ${{ steps.ogg.outputs.filepath }}
tar xf ${{ steps.ogg.outputs.filepath }}
m
ove
libogg-1.3.5 miniaudio/external/ogg
m
v
libogg-1.3.5 miniaudio/external/ogg
-
name
:
Download opus
-
name
:
Download opus
if
:
matrix.audiolib == 'miniaudio'
id
:
opus
id
:
opus
uses
:
mercury233/action-cache-download-file@v1.0.0
uses
:
mercury233/action-cache-download-file@v1.0.0
with
:
with
:
url
:
https://github.com/xiph/opus/releases/download/v1.5.2/opus-1.5.2.tar.gz
url
:
https://github.com/xiph/opus/releases/download/v1.5.2/opus-1.5.2.tar.gz
-
name
:
Extract opus
-
name
:
Extract opus
if
:
matrix.audiolib == 'miniaudio'
run
:
|
run
:
|
tar xf ${{ steps.opus.outputs.filepath }}
tar xf ${{ steps.opus.outputs.filepath }}
m
ove
opus-1.5.2 miniaudio/external/opus
m
v
opus-1.5.2 miniaudio/external/opus
-
name
:
Download opusfile
-
name
:
Download opusfile
if
:
matrix.audiolib == 'miniaudio'
id
:
opusfile
id
:
opusfile
uses
:
mercury233/action-cache-download-file@v1.0.0
uses
:
mercury233/action-cache-download-file@v1.0.0
with
:
with
:
url
:
https://github.com/xiph/opusfile/releases/download/v0.12/opusfile-0.12.tar.gz
url
:
https://github.com/xiph/opusfile/releases/download/v0.12/opusfile-0.12.tar.gz
-
name
:
Extract opusfile
-
name
:
Extract opusfile
if
:
matrix.audiolib == 'miniaudio'
run
:
|
run
:
|
tar xf ${{ steps.opusfile.outputs.filepath }}
tar xf ${{ steps.opusfile.outputs.filepath }}
m
ove
opusfile-0.12 miniaudio/external/opusfile
m
v
opusfile-0.12 miniaudio/external/opusfile
-
name
:
Download vorbis
-
name
:
Download vorbis
if
:
matrix.audiolib == 'miniaudio'
id
:
vorbis
id
:
vorbis
uses
:
mercury233/action-cache-download-file@v1.0.0
uses
:
mercury233/action-cache-download-file@v1.0.0
with
:
with
:
url
:
https://github.com/xiph/vorbis/releases/download/v1.3.7/libvorbis-1.3.7.tar.gz
url
:
https://github.com/xiph/vorbis/releases/download/v1.3.7/libvorbis-1.3.7.tar.gz
-
name
:
Extract vorbis
-
name
:
Extract vorbis
if
:
matrix.audiolib == 'miniaudio'
run
:
|
run
:
|
tar xf ${{ steps.vorbis.outputs.filepath }}
tar xf ${{ steps.vorbis.outputs.filepath }}
move libvorbis-1.3.7 miniaudio/external/vorbis
mv libvorbis-1.3.7 miniaudio/external/vorbis
-
name
:
Upload static dependencies
uses
:
actions/upload-artifact@v4
with
:
name
:
dependencies-sources-static-link
path
:
|
event/
freetype/
sqlite3/
miniaudio/
!miniaudio/external/opus/dnn/
build-windows
:
needs
:
[
prepare
,
prepare-static-dependencies
]
strategy
:
fail-fast
:
false
matrix
:
name
:
-
windows
# - windows-irrklang
# - windows-no-dxsdk
-
windows-x64
# - windows-2025
include
:
-
name
:
windows
os
:
windows-2022
vs
:
vs2022
audiolib
:
miniaudio
# - name: windows-irrklang
# os: windows-2022
# vs: vs2022
# audiolib: irrklang
# - name: windows-no-dxsdk
# os: windows-2022
# vs: vs2022
# audiolib: miniaudio
# nodxsdk: true
-
name
:
windows-x64
os
:
windows-2022
vs
:
vs2022
audiolib
:
miniaudio
x64
:
true
# - name: windows-2025
# os: windows-2025
# vs: vs2025 # to be enabled after the release of Visual Studio 2025
# audiolib: miniaudio
runs-on
:
${{ matrix.os }}
steps
:
-
name
:
Checkout repository
uses
:
actions/checkout@v4
with
:
submodules
:
false
-
name
:
Update submodules
# Here we use override URLs and branches from the prepare job, which can be set by pull request description,
# to make sure we are testing the correct code. Only the ocgcore submodule is required for the build.
run
:
|
git submodule update --init --no-fetch ocgcore
cd ocgcore
git fetch --depth=1 ${{ needs.prepare.outputs.ocgcore-url }} ${{ needs.prepare.outputs.ocgcore-branch }}
git checkout FETCH_HEAD
cd ..
# cd script
# git checkout master
# git pull origin master
# cd ..
-
name
:
Download prepare sources
uses
:
actions/download-artifact@v4
with
:
name
:
dependencies-sources
path
:
.
-
name
:
Download static dependencies sources
uses
:
actions/download-artifact@v4
with
:
name
:
dependencies-sources-static-link
path
:
.
-
name
:
Download premake
id
:
premake
uses
:
mercury233/action-cache-download-file@v1.0.0
with
:
url
:
https://github.com/premake/premake-core/releases/download/v5.0.0-beta7/premake-5.0.0-beta7-windows.zip
filename
:
premake5.zip
-
name
:
Extract premake
run
:
|
7z x ${{ steps.premake.outputs.filepath }}
-
name
:
Download irrKlang
-
name
:
Download irrKlang
if
:
matrix.audiolib == 'irrklang'
if
:
matrix.audiolib == 'irrklang'
...
@@ -194,10 +288,6 @@ jobs:
...
@@ -194,10 +288,6 @@ jobs:
7z x ${{ steps.irrKlang.outputs.filepath }}
7z x ${{ steps.irrKlang.outputs.filepath }}
move irrKlang-1.6.0 irrKlang
move irrKlang-1.6.0 irrKlang
-
name
:
Download irrlicht
run
:
|
git clone --depth=1 https://github.com/mercury233/irrlicht
-
name
:
Check DirectX SDK
-
name
:
Check DirectX SDK
if
:
matrix.nodxsdk !=
true
if
:
matrix.nodxsdk !=
true
id
:
dxsdk
id
:
dxsdk
...
@@ -249,6 +339,7 @@ jobs:
...
@@ -249,6 +339,7 @@ jobs:
bin/release/x64/YGOPro.exe
bin/release/x64/YGOPro.exe
build-linux
:
build-linux
:
needs
:
[
prepare
,
prepare-static-dependencies
]
strategy
:
strategy
:
fail-fast
:
false
fail-fast
:
false
matrix
:
matrix
:
...
@@ -271,23 +362,36 @@ jobs:
...
@@ -271,23 +362,36 @@ jobs:
runs-on
:
${{ matrix.os }}
runs-on
:
${{ matrix.os }}
steps
:
steps
:
-
name
:
Checkout repository
with submodules
-
name
:
Checkout repository
uses
:
actions/checkout@v4
uses
:
actions/checkout@v4
with
:
with
:
fetch-depth
:
1
submodules
:
false
submodules
:
true
-
name
:
Update submodules
-
name
:
Update submodules
run
:
|
run
:
|
git submodule update --init --no-fetch ocgcore
cd ocgcore
cd ocgcore
git
checkout master
git
fetch --depth=1 ${{ needs.prepare.outputs.ocgcore-url }} ${{ needs.prepare.outputs.ocgcore-branch }}
git
pull origin master
git
checkout FETCH_HEAD
cd ..
cd ..
# cd script
# cd script
# git checkout master
# git checkout master
# git pull origin master
# git pull origin master
# cd ..
# cd ..
-
name
:
Download prepare sources
uses
:
actions/download-artifact@v4
with
:
name
:
dependencies-sources
path
:
.
-
name
:
Download static dependencies sources
if
:
matrix.static-link ==
true
uses
:
actions/download-artifact@v4
with
:
name
:
dependencies-sources-static-link
path
:
.
-
name
:
Install dependencies
-
name
:
Install dependencies
run
:
|
run
:
|
sudo apt-get update
sudo apt-get update
...
@@ -310,135 +414,23 @@ jobs:
...
@@ -310,135 +414,23 @@ jobs:
tar xf ${{ steps.premake.outputs.filepath }}
tar xf ${{ steps.premake.outputs.filepath }}
chmod +x ./premake5
chmod +x ./premake5
-
name
:
Download libevent
if
:
matrix.static-link ==
true
id
:
libevent
uses
:
mercury233/action-cache-download-file@v1.0.0
with
:
url
:
https://github.com/libevent/libevent/releases/download/release-2.1.12-stable/libevent-2.1.12-stable.tar.gz
filename
:
libevent.tar.gz
-
name
:
Extract libevent
if
:
matrix.static-link ==
true
run
:
|
tar xf ${{ steps.libevent.outputs.filepath }}
mv libevent-2.1.12-stable event
-
name
:
Configure libevent
-
name
:
Configure libevent
if
:
matrix.static-link ==
true
if
:
matrix.static-link ==
true
run
:
|
run
:
|
cd event
cd event
chmod +x configure build-aux/*
./configure --disable-openssl --enable-static=yes --enable-shared=no
./configure --disable-openssl --enable-static=yes --enable-shared=no
sed -f make-event-config.sed < config.h > ./include/event2/event-config.h
sed -f make-event-config.sed < config.h > ./include/event2/event-config.h
cd ..
cd ..
-
name
:
Download freetype
if
:
matrix.static-link ==
true
id
:
freetype
uses
:
mercury233/action-cache-download-file@v1.0.0
with
:
url
:
https://downloads.sourceforge.net/freetype/freetype-2.13.3.tar.gz
-
name
:
Extract freetype
if
:
matrix.static-link ==
true
run
:
|
tar xf ${{ steps.freetype.outputs.filepath }}
mv freetype-2.13.3 freetype
-
name
:
Download lua
id
:
lua
uses
:
mercury233/action-cache-download-file@v1.0.0
with
:
url
:
https://www.lua.org/ftp/lua-5.4.8.tar.gz
-
name
:
Extract lua
run
:
|
tar xf ${{ steps.lua.outputs.filepath }}
mv lua-5.4.8 lua
-
name
:
Download sqlite
if
:
matrix.static-link ==
true
id
:
sqlite
uses
:
mercury233/action-cache-download-file@v1.0.0
with
:
url
:
https://www.sqlite.org/2025/sqlite-amalgamation-3500100.zip
-
name
:
Extract sqlite
if
:
matrix.static-link ==
true
run
:
|
7z x ${{ steps.sqlite.outputs.filepath }}
mv sqlite-amalgamation-3500100 sqlite3
-
name
:
Download miniaudio
run
:
|
git clone --depth=1 -b 0.11.23 https://github.com/mackron/miniaudio
cd miniaudio
cp extras/miniaudio_split/miniaudio.* .
cd ..
-
name
:
Download ogg
if
:
matrix.static-link ==
true
id
:
ogg
uses
:
mercury233/action-cache-download-file@v1.0.0
with
:
url
:
https://github.com/xiph/ogg/releases/download/v1.3.5/libogg-1.3.5.tar.gz
-
name
:
Extract ogg
if
:
matrix.static-link ==
true
run
:
|
tar xf ${{ steps.ogg.outputs.filepath }}
mv libogg-1.3.5 miniaudio/external/ogg
-
name
:
Configure ogg
-
name
:
Configure ogg
if
:
matrix.static-link ==
true
if
:
matrix.static-link ==
true
run
:
|
run
:
|
cd miniaudio/external/ogg
cd miniaudio/external/ogg
chmod +x configure
./configure
./configure
cd ../../..
cd ../../..
-
name
:
Download opus
if
:
matrix.static-link ==
true
id
:
opus
uses
:
mercury233/action-cache-download-file@v1.0.0
with
:
url
:
https://github.com/xiph/opus/releases/download/v1.5.2/opus-1.5.2.tar.gz
-
name
:
Extract opus
if
:
matrix.static-link ==
true
run
:
|
tar xf ${{ steps.opus.outputs.filepath }}
mv opus-1.5.2 miniaudio/external/opus
-
name
:
Download opusfile
if
:
matrix.static-link ==
true
id
:
opusfile
uses
:
mercury233/action-cache-download-file@v1.0.0
with
:
url
:
https://github.com/xiph/opusfile/releases/download/v0.12/opusfile-0.12.tar.gz
-
name
:
Extract opusfile
if
:
matrix.static-link ==
true
run
:
|
tar xf ${{ steps.opusfile.outputs.filepath }}
mv opusfile-0.12 miniaudio/external/opusfile
-
name
:
Download vorbis
if
:
matrix.static-link ==
true
id
:
vorbis
uses
:
mercury233/action-cache-download-file@v1.0.0
with
:
url
:
https://github.com/xiph/vorbis/releases/download/v1.3.7/libvorbis-1.3.7.tar.gz
-
name
:
Extract vorbis
if
:
matrix.static-link ==
true
run
:
|
tar xf ${{ steps.vorbis.outputs.filepath }}
mv libvorbis-1.3.7 miniaudio/external/vorbis
-
name
:
Download irrlicht
run
:
|
git clone --depth=1 https://github.com/mercury233/irrlicht
-
name
:
Copy premake files
-
name
:
Copy premake files
run
:
|
run
:
|
cp -pr premake/* .
cp -pr premake/* .
...
@@ -472,6 +464,7 @@ jobs:
...
@@ -472,6 +464,7 @@ jobs:
bin/release/YGOPro
bin/release/YGOPro
build-macos
:
build-macos
:
needs
:
[
prepare
,
prepare-static-dependencies
]
strategy
:
strategy
:
fail-fast
:
false
fail-fast
:
false
matrix
:
matrix
:
...
@@ -498,23 +491,36 @@ jobs:
...
@@ -498,23 +491,36 @@ jobs:
runs-on
:
${{ matrix.os }}
runs-on
:
${{ matrix.os }}
steps
:
steps
:
-
name
:
Checkout repository
with submodules
-
name
:
Checkout repository
uses
:
actions/checkout@v4
uses
:
actions/checkout@v4
with
:
with
:
fetch-depth
:
1
submodules
:
false
submodules
:
true
-
name
:
Update submodules
-
name
:
Update submodules
run
:
|
run
:
|
git submodule update --init --no-fetch ocgcore
cd ocgcore
cd ocgcore
git
checkout master
git
fetch --depth=1 ${{ needs.prepare.outputs.ocgcore-url }} ${{ needs.prepare.outputs.ocgcore-branch }}
git
pull origin master
git
checkout FETCH_HEAD
cd ..
cd ..
# cd script
# cd script
# git checkout master
# git checkout master
# git pull origin master
# git pull origin master
# cd ..
# cd ..
-
name
:
Download prepare sources
uses
:
actions/download-artifact@v4
with
:
name
:
dependencies-sources
path
:
.
-
name
:
Download static dependencies sources
if
:
matrix.static-link ==
true
uses
:
actions/download-artifact@v4
with
:
name
:
dependencies-sources-static-link
path
:
.
-
name
:
Install dependencies
-
name
:
Install dependencies
if
:
matrix.static-link !=
true
if
:
matrix.static-link !=
true
run
:
|
run
:
|
...
@@ -533,128 +539,15 @@ jobs:
...
@@ -533,128 +539,15 @@ jobs:
tar xf ${{ steps.premake.outputs.filepath }}
tar xf ${{ steps.premake.outputs.filepath }}
chmod +x ./premake5
chmod +x ./premake5
-
name
:
Download libevent
if
:
matrix.static-link ==
true
id
:
libevent
uses
:
mercury233/action-cache-download-file@v1.0.0
with
:
url
:
https://github.com/libevent/libevent/releases/download/release-2.1.12-stable/libevent-2.1.12-stable.tar.gz
filename
:
libevent.tar.gz
-
name
:
Extract libevent
if
:
matrix.static-link ==
true
run
:
|
tar xf ${{ steps.libevent.outputs.filepath }}
mv libevent-2.1.12-stable event
-
name
:
Configure libevent
-
name
:
Configure libevent
if
:
matrix.static-link ==
true
if
:
matrix.static-link ==
true
run
:
|
run
:
|
cd event
cd event
chmod +x configure build-aux/*
./configure --disable-openssl --enable-static=yes --enable-shared=no
./configure --disable-openssl --enable-static=yes --enable-shared=no
sed -f make-event-config.sed < config.h > ./include/event2/event-config.h
sed -f make-event-config.sed < config.h > ./include/event2/event-config.h
cd ..
cd ..
-
name
:
Download freetype
if
:
matrix.static-link ==
true
id
:
freetype
uses
:
mercury233/action-cache-download-file@v1.0.0
with
:
url
:
https://downloads.sourceforge.net/freetype/freetype-2.13.3.tar.gz
-
name
:
Extract freetype
if
:
matrix.static-link ==
true
run
:
|
tar xf ${{ steps.freetype.outputs.filepath }}
mv freetype-2.13.3 freetype
-
name
:
Download lua
id
:
lua
uses
:
mercury233/action-cache-download-file@v1.0.0
with
:
url
:
https://www.lua.org/ftp/lua-5.4.8.tar.gz
-
name
:
Extract lua
run
:
|
tar xf ${{ steps.lua.outputs.filepath }}
mv lua-5.4.8 lua
-
name
:
Download sqlite
if
:
matrix.static-link ==
true
id
:
sqlite
uses
:
mercury233/action-cache-download-file@v1.0.0
with
:
url
:
https://www.sqlite.org/2025/sqlite-amalgamation-3500100.zip
-
name
:
Extract sqlite
if
:
matrix.static-link ==
true
run
:
|
7z x ${{ steps.sqlite.outputs.filepath }}
mv sqlite-amalgamation-3500100 sqlite3
-
name
:
Download miniaudio
run
:
|
git clone --depth=1 -b 0.11.23 https://github.com/mackron/miniaudio
cd miniaudio
cp extras/miniaudio_split/miniaudio.* .
cd ..
-
name
:
Download ogg
if
:
matrix.static-link ==
true
id
:
ogg
uses
:
mercury233/action-cache-download-file@v1.0.0
with
:
url
:
https://github.com/xiph/ogg/releases/download/v1.3.5/libogg-1.3.5.tar.gz
-
name
:
Extract ogg
if
:
matrix.static-link ==
true
run
:
|
tar xf ${{ steps.ogg.outputs.filepath }}
mv libogg-1.3.5 miniaudio/external/ogg
-
name
:
Download opus
if
:
matrix.static-link ==
true
id
:
opus
uses
:
mercury233/action-cache-download-file@v1.0.0
with
:
url
:
https://github.com/xiph/opus/releases/download/v1.5.2/opus-1.5.2.tar.gz
-
name
:
Extract opus
if
:
matrix.static-link ==
true
run
:
|
tar xf ${{ steps.opus.outputs.filepath }}
mv opus-1.5.2 miniaudio/external/opus
-
name
:
Download opusfile
if
:
matrix.static-link ==
true
id
:
opusfile
uses
:
mercury233/action-cache-download-file@v1.0.0
with
:
url
:
https://github.com/xiph/opusfile/releases/download/v0.12/opusfile-0.12.tar.gz
-
name
:
Extract opusfile
if
:
matrix.static-link ==
true
run
:
|
tar xf ${{ steps.opusfile.outputs.filepath }}
mv opusfile-0.12 miniaudio/external/opusfile
-
name
:
Download vorbis
if
:
matrix.static-link ==
true
id
:
vorbis
uses
:
mercury233/action-cache-download-file@v1.0.0
with
:
url
:
https://github.com/xiph/vorbis/releases/download/v1.3.7/libvorbis-1.3.7.tar.gz
-
name
:
Extract vorbis
if
:
matrix.static-link ==
true
run
:
|
tar xf ${{ steps.vorbis.outputs.filepath }}
mv libvorbis-1.3.7 miniaudio/external/vorbis
-
name
:
Download irrlicht
run
:
|
git clone --depth=1 https://github.com/mercury233/irrlicht
-
name
:
Copy premake files
-
name
:
Copy premake files
run
:
|
run
:
|
cp -pr premake/* .
cp -pr premake/* .
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment