diff options
| author | Oskari Timperi <oskari.timperi@novatron.fi> | 2020-08-20 15:57:52 +0300 |
|---|---|---|
| committer | Oskari Timperi <oskari.timperi@novatron.fi> | 2020-08-20 15:57:52 +0300 |
| commit | 6635a2fa596ca457565eebc2a45664309cd24d77 (patch) | |
| tree | 31017c63bffddec9f994cf49756562d9f7707cca /scripts | |
| parent | 3cec4979f93955b10471a3ca9ab50633abd1ee9e (diff) | |
| parent | d48e2bd9d9251b8060f566ad52e393ba7b5ff180 (diff) | |
| download | vcpkg-6635a2fa596ca457565eebc2a45664309cd24d77.tar.gz vcpkg-6635a2fa596ca457565eebc2a45664309cd24d77.zip | |
Merge branch 'master' into update-geos-381
Diffstat (limited to 'scripts')
| -rw-r--r-- | scripts/ci.baseline.txt | 26 | ||||
| -rw-r--r-- | scripts/cmake/vcpkg_build_make.cmake | 20 | ||||
| -rw-r--r-- | scripts/cmake/vcpkg_execute_build_process.cmake | 2 |
3 files changed, 29 insertions, 19 deletions
diff --git a/scripts/ci.baseline.txt b/scripts/ci.baseline.txt index 3abe12625..e5292ed5c 100644 --- a/scripts/ci.baseline.txt +++ b/scripts/ci.baseline.txt @@ -291,7 +291,6 @@ dbghelp:x64-uwp=skip dbghelp:x64-windows-static=skip dbghelp:x64-windows=skip dbghelp:x86-windows=skip -dbow2:x64-osx=fail dcmtk:arm-uwp=fail dcmtk:arm64-windows=fail dcmtk:x64-uwp=fail @@ -325,7 +324,6 @@ dlfcn-win32:x64-linux=fail dlfcn-win32:x64-osx=fail dlfcn-win32:x64-uwp=fail dmlc:arm-uwp=fail -dmlc:arm64-windows=fail dmlc:x64-uwp=fail dpdk:arm-uwp=fail dpdk:arm64-windows=fail @@ -425,7 +423,6 @@ flint:x64-linux=fail flint:x64-osx=fail fltk:arm-uwp=fail fltk:x64-uwp=fail -fluidsynth:x64-linux=fail fluidsynth:x64-osx=fail fmem:arm-uwp=fail fmem:x64-uwp=fail @@ -452,11 +449,8 @@ freetds:x64-uwp=fail freetype-gl:x64-uwp=fail freexl:arm-uwp=fail freexl:x64-uwp=fail -freexl:x64-windows=fail fribidi:arm64-windows=fail fribidi:arm-uwp=fail -fribidi:x64-linux=fail -fribidi:x64-osx=fail fribidi:x64-uwp=fail ftgl:x64-uwp=fail fuzzylite:arm-uwp=fail @@ -658,7 +652,6 @@ libcds:x64-uwp=fail libconfig:x64-osx=fail libcopp:arm64-windows=fail libcopp:arm-uwp=fail -libcopp:x64-windows-static=fail libcrafter:x86-windows=fail libcrafter:x64-windows=fail cpuid:arm-uwp=fail @@ -674,7 +667,6 @@ libdshowcapture:x64-osx=fail libdshowcapture:x64-uwp=fail libepoxy:arm64-windows=fail libepoxy:arm-uwp=fail -libepoxy:x64-osx=fail libepoxy:x64-uwp=fail libepoxy:x64-windows-static=fail libevent:arm-uwp=fail @@ -691,7 +683,6 @@ libfabric:arm-uwp=fail libfabric:x64-linux=fail libfabric:x64-osx=fail libfabric:x64-uwp=fail -libfabric:x64-windows=fail libfabric:x64-windows-static=fail libfreenect2:arm64-windows=fail libfreenect2:x64-linux=fail @@ -1094,11 +1085,6 @@ msmpi:x64-uwp=fail munit:arm-uwp=fail munit:arm64-windows=fail munit:x64-uwp=fail -# Though `vcpkg_configure_meson` and `vcpkg_install_meson` support -# `x64-linux` and `x64-osx` now, it still failed on these targets. -# See: https://github.com/microsoft/vcpkg/pull/6780 -munit:x64-linux=fail -munit:x64-osx=fail muparser:arm-uwp=fail muparser:x64-uwp=fail murmurhash:arm-uwp=fail @@ -1483,7 +1469,6 @@ readline-win32:x64-osx=fail readline-win32:x64-uwp=fail realsense2:arm64-windows=fail realsense2:arm-uwp=fail -realsense2:x64-linux=fail realsense2:x64-uwp=fail redis-plus-plus:x86-windows=fail redis-plus-plus:x64-windows=fail @@ -1597,8 +1582,15 @@ sockpp:arm-uwp=fail sockpp:x64-uwp=fail soem:x64-uwp=fail soem:arm-uwp=fail -soil:arm-uwp=fail -soil:x64-uwp=fail +# soil upstream is gone; if we do not have another source before 2021-03-01 we will remove the port +soil:arm-uwp=skip +soil:x64-uwp=skip +soil:arm64-windows=skip +soil:x64-windows=skip +soil:x86-windows=skip +soil:x64-windows-static=skip +soil:x64-linux=skip +soil:x64-osx=skip soil2:arm-uwp=fail soil2:x64-uwp=fail sophus:x64-linux=fail diff --git a/scripts/cmake/vcpkg_build_make.cmake b/scripts/cmake/vcpkg_build_make.cmake index 545e6d765..c957fc628 100644 --- a/scripts/cmake/vcpkg_build_make.cmake +++ b/scripts/cmake/vcpkg_build_make.cmake @@ -24,6 +24,9 @@ ## The target passed to the make build command (`./make <target>`). If not specified, the 'all' target will
## be passed.
##
+## ### DISABLE_PARALLEL
+## The underlying buildsystem will be instructed to not parallelize
+##
## ## Notes:
## This command should be preceeded by a call to [`vcpkg_configure_make()`](vcpkg_configure_make.md).
## You can use the alias [`vcpkg_install_make()`](vcpkg_configure_make.md) function if your CMake script supports the
@@ -36,7 +39,7 @@ ## * [freexl](https://github.com/Microsoft/vcpkg/blob/master/ports/freexl/portfile.cmake)
## * [libosip2](https://github.com/Microsoft/vcpkg/blob/master/ports/libosip2/portfile.cmake)
function(vcpkg_build_make)
- cmake_parse_arguments(_bc "ADD_BIN_TO_PATH;ENABLE_INSTALL" "LOGFILE_ROOT;BUILD_TARGET" "" ${ARGN})
+ cmake_parse_arguments(_bc "ADD_BIN_TO_PATH;ENABLE_INSTALL;DISABLE_PARALLEL" "LOGFILE_ROOT;BUILD_TARGET" "" ${ARGN})
if(NOT _bc_LOGFILE_ROOT)
set(_bc_LOGFILE_ROOT "build")
@@ -64,6 +67,7 @@ function(vcpkg_build_make) find_program(MAKE make REQUIRED)
set(MAKE_COMMAND "${MAKE}")
set(MAKE_OPTS ${_bc_MAKE_OPTIONS} -j ${VCPKG_CONCURRENCY} --trace -f Makefile ${_bc_BUILD_TARGET})
+ set(NO_PARALLEL_MAKE_OPTS ${_bc_MAKE_OPTIONS} -j 1 --trace -f Makefile ${_bc_BUILD_TARGET})
string(REPLACE " " "\\\ " _VCPKG_PACKAGE_PREFIX ${CURRENT_PACKAGES_DIR})
string(REGEX REPLACE "([a-zA-Z]):/" "/\\1/" _VCPKG_PACKAGE_PREFIX "${_VCPKG_PACKAGE_PREFIX}")
@@ -75,6 +79,7 @@ function(vcpkg_build_make) set(MAKE_COMMAND "${MAKE}")
# Set make command and install command
set(MAKE_OPTS ${_bc_MAKE_OPTIONS} V=1 -j ${VCPKG_CONCURRENCY} -f Makefile ${_bc_BUILD_TARGET})
+ set(NO_PARALLEL_MAKE_OPTS ${_bc_MAKE_OPTIONS} V=1 -j 1 -f Makefile ${_bc_BUILD_TARGET})
set(INSTALL_OPTS -j ${VCPKG_CONCURRENCY} install DESTDIR=${CURRENT_PACKAGES_DIR})
endif()
@@ -118,14 +123,25 @@ function(vcpkg_build_make) if(MAKE_BASH)
set(MAKE_CMD_LINE "${MAKE_COMMAND} ${MAKE_OPTS}")
+ set(NO_PARALLEL_MAKE_CMD_LINE "${MAKE_COMMAND} ${NO_PARALLEL_MAKE_OPTS}")
else()
set(MAKE_CMD_LINE ${MAKE_COMMAND} ${MAKE_OPTS})
+ set(NO_PARALLEL_MAKE_CMD_LINE ${MAKE_COMMAND} ${NO_PARALLEL_MAKE_OPTS})
endif()
+ if (_bc_DISABLE_PARALLEL)
+ vcpkg_execute_build_process(
+ COMMAND ${MAKE_BASH} ${MAKE_CMD_LINE}
+ WORKING_DIRECTORY "${WORKING_DIRECTORY}"
+ LOGNAME "${_bc_LOGFILE_ROOT}-${TARGET_TRIPLET}${SHORT_BUILDTYPE}"
+ )
+ else()
vcpkg_execute_build_process(
COMMAND ${MAKE_BASH} ${MAKE_CMD_LINE}
+ NO_PARALLEL_COMMAND ${MAKE_BASH} ${NO_PARALLEL_MAKE_CMD_LINE}
WORKING_DIRECTORY "${WORKING_DIRECTORY}"
LOGNAME "${_bc_LOGFILE_ROOT}-${TARGET_TRIPLET}${SHORT_BUILDTYPE}"
- )
+ )
+ endif()
if(_bc_ADD_BIN_TO_PATH)
set(ENV{PATH} "${_BACKUP_ENV_PATH}")
diff --git a/scripts/cmake/vcpkg_execute_build_process.cmake b/scripts/cmake/vcpkg_execute_build_process.cmake index 7097fbf1b..98e3648d5 100644 --- a/scripts/cmake/vcpkg_execute_build_process.cmake +++ b/scripts/cmake/vcpkg_execute_build_process.cmake @@ -65,6 +65,8 @@ function(vcpkg_execute_build_process) # The linker ran out of memory during execution. We will try continuing once more, with parallelism disabled. OR err_contents MATCHES "Cannot create parent directory" OR err_contents MATCHES "Cannot write file" # Multiple threads using the same directory at the same time cause conflicts, will try again. + OR err_contents MATCHES "Can't open" + # Multiple threads caused the wrong order of creating folders and creating files in folders ) message(STATUS "Restarting Build without parallelism because memory exceeded") set(LOG_OUT "${CURRENT_BUILDTREES_DIR}/${_ebp_LOGNAME}-out-1.log") |
