diff options
author | Ivan Shynkarenka <chronoxor@gmail.com> | 2018-05-03 01:47:17 +0300 |
---|---|---|
committer | Ivan Shynkarenka <chronoxor@gmail.com> | 2018-05-03 03:17:19 +0300 |
commit | feb183d895a2ea04910641be7f9cb9fe1df7b69e (patch) | |
tree | 2a4d7825d65feecf4e7b6658b30e7bfedc07c989 | |
parent | 92898e9e9cb2f1c006fcc5099c9c96eafce63dc8 (diff) |
Appveyor MinGW build
-rw-r--r-- | appveyor.bat | 14 | ||||
-rw-r--r-- | appveyor.yml | 14 | ||||
-rw-r--r-- | cmake/tests.cmake | 4 |
3 files changed, 26 insertions, 6 deletions
diff --git a/appveyor.bat b/appveyor.bat index e59ebccc..29ec4922 100644 --- a/appveyor.bat +++ b/appveyor.bat @@ -1,11 +1,23 @@ setlocal +IF %platform%==MinGW GOTO build_mingw IF %language%==cpp GOTO build_cpp IF %language%==csharp GOTO build_csharp -echo Unsupported language %language%. Exiting. +echo Unsupported language %language% and platform %platform%. Exiting. goto :error +:build_mingw +echo Building MinGW +set PATH=C:\mingw-w64\x86_64-7.2.0-posix-seh-rt_v5-rev1\mingw64\bin;%PATH:C:\Program Files\Git\usr\bin;=% +mkdir build_mingw +cd build_mingw +cmake -G "%generator%" -Dprotobuf_BUILD_SHARED_LIBS=%BUILD_DLL% -Dprotobuf_UNICODE=%UNICODE% -Dprotobuf_BUILD_TESTS=0 ../cmake +mingw32-make -j8 all || goto error +rem cd %configuration% +rem tests.exe || goto error +goto :EOF + :build_cpp echo Building C++ mkdir build_msvc diff --git a/appveyor.yml b/appveyor.yml index 02e0d313..05ee0c63 100644 --- a/appveyor.yml +++ b/appveyor.yml @@ -1,20 +1,23 @@ # Only test one combination: "Visual Studio 12 + Win64 + Debug + DLL". We can # test more combinations but AppVeyor just takes too long to finish (each # combination takes ~15mins). -platform: - - Win64 - configuration: - Debug environment: matrix: - - language: cpp + - platform: MinGW + language: cpp + image: Visual Studio 2015 + + - platform: Win64 + language: cpp image: Visual Studio 2015 BUILD_DLL: ON UNICODE: ON - - language: csharp + - platform: Win64 + language: csharp image: Visual Studio 2017 # Our build scripts run tests automatically; we don't want AppVeyor @@ -25,6 +28,7 @@ install: - git submodule update --init --recursive before_build: + - if %platform%==MinGW set generator=MinGW Makefiles - if %platform%==Win32 set generator=Visual Studio 14 - if %platform%==Win64 set generator=Visual Studio 14 Win64 - if %platform%==Win32 set vcplatform=Win32 diff --git a/cmake/tests.cmake b/cmake/tests.cmake index ec790e33..f91567b8 100644 --- a/cmake/tests.cmake +++ b/cmake/tests.cmake @@ -204,6 +204,10 @@ if(protobuf_ABSOLUTE_TEST_PLUGIN_PATH) add_compile_options(-DGOOGLE_PROTOBUF_TEST_PLUGIN_PATH="$<TARGET_FILE:test_plugin>") endif() +if(MINGW) + set_source_files_properties(${tests_files} PROPERTIES COMPILE_FLAGS "-Wno-narrowing") +endif() + add_executable(tests ${tests_files} ${common_test_files} ${tests_proto_files} ${lite_test_proto_files}) target_link_libraries(tests libprotoc libprotobuf gmock_main) |