mirror of
https://github.com/oxen-io/lokinet.git
synced 2024-11-17 15:25:35 +00:00
117 lines
3.4 KiB
YAML
117 lines
3.4 KiB
YAML
variables:
|
|
GIT_STRATEGY: fetch
|
|
GIT_SUBMODULE_STRATEGY: recursive
|
|
|
|
stages:
|
|
- build
|
|
- test
|
|
|
|
# disabled because gcc9 can't build net_if.hpp
|
|
#build:linux:
|
|
# image: alpine:latest
|
|
# tags:
|
|
# - linux
|
|
# stage: build
|
|
# before_script:
|
|
# - apk add --update g++ make cmake linux-headers libcap-dev libuv-dev curl-dev git
|
|
# script:
|
|
# - make STATIC_LINK=ON DOWNLOAD_SODIUM=ON
|
|
# artifacts:
|
|
# paths:
|
|
# - "lokinet"
|
|
|
|
# we'll just try our travis set up for now
|
|
build:linux_release:
|
|
image: ubuntu:xenial
|
|
tags:
|
|
- linux
|
|
stage: build
|
|
before_script:
|
|
- apt-get update && apt-get install -y apt-transport-https curl
|
|
- curl https://apt.kitware.com/keys/kitware-archive-latest.asc | apt-key add -
|
|
- echo 'deb https://apt.kitware.com/ubuntu/ xenial main' >/etc/apt/sources.list.d/kitware.list
|
|
- apt-get update && apt-get install -y build-essential ca-certificates cmake curl git libcap-dev pkg-config wget xz-utils
|
|
script:
|
|
- make static DOWNLOAD_SODIUM=ON
|
|
# alternatively: git describe --tag
|
|
- LOKINET_VERSION=$(./lokinet-static --version|sed s/lokinet-//)
|
|
- echo lokinet-linux-x64-v$LOKINET_VERSION
|
|
- mkdir lokinet-linux-x64-v$LOKINET_VERSION
|
|
- cp lokinet-bootstrap lokinet-linux-x64-v$LOKINET_VERSION
|
|
- cp build/daemon/lokinet lokinet-linux-x64-v$LOKINET_VERSION
|
|
- cp build/daemon/lokinetctl lokinet-linux-x64-v$LOKINET_VERSION
|
|
- cp docs/linux-setcap-readme.txt lokinet-linux-x64-v$LOKINET_VERSION
|
|
- tar cJf lokinet-linux-x64-v$LOKINET_VERSION.tar.xz lokinet-linux-x64-v$LOKINET_VERSION
|
|
- echo "lokinet-linux-x64-v$LOKINET_VERSION.tar.xz should be ready"
|
|
artifacts:
|
|
paths:
|
|
- lokinet-linux-x64-v*.tar.xz
|
|
|
|
build:linux_debug:
|
|
image: ubuntu:xenial
|
|
tags:
|
|
- linux
|
|
stage: build
|
|
before_script:
|
|
- apt-get update && apt-get install -y apt-transport-https curl
|
|
- curl https://apt.kitware.com/keys/kitware-archive-latest.asc | apt-key add -
|
|
- echo 'deb https://apt.kitware.com/ubuntu/ xenial main' >/etc/apt/sources.list.d/kitware.list
|
|
- apt-get update && apt-get install -y build-essential ca-certificates cmake curl git libcap-dev libcurl4-openssl-dev libuv1-dev ninja-build
|
|
script:
|
|
- DOWNLOAD_SODIUM=ON IS_NOTIFICATION=1 STATIC_LINK=OFF make
|
|
artifacts:
|
|
paths:
|
|
- build/daemon/lokinet
|
|
- build/daemon/lokinetctl
|
|
|
|
|
|
build:win32:
|
|
image: ubuntu:bionic
|
|
tags:
|
|
- linux
|
|
stage: build
|
|
before_script:
|
|
- apt-get update && apt-get install -y build-essential cmake nsis git g++-mingw-w64
|
|
script:
|
|
- DOWNLOAD_SODIUM=ON IS_NOTIFICATION=1 STATIC_LINK=ON WINDOWS_ARCH=64 make windows
|
|
artifacts:
|
|
paths:
|
|
- build/lokinet-*.exe
|
|
|
|
build:macos:
|
|
tags:
|
|
- osx
|
|
stage: build
|
|
script:
|
|
- IS_NOTIFICATION=1 STATIC_LINK=ON DOWNLOAD_SODIUM=ON make mac
|
|
artifacts:
|
|
paths:
|
|
- build/*.pkg
|
|
- build/daemon/lokinet
|
|
|
|
|
|
# needs libuv and libcurl
|
|
#build:freebsd:
|
|
# tags:
|
|
# - freebsd
|
|
# stage: build
|
|
# script:
|
|
# - gmake DOWNLOAD_SODIUM=ON
|
|
# artifacts:
|
|
# paths:
|
|
# - "lokinet"
|
|
|
|
# need windows runner on lokiproject
|
|
#build:windows:
|
|
# tags:
|
|
# - windows
|
|
# stage: build
|
|
# script:
|
|
#- make static CC=gcc CXX=g++
|
|
# can't use STATIC because LTO doesn't work on cross-compiled targets
|
|
# -DSTATIC_LINK_RUNTIME=ON -DLIBUV_ROOT=libuv
|
|
# - cmake .. -G Ninja -DCMAKE_TOOLCHAIN_FILE=../contrib/cross/mingw[32].cmake -DDOWNLOAD_SODIUM=ON
|
|
# artifacts:
|
|
# paths:
|
|
# - "lokinet.exe"
|