forked from jtv/libpqxx
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathappveyor.yml
More file actions
58 lines (50 loc) · 1.77 KB
/
Copy pathappveyor.yml
File metadata and controls
58 lines (50 loc) · 1.77 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
---
# Configuration for test runs in Appveyor.
version: "1.0.{build}"
image: "Visual Studio 2022"
shallow_clone: true
# AppVeyor seems to build every push to a branch with a PR twice: once for the
# branch, once for the PR. Suppress that. Especially when combining with
# rolling builds, because it means that one of those gets instantly cancelled,
# which means a "build failure" because it didn't complete.
branches:
only:
- master
# Set up to run the build across multiple C++ language versions.
environment:
# PostgreSQL version. We need it in several places.
PGVERSION: 15
matrix:
- CXX_VERSION: 20
- CXX_VERSION: 23
MSVC: "C:\\Program Files\\Microsoft Visual Studio\\2022\\Community\\VC"
services: postgresql%PGVERSION%
install:
- net start postgresql-x64-%PGVERSION%
# Run CMake to build libpqxx.sln.
#
# 7z's -bsp0 option is supposed to suppress its progress bar.
before_build:
- cmd: "call \"%MSVC%\\Auxiliary\\Build\\vcvars64.bat\"\n\
cmake -DBUILD_SHARED_LIBS=1 -DBUILD_TOOLS=1 \
-DCMAKE_CXX_STANDARD=%CXX_VERSION% \
-DCMAKE_CXX_FLAGS=\"/analyze /EHsc /Wall /sdl /options:strict /MP \
/wd4514 /wd4702 /wd4800 /wd4820 /wd4866 /wd4868 /wd5031 /wd5032 \
/wd5045 /wd5246 /wd5264 /wd6924\" \
.\n\
7z a -bsp0 config-headers.zip \
\"%APPVEYOR_BUILD_FOLDER%/include/pqxx/internal/config.h\"\n\
appveyor PushArtifact config-headers.zip"
configuration: Debug
build:
parallel: true
project: libpqxx.sln
verbosity: minimal
test_script:
- ps: $env:Path +=
";.\\src\\Debug;C:\\Program Files\\PostgreSQL\\$env:PGVERSION\\bin" ;
$env:PGUSER = "postgres" ;
$env:PGPASSWORD = "Password12!" ;
.\\test\\Debug\\runner.exe
# Don't notify. The Github PR will have a status indicator.
notifications: