Fix appveyor build

This commit is contained in:
Daniil Kovalev 2021-07-04 13:25:25 +03:00
parent 7b7615a6d9
commit 4022c2fc00
3 changed files with 53 additions and 40 deletions

View File

@ -178,13 +178,15 @@ INSTALL (TARGETS msgpackc-cxx
# Install headers from source tree. # Install headers from source tree.
INSTALL (DIRECTORY include/ INSTALL (DIRECTORY include/
TYPE INCLUDE DESTINATION include
COMPONENT msgpackc-cxx COMPONENT msgpackc-cxx
) )
INCLUDE (CMakePackageConfigHelpers) INCLUDE (CMakePackageConfigHelpers)
IF (CMAKE_VERSION VERSION_GREATER_EQUAL 3.14)
SET (extra_version_file_args ARCH_INDEPENDENT) SET (extra_version_file_args ARCH_INDEPENDENT)
ENDIF ()
SET (cmake_config_path "lib/cmake/msgpackc-cxx") SET (cmake_config_path "lib/cmake/msgpackc-cxx")
# Configure the main package file from source tree. # Configure the main package file from source tree.

View File

@ -4,57 +4,63 @@ branches:
only: only:
- cpp_master - cpp_master
image:
- Visual Studio 2015
environment: environment:
global:
BOOST_ROOT: C:\Libraries\boost_1_67_0
matrix: matrix:
- cpp11: -DMSGPACK_CXX11=OFF - APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2013
example: -DMSGPACK_BUILD_EXAMPLES=OFF cpp11: -DMSGPACK_CXX11=OFF
msvc: '"Visual Studio 10 2010"'
- cpp11: -DMSGPACK_CXX11=OFF
example: -DMSGPACK_BUILD_EXAMPLES=OFF
msvc: '"Visual Studio 11 2012"'
- cpp11: -DMSGPACK_CXX11=OFF
example: -DMSGPACK_BUILD_EXAMPLES=OFF
msvc: '"Visual Studio 12 2013"' msvc: '"Visual Studio 12 2013"'
- cpp11: -DMSGPACK_CXX11=ON boost_prefix: C:\Libraries\boost_1_58_0
example: -DMSGPACK_BUILD_EXAMPLES=ON boost_subdir: lib32-msvc-12.0
- APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2015
cpp11: -DMSGPACK_CXX11=OFF
msvc: '"Visual Studio 14 2015"' msvc: '"Visual Studio 14 2015"'
- cpp11: -DMSGPACK_CXX11=OFF boost_prefix: C:\Libraries\boost_1_69_0
example: -DMSGPACK_BUILD_EXAMPLES=ON boost_subdir: lib32-msvc-14.0
- APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2015
cpp11: -DMSGPACK_CXX11=ON
msvc: '"Visual Studio 14 2015"' msvc: '"Visual Studio 14 2015"'
boost_prefix: C:\Libraries\boost_1_69_0
boost_subdir: lib32-msvc-14.0
build_script: build_script:
- ps: | - ps: |
appveyor DownloadFile https://github.com/google/googletest/archive/release-1.7.0.zip -FileName googletest-release-1.7.0.zip
7z x googletest-release-1.7.0.zip 2> $null
cd googletest-release-1.7.0
md build
cd build
cmake -G $env:msvc -DBUILD_SHARED_LIBS=ON -DCMAKE_CXX_FLAGS=/D_VARIADIC_MAX=10 ..
cmake --build . --config Release
cd ..
cd ..
appveyor DownloadFile http://zlib.net/zlib-1.2.11.tar.gz -FileName zlib-1.2.11.tar.gz appveyor DownloadFile http://zlib.net/zlib-1.2.11.tar.gz -FileName zlib-1.2.11.tar.gz
7z x zlib-1.2.11.tar.gz 2> $null 7z x zlib-1.2.11.tar.gz 2> $null
7z x zlib-1.2.11.tar 2> $null 7z x zlib-1.2.11.tar 2> $null
cd zlib-1.2.11 cd zlib-1.2.11
md build md build
md prefix
cd build cd build
cmake -G $env:msvc ..
cmake `
-G $env:msvc `
-D CMAKE_INSTALL_PREFIX="$env:APPVEYOR_BUILD_FOLDER\zlib-1.2.11\prefix" `
..
if ($LastExitCode -ne 0) { exit $LastExitCode }
cmake --build . --target install --config Release
if ($LastExitCode -ne 0) { exit $LastExitCode }
cd ..\..
md build
md prefix
cd build
cmake `
-G $env:msvc `
$env:cpp11 `
-D MSGPACK_BUILD_EXAMPLES=ON `
-D MSGPACK_BUILD_TESTS=ON `
-D CMAKE_EXE_LINKER_FLAGS=/LIBPATH:"$env:boost_prefix\$env:boost_subdir" `
-D CMAKE_PREFIX_PATH="$env:boost_prefix;$env:APPVEYOR_BUILD_FOLDER\zlib-1.2.11\prefix" `
-D CMAKE_INSTALL_PREFIX="$env:APPVEYOR_BUILD_FOLDER\prefix" `
-D CMAKE_CXX_FLAGS="/D_VARIADIC_MAX=10 /EHsc /DBOOST_ALL_DYN_LINK" `
..
if ($LastExitCode -ne 0) { exit $LastExitCode }
cmake --build . --config Release cmake --build . --config Release
copy zconf.h .. if ($LastExitCode -ne 0) { exit $LastExitCode }
cd ..
cd ..
if ($env:msvc -ne '"Visual Studio 14 2015"') {
((Get-Content CMakeLists.txt) -replace "COMPONENTS chrono system OPTIONAL_COMPONENTS timer", "") | Set-Content -Path CMakeLists.txt
}
md build
cd build
cmake -G $env:msvc $env:cpp11 $env:example $env:x3_parse -DGTEST_LIBRARY="$env:APPVEYOR_BUILD_FOLDER\googletest-release-1.7.0\build\Release\gtest.lib" -DGTEST_MAIN_LIBRARY="$env:APPVEYOR_BUILD_FOLDER\googletest-release-1.7.0\build\Release\gtest_main.lib" -DGTEST_INCLUDE_DIR="$env:APPVEYOR_BUILD_FOLDER\googletest-release-1.7.0\include" -DZLIB_LIBRARY="$env:APPVEYOR_BUILD_FOLDER\zlib-1.2.11\build\Release\zlib.lib" -DZLIB_INCLUDE_DIR="$env:APPVEYOR_BUILD_FOLDER\zlib-1.2.11" -DCMAKE_CXX_FLAGS='"/D_VARIADIC_MAX=10 /EHsc"' ..
cmake --build . --config Release -v
test_script: test_script:
- set PATH=%PATH%;%APPVEYOR_BUILD_FOLDER%\googletest-release-1.7.0\build\Release;%APPVEYOR_BUILD_FOLDER%\zlib-1.2.11\build\Release;%APPVEYOR_BUILD_FOLDER%\build\release - set PATH=%PATH%;%APPVEYOR_BUILD_FOLDER%\zlib-1.2.11\build\Release;%APPVEYOR_BUILD_FOLDER%\build\release;%boost_prefix%\%boost_subdir%
- ctest -V - ctest -VV -C Release

View File

@ -9,6 +9,11 @@
#include "config.h" #include "config.h"
#endif #endif
// Avoid empty test tree on boost 1.60 and lower
BOOST_AUTO_TEST_CASE(dummy)
{
}
#if (BOOST_VERSION / 100000) >= 1 && ((BOOST_VERSION / 100) % 1000) >= 61 #if (BOOST_VERSION / 100000) >= 1 && ((BOOST_VERSION / 100) % 1000) >= 61
BOOST_AUTO_TEST_CASE(pack_convert_string_view) BOOST_AUTO_TEST_CASE(pack_convert_string_view)