Commit Graph

600 Commits

Author SHA1 Message Date
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
Alexander Karatarakis 2c9536ce4f [vcpkg ci] Introduce --exclude option 2017-10-26 19:17:12 -07:00
Alexander Karatarakis 8a952743a3 Introduce Util::Sets::contains() 2017-10-26 19:17:12 -07:00
Alexander Karatarakis 23702360ce Merge trim() and trimmed() functions 2017-10-23 16:11:13 -07:00
Alexander Karatarakis 92d1a53215 [LineInfo] Store empty string instead of null in default construction 2017-10-23 16:11:13 -07:00
Alexander Karatarakis 7fb0342b8a [system.h] Naming scheme fixes 2017-10-19 21:35:22 -07:00
Alexander Karatarakis 50ae9eec87 Do not depend on newlines when getting output from powershell 2017-10-19 19:57:58 -07:00
Alexander Karatarakis b1d5d8e8ba Introduce Strings::replace_all() 2017-10-19 19:57:58 -07:00
Alexander Karatarakis ecdfd3c8e3 ci now accepts multiple triplets. Refactoring to accomodate 2017-10-18 19:04:37 -07:00
Alexander Karatarakis 3c4f620dbc `autocomplete` Add autocompletion for `vcpkg integrate` 2017-10-17 02:59:55 -07:00
Alexander Karatarakis 70b458f5d9 Remove Metrics::track_property(std::wstring) 2017-10-16 13:56:05 -07:00
Alexander Karatarakis 61777425db Remove CharType template paramter from Strings::join() 2017-10-16 13:54:38 -07:00
Alexander Karatarakis c797ab4794 Remove Strings::wformat() 2017-10-16 13:52:35 -07:00
Alexander Karatarakis ced047ad78 Remove usages of CWStringView, except in Strings::to_utf8() 2017-10-16 13:50:28 -07:00
Robert Schumacher 7214c3583b [vcpkg] Push use of UTF-16 to only around Win32 call boundaries. 2017-10-16 11:44:04 -07:00
Alexander Karatarakis 798f8a91e4 Introduce Vectors::concatenate() 2017-10-15 23:53:35 -07:00
Alexander Karatarakis b486be5eb3 Introduce VcpkgPaths::get_available_triplets() 2017-10-15 23:24:34 -07:00
martin-s 9c2fa042ee Merge branch 'master' of https://github.com/Microsoft/vcpkg into patch-vs2013
# Conflicts:
#	toolsrc/include/vcpkg/vcpkgpaths.h
#	toolsrc/src/vcpkg/vcpkgpaths.cpp
2017-10-15 02:00:19 +02:00
Robert Schumacher 58fd38c820 [vcpkg-autocomplete] Add edit completion 2017-10-14 02:16:55 -07:00
Robert Schumacher bea4c2ff49 [vcpkg] Begin refactor to use CommandStructure to represent command parsing 2017-10-13 20:58:00 -07:00
Robert Schumacher a790820e8c [vcpkg] Merge from master into refactor-includes 2017-10-13 18:50:12 -07:00
Robert Schumacher e17de99599 [vcpkg] Re-layout all files using new organization scheme.
All filenames and directories are lowercase. Use dots for namespace separation.
2017-10-13 18:37:41 -07:00
Alexander Karatarakis f6a0d78c82 `autocomplete` Rework command, fixing a lot of corner cases in the process 2017-10-13 14:54:31 -07:00
Alexander Karatarakis 3efcc3d377 Fix #1963 (permissive- issue) 2017-10-12 11:45:08 -07:00
Robert Schumacher bb48a94606 Merge pull request #1896 from mariatav/dev/mariatav/autocomplete
Autocomplete: Command to enable tab completion
2017-10-06 14:42:34 -07:00
Alexander Karatarakis f0c23aeb6b Completely rework Visual Studio detection
- Now using vswhere.exe to detect all VS instance (2015 + 2017)
- Default version preference order is now: stable, prerelease, legacy
- Within each preference weight, the latest one is chosen
- findVisualStudioInstallationInstances.ps1 now has a parameter to choose VS instance
2017-10-05 18:29:34 -07:00
Alexander Karatarakis 9a963f7eff Overhaul VS selection. Add triplet option to specify VS instance 2017-10-05 18:27:07 -07:00
Alexander Karatarakis 7f68aa6630 Introduce Util::stable_keep_if() 2017-10-05 18:27:07 -07:00
Robert Schumacher c98db75415 [vcpkg] Refactor out implication in option parsing for export 2017-10-04 16:24:03 -07:00
Robert Schumacher ddbd57f505 [vcpkg] Reformat and fix headers. 2017-10-04 15:58:05 -07:00
Robert Schumacher a34b6ee16e Merge branch 'export-ifw' of https://github.com/podsvirov/vcpkg into podsvirov-export-ifw 2017-10-04 14:14:58 -07:00
Robert Schumacher 63753e86a6 [vcpkg] Split toolset searches based on triplet's specification (don't pick v120 if it's blank). 2017-10-03 16:00:23 -07:00
Robert Schumacher d5705e87c4 Merge branch 'master' into martin-s-patch-vs2013 2017-10-03 15:52:29 -07:00
Robert Schumacher 3838d58804 [vcpkg] Add more operator== to CStringView. Uppercase Span to follow naming convention. 2017-10-03 15:51:24 -07:00
Alexander Karatarakis e25a31eca8 Suppress 4768 warning from shlobj.h 2017-10-02 17:29:11 -07:00
Maria Tavlaki b3e06443ea Create stub autocomplete function 2017-10-02 01:23:55 +03:00
Alexander Karatarakis 2de9f83ff2 Introduce Strings::case_insensitive_ascii_starts_with(); 2017-10-01 13:22:29 -07:00
Alexander Karatarakis 0ccea4f367 [Toolset selection] Use VS2017 vcvarsall for v140 if available 2017-09-27 18:55:09 -07:00
Konstantin Podsvirov c6149fae2f [vcpkg-export-ifw] Usage QtIFW tools
Download and use tools to make repository and installer
2017-09-28 00:21:26 +03:00