vcpkg-tool/CMakeSettings.json

217 строки
6.0 KiB
JSON
Исходник Обычный вид История

[vcpkg-artifacts] Fix end to end development. (#586) * [vcpkg-artifacts] Fix end to end development. Thanks to @fearthecowboy for help on this one. I considered ripping out the rush dependency, since it seems like we are only ever going to have one meaningful "project", and the dependency deduplication we need seems to be already done by pnpm (rather than npm), but after talking with @fearthecowboy I've decided to not go there since we still have rush linking the test project in. Unfortunately, there does not appear to be an effiicent way to build the typescript parts out-of-source, since they depend on node_modules which is put into the source tree. This adds a vcpkg.ps1 which does the same "environment hacking" as the in-development ce.ps1, teaches CMakeLists.txt to invoke rush and the typescript compiler as necessary, and teaches vcpkg.exe to use a hard-coded-into-the-binary path to the source tree when that in-development setting is turned on. The previous "always download latest ce bits" behavior is retained for folks who build vcpkg.exe from source and don't want to arrange for node and rush to be available. * format * Add better messages during build. * Guard VCPKG_ARTIFACTS_DEVELOPMENT for a recent enough CMake to not trigger infinite loops. * Fix initial call to rush rebuild needed to make incremental build work afterwards. * Fix generating vcpkg.ps1 on Linux. * Add prerequisites instructions. * Make ps1 executable. * Add dependencies on the node_modules directory. * Use ALL instead of add_dependencies.
2022-06-24 23:51:58 +03:00
{
"configurations": [
{
"name": "x64-Debug",
"generator": "Ninja",
"configurationType": "Debug",
"inheritEnvironments": [ "msvc_x64_x64" ],
"buildRoot": "${projectDir}\\out\\build\\${name}",
"installRoot": "${projectDir}\\out\\install\\${name}",
"cmakeCommandArgs": "",
"buildCommandArgs": "",
"ctestCommandArgs": "",
"variables": [
{
"name": "VCPKG_ARTIFACTS_DEVELOPMENT",
"value": "True",
"type": "BOOL"
},
{
"name": "VCPKG_BUILD_TLS12_DOWNLOADER",
"value": "True",
"type": "BOOL"
},
{
"name": "VCPKG_BUILD_BENCHMARKING",
"value": "True",
"type": "BOOL"
},
{
"name": "VCPKG_BUILD_FUZZING",
"value": "True",
"type": "BOOL"
}
]
},
{
"name": "x64-Debug-NoArtifacts",
"generator": "Ninja",
"configurationType": "Debug",
"inheritEnvironments": [ "msvc_x64_x64" ],
"buildRoot": "${projectDir}\\out\\build\\${name}",
"installRoot": "${projectDir}\\out\\install\\${name}",
"cmakeCommandArgs": "",
"buildCommandArgs": "",
"ctestCommandArgs": "",
"variables": [
{
"name": "VCPKG_ARTIFACTS_DEVELOPMENT",
"value": "False",
"type": "BOOL"
},
{
"name": "VCPKG_BUILD_TLS12_DOWNLOADER",
"value": "True",
"type": "BOOL"
},
{
"name": "VCPKG_BUILD_BENCHMARKING",
"value": "True",
"type": "BOOL"
},
{
"name": "VCPKG_BUILD_FUZZING",
"value": "True",
"type": "BOOL"
}
]
},
{
"name": "x64-Debug-Official-2022-11-10",
"generator": "Ninja",
"configurationType": "Debug",
"inheritEnvironments": [ "msvc_x64_x64" ],
"buildRoot": "${projectDir}\\out\\build\\${name}",
"installRoot": "${projectDir}\\out\\install\\${name}",
"cmakeCommandArgs": "",
"buildCommandArgs": "",
"ctestCommandArgs": "",
"variables": [
{
"name": "VCPKG_OFFICIAL_BUILD",
"value": "True",
"type": "BOOL"
},
{
"name": "VCPKG_BASE_VERSION",
"value": "2022-11-10",
"type": "STRING"
},
{
"name": "VCPKG_STANDALONE_BUNDLE_SHA",
"value": "edc1bad5689508953842d13b062a750791af57e0c6bb9d441d4545e81d99841dead2d33a5cb382b6cf50d2d32414ee617ada6e761c868fcbb28fa9bcb7bca6ba",
"type": "STRING"
},
{
"name": "VCPKG_CE_SHA",
"value": "b677e4d66e711e623a2765499cc5b662544c1df07a95b495f31a195f6e525c00cef0111dbb008b544d987fdcd1140fd69877908b3c3e7771231eaaa2cb1939ac",
"type": "STRING"
},
{
"name": "VCPKG_BUILD_TLS12_DOWNLOADER",
[vcpkg-artifacts] Fix end to end development. (#586) * [vcpkg-artifacts] Fix end to end development. Thanks to @fearthecowboy for help on this one. I considered ripping out the rush dependency, since it seems like we are only ever going to have one meaningful "project", and the dependency deduplication we need seems to be already done by pnpm (rather than npm), but after talking with @fearthecowboy I've decided to not go there since we still have rush linking the test project in. Unfortunately, there does not appear to be an effiicent way to build the typescript parts out-of-source, since they depend on node_modules which is put into the source tree. This adds a vcpkg.ps1 which does the same "environment hacking" as the in-development ce.ps1, teaches CMakeLists.txt to invoke rush and the typescript compiler as necessary, and teaches vcpkg.exe to use a hard-coded-into-the-binary path to the source tree when that in-development setting is turned on. The previous "always download latest ce bits" behavior is retained for folks who build vcpkg.exe from source and don't want to arrange for node and rush to be available. * format * Add better messages during build. * Guard VCPKG_ARTIFACTS_DEVELOPMENT for a recent enough CMake to not trigger infinite loops. * Fix initial call to rush rebuild needed to make incremental build work afterwards. * Fix generating vcpkg.ps1 on Linux. * Add prerequisites instructions. * Make ps1 executable. * Add dependencies on the node_modules directory. * Use ALL instead of add_dependencies.
2022-06-24 23:51:58 +03:00
"value": "True",
"type": "BOOL"
},
{
"name": "VCPKG_BUILD_BENCHMARKING",
"value": "True",
"type": "BOOL"
},
{
"name": "VCPKG_BUILD_FUZZING",
"value": "True",
"type": "BOOL"
}
]
},
{
"name": "x64-Release",
"generator": "Ninja",
"configurationType": "RelWithDebInfo",
"buildRoot": "${projectDir}\\out\\build\\${name}",
"installRoot": "${projectDir}\\out\\install\\${name}",
"cmakeCommandArgs": "",
"buildCommandArgs": "",
"ctestCommandArgs": "",
"inheritEnvironments": [ "msvc_x64_x64" ],
"variables": [
{
"name": "VCPKG_ARTIFACTS_DEVELOPMENT",
"value": "True",
"type": "BOOL"
},
{
"name": "VCPKG_BUILD_TLS12_DOWNLOADER",
"value": "True",
"type": "BOOL"
},
{
"name": "VCPKG_BUILD_BENCHMARKING",
"value": "True",
"type": "BOOL"
},
{
"name": "VCPKG_BUILD_FUZZING",
"value": "True",
"type": "BOOL"
}
]
},
{
"name": "x86-Debug",
"generator": "Ninja",
"configurationType": "Debug",
"inheritEnvironments": [ "msvc_x86_x64" ],
"buildRoot": "${projectDir}\\out\\build\\${name}",
"installRoot": "${projectDir}\\out\\install\\${name}",
"cmakeCommandArgs": "",
"buildCommandArgs": "",
"ctestCommandArgs": "",
"variables": [
{
"name": "VCPKG_ARTIFACTS_DEVELOPMENT",
"value": "True",
"type": "BOOL"
},
{
"name": "VCPKG_BUILD_TLS12_DOWNLOADER",
"value": "True",
"type": "BOOL"
},
{
"name": "VCPKG_BUILD_BENCHMARKING",
"value": "True",
"type": "BOOL"
},
{
"name": "VCPKG_BUILD_FUZZING",
"value": "True",
"type": "BOOL"
}
]
},
{
"name": "x86-Release",
"generator": "Ninja",
"configurationType": "RelWithDebInfo",
"buildRoot": "${projectDir}\\out\\build\\${name}",
"installRoot": "${projectDir}\\out\\install\\${name}",
"cmakeCommandArgs": "",
"buildCommandArgs": "",
"ctestCommandArgs": "",
"inheritEnvironments": [ "msvc_x86_x64" ],
"variables": [
{
"name": "VCPKG_ARTIFACTS_DEVELOPMENT",
"value": "True",
"type": "BOOL"
},
{
"name": "VCPKG_BUILD_TLS12_DOWNLOADER",
"value": "True",
"type": "BOOL"
},
{
"name": "VCPKG_BUILD_BENCHMARKING",
"value": "True",
"type": "BOOL"
},
{
"name": "VCPKG_BUILD_FUZZING",
"value": "True",
"type": "BOOL"
}
]
}
]
}