aboutsummaryrefslogtreecommitdiff
path: root/toolsrc/src
AgeCommit message (Collapse)Author
2020-02-09[vcpkg] Track parser row/col state in Paragraph (renamed from RawParagraph) ↵Robert Schumacher
(#9987)
2020-02-08[vcpkg] Use CreateProcess on Windows. Improve EnvVars manipulation and ↵Robert Schumacher
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-07[vcpkg] Further parser improvements (#9895)Robert Schumacher
* [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-06Merge pull request #9901 from Neumann-A/skip_dumpbinRobert Schumacher
[vcpkg] Add policy VCPKG_POLICY_SKIP_DUMPBIN_CHECKS
2020-02-06[vcpkg] Improve error messages when failing to find a backing portRobert Schumacher
2020-02-05[vcpkg] fix missing " around path include (#9912)Alexander Neumann
* 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-05Move " to correct positionAlexander Neumann
and change copyright copy to use configure_file
2020-02-04rename string variable to NAME_SKIP_DUMPBIN_CHECKSAlexander Neumann
2020-02-04[vcpkg] Add skip dumpbin checksAlexander Neumann
and correct some cmake advices. Paths should always be handled with "${PATH}" due to possible spaces
2020-02-03[vcpkg] Add Supports: field. Use contents of triplets instead of names for ↵Phil Christensen
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-01-17Add support for building with MinGW (#9137)Cristian Adam
* 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-17Community Triplets 🤝 (#7976)Victor Romero
* 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-16[VCPKG] WinHTTPOption for company Proxy not correctly taken into account (#9372)xabbudm
* 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-13Minor edit to help message for cli depend-info option. Fix for #9534. (#9536)Darrell
2020-01-13Introduce new policy to skip post verification of dll exports (#9642)martin-s
* - Introduce new policy to skip post verification of dll exports (see issue #9641). * - Fixed line endings.
2020-01-09Contributing: Fix a typo (#9566)Maher Jendoubi
2020-01-09Allow ARM64 to build x86 things (#9578)Curtis J Bezault
2019-11-22Merge pull request #9080 from dan-shaw/telemetry-updateRobert Schumacher
[vcpkg] update telemetry
2019-11-22update telemetrydan-shaw
2019-11-22[vcpkg] Fix build breaks and run clang-formatRobert Schumacher
2019-11-22Merge branch 'master' into vcpkg_nugetRobert Schumacher
2019-11-14[vcpkg] update telemetrydan-shaw
2019-10-17Fix compile error in Visual Studio 2017 15.1Sergey Zolotarev
2019-10-07Find default for text/plain on Linux and Windows (#567) (#8435)Chris-SG
* Find default for text/plain on machines with xdg (#567) * Add unicode aware detection of text/plain on windows
2019-09-26[CI system] Add features to test result xml (#8342)Phil Christensen
* Add features to test result xml
2019-09-17Fix #8193 (#8200)Alexander Neumann
2019-09-17[vcpkg] Continue on malformed paths in PATH (#8129)Phoebe
Previously vcpkg would exit on malformed paths. We now will continue and ignore the malformed path.
2019-09-12Fix bug in `.vcpkg-root` detection that breaks `--overlay-triplets` (#7954)martin-s
* - 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-11[vcpkg] Fix depend-info command arguments (#8135)Victor Romero
2019-09-09fix x-history help desc. (#8101)JackBoosY
2019-09-06[x-history] Prints CONTROL version history of a port 👻 (#7377)Victor Romero
* [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-08-28Download Mode (#7950)Victor Romero
* [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-28Revert "[vcpkg install] Enable Download Mode (#7797)" (#7949)Victor Romero
This reverts commit 65d4bc146bf7c1c21989b680497b1f6f9a09c967.
2019-08-28[vcpkg install] Enable Download Mode (#7797)Victor Romero
* [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
2019-08-27[vcpkg] fix bug in StringView::operator== 😱 (#7930)nicole mazzuca
Before this change, `lhs == rhs` missed the check for `lhs.size() == rhs.size()`, and then did a `memcmp` on the buffers up to `lhs.size()`. This means that, if `lhs.size() < rhs.size()`, it would allow two unequal strings to compare equal if, up to `lhs.size()` they are the same; and if `lhs.size() > rhs.size()`, then it would read out of bounds.
2019-08-27[vcpkg] fix list parsing logic and add error messagesPhil Christensen
fix list parsing logic and add error messages
2019-08-26avoid assembling error strings unless there is an errorPhil Christensen
2019-08-26Run clang-format and add more error messagesPhil Christensen
2019-08-26(#7757) [vcpkg] Switch to internal hash algorithms 📜Nicole Mazzuca
On non-Windows platforms, there is no standard way to get the hash of an item -- before this PR, what we did was check for the existence of a few common utility names (shasum, sha1, sha256, sha512), and then call that utility on a file we created containing the contents we wish to hash. This PR adds internal hashers for sha1, sha256, and sha512, and standardizes the interface to allow anyone to implement hashers in the future. These hashers are not extremely optimized, so it's likely that in the future we could get more optimized, but for now we just call out to BCryptHasher on Windows, since it's standard and easy to use (and about 2x faster for sha1 and sha256, and 1.5x faster for sha512). However, they are reasonably fast for being unoptimized. I attempted a few minor optimizations, which actually made the code slower! So as of right now, it's implemented as just a basic conversion of the code on Wikipedia to C++. I have tested these on the standard NIST test vectors (and those test vectors are located in vcpkg-test/hash.cpp).
2019-08-24[vcpkg] Move do_build_package_and_clean_buildtrees() above generating ↵Robert Schumacher
cpkg_abi_info.txt so it will be included in the package. (#7864)
2019-08-23Merge branch 'master' into multi_line_dependsPhil Christensen
2019-08-23clean up list parsing logic and add clear warningsPhil Christensen
2019-08-23(#7798) [vcpkg] Fix the build on FreeBSD 😈Nicole Mazzuca
Add a `#else` line to `toolsrc/src/vcpkg/base/files.cpp`. On Linux and macOS, there are specific ways to copy from file descriptor to file descriptor, but on FreeBSD there isn't (as far as I could tell). This change does a copy using the POSIX standard `read` and `write` calls. (This change was to `RealFilesystem::rename_or_copy`). We expect to have people on FreeBSD install CMake themselves, and use `./bootstrap.sh -useSystemBinaries`, in order to build vcpkg. Since CMake 3.15.2 exists in the FreeBSD 12 (latest stable) package manager, it's trivial to install it.
2019-08-21[vcpkg] Fix gcc-9 warning (#7816)Curtis J Bezault
* drop one usage of span in export. Span is not appropriate for rvalues * Add back reference * Fix @ubsan 's comments
2019-08-21[boost] split Build-Depends on multipls linesPhil Christensen
2019-08-20[vcpkg]Port toolchains (#7687)Curtis J Bezault
* checkpoint commit * Only set VCPKG_ENV_OVERRIDES_FILE if it exists * First pass at working port-toolchain * Update VERSION.txt * Return rvalue * Fix compilation error * Some fixes are requested by @ubsan * Fix another compilation error
2019-08-19[vcpkg] allow multiple spaces in a comma list (#7754)Phil Christensen
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-16Merge pull request #7305 from cbezault/external_file_abiCurtis J Bezault
[vcpkg] Public ABI override option
2019-08-14[depend-info] Fix bugs, add `--sort`, `--show-depth` and `--max-recurse` ↵Victor Romero
options (#7643) * [depend-info] Follow same rules as vcpkg install * [depend-info] Add --max-depth and --sort options * [depend-info] Improve output readability (a tiny bit) * [depend-info] Add --show-depth option * [depend-info] Fix build on VS 2015 * [depend-info] Fix output of --dot and --dgml