forked from swig/swig
-
Notifications
You must be signed in to change notification settings - Fork 19
/
appveyor.yml
78 lines (73 loc) · 2.69 KB
/
appveyor.yml
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
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
platform:
- x86
- x64
environment:
matrix:
- SWIGLANG: csharp
VSVER: 14
- SWIGLANG: csharp
VSVER: 12
- SWIGLANG: java
VSVER: 12
- SWIGLANG: python
VSVER: 12
VER: 27
- SWIGLANG: python
VSVER: 12
VER: 35
PY3: 1
install:
- date /T & time /T
- set PATH=C:\cygwin\bin;%PATH%
- set CYGWIN=nodosfilewarning
- git clone -q --depth=1 --single-branch --branch cccl-1.0 git://github.com/swig/cccl.git C:\cccl-1.0
- bash -c "cp C:/cccl-1.0/cccl /usr/bin"
- ps: >-
If ($env:Platform -Match "x86") {
$env:PCRE_PLATFORM="Win32"
$env:JAVA_HOME="C:/Program Files (x86)/Java/jdk1.8.0"
$env:VCVARS_PLATFORM="x86"
$env:LANG_PLATFORM=""
} Else {
$env:PCRE_PLATFORM="x64"
$env:JAVA_HOME="C:/Program Files/Java/jdk1.8.0"
$env:VCVARS_PLATFORM="amd64"
$env:LANG_PLATFORM="-x64"
}
- ps: $env:VSCOMNTOOLS=(Get-Content ("env:VS" + "$env:VSVER" + "0COMNTOOLS"))
- echo "Using Visual Studio %VSVER%.0 at %VSCOMNTOOLS%"
- call "%VSCOMNTOOLS%\..\..\VC\vcvarsall.bat" %VCVARS_PLATFORM%
- Tools\nuget-install.cmd pcre -Verbosity detailed -Version 8.33.0.1 -OutputDirectory C:\pcre
- set PCRE_ROOT=C:/pcre/pcre.8.33.0.1/build/native
- set PATH=C:\Python%VER%%LANG_PLATFORM%;%PATH%
- python -V
- bash -c "which python"
- bash -c "python -V"
- bash -c "which cl.exe"
- bash -c "cl.exe /? 2>&1 | head -n 2"
- bash -c "which csc.exe"
- bash -c "csc.exe /? | head -n 2"
- bash -c "which cccl"
- bash -c "cccl --version"
- make --version
- uname -a
build_script:
- set CCCL_OPTIONS=--cccl-muffle /W3
- set CHECK_OPTIONS=CSHARPOPTIONS=-platform:%Platform%
# Open dummy file descriptor to fix error on cygwin: ./configure: line 560: 0: Bad file descriptor
- bash -c "exec 0</dev/null && ./autogen.sh && time ./configure --disable-dependency-tracking --disable-ccache CC=cccl CXX=cccl CFLAGS='-O2' CXXFLAGS='-O2' LDFLAGS='--cccl-link /LTCG' PCRE_CFLAGS='-I%PCRE_ROOT%/include -DPCRE_STATIC' PCRE_LIBS='-L%PCRE_ROOT%/lib/v110/%PCRE_PLATFORM%/Release/static/utf8 -lpcre8' --without-perl5 --without-go --with-boost=C:/Libraries/boost || cat config.log"
- bash -c "time make -s"
test_script:
- set CCCL_OPTIONS=--cccl-muffle /W3 /EHsc
# (Warning below is fixed in newer versions of Python (2.7.9)) '_hypot' : recursive on all control paths, function will cause runtime stack overflow
- ps: >-
If ("$env:SWIGLANG$env:VER" -Match "python27") {
$env:CCCL_OPTIONS="$env:CCCL_OPTIONS /wd4717"
}
- .\swig.exe -version
- bash -c "file ./swig.exe"
- bash -c "time make -k check-%SWIGLANG%-version"
- bash -c "time make -k check-%SWIGLANG%-examples %CHECK_OPTIONS%"
- bash -c "time make -k check-%SWIGLANG%-test-suite %CHECK_OPTIONS%"
# Do not build on tags (GitHub only)
skip_tags: true