From 69a9e699598d7fe5189df42fe05fd8d0441dfc96 Mon Sep 17 00:00:00 2001 From: kdeme Date: Fri, 1 May 2020 13:55:07 +0200 Subject: [PATCH] Add appveyor and travis yaml files --- .appveyor.yml | 36 ++++++++++++++++++++++++++++++++++++ .travis.yml | 48 ++++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 84 insertions(+) create mode 100644 .appveyor.yml create mode 100644 .travis.yml diff --git a/.appveyor.yml b/.appveyor.yml new file mode 100644 index 000000000..34c8da90c --- /dev/null +++ b/.appveyor.yml @@ -0,0 +1,36 @@ +version: '{build}' + +image: Visual Studio 2015 + +init: # Scripts called at the very beginning + # Enable paths > 260 characters + - ps: Set-ItemProperty -Path 'HKLM:\SYSTEM\CurrentControlSet\Control\FileSystem' -Name 'LongPathsEnabled' -Value 1 + - git config --global core.longpaths true + +cache: + - NimBinaries + +matrix: + # We always want 32 and 64-bit compilation + fast_finish: false + +platform: + - x64 + - x86 + +install: + # use the newest versions documented here: https://www.appveyor.com/docs/windows-images-software/#mingw-msys-cygwin + - IF "%PLATFORM%" == "x86" SET PATH=C:\mingw-w64\i686-6.3.0-posix-dwarf-rt_v5-rev1\mingw32\bin;%PATH% + - IF "%PLATFORM%" == "x64" SET PATH=C:\mingw-w64\x86_64-8.1.0-posix-seh-rt_v6-rev0\mingw64\bin;%PATH% + +build_script: + # the 32-bit build is done on a 64-bit image, so we need to override the architecture + - mingw32-make -j2 ARCH_OVERRIDE=%PLATFORM% CI_CACHE=NimBinaries update + - mingw32-make -j2 ARCH_OVERRIDE=%PLATFORM% fetch-dlls + +test_script: + - mingw32-make -j2 ARCH_OVERRIDE=%PLATFORM% LOG_LEVEL=TRACE + - build\wakunode.exe --help + - mingw32-make -j2 ARCH_OVERRIDE=%PLATFORM% test + +deploy: off diff --git a/.travis.yml b/.travis.yml new file mode 100644 index 000000000..e86a58c61 --- /dev/null +++ b/.travis.yml @@ -0,0 +1,48 @@ +language: c + +dist: bionic + +# https://docs.travis-ci.com/user/caching/ +cache: + ccache: true + directories: + - vendor/nimbus-build-system/vendor/Nim/bin + +git: + # when multiple CI builds are queued, the tested commit needs to be in the last X commits cloned with "--depth X" + depth: 10 + +matrix: + include: + - os: linux + arch: amd64 + sudo: required + env: + - NPROC=2 + before_install: + - export LD_LIBRARY_PATH="$LD_LIBRARY_PATH:/usr/local/lib" + - sudo apt-get -q update + - os: linux + arch: arm64 + sudo: required + env: + - NPROC=6 # Worth trying more than 2 parallel jobs: https://travis-ci.community/t/no-cache-support-on-arm64/5416/8 + # (also used to get a different cache key than the amd64 one) + before_install: + - export LD_LIBRARY_PATH="$LD_LIBRARY_PATH:/usr/local/lib" + - sudo apt-get -q update + - sudo apt-get install -y libpcre3-dev + - os: osx + before_install: + - HOMEBREW_NO_AUTO_UPDATE=1 HOMEBREW_NO_INSTALL_CLEANUP=1 brew install ccache + env: + - NPROC=2 + +script: + - set -e # fail fast + # Building Nim-1.0.4 takes up to 10 minutes on Travis - the time limit after which jobs are cancelled for having no output + - make -j${NPROC} NIMFLAGS="--parallelBuild:${NPROC}" V=1 update # to allow a newer Nim version to be detected + - make -j${NPROC} NIMFLAGS="--parallelBuild:${NPROC}" LOG_LEVEL=TRACE + - build/wakunode --help + - make -j${NPROC} NIMFLAGS="--parallelBuild:${NPROC}" test +