-
Notifications
You must be signed in to change notification settings - Fork 18
/
.travis.yml
45 lines (45 loc) · 1.63 KB
/
.travis.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
language: cpp
git:
depth: 1
env:
global:
- MODULE_NAME=query REPOSITORY_DIR="$TRAVIS_BUILD_DIR" DEPENDENCIES="$TRAVIS_BUILD_DIR/dependencies"
GARRYSMOD_COMMON="$TRAVIS_BUILD_DIR/dependencies/garrysmod_common" SOURCE_SDK="$TRAVIS_BUILD_DIR/dependencies/sourcesdk-minimal"
TARGET_OS="$TRAVIS_OS_NAME" COMPILER_PLATFORM=gmake BUILD_SCRIPT="$TRAVIS_BUILD_DIR/dependencies/garrysmod_common/build/ci.sh"
GARRYSMOD_COMMON_REPOSITORY="https://github.com/danielga/garrysmod_common.git"
PREMAKE5_EXECUTABLE=premake5
matrix:
include:
- os: linux
dist: trusty
compiler: gcc
addons:
apt:
sources:
- ubuntu-toolchain-r-test
packages:
- linux-libc-dev:i386
- g++-8-multilib
env:
- PREMAKE5="$TRAVIS_BUILD_DIR/dependencies/linux/premake-core/premake5" PROJECT_OS=linux
before_install:
- export CC=gcc-8 export CXX=g++-8
cache:
directories:
- "$TRAVIS_BUILD_DIR/dependencies"
- "$TRAVIS_BUILD_DIR/projects"
install:
- mkdir -p "$DEPENDENCIES"
- if [ ! -f "$GARRYSMOD_COMMON/premake5.lua" ]; then echo "garrysmod_common directory
is empty, doing git clone of the remote repo"; git clone --recursive "$GARRYSMOD_COMMON_REPOSITORY"
"$GARRYSMOD_COMMON"; else echo "garrysmod_common directory is good, pulling any
latest changes"; git -C "$GARRYSMOD_COMMON" pull; git -C "$GARRYSMOD_COMMON" submodule
update --init --recursive; fi
script: "$BUILD_SCRIPT"
deploy:
skip_cleanup: true
provider: releases
api_key: $GITHUB_KEY
file: "${TRAVIS_BUILD_DIR}/projects/${PROJECT_OS}/${COMPILER_PLATFORM}/release/gmsv_${MODULE_NAME}_${TARGET_OS}.dll"
on:
repo: DuckyC/gmsv_query