adding build client on archlinux
This commit is contained in:
parent
9ccff24a1f
commit
eec73c1802
1 changed files with 112 additions and 3 deletions
115
.gitlab-ci.yml
115
.gitlab-ci.yml
|
@ -1,8 +1,27 @@
|
|||
# Build manually :
|
||||
# Configuration for Continous Integration
|
||||
#
|
||||
# Copyright (C) 2017 AleaJactaEst
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or modify
|
||||
# it under the terms of the GNU General Public License as published by
|
||||
# the Free Software Foundation, either version 3 of the License, or
|
||||
# (at your option) any later version.
|
||||
#
|
||||
# This program is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
# GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
#
|
||||
# Example to execute locally:
|
||||
# gitlab-runner exec docker --timeout=3600 'Linux server debian_amd64_strech build'
|
||||
# gitlab-runner exec docker --timeout=3600 'Linux client debian_amd64_strech build'
|
||||
# gitlab-runner exec docker --timeout=3600 'Linux client_static debian_amd64_strech build'
|
||||
# gitlab-runner exec docker --kubernetes-memory-limit='10g' --timeout=3600 'Linux client build'
|
||||
# gitlab-runner exec docker --kubernetes-memory-limit='10g' --timeout=3600 'Linux client archlinux build'
|
||||
|
||||
stages:
|
||||
- build
|
||||
- test
|
||||
|
@ -120,7 +139,7 @@ Linux server debian_amd64_strech build:
|
|||
- (cd code/build; make ryzom_admin_service ryzom_ai_service ryzom_backup_service ryzom_dynamic_scenario_service ryzom_entities_game_service ryzom_frontend_service ryzom_general_utilities_service ryzom_gpm_service ryzom_ios_service ryzom_log_analyser_service ryzom_logger_service ryzom_mail_forum_service ryzom_mirror_service ryzom_mission_compiler ryzom_monitor_service ryzom_naming_service ryzom_patchman_service ryzom_pd_support_service ryzom_persistant_data_service ryzom_reference_builder_service ryzom_session_browser_service ryzom_shard_unifier_service ryzom_tick_service ryzom_welcome_service sheets_packer bnp_make make_sheet_id patch_gen)
|
||||
- (cd code/build/bin; ls -lh)
|
||||
artifacts:
|
||||
name: "khanat-server-debian_strech-$(echo $CI_BUILD_REF | head -c 7 )-$CI_PIPELINE_ID"
|
||||
name: "khanat-server-debian_strech-$CI_COMMIT_REF_NAME"
|
||||
paths:
|
||||
- code/build/bin
|
||||
expire_in: 2 week
|
||||
|
@ -285,11 +304,101 @@ Linux client_static debian_amd64_strech build:
|
|||
- (cd code/build; make khanat_client)
|
||||
- (cd code/build/bin; ls -lh)
|
||||
artifacts:
|
||||
name: "khanat-client_static-debian_strech-$(echo $CI_BUILD_REF | head -c 7 )-$CI_PIPELINE_ID"
|
||||
name: "khanat-client_static-debian_strech-$CI_COMMIT_REF_NAME"
|
||||
paths:
|
||||
- code/build/bin
|
||||
expire_in: 2 week
|
||||
|
||||
# Fedora Client
|
||||
|
||||
|
||||
# Centos Client
|
||||
|
||||
|
||||
# Ubuntu Client
|
||||
|
||||
|
||||
# Archlinux Client
|
||||
Linux client archlinux build:
|
||||
stage: build
|
||||
tags:
|
||||
- Docker
|
||||
image: base/archlinux
|
||||
script:
|
||||
# Prepare environment
|
||||
- pacman -Suy --noconfirm libx11 mesa glu
|
||||
libxxf86vm
|
||||
libxrandr
|
||||
libxrender
|
||||
openal
|
||||
libxml2
|
||||
cmake
|
||||
gcc
|
||||
make
|
||||
libpng
|
||||
libjpeg-turbo
|
||||
libxmu
|
||||
autoconf
|
||||
automake
|
||||
giflib
|
||||
openssl
|
||||
xz
|
||||
unzip
|
||||
zlib
|
||||
libssh
|
||||
boost
|
||||
boost-libs
|
||||
openal
|
||||
wget
|
||||
autogen
|
||||
libtool
|
||||
fakeroot
|
||||
lua
|
||||
libogg
|
||||
libvorbis
|
||||
patch
|
||||
xorg-xfd
|
||||
sed binutils git gcc pkg-config make fakeroot
|
||||
# Install Yaourt
|
||||
# Disable check root (never do that on real server)
|
||||
- sed -i 's/EUID == 0/EUID == 12345/g' /usr/sbin/makepkg
|
||||
- mkdir -p build
|
||||
- cd build
|
||||
- git clone https://aur.archlinux.org/package-query.git
|
||||
- cd package-query
|
||||
- yes | makepkg -si || echo $?
|
||||
- cd ..
|
||||
- git clone https://aur.archlinux.org/yaourt.git
|
||||
- cd yaourt
|
||||
- yes | makepkg -si || echo $?
|
||||
- cd ../..
|
||||
- yaourt -Syyu --noconfirm --aur boost-build
|
||||
# Build
|
||||
- mkdir -p luabind
|
||||
- wget -q http://http.debian.net/debian/pool/main/l/luabind/luabind_0.9.1+dfsg.orig.tar.gz -O luabind.tar.gz
|
||||
- wget -q http://http.debian.net/debian/pool/main/l/luabind/luabind_0.9.1+dfsg-11.debian.tar.xz -O luabind-debian.tar.xz
|
||||
- tar xvf luabind.tar.gz -C luabind --strip 1 || exit 2
|
||||
- tar xvf luabind-debian.tar.xz -C luabind || exit 2
|
||||
- cd luabind
|
||||
- ls -l
|
||||
- for file in $(cat debian/patches/series); do patch -p1 < debian/patches/$file; done
|
||||
- export -p DEB_HOST_MULTIARCH="/"; bjam -d2 release debug install cflags="-fPIC" cxxflags="-fPIC"
|
||||
- export -p DEB_HOST_MULTIARCH="/"; bjam -d2 release debug install link=static cflags="-fPIC" cxxflags="-fPIC"
|
||||
- cd ..
|
||||
# Action
|
||||
- mkdir -p code/build
|
||||
- (cd code; patch -i ../patch/libcrypto.patch)
|
||||
- (cd code; patch -i ../patch/libicuuc.patch)
|
||||
- (cd code/build ; cmake -DWITH_NEL=ON -DWITH_STATIC=ON -DWITH_STATIC_DRIVERS=ON -DWITH_STATIC_EXTERNAL=ON -DWITH_LUA52=ON -DWITH_RYZOM_PATCH=OFF -DWITH_RYZOM_CUSTOM_PATCH_SERVER=OFF -DWITH_NEL_TESTS=OFF -DWITH_RYZOM_CLIENT=ON -DWITH_DRIVER_OPENGL=ON -DWITH_DRIVER_OPENAL=ON -DWITH_NEL_SAMPLES=OFF -DWITH_SOUND=ON -DWITH_STATIC_CURL=ON ..)
|
||||
- (cd code/build; make khanat_client)
|
||||
- (cd code/build/bin; ls -lh)
|
||||
artifacts:
|
||||
name: "khanat-client-archlinux-$CI_COMMIT_REF_NAME"
|
||||
paths:
|
||||
- code/build/bin
|
||||
expire_in: 2 week
|
||||
|
||||
# Gentoo Client
|
||||
|
||||
# Job de compilation pour OSX
|
||||
OSX client build:
|
||||
|
|
Loading…
Reference in a new issue