[gn] Update gn to 2024-02-22 (#36770)

<!-- If your PR fixes issues, please note that here by adding "Fixes
#NNNNNN." for each fixed issue on separate lines. -->
Fixes #28358 

By updating gn, we can remove a temporary fix in `vcpkg-gn`
`z_vcpkg_gn_fixup_path` that fixed by:
https://gn-review.googlesource.com/c/gn/+/16620

I also add long path support to gn, to fix a issue when generating vs
solution with long file path:
https://gn-review.googlesource.com/c/gn/+/16600

- [x] Changes comply with the [maintainer
guide](https://github.com/microsoft/vcpkg-docs/blob/main/vcpkg/contributing/maintainer-guide.md).
- [x] SHA512s are updated for each updated download.
- [x] The "supports" clause reflects platforms that may be fixed by this
new version.
- [x] Any fixed [CI
baseline](https://github.com/microsoft/vcpkg/blob/master/scripts/ci.baseline.txt)
entries are removed from that file.
- [x] Any patches that are no longer applied are deleted from the port's
directory.
- [x] The version database is fixed by rerunning `./vcpkg x-add-version
--all` and committing the result.
- [x] Only one version is added to each modified port's versions file.

Time to let the world rebuild everything :) 
(Actually not, there ain't much ports builds with gn)
This commit is contained in:
reito 2024-03-09 04:37:56 +08:00 committed by GitHub
parent db19a19ba8
commit 0719a71389
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
10 changed files with 29 additions and 80 deletions

View File

@ -8,5 +8,4 @@ file(INSTALL
"${CMAKE_CURRENT_LIST_DIR}/vcpkg-port-config.cmake"
"${CMAKE_CURRENT_LIST_DIR}/vcpkg_gn_configure.cmake"
"${CMAKE_CURRENT_LIST_DIR}/vcpkg_gn_install.cmake"
"${CMAKE_CURRENT_LIST_DIR}/z_vcpkg_gn_fixup_path.cmake"
DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}")

View File

@ -1,3 +1,2 @@
include("${CMAKE_CURRENT_LIST_DIR}/vcpkg_gn_configure.cmake")
include("${CMAKE_CURRENT_LIST_DIR}/vcpkg_gn_install.cmake")
include("${CMAKE_CURRENT_LIST_DIR}/z_vcpkg_gn_fixup_path.cmake")

View File

@ -1,9 +1,8 @@
{
"name": "vcpkg-gn",
"version-date": "2021-11-16",
"port-version": 3,
"description": "https://gn.googlesource.com/gn/+/4aa9bdfa05b688c58d3d7d3e496f3f18cbb3d89e",
"documentation": "https://vcpkg.io/en/docs/README.html",
"version-date": "2024-02-22",
"description": "GN is a meta-build system that generates build files for Ninja (GN is the build system for Chromium, Fuchsia, and related projects)",
"documentation": "https://gn.googlesource.com/gn/+/main/docs/reference.md",
"license": "MIT",
"supports": "native",
"dependencies": [

View File

@ -1,5 +1,4 @@
include_guard(GLOBAL)
include("${CMAKE_CURRENT_LIST_DIR}/z_vcpkg_gn_fixup_path.cmake")
function(z_vcpkg_gn_configure_generate)
cmake_parse_arguments(PARSE_ARGV 0 "arg" "" "SOURCE_PATH;CONFIG;ARGS" "")
@ -46,6 +45,4 @@ function(vcpkg_gn_configure)
ARGS "--args=${arg_OPTIONS} ${arg_OPTIONS_RELEASE}"
)
endif()
z_vcpkg_gn_fixup_path()
endfunction()

View File

@ -1,48 +0,0 @@
function(z_vcpkg_gn_fixup_path_internal)
cmake_parse_arguments(PARSE_ARGV 0 "arg" "" "BUILD_DIR" "")
if(DEFINED arg_UNPARSED_ARGUMENTS)
message(FATAL_ERROR "Internal error: install was passed extra arguments: ${arg_UNPARSED_ARGUMENTS}")
endif()
if(NOT DEFINED arg_BUILD_DIR)
message(FATAL_ERROR "BUILD_DIR must be specified.")
endif()
file(GLOB_RECURSE NINJA_FILES LIST_DIRECTORIES false "${arg_BUILD_DIR}/*.ninja")
# replace all ../../../C$:/ pattern to C$:/ using regex: (\.\.\/)+([a-zA-Z]\$:\/)
# (cmake regex is function limited, any plan for implementing a vcpkg built-in full functional regex?)
set(NINJA_FIX_REGEX [=[(\.\.\/)+([a-zA-Z]\$:\/)]=])
foreach(NINJA_FILE IN LISTS NINJA_FILES)
file(READ "${NINJA_FILE}" NINJA_CONTENT)
string(REGEX REPLACE "${NINJA_FIX_REGEX}" "\\2" NINJA_CONTENT_PATH_FIXED "${NINJA_CONTENT}")
file(WRITE "${NINJA_FILE}" "${NINJA_CONTENT_PATH_FIXED}")
endforeach()
endfunction()
function(z_vcpkg_gn_fixup_path)
if (NOT VCPKG_HOST_IS_WINDOWS)
return()
endif()
message(STATUS "vcpkg-gn: fixing ninja paths for Windows")
cmake_parse_arguments(PARSE_ARGV 0 arg "" "" "")
if(DEFINED arg_UNPARSED_ARGUMENTS)
message(WARNING "vcpkg_fixup_gn_path was passed extra arguments: ${arg_UNPARSED_ARGUMENTS}")
endif()
if(NOT DEFINED VCPKG_BUILD_TYPE OR VCPKG_BUILD_TYPE STREQUAL "debug")
z_vcpkg_gn_fixup_path_internal(
BUILD_DIR "${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-dbg"
)
endif()
if(NOT DEFINED VCPKG_BUILD_TYPE OR VCPKG_BUILD_TYPE STREQUAL "release")
z_vcpkg_gn_fixup_path_internal(
BUILD_DIR "${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-rel"
)
endif()
endfunction()

View File

@ -8,36 +8,30 @@ set(cipd_download_gn "https://chrome-infra-packages.appspot.com/dl/gn/gn")
if(CMAKE_HOST_SYSTEM_NAME STREQUAL "Linux")
EXEC_PROGRAM(uname ARGS -m OUTPUT_VARIABLE HOST_ARCH OUTPUT_STRIP_TRAILING_WHITESPACE)
if(HOST_ARCH STREQUAL "aarch64")
set(program_version "GkfFAfAUyE-qfeWkdUMaeM1Ov64Fk3SjSj9pwKqZX7gC")
set(program_version "3bH3TSyghUqRj8To2aE9yy4D_k_zCkymWkbwzaeEk34C")
set(gn_platform "linux-arm64")
set(download_sha512 "E88201309A12C00CE60137261B8E1A759780C81D1925B819583B16D2095A16A7D32EFB2AF36C1E1D6EAA142BF6A6A811847D3140E4E94967EE28F4ADF6373E4B")
set(download_sha512 "36604e7ca146f21a80c9a2463dcf09caa0c03c05507d93497884cb28da3582b9a695008d01be814e523e4a4982300ee7c717c2aa7fddbc8156736ec6b4251f9c")
else()
set(program_version "Fv1ENXodhXmEXy_xpZr2gQkVJh57w_IsbsrEJOU0_EoC")
set(program_version "5v1Aw5ofON_P9Ds3nj1TzasiNIkS9eebfC3xe1lgCakC")
set(gn_platform "linux-amd64")
set(download_sha512 "A7A5CD5633C5547EC1B1A95958486DDAAC91F1A65881EDC0AD8F74DF44E82F08BA74358E9A72DFCDDE6F534A6B9C9A430D3E16ACE2E4346C4D2E9113F7654B3F")
set(download_sha512 "325d9066e3c5f4e18b5489aaa060ea89f384d00ddc3d87fa329c455097c1b28f67f6e3baee2eaa54cd7f6c463cee3a4d473d0e69cd3390be91af91cbec347db1")
endif()
elseif(CMAKE_HOST_SYSTEM_NAME STREQUAL "Darwin")
set(supported_on_unix ON)
EXEC_PROGRAM(uname ARGS -m OUTPUT_VARIABLE HOST_ARCH OUTPUT_STRIP_TRAILING_WHITESPACE)
if(HOST_ARCH STREQUAL "arm64")
set(program_version "qMPtGq7xZlpb-lHjP-SK27ftT4X71WIvguuyx6X14DEC")
set(program_version "K29J_UnVaLzu0yYgA1orjyvrHXdkxoOSIPPPqZxN1IcC")
set(gn_platform "mac-arm64")
set(download_sha512 "D096FB958D017807427911089AB5A7655AED117F6851C0491AC8063CEDB544423122EF64DF4264ECA86C20A2BDE9E64D7B72DA7ED8C95C2BA79A68B8247D36B8")
set(download_sha512 "5f8529eacf4ccd55de1060ade9da39145750516f983aaa1a53ebd6036565d0b638480327366f42c47a6eb3471c95842de0a2623c647f1a0d93cedd0907729208")
else()
set(program_version "0x2juPLNfP9603GIyZrUfflxK6LiMcppLAoxEpYuIYoC")
set(program_version "oz5BCDwbV-uvEuigRPInDwZGFUGCTGFlCZBBn1AuZaQC")
set(gn_platform "mac-amd64")
set(download_sha512 "2696ECE7B2C8008CABDDF10024017E2ECF875F8679424E77052252BDDC83A2096DF3C61D89CD25120EF27E0458C8914BEEED9D418593BDBC4F6ED33A8D4C3DC5")
set(download_sha512 "2f48b0f1f091e3ee424da4beb800a68f5d84b6b31ee633f3a32324508c2b96ecd2dcf0908353331eb100d11e2b1c6cfe7961cf53811de8f9951e36e88aff5272")
endif()
else()
if($ENV{PROCESSOR_ARCHITECTURE} STREQUAL "ARM64")
set(program_version "q5ExVHmXyD34Q_Tzb-aRxsPipO-e37-csVRhVM7IJh0C")
set(gn_platform "windows-amd64")
set(download_sha512 "FA764AA44EB6F48ED50E855B4DC1DD1ABE35E45FD4AAC7F059A35293A14894C1B591215E34FB0CE9362E646EA9463BA3B489EFB7EBBAA2693D14238B50E4E686")
else() # AMD64
set(program_version "q5ExVHmXyD34Q_Tzb-aRxsPipO-e37-csVRhVM7IJh0C")
set(gn_platform "windows-amd64")
set(download_sha512 "FA764AA44EB6F48ED50E855B4DC1DD1ABE35E45FD4AAC7F059A35293A14894C1B591215E34FB0CE9362E646EA9463BA3B489EFB7EBBAA2693D14238B50E4E686")
endif()
set(program_version "gHozLqIHcmwMq96qzOqcgcOOK2XXE-W4nXQcchHFqKYC")
set(gn_platform "windows-amd64")
set(download_sha512 "2f471d4fa5f56cd72c43c5f2824f37a1baff3f26cd6c1ed43fe106153d0e654a4fb1460b01794ca3dae3104dfade81420fe1da04473e782eebab47909c9a566b")
endif()
set(download_urls "${cipd_download_gn}/${gn_platform}/+/${program_version}")

View File

@ -1,7 +1,6 @@
{
"name": "vcpkg-tool-gn",
"version-date": "2022-04-16",
"port-version": 1,
"version-date": "2024-02-22",
"description": "GN build system",
"homepage": "https://gn.googlesource.com/gn/",
"license": null,

View File

@ -8989,8 +8989,8 @@
"port-version": 3
},
"vcpkg-gn": {
"baseline": "2021-11-16",
"port-version": 3
"baseline": "2024-02-22",
"port-version": 0
},
"vcpkg-msbuild": {
"baseline": "2023-08-08",
@ -9009,8 +9009,8 @@
"port-version": 0
},
"vcpkg-tool-gn": {
"baseline": "2022-04-16",
"port-version": 1
"baseline": "2024-02-22",
"port-version": 0
},
"vcpkg-tool-gyp-next": {
"baseline": "2022-10-15",

View File

@ -1,5 +1,10 @@
{
"versions": [
{
"git-tree": "c62f882f543760e74e571a2527a9c6050bcf4e91",
"version-date": "2024-02-22",
"port-version": 0
},
{
"git-tree": "91fca5269be57b055d067a6012dd79bca6a9dc70",
"version-date": "2021-11-16",

View File

@ -1,5 +1,10 @@
{
"versions": [
{
"git-tree": "2d1a5157488930321ba70a7990971c317dc02548",
"version-date": "2024-02-22",
"port-version": 0
},
{
"git-tree": "f389a1a2c5ceabd27f62c723bfa2b42919a9f3be",
"version-date": "2022-04-16",