aboutsummaryrefslogtreecommitdiff
path: root/toolsrc/src
AgeCommit message (Collapse)Author
2019-08-14Change CMakeLists.txt in toolsrc to allow compiling with llvm toolset (#4572)Alexander Neumann
* llvm warning pessimistic move * warning missing override * warning invalid noreturn. ::TerminateProcess ist not marked as noreturn! * use more modern cmake features instead of adding c++ standard by hand. * Normalize line endings * Fix add_executable() * Fix target commands * Clean up CMakeLists.txt
2019-08-12[vcpkg] Fix the build on VS2015 debug (#7637)nicole mazzuca
The VS2015 standard library requires, in debug mode, a comparison operator on `T × U` and `U × T` to also be a comparison operator on `T × T` and on `U × U`, and so in vcpkg::Install::install_package::intersection_compare, I've added two new `operator()` overloads which take those respectively, on VS2015. Also, `[nodiscard]` was added to somewhere in `vcpkg/base/strings.h`, which gives a warning in VS2015 -- thus, I added the `vcpkg/pragmas.h` include, since that fixes the warning.
2019-08-12drop uneeded parameter from create_binary_control_fileCurtis.Bezault
2019-08-12remove uneeded headerCurtis.Bezault
2019-08-12Fix formatting, hash override, don't move pre_build_infoCurtis.Bezault
2019-08-10remove clever use of std::ignoreNicole Mazzuca
2019-08-10fix two bugs in statusNicole Mazzuca
2019-08-10fix the build on unixNicole Mazzuca
2019-08-10[vcpkg] Fix build under /W4Nicole Mazzuca
I was building under /W3, because CMake hadn't been set up to build under /W4 -- therefore, I didn't see some warnings. We also decided to remove the niebloids and instead break ADL by using `= delete`, since otherwise we get warnings when we define a local variable with the same name as a niebloid. I also removed `status` and `symlink_status` from the `files` header, since it's unnecessary now, and they're just implementation details of `RealFilesystem`. I also removed some existing uses of unqualified `status(path)`, since that no longer compiles. I also added `Filesystem::canonical`, to remove another use of `fs::stdfs` in a function I was already working in.
2019-08-09Add public abi override into the private abiCurtis.Bezault
2019-08-09fix missing abi key mistakeCurtis.Bezault
2019-08-09Actually only override the PUBLIC ABI, not the private oneCurtis.Bezault
2019-08-09Merge branch 'external_file_abi' of github.com:cbezault/vcpkg into ↵Curtis.Bezault
external_file_abi
2019-08-09Change purpose of this PR to just overriding the abiCurtis.Bezault
2019-08-09Merge branch 'master' into external_file_abiCurtis J Bezault
2019-08-09[vcpkg] fix 7616Nicole Mazzuca
There's a bug in `std::experimental::filesystem::status` on libstdc++ -- it incorrectly sets its `error_code` when a file doesn't exist, or when a path doesn't exist. In order to get around this, `error_code` was cleared when the file doesn't exist, but it was not cleared when the path didn't exist. Note: in this case, I say "the file doesn't exist" when, if you look up "a/b/c", "a/b" exists but "c" doesn't. I say "the path doesn't exist" when, if you look up "a/b/c", either "a" or "a/b" doesn't exist.
2019-08-09[vcpkg] Revert accidental removal of powershell-core usage in bb3a9ddb6ec917f54Robert Schumacher
2019-08-09Merge branch 'master' into external_file_abiCurtis J Bezault
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-08-02improve logic expression evaluation (#7508)Phil Christensen
* better logic expression evaluation Improve the logic expression evaluation currently used when filtering dependencies. Biggest improvements: + Allow '|' operator + Support nested '()' + Allow whitespace + Useful error message for malformed expressions Also changed names of types to RawParagraph when that is what the original author was using.
2019-08-02Update tests, and add documentation! (#7506)nicole mazzuca
This PR does the following: * fix tests -- now, they're always built in the CMake scripts, and they work on VS2015 *add a new flag, BUILD_TESTING, which allows one to turn off testing builds * Add documentation for running tests
2019-08-01 - remove trailing \r when parsing response file that might have Windows ↵lukka
line endings; (#7491) - when an option is not recognized (perhaps because it has trailing whitespace characters), print it out enclosed with single quote to delimit and highlight potenatial not printable characters.
2019-07-26[vcpkg] Fix RealFilesystem::remove_all (#7430)nicole mazzuca
* fix remove_all we were attempting to remove READONLY files before this, and so set them to non-READONLY * fix linux/macos support * whee fix vs2015
2019-07-25Make comment betterCurtis.Bezault
2019-07-24convert path to stringCurtis.Bezault
2019-07-24turn path into stringCurtis.Bezault
2019-07-24Use correct typesCurtis.Bezault
2019-07-24Merge branch 'master' into external_file_abiCurtis J Bezault
2019-07-24store fs::path instead of std::stringCurtis.Bezault
2019-07-23only use filenameCurtis.Bezault
2019-07-23move the pre_build_infoCurtis.Bezault
2019-07-23Remove types from this PRCurtis.Bezault
2019-07-23remove accidental commentCurtis.Bezault
2019-07-23fix conditionCurtis.Bezault
2019-07-23Merge build.cppCurtis.Bezault
2019-07-23Prompt rebuild if external hash changesCurtis.Bezault
2019-07-23add external file hashes to the binary paragraphCurtis.Bezault
2019-07-22fix some of the awful mix of macrosNicole Mazzuca
2019-07-19allow tests to run on older standard librariesNicole Mazzuca
2019-07-19switch to new test frameworkNicole Mazzuca
2019-07-19Merge branch 'trunk' into parallel-file-opsNicole Mazzuca
2019-07-19Merge branch 'master' into external_file_abiCurtis J Bezault
2019-07-19[vcpkg] Portfile Settings (#7292)Curtis J Bezault
2019-07-18Rewrite the tests! now they're cross-platform! (#7315)nicole mazzuca
* begin exploratory rewriting of tests * continue working on tests * more test work! holy butts vcpkg-tests/plan.cpp was a bunch of work * finish writing new tests - [x] write catch2 tests - [ ] rewrite/at least delete the VS project files - [ ] document running tests * Fix tests to work on WSL, rewrite test vcxproj still need to test on macOS also, delete tests.pch.h * Condense add_test calls
2019-07-18clang-format all the thingsNicole Mazzuca
2019-07-18Better error message when VCPKG_ROOT is independently defined (#7229)Dan Nissenbaum
2019-07-18add needs_rebuild, should probably be moved to somewhere elseCurtis.Bezault
2019-07-18[vcpkg] Environment Variable Passthrough (#7290)Curtis J Bezault
* use additional env param * remove partials * remove change to linux triplet * Fix some issues that vicroms pointed out * whitespace change
2019-07-17tests.files.cpp:create_directory_tree -- change magic numbers to namesNicole Mazzuca
2019-07-17Add type fieldCurtis.Bezault