Files
soci/appveyor.yml
Vadim Zeitlin c20f8842db Revert to the previous images on AppVeyor to avoid CMake breakage
The latest images use CMake 3.11 which seems to have a build-breaking
bug, see https://gitlab.kitware.com/cmake/cmake/issues/17874, so use the
previous images to avoid it for now.

See also https://github.com/appveyor/ci/issues/2180 for future
developments.
2018-04-04 14:42:34 +02:00

107 lines
3.6 KiB
YAML

version: 4.0.0.{build}
configuration: Release
image: Previous Visual Studio 2015
environment:
MINGW_ARCHIVE: C:\projects\mingw\x86_64-4.8.3-release-posix-seh-rt_v3-rev2.7z
MINGW_URL: https://sourceforge.net/projects/mingw-w64/files/Toolchains%20targetting%20Win64/Personal%20Builds/mingw-builds/4.8.3/threads-posix/seh/x86_64-4.8.3-release-posix-seh-rt_v3-rev2.7z/download
matrix:
- G: "Visual Studio 15 2017 Win64"
BOOST_ROOT: C:\Libraries\boost_1_59_0
POSTGRESQL_ROOT: C:\Program Files\PostgreSQL\9.6
MYSQL_DIR: C:\Program Files\MySql\MySQL Server 5.7
APPVEYOR_BUILD_WORKER_IMAGE: Previous Visual Studio 2017
- G: "Visual Studio 14 2015 Win64"
BOOST_ROOT: C:\Libraries\boost_1_59_0
POSTGRESQL_ROOT: C:\Program Files\PostgreSQL\9.4
MYSQL_DIR: C:\Program Files\MySql\MySQL Server 5.7
- G: "Visual Studio 12 2013 Win64"
BOOST_ROOT: C:\Libraries\boost_1_58_0
POSTGRESQL_ROOT: C:\Program Files\PostgreSQL\9.4
MYSQL_DIR: C:\Program Files\MySql\MySQL Server 5.7
- G: "Visual Studio 11 2012 Win64"
BOOST_ROOT: C:\Libraries\boost_1_58_0
POSTGRESQL_ROOT: C:\Program Files\PostgreSQL\9.4
MYSQL_DIR: C:\Program Files\MySql\MySQL Server 5.7
- G: "MinGW Makefiles"
MINGW_ROOT: C:\projects\mingw\4.8.3\mingw64\bin
BOOST_ROOT: C:\Libraries\boost_1_59_0
POSTGRESQL_ROOT: C:\Program Files\PostgreSQL\9.4
MYSQL_DIR: C:\Program Files\MySql\MySQL Server 5.7
services:
- mssql2014
- mysql
- postgresql
cache:
- C:\projects\mingw
install:
- ps: |
if ($env:G -eq "MinGW Makefiles")
{
if (!(Test-Path C:\projects\mingw))
{
mkdir C:\projects\mingw
}
if (!(Test-Path $env:MINGW_ARCHIVE))
{
(new-object net.webclient).DownloadFile("$env:MINGW_URL", "$env:MINGW_ARCHIVE")
7z x -y -oC:\projects\mingw\4.8.3\ $env:MINGW_ARCHIVE > $null
}
}
Import-Module C:\projects\soci\scripts\windows\Get-ODBCList.ps1
Get-ODBCList
- git clone https://github.com/snikulov/sqlite.cmake.build.git C:\projects\sqlite\src
before_build:
# dirty little hack - remove sh from Git to make generator happy
- ps: |
if ($env:G -eq "MinGW Makefiles")
{
$shellPath = (Get-Command sh.exe).definition
if ($shellPath)
{
if (Test-Path $shellPath)
{
Remove-Item $shellPath
}
}
}
- cd C:\projects\sqlite\src
- mkdir build
- cd build
- set SQLITE_ROOT=C:\projects\sqlite\sqlite
- set PATH=%MINGW_ROOT%;%PATH%;%SQLITE_ROOT%\bin;%POSTGRESQL_ROOT%\bin;%MYSQL_DIR%\bin;%MYSQL_DIR%\lib
- echo %PATH%
- cmake --version
- set PGUSER=postgres
- set PGPASSWORD=Password12!
- createdb soci_test
- set MYSQL_PWD=Password12!
- set USER=root
- mysql -e "create database soci_test;" --user=root
- sqlcmd -U sa -P Password12! -S (local)\SQL2014 -i C:\projects\soci\scripts\windows\mssql_db_create.sql
- cmake .. -G"%G%" -DCMAKE_BUILD_TYPE=%CONFIGURATION% -DCMAKE_INSTALL_PREFIX=C:\projects\sqlite\sqlite
- cmake --build . --config %CONFIGURATION% --target install
build_script:
- cd C:\projects\soci
- mkdir build
- cd build
- cmake .. -G"%G%" -DCMAKE_BUILD_TYPE=%CONFIGURATION% -DCMAKE_VERBOSE_MAKEFILE=ON
- cmake --build . --config %CONFIGURATION% --clean-first
test_script:
- ctest -V --output-on-failure -R "soci_empty|soci_postgresql|soci_sqlite3|soci_odbc_test_mssql|soci_mysql|soci_odbc_test_mysql|soci_odbc_test_postgresql"
notifications:
- provider: Webhook
url: https://webhooks.gitter.im/e/2038138a652d952f9372
on_build_success: true
on_build_failure: true
on_build_status_changed: true