Commit 94dbea1d authored by nanahira's avatar nanahira

add macos build

parent 78685934
Pipeline #34212 failed with stages
in 4 minutes and 41 seconds
...@@ -56,6 +56,20 @@ mat_linux: ...@@ -56,6 +56,20 @@ mat_linux:
paths: paths:
- irrlicht - irrlicht
mat_macos:
stage: prepare
tags:
- linux
script:
- apt update; apt -y install wget tar git
- wget -O - https://cdn01.moecube.com/ygopro-build-materials/premake-5.0.0-beta5-macosx.tar.gz | tar zfx -
- chmod +x premake5
- git clone --depth=1 https://code.mycard.moe/mycard/irrlicht-new irrlicht
artifacts:
paths:
- premake5
- irrlicht
mat_windows: mat_windows:
stage: prepare stage: prepare
tags: tags:
...@@ -69,7 +83,7 @@ mat_windows: ...@@ -69,7 +83,7 @@ mat_windows:
- wget -O - https://cdn01.moecube.com/ygopro-build-materials/libevent-2.0.22-stable.tar.gz | tar zfx - - wget -O - https://cdn01.moecube.com/ygopro-build-materials/libevent-2.0.22-stable.tar.gz | tar zfx -
- mv libevent-2.0.22-stable event - mv libevent-2.0.22-stable event
# irrlicht # irrlicht
- git clone --depth=1 -b develop https://code.mycard.moe/mycard/irrlicht-new irrlicht - git clone --depth=1 https://code.mycard.moe/mycard/irrlicht-new irrlicht
artifacts: artifacts:
paths: paths:
- premake5.exe - premake5.exe
...@@ -118,20 +132,14 @@ exec_windows_pro3: ...@@ -118,20 +132,14 @@ exec_windows_pro3:
- mkdir dist\windows - mkdir dist\windows
- copy bin\release\ygoserver.dll dist\windows\ygoserver.dll - copy bin\release\ygoserver.dll dist\windows\ygoserver.dll
.exec_linux_common: .exec_unix_common:
extends: ._exec_build extends: ._exec_build
tags:
- linux
image: git-registry.moenext.com/mycard/docker-ygopro-builder
dependencies:
- mat_common
- mat_linux
- mat_submodules
variables: variables:
RELEASE_DIR: '' RELEASE_DIR: ''
TARGET_FILE: ygopro TARGET_FILE: ygopro
PREMAKE5_BIN: premake5
script: script:
- premake5 gmake - $PREMAKE5_BIN gmake
- cd build - cd build
- make config=release -j$(nproc) - make config=release -j$(nproc)
- cd .. - cd ..
...@@ -142,6 +150,16 @@ exec_windows_pro3: ...@@ -142,6 +150,16 @@ exec_windows_pro3:
paths: paths:
- dist - dist
.exec_linux_common:
extends: .exec_unix_common
tags:
- linux
image: git-registry.moenext.com/mycard/docker-ygopro-builder
dependencies:
- mat_common
- mat_linux
- mat_submodules
.exec_linux: .exec_linux:
extends: .exec_linux_common extends: .exec_linux_common
variables: variables:
...@@ -169,6 +187,11 @@ exec_windows_pro3: ...@@ -169,6 +187,11 @@ exec_windows_pro3:
SERVER_PRO3_SUPPORT: '1' SERVER_PRO3_SUPPORT: '1'
TARGET_FILE: libygoserver.so TARGET_FILE: libygoserver.so
.use_pro3_macos:
variables:
SERVER_PRO3_SUPPORT: '1'
TARGET_FILE: libygoserver.dylib
LIBEVENT_PREBUILD_FLAGS: '-fPIC'
exec_linux: exec_linux:
extends: .exec_linux extends: .exec_linux
...@@ -186,7 +209,7 @@ exec_linuxarm: ...@@ -186,7 +209,7 @@ exec_linuxarm:
- .exec_linux - .exec_linux
- .use_arm - .use_arm
variables: variables:
RELEASE_DIR: linux-arm RELEASE_DIR: linux-arm64
exec_linuxarm_pro3: exec_linuxarm_pro3:
extends: extends:
...@@ -194,7 +217,7 @@ exec_linuxarm_pro3: ...@@ -194,7 +217,7 @@ exec_linuxarm_pro3:
- .use_arm - .use_arm
- .use_pro3 - .use_pro3
variables: variables:
RELEASE_DIR: linux-arm RELEASE_DIR: linux-arm64
exec_debianarm: exec_debianarm:
extends: extends:
...@@ -203,6 +226,72 @@ exec_debianarm: ...@@ -203,6 +226,72 @@ exec_debianarm:
variables: variables:
RELEASE_DIR: debian-arm RELEASE_DIR: debian-arm
.exec_macos_platform:
extends: .exec_unix_common
dependencies:
- mat_common
- mat_macos
- mat_submodules
before_script:
- env CFLAGS=$LIBEVENT_PREBUILD_FLAGS CXXFLAGS=$LIBEVENT_PREBUILD_FLAGS ./.ci/libevent-prebuild.sh
variables:
PREMAKE5_BIN: ./premake5
BUILD_SQLITE: '1'
SERVER_ZIP_SUPPORT: '1'
EVENT_INCLUDE_DIR: ../libevent-stable/include
EVENT_LIB_DIR: ../libevent-stable/lib
exec_macos_x64:
extends: .exec_macos_platform
tags:
- macos
variables:
RELEASE_DIR: macos-x64
exec_macos_arm64:
extends: .exec_macos_platform
tags:
- macos-m1
variables:
RELEASE_DIR: macos-arm64
exec_macos_x64_pro3:
extends:
- .exec_macos_platform
- .use_pro3_macos
tags:
- macos
variables:
RELEASE_DIR: macos-x64
exec_macos_arm64_pro3:
extends:
- .exec_macos_platform
- .use_pro3_macos
tags:
- macos-m1
variables:
RELEASE_DIR: macos-arm64
exec_macos:
stage: combine
tags:
- macos
dependencies:
- exec_macos_x64
- exec_macos_arm64
- exec_macos_x64_pro3
- exec_macos_arm64_pro3
script:
- mkdir -p dist/macos
- lipo -create dist/macos/ygopro dist/macos-x64/ygopro dist/macos-arm64/ygopro
- lipo -create dist/macos/libygoserver.dylib dist/macos-x64/libygoserver.dylib dist/macos-arm64/libygoserver.dylib
- rm -rf dist/macos-x64 dist/macos-arm64
artifacts:
paths:
- dist
#win_server_pack: #win_server_pack:
# stage: pack # stage: pack
# dependencies: # dependencies:
...@@ -219,8 +308,12 @@ upload_to_minio: ...@@ -219,8 +308,12 @@ upload_to_minio:
- exec_windows - exec_windows
- exec_linux - exec_linux
- exec_linuxarm - exec_linuxarm
- exec_windows_pro3
- exec_linux_pro3
- exec_linuxarm_pro3
- exec_debian - exec_debian
- exec_debianarm - exec_debianarm
- exec_macos
tags: tags:
- linux - linux
script: script:
......
...@@ -193,6 +193,8 @@ if SERVER_MODE then ...@@ -193,6 +193,8 @@ if SERVER_MODE then
IRRKLANG_PRO = false IRRKLANG_PRO = false
if not SERVER_ZIP_SUPPORT then if not SERVER_ZIP_SUPPORT then
BUILD_IRRLICHT = false BUILD_IRRLICHT = false
else
BUILD_IRRLICHT = true
end end
end end
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment