Commit Graph

12321 Commits

Author SHA1 Message Date
ras0219
3f6342db6d
[vcpkg] Fix vcpkg export --nuget regressions (#12174)
* [vcpkg] Upgrade find_acquire_program(NUGET) to 5.5.1. Add partial SHA to temporary download paths to avoid collisions.

* [vcpkg] Fix regression in `vcpkg export --nuget` due to file locking on .vcpkg-root

Co-authored-by: Robert Schumacher <roschuma@microsoft.com>
2020-06-30 14:02:26 -07:00
nicole mazzuca
1d8f0acc9c
[vcpkg manifest] Manifest Implementation (#11757)
==== Changes Related to manifests ====

* Add the `manifests` feature flag
  * This only says whether we look for a `vcpkg.json` in the cwd, not
    whether we support parsing manifests (for ports, for example)
* Changes to the manifests RFC
  * `"authors"` -> `"maintainers"`
  * `--x-classic-mode` -> `-manifests` \in `vcpkg_feature_flags`
  * reserve `"core"` in addition to `"default"`, since that's already
    reserved for features
  * Add a small helper note about what identifiers must look like
  * `<license-string>`: SPDX v3.8 -> v3.9
  * `"feature"."description"` is allowed to be an array of strings as well
  * `"version"` -> `"version-string"` for forward-compat with versions
    RFC
* Add the `--feature-flags` option
* Add the ability to turn off feature flags via passing
  `-<feature-flag>` to `VCPKG_FEATURE_FLAGS` or `--feature-flags`
* Add CMake toolchain support for manifests
  * Requires either:
    * a feature flag of `manifests` in either `Env{VCPKG_FEATURE_FLAGS}`
      or `VCPKG_FEATURE_FLAGS`
    * Passing the `VCPKG_ENABLE_MANIFESTS` option
  * The toolchain will install your packages to
    `${VCPKG_MANIFEST_DIR}/vcpkg_installed`.
* Add MSBuild `vcpkg integrate install` support for manifests
  * Requires `VcpkgEnableManifest` to be true
* `vcpkg create` creates a port that has a `vcpkg.json` instead of a
  `CONTROL`
* argparse, abseil, 3fd, and avisynthplus ports switched to manifest
  from CONTROL
* Add support for `--x-manifest-root`, as well as code for finding it if
  not passed
* Add support for parsing manifests!
* Add a filesystem lock!

==== Important Changes which are somewhat unrelated to manifests ====

* Rename `logicexpression.{h,cpp}` to `platform-expression.{h,cpp}`
* Add `PlatformExpression` type which takes the place of the old logic
  expression
  * Split the parsing of platform expressions from checking whether
    they're true or not
  * Eagerly parse PlatformExpressions as opposed to leaving them as
    strings
* Add checking for feature flag consistency
  * i.e., if `-binarycaching` is passed, you shouldn't be passing
    `--binarysource`
* Add the `Json::Reader` type which, with the help of user-defined
  visitors, converts JSON to your internal type
* VcpkgArgParser: place the switch names into a constant as opposed to
  using magic constants
  * In general update the parsing code so that this ^ works
* Add `Port-Version` fields to CONTROL files
  * This replaces the existing practice of
    `Version: <my-version>-<port-version>`

==== Smaller changes ====
* small drive-by cleanups to some CMake
  * `${_VCPKG_INSTALLED_DIR}/${VCPKG_TARGET_TRIPLET}` ->
    `${CURRENT_INSTALLED_DIR}`
  * Remove `-analyze` when compiling with clang-cl, since that's not a
    supported flag (vcpkg's build system)
  * Add a message about which compiler is detected by vcpkg's build
    system machinery
* Fix `Expected::then`
* Convert `""` to `{}` for `std::string` and `fs::path`, to avoid a
  `strlen` (additionally, `.empty()` instead of `== ""`, and `.clear()`)
* Add `Strings::strto` which converts strings to numeric types
* Support built-in arrays and `StringView` for `Strings::join`
* Add `operator<` and friends to `StringView`
* Add `substr` to `StringView`
* SourceParagraphParser gets some new errors
2020-06-30 10:40:18 -07:00
Jack·Boos·Yu
67ab6130b6
[vcpkg baseline][paraview] Fix linux build (#12144) 2020-06-29 23:31:08 -07:00
Alexander Neumann
3b275f5138
[qt5-base] fix static init fiasco and fix debug dll's not being copied (#12153) 2020-06-29 16:33:19 -07:00
Matthias C. M. Troffaes
1f01a1fd25
[ffmpeg] Allow gpl builds without avisynthplus (#12083)
* [ffmpeg] Allow gpl builds without avisynthplus

* Update CONTROL

Co-authored-by: Billy Robert O'Neal <bion@microsoft.com>
Co-authored-by: Lily <47812810+LilyWangL@users.noreply.github.com>
2020-06-29 15:37:40 -07:00
Septarius
3c34afc1c4
[openssl] Update openssl 1.1.1g - continued from PR #11003 (#11882)
* [openssl] Update version to 1.1.1g

* [openssl] Disable build tests

* [openssl-unix][openssl-uwp] use vcpkg_fail_port_install

* [openssl] Applying PR #11003 Suggestions

The suggested changes from PR #11003

Along with one additional to remove the deprecated vcpkg_test_cmake from openssl-uwp\portfile.cmake as well.

* Update ports/openssl-uwp/portfile.cmake

Co-authored-by: crackedmind <digital.stream.of.mind@gmail.com>
Co-authored-by: NancyLi1013 <46708020+NancyLi1013@users.noreply.github.com>
2020-06-29 14:43:51 -07:00
ras0219
d47570b8d6
[vcpkg-x-set-installed] Implement --dry-run (#12132)
* [vcpkg-x-set-installed] Implement --dry-run

* [vcpkg] Address code review comments

Co-authored-by: Robert Schumacher <roschuma@microsoft.com>
2020-06-27 09:50:01 -07:00
freddy77
a0bd59c6a2
Fix typo in comment (#12069)
Enabel -> Enable

Signed-off-by: Frediano Ziglio <freddy77@gmail.com>
2020-06-26 19:22:12 -07:00
Jack·Boos·Yu
a0e0c57f86
[vcpkg] Add vcpkg_from_sourceforge (1/2) (#11899) 2020-06-26 15:06:30 -07:00
Billy O'Neal
81ae2ed94b
[vcpkg] Add write-only binary caching for CI. (#12130)
Changes to the binary caching spec made as comments over at https://github.com/microsoft/vcpkg/pull/11204#pullrequestreview-438518901
2020-06-26 12:37:53 -07:00
Billy O'Neal
309f6fc9bc
[vcpkg] Delete unused --purge-tombstones and introduce BufferedPrint class (#12049)
* Introduce buffered_print class to manage buffered write patterns like in the ci command.

* Remove --purge-tombstones option.

* Law of demeter.

* Make buffered_print imobile.

* buffered_print => BufferedPrint

* Fix merge conflict.
2020-06-26 12:16:17 -07:00
ras0219
91e798afd8
[vcpkg] Implementation of --x-binarysource=nuget (and friends) (#12058)
* [vcpkg] Initial implementation of --x-binarysource=nuget

* [vcpkg] Remove double-double quoting of CMake arguments

* [vcpkg] Update nuget.exe to 5.5.1 to support Azure DevOps Artifacts

* [vcpkg] Enable batching of NuGet server calls with prefetch(). Add `interactive` binarysource.

* [vcpkg] Add `nugetconfig` binary source

* [vcpkg] Short circuit querying remote NuGet servers once all refs are found

* [vcpkg] Add experimental help for binary caching

* [vcpkg] Improved NuGet cache package descriptions and version formatting

* [vcpkg] Rename `CmdLineBuilder::build()` to extract()

* [vcpkg-help] Ascii-betize help topics

* [vcpkg] Add tests for cmdlinebuilder. Improve handling of quotes and slashes.

* [vcpkg] Addressing code review comments

* [vcpkg] Add tests for vcpkg::reformat_version()

* [vcpkg] Added test for vcpkg::generate_nuspec()

* [vcpkg] Add tests for vcpkg::XmlSerializer

* [vcpkg] Addressed code review comment

* [vcpkg] Add test for vcpkg::Strings::find_first_of

* [vcpkg] Fix machine-specific paths in test for vcpkg::generate_nuspec()

Co-authored-by: Robert Schumacher <roschuma@microsoft.com>
2020-06-26 12:16:02 -07:00
ras0219
7ebb42a4d9
[vcpkg] Fix "[commands-build] build smoke test" (#12128)
* [vcpkg] Fix "[commands-build] build smoke test"

1. Do not exit with a success code in Build::perform, because this causes failures in other tests to be ignored.
2. Use temp directory to avoid interference with the current set of {installed, buildtrees, packages}
3. Explicitly disable binary caching

* [vcpkg] Disable binarycaching in "build smoke test", "[commands-build]"

Return 1 for the last failure case in Build::perform() so testing may continue.

Co-authored-by: Robert Schumacher <roschuma@microsoft.com>
2020-06-26 11:35:41 -07:00
ras0219
4c527e49c4
[vcpkg] Use XDG/LOCALAPPDATA for default binary caching path (#12091)
* [vcpkg] Use XDG Base Directory Specification on non-Windows

* [vcpkg] Move user-wide binary cache on Windows to $LOCALAPPDATA/vcpkg/archives

* [vcpkg] Address code review comments; refactor other uses of LOCALAPPDATA

* [vcpkg] Address code review comments

* [vcpkg] filesystem::path::append() accepts string arguments, not paths.

Co-authored-by: Robert Schumacher <roschuma@microsoft.com>
2020-06-26 11:26:38 -07:00
Billy O'Neal
9f8cc9ee88
[vcpkg] Delete unnecessary tombstone deletion step now that CI rebuilds everything (#12120) 2020-06-25 22:19:17 -07:00
nicole mazzuca
22c8e3a23a
[vcpkg build] fix build command (#12072) 2020-06-25 18:23:30 -07:00
Billy O'Neal
f10c49281a
[vcpkg] Add disk space report to Windows PR/CI (#12113)
* [vcpkg] Add disk space report to PR/CI

Example output:
```
Disk Label           Size     Free Space
---- -----           ----     ----------
C:   Sabrent         1907 GiB 1239 GiB
D:   Dev             447 GiB  383 GiB
E:   Samsung 960 Pro 1908 GiB 1084 GiB
H:   Rocket          3815 GiB 863 GiB
R:                   0 B      0 B
S:                   0 B      0 B
```
2020-06-25 16:38:13 -07:00
Billy O'Neal
0d37525d75
[vcpkg] Commonize pipelines build powershell and don't use binary caching in CI (rather than PR) builds (#12082) 2020-06-25 16:36:28 -07:00
Jack·Boos·Yu
1f0db1f06a
[vcpkg baseline] Fix baseline errors (#12067)
Co-authored-by: Billy Robert O'Neal III <bion@microsoft.com>
2020-06-25 11:11:17 -07:00
Silvio Traversaro
70ab27fcad
[ignition-plugin1] Add new port 🤖 (#11275)
* [ignition-plugin1] Add new port

* vcpkg_fixup_cmake_targets: Add DO_NOT_DELETE_PARENT_CONFIG_PATH

By default the vcpkg_fixup_cmake_targets script remove the parent
path of CONFIG_PATH if it named "cmake", this behaviour is not convenient
for ports that install more than one CMake package config file, and
for which vcpkg_fixup_cmake_targets is invoked multiple times.
To optionally disable this behaviour, this commit adds the option
DO_NOT_DELETE_PARENT_CONFIG_PATH to vcpkg_fixup_cmake_targets.

* [ignition-modularscripts] Add support for ignition libraries that install multiple CMake package config files

Some ignition libraries install several CMake  package config files,
to represent the different components of the library. This  commit modifies
the ignition_modular_library function to fixup correctly all the cmake package config files.

* vcpkg_fixup_pkgconfig: Move definition of SYSTEM_LIBRARIES to vcpkg_common_definitions

To correctly validate installed pkg-config files, vcpkg_fixup_pkgconfig needs to know
for each platform which libraries are not managed by vcpkg. This commits improve this
definitions for all the triplet supported by vcpkg, and move this definition to vcpkg_common_definitions
in a way that permit custom triplets to overload its value.
2020-06-24 14:59:32 -07:00
Billy O'Neal
7ced7d721e
[vcpkg] Do not fail just because cleaning tombstones failed in CI. (#12074) 2020-06-24 11:39:47 -07:00
Vicki Pfau
eede79eb27
Fix bootstrapping MSYS2 pacman (#11499) (#12080) 2020-06-24 11:29:28 -07:00
Phoebe
7042764fe1
[stlab] Fix cmake config file (#11787)
* [stlab] Fix cmake config file

* Update ports/stlab/portfile.cmake

Co-authored-by: Billy Robert O'Neal III <bion@microsoft.com>
2020-06-23 14:38:14 -07:00
Jack·Boos·Yu
c75f0b32a6
[grpc] Update to 1.29.1 (#11791)
* [grpc] Update to 1.29.1

* re-fix uwp build

* re-fix dependency upb

* [offscale-libetcd-cpp] Fix dependency grpc
2020-06-23 14:36:26 -07:00
NancyLi1013
db74895497
[cairo] Fix error in static build (#11829)
* [cairo] Fix error in static build

* Fix Typo

* [pango] Update dependency cairo as cairo[gobject] to solve the regressions

* Update ports/cairo/portfile.cmake

Co-authored-by: Jack·Boos·Yu <47264268+JackBoosY@users.noreply.github.com>

* Update ports/cairo/CMakeLists.txt

* [pango] Update dependency

* Update

* Remove redundant target

* Post the message for feature gobject only in static build on Windows

Co-authored-by: Jack·Boos·Yu <47264268+JackBoosY@users.noreply.github.com>
2020-06-23 14:28:19 -07:00
ZeeWanderer
36bb6f02e9
[tgbot-cpp] Add new port (#11876) 2020-06-23 14:26:53 -07:00
JangBoo
09be10d763
[Bitmagic] Add new port (#11890)
* Add Bitmagic Port file

* Renamed to Bitmagic

* Added bitmagic portfile

* Added lower case to capital letter to match

* Edited path for header files

* Removed function vcpkg_configure_cmake()
2020-06-23 14:18:09 -07:00
NancyLi1013
e33e3fc229
[icu] Add tools (#11897)
* [icu] Add tools

* Add macro variables
2020-06-23 14:14:02 -07:00
Christian Ullrich
1b578cfac9
[wtl] Update to 10.0.10077 (#11893) 2020-06-23 14:09:35 -07:00
Leonid Pospelov
8af2f692eb
[efsw] Add new port (#11901)
* [efsw] Add new port

* Update portfile.cmake

* Remove unnecessary BUILD_SHARED_LIBS assigning

* Update portfile.cmake

* Update library

Co-authored-by: Lily <47812810+LilyWangL@users.noreply.github.com>
2020-06-23 13:58:38 -07:00
Kuntal Majumder
c12aa1cd7b
[x265] Delete the bin directory if the platform is Linux (#11903)
* Delete the bin directory if the platform is Linux

* Update x265 to 3.2-4
2020-06-23 13:57:29 -07:00
Rémy Tassoux
8e9ee5d36c
[imgui] Add Freetype feature (#11919) 2020-06-23 13:56:15 -07:00
NancyLi1013
5058547304
[ffmpeg] Add avisynthplus support (#11946) 2020-06-23 13:40:35 -07:00
yurybura
8714f0d829
[llvm] fix issue #11916 (#11956)
* [llvm] fix issue #11916

* Remove include(vcpkg_common_functions)

Co-authored-by: Lily <47812810+LilyWangL@users.noreply.github.com>
2020-06-23 13:39:52 -07:00
Jack·Boos·Yu
67a031a4d5
[libmicrohttpd] Support build on UNIX and use msbuild on Windows (#11983)
* [libmicrohttpd] Support build on UNIX and use msbuild on Windows

* update baseline
2020-06-23 13:38:30 -07:00
Jack·Boos·Yu
2c280eed42
[date] Update to 3.0.0 (#11968) 2020-06-23 13:37:41 -07:00
Jack·Boos·Yu
7e18ac0d8b
[activemq-cpp] Fix static build (#12005)
* [activemq-cpp] Fix static build

* update baseline
2020-06-23 13:18:04 -07:00
Jack·Boos·Yu
088963227e
[cpprestsdk] Fix usage issue when building static (#12006) 2020-06-23 13:12:42 -07:00
Lily
2ad479e667
[openmesh] Fix install *.dll and add vcpkg-cmake-wrapper.cmake (#12007)
* [openmesh] Fix *.dll export and add vcpkg-cmake-wrapper.cmake

* Update ports/openmesh/portfile.cmake

Co-authored-by: Jack·Boos·Yu <47264268+JackBoosY@users.noreply.github.com>
2020-06-23 13:12:14 -07:00
Leonid Pospelov
8d6b291ed0
[cpp-httplib] Update library to 0.7.0 (#12010) 2020-06-23 13:10:14 -07:00
Bruno Carvalho
8bec12ed59
[LibXDiff] Add port (#12017)
* [LIBXDIFF] New port

* Remove not necessary installations

* Add Fail message to UWP

* Add UWP fail on baseline

* Revision fixes

* Update ports/libxdiff/portfile.cmake

Co-authored-by: Jack·Boos·Yu <47264268+JackBoosY@users.noreply.github.com>
2020-06-23 13:09:21 -07:00
Tatsunori Uchino
2ef494594c
[nowide] update to 11.0.0 (#12020) 2020-06-23 13:07:42 -07:00
Jack·Boos·Yu
cc06e46a36
[abseil] Fix usage issue (#12022) 2020-06-23 13:07:02 -07:00
yurybura
95fa5dbbc8
[open62541] update to v1.1, add encryption support (#12023) 2020-06-23 13:05:20 -07:00
An Tao
7a28379b4c
[Drogon] Add new port (#12024)
* [Drogon] Add new port

* Update version

* Use cmake options instead of patching
2020-06-23 13:03:23 -07:00
xhbuming
d2b92bff55
[cjson] fix windows-static for don't export symbols (#12026)
* fix windows-static for don't export symbols

/* export symbols by default, this is necessary for copy pasting the C and header file */
#if !defined(CJSON_HIDE_SYMBOLS) && !defined(CJSON_IMPORT_SYMBOLS) && !defined(CJSON_EXPORT_SYMBOLS)
#define CJSON_EXPORT_SYMBOLS
#endif

* Update CONTROL
2020-06-23 13:01:52 -07:00
Rafael Varago
85f453a8a4
[absent] Bump version 0.3.1 (#12036)
* [absent] Bump version 0.3.1

* [absent] Update CONTROL

This patches updates the CONTROL file to the latest release 0.3.1,
as well as its description.
2020-06-23 13:00:49 -07:00
Leonid Pospelov
cc3ba82ae1
[OpenAL] Update library (#12047) 2020-06-23 13:00:11 -07:00
Lily
41c528d477
[freerdp] Update to version 2.1.1 (#12050) 2020-06-23 12:59:16 -07:00
Alexander Neumann
23eadeaedc
[hdf5] Update HDF5 to 1.12 (#11747)
* [hdf5] Update HDF5 to 1.12 and use github live-clones instead of binary download

* [hdf5] bump control

* [hdf5] fix szip and typo about linkage

* [hdf5] add missing package namespace.... they somehow missed to set it?

* [hdf5] retry without "

* [field3d] fix regression and update. Remove windows as unsupported since the cmakelists tries to support windows

* fix typo

* remove ws

Co-authored-by: NancyLi1013 <46708020+NancyLi1013@users.noreply.github.com>

* linebreak first patch

Co-authored-by: NancyLi1013 <46708020+NancyLi1013@users.noreply.github.com>

* ws change

Co-authored-by: NancyLi1013 <46708020+NancyLi1013@users.noreply.github.com>

* [field3d] update copying installation

* [hdf5] use official github repo

* clean baseline

Co-authored-by: NancyLi1013 <46708020+NancyLi1013@users.noreply.github.com>
Co-authored-by: Jack·Boos·Yu <47264268+JackBoosY@users.noreply.github.com>
2020-06-23 12:58:50 -07:00