Continuous integration improvements (#5703)

* Add workaround for imgtool and jedutil failing vs2019 debug builds with /ZI

* No longer allow msvc build to fail

* Enable tools build for travis to make it more useful

* Switch travis to Xcode 11 in order to fix nltool linking failure

* Prefer 64-bit compiler with VS 2019 too

* Setting PreferredToolArchitecture to x64 is not needed, genie puts it into the project files for vs2015 or later

* OPTIMIZE=1 build is faster that OPTIMIZE=0 for some reason. So fast in fact, that TOOLS=1 can be enabled without hitting the 60 minute timeout

* Switch MINGW build to VS 2017 image until appveyor figure out why builds on VS 2019 are almost twice as slow

* Run pacman twice to account for core system upgrades
This commit is contained in:
Julian Sikorski 2019-10-18 16:30:48 +02:00 committed by R. Belmont
parent 14f2ce1a37
commit 93a1cde67d
4 changed files with 33 additions and 11 deletions

View file

@ -1,5 +1,6 @@
version: 1.0.{build}
image:
- Visual Studio 2017
- Visual Studio 2019
shallow_clone: true
@ -10,19 +11,20 @@ environment:
- BUILD: GCC
- BUILD: MSVC
matrix:
exclude:
- image: Visual Studio 2017
BUILD: MSVC
- image: Visual Studio 2019
BUILD: GCC
install:
- set "PATH=C:\msys64\usr\bin;C:\msys64\mingw64\bin;C:\Windows\System32;C:\Windows;%PATH%"
- set MSYSTEM=MINGW64
- set PreferredToolArchitecture=x64
build_script:
- bash -lc "exec 0</dev/null && cd $APPVEYOR_BUILD_FOLDER && export MINGW64=/mingw64 && make SUBTARGET=tiny PTR64=1 TOOLS=1 OPTIMIZE=0 vs2019 -j3"
- msbuild "build\projects\windows\mametiny\vs2019\mametiny.sln" /m /p:ContinueOnError=false /p:StopOnFirstFailure=true /property:Configuration=Debug /property:Platform=x64 /logger:"C:\Program Files\AppVeyor\BuildAgent\Appveyor.MSBuildLogger.dll"
matrix:
allow_failures:
- BUILD: MSVC
for:
-
matrix:
@ -34,8 +36,9 @@ for:
- set "PATH=C:\msys64\usr\bin;C:\msys64\mingw64\bin;C:\Windows\System32;C:\Windows;%PATH%"
- set MSYSTEM=MINGW64
- bash -lc "pacman -Syu --noconfirm"
- bash -lc "pacman -Syu --noconfirm"
build_script:
- bash -lc "exec 0</dev/null && cd $APPVEYOR_BUILD_FOLDER && export MINGW64=/mingw64 && make SUBTARGET=tiny PTR64=1 OPTIMIZE=0 ARCHOPTS=-Wa,-mbig-obj IGNORE_GIT=1 -j3"
- bash -lc "exec 0</dev/null && cd $APPVEYOR_BUILD_FOLDER && export MINGW64=/mingw64 && make SUBTARGET=tiny PTR64=1 TOOLS=1 OPTIMIZE=1 IGNORE_GIT=1 -j3"
test_script:
- \projects\mame\mametiny64.exe -validate
after_test:

View file

@ -6,6 +6,7 @@ os:
- linux
- osx
dist: bionic
osx_image: xcode11
matrix:
exclude:
- os: osx
@ -17,11 +18,11 @@ env:
script:
- if [ $TRAVIS_OS_NAME == 'linux' ]; then
if [ $CC == 'clang' ]; then
make -j2 IGNORE_GIT=1 OVERRIDE_CXX="clang++-3.6" OVERRIDE_CC="clang-3.6" && ./$MAME -validate;
else make -j4 IGNORE_GIT=1 OPTIMIZE=0 OVERRIDE_CC="gcc-9" OVERRIDE_CXX="g++-9" && ./$MAME -validate;
make -j2 IGNORE_GIT=1 OVERRIDE_CXX="clang++-3.6" OVERRIDE_CC="clang-3.6" TOOLS=1 && ./$MAME -validate;
else make -j4 IGNORE_GIT=1 OPTIMIZE=0 OVERRIDE_CC="gcc-9" OVERRIDE_CXX="g++-9" TOOLS=1 && ./$MAME -validate;
fi
elif [ $TRAVIS_OS_NAME == 'osx' ]; then
unset LDOPTS && make -j2 OPTIMIZE=0 USE_LIBSDL=1 && ./$MAME -validate;
unset LDOPTS && make -j2 OPTIMIZE=0 USE_LIBSDL=1 TOOLS=1 && ./$MAME -validate;
fi
sudo: required
before_install:

View file

@ -66,7 +66,7 @@
else
_p(2, '<Keyword>Win32Proj</Keyword>')
end
if _ACTION:sub(3) == "2015" or _ACTION:sub(3) == "2017" or _ACTION:sub(3) == "llvm" then
if _ACTION:sub(3) == "2015" or _ACTION:sub(3) == "2017" or _ACTION:sub(3) == "2019" or _ACTION:sub(3) == "llvm" then
_p(2,'<PreferredToolArchitecture>x64</PreferredToolArchitecture>')
end
if (_ACTION:sub(3) == "2017" or _ACTION:sub(3) == "llvm")

View file

@ -133,6 +133,15 @@ files {
configuration { "mingw*" or "vs*" }
targetextension ".exe"
-- workaround for https://developercommunity.visualstudio.com/content/problem/752372/vs2019-v1631-c-internal-compiler-error-when-zi-opt.html
-- should be fixed in 16.5
configuration { "Debug", "vs2019" }
if _OPTIONS["vs"]==nil then
flags {
"NoEditAndContinue",
}
end
configuration { }
strip()
@ -749,6 +758,15 @@ files {
configuration { "mingw*" or "vs*" }
targetextension ".exe"
-- workaround for https://developercommunity.visualstudio.com/content/problem/752372/vs2019-v1631-c-internal-compiler-error-when-zi-opt.html
-- should be fixed in 16.5
configuration { "Debug", "vs2019" }
if _OPTIONS["vs"]==nil then
flags {
"NoEditAndContinue",
}
end
configuration { }
strip()