137 Commits

Author SHA1 Message Date
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
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
Robert Schumacher
c0d22c88ea
[vcpkg_install_qmake] Add vcpkg_install_qmake (#9412)
* [vcpkg_install_qmake] Add vcpkg_install_qmake and convert existing ports to use it.
[vcpkg_configure_qmake] Add 'staticlib' to CONFIG in static builds

* [vcpkg_configure_qmake] Don't specify DESTDIR

* [libqglviewer][vcpkg_configure_qmake] Add staticlib CONFIG only for libqglviewer

* [qt5-base] Increment version to track changes in vcpkg_configure_qmake()
2019-12-23 06:10:12 -08:00
Griffin Downs
43fa3e60cf
Remove deprecated call to include 2019-12-16 16:15:01 -08:00
Griffin Downs
7a14422290
Update pr-review-checklist.md 2019-12-11 01:27:14 -08:00
Griffin Downs
beacecf48d
[vcpkg] Initialize PR review checklist (#9264) 2019-12-09 17:32:42 -08:00
KURATA Sayuri
eb0d14bc7a Fix field name. (#9140) 2019-12-02 15:44:07 -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
Robert Schumacher
ae74e0bfd3
Merge pull request #5719 from donny-dont/github-url
[vcpkg_from_github] Allow targeting Github Enterprise instances
2019-11-22 15:13:08 -08:00
dan-shaw
0a0440c1a8 update telemetry 2019-11-22 15:07:00 -08:00
Robert Schumacher
45bc9e9848 [vcpkg_from_github] Rename GITHUB_URL -> GITHUB_HOST
Rename TOKEN -> AUTHORIZATION_TOKEN
2019-11-22 10:05:39 -08:00
dan-shaw
4984408bed
Update privacy.md 2019-11-14 13:21:54 -08:00
dan-shaw
552296a741 [vcpkg] update telemetry 2019-11-14 13:12:36 -08:00
JackBoosY
934275b712 [libxslt]Using vcpkg_install_nmake in Windows, support unix. (#8589)
* [libxslt]Using vcpkg_install_nmake in Windows, support unix.

* support PRERUN_SHELL/PRERUN_SHELL_DEBUG/PRERUN_SHELL_RELEASE

* Re-trigger CI.
2019-10-29 23:23:36 -07:00
Wolfgang Stöggl
92af850c1c maintainer-guide.md - Fix link (#8720)
"source_" was missing in the name of the helper function. Fix typo:
vcpkg_extract_archive_ex -> vcpkg_extract_source_archive_ex
2019-10-24 15:51:16 -07:00
JackBoosY
988b1c9897 support SKIP_CONFIGURE in vcpkg_configure_make. (#8647) 2019-10-21 16:23:52 -07:00
JackBoosY
ad493fd860 Add function vcpkg_configure_make/vcpkg_build_make/vcpkg_install_make/vcpkg_build_nmake/vcpkg_install_nmake (#8267)
* Add function vcpkg_configure_make/vcpkg_build_make.

* Fix autoreconf command and add log.

* Add vcpkg_install_make.

* Fix call function name.

* support non-debug mode.

* Add nmake support.

* [tcl]Add new port for testing.

* [vcpkg_configure_make]Fix prefix in linux.

* restart CI systen.

* Separate vcpkg_build_nmake/vcpkg_install_nmake. Add arg PROJECT_NAME.

* fix copy source file. add samples.

* Remove uncommon options.
Add force install para to autoreconf.

* fix build error.

* fix options judgment.

* enable nmake in windows.

* fix some envs and macros. Disable NMAKE in vcpkg_configure_make currently.

* update docs.

* fix environments.

* Modify libosip2 to use vcpkg_configure_make/vcpkg_install_make.

* [tcl]Tcl separates PR.

* trigger PR-EAGER.

* [freexl]Fix options name and remove option NMAKE.

* use tool-chain instead of set environments manually.

* fix autoreconf para.

* use vcpkg_execute_build_process instead.
2019-10-05 07:51:07 -07:00
Vinny
85e7e815f1 Update and rename cmake_fixup_cmake_targets.md to vcpkg_fixup_cmake_targets.md (#8424)
Corrected incorrect file name. 
Added inline code for reading clarity
Added examples
2019-10-02 07:08:51 -07:00
Vinny
5ebf65665d [Documentation] Added documentation page for vcpkg_fixup_cmake_targets.cmake (#8365)
* Added documentation page for vcpkg_fixup_cmake_targets.cmake, added example usage comment to .cmake file

* Update cmake_fixup_cmake_targets.md

* Update cmake_fixup_cmake_targets.md
2019-10-01 08:21:04 -07:00
Wolfgang Stöggl
d993260886 Fix a typo in maintainer-guide.md (#8383) 2019-09-29 10:50:13 -07:00
shogerr
5d90c36ad5 Add detailed instructions for custom configurations (#8258)
Resolves #2346
2019-09-19 15:01:17 -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
Victor Romero
4b404e8cfb
Revert "[vcpkg install] Enable Download Mode (#7797)" (#7949)
This reverts commit 65d4bc146bf7c1c21989b680497b1f6f9a09c967.
2019-08-28 11:59:30 -07:00
Victor Romero
65d4bc146b
[vcpkg install] Enable Download Mode (#7797)
* [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-28 11:47:17 -07:00
nicole mazzuca
2a81a2d322 [vcpkg docs] More tool maintainer docs! (#7821)
* [vcpkg docs] Add benchmarking 🏎 to the docs!

Also, minor changes to the testing docs.

* add documentation for the layout of the project
2019-08-24 11:36:12 -07:00
Victor Romero
8e7ce6d91a
Add guideline for VCPKG_<LANG>_FLAGS (#7751) 2019-08-19 12:28:30 -07:00
Victor Romero
a3a6530631
[vcpkg_check_features] Set output variable explicitly and allow reverse-logic check (#7558)
* [vcpkg_check_features] Set OUT_EXPAND_OPTIONS explicitly

* [vcpkg_check_features] Allow reverse logic for features

* [vcpkg_check_features] Document new parameters

* [vcpkg_check_features] Remove unnecessary logging

* Do not create variables for each feature only set OUT_FEATURE_OPTIONS

* Improve documentation

* Update ports that use vcpkg_check_features()

* Missing documentation updates

* [pcl] Fix tools feature

* [opencv,opencv4] Fix usage of vcpkg_check_features()

* [opencv4] Fix typo
2019-08-13 20:13:55 -07:00
Robert Schumacher
4d551ff4b3 [vcpkg-docs] Reword and reorganize overlay-triplets-linux-dynamic.md (#7502) 2019-08-02 15:42:17 -07:00
nicole mazzuca
165907550c
Update tests, and add documentation! (#7506)
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-02 09:52:39 -07:00
Phil Christensen
0079c186f0
[docs] add notes about manual-link (#7390) 2019-07-23 14:49:45 -07:00
Victor Romero
30a3e3256f
Example: Building dynamic libraries on Linux using overlay triplets (#7291)
* Example building dynamic libraries on Linux using overlay triplets

* Change triplets list to multi-columns

* Override default triplets example
2019-07-17 11:34:31 -07:00
Phil Christensen
d2b3ef9e88
Fix vcpkg_from_git (#7082)
* [vcpkg_from_git/fdlibm] Fix flaky sha256 issues
* [doc] regenerate docs
2019-07-01 22:39:51 -07:00
Victor Romero
e2049cb975
[vcpkg_configure_cmake] Add NO_CHARSET_FLAG option (#7074)
* [vcpkg_configure_cmake] Add NO_CHARSET_FLAG option

* [vcpkg_configure_cmake] Add documentation for new NO_CHARSET_FLAG option

* [vcpkg_configure_cmake, windows toolchain] Handle NO_CHARSET_FLAG in toolchain

* [build.cpp] Add Windows toolchain to package hash

* [duilib,msix,thrift,tidy-html5] Use NO_CHARSET_FLAG to fix regressions
2019-06-30 09:31:22 -07:00
myd7349
a7bbee3152 [vcpkg] Update vcpkg_check_features document (#7091)
* [oniguruma] Fix misusage of vcpkg_check_features

* [xsimd] Use vcpkg_check_features
2019-06-29 08:29:13 -07:00
myd7349
b4675fd65a [vcpkg] Add vcpkg_check_features (#6958)
* [vcpkg] Add vcpkg_check_feature, vcpkg_check_features

* [vcpkg] Remove vcpkg_check_feature

* [oniguruma,xtensor] Use vcpkg_check_features
2019-06-28 10:17:39 -07:00
Victor Romero
53a02456a0
Update ports-overlay.md 2019-06-27 16:32:38 -07:00
Phil Christensen
1ce24dd0db
[docs]Update cmake docs (#7039) 2019-06-25 16:08:18 -07:00
Victor Romero
f3db66b403
Ports Overlay partial implementation (#6981)
* Ports Overlay feature spec

* Ports Overlay implementation

* [--overlay-ports] Refactor handling of additional paths

* Code cleanup

* [--overlay-ports] Add help

* [depend-info] Support --overlay-ports

* Add method to load all ports using PathsPortFileProvider

* Make PortFileProvider::load_all_control_files() const

* Remove unused code

* [vcpkg] Avoid double-load of source control file between Build::perform_and_exit and Build::perform_and_exit_ex

* [vcpkg] Clang format

* [vcpkg] Fixup build failure introduced in b069ceb2f231

* Report errors from Paragraphs::try_load_port()
2019-06-21 23:50:05 -07:00
Robert Schumacher
9cfcc71146
[docs] Add maintainer guidelines (#6871)
* [maintainer-guide] Initial commit of maintainer guidelines

* [maintainer-guide] Rearrange sections

* [maintainer-guide] Add note about GitHub Draft PRs

* [maintainer-guide] Improvements

* [maintainer-guide] Address comments about versioning conventions

* [maintainer-guide] Add section about how portfiles interact with CMakeLists.txt

* [maintainer-guidelines] Add link from docs index
2019-06-21 21:33:29 -07:00
Phil Christensen
d962dc7d65 [vcpkg] Add optional 'Homepage' field to CONTROL (#6844)
* [control file] Add optional 'Homepage' tag

This allows a 'Homepage' tag to be added to a port in order to support
changes such as PR #2933.  It currently does not do anything with it.

* [docs]

Add Homepage to the control file documentation

* move urls from descriptions to homepage field.
2019-06-10 16:35:22 -07:00
Phil Christensen
4b834fad29
[docs] update port naming info in CONTROL docs (#6397) 2019-05-10 12:47:09 -07:00
Phil Christensen
34cadd0b04
[docs] clean up CONTROL file documentation (#6378) 2019-05-09 13:27:00 -07:00
Robert Schumacher
4498b6403e
[docs] Add VCPKG_CMAKE_SYSTEM_VERSION (#6061) 2019-04-11 17:54:53 -07:00
Don
d71ad4800b Allow additional environment variables to be set in a clean environment (#5650)
* Allow additional environment variables to be set in a clean environment

* Add documentation for VCPKG_KEEP_ENV_VARS
2019-03-28 14:34:26 -07:00
Don
a421f43ed1 Add headers to vcpkg_download_distfile (#5640)
* Add headers to vcpkg_download_distfile

Allows headers to be appended when downloading a distribution. This allows for setting
authentication headers to download from a private repository.

* [scripts,docs] Regenerate docs for portfile functions

* [docs,scripts] Fix typo regressions

* [docs,scripts] Fix broken link
2019-03-14 13:43:49 -07:00
Phil Christensen
fc9aa15287
[docs] Fix broken link 2019-03-13 13:52:20 -07:00
Victor Romero
f24bd414ce
[docs] Add vcpkg functions usage examples (#5639) 2019-03-11 17:29:37 -07:00
Bo Rydberg
c247a7d21f Fix minor spelling mistakes in documentation (#5620) 2019-03-10 20:31:02 -07:00
Robert Schumacher
9ef92a21a0 [vcpkg-docs] Replace reference to VCPKG_DEFAULT_VS_PATH with VCPKG_VISUAL_STUDIO_PATH 2019-02-25 13:25:27 -08:00
zhihaoy
4ad78224c9 [docs] Show how to default VCPKG_TARGET_TRIPLET (#5346) 2019-02-22 16:29:05 -08:00