aboutsummaryrefslogtreecommitdiff
path: root/toolsrc
AgeCommit message (Collapse)Author
2020-07-20[libmicrohttpd] Add `platform.h` to restricted header list. (#12455)ras0219
Fixes #12450 Co-authored-by: Robert Schumacher <roschuma@microsoft.com>
2020-07-18Build fix with MinGW GCC 9.2.0 (#12084)Cristian Adam
* Build fix with MinGW GCC 9.2.0 * Fix MinGW tripplets Fixes #12065 * clang-format * Fix unused read_symlink_implementation warning marked as error read_symlink_implementation was used only in copy_symlink_implementation when #if defined(_WIN32) && !VCPKG_USE_STD_FILESYSTEM was true. Removed the warning otherwise. Co-authored-by: JackBoosY <yuzaiyang@beyondsoft.com>
2020-07-17[vcpkg] print list in json (#12179)dan-shaw
* print list command in json * fix spacing * remove reference * review * fixes based on review
2020-07-15[vcpkg] Clean up command switch code (#12351)nicole mazzuca
* [vcpkg] Clean up command switch code Make it more similar to the non-command switch code * format * fix the tests * reformat * format * wip * support x- for command options * fix autocomplete * format
2020-07-15[vcpkg] implement copy_symlink working for non-elevated processes (#12400)Maksim Moisiuk
* [vcpkg] implement copy_symlink working for non-elevated processes * [vcpkg] read_symlink Windows implementation * [vcpkg] normalize_path on Windows only * Update toolsrc/src/vcpkg/base/files.cpp Co-authored-by: nicole mazzuca <mazzucan@outlook.com> * Update toolsrc/src/vcpkg/base/files.cpp Co-authored-by: nicole mazzuca <mazzucan@outlook.com> * Update toolsrc/src/vcpkg/base/files.cpp Co-authored-by: nicole mazzuca <mazzucan@outlook.com> * remove normalization * Update toolsrc/src/vcpkg/base/files.cpp Co-authored-by: nicole mazzuca <mazzucan@outlook.com> * Update toolsrc/src/vcpkg/base/files.cpp Co-authored-by: nicole mazzuca <mazzucan@outlook.com> * Update toolsrc/src/vcpkg/base/files.cpp Co-authored-by: nicole mazzuca <mazzucan@outlook.com> * Update toolsrc/src/vcpkg/base/files.cpp Co-authored-by: nicole mazzuca <mazzucan@outlook.com> * Update toolsrc/src/vcpkg/base/files.cpp Co-authored-by: nicole mazzuca <mazzucan@outlook.com> * use unique_ptr * comments Co-authored-by: nicole mazzuca <mazzucan@outlook.com>
2020-07-15[vcpkg] Fix ParagraphParser::required_field() (#12429)Maks Naumov
2020-07-14[vcpkg formatting] Turn off DeriveLineEnding (#12368)nicole mazzuca
* [vcpkg formatting] Turn off DeriveLineEnding * format * Add newlines to the end of files Since we're reformatting anyways
2020-07-13[vcpkg] Fix iOS toolchain detection when using the iOS community triplets ↵alcroito
(#12361) * [vcpkg ios] Fix detection of iOS toolchain (#6003) Added mapping of CMAKE_SYSTEM_NAME == iOS to the bundled iOS toolchain file. This fixes the "Unable to determine toolchain to use for triplet arm64-ios with CMAKE_SYSTEM_NAME iOS" error. * [vcpkg ios] Set the CMake system processor for the simulator arches (#6003) So it's consistent for all architectures.
2020-07-13[vcpkg] Track hashes of cmake script helpers in consuming portfiles (#12254)ras0219
* [vcpkg] Track hashes of cmake script helpers in consuming portfiles * [vcpkg] Format * [vcpkg_find_acquire_program] Use cpkg_from_sourceforge for FLEX and BISON Co-authored-by: Robert Schumacher <roschuma@microsoft.com>
2020-07-13[vcpkg] proper errorcheck during files installation (#12378)Maksim Moisiuk
* [vcpkg] proper errorcheck during files installation * [vcpkg] move ec.clear to status_implementation
2020-07-13[vcpkg] Add CMake heuristics for header-only libraries (#12386)ras0219
* [vcpkg] Add CMake heuristics for header-only libraries * [vcpkg] Update toolsrc/src/vcpkg/install.cpp Handles the case of: ``` triplet/lib/ triplet/lib/x.pc ``` Co-authored-by: nicole mazzuca <mazzucan@outlook.com> Co-authored-by: Robert Schumacher <roschuma@microsoft.com> Co-authored-by: nicole mazzuca <mazzucan@outlook.com>
2020-07-13[vcpkg] Enable binary caching by default (#12370)ras0219
* [vcpkg] Enable binary caching by default. Support `x-` migration. Fix passing multiple copies of single parameter arguments. * [vcpkg] Handle x- prefixes for general arguments * [vcpkg] Fix #12285 and improve documentation of default binary cache path * [vcpkg] Revert x- prefix homogenization for per-command arguments * [vcpkg] Only use accelerated compiler detection for Windows Desktop + Ninja. Improve breadcrumbs for users encountering issues. * [vcpkg] Fix compiler tracking not pre-downloading Ninja. Fix compiler tracking not looking in -err.log. * [vcpkg] Update toolsrc/src/vcpkg/binarycaching.cpp Co-authored-by: Billy O'Neal <bion@microsoft.com> * [vcpkg] Format Co-authored-by: Robert Schumacher <roschuma@microsoft.com> Co-authored-by: Billy O'Neal <bion@microsoft.com>
2020-07-11[vcpkg formatting] Fix format regex (#12369)nicole mazzuca
* [vcpkg formatting] correct the header regexes * format
2020-07-10[vcpkg build] fix #12355 (#12367)nicole mazzuca
2020-07-09[vcpkg] Remove unnecessary work queue (#12350)nicole mazzuca
this work queue implementation was added at some point, and is no longer used anywhere. Delete it as not used; if we need it again, we can grab it from the history
2020-07-09[vcpkg] Move default binary cache from `$root/archives` to user-wide ↵ras0219
directory (#12256) * [vcpkg] Move default binary cache from `$root/archives` to user-wide directory Teach nuget/nugetconfig binary sources to use read/write. * [vcpkg] Reformat Co-authored-by: Robert Schumacher <roschuma@microsoft.com>
2020-07-09[cuda] correct env variables for newer cuda versions (#12244)Alexander Neumann
* [cuda] correct env variables for newer cuda versions * Update ports/cuda/CONTROL Co-authored-by: Jack·Boos·Yu <47264268+JackBoosY@users.noreply.github.com> Co-authored-by: Jack·Boos·Yu <47264268+JackBoosY@users.noreply.github.com>
2020-07-09[vcpkg manifests] fix some issues (#12227)nicole mazzuca
Fixes #12190 Fixes #12208 Fixes #12234 Fixes #12286 Fixes #12315 Fixes #12186 Fixes #12331 Fixes googleapis/google-cloud-cpp#4487
2020-07-08[vcpkg] Ignore dependencies not found errors when downloading mode (#12323)Jack·Boos·Yu
2020-07-07[vcpkg] Implement --editable (#12200)ras0219
--editable suppresses binary caching and source re-extraction for packages listed on the command line (similar to --head). This fundamentally changes the port maintenance loop, so several example documents were updated. To avoid users having substantial changes suddenly destroyed by forgetting to pass --editable, "clean" sources have different extract locations. The undocumented command `build` implies `--editable`. Co-authored-by: Robert Schumacher <roschuma@microsoft.com>
2020-07-06[vcpkg] Format the C++ in CI (#11655)nicole mazzuca
* [vcpkg] Format the C++ in the CI * format the C++ * CR
2020-07-06[opengl wincrypt winsock2] Use $ENV{WindowsSdkDir} instead of hard coding ↵Billy O'Neal
Windows SDK paths. (#12232) Also delete vcpkg_get_program_files_32_bit because it was used in only one place. Resolves #8288 Obsoletes #11421, #11261, #8329
2020-07-06[vcpkg] Update toolsrc VERSION to 2020.06.15 (#12263)Wolfgang Stöggl
The currently released version of vcpkg is 2020.06.15 See commit: https://github.com/microsoft/vcpkg/commit/6185aa7 - Update also: vcpkg/toolsrc/VERSION.txt
2020-07-06[vcpkg] Revert change which causes sources to be purged by default in `vcpkg ↵ras0219
build` (#12272) Co-authored-by: Robert Schumacher <roschuma@microsoft.com>
2020-07-06[vcpkg] Remove use of std::variant and std::visit to fix VS2015. (#12242)ras0219
Fixes #12220 Co-authored-by: Robert Schumacher <roschuma@microsoft.com>
2020-07-02[vcpkg] Remove the tombstones and 'ignore' baseline concepts. (#12197)Billy O'Neal
This changes our PR builds to treat 'fail' in the ci.baseline.txt as 'skip' instead of using tombstones. We currently have large numbers of spurious failures that get enshrined in PRs through no fault of a PR author, removing the tombstones concept will fix those by allowing the user to retry. This does mean we accept some risk of not detecting when a port is 'fixed', but that failure is reasonable for us to handle after we see it in CI, but that seems worth it given that it lets us get rid of the tombstone concept. This also helps out the binary caching feature, because we don't have to figure out how to productize tombstones.
2020-07-01[vcpkg] Remove all uses of Foo::Foo() noexcept = default; to fix #9955 (#12201)ras0219
Co-authored-by: Robert Schumacher <roschuma@microsoft.com>
2020-07-01[vcpkg] Enable NuGet-based binary caching via mono (#12170)ras0219
Co-authored-by: Robert Schumacher <roschuma@microsoft.com>
2020-07-01Fix sourceparagraph:BooleanField (#12192)nicole mazzuca
the function is called `visit_boolean`, not `visit_bool`. I wish there was a better way to do this.
2020-07-01[vcpkg] Implement --x-write-nuget-packages-config= setting for `install` and ↵ras0219
`x-set-installed` (#12138) * [vcpkg] Implement --x-write-nuget-packages-config= setting for `install` and `x-set-installed`. * [vcpkg] Add end-to-end testing suite for install, remove, and binary caching * [vcpkg] Define `$TestingRoot in end-to-end-tests.ps1 * [vcpkg] Address CR comments Co-authored-by: Robert Schumacher <roschuma@microsoft.com>
2020-06-30[vcpkg] Fix `vcpkg export --nuget` regressions (#12174)ras0219
* [vcpkg] Upgrade find_acquire_program(NUGET) to 5.5.1. Add partial SHA to temporary download paths to avoid collisions. * [vcpkg] Fix regression in `vcpkg export --nuget` due to file locking on .vcpkg-root Co-authored-by: Robert Schumacher <roschuma@microsoft.com>
2020-06-30[vcpkg manifest] Manifest Implementation (#11757)nicole mazzuca
==== Changes Related to manifests ==== * Add the `manifests` feature flag * This only says whether we look for a `vcpkg.json` in the cwd, not whether we support parsing manifests (for ports, for example) * Changes to the manifests RFC * `"authors"` -> `"maintainers"` * `--x-classic-mode` -> `-manifests` \in `vcpkg_feature_flags` * reserve `"core"` in addition to `"default"`, since that's already reserved for features * Add a small helper note about what identifiers must look like * `<license-string>`: SPDX v3.8 -> v3.9 * `"feature"."description"` is allowed to be an array of strings as well * `"version"` -> `"version-string"` for forward-compat with versions RFC * Add the `--feature-flags` option * Add the ability to turn off feature flags via passing `-<feature-flag>` to `VCPKG_FEATURE_FLAGS` or `--feature-flags` * Add CMake toolchain support for manifests * Requires either: * a feature flag of `manifests` in either `Env{VCPKG_FEATURE_FLAGS}` or `VCPKG_FEATURE_FLAGS` * Passing the `VCPKG_ENABLE_MANIFESTS` option * The toolchain will install your packages to `${VCPKG_MANIFEST_DIR}/vcpkg_installed`. * Add MSBuild `vcpkg integrate install` support for manifests * Requires `VcpkgEnableManifest` to be true * `vcpkg create` creates a port that has a `vcpkg.json` instead of a `CONTROL` * argparse, abseil, 3fd, and avisynthplus ports switched to manifest from CONTROL * Add support for `--x-manifest-root`, as well as code for finding it if not passed * Add support for parsing manifests! * Add a filesystem lock! ==== Important Changes which are somewhat unrelated to manifests ==== * Rename `logicexpression.{h,cpp}` to `platform-expression.{h,cpp}` * Add `PlatformExpression` type which takes the place of the old logic expression * Split the parsing of platform expressions from checking whether they're true or not * Eagerly parse PlatformExpressions as opposed to leaving them as strings * Add checking for feature flag consistency * i.e., if `-binarycaching` is passed, you shouldn't be passing `--binarysource` * Add the `Json::Reader` type which, with the help of user-defined visitors, converts JSON to your internal type * VcpkgArgParser: place the switch names into a constant as opposed to using magic constants * In general update the parsing code so that this ^ works * Add `Port-Version` fields to CONTROL files * This replaces the existing practice of `Version: <my-version>-<port-version>` ==== Smaller changes ==== * small drive-by cleanups to some CMake * `${_VCPKG_INSTALLED_DIR}/${VCPKG_TARGET_TRIPLET}` -> `${CURRENT_INSTALLED_DIR}` * Remove `-analyze` when compiling with clang-cl, since that's not a supported flag (vcpkg's build system) * Add a message about which compiler is detected by vcpkg's build system machinery * Fix `Expected::then` * Convert `""` to `{}` for `std::string` and `fs::path`, to avoid a `strlen` (additionally, `.empty()` instead of `== ""`, and `.clear()`) * Add `Strings::strto` which converts strings to numeric types * Support built-in arrays and `StringView` for `Strings::join` * Add `operator<` and friends to `StringView` * Add `substr` to `StringView` * SourceParagraphParser gets some new errors
2020-06-27[vcpkg-x-set-installed] Implement --dry-run (#12132)ras0219
* [vcpkg-x-set-installed] Implement --dry-run * [vcpkg] Address code review comments Co-authored-by: Robert Schumacher <roschuma@microsoft.com>
2020-06-26[vcpkg] Add write-only binary caching for CI. (#12130)Billy O'Neal
Changes to the binary caching spec made as comments over at https://github.com/microsoft/vcpkg/pull/11204#pullrequestreview-438518901
2020-06-26[vcpkg] Delete unused --purge-tombstones and introduce BufferedPrint class ↵Billy O'Neal
(#12049) * Introduce buffered_print class to manage buffered write patterns like in the ci command. * Remove --purge-tombstones option. * Law of demeter. * Make buffered_print imobile. * buffered_print => BufferedPrint * Fix merge conflict.
2020-06-26[vcpkg] Implementation of --x-binarysource=nuget (and friends) (#12058)ras0219
* [vcpkg] Initial implementation of --x-binarysource=nuget * [vcpkg] Remove double-double quoting of CMake arguments * [vcpkg] Update nuget.exe to 5.5.1 to support Azure DevOps Artifacts * [vcpkg] Enable batching of NuGet server calls with prefetch(). Add `interactive` binarysource. * [vcpkg] Add `nugetconfig` binary source * [vcpkg] Short circuit querying remote NuGet servers once all refs are found * [vcpkg] Add experimental help for binary caching * [vcpkg] Improved NuGet cache package descriptions and version formatting * [vcpkg] Rename `CmdLineBuilder::build()` to extract() * [vcpkg-help] Ascii-betize help topics * [vcpkg] Add tests for cmdlinebuilder. Improve handling of quotes and slashes. * [vcpkg] Addressing code review comments * [vcpkg] Add tests for vcpkg::reformat_version() * [vcpkg] Added test for vcpkg::generate_nuspec() * [vcpkg] Add tests for vcpkg::XmlSerializer * [vcpkg] Addressed code review comment * [vcpkg] Add test for vcpkg::Strings::find_first_of * [vcpkg] Fix machine-specific paths in test for vcpkg::generate_nuspec() Co-authored-by: Robert Schumacher <roschuma@microsoft.com>
2020-06-26[vcpkg] Fix "[commands-build] build smoke test" (#12128)ras0219
* [vcpkg] Fix "[commands-build] build smoke test" 1. Do not exit with a success code in Build::perform, because this causes failures in other tests to be ignored. 2. Use temp directory to avoid interference with the current set of {installed, buildtrees, packages} 3. Explicitly disable binary caching * [vcpkg] Disable binarycaching in "build smoke test", "[commands-build]" Return 1 for the last failure case in Build::perform() so testing may continue. Co-authored-by: Robert Schumacher <roschuma@microsoft.com>
2020-06-26[vcpkg] Use XDG/LOCALAPPDATA for default binary caching path (#12091)ras0219
* [vcpkg] Use XDG Base Directory Specification on non-Windows * [vcpkg] Move user-wide binary cache on Windows to $LOCALAPPDATA/vcpkg/archives * [vcpkg] Address code review comments; refactor other uses of LOCALAPPDATA * [vcpkg] Address code review comments * [vcpkg] filesystem::path::append() accepts string arguments, not paths. Co-authored-by: Robert Schumacher <roschuma@microsoft.com>
2020-06-25[vcpkg build] fix build command (#12072)nicole mazzuca
2020-06-25[vcpkg] Commonize pipelines build powershell and don't use binary caching in ↵Billy O'Neal
CI (rather than PR) builds (#12082)
2020-06-22[vcpkg] Track compiler information in ABI (#11654)ras0219
* [vcpkg] Refactor out abi_tags_from_pre_build_info() * [vcpkg] Track Windows toolchain file in triplet hash * [vcpkg] Improve error messages when constructing PreBuildInfo * [vcpkg] Extract InstallPlanAction::BuildAbiInfo * [vcpkg] Extract Build::EnvCache and private-impl VcpkgPaths * [vcpkg] Enable compiler hash detection when binarycaching is enabled * [vcpkg] Downgrade warning about missing ABI keys When binarycaching is not enabled, this warning is spurious and provides no user value. * [vcpkg] Cleanup * [vcpkg] Refactor compiler tracking into triplet abi computation Move several static global caches into VcpkgPaths/EnvCache. Add feature flag 'compilertracking' to enable the new feature. * [vcpkg] Refactor out PreBuildInfo::using_vcvars() Move VcpkgTripletVar into build.cpp because it is not used outside that file. * [vcpkg] Address some code analysis warnings Co-authored-by: Robert Schumacher <roschuma@microsoft.com>
2020-06-18Put user-defined configuration triplets path on top of the search queue (#11931)Vitalii Koshura
I believe that user-defined configuration triplets paths should be the first when searching for triplet configuration. This commit puts user-defined configuration triplets (if defined) on top of the search queue before standard paths. This could help to overwrite default tiplet configuration without setting custom triplet. P.S. If current implementation is better than my suggestion, feel free to ignore this commit. Signed-off-by: Vitalii Koshura <lestat.de.lionkur@gmail.com>
2020-06-17[vcpkg] Fix issue #9781 by exporting from the installed directory (#11015)ras0219
* [vcpkg] Fix issue #9781 by exporting from the installed directory * [vcpkg] Address code review comments for #11015 * [vcpkg] Remove duplicate triplet in installed path from exports Co-authored-by: Robert Schumacher <roschuma@microsoft.com>
2020-06-16[vcpkg] Fix create by extracting common paths settings (#11842)Billy O'Neal
Resolves #11784
2020-06-15[vcpkg] Delete g_binary_caching global that should be passed as a parameter. ↵Billy O'Neal
(#11958)
2020-06-15[vcpkg] Add vcpkg item to project settings in Visual Studio (#4361)Alexander Neumann
Co-authored-by: Curtis J Bezault <curtbezault@gmail.com> Co-authored-by: Billy Robert O'Neal III <bion@microsoft.com> Co-authored-by: Robert Schumacher <roschuma@microsoft.com>
2020-06-11[vcpkg] Fix bootstrap on VS2015 (#11891)Billy O'Neal
* Fix boostrap on VS2015 by removing use of C++17 constexpr lambdas.
2020-06-08[vcpkg] Fix OSX CI by ensuring the downloads directory exists (#11839)Billy O'Neal
* [vcpkg] Remove do-nothing Set-Content from Windows azure-pipelines.yml. * [vcpkg] Fix OSX CI by ensuring the downloads directory exists in advance, and extract common command line parameters with powershell splatting. * [tensorflow-cc] Prevent hang building tensorflow-cc asking to configure iOS. * Skip ignition-msgs5:x64-osx
2020-06-03[vcpkg] Allow CI to pass in all relevant directories and remove use of ↵Billy O'Neal
symbolic links (#11483)
2020-06-02[vcpkg] add x86-wasm.cmake to community triplets (#11323)Mohammed Alyousef
* add x86-wasm.cmake to community triplets The EMSDK enviroment variable is normally defined when first installing Emscripten. * Rename x86-wasm.cmake to wasm32-emscripten.cmake * Update wasm32-emscripten.cmake * Update wasm32-emscripten.cmake * Add wasm32 and wasm64 arch to docs * Create wasm64-emscripten.cmake * remove wasm64 * Delete wasm64-emscripten.cmake * Add wasm32 to list of identifiers * add emscripten VCPKG_CMAKE_SYSTEM_NAME support * add path check to EMSDK cmake toolchain