Merge pull request #116 from status-im/test-ccache

travis: use ccache
This commit is contained in:
Jacek Sieka 2018-08-28 19:26:38 -06:00 committed by GitHub
commit df88326cfd
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 24 additions and 33 deletions

View File

@ -43,13 +43,8 @@ install:
- 7z x -y "%ROCKSDB_ARCHIVE%" > nul - 7z x -y "%ROCKSDB_ARCHIVE%" > nul
- IF "%PLATFORM%" == "x64" ( copy %CD%\x64\librocksdb.dll %CD%\bin\librocksdb.dll ) ELSE ( copy %CD%\x86\librocksdb.dll %CD%\bin\librocksdb.dll ) - IF "%PLATFORM%" == "x64" ( copy %CD%\x64\librocksdb.dll %CD%\bin\librocksdb.dll ) ELSE ( copy %CD%\x86\librocksdb.dll %CD%\bin\librocksdb.dll )
- SET PATH=%CD%\%MINGW_DIR%\bin;%CD%\bin;%CD%\Nim\bin;%PATH% - SET PATH=%CD%\%MINGW_DIR%\bin;%CD%\bin;%CD%\Nim\bin;%PATH%
- git clone https://github.com/nim-lang/Nim.git - git clone https://github.com/status-im/Nim.git
- cd %CD%\Nim - cd %CD%\Nim
- git remote add statusim https://github.com/status-im/Nim.git
- git fetch statusim
- git config --global user.email "you@example.com"
- git config --global user.name "Your Name"
- for /f "tokens=*" %%G IN ('git branch -a --list ^"statusim/status-autopatch-*^"') DO (git merge %%G)
- git clone --depth 1 https://github.com/nim-lang/csources - git clone --depth 1 https://github.com/nim-lang/csources
- cd csources - cd csources
- IF "%PLATFORM%" == "x64" ( build64.bat ) else ( build.bat ) - IF "%PLATFORM%" == "x64" ( build64.bat ) else ( build.bat )

View File

@ -1,3 +1,20 @@
language: c # or other C/C++ variants
# https://docs.travis-ci.com/user/caching/#ccache-cache
cache:
ccache: true
directories:
- rocksdb-5.14.2
- nim
install:
- export NIMVER=$(git ls-remote https://github.com/status-im/nim.git HEAD | cut -f 1)
- "{ [ -f nim/$NIMVER/bin/nim ] && [ -f nim/$NIMVER/bin/nimble ] ; } || { rm -rf nim ; mkdir -p nim; git clone https://github.com/status-im/nim.git nim/$NIMVER; cd nim/$NIMVER; sh build_all.sh; cd ../.. ; }"
- export PATH=$PWD/nim/$NIMVER/bin:$PATH
script:
- nimble install -dy && nimble test
matrix: matrix:
# allow_failures: # allow_failures:
# - os: osx # - os: osx
@ -5,36 +22,15 @@ matrix:
include: include:
- os: linux - os: linux
sudo: required sudo: required
services:
- docker
before_install: before_install:
- docker pull statusteam/nim-base - sudo apt-get install -y libssl-dev libgflags-dev libsnappy-dev
script: - "[ -f rocksdb-5.14.2/Makefile ] || { wget https://github.com/facebook/rocksdb/archive/v5.14.2.tar.gz && tar xvf v5.14.2.tar.gz; }"
- docker run statusteam/nim-base nim --version # rocksdb not present on trusty - on a newer ubuntu you can apt-get install -y librocksdb-dev
- docker run -v "$(pwd):/project" -w /project statusteam/nim-base sh -c "nimble install -dy && nimble test" - cd rocksdb-5.14.2 && make shared_lib -j$(nproc) && sudo make INSTALL_PATH=/usr install-shared && cd ..
- os: osx - os: osx
before_install: before_install:
- brew update - brew update
- brew install rocksdb - brew install rocksdb ccache
- export PATH="/usr/local/opt/ccache/libexec:$PATH"
# - brew install gcc # - brew install gcc
- git clone https://github.com/nim-lang/nim.git
- cd nim
- git remote add statusim https://github.com/status-im/nim.git
- git fetch statusim
- git config --global user.email "you@example.com"
- git config --global user.name "Your Name"
- for b in $(git branch -a --list 'statusim/status-autopatch-*'); do git merge $b; done
- git clone --depth 1 https://github.com/nim-lang/csources.git
- cd csources
- sh build.sh
- cd ..
- export PATH=$PWD/bin:$PATH
- nim c koch
- ./koch boot -d:release
- ./koch nimble
- cd ..
script:
- nimble install -dy && nimble test