1775 Commits

Author SHA1 Message Date
Billy Robert O'Neal III
347d8ef530 Implement a warning when running vcpkg inside a developer command prompt if the set of packages to install all target a different architecture than the prompt. 2020-03-10 23:44:48 -07:00
Robert Schumacher
60cd1202d9 [vcpkg] Introduce Job Objects to improve ctrl-c performance on Windows 2020-03-10 10:27:36 -07:00
shihaonan369
264982215c
[vcpkg-export-nuget] Fix a import bug of nuget package, give priority to nuget package to set $(VcpkgRoot). (#6214)
* fix bug that caused exported nuget package import failure.

* Give priority to nuget package to set $(VcpkgRoot).

* [vcpkg] Remove trailing whitespace

Co-authored-by: 施浩男 <shihaonan@zhongli360.com>
Co-authored-by: Robert Schumacher <roschuma@microsoft.com>
2020-03-10 10:05:39 -07:00
miseri
2eed725614
[vcpkg] Added command line switch --all-installed to allow exporting of all packages without needing to specify individual packages (#10304)
* Added command line switch --all-installed to allow exporting of all packages without needing to specify individual packages

* Changed --all-installed to --x-all-installed https://github.com/microsoft/vcpkg/pull/10304

* [vcpkg] Clang-format export.cpp

Co-authored-by: Robert Schumacher <roschuma@microsoft.com>
2020-03-10 10:03:23 -07:00
Robert Schumacher
6b55c62144 Merge remote-tracking branch 'origin/master' into HEAD 2020-03-09 09:19:05 -07:00
Jack·Boos·Yu
8241578dbf
Fix log write failure when installing port for the first time (#10287) 2020-03-03 09:37:49 -08:00
Robert Schumacher
f6d52648ec
[vcpkg] Fix issue #9916; vcpkg upgrade did not load_tag_vars() (#10202) 2020-02-24 14:38:51 -08:00
Victor Romero
ef60f1d9b9
Fix build for VS2015 (#10126)
* Add missing constructors for TexRowCol required by VS2015

* Make TextRowCol() constexpr and noexcept
2020-02-19 16:51:09 -08:00
Robert Schumacher
0ebb462870
[vcpkg] Record output from build process into log file (#10063) 2020-02-13 21:11:01 -08:00
Robert Schumacher
e21400c7ca [vcpkg] Fix VS2015 compile 2020-02-12 15:50:39 -08:00
Victor Romero
b9273daa20 Add binarycaching.(h|cpp) to project files 2020-02-12 14:25:47 -08:00
Robert Schumacher
3d841c9b6a [vcpkg] Compute all ABIs upfront instead of during build_package() 2020-02-11 23:52:56 -08:00
Robert Schumacher
b9942d0744 [vcpkg] Extract binary caching functionality into separate interface 2020-02-11 18:41:03 -08:00
Robert Schumacher
411b4cc8a0 [vcpkg] Remove superfluous BuildPackageConfig struct (#9997)
BuildPackageConfig held essentially the same information as InstallPlanAction, so deduplicate
2020-02-09 18:55:49 -08:00
Robert Schumacher
a33044c186
[vcpkg] Track parser row/col state in Paragraph (renamed from RawParagraph) (#9987) 2020-02-09 14:50:26 -08:00
Robert Schumacher
f7fb56decd [vcpkg] Use CreateProcess on Windows. Improve EnvVars manipulation and handling. (#9897)
* [vcpkg] Rewrite process spawning on windows to always use CreateProcess, enabling better environment handling

* [vcpkg] Use environment cache to avoid calling vcvars multiple times

* [vcpkg] Increase buffer size while computing hashes

* [vcpkg] Remove unneeded cmd.exe wrapper process on all CreateProcess calls

* [vcpkg] Fix .vcxproj{,.filters}

* [vcpkg] Upgrade Ctrl-C state machine to handle multiple background processes.

* [vcpkg] Fix regression while launching metrics: 'start' can't be passed directly to CreateProcessW

* [vcpkg] Fix typo on non-Windows

* [vcpkg] Fix various uses of >NUL across the code

* [vcpkg] Fix various uses of >NUL across the code
2020-02-08 22:45:36 -08:00
Robert Schumacher
8db6db5dac
[vcpkg] Further parser improvements (#9895)
* [vcpkg] Consolidate several internal parsers together (packagespecs + logicexpression + control) and enhance error messages

* [vcpkg] Migrate Build-Depends parsing to new framework

* [vcpkg] Fix tests. Re-enable underscores in feature names due to libwebp[vwebp_sdl] -- todo: rename this feature and remove underscores.
2020-02-07 11:24:35 -08:00
Robert Schumacher
5affb590fd
Merge pull request #9901 from Neumann-A/skip_dumpbin
[vcpkg] Add policy VCPKG_POLICY_SKIP_DUMPBIN_CHECKS
2020-02-06 15:41:38 -08:00
Robert Schumacher
5162592a3a [vcpkg] Improve error messages when failing to find a backing port 2020-02-06 14:40:28 -08:00
Alexander Neumann
d12f839d2e
[vcpkg] fix missing " around path include (#9912)
* fix missing " around path

* Update VERSION.txt

* [vcpkg] Add quotes to include() in generated dep info file

Co-authored-by: Robert Schumacher <roschuma@microsoft.com>
2020-02-05 11:23:36 -08:00
Alexander Neumann
877ebc4324
Move " to correct position
and change copyright copy to use configure_file
2020-02-05 08:59:05 +01:00
Alexander Neumann
9298dec358
rename string variable to NAME_SKIP_DUMPBIN_CHECKS 2020-02-04 20:36:54 +01:00
Alexander Neumann
bd8c07217a [vcpkg] Add skip dumpbin checks
and correct some cmake advices.
Paths should always be handled with "${PATH}" due to possible spaces
2020-02-04 10:58:38 +01:00
Phil Christensen
e62d136128
[vcpkg] Add Supports: field. Use contents of triplets instead of names for dependency resolution. (#8601)
* remove unfinished "supports" tag

* extract "supports" from control files
But do nothing with the value

* Start `Supports` documentation

* Use Supports in a bunch of control files

I only tried matching the already existing logic in the portfile.cmake.

* Cmake var provider (#8)

* Cmake var provider (#9)

* fix windows build (#10)

* Add missing files to build

* Fix test (#11)

* adding hooks for cmake variables in expressions

* Adding hooks for 'supports' in CI test

* Fix test (#12)

* Add overrides to evaluation environment

* use "supported" tag in CI testing

* cleanup comment

* Fix issues with PR

* [var_provider] Get library linkage variables from triplet

* Fix compilation errors in tests

* Add unimplemented functions

* Fix unit tests part 1

* Fix issue when buildtrees dir does not exist

* Change binary output hash

* Fix handling of * feature

* Add core feature when using *

* Do not add Default-Features when installing 'core'

* [vcpkg] WIP. 6 failing tests.

* [vcpkg] WIP. 1 failing tests.

* [vcpkg] WIP. 0 failing tests.

* [vcpkg] Removed 'remove_graph'. 0 failing tests.

* [vcpkg] Removed 'install_graph'. 0 failing tests.

* [vcpkg] Remove AnyAction; replace with ActionPlan

* [vcpkg] Minor cleanup.

* [vcpkg][z3][qt5-connectivity][qt5-purchasing] Improve error messages while parsing. Fix a few trivial port issues.

* [vcpkg] Work around ICE with MSVC v140

* [vcpkg] Add purge on fail to decompress for CI

* [vcpkg] Fix parsing of nested parentheses in qualifiers

* [vcpkg] Fix Linux builds (explicit qualification in declaration)

* [vcpkg] Fix Build-Depends implying default features. Fix qualified dependencies regression.

* [mmx] Add to skip list and full rebuild -- mmx causes problems by installing 'sched.h'

* [libpqxx][mqtt-cpp] Prevent installing include/CMakeLists.txt

* [cppitertools] Fix installed include namespace (should be include/cppitertools)

* [libsoundio] Move headers into soundio/ subdirectory as per original cmake

* [ci.baseline] Temporarily skip charls due to conflict with dcmtk

* [vcpkg] Add restricted include files post build check -- bump global abi version

* [libsoundio] Hotfix stray line in portfile

* [vcpkg] Fix regression: CMake information was not being displayed for build-and-install actions

* [jsonnet] Fix installation of internal headers; use system nlohmann-json

* [grpc][upb] Teach grpc to use packaged upb. Add find_package(upb). Remove inappropriate upb features.

* [zfp] Move problematic 'include/bitstream.h' to 'include/zfp/bitstream.h'

* [x265] Bump control version to trigger rebuild after zfp conflict

* [akali] Disable parallel configure

* [dirent][dlfcn-win32][getopt-win32][pthreads] Grandfather into VCPKG_POLICY_ALLOW_RESTRICTED_HEADERS

* [ci.baseline] Update baseline for improved upb support

* [tgui] Disable parallel configure

* [libiconv] Enable VCPKG_POLICY_ALLOW_RESTRICTED_HEADERS

* [aws-sdk-cpp] Disable parallel configure

* [vcpkg] Implement policy VCPKG_POLICY_ALLOW_RESTRICTED_HEADERS

* [aws-sdk-cpp] Fix amount of escaping semicolons -- Note: I do not know the root cause requiring this change

* [libodb-sqlite] Fix configuring into source directory

* [gettext] Grandfather into VCPKG_POLICY_ALLOW_RESTRICTED_HEADERS

* [libodb] DISABLE_PARALLEL_CONFIGURE

* [vcpkg] Add 'config.h' and 'local.h' to restricted header list

* [mcpp] Remove unused and problematic include 'config.h' from installed files

* [teemo] Move installed headers into subdirectory to prevent conflicts with x265

* [ci.baseline] Update current OSX. Skip libmesh on all platforms due to heavy conflicts.

* [vcpkg] Add 'slice.h' as a restricted header

* [osg] Improve accuracy of dependencies (disable some, add some to Depends)

* [vcpkg] Skip invoking a subprocess for 0 specs in load_tag_vars

* [ci.baseline] Skip mongo-c-driver on osx due to flakiness

* [teemo] Fix incorrect include file read

* [osg] Fix dependency typo: glut -> freeglut

* [vcpkg] Recover some lost performance with the addition of vcpkg_get_tags.

A huge performance cost was loading the triplet files over and over; instead, we splice the sources into a macro and load it once, then just call that macro for each port.
Remove use of hashing because we aren't cross-process-safe anyway (global static will do instead).

* [vcpkg] Change Supports atom 'windows' to include UWP. Improve Supports field documentation.

* [vcpkg] Add docs for VCPKG_ENV_PASSTHROUGH and VCPKG_DEP_INFO_OVERRIDE_VARS

* Fix typo

Co-authored-by: Curtis J Bezault <curtbezault@gmail.com>
Co-authored-by: Victor Romero <romerosanchezv@gmail.com>
Co-authored-by: Robert Schumacher <roschuma@microsoft.com>
2020-02-03 14:22:52 -08:00
Cristian Adam
38b959022c Add support for building with MinGW (#9137)
* Add support for building with MinGW

Tested with MSYS2 MinGW 8.3.0, gcc-mcf.lhmouse MinGW 9.2.1,
and StephanTLavavej/mingw-distro!

* Add MinGW toolchain

From your MinGW configured shell you could just use vcpkg to
configure packages.

An x64-mingw triplet would look like:
```
set(VCPKG_TARGET_ARCHITECTURE x64)
set(VCPKG_CRT_LINKAGE dynamic)
set(VCPKG_LIBRARY_LINKAGE static)
set(VCPKG_ENV_PASSTHROUGH PATH)

set(VCPKG_CMAKE_SYSTEM_NAME MinGW)
```

* Add MinGW community tripplets

x64 tested with https://github.com/StephanTLavavej/mingw-distro
x86, arm64, arm tested with https://github.com/mstorsjo/llvm-mingw
2020-01-17 15:36:08 -08:00
Victor Romero
f56645c3fd
Community Triplets 🤝 (#7976)
* Move untested triplets to Community Triplets

* Document community triplets

* Load community triplets by default and alert when using one

* [triplets] Merge documentation of community triplets

* Bump version
2020-01-17 14:21:19 -08:00
Kristof
24a97b16e7 [toolsrc] Added missing @ to FATAL_ERROR message (#9720)
To install a specific version of a package via homebrew, an `@` symbol must be placed in-between the package name and its version.
Added missing symbol to `toolsrc/CMakeLists.txt`

See homebrew console output for reference:
```
Kristofs-Mac-Pro:vcpkg kristofdaja$ brew search gcc
==> Formulae
gcc                     gcc@5                   gcc@7                   x86_64-elf-gcc
gcc@4.9                 gcc@6                   gcc@8
```
2020-01-16 15:11:27 -08:00
xabbudm
e3dfd4a9fa [VCPKG] WinHTTPOption for company Proxy not correctly taken into account (#9372)
* fixes to get vcpkg up and running when behind corporate proxy

* clean up of code to check if HTTP_PROXY environment variable is set

*  fixed compiler errors for non win32 systems

* [vcpkg] Simplify HTTPS_PROXY code for WinHTTP

Co-authored-by: Robert Schumacher <roschuma@microsoft.com>
2020-01-16 13:56:28 -08:00
Darrell
28eee51adb Minor edit to help message for cli depend-info option. Fix for #9534. (#9536) 2020-01-13 16:57:03 -08:00
martin-s
299c7c730c Introduce new policy to skip post verification of dll exports (#9642)
* - Introduce new policy to skip post verification of dll exports (see issue #9641).

* - Fixed line endings.
2020-01-13 16:31:58 -08:00
Maher Jendoubi
891a840ffa Contributing: Fix a typo (#9566) 2020-01-09 14:31:48 -08:00
Curtis J Bezault
7b61b7b515 Allow ARM64 to build x86 things (#9578) 2020-01-09 14:27:03 -08:00
dpoliarush
37265f7a45 [vcpkg] Removed unused template function. (#9287) 2019-12-20 17:26:40 -08:00
Robert Schumacher
cda348b6a3
Merge pull request #9080 from dan-shaw/telemetry-update
[vcpkg] update telemetry
2019-11-22 16:08:34 -08:00
dan-shaw
0a0440c1a8 update telemetry 2019-11-22 15:07:00 -08:00
Robert Schumacher
018c265d71 [vcpkg] Fix build breaks and run clang-format 2019-11-22 10:33:45 -08:00
Robert Schumacher
45f4b820e5
Merge branch 'master' into vcpkg_nuget 2019-11-22 09:47:40 -08:00
fradav
483257fbfb Update to clang 9.* (removed libc++fs) (#8924) 2019-11-21 17:11:57 -08:00
dan-shaw
552296a741 [vcpkg] update telemetry 2019-11-14 13:12:36 -08:00
Sergey Zolotarev
78c0fd26c4 Fix compile error in Visual Studio 2017 15.1 2019-10-17 15:23:15 +06:00
Joel Pelaez Jorge
db3e74fa9c Fix CMake checks for Apple Clang 11.0 on macOS 10.15 (#8580)
* Fix CMake checks for Apple Clang 11.0 on macOS 10.15

* Use clang++ instance clang if allowAppleClang is enabled
2019-10-14 16:04:05 -07:00
Chris-SG
9f26ae8bf0 Find default for text/plain on Linux and Windows (#567) (#8435)
* Find default for text/plain on machines with xdg (#567)

* Add unicode aware detection of text/plain on windows
2019-10-07 21:00:59 -07:00
Phil Christensen
2f4cb2d5be
[CI system] Add features to test result xml (#8342)
* Add features to test result xml
2019-09-26 11:10:26 -07:00
Alexander Neumann
54173e7fe2 Fix #8193 (#8200) 2019-09-17 09:55:47 -07:00
Phoebe
b4a0c8d574 [vcpkg] Continue on malformed paths in PATH (#8129)
Previously vcpkg would exit on malformed paths. We now will continue and ignore the malformed path.
2019-09-17 09:35:50 -07:00
martin-s
191c864927 Fix bug in .vcpkg-root detection that breaks --overlay-triplets (#7954)
* - Added scripts variable to ports file.
- Added check if triplet file is not available (NPE).

* - Fixed line endings.

* Provide location of .vcpkg-root to ports.cmake

* vcpkg sets VCPKG_ROOT_PATH in ports.cmake

* [vcpkg] Fail if VCPKG_ROOT_PATH is not passed from vcpkg.exe

* [vcpkg] Fix vcpkg rooth path

* [vcpkg] Make --x-scripts-root an experimental command
2019-09-12 23:52:52 -07:00
Victor Romero
cb0fc1a5f9
[vcpkg] Fix depend-info command arguments (#8135) 2019-09-11 11:10:31 -07:00
JackBoosY
90c3f80fff fix x-history help desc. (#8101) 2019-09-09 08:53:24 -07:00
Victor Romero
84ba23ad33
[x-history] Prints CONTROL version history of a port 👻 (#7377)
* [port-history] Print port CONTROL version history

* Add commands.porthistory.cpp to VS project

* Get most recent commit for each version

* Apply clang-format

* Fix output format

* Rename command to x-history
2019-09-06 11:35:56 -07:00
Victor Romero
f5c732b40d
Download Mode (#7950)
* [portfile functions] Override execute_process() to accept ALLOW_IN_DOWNLOAD_MODE option

* [vcpkg install] Set VCPKG_DOWNLOAD_MODE when using --only-downloads option

* [vcpkg_find_acquire_program] Allow in Download Mode

* Don't stop when build fails for a package

* Download sources for all packages in dependency graph

* Improve output messages

* Enable acquiring MSYS packages in download mode

* Documentation

* Update documentation

* execute_process() always fails on Download Mode

* Regenerate docs and fix formatting

* Run clang-format

* Use _execute_process on vcpkg_from_<source> helpers

* Fix calls to _execute_process() when not in Download Mode
2019-08-28 13:49:29 -07:00