summaryrefslogtreecommitdiff
path: root/appveyor.yml
diff options
context:
space:
mode:
Diffstat (limited to 'appveyor.yml')
-rw-r--r--appveyor.yml98
1 files changed, 98 insertions, 0 deletions
diff --git a/appveyor.yml b/appveyor.yml
new file mode 100644
index 0000000..16b7840
--- /dev/null
+++ b/appveyor.yml
@@ -0,0 +1,98 @@
+# uriparser - RFC 3986 URI parsing library
+#
+# Copyright (C) 2018, Sebastian Pipping <sebastian@pipping.org>
+# All rights reserved.
+#
+# Redistribution and use in source and binary forms, with or without
+# modification, are permitted provided that the following conditions
+# are met:
+#
+# * Redistributions of source code must retain the above
+# copyright notice, this list of conditions and the following
+# disclaimer.
+#
+# * Redistributions in binary form must reproduce the above
+# copyright notice, this list of conditions and the following
+# disclaimer in the documentation and/or other materials
+# provided with the distribution.
+#
+# * Neither the name of the <ORGANIZATION> nor the names of its
+# contributors may be used to endorse or promote products
+# derived from this software without specific prior written
+# permission.
+#
+# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+# FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
+# COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
+# INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
+# (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
+# SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+# HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
+# STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
+# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
+# OF THE POSSIBILITY OF SUCH DAMAGE.
+#
+version: '{build}-{branch}'
+
+configuration:
+ - Debug
+# - Release
+
+environment:
+ GTEST_VERSION: 1.8.1
+
+ # https://www.appveyor.com/docs/windows-images-software/
+ matrix:
+ # Visual Studio 2015, 32 bit
+ - APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2015
+ CMAKE_GENERATOR: Visual Studio 14 2015
+ PLATFORM: Win32
+
+ # Visual Studio 2015, 64 bit
+ - APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2015
+ CMAKE_GENERATOR: Visual Studio 14 2015 Win64
+ PLATFORM: x64
+
+ # Visual Studio 2017, 32 bit
+ - APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2017
+ CMAKE_GENERATOR: Visual Studio 15 2017
+ PLATFORM: Win32
+
+ # Visual Studio 2017, 64 bit
+ - APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2017
+ CMAKE_GENERATOR: Visual Studio 15 2017 Win64
+ PLATFORM: x64
+
+before_build:
+ - curl -fsSL -o release-%GTEST_VERSION%.zip https://github.com/google/googletest/archive/release-%GTEST_VERSION%.zip
+ - unzip -q release-%GTEST_VERSION%.zip
+ - cd googletest-release-%GTEST_VERSION%
+ - cmake
+ -G "%CMAKE_GENERATOR%"
+ -DCVF_VERSION=%GTEST_VERSION%
+ .
+ - cmake --build . --config Release -- /m
+# BEGIN Enrich folder to make FindGTest.cmake happy
+ - md googletest\lib
+ - copy googlemock\gtest\Release\gtest.lib googletest\lib
+ - copy googlemock\gtest\Release\gtest_main.lib googletest\lib
+# END
+ - cd ..
+ - mkdir build
+ - cd build
+# NOTE: GTEST_ROOT is relative to source CMakeLists.txt, not the build directory
+ - cmake
+ -G "%CMAKE_GENERATOR%"
+ -DGTEST_ROOT=googletest-release-%GTEST_VERSION%/googletest
+ -DURIPARSER_BUILD_DOCS=OFF
+ -DURIPARSER_MSVC_RUNTIME=/MT
+ ..
+
+build:
+ parallel: true
+ project: $(APPVEYOR_BUILD_FOLDER)\build\$(APPVEYOR_PROJECT_NAME).sln
+
+test_script:
+ - '%APPVEYOR_BUILD_FOLDER%\build\%CONFIGURATION%\testrunner.exe'