version: '{build}' cache: - x86_64-4.9.2-release-win32-seh-rt_v4-rev4.7z - i686-4.9.2-release-win32-dwarf-rt_v4-rev4.7z - sqlite-dll-win32-x86-3240000.zip - sqlite-dll-win64-x64-3240000.zip - mingw-w64-x86_64-rocksdb-5.10.2-1-any.pkg.tar.xz - mingw-w64-i686-rocksdb-5.10.2-1-any.pkg.tar.xz # We always want 32 and 64-bit compilation matrix: fast_finish: false # set this flag to immediately finish build once one of the jobs fails. environment: matrix: - MINGW_DIR: mingw32 MINGW_URL: https://sourceforge.net/projects/mingw-w64/files/Toolchains%20targetting%20Win32/Personal%20Builds/mingw-builds/4.9.2/threads-win32/dwarf/i686-4.9.2-release-win32-dwarf-rt_v4-rev4.7z/download MINGW_ARCHIVE: i686-4.9.2-release-win32-dwarf-rt_v4-rev4.7z SQLITE_URL: https://www.sqlite.org/2018/sqlite-dll-win32-x86-3240000.zip SQLITE_ARCHIVE: sqlite-dll-win32-x86-3240000.zip ROCKSDB_URL: https://sourceforge.net/projects/msys2/files/REPOS/MINGW/i686/mingw-w64-i686-rocksdb-5.10.2-1-any.pkg.tar.xz ROCKSDB_ARCHIVE: mingw-w64-i686-rocksdb-5.10.2-1-any.pkg.tar.xz platform: x86 - MINGW_DIR: mingw64 MINGW_URL: https://sourceforge.net/projects/mingw-w64/files/Toolchains%20targetting%20Win64/Personal%20Builds/mingw-builds/4.9.2/threads-win32/seh/x86_64-4.9.2-release-win32-seh-rt_v4-rev4.7z/download MINGW_ARCHIVE: x86_64-4.9.2-release-win32-seh-rt_v4-rev4.7z SQLITE_URL: https://www.sqlite.org/2018/sqlite-dll-win64-x64-3240000.zip SQLITE_ARCHIVE: sqlite-dll-win64-x64-3240000.zip ROCKSDB_URL: https://sourceforge.net/projects/msys2/files/REPOS/MINGW/x86_64/mingw-w64-x86_64-rocksdb-5.10.2-1-any.pkg.tar.xz ROCKSDB_ARCHIVE: mingw-w64-x86_64-rocksdb-5.10.2-1-any.pkg.tar.xz platform: x64 install: - setlocal EnableExtensions EnableDelayedExpansion - MKDIR %CD%\bin - IF not exist "%MINGW_ARCHIVE%" appveyor DownloadFile "%MINGW_URL%" -FileName "%MINGW_ARCHIVE%" - 7z x -y "%MINGW_ARCHIVE%" > nul - IF not exist "%SQLITE_ARCHIVE%" appveyor DownloadFile "%SQLITE_URL%" -FileName "%SQLITE_ARCHIVE%" - 7z x -y "%SQLITE_ARCHIVE%" > nul - IF "%PLATFORM%" == "x64" ( copy %CD%\sqlite3.dll %CD%\bin\sqlite3_64.dll ) ELSE ( copy %CD%\sqlite3.dll %CD%\bin\sqlite3_32.dll ) - IF not exist "%ROCKSDB_ARCHIVE%" appveyor DownloadFile "%ROCKSDB_URL%" -FileName "%ROCKSDB_ARCHIVE%" - 7z x "%ROCKSDB_ARCHIVE%" -so | 7z x -aoa -si -ttar -y -o"rocksdb" > nul - IF "%PLATFORM%" == "x64" ( copy %CD%\rocksdb\mingw64\bin\librocksdb-shared.dll %CD%\bin\librocksdb.dll ) ELSE ( copy %CD%\rocksdb\mingw32\bin\librocksdb-shared.dll %CD%\bin\librocksdb.dll ) - SET PATH=%CD%\%MINGW_DIR%\bin;%CD%\bin;%CD%\Nim\bin;%PATH% - git clone https://github.com/nim-lang/Nim.git - 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 - cd csources - IF "%PLATFORM%" == "x64" ( build64.bat ) else ( build.bat ) - cd .. - bin\nim c koch - koch boot -d:release - koch nimble build_script: - cd C:\projects\%APPVEYOR_PROJECT_SLUG% - nimble install -y test_script: - nimble test deploy: off