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
0
Merge Requests
0
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
YGOPRO-520DIY
ygopro
Commits
4846a527
Commit
4846a527
authored
Mar 28, 2025
by
nanahira
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
update ci
parent
76db1bbd
Changes
5
Hide whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
86 additions
and
50 deletions
+86
-50
.ci/build-opus.sh
.ci/build-opus.sh
+36
-0
.ci/exec-macos-platform.sh
.ci/exec-macos-platform.sh
+9
-3
.ci/pack-macos.sh
.ci/pack-macos.sh
+1
-1
.ci/prepare-miniaudio.sh
.ci/prepare-miniaudio.sh
+24
-0
.gitlab-ci.yml
.gitlab-ci.yml
+16
-46
No files found.
.ci/build-opus.sh
0 → 100755
View file @
4846a527
#!/bin/sh
set
-x
set
-o
errexit
cd
miniaudio
external_built_dir
=
"
$PWD
/external-built"
is_macos
=
false
if
[
"
$(
uname
)
"
=
"Darwin"
]
;
then
is_macos
=
true
fi
maybe_patch_configure
()
{
if
$is_macos
;
then
sed
-i
.bak
's/-force_cpusubtype_ALL//g'
configure
*
fi
}
build_single_thing
()
{
lib_name
=
"
$1
"
cd
"external/
$lib_name
"
shift
maybe_patch_configure
PKG_CONFIG_PATH
=
"
$external_built_dir
/lib/pkgconfig"
./configure
--prefix
=
"
$external_built_dir
"
--enable-static
=
yes
--enable-shared
=
no
"
$@
"
make
-j
$(
nproc
)
make
install
cd
../..
}
build_single_thing ogg
build_single_thing opus
build_single_thing opusfile
--disable-examples
--disable-http
build_single_thing vorbis
--with-ogg
=
"
$external_built_dir
"
cd
..
.ci/exec-macos-platform.sh
View file @
4846a527
...
...
@@ -8,14 +8,20 @@ export EVENT_INCLUDE_DIR=$PWD/libevent-stable/include
export
EVENT_LIB_DIR
=
$PWD
/libevent-stable/lib
export
IRRLICHT_INCLUDE_DIR
=
$PWD
/irrlicht/include
export
IRRLICHT_LIB_DIR
=
$PWD
/irrlicht/lib/
$(
arch
)
export
OPUS_INCLUDE_DIR
=
$PWD
/miniaudio/external-built/include/opus
export
OPUS_LIB_DIR
=
$PWD
/miniaudio/external-built/lib
export
VORBIS_INCLUDE_DIR
=
$PWD
/miniaudio/external-built/include
export
VORBIS_LIB_DIR
=
$PWD
/miniaudio/external-built/lib
export
OGG_INCLUDE_DIR
=
$PWD
/miniaudio/external-built/include
export
OGG_LIB_DIR
=
$PWD
/miniaudio/external-built/lib
./.ci/libevent-prebuild.sh
./.ci/build-opus.sh
chmod
+x ./premake5
./premake5 gmake
--cc
=
clang
--build-freetype
--build-sqlite
--no-use-irrklang
./premake5 gmake
--cc
=
clang
--build-freetype
--build-sqlite
cd
build
make
config
=
release
-j
4
make
config
=
release
-j
$(
nproc
)
cd
..
mkdir
ygopro-platforms
...
...
.ci/pack-macos.sh
View file @
4846a527
...
...
@@ -5,4 +5,4 @@ set -o errexit
apt update
&&
apt
-y
install tar
git zstd
mkdir
dist replay
tar
--zstd
-cf
dist/ygopro-
$CI_COMMIT_REF_NAME
-darwin-
$TARGET_LOCALE
.tar.zst
--exclude
=
'.git*'
ygopro.app LICENSE README.md lflist.conf strings.conf system.conf cards.cdb script textures deck single pics replay windbot bot bot.conf pack
tar
--zstd
-cf
dist/ygopro-
$CI_COMMIT_REF_NAME
-darwin-
$TARGET_LOCALE
.tar.zst
--exclude
=
'.git*'
ygopro.app LICENSE README.md lflist.conf strings.conf system.conf cards.cdb script textures deck single pics replay
sound
windbot bot bot.conf pack
.ci/prepare-miniaudio.sh
0 → 100755
View file @
4846a527
#!/bin/sh
set
-x
set
-o
errexit
if
[
!
-d
"miniaudio"
]
;
then
git clone
--depth
=
1
--branch
0.11.22 https://github.com/mackron/miniaudio
fi
mkdir
-p
miniaudio/external
install_external
()
{
dir
=
"
$1
"
url
=
"
$2
"
if
[
!
-d
"miniaudio/external/
$dir
"
]
;
then
mkdir
-p
"miniaudio/external/
$dir
"
# Download the external library and strip one level of directories from the archive
wget
-O
-
"
$url
"
|
tar
--strip-components
=
1
-C
"miniaudio/external/
$dir
"
-zxf
-
fi
}
install_external
"ogg"
"https://github.com/xiph/ogg/releases/download/v1.3.5/libogg-1.3.5.tar.gz"
install_external
"opus"
"https://github.com/xiph/opus/releases/download/v1.5.2/opus-1.5.2.tar.gz"
install_external
"opusfile"
"https://github.com/xiph/opusfile/releases/download/v0.12/opusfile-0.12.tar.gz"
install_external
"vorbis"
"https://github.com/xiph/vorbis/releases/download/v1.3.7/libvorbis-1.3.7.tar.gz"
.gitlab-ci.yml
View file @
4846a527
...
...
@@ -23,6 +23,8 @@ mat_common:
# freetype
-
wget -O - https://cdn01.moecube.com/ygopro-build-materials/freetype-2.11.1.tar.gz | tar zfx -
-
mv freetype-2.11.1 freetype
# miniaudio
-
./.ci/prepare-miniaudio.sh
# premake
-
cp -rf premake/* .;
artifacts
:
...
...
@@ -45,21 +47,6 @@ mat_submodules:
-
ocgcore
-
script
mat_irrklang
:
stage
:
prepare
tags
:
-
linux
script
:
-
apt update; apt -y install git
-
mkdir -p ~/.ssh; chmod 700 ~/.ssh; echo "$NANAHIRA_SSH_KEY" | base64 --decode > ~/.ssh/id_rsa; chmod 600 ~/.ssh/id_rsa
-
ssh-keyscan git.mycard.moe >> ~/.ssh/known_hosts
-
git clone --depth=1 git@git.mycard.moe:nanahira/irrklang
-
mv -f irrklang/plugins/ikpmp3 .
artifacts
:
paths
:
-
irrklang
-
ikpmp3
mat_linux
:
stage
:
prepare
tags
:
...
...
@@ -76,17 +63,6 @@ mat_linux:
# - libevent-stable
image
:
git-registry.mycard.moe/mycard/docker-runner-base:debian11
#mat_macos_irrklang_patched:
# stage: build
# tags:
# - linux
# dependencies: []
# script:
# - wget -O - https://cdn01.moecube.com/ygopro-build-materials/libirrklang-patched-dylib.tar.gz | tar zfx -
# artifacts:
# paths:
# - libirrklang-patched.dylib
mat_macos
:
stage
:
prepare
tags
:
...
...
@@ -94,7 +70,6 @@ mat_macos:
script
:
-
apt update; apt -y install wget tar
-
wget -O - https://cdn01.moecube.com/ygopro-build-materials/premake-5.0.0-beta5-macosx.tar.gz | tar zfx -
# - wget -O - https://cdn01.moecube.com/ygopro-build-materials/libirrklang-patched-dylib.tar.gz | tar zfx -
-
mkdir irrlicht
-
cd irrlicht
-
wget -O - https://cdn01.moecube.com/ygopro-build-materials/irrlicht-mycard-mac.tar.gz | tar zfx -
...
...
@@ -130,7 +105,6 @@ exec_windows:
-
vs
dependencies
:
-
mat_common
-
mat_irrklang
-
mat_windows
-
mat_submodules
cache
:
...
...
@@ -140,7 +114,7 @@ exec_windows:
-
obj/
script
:
-
bash -c 'cp -rf premake/* .'
-
'
.\premake5.exe
vs2019
--irrklang-pro
'
-
'
.\premake5.exe
vs2019'
-
cmd /c '"C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\MSBuild\Current\Bin\msbuild.exe" build\YGOPro.sln /m /p:Configuration=Release'
-
copy bin\release\ygopro.exe .
artifacts
:
...
...
@@ -151,24 +125,28 @@ exec_linux:
stage
:
build
tags
:
-
linux
image
:
git-registry.moenext.com/mycard/docker-ygopro-builder:latest
dependencies
:
-
mat_common
-
mat_irrklang
-
mat_linux
-
mat_submodules
variables
:
EVENT_INCLUDE_DIR
:
/usr/share/libevent-stable/include
EVENT_LIB_DIR
:
/usr/share/libevent-stable/lib
OPUS_INCLUDE_DIR
:
$CI_PROJECT_DIR/miniaudio/external-built/include/opus
OPUS_LIB_DIR
:
$CI_PROJECT_DIR/miniaudio/external-built/lib
VORBIS_INCLUDE_DIR
:
$CI_PROJECT_DIR/miniaudio/external-built/include
VORBIS_LIB_DIR
:
$CI_PROJECT_DIR/miniaudio/external-built/lib
OGG_INCLUDE_DIR
:
$CI_PROJECT_DIR/miniaudio/external-built/include
OGG_LIB_DIR
:
$CI_PROJECT_DIR/miniaudio/external-built/lib
cache
:
key
:
"
$CI_JOB_NAME-$CI_COMMIT_REF_SLUG"
paths
:
-
bin/
-
obj/
script
:
-
apt update; apt -y install git build-essential libgl1-mesa-dev libglu-dev libxxf86vm-dev
-
mkdir lib
-
cp -rf irrklang/bin/linux-gcc-64/libIrrKlang.so ./lib/
# - cp -rf irrklang/bin/linux-gcc-64/ikpMP3.so ./lib/
-
export EVENT_INCLUDE_DIR=/usr/share/libevent-stable/include
-
export EVENT_LIB_DIR=/usr/share/libevent-stable/lib
-
premake5 gmake --build-freetype --build-sqlite --build-irrlicht --build-ikpmp3 --irrklang-pro
-
./.ci/build-opus.sh
-
premake5 gmake --build-freetype --build-sqlite --build-irrlicht
-
cd build
-
make config=release -j$(nproc)
-
cd ..
...
...
@@ -177,8 +155,6 @@ exec_linux:
artifacts
:
paths
:
-
ygopro
-
lib
image
:
git-registry.moenext.com/mycard/docker-ygopro-builder:latest
.exec_macos_platform
:
stage
:
build
...
...
@@ -215,17 +191,11 @@ exec_macos:
dependencies
:
-
exec_macos_platform_x86
-
exec_macos_platform_m1
#- mat_macos_irrklang_patched
script
:
-
mkdir -p ygopro.app/Contents/MacOS ygopro.app/Contents/Frameworks;
-
lipo -create -output ygopro.app/Contents/MacOS/ygopro $(ls -1 ygopro-platforms/ygopro-platform-*);
# do some special things for irrklang
# - mv ./libirrklang-patched.dylib ygopro.app/Contents/Frameworks/libirrklang.dylib
#- install_name_tool -change /usr/local/lib/libirrklang.dylib @executable_path/../Frameworks/libirrklang.dylib ygopro.app/Contents/MacOS/ygopro
#- dylibbundler -x ygopro.app/Contents/MacOS/ygopro -b -d ygopro.app/Contents/Frameworks/ -p @executable_path/../Frameworks/ -cd -i @executable_path/../Frameworks;
#- strip ygopro.app/Contents/MacOS/ygopro;
-
mkdir ygopro.app/Contents/Resources;
-
mv
premak
e/gframe/ygopro.icns ygopro.app/Contents/Resources/Icon.icns;
-
mv
resourc
e/gframe/ygopro.icns ygopro.app/Contents/Resources/Icon.icns;
-
defaults write "$PWD/ygopro.app/Contents/Info.plist" "CFBundleIconFile" "Icon.icns";
-
defaults write "$PWD/ygopro.app/Contents/Info.plist" "CFBundleIdentifier" "moe.mycard.ygopro";
...
...
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