@ -12,6 +12,8 @@ skip_commits:
- .gitignore
- '**/*.md'
- .travis.yml
- .cirrus.yml
- '.github/**'
# List of build configurations to test.
configuration:
@ -21,49 +23,70 @@ configuration:
# CMAKE_EXTRA_OPTIONS: -DOPENSSL_ROOT_DIR=C:/OpenSSL-Win32
environment:
matrix:
# MSVC 2022, UWP (cmake)
- COMPILER : MSVC
BUILDTOOL : CMAKE
TESTTYPE : NONE
MSVC_SETUP_ARG : x64 store 10.0.22621.0
MSVC_SETUP_PATH : C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Auxiliary\Build\vcvarsall.bat
CMAKE_EXTRA_OPTIONS : -DCMAKE_SYSTEM_NAME=WindowsStore -DCMAKE_SYSTEM_VERSION=10.0 -A x64
TESTDIRSUFFIX : Release\
# MinGW via MSYS2 (latest version)
- COMPILER : MINGW
BUILDTOOL : MSYS2-CMAKE
BUILDTOOL : MSYS2
TESTTYPE : MSYS2
MSYSTEM : MINGW64
CHERE_INVOKING : YES
# MSVC 2015, 32-bit x86 (cmake)
# MSVC 2022 , 32-bit x86 (cmake)
- COMPILER : MSVC
BUILDTOOL : CMAKE
TESTTYPE : CMAKE
MSVC_SETUP_ARG : x86
MSVC_SETUP_PATH : C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Auxiliary\Build\vcvars32.bat
CMAKE_EXTRA_OPTIONS : -GNinja
# MSVC 2015 , 64-bit x86 (cmake)
# MSVC 2022 , 64-bit x86 (cmake)
- COMPILER : MSVC
BUILDTOOL : CMAKE
TESTTYPE : CMAKE
MSVC_SETUP_ARG : x64
MSVC_SETUP_PATH : C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Auxiliary\Build\vcvars64.bat
CMAKE_EXTRA_OPTIONS : -GNinja
# MinGW, 32-bit x86 (cmake)
- COMPILER : MINGW
BUILDTOOL : CMAKE
TESTTYPE : CMAKE
PATH : C:\mingw-w64\i686-8.1.0-posix-dwarf-rt_v6-rev0\mingw32\bin;%PATH%
CMAKE_EXTRA_OPTIONS : -GNinja
# MinGW, 32-bit x86 (cmake static only)
- COMPILER : MINGW
BUILDTOOL : CMAKESTATIC
BUILDTOOL : CMAKE
TESTTYPE : CMAKE
PATH : C:\mingw-w64\i686-8.1.0-posix-dwarf-rt_v6-rev0\mingw32\bin;%PATH%
CMAKE_EXTRA_OPTIONS : -DCARES_SHARED=OFF -GNinja
# MSVC 2015 , 32-bit x86 (nmake)
# MSVC 2022 , 32-bit x86 (nmake)
- COMPILER : MSVC
BUILDTOOL : NMAKE
TESTTYPE : NMAKE
MSVC_SETUP_ARG : x86
MSVC_SETUP_PATH : C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Auxiliary\Build\vcvars32.bat
# MSVC 2015 , 64-bit x86 (nmake)
# MSVC 2022 , 64-bit x86 (nmake)
- COMPILER : MSVC
BUILDTOOL : NMAKE
TESTTYPE : NMAKE
MSVC_SETUP_ARG : x64
MSVC_SETUP_PATH : C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Auxiliary\Build\vcvars64.bat
# MinGW, 32-bit x86 (makefiles)
- COMPILER : MINGW
BUILDTOOL : MAKE
TESTTYPE : MAKE
PATH : C:\mingw-w64\i686-8.1.0-posix-dwarf-rt_v6-rev0\mingw32\bin;%PATH%
install:
@ -73,48 +96,38 @@ before_build:
# Setup build environment for the selected compiler (not all compilers need to do anything here).
# -- Visual Studio --
- if "%COMPILER%" == "MSVC" call "%MSVC_SETUP_PATH%" %MSVC_SETUP_ARG%
- if "%BUILDTOOL%" == "MSYS2-CMAKE " C:\msys64\usr\bin\bash -lc "pacman --noconfirm -Syuu"
- if "%BUILDTOOL%" == "MSYS2-CMAKE " C:\msys64\usr\bin\bash -lc "pacman --noconfirm -Syu git mingw-w64-x86_64-gcc mingw-w64-x86_64-cmake mingw-w64-x86_64-check mingw-w64-x86_64-ninja"
- if "%BUILDTOOL%" == "MSYS2" C:\msys64\usr\bin\bash -lc "pacman --noconfirm -Syuu"
- if "%BUILDTOOL%" == "MSYS2" C:\msys64\usr\bin\bash -lc "pacman --noconfirm -Syu git mingw-w64-x86_64-gcc mingw-w64-x86_64-cmake mingw-w64-x86_64-check mingw-w64-x86_64-ninja"
build_script:
- if "%BUILDTOOL%" == "MSYS2-CMAKE " C:\msys64\usr\bin\bash -lc "cmake -GNinja -DCMAKE_BUILD_TYPE=%configuration% -DCMAKE_INSTALL_PREFIX=C:/projects/build-cares/test_install -DCARES_STATIC=ON -DCARES_STATIC_PIC=ON -DCARES_BUILD_TESTS=ON %CMAKE_EXTRA_OPTIONS% ."
- if "%BUILDTOOL%" == "MSYS2-CMAKE " C:\msys64\usr\bin\bash -lc "ninja -v install"
- if "%BUILDTOOL%" == "MSYS2" C:\msys64\usr\bin\bash -lc "cmake -GNinja -DCMAKE_BUILD_TYPE=%configuration% -DCMAKE_INSTALL_PREFIX=C:/projects/build-cares/test_install -DCARES_STATIC=ON -DCARES_STATIC_PIC=ON -DCARES_BUILD_TESTS=ON %CMAKE_EXTRA_OPTIONS% ."
- if "%BUILDTOOL%" == "MSYS2" C:\msys64\usr\bin\bash -lc "ninja -v install"
- if "%BUILDTOOL%" == "NMAKE" copy .\include\ares_build.h.dist .\include\ares_build.h
- if "%BUILDTOOL%" == "NMAKE" nmake /NOLOGO /f .\Makefile.msvc
- if "%BUILDTOOL%" == "CMAKE" mkdir C:\projects\build-cares
- if "%BUILDTOOL%" == "CMAKE" cd C:\projects\build-cares
- if "%BUILDTOOL%" == "CMAKE" cmake -GNinja -DCMAKE_BUILD_TYPE=%configuration% -DCMAKE_INSTALL_PREFIX=C:\projects\build-cares\test_install -DCARES_STATIC=ON -DCARES_STATIC_PIC=ON -DCARES_BUILD_TESTS=ON %CMAKE_EXTRA_OPTIONS% %APPVEYOR_BUILD_FOLDER%
- if "%BUILDTOOL%" == "CMAKE" ninja -v install
- if "%BUILDTOOL%" == "CMAKESTATIC" mkdir C:\projects\build-cares
- if "%BUILDTOOL%" == "CMAKESTATIC" cd C:\projects\build-cares
- if "%BUILDTOOL%" == "CMAKESTATIC" cmake -GNinja -DCMAKE_BUILD_TYPE=%configuration% -DCMAKE_INSTALL_PREFIX=C:\projects\build-cares\test_install -DCARES_SHARED=OFF -DCARES_STATIC=ON -DCARES_STATIC_PIC=ON -DCARES_BUILD_TESTS=ON %CMAKE_EXTRA_OPTIONS% %APPVEYOR_BUILD_FOLDER%
- if "%BUILDTOOL%" == "CMAKESTATIC" ninja -v install
- if "%BUILDTOOL%" == "CMAKE" cmake -DCMAKE_BUILD_TYPE=%configuration% -DCMAKE_INSTALL_PREFIX=C:\projects\build-cares\test_install -DCARES_STATIC=ON -DCARES_STATIC_PIC=ON -DCARES_BUILD_TESTS=ON %CMAKE_EXTRA_OPTIONS% -Bbuild
- if "%BUILDTOOL%" == "CMAKE" cmake --build build --config Release
- if "%BUILDTOOL%" == "CMAKE" cmake --install build --config Release
- if "%BUILDTOOL%" == "MAKE" copy .\include\ares_build.h.dist .\include\ares_build.h
- if "%BUILDTOOL%" == "MAKE" mingw32-make.exe -f Makefile.m32 demos
test_script:
# We can't use powershell for tests due to treating stderr as an error
- if "%BUILDTOOL%" == "MSYS2-CMAKE" C:\msys64\usr\bin\bash -lc "./bin/adig.exe www.google.com"
- if "%BUILDTOOL%" == "MSYS2-CMAKE" C:\msys64\usr\bin\bash -lc "./bin/ahost.exe www.google.com"
- if "%BUILDTOOL%" == "MSYS2-CMAKE" C:\msys64\usr\bin\bash -lc "./bin/arestest.exe -4 -v --gtest_filter=-*LiveSearchTXT*:*LiveSearchANY*:*LiveGetLocalhostByAddr*"
- if "%BUILDTOOL%" == "NMAKE" cd test
- if "%BUILDTOOL%" == "NMAKE" nmake /NOLOGO /f .\Makefile.msvc vtest
- if "%BUILDTOOL%" == "NMAKE" nmake /NOLOGO /f .\Makefile.msvc aresfuzz aresfuzzname dnsdump
- if "%BUILDTOOL%" == "NMAKE" .\msvc\arestest\lib-debug\dnsdump.exe fuzzinput\answer_a fuzzinput\answer_aaaa
- if "%BUILDTOOL%" == "MAKE" cd test
- if "%BUILDTOOL%" == "MAKE" mingw32-make.exe -f Makefile.m32
- if "%BUILDTOOL%" == "MAKE" mingw32-make.exe -f Makefile.m32 aresfuzz.exe aresfuzzname.exe dnsdump.exe
- if "%BUILDTOOL%" == "MAKE" .\dnsdump.exe fuzzinput\answer_a fuzzinput\answer_aaaa
- if "%BUILDTOOL%" == "CMAKE" cd C:\projects\build-cares\bin
- if "%BUILDTOOL%" == "CMAKE" .\adig.exe www.google.com
- if "%BUILDTOOL%" == "CMAKE" .\ahost.exe www.google.com
- if "%BUILDTOOL%" == "CMAKE" .\arestest.exe -4 -v --gtest_filter=-*LiveSearchTXT*:*LiveSearchANY*:*LiveGetLocalhostByAddr*
- if "%BUILDTOOL%" == "CMAKE" .\dnsdump.exe "%APPVEYOR_BUILD_FOLDER%\test\fuzzinput\answer_a" "%APPVEYOR_BUILD_FOLDER%\test\fuzzinput\answer_aaaa"
- if "%BUILDTOOL%" == "CMAKESTATIC" cd C:\projects\build-cares\bin
- if "%BUILDTOOL%" == "CMAKESTATIC" .\adig.exe www.google.com
- if "%BUILDTOOL%" == "CMAKESTATIC" .\ahost.exe www.google.com
- if "%BUILDTOOL%" == "CMAKESTATIC" .\arestest.exe -4 -v --gtest_filter=-*LiveSearchTXT*:*LiveSearchANY*:*LiveGetLocalhostByAddr*
- if "%BUILDTOOL%" == "CMAKESTATIC" .\dnsdump.exe "%APPVEYOR_BUILD_FOLDER%\test\fuzzinput\answer_a" "%APPVEYOR_BUILD_FOLDER%\test\fuzzinput\answer_aaaa"
- if "%TESTTYPE%" == "MSYS2" C:\msys64\usr\bin\bash -lc "./bin/adig.exe www.google.com"
- if "%TESTTYPE%" == "MSYS2" C:\msys64\usr\bin\bash -lc "./bin/ahost.exe www.google.com"
- if "%TESTTYPE%" == "MSYS2" C:\msys64\usr\bin\bash -lc "./bin/arestest.exe -4 -v --gtest_filter=-*LiveSearchTXT*:*LiveSearchANY*:*LiveGetLocalhostByAddr*"
- if "%TESTTYPE%" == "NMAKE" cd test
- if "%TESTTYPE%" == "NMAKE" nmake /NOLOGO /f .\Makefile.msvc vtest
- if "%TESTTYPE%" == "NMAKE" nmake /NOLOGO /f .\Makefile.msvc aresfuzz aresfuzzname dnsdump
- if "%TESTTYPE%" == "NMAKE" .\msvc\arestest\lib-debug\dnsdump.exe fuzzinput\answer_a fuzzinput\answer_aaaa
- if "%TESTTYPE%" == "MAKE" cd test
- if "%TESTTYPE%" == "MAKE" mingw32-make.exe -f Makefile.m32
- if "%TESTTYPE%" == "MAKE" mingw32-make.exe -f Makefile.m32 aresfuzz.exe aresfuzzname.exe dnsdump.exe
- if "%TESTTYPE%" == "MAKE" .\dnsdump.exe fuzzinput\answer_a fuzzinput\answer_aaaa
- if "%TESTTYPE%" == "CMAKE" cd build\bin\%TESTDIRSUFFIX%
- if "%TESTTYPE%" == "CMAKE" .\adig.exe www.google.com
- if "%TESTTYPE%" == "CMAKE" .\ahost.exe www.google.com
- if "%TESTTYPE%" == "CMAKE" .\arestest.exe -4 -v --gtest_filter=-*LiveSearchTXT*:*LiveSearchANY*:*LiveGetLocalhostByAddr*
- if "%TESTTYPE%" == "CMAKE" .\dnsdump.exe "%APPVEYOR_BUILD_FOLDER%\test\fuzzinput\answer_a" "%APPVEYOR_BUILD_FOLDER%\test\fuzzinput\answer_aaaa"
#on_finish:
# - cd C:\projects\build-cares\test