Commit Graph

638 Commits

Author SHA1 Message Date
Alexander Karatarakis
1b0682a39e [vcpkg] Significantly reduce usage of powershell. Reduce console font switching bug 2018-05-15 23:27:14 -07:00
Robert Schumacher
8f0ebdf8d5 [vcpkg] Remove utf16 usage from non-Windows 2018-05-03 15:03:35 -07:00
Robert Schumacher
a9d989ec05 [vcpkg-integrate-install] Add vcpkg.path.txt to localappdata for more generic consumption. 2018-04-28 14:17:52 -07:00
Alexander Karatarakis
9167511656 Fix #3170 issue with /permissive- 2018-04-25 18:15:54 -07:00
Alexander Karatarakis
f6530368eb Remove noexcept from BinaryParagraph() 2018-04-25 00:19:27 -07:00
Robert Schumacher
a2aeb2f194 [vcpkg] Mark many types noexcept. Make certain code patterns more transparent to /analyze. #ifdef-out unused code on non-windows. 2018-04-12 00:47:17 -07:00
Robert Schumacher
8da8f3e5b3 [vcpkg] Rework dependencies.cpp to improve type safety and error detection 2018-04-11 23:48:32 -07:00
Alexander Karatarakis
77338ee0df Remove more unused #include directives 2018-04-07 04:55:37 -07:00
Alexander Karatarakis
402bbbc1e2 [Checks] Take parameter by ref 2018-04-06 19:31:20 -07:00
Alexander Karatarakis
80f16f769e Use Cache class 2018-04-06 17:26:59 -07:00
Alexander Karatarakis
1bfb01cfee [vcpkg hash] Add sanity checking 2018-04-06 17:26:58 -07:00
Alexander Karatarakis
e712308554 [vcpkg hash] Add string hashing (as opposed to file hashing) 2018-04-06 17:24:46 -07:00
Alexander Karatarakis
870fa61e01 [vcpkg hash] Don't use cmake for non-windows hashes. Use shasum instead 2018-04-06 17:24:46 -07:00
Alexander Karatarakis
0c0f68939e Introduce "vcpkg fetch" 2018-04-06 17:24:46 -07:00
Jacob Zhong
892f7052f9 [vcpkg] Add support of external downloader aria2 2018-04-02 18:48:14 -07:00
Alexander Karatarakis
adccba04db [vcpkg.exe] Look for vcpkgTools in downloads/tools/$toolname-$toolversion
(only non-windows currently)
2018-04-02 18:47:37 -07:00
Alexander Karatarakis
3a91b0072d Fix name 2018-03-24 01:28:24 -07:00
Alexander Karatarakis
69dfad795f Introduce Maps::transform_values() 2018-03-24 01:27:40 -07:00
Robert Schumacher
1f62b32641 [vcpkg] Sort abi tags to ensure stability 2018-03-22 10:01:12 -07:00
Alexander Karatarakis
d45954a96b System::get_program_files() now returns Optional<fs::path> 2018-03-21 18:21:30 -07:00
Robert Schumacher
d80dd5cbc7 [vcpkg] Handle failure to store archive 2018-03-20 19:14:20 -07:00
Alexander Karatarakis
ab7985a34b [vcpkg-hash] Use BCrypt on Windows 2018-03-20 19:12:35 -07:00
Robert Schumacher
eab1d5c531 [vcpkg-ci] Do not rebuild libraries that were previously successful or failed 2018-03-20 19:12:35 -07:00
Jacob Zhong
d253123055 Add options and documentation for env command (#3007)
* [vcpkg] Add options and documentation for env command

* [vcpkg-env] Cleanup. Add tools/*.
2018-03-18 05:24:19 -07:00
Robert Schumacher
90c4b8dbb7 [vcpkg] Further refactoring inside build_package() 2018-03-14 09:58:23 -07:00
Robert Schumacher
3c7997215b [vcpkg] Improve default triplets for non-windows 2018-03-13 11:06:22 -07:00
Robert Schumacher
f72b46690a [vcpkg] Silence warnings on recent clang 2018-03-13 06:25:59 -07:00
Robert Schumacher
81b9ab1291 [vcpkg] Refactor do_build_package and add archive tombstoning 2018-03-13 04:26:00 -07:00
Robert Schumacher
6670b87c18 [vcpkg] Add VCPKG_DEFAULT_VS_PATH environment variable 2018-03-10 14:19:51 -08:00
Robert Schumacher
bad51b0462 [vcpkg] Improve handling of external toolchain files 2018-03-02 09:25:32 -08:00
Robert Schumacher
bbbbfb9e79 [vcpkg] Add tests for create_export_plan and remove unused arguments 2018-02-28 12:15:16 -08:00
Robert Schumacher
ef4febc7ef [vcpkg] Fix exporting packages with features-depending-on-features 2018-02-28 11:55:29 -08:00
Robert Schumacher
25b8f25dad [vcpkg] Initial commit of experimental compressed binary archiving behind a flag 2018-02-26 18:38:25 -08:00
Robert Schumacher
a2e6ffd86d [vcpkg] Refactor VcpkgCmdArguments to not utilize global state 2018-02-26 18:22:17 -08:00
Robert Schumacher
e2980c8f91 [vcpkg] Add 7zip internal tool 2018-02-26 18:18:43 -08:00
Robert Schumacher
8b97ae2dc1 [vcpkg] Fix "just-in-time" requirements calculation 2018-02-25 10:40:28 -08:00
Robert Schumacher
0ef0300b8e [vcpkg] Enable metrics on linux 2018-02-21 23:01:54 -08:00
Robert Schumacher
222fa36012 [vcpkg] Fixup previous commit 2018-02-21 22:21:19 -08:00
Robert Schumacher
65e241cf8b [vcpkg] Add non-throwing implementation of write_contents() 2018-02-21 22:18:43 -08:00
Alexander Karatarakis
35e19d5926 Improve error message when we have an error code 2018-02-21 19:35:12 -08:00
Alexander Karatarakis
494f3002bf Add internal option to clean packages\<port> after the build 2018-02-21 15:32:20 -08:00
Robert Schumacher
adb0930bc5 [vcpkg-metrics] Adjust reporting of build times 2018-02-20 18:02:09 -08:00
Alexander Karatarakis
9909299039 Expected::check_exit() now always shows line_info if it fails 2018-02-20 16:58:24 -08:00
Robert Schumacher
12f19c7a30 [vcpkg] Remove create_install_plan in favor of create_feature_install_plan 2018-02-19 07:11:30 -08:00
Robert Schumacher
7ed5eb18ec
Merge pull request #2817 from Squareys/fix-build-with-feature-deps
* [vcpkg] Add find/find_installed/is_installed for FeatureSpec

Signed-off-by: Squareys <squareys@googlemail.com>

* [vcpkg] Fix build command for packages that depend of features

Signed-off-by: Squareys <squareys@googlemail.com>
2018-02-16 21:32:07 -08:00
Robert Schumacher
452c8ba1ff [vcpkg] Avoid using s::status_known() -- it does not do what you think it does 2018-02-16 15:40:22 -08:00
Squareys
f1ce125a28 [vcpkg] Fix build command for packages that depend of features
Signed-off-by: Squareys <squareys@googlemail.com>
2018-02-16 14:27:59 +01:00
Squareys
16faed6785 [vcpkg] Add find/find_installed/is_installed for FeatureSpec
Signed-off-by: Squareys <squareys@googlemail.com>
2018-02-16 14:27:59 +01:00
Jonathan Hale
425d07ef7f [vcpkg] Implement Default-Features (#2697)
* [vcpkg] Add Default-Feature to make_status_pgh utility function

Signed-off-by: Squareys <squareys@googlemail.com>

* [vcpkg] Parse "Default-Features" as dependencies and add test for parsing

Signed-off-by: Squareys <squareys@googlemail.com>

* [vcpkg] Document some methods and structures

Signed-off-by: Squareys <squareys@googlemail.com>

* [vcpkg] Add install_default_features_test

Signed-off-by: Squareys <squareys@googlemail.com>

* [vcpkg] Change install_default_features_test to not have preinstalled package

* [vcpkg] Test install behaviour of default features

Signed-off-by: Squareys <squareys@googlemail.com>

* [vcpkg] Implement default features

Signed-off-by: Squareys <squareys@googlemail.com>

* [vcpkg] Test default features upgrade behavior

Signed-off-by: Squareys <squareys@googlemail.com>

* [vcpkg] Implement upgrade with default features

Signed-off-by: Squareys <squareys@googlemail.com>

* [vcpkg] Test behaviour of upgrade with default features in dependencies

Signed-off-by: Squareys <squareys@googlemail.com>

* [vcpkg] Make upgrade install new default features

Signed-off-by: Squareys <squareys@googlemail.com>

* [vcpkg] Move collecting of packages for which to prevent defaults

Further down the line to create_feature_install_plan.

Signed-off-by: Squareys <squareys@googlemail.com>

* [vcpkg] Fix core missing from default features and potential inf loop

Signed-off-by: Squareys <squareys@googlemail.com>

* [vcpkg] Rename, fix and move some tests

Signed-off-by: Squareys <squareys@googlemail.com>
2018-02-14 16:18:25 -08:00
Robert Schumacher
41a0eee5d1 [vcpkg] Add missing include. Fixes #2700. 2018-02-01 10:44:29 -08:00
atkawa7
75f19a58ba [vcpkg] Add string constructor (#2429)
* [vcpkg] Add string constructor

* Update versiont.h
2018-01-26 14:44:07 -08:00
Alexander Karatarakis
639f993798 Add missing method const 2018-01-23 15:38:08 -08:00
Robert Schumacher
130fa279f9 [vcpkg] Revert making remove_package() take status_db by const
The in-memory database must be updated to communicate to future actions that they need to look at this package's files (or not)
2018-01-23 14:14:01 -08:00
Robert Schumacher
3beeb94ec5 [vcpkg] Use InstalledPackageView instead of unsorted raw vectors 2018-01-23 06:50:24 -08:00
Robert Schumacher
78d3302940 [vcpkg] Remove overload of StatusParagraphs::find_installed() 2018-01-23 02:36:39 -08:00
Robert Schumacher
ff8a2d1726 [vcpkg] Remove AnyParagraph and InstallPlanType::INSTALL 2018-01-23 02:21:47 -08:00
Robert Schumacher
10d712ed01 [vcpkg] Added StatusParagraph::is_installed() 2018-01-23 01:56:25 -08:00
Robert Schumacher
3e42585f47 [vcpkg] Span usage improvements. 2018-01-23 01:54:31 -08:00
Robert Schumacher
0682bb734d [vcpkg] Store Optional<&> instead of Optional<*> 2018-01-22 23:40:41 -08:00
Alexander Karatarakis
f563d2b588 Use StringLiteral and constexpr for options/switches 2018-01-17 19:39:46 -08:00
Alexander Karatarakis
458dafc812 Add new struct: StringLiteral 2018-01-17 19:38:17 -08:00
Jacek Blaszczynski
a28138eb9e Add preliminary support for arm-windows and arm64-windows triplets (#2371)
* Add preliminary support for arm-windows and arm64-windows triplets

Visual Studio 15.4 shipped with new VC tools targeting arm and arm64
for desktop. This change allows for recognition and usage of new
triplets supporting arm and arm64 Windows desktop and server targets.

* Remove unnecessary changes

* Part 2

* Part 3

* Make detection of Arm64 _VCPKG_TARGET_ARCHITECTURE precise

* Enforce usage of Visual Studio CMake generatorfor arm and temporarily arm64 targets

* Address code review feedback, clean libjpeg-turbo port.cmake

* [libjpeg-turbo][tiff] Reduce changes to existing libraries.

* [vcpkg-cmake] Simplify toolchain selection logic and improve comments
2018-01-03 17:19:52 -06:00
Alexander Karatarakis
e48a655df0
Merge pull request #2431 from procxx/certutil_replace
[vcpkg-hash] Use cmake built-in hash commands instead of certutil.exe call
2018-01-02 23:23:41 +02:00
Robert Schumacher
332414111d Revert "clang-tidy fixes"
This reverts commit 2d0a76370e.
2017-12-23 07:29:12 -08:00
Stanislav Ershov
7cc7c28e20 [vcpkg-hash] Replace certutil.exe with cmake built-in hash commands 2017-12-23 17:26:05 +03:00
Alexander Karatarakis
2d0a76370e clang-tidy fixes 2017-12-22 16:52:11 -08:00
Robert Schumacher
5ac69dd02b [vcpkg] Improve error message upon graph cycle detected. 2017-12-18 23:00:11 -08:00
Robert Schumacher
63a23cf0ca [vcpkg] Fix regressions in WSL build. 2017-12-14 14:31:28 -08:00
Robert Schumacher
7a2120dba1 [vcpkg] Revert revert of #2369. 2017-12-13 11:02:04 -08:00
Robert Schumacher
eb1a7b099e [vcpkg] Fix regressions introduced with update command. Fixed issue with upgrade where it assumed downloads were not allowed. 2017-12-13 05:43:00 -08:00
Robert Schumacher
7a6ffdc75c Revert "[vcpkg-upgrade] Initial commit of upgrade command."
This reverts commit 803347a0c5.
2017-12-13 04:48:13 -08:00
Robert Schumacher
e6b16165e7 Revert "[vcpkg-upgrade] Accept list of packages to specifically upgrade."
This reverts commit d88563cd09.
2017-12-13 04:47:59 -08:00
Robert Schumacher
d88563cd09 [vcpkg-upgrade] Accept list of packages to specifically upgrade. 2017-12-13 03:01:50 -08:00
Robert Schumacher
803347a0c5 [vcpkg-upgrade] Initial commit of upgrade command. 2017-12-13 02:22:52 -08:00
Alexander Karatarakis
d540915a3a Improve error message on invalid dependency of package 2017-12-06 14:42:17 -08:00
Robert Schumacher
71f8958a06 [vcpkg-contact-survey] Add monthly survey prompt 2017-12-01 16:08:09 -08:00
Robert Schumacher
d38d4a7540 [vcpkg] Add --x-xunit internal command to print installation results in a VSTS friendly format. 2017-11-30 08:09:09 -08:00
Alexander Karatarakis
2af7fe8690 Add System::powershell_execute() 2017-11-26 02:49:23 -08:00
Robert Schumacher
5335d17f53 [vcpkg] Initial experimental support for VCPKG_BUILD_TYPE release 2017-11-25 15:25:18 -08:00
Robert Schumacher
141f10801c [vcpkg] Improve external toolchain handling. 2017-11-25 11:50:31 -08:00
Robert Schumacher
f7c10858f7
Merge pull request #1752 from martin-s/patch-vs2013
Added support for VS2013 build chain tools.
2017-11-21 21:47:51 -08:00
Alexander Karatarakis
786d53c002 Fix vcpkg integrate install for unicode usernames 2017-11-20 19:15:47 -08:00
Alexander Karatarakis
1313a418cf Introduce PowershellParameter to add '' to parameter values.
Also place that and CMakeVariable in System.h
2017-11-20 18:17:24 -08:00
Robert Schumacher
468e9e70e6 [vcpkg] Refactor to remove Build::BuildResults -- too similar to ExtendedBuildResult 2017-11-16 19:29:32 -08:00
Robert Schumacher
34b4db1fb4 [vcpkg] Output autodetected CMake usage information after install. 2017-11-16 17:42:15 -08:00
Robert Schumacher
ca1aa816d2 [vcpkg-ci] Clean up buildtrees during build to avoid consuming 200+ Gb of SSD 2017-11-14 15:27:12 -08:00
Robert Schumacher
71289ee5e8 [vcpkg-contact] Add --survey so users can easily provide feedback 2017-11-13 23:06:04 -08:00
Robert Schumacher
415789b42e [vcpkg-metrics] Replace SQM with MAC hash. 2017-11-13 21:49:11 -08:00
Robert Schumacher
6ece1871b1 [vcpkg] Simplify code -- Maps::maybe_find is not very useful compared to iterators. 2017-11-11 22:10:38 -08:00
Robert Schumacher
e4d38bb874 [vcpkg-ci] Fix crash when not passed --exclude.
Added Util::Maps::maybe_find.
Added Optional<T&>.
2017-11-11 21:45:37 -08:00
Robert Schumacher
ecd21d6cb4 [vcpkg-tests] Use PCH.
[vcpkg-update] Fix feature packages with update command.
Fixes #2003.
2017-11-11 19:47:56 -08:00
martin-s
d5a7da6bcb Merge branch 'master' of https://github.com/Microsoft/vcpkg into patch-vs2013
# Conflicts:
#	scripts/cmake/vcpkg_configure_cmake.cmake
#	toolsrc/src/vcpkg/vcpkgpaths.cpp
2017-11-05 19:13:16 +01:00
Alexander Karatarakis
61c0a33784 Improve error messages around calling powershell scripts 2017-11-04 16:40:23 -07:00
Robert Schumacher
2feea0828b [vcpkg] Improve vcpkg help -- now has per-command help! 2017-11-02 18:17:21 -07:00
Robert Schumacher
6a91d1ece1 [vcpkg] Refactor argument parsing to use common code paths. 2017-11-02 15:20:42 -07:00
Robert Schumacher
a705df80b0 [vcpkg] Fix bug where packages with uninstalled features appear to be uninstalled. 2017-10-31 03:47:35 -07:00
Robert Schumacher
925fab565a [vcpkg] --head should only apply to USER_REQUESTED packages. 2017-10-31 03:04:28 -07:00
Robert Schumacher
33fc44a0e3 [vcpkg] Add optional Abi field to BinaryParagraph for future use. 2017-10-31 02:13:49 -07:00
Robert Schumacher
5f42214207 [vcpkg] Enable pkg[*] as alias for all features. 2017-10-30 23:06:04 -07:00
Alexander Karatarakis
79ebd26605 Remove VcpkgCmdArguments.check_and_get_optional_command_arguments() overload
Also, use Util::Sets::contains() where possible.
2017-10-26 19:17:12 -07:00