aboutsummaryrefslogtreecommitdiff
path: root/scripts
diff options
context:
space:
mode:
authorNancyLi1013 <lirui09@beyondsoft.com>2020-04-06 19:21:59 -0700
committerNancyLi1013 <lirui09@beyondsoft.com>2020-04-06 19:22:19 -0700
commit9cbb1bd46e0948374fe496195cca828e68a71f3c (patch)
treee65160aa6a3783966bba32283d1dd2a2eb05a41f /scripts
parent0f1294c61e51bba3c4257502852eecbe1a943a4b (diff)
parent6c4e822611324de4af9c8bb0ef8094e4a9b30a6e (diff)
downloadvcpkg-9cbb1bd46e0948374fe496195cca828e68a71f3c.tar.gz
vcpkg-9cbb1bd46e0948374fe496195cca828e68a71f3c.zip
Merge branch 'master' of https://github.com/Microsoft/vcpkg into dev/NancyLi/10611-fix-mosquitto
# Conflicts: # ports/libwebsockets/CONTROL
Diffstat (limited to 'scripts')
-rw-r--r--scripts/ci.baseline.txt18
-rw-r--r--scripts/cmake/vcpkg_configure_meson.cmake233
-rw-r--r--scripts/cmake/vcpkg_find_acquire_program.cmake2
-rw-r--r--scripts/cmake/vcpkg_from_git.cmake9
-rw-r--r--scripts/vcpkgTools.xml12
5 files changed, 195 insertions, 79 deletions
diff --git a/scripts/ci.baseline.txt b/scripts/ci.baseline.txt
index b3fbb8178..8074c76cf 100644
--- a/scripts/ci.baseline.txt
+++ b/scripts/ci.baseline.txt
@@ -63,14 +63,6 @@ ampl-mp:arm-uwp=fail
ampl-mp:x64-uwp=fail
angelscript:arm64-windows=fail
angelscript:arm-uwp=fail
-
-# Conflicts with qt5-base and ms-angle
-angle:arm64-windows = skip
-angle:arm-uwp = skip
-angle:x64-uwp = skip
-angle:x64-windows = skip
-angle:x64-windows-static = skip
-angle:x86-windows = skip
antlr4:arm64-windows=fail
antlr4:arm-uwp=fail
antlr4:x64-uwp=fail
@@ -606,8 +598,6 @@ hidapi:x64-uwp=fail
hiredis:arm-uwp=fail
hiredis:x64-uwp=fail
hpx:x64-windows-static=fail
-hunspell:x64-linux=fail
-hunspell:x64-osx=fail
hwloc:arm64-windows=fail
hwloc:arm-uwp=fail
hwloc:x64-linux=fail
@@ -751,7 +741,6 @@ libfabric:x64-linux=fail
libfabric:x64-osx=fail
libfabric:x64-uwp=fail
libfabric:x64-windows=ignore
-libffi:arm-uwp=fail
libfreenect2:arm64-windows=fail
libgd:x64-linux=ignore
libgit2:arm64-windows=fail
@@ -1137,8 +1126,8 @@ mpir:x64-uwp=fail
#Conflicts with angle and qt-5base
ms-angle:arm64-windows = skip
ms-angle:arm-uwp = skip
-ms-angle:x64-linux = fail
-ms-angle:x64-osx = fail
+ms-angle:x64-linux = skip
+ms-angle:x64-osx = skip
ms-angle:x64-uwp = skip
ms-angle:x64-windows = skip
ms-angle:x64-windows-static = skip
@@ -1313,7 +1302,6 @@ openvdb:x64-windows-static=fail
openvpn3:x64-osx=fail
openvr:arm64-windows=fail
openvr:arm-uwp=fail
-openvr:x64-linux=fail
openvr:x64-osx=fail
openvr:x64-uwp=fail
openxr-loader:arm64-windows=fail
@@ -1339,6 +1327,7 @@ osgearth:x64-osx=fail
osgearth:x64-linux=fail
osgearth:x64-windows-static=fail
osg-qt:x64-windows-static=fail
+osg-qt:x64-linux=ignore
otl:x64-windows=ignore
otl:x64-windows-static=ignore
otl:x64-uwp=ignore
@@ -1535,7 +1524,6 @@ redis-plus-plus:arm64-windows=fail
replxx:arm-uwp=fail
replxx:x64-uwp=fail
replxx:arm64-windows=fail
-replxx:x86-windows=fail
reproc:arm-uwp=fail
reproc:x64-uwp=fail
restbed:arm-uwp=fail
diff --git a/scripts/cmake/vcpkg_configure_meson.cmake b/scripts/cmake/vcpkg_configure_meson.cmake
index bbff5e9f6..2af64999e 100644
--- a/scripts/cmake/vcpkg_configure_meson.cmake
+++ b/scripts/cmake/vcpkg_configure_meson.cmake
@@ -38,83 +38,218 @@ function(vcpkg_configure_meson)
file(REMOVE_RECURSE ${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-rel)
file(REMOVE_RECURSE ${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-dbg)
-
- # use the same compiler options as in vcpkg_configure_cmake
- if(NOT VCPKG_TARGET_IS_WINDOWS)
- message(FATAL_ERROR "vcpkg_configure_meson() currently only supports windows targets.")
- endif()
- set(MESON_COMMON_CFLAGS "${MESON_COMMON_CFLAGS} /DWIN32 /D_WINDOWS /W3 /utf-8")
- set(MESON_COMMON_CXXFLAGS "${MESON_COMMON_CXXFLAGS} /DWIN32 /D_WINDOWS /W3 /utf-8 /GR /EHsc")
-
- if(DEFINED VCPKG_CRT_LINKAGE AND VCPKG_CRT_LINKAGE STREQUAL "dynamic")
- set(MESON_DEBUG_CFLAGS "${MESON_DEBUG_CFLAGS} /D_DEBUG /MDd /Z7 /Ob0 /Od /RTC1")
- set(MESON_DEBUG_CXXFLAGS "${MESON_DEBUG_CXXFLAGS} /D_DEBUG /MDd /Z7 /Ob0 /Od /RTC1")
-
- set(MESON_RELEASE_CFLAGS "${MESON_RELEASE_CFLAGS} /MD /O2 /Gy /DNDEBUG /Z7")
- set(MESON_RELEASE_CXXFLAGS "${MESON_RELEASE_CXXFLAGS} /MD /O2 /Gy /DNDEBUG /Z7")
- elseif(DEFINED VCPKG_CRT_LINKAGE AND VCPKG_CRT_LINKAGE STREQUAL "static")
- set(MESON_DEBUG_CFLAGS "${MESON_DEBUG_CFLAGS} /D_DEBUG /MTd /Z7 /Ob0 /Od /RTC1")
- set(MESON_DEBUG_CXXFLAGS "${MESON_DEBUG_CXXFLAGS} /D_DEBUG /MTd /Z7 /Ob0 /Od /RTC1")
-
- set(MESON_RELEASE_CFLAGS "${MESON_RELEASE_CFLAGS} /MT /O2 /Gy /DNDEBUG /Z7")
- set(MESON_RELEASE_CXXFLAGS "${MESON_RELEASE_CXXFLAGS} /MT /O2 /Gy /DNDEBUG /Z7")
+
+ #Extract compiler flags
+ if(NOT VCPKG_CHAINLOAD_TOOLCHAIN_FILE)
+ set(MESON_CMAKE_FLAG_SUFFIX "_INIT")
+ if(VCPKG_TARGET_IS_WINDOWS AND NOT VCPKG_TARGET_IS_MINGW)
+ set(VCPKG_CHAINLOAD_TOOLCHAIN_FILE "${SCRIPTS}/toolchains/windows.cmake")
+ set(MESON_CMAKE_FLAG_SUFFIX "")
+ elseif(VCPKG_TARGET_IS_LINUX)
+ set(VCPKG_CHAINLOAD_TOOLCHAIN_FILE "${SCRIPTS}/toolchains/linux.cmake")
+ elseif(VCPKG_TARGET_IS_ANDROID)
+ set(VCPKG_CHAINLOAD_TOOLCHAIN_FILE "${SCRIPTS}/toolchains/android.cmake")
+ elseif(VCPKG_TARGET_IS_OSX)
+ set(VCPKG_CHAINLOAD_TOOLCHAIN_FILE "${SCRIPTS}/toolchains/osx.cmake")
+ elseif(VVCPKG_TARGET_IS_FREEBSD)
+ set(VCPKG_CHAINLOAD_TOOLCHAIN_FILE "${SCRIPTS}/toolchains/freebsd.cmake")
+ elseif(VCPKG_TARGET_IS_MINGW)
+ set(VCPKG_CHAINLOAD_TOOLCHAIN_FILE "${SCRIPTS}/toolchains/mingw.cmake")
+ endif()
endif()
+
+ include("${VCPKG_CHAINLOAD_TOOLCHAIN_FILE}")
- set(MESON_COMMON_LDFLAGS "${MESON_COMMON_LDFLAGS} /DEBUG")
- set(MESON_RELEASE_LDFLAGS "${MESON_RELEASE_LDFLAGS} /INCREMENTAL:NO /OPT:REF /OPT:ICF")
+ string(APPEND MESON_COMMON_CFLAGS " ${CMAKE_C_FLAGS${MESON_CMAKE_FLAG_SUFFIX}}")
+ string(APPEND MESON_COMMON_CXXFLAGS " ${CMAKE_CXX_FLAGS${MESON_CMAKE_FLAG_SUFFIX}}")
+
+ string(APPEND MESON_DEBUG_CFLAGS " ${CMAKE_C_FLAGS_DEBUG${MESON_CMAKE_FLAG_SUFFIX}}")
+ string(APPEND MESON_DEBUG_CXXFLAGS " ${CMAKE_CXX_FLAGS_DEBUG${MESON_CMAKE_FLAG_SUFFIX}}")
+
+ string(APPEND MESON_RELEASE_CFLAGS " ${CMAKE_C_FLAGS_RELEASE${MESON_CMAKE_FLAG_SUFFIX}}")
+ string(APPEND MESON_RELEASE_CXXFLAGS " ${CMAKE_CXX_FLAGS_RELEASE${MESON_CMAKE_FLAG_SUFFIX}}")
+
+ string(APPEND MESON_COMMON_LDFLAGS " ${CMAKE_SHARED_LINKER_FLAGS${MESON_CMAKE_FLAG_SUFFIX}}")
+ string(APPEND MESON_DEBUG_LDFLAGS " ${CMAKE_SHARED_LINKER_FLAGS_DEBUG${MESON_CMAKE_FLAG_SUFFIX}}")
+ string(APPEND MESON_RELEASE_LDFLAGS " ${CMAKE_SHARED_LINKER_FLAGS_RELEASE${MESON_CMAKE_FLAG_SUFFIX}}")
# select meson cmd-line options
- list(APPEND _vcm_OPTIONS -Dcmake_prefix_path=${CURRENT_INSTALLED_DIR})
+ if(VCPKG_TARGET_IS_WINDOWS)
+ list(APPEND _vcm_OPTIONS "-Dcmake_prefix_path=['${CURRENT_INSTALLED_DIR}','${CURRENT_INSTALLED_DIR}/share']")
+ else()
+ list(APPEND _vcm_OPTIONS "-Dcmake_prefix_path=['${CURRENT_INSTALLED_DIR}']")
+ endif()
list(APPEND _vcm_OPTIONS --buildtype plain --backend ninja --wrap-mode nodownload)
+
if(VCPKG_LIBRARY_LINKAGE STREQUAL "dynamic")
list(APPEND _vcm_OPTIONS --default-library shared)
else()
list(APPEND _vcm_OPTIONS --default-library static)
endif()
+ list(APPEND _vcm_OPTIONS --libdir lib) # else meson install into an architecture describing folder
list(APPEND _vcm_OPTIONS_DEBUG --prefix ${CURRENT_PACKAGES_DIR}/debug --includedir ../include)
list(APPEND _vcm_OPTIONS_RELEASE --prefix ${CURRENT_PACKAGES_DIR})
vcpkg_find_acquire_program(MESON)
+
+ get_filename_component(CMAKE_PATH ${CMAKE_COMMAND} DIRECTORY)
+ vcpkg_add_to_path("${CMAKE_PATH}") # Make CMake invokeable for Meson
+
vcpkg_find_acquire_program(NINJA)
get_filename_component(NINJA_PATH ${NINJA} DIRECTORY)
- if(CMAKE_HOST_WIN32)
- set(_PATHSEP ";")
+ vcpkg_add_to_path("${NINJA_PATH}")
+
+ if(NOT ENV{PKG_CONFIG})
+ find_program(PKGCONFIG pkg-config)
+ if(NOT PKGCONFIG AND CMAKE_HOST_WIN32)
+ vcpkg_acquire_msys(MSYS_ROOT PACKAGES pkg-config)
+ vcpkg_add_to_path("${MSYS_ROOT}/usr/bin")
+ endif()
+ find_program(PKGCONFIG pkg-config REQUIRED)
else()
- set(_PATHSEP ":")
+ debug_message(STATUS "PKG_CONFIG found in ENV! Using $ENV{PKG_CONFIG}")
+ set(PKGCONFIG $ENV{PKG_CONFIG})
+ endif()
+ set(PKGCONFIG_SHARE_DIR "${CURRENT_INSTALLED_DIR}/share/pkgconfig/")
+ if(WIN32)
+ string(REGEX REPLACE "([a-zA-Z]):/" "/\\1/" PKGCONFIG_SHARE_DIR "${PKGCONFIG_SHARE_DIR}")
endif()
- set(ENV{PATH} "$ENV{PATH}${_PATHSEP}${NINJA_PATH}")
+ # configure debug
+ if(NOT DEFINED VCPKG_BUILD_TYPE OR VCPKG_BUILD_TYPE STREQUAL "debug")
+ message(STATUS "Configuring ${TARGET_TRIPLET}-dbg")
+ file(MAKE_DIRECTORY ${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-dbg)
+
+ #setting up PKGCONFIG
+ if(NOT PKGCONFIG MATCHES "--define-variable=prefix")
+ set(PKGCONFIG_PREFIX "${CURRENT_INSTALLED_DIR}/debug")
+ # if(WIN32)
+ # string(REGEX REPLACE "([a-zA-Z]):/" "/\\1/" PKGCONFIG_PREFIX "${PKGCONFIG_PREFIX}")
+ # endif()
+ set(ENV{PKG_CONFIG} "${PKGCONFIG} --define-variable=prefix=${PKGCONFIG_PREFIX}")
+ endif()
+ set(PKGCONFIG_INSTALLED_DIR "${CURRENT_INSTALLED_DIR}/debug/lib/pkgconfig/")
+ if(WIN32)
+ string(REGEX REPLACE "([a-zA-Z]):/" "/\\1/" PKGCONFIG_INSTALLED_DIR "${PKGCONFIG_INSTALLED_DIR}")
+ endif()
+ if(ENV{PKG_CONFIG_PATH})
+ set(BACKUP_ENV_PKG_CONFIG_PATH_DEBUG $ENV{PKG_CONFIG_PATH})
+ set(ENV{PKG_CONFIG_PATH} "${PKGCONFIG_INSTALLED_DIR}: ${PKGCONFIG_SHARE_DIR}: $ENV{PKG_CONFIG_PATH}")
+ else()
+ set(ENV{PKG_CONFIG_PATH} "${PKGCONFIG_INSTALLED_DIR}: ${PKGCONFIG_SHARE_DIR}")
+ endif()
+
+ set(CFLAGS "-Dc_args=[${MESON_COMMON_CFLAGS} ${MESON_DEBUG_CFLAGS}]")
+ string(REGEX REPLACE " +(/|-)" "','\\1" CFLAGS ${CFLAGS}) # Seperate compiler arguments with comma and enclose in '
+ string(REGEX REPLACE " *\\\]" "']" CFLAGS ${CFLAGS}) # Add trailing ' at end
+ string(REGEX REPLACE "\\\['," "[" CFLAGS ${CFLAGS}) # Remove prepended ', introduced in #1
+ string(REGEX REPLACE "\\\['\\\]" "[]" CFLAGS ${CFLAGS}) # Remove trailing ' introduced in #2 if no elements
+
+ set(CXXFLAGS "-Dcpp_args=[${MESON_COMMON_CXXFLAGS} ${MESON_DEBUG_CXXFLAGS}]")
+ string(REGEX REPLACE " +(/|-)" "','\\1" CXXFLAGS ${CXXFLAGS})
+ string(REGEX REPLACE " *\\\]" "']" CXXFLAGS ${CXXFLAGS})
+ string(REGEX REPLACE "\\\['," "[" CXXFLAGS ${CXXFLAGS})
+ string(REGEX REPLACE "\\\['\\\]" "[]" CXXFLAGS ${CXXFLAGS})
+ set(LDFLAGS "[${MESON_COMMON_LDFLAGS} ${MESON_DEBUG_LDFLAGS}]")
+ string(REGEX REPLACE " +(/|-)" "','\\1" LDFLAGS ${LDFLAGS})
+ string(REGEX REPLACE " *\\\]" "']" LDFLAGS ${LDFLAGS})
+ string(REGEX REPLACE "\\\['," "[" LDFLAGS ${LDFLAGS})
+ string(REGEX REPLACE "\\\['\\\]" "[]" LDFLAGS ${LDFLAGS})
+ set(CLDFLAGS "-Dc_link_args=${LDFLAGS}")
+ set(CXXLDFLAGS "-Dcpp_link_args=${LDFLAGS}")
+ vcpkg_execute_required_process(
+ COMMAND ${MESON} ${_vcm_OPTIONS} ${_vcm_OPTIONS_DEBUG} ${_vcm_SOURCE_PATH} ${CFLAGS} ${CXXFLAGS} ${CLDFLAGS} ${CXXLDFLAGS}
+ WORKING_DIRECTORY ${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-dbg
+ LOGNAME config-${TARGET_TRIPLET}-dbg
+ )
+
+ #Copy meson log files into buildtree for CI
+ if(EXISTS "${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-dbg/meson-logs/meson-log.txt")
+ file(COPY "${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-dbg/meson-logs/meson-log.txt" DESTINATION "${CURRENT_BUILDTREES_DIR}")
+ file(RENAME "${CURRENT_BUILDTREES_DIR}/meson-log.txt" "${CURRENT_BUILDTREES_DIR}/meson-log-dbg.txt")
+ endif()
+ if(EXISTS "${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-dbg/meson-logs/install-log.txt")
+ file(COPY "${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-dbg/meson-logs/install-log.txt" DESTINATION "${CURRENT_BUILDTREES_DIR}")
+ file(RENAME "${CURRENT_BUILDTREES_DIR}/install-log.txt" "${CURRENT_BUILDTREES_DIR}/install-log-dbg.txt")
+ endif()
+ message(STATUS "Configuring ${TARGET_TRIPLET}-dbg done")
+
+ #Restore PKG_CONFIG_PATH
+ if(BACKUP_ENV_PKG_CONFIG_PATH_DEBUG)
+ set(ENV{PKG_CONFIG_PATH} "${BACKUP_ENV_PKG_CONFIG_PATH_DEBUG}")
+ unset(BACKUP_ENV_PKG_CONFIG_PATH_DEBUG)
+ else()
+ unset(ENV{PKG_CONFIG_PATH})
+ endif()
+ endif()
+
# configure release
if(NOT DEFINED VCPKG_BUILD_TYPE OR VCPKG_BUILD_TYPE STREQUAL "release")
message(STATUS "Configuring ${TARGET_TRIPLET}-rel")
- file(MAKE_DIRECTORY ${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-rel)
- set(ENV{CFLAGS} "${MESON_COMMON_CFLAGS} ${MESON_RELEASE_CFLAGS}")
- set(ENV{CXXFLAGS} "${MESON_COMMON_CXXFLAGS} ${MESON_RELEASE_CXXFLAGS}")
- set(ENV{LDFLAGS} "${MESON_COMMON_LDFLAGS} ${MESON_RELEASE_LDFLAGS}")
- set(ENV{CPPFLAGS} "${MESON_COMMON_CPPFLAGS} ${MESON_RELEASE_CPPFLAGS}")
+ file(MAKE_DIRECTORY ${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-rel)
+ #setting up PKGCONFIG
+ if(NOT PKGCONFIG MATCHES "--define-variable=prefix")
+ set(PKGCONFIG_PREFIX "${CURRENT_INSTALLED_DIR}")
+ # if(WIN32)
+ # string(REGEX REPLACE "([a-zA-Z]):/" "/\\1/" PKGCONFIG_PREFIX "${PKGCONFIG_PREFIX}")
+ # endif()
+ set(ENV{PKG_CONFIG} "${PKGCONFIG} --define-variable=prefix=${PKGCONFIG_PREFIX}")
+ endif()
+ set(PKGCONFIG_INSTALLED_DIR "${CURRENT_INSTALLED_DIR}/lib/pkgconfig/")
+ if(WIN32)
+ string(REGEX REPLACE "([a-zA-Z]):/" "/\\1/" PKGCONFIG_INSTALLED_DIR "${PKGCONFIG_INSTALLED_DIR}")
+ endif()
+ if(ENV{PKG_CONFIG_PATH})
+ set(BACKUP_ENV_PKG_CONFIG_PATH_RELEASE $ENV{PKG_CONFIG_PATH})
+ set(ENV{PKG_CONFIG_PATH} "${PKGCONFIG_INSTALLED_DIR}: ${PKGCONFIG_SHARE_DIR}: $ENV{PKG_CONFIG_PATH}")
+ else()
+ set(ENV{PKG_CONFIG_PATH} "${PKGCONFIG_INSTALLED_DIR}: ${PKGCONFIG_SHARE_DIR}")
+ endif()
+
+ # Normalize flags for meson (i.e. " /string /with /flags " -> ['/string', '/with', '/flags'])
+ set(CFLAGS "-Dc_args=[${MESON_COMMON_CFLAGS} ${MESON_RELEASE_CFLAGS}]")
+ string(REGEX REPLACE " +(/|-)" "','\\1" CFLAGS ${CFLAGS}) # Seperate compiler arguments with comma and enclose in '
+ string(REGEX REPLACE " *\\\]" "']" CFLAGS ${CFLAGS}) # Add trailing ' at end
+ string(REGEX REPLACE "\\\['," "[" CFLAGS ${CFLAGS}) # Remove prepended ', introduced in #1
+ string(REGEX REPLACE "\\\['\\\]" "[]" CFLAGS ${CFLAGS}) # Remove trailing ' introduced in #2 if no elements
+ set(CXXFLAGS "-Dcpp_args=[${MESON_COMMON_CXXFLAGS} ${MESON_RELEASE_CXXFLAGS}]")
+ string(REGEX REPLACE " +(/|-)" "','\\1" CXXFLAGS ${CXXFLAGS})
+ string(REGEX REPLACE " *\\\]" "']" CXXFLAGS ${CXXFLAGS})
+ string(REGEX REPLACE "\\\['," "[" CXXFLAGS ${CXXFLAGS})
+ string(REGEX REPLACE "\\\['\\\]" "[]" CXXFLAGS ${CXXFLAGS})
+ set(LDFLAGS "[${MESON_COMMON_LDFLAGS} ${MESON_RELEASE_LDFLAGS}]")
+ string(REGEX REPLACE " +(/|-)" "','\\1" LDFLAGS ${LDFLAGS})
+ string(REGEX REPLACE " *\\\]" "']" LDFLAGS ${LDFLAGS})
+ string(REGEX REPLACE "\\\['," "[" LDFLAGS ${LDFLAGS})
+ string(REGEX REPLACE "\\\['\\\]" "[]" LDFLAGS ${LDFLAGS})
+ set(CLDFLAGS "-Dc_link_args=${LDFLAGS}")
+ set(CXXLDFLAGS "-Dcpp_link_args=${LDFLAGS}")
+
vcpkg_execute_required_process(
- COMMAND ${MESON} ${_vcm_OPTIONS} ${_vcm_OPTIONS_RELEASE} ${_vcm_SOURCE_PATH}
+ COMMAND ${MESON} ${_vcm_OPTIONS} ${_vcm_OPTIONS_RELEASE} ${_vcm_SOURCE_PATH} ${CFLAGS} ${CXXFLAGS} ${CLDFLAGS} ${CXXLDFLAGS}
WORKING_DIRECTORY ${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-rel
LOGNAME config-${TARGET_TRIPLET}-rel
)
+ #Copy meson log files into buildtree for CI
+ if(EXISTS "${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-rel/meson-logs/meson-log.txt")
+ file(COPY "${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-rel/meson-logs/meson-log.txt" DESTINATION "${CURRENT_BUILDTREES_DIR}")
+ file(RENAME "${CURRENT_BUILDTREES_DIR}/meson-log.txt" "${CURRENT_BUILDTREES_DIR}/meson-log-rel.txt")
+ endif()
+ if(EXISTS "${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-rel/meson-logs/install-log.txt")
+ file(COPY "${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-rel/meson-logs/install-log.txt" DESTINATION "${CURRENT_BUILDTREES_DIR}")
+ file(RENAME "${CURRENT_BUILDTREES_DIR}/install-log.txt" "${CURRENT_BUILDTREES_DIR}/install-log-rel.txt")
+ endif()
message(STATUS "Configuring ${TARGET_TRIPLET}-rel done")
- endif()
-
- if(NOT DEFINED VCPKG_BUILD_TYPE OR VCPKG_BUILD_TYPE STREQUAL "debug")
- # configure debug
- message(STATUS "Configuring ${TARGET_TRIPLET}-dbg")
- file(MAKE_DIRECTORY ${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-dbg)
- set(ENV{CFLAGS} "${MESON_COMMON_CFLAGS} ${MESON_DEBUG_CFLAGS}")
- set(ENV{CXXFLAGS} "${MESON_COMMON_CXXFLAGS} ${MESON_DEBUG_CXXFLAGS}")
- set(ENV{LDFLAGS} "${MESON_COMMON_LDFLAGS} ${MESON_DEBUG_LDFLAGS}")
- set(ENV{CPPFLAGS} "${MESON_COMMON_CPPFLAGS} ${MESON_DEBUG_CPPFLAGS}")
- vcpkg_execute_required_process(
- COMMAND ${MESON} ${_vcm_OPTIONS} ${_vcm_OPTIONS_DEBUG} ${_vcm_SOURCE_PATH}
- WORKING_DIRECTORY ${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-dbg
- LOGNAME config-${TARGET_TRIPLET}-dbg
- )
- message(STATUS "Configuring ${TARGET_TRIPLET}-dbg done")
+
+ #Restore PKG_CONFIG_PATH
+ if(BACKUP_ENV_PKG_CONFIG_PATH_RELEASE)
+ set(ENV{PKG_CONFIG_PATH} "${BACKUP_ENV_PKG_CONFIG_PATH_RELEASE}")
+ unset(BACKUP_ENV_PKG_CONFIG_PATH_RELEASE)
+ else()
+ unset(ENV{PKG_CONFIG_PATH})
+ endif()
+
endif()
endfunction()
diff --git a/scripts/cmake/vcpkg_find_acquire_program.cmake b/scripts/cmake/vcpkg_find_acquire_program.cmake
index ed5e010e0..1acb8f749 100644
--- a/scripts/cmake/vcpkg_find_acquire_program.cmake
+++ b/scripts/cmake/vcpkg_find_acquire_program.cmake
@@ -187,7 +187,7 @@ function(vcpkg_find_acquire_program VAR)
set(BREW_PACKAGE_NAME "ninja")
set(APT_PACKAGE_NAME "ninja-build")
set(URL "https://github.com/ninja-build/ninja/releases/download/v1.8.2/ninja-win.zip")
- set(ARCHIVE "ninja-1.8.2-win.zip")
+ set(ARCHIVE "ninja-win-1.8.2.zip")
set(HASH 9b9ce248240665fcd6404b989f3b3c27ed9682838225e6dc9b67b551774f251e4ff8a207504f941e7c811e7a8be1945e7bcb94472a335ef15e23a0200a32e6d5)
elseif(VAR MATCHES "NUGET")
set(PROGNAME nuget)
diff --git a/scripts/cmake/vcpkg_from_git.cmake b/scripts/cmake/vcpkg_from_git.cmake
index bad5384ca..f114f6fc6 100644
--- a/scripts/cmake/vcpkg_from_git.cmake
+++ b/scripts/cmake/vcpkg_from_git.cmake
@@ -19,7 +19,7 @@
## This should be set to `SOURCE_PATH` by convention.
##
## ### URL
-## The url of the git repository. Must start with `https`.
+## The url of the git repository.
##
## ### REF
## The git sha of the commit to download.
@@ -49,13 +49,6 @@ function(vcpkg_from_git)
message(FATAL_ERROR "The git url must be specified")
endif()
- if( NOT _vdud_URL MATCHES "^https:")
- # vcpkg_from_git does not support a SHA256 parameter because hashing the git archive is
- # not stable across all supported platforms. The tradeoff is to require https to download
- # and the ref to be the git sha (i.e. not things that can change like a label)
- message(FATAL_ERROR "The git url must be https")
- endif()
-
if(NOT DEFINED _vdud_REF)
message(FATAL_ERROR "The git ref must be specified.")
endif()
diff --git a/scripts/vcpkgTools.xml b/scripts/vcpkgTools.xml
index 01073fdbb..5ac380279 100644
--- a/scripts/vcpkgTools.xml
+++ b/scripts/vcpkgTools.xml
@@ -60,10 +60,10 @@
<sha512>f477842d0cebefcd6bf9c6d536ab8ea20ec5b0aa967ee963ab6a101aeff9df8742ca600d35f39e2e7158d76d8231f1ed2bef6104dce84d2bf8d6b07d17d706a1</sha512>
</tool>
<tool name="nuget" os="windows">
- <version>4.6.2</version>
+ <version>4.8.1</version>
<exeRelativePath>nuget.exe</exeRelativePath>
- <url>https://dist.nuget.org/win-x86-commandline/v4.6.2/nuget.exe</url>
- <sha512>60daea7bec2de23089f7ad73985dd788ac154171d6326c2c456726849b8f97dfc38cbdd9b9bf8d96aced009ccaaed317905b65c108e149cfbbbcdfb95f8f0519</sha512>
+ <url>https://dist.nuget.org/win-x86-commandline/v4.8.1/nuget.exe</url>
+ <sha512>42cb744338af8decc033a75bce5b4c4df28e102bafc45f9a8ba86d7bc010f5b43ebacae80d7b28c4f85ac900eefc2a349620ae65f27f6ca1c21c53b63b92924b</sha512>
</tool>
<tool name="installerbase" os="windows">
<version>3.1.81</version>
@@ -81,9 +81,9 @@
</tool>
<tool name="aria2" os="windows">
<version>18.01.0</version>
- <exeRelativePath>aria2-1.33.1-win-32bit-build1\aria2c.exe</exeRelativePath>
- <url>https://github.com/aria2/aria2/releases/download/release-1.33.1/aria2-1.33.1-win-32bit-build1.zip</url>
- <sha512>2456176ba3d506a07cf0cc4f61f080e1ff8cb4106426d66f354c5bb67a9a8720b5ddb26904275e61b1f623c932355f7dcde4cd17556cc895f11293c23c3a9bf3</sha512>
+ <exeRelativePath>aria2-1.34.0-win-32bit-build1\aria2c.exe</exeRelativePath>
+ <url>https://github.com/aria2/aria2/releases/download/release-1.34.0/aria2-1.34.0-win-32bit-build1.zip</url>
+ <sha512>2a5480d503ac6e8203040c7e516a3395028520da05d0ebf3a2d56d5d24ba5d17630e8f318dd4e3cc2094cc4668b90108fb58e8b986b1ffebd429995058063c27</sha512>
<archiveName>aria2-1.33.1-win-32bit-build1.zip</archiveName>
</tool>
<tool name="ninja" os="windows">