108 lines
3.8 KiB
YAML
108 lines
3.8 KiB
YAML
version: '{build}'
|
|
|
|
image:
|
|
- Ubuntu
|
|
- Visual Studio 2017
|
|
|
|
matrix:
|
|
fast_finish: true
|
|
|
|
for:
|
|
-
|
|
matrix:
|
|
only:
|
|
- image: Visual Studio 2017
|
|
|
|
environment:
|
|
MINGW_DIR: mingw32
|
|
MINGW_URL: https://sourceforge.net/projects/mingw-w64/files/Toolchains%20targetting%20Win32/Personal%20Builds/mingw-builds/8.1.0/threads-posix/dwarf/i686-8.1.0-release-posix-dwarf-rt_v6-rev0.7z/download
|
|
MINGW_ARCHIVE: i686-8.1.0-release-posix-dwarf-rt_v6-rev0.7z
|
|
NIM_URL: https://nim-lang.org/download/nim-0.18.0_x32.zip
|
|
NIM_ARCHIVE: nim-0.18.0_x32.zip
|
|
NIM_VERSION: nim-0.18.0
|
|
LIBSSH2_ARCHIVE: mingw-w64-i686-libssh2-1.8.0-1-any.pkg.tar.xz
|
|
LIBSSH2_ARCHIVE2: mingw-w64-i686-libssh2-1.8.0-1-any.pkg.tar
|
|
LIBSSH2_URL: https://sourceforge.net/projects/msys2/files/REPOS/MINGW/i686/mingw-w64-i686-libssh2-1.8.0-1-any.pkg.tar.xz/download
|
|
LIBCRYPTO_ARCHIVE: mingw-w64-i686-openssl-1.0.2.o-1-any.pkg.tar.xz
|
|
LIBCRYPTO_ARCHIVE2: mingw-w64-i686-openssl-1.0.2.o-1-any.pkg.tar
|
|
LIBCRYPTO_URL: https://sourceforge.net/projects/msys2/files/REPOS/MINGW/i686/mingw-w64-i686-openssl-1.0.2.o-1-any.pkg.tar.xz/download
|
|
DLLS_URL: http://nim-lang.org/download/dlls.zip
|
|
DLLS_ARCHIVE: dlls.zip
|
|
BASE_DIR: c:\projects
|
|
|
|
install:
|
|
- CD %BASE_DIR%
|
|
- IF not exist "%MINGW_ARCHIVE%" appveyor DownloadFile "%MINGW_URL%" -FileName "%MINGW_ARCHIVE%"
|
|
- 7z x -y "%MINGW_ARCHIVE%"> nul
|
|
- IF not exist "%LIBSSH2_ARCHIVE%" appveyor DownloadFile "%LIBSSH2_URL%" -FileName "%LIBSSH2_ARCHIVE%"
|
|
- 7z x -y "%LIBSSH2_ARCHIVE%"> nul
|
|
- 7z x -y "%LIBSSH2_ARCHIVE2%"> nul
|
|
- IF not exist "%LIBCRYPTO_ARCHIVE%" appveyor DownloadFile "%LIBCRYPTO_URL%" -FileName "%LIBCRYPTO_ARCHIVE%"
|
|
- 7z x -y "%LIBCRYPTO_ARCHIVE%"> nul
|
|
- 7z x -y "%LIBCRYPTO_ARCHIVE2%"> nul
|
|
- IF not exist "%NIM_ARCHIVE%" appveyor DownloadFile "%NIM_URL%" -FileName "%NIM_ARCHIVE%"
|
|
- 7z x -y "%NIM_ARCHIVE%"> nul
|
|
- SET PATH=%BASE_DIR%\%MINGW_DIR%\bin;%BASE_DIR%\%NIM_VERSION%\bin;%USERPROFILE%\.nimble\bin;%PATH%
|
|
- CD %BASE_DIR%\nimgen
|
|
# - git clone --depth 1 https://github.com/nim-lang/nim
|
|
# - cd nim
|
|
# - git clone --depth 1 https://github.com/nim-lang/csources
|
|
# - cd csources
|
|
# - IF "%PLATFORM%" == "x64" ( build64.bat ) else ( build.bat )
|
|
# - cd ..
|
|
# - IF not exist "%DLLS_ARCHIVE%" appveyor DownloadFile "%DLLS_URL%" -FileName "%DLLS_ARCHIVE%"
|
|
# - 7z x -y "%DLLS_ARCHIVE%" -o"%CD%\bin"> nul
|
|
# - bin\nim c -d:release koch
|
|
# - koch boot -d:release
|
|
# - koch nimble -d:release
|
|
# - SET PATH=%CD%\bin;%PATH%
|
|
# - cd ..
|
|
|
|
on_finish:
|
|
- 7z a -r buildlogs-win.zip %USERPROFILE%\.nimble\pkgs
|
|
- appveyor PushArtifact buildlogs-win.zip
|
|
|
|
cache:
|
|
- c:\projects\i686-8.1.0-release-posix-dwarf-rt_v6-rev0.7z
|
|
- c:\projects\mingw-w64-i686-libssh2-1.8.0-1-any.pkg.tar.xz
|
|
- c:\projects\mingw-w64-i686-openssl-1.0.2.o-1-any.pkg.tar.xz
|
|
- c:\projects\nim-0.18.0_x32.zip
|
|
|
|
-
|
|
matrix:
|
|
only:
|
|
- image: Ubuntu
|
|
|
|
environment:
|
|
NIM_URL: https://nim-lang.org/download/nim-0.18.0.tar.xz
|
|
NIM_ARCHIVE: nim-0.18.0.tar.xz
|
|
NIM_VERSION: nim-0.18.0
|
|
|
|
install:
|
|
- sudo apt -qq update
|
|
- sudo apt -qq install --yes python-pygments libssh2-1-dev libgcrypt20-dev libgpg-error-dev
|
|
- cd ~/projects
|
|
- if [ ! -e $NIM_ARCHIVE ]; then curl -s -o $NIM_ARCHIVE $NIM_URL; fi
|
|
- tar xJf $NIM_ARCHIVE
|
|
- cd $NIM_VERSION
|
|
- sh build.sh
|
|
- bin/nim c -d:release koch
|
|
- ./koch boot -d:release
|
|
- ./koch nimble -d:release
|
|
- export PATH=~/projects/$NIM_VERSION/bin:~/.nimble/bin:$PATH
|
|
- cd ~/projects/nimgen
|
|
|
|
on_finish:
|
|
- zip -r -q buildlogs-lin.zip ~/.nimble/pkgs
|
|
- appveyor PushArtifact buildlogs-lin.zip
|
|
|
|
cache:
|
|
- ~/projects/nim-0.18.0.tar.xz
|
|
|
|
build_script:
|
|
- nimble install -y
|
|
|
|
test_script:
|
|
- nimble test
|
|
|
|
deploy: off
|