mirror of
https://github.com/cemu-project/vcpkg.git
synced 2025-02-23 02:57:09 +01:00
[vcpkg] improve port depend hash used in CI build
also fixed a few unstable ports that somtimes fail in CI tests
This commit is contained in:
parent
86f15d6daf
commit
61e2cac730
@ -18,6 +18,7 @@ endif()
|
|||||||
vcpkg_configure_cmake(
|
vcpkg_configure_cmake(
|
||||||
SOURCE_PATH ${SOURCE_PATH}
|
SOURCE_PATH ${SOURCE_PATH}
|
||||||
PREFER_NINJA
|
PREFER_NINJA
|
||||||
|
DISABLE_PARALLEL_CONFIGURE
|
||||||
OPTIONS -DJSONCPP_WITH_CMAKE_PACKAGE:BOOL=ON
|
OPTIONS -DJSONCPP_WITH_CMAKE_PACKAGE:BOOL=ON
|
||||||
-DBUILD_STATIC_LIBS:BOOL=${JSONCPP_STATIC}
|
-DBUILD_STATIC_LIBS:BOOL=${JSONCPP_STATIC}
|
||||||
-DBUILD_SHARED_LIBS:BOOL=${JSONCPP_DYNAMIC}
|
-DBUILD_SHARED_LIBS:BOOL=${JSONCPP_DYNAMIC}
|
||||||
|
@ -13,6 +13,7 @@ vcpkg_from_github(
|
|||||||
vcpkg_configure_cmake(
|
vcpkg_configure_cmake(
|
||||||
SOURCE_PATH ${SOURCE_PATH}
|
SOURCE_PATH ${SOURCE_PATH}
|
||||||
PREFER_NINJA
|
PREFER_NINJA
|
||||||
|
DISABLE_PARALLEL_CONFIGURE
|
||||||
OPTIONS
|
OPTIONS
|
||||||
-DUSES_RAPIDJSON=OFF
|
-DUSES_RAPIDJSON=OFF
|
||||||
-DUSES_RAPIDXML=OFF
|
-DUSES_RAPIDXML=OFF
|
||||||
|
@ -1,3 +1,4 @@
|
|||||||
Source: qt5-script
|
Source: qt5-script
|
||||||
Version: 5.12.0
|
Version: 5.12.0
|
||||||
|
Build-Depends: qt5-base, qt5-modularscripts
|
||||||
Description:Qt5 Script Module.
|
Description:Qt5 Script Module.
|
||||||
|
@ -1,29 +1,16 @@
|
|||||||
diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
|
diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
|
||||||
index 02dfb83..35e01f8 100644
|
index 02dfb83..030a0b5 100644
|
||||||
--- a/src/CMakeLists.txt
|
--- a/src/CMakeLists.txt
|
||||||
+++ b/src/CMakeLists.txt
|
+++ b/src/CMakeLists.txt
|
||||||
@@ -387,6 +387,9 @@ elseif(CMAKE_CXX_COMPILER_ID MATCHES "MSVC")
|
@@ -386,11 +386,9 @@ elseif(CMAKE_CXX_COMPILER_ID MATCHES "MSVC")
|
||||||
|
|
||||||
# TINYSPLINE_LIBRARY_C_FLAGS
|
# TINYSPLINE_LIBRARY_C_FLAGS
|
||||||
set(TINYSPLINE_LIBRARY_C_FLAGS "${TINYSPLINE_LIBRARY_C_FLAGS} /Wall")
|
set(TINYSPLINE_LIBRARY_C_FLAGS "${TINYSPLINE_LIBRARY_C_FLAGS} /Wall")
|
||||||
set(TINYSPLINE_LIBRARY_C_FLAGS "${TINYSPLINE_LIBRARY_C_FLAGS} /WX")
|
- set(TINYSPLINE_LIBRARY_C_FLAGS "${TINYSPLINE_LIBRARY_C_FLAGS} /WX")
|
||||||
+ set(TINYSPLINE_LIBRARY_C_FLAGS "${TINYSPLINE_LIBRARY_C_FLAGS} /wd4820")
|
|
||||||
+ set(TINYSPLINE_LIBRARY_C_FLAGS "${TINYSPLINE_LIBRARY_C_FLAGS} /wd5045")
|
|
||||||
+ set(TINYSPLINE_LIBRARY_C_FLAGS "${TINYSPLINE_LIBRARY_C_FLAGS} /wd4711")
|
|
||||||
|
|
||||||
# TINYSPLINE_LIBRARY_CXX_FLAGS
|
# TINYSPLINE_LIBRARY_CXX_FLAGS
|
||||||
set(TINYSPLINE_LIBRARY_CXX_FLAGS "${TINYSPLINE_LIBRARY_CXX_FLAGS} /Wall")
|
set(TINYSPLINE_LIBRARY_CXX_FLAGS "${TINYSPLINE_LIBRARY_CXX_FLAGS} /Wall")
|
||||||
@@ -395,6 +398,14 @@ elseif(CMAKE_CXX_COMPILER_ID MATCHES "MSVC")
|
- set(TINYSPLINE_LIBRARY_CXX_FLAGS "${TINYSPLINE_LIBRARY_CXX_FLAGS} /WX")
|
||||||
|
set(TINYSPLINE_LIBRARY_CXX_FLAGS "${TINYSPLINE_LIBRARY_CXX_FLAGS} /wd4514")
|
||||||
set(TINYSPLINE_LIBRARY_CXX_FLAGS "${TINYSPLINE_LIBRARY_CXX_FLAGS} /wd4710")
|
set(TINYSPLINE_LIBRARY_CXX_FLAGS "${TINYSPLINE_LIBRARY_CXX_FLAGS} /wd4710")
|
||||||
set(TINYSPLINE_LIBRARY_CXX_FLAGS "${TINYSPLINE_LIBRARY_CXX_FLAGS} /wd4350")
|
set(TINYSPLINE_LIBRARY_CXX_FLAGS "${TINYSPLINE_LIBRARY_CXX_FLAGS} /wd4350")
|
||||||
set(TINYSPLINE_LIBRARY_CXX_FLAGS "${TINYSPLINE_LIBRARY_CXX_FLAGS} /wd4820")
|
|
||||||
+ set(TINYSPLINE_LIBRARY_CXX_FLAGS "${TINYSPLINE_LIBRARY_CXX_FLAGS} /wd5045")
|
|
||||||
+ set(TINYSPLINE_LIBRARY_CXX_FLAGS "${TINYSPLINE_LIBRARY_CXX_FLAGS} /wd4571")
|
|
||||||
+ set(TINYSPLINE_LIBRARY_CXX_FLAGS "${TINYSPLINE_LIBRARY_CXX_FLAGS} /wd4625")
|
|
||||||
+ set(TINYSPLINE_LIBRARY_CXX_FLAGS "${TINYSPLINE_LIBRARY_CXX_FLAGS} /wd4626")
|
|
||||||
+ set(TINYSPLINE_LIBRARY_CXX_FLAGS "${TINYSPLINE_LIBRARY_CXX_FLAGS} /wd5026")
|
|
||||||
+ set(TINYSPLINE_LIBRARY_CXX_FLAGS "${TINYSPLINE_LIBRARY_CXX_FLAGS} /wd5027")
|
|
||||||
+ set(TINYSPLINE_LIBRARY_CXX_FLAGS "${TINYSPLINE_LIBRARY_CXX_FLAGS} /wd4774")
|
|
||||||
+ set(TINYSPLINE_LIBRARY_CXX_FLAGS "${TINYSPLINE_LIBRARY_CXX_FLAGS} /wd4711")
|
|
||||||
|
|
||||||
# TINYSPLINE_BINDING_CXX_FLAGS
|
|
||||||
set(TINYSPLINE_BINDING_CXX_FLAGS "${TINYSPLINE_BINDING_CXX_FLAGS} /w")
|
|
||||||
|
@ -13,6 +13,7 @@ vcpkg_from_github(
|
|||||||
vcpkg_configure_cmake(
|
vcpkg_configure_cmake(
|
||||||
SOURCE_PATH ${SOURCE_PATH}
|
SOURCE_PATH ${SOURCE_PATH}
|
||||||
PREFER_NINJA
|
PREFER_NINJA
|
||||||
|
DISABLE_PARALLEL_CONFIGURE
|
||||||
OPTIONS_RELEASE -DCXXBLAS_DEBUG=OFF
|
OPTIONS_RELEASE -DCXXBLAS_DEBUG=OFF
|
||||||
OPTIONS_DEBUG -DCXXBLAS_DEBUG=ON
|
OPTIONS_DEBUG -DCXXBLAS_DEBUG=ON
|
||||||
OPTIONS
|
OPTIONS
|
||||||
|
@ -473,10 +473,44 @@ namespace vcpkg::Build
|
|||||||
|
|
||||||
abi_tag_entries.emplace_back(AbiEntry{"cmake", paths.get_tool_version(Tools::CMAKE)});
|
abi_tag_entries.emplace_back(AbiEntry{"cmake", paths.get_tool_version(Tools::CMAKE)});
|
||||||
|
|
||||||
abi_tag_entries.emplace_back(
|
// If there is an unusually large number of files in the port then
|
||||||
AbiEntry{"portfile", vcpkg::Hash::get_file_hash(fs, config.port_dir / "portfile.cmake", "SHA1")});
|
// something suspicious is going on. Rather than hash all of them
|
||||||
abi_tag_entries.emplace_back(
|
// just mark the port as no-hash
|
||||||
AbiEntry{"control", vcpkg::Hash::get_file_hash(fs, config.port_dir / "CONTROL", "SHA1")});
|
const int max_port_file_count = 100;
|
||||||
|
|
||||||
|
// the order of recursive_directory_iterator is undefined so save the names to sort
|
||||||
|
std::vector<fs::path> port_files;
|
||||||
|
for (auto &port_file : fs::stdfs::recursive_directory_iterator(config.port_dir))
|
||||||
|
{
|
||||||
|
if (fs::is_regular_file(status(port_file)))
|
||||||
|
{
|
||||||
|
port_files.push_back(port_file);
|
||||||
|
if (port_files.size() > max_port_file_count)
|
||||||
|
{
|
||||||
|
abi_tag_entries.emplace_back(AbiEntry{ "no_hash_max_portfile", "" });
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if (port_files.size() <= max_port_file_count)
|
||||||
|
{
|
||||||
|
std::sort(port_files.begin(), port_files.end());
|
||||||
|
|
||||||
|
int counter = 0;
|
||||||
|
for (auto & port_file : port_files)
|
||||||
|
{
|
||||||
|
// When vcpkg takes a dependency on C++17 it can use fs::relative,
|
||||||
|
// which will give a stable ordering and better names in the key entry.
|
||||||
|
// this is not available in the filesystem TS so instead number the files for the key.
|
||||||
|
std::string key = Strings::format("file_%03d", counter++);
|
||||||
|
if (GlobalState::debugging)
|
||||||
|
{
|
||||||
|
System::println("[DEBUG] mapping %s from %s", key, port_file.string());
|
||||||
|
}
|
||||||
|
abi_tag_entries.emplace_back(AbiEntry{ key, vcpkg::Hash::get_file_hash(fs, port_file, "SHA1") });
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
abi_tag_entries.emplace_back(AbiEntry{"vcpkg_fixup_cmake_targets", "1"});
|
abi_tag_entries.emplace_back(AbiEntry{"vcpkg_fixup_cmake_targets", "1"});
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user