aboutsummaryrefslogtreecommitdiff
path: root/toolsrc/src/vcpkg.cpp
AgeCommit message (Collapse)Author
2019-11-14[vcpkg] update telemetrydan-shaw
2019-08-16[vcpkg] Major tool CMakeLists.txt updatesNicole Mazzuca
- Add the "VCPKG_DEVELOPMENT_WARNINGS" flag - setting "WERROR" will also set this flag - This flag is set by default - on GCC/clang, this will pass '-Wall -Wextra -Wpedantic -Werror' - on GCC, this will additionally pass '-Wmissing-declarations' - on clang, this will additionally pass '-Wmissing-prototypes' - on MSVC, this will pass '-W4 -WX' - On Visual Studio 2017 and later, pass '-permissive-' - Change the source for fallout of these changes - add `format` subcommand - formats all C++ source and header files using clang-format - move `include/vcpkg-test/catch.h` to `include/catch2/catch.hpp` - pass CONFIGURE_DEPENDS to file(GLOB)
2019-08-07[vcpkg] Make Filesystem::remove_all faster #7570Nicole Mazzuca
I added benchmarks to measure how fast the parallel remove_all code was -- it turns out, about 3x slower than stdfs::remove_all. Since this was the case, I removed all of the parallelism and rewrote it serially, and ended up about 30% faster than stdfs::remove_all (in addition to supporting symlinks). In addition, I did the following three orthogonal changes: - simplified the work queue, basing it on Billy O'Neal's idea - Fix warnings on older versions of compilers in tests, by splitting the pragmas out of pch.h. - Ran clang-format on some files In fixing up remove_all, the following changes were made: - On Windows, regular symlinks and directory symlinks are distinct; as an example, to remove directory symlinks (and junctions, for that matter), one must use RemoveDirectory. Only on Windows, I added new `file_type` and `file_status` types, with `file_type` including a new `directory_symlink` enumerator, and `file_status` being exactly the same as the old one except using the new `file_type`. On Unix, I didn't make that change since they don't make a distinction. - I added new `symlink_status` and `status` functions which use the new `file_status` on Windows. - I made `Filesystem::exists` call `fs::exists(status(p))`, as opposed to the old version which called `stdfs::exists` directly. - Added benchmarks to `vcpkg-test/files.cpp`. They test the performance of `remove_all` on small directories (~20 files), with symlinks and without, and on large directories (~2000 files), with symlinks and without.
2019-07-18Better error message when VCPKG_ROOT is independently defined (#7229)Dan Nissenbaum
2019-07-01Allow redirection of the scripts folder. (#6552)martin-s
* Allow redirection of the scripts folder with an environment variable. * - Updated feature from environment variable to argument. * Fix crash when no scripts override is given and use --scripts-root=<PATH> format * Update help messages to use --scripts-root=<PATH> format
2019-06-27Triplets Overlay Implementation (#7053)Victor Romero
* Triplets Overlay Implementation * Use cache for get_triplet_file_path() * Code cleanup
2019-06-12Protect #pragma comment(lib, "foo") with _WIN32 checks (#6867)İsmail Dönmez
lld on Linux can now process #pragma comment(lib, "foo") macros which results in build failures on Linux when lld is used. Fix this by protecting these macros with _WIN32 checks.
2019-06-08[vcpkg] Apply clang format (#6826)Robert Schumacher
2019-05-18[vcpkg] Fix regression in `--debug`. Remove old `features` featureflag. (#6507)Robert Schumacher
2019-04-23Add exit code (#6175)Curtis J Bezault
* Add exit_fail to vcpkg.cpp * Adding a comment as per @rastaban
2019-04-08[vcpkg] Synchronize vcpkg-base with external repo (#5934)Robert Schumacher
2019-02-05[vcpkg] Respect the documented VS environment variable ↵Robert Schumacher
%VCPKG_VISUAL_STUDIO_PATH%
2018-12-12[vcpkg] Add support for muslc, static crt linkage, and forcing the system ↵Robert Schumacher
binaries for cmake and ninja
2018-10-17Survey times. Refactor Chrono stuff. All times UTC, unless explicitly mentionedAlexander Karatarakis
Survey is set to be every 6 months, but you also get one in the first 10 days.
2018-10-17Survey prompts are now shown only for intall/remove/export/updateAlexander Karatarakis
2018-10-16[vcpkg] Wrap all external process spawning in a Ctrl-C catcher to avoid ↵Robert Schumacher
corrupted consoles
2018-07-09[vcpkg] Split vcpkg::Commands::Fetch into backend and frontendRobert Schumacher
2018-05-03[vcpkg] Remove utf16 usage from non-WindowsRobert Schumacher
2018-04-12[vcpkg] Mark many types noexcept. Make certain code patterns more ↵Robert Schumacher
transparent to /analyze. #ifdef-out unused code on non-windows.
2018-03-13[vcpkg] Improve default triplets for non-windowsRobert Schumacher
2018-03-10[vcpkg] Add VCPKG_DEFAULT_VS_PATH environment variableRobert Schumacher
2018-02-26[vcpkg] Initial commit of experimental compressed binary archiving behind a flagRobert Schumacher
2018-02-26[vcpkg] Refactor VcpkgCmdArguments to not utilize global stateRobert Schumacher
2018-02-21[vcpkg] Enable metrics on linuxRobert Schumacher
2018-01-23Use empty() instead of comparing with size()Alexander Karatarakis
2018-01-23Fix #include casingAlexander Karatarakis
2017-12-23Revert "clang-tidy fixes"Robert Schumacher
This reverts commit 2d0a76370ead152896411d17aa19934235b93d1c.
2017-12-22clang-tidy fixesAlexander Karatarakis
2017-12-01[vcpkg-contact-survey] Add monthly survey promptRobert Schumacher
2017-11-30[vcpkg] Add --x-xunit internal command to print installation results in a ↵Robert Schumacher
VSTS friendly format.
2017-11-13[vcpkg-metrics] Replace SQM with MAC hash.Robert Schumacher
2017-10-30Using CP_UTF8 macro instead of magic numbers.sdcb
2017-10-16Don't warn for outdated vcpkg if command is autocompleteAlexander Karatarakis
2017-10-16[vcpkg] Push use of UTF-16 to only around Win32 call boundaries.Robert Schumacher
2017-10-14[vcpkg] Prefer the current vcpkg directory over the one the vcpkg.exe is ↵Alexander Karatarakis
located in
2017-10-13[vcpkg] Re-layout all files using new organization scheme.Robert Schumacher
All filenames and directories are lowercase. Use dots for namespace separation.
2017-10-02Suppress 4768 warning from shlobj.hAlexander Karatarakis
2017-09-14Version check is now performed before running any commandAlexander Karatarakis
(except vcpkg version/hash/contact)
2017-09-13[vcpkg.cpp] Naming schemeAlexander Karatarakis
2017-08-28Add missing const keywordsAlexander Karatarakis
2017-08-25[vcpkg] Set codepage to 65001, duplicate of #1682, fixes #1660 #1631 #1644Robert Schumacher
2017-08-25[vcpkg] use UTF-8 for console input/outputMikhail Paulyshka
2017-08-25[vcpkg] Trap Ctrl-C, enable thread safety for global data structuresRobert Schumacher
2017-08-24Run cleanup before exiting instead of calling atexitAlexander Karatarakis
2017-08-24Introduce GlobalState structAlexander Karatarakis
2017-06-06ExpectedT factory classDaniel Shaw
2017-05-04get_environmental_variable() -> get_environment_variable()Alexander Karatarakis
2017-05-04Rename Strings:: function for utf8/utf16 conversionAlexander Karatarakis
2017-04-30[vcpkg] Remove OptBool in favor of Optional<bool>Robert Schumacher
2017-04-27Run clang-foramt over tests and remaining cpp filesAlexander Karatarakis