The VS2015 standard library requires, in debug mode, a comparison
operator on `T × U` and `U × T` to also be a comparison operator on
`T × T` and on `U × U`, and so in
vcpkg::Install::install_package::intersection_compare, I've added two
new `operator()` overloads which take those respectively, on VS2015.
Also, `[nodiscard]` was added to somewhere in `vcpkg/base/strings.h`,
which gives a warning in VS2015 -- thus, I added the `vcpkg/pragmas.h`
include, since that fixes the warning.
* [OpenCV] update to v4
* [OpenCV] update to v4.1
* [OpenCV] merge #6901 and #6812
* [OpenCV] port patches to v4.1
* [OpenCV] fix naming
* [OpenCV] fix regression with static linkage
* [OpenCV] fix linking to optional feature dependencies in static mode
* fix ffmpeg on some architectures
* trigger rebuild of regressions on macOS
* [zxing-cpp] fix opencv 4.1 compat
* [ogre] improve patching for static builds
* [OpenCV] fixes for extra features
* [OpenCV] drastically reduce patchset
* [OpenCV] fix regression on linux
* [OpenCV] fix regression on Windows
* [qt5] depends on qt5-activeqt only on windows
* update to v4.1.1
* [OpenCV] additional fixes for 4.1.1
* [OpenCV] fix Eigen3 feature integration
* [opencv] Fix compilation in UWP
* [opencv] Fix merge conflicts
* [ffmpeg] fix cmake module for osx
* [OpenCV] add pre-caching of optflow cuda package
* [gdcm] properly fix#6863 instead of wrong #6901
* [OpenCV] fix OpenMP feature
* [opencv] Add missing GetModuleHandle() call guard for UWP
* [freeimage] Do not depend on libwebp[all] on UWP
* [opencv] Set app container bit for UWP
* [zxing-cpp] Fail with explicit message in UWP
* [pthreads4w] fix target creation, missing dlls
* [pthreads4w] bump CONTROL
* [opencv,zxing-cpp] Fix OpenCV Video IO module
* [zxing-cpp] Revert unnecessary changes
* [opencv] Feature halide
* Fix regression in UWP
* [ffmpeg] remove unnecessary patch pointing to old OpenCV version
* [opencv] remove versioning from windows dll filenames
* [opencv] Move port to opencv4
* [opencv,opencv4] Make meta-package install OpenCV 4.1
* [opencv3] Rename old port opencv->opencv3
* Add failure messages when another OpenCV is already installed
* added function vcpkg_fail_port_install to fail the portfile under requested circumstances and display a standarized failure message
* added always option.
* fix linux regressions
* bump control for ci tu rerun
I was building under /W3, because CMake hadn't been set up to build
under /W4 -- therefore, I didn't see some warnings.
We also decided to remove the niebloids and instead break ADL by using
`= delete`, since otherwise we get warnings when we define a local
variable with the same name as a niebloid. I also removed `status` and
`symlink_status` from the `files` header, since it's unnecessary now,
and they're just implementation details of `RealFilesystem`.
I also removed some existing uses of unqualified `status(path)`, since
that no longer compiles. I also added `Filesystem::canonical`, to remove
another use of `fs::stdfs` in a function I was already working in.
There's a bug in `std::experimental::filesystem::status` on
libstdc++ -- it incorrectly sets its `error_code` when a file
doesn't exist, or when a path doesn't exist. In order to get
around this, `error_code` was cleared when the file doesn't exist,
but it was not cleared when the path didn't exist.
Note: in this case, I say "the file doesn't exist" when, if you
look up "a/b/c", "a/b" exists but "c" doesn't. I say "the path
doesn't exist" when, if you look up "a/b/c", either "a" or "a/b"
doesn't exist.
- We used to `get-pip` on all non-Linux systems; we should be
downloading and running it only on Windows.
- `get-pip`'s download link was volatile, and the SHA would change. We
now download it from a versioned link, which should not change
As part of these, we bumped the number from 0.30.0-2 to 0.30.0-3
* [discount] Add new package Discount
* [discount] Add new package Discount
* New package [Discount](https://github.com/Orc/discount)
* Static build only
* [discount] Fix arm* and *uwp builds
* Discount needs to run `mktags.exe` to generate `blocktags`. This fix copy generated `blocktags` to `SOURCE_PATH` for arm\* builds and \*uwp builds.
* [discount] Fix UWP and ARM check
* [discount] Another fix for blocktags
* [discount] And another one
* [discount] And another one. Please squash these PR commits.
Sorry I don't have UWP or ARM compiler installed on my machine.
* [discount] Use definitions in msvc/Makefile
* [discount] Add homepage
* Adding snappy support.
* Building without win 32 config.
* Restoring original state.
* Changing version and replacing tab with spaces.
* Remove snappy as a build-depends
The snappy feature does not require any external sources.
I added benchmarks to measure how fast the parallel remove_all code was
-- it turns out, about 3x slower than stdfs::remove_all. Since this was
the case, I removed all of the parallelism and rewrote it serially, and
ended up about 30% faster than stdfs::remove_all (in addition to
supporting symlinks).
In addition, I did the following three orthogonal changes:
- simplified the work queue, basing it on Billy O'Neal's idea
- Fix warnings on older versions of compilers in tests, by splitting
the pragmas out of pch.h.
- Ran clang-format on some files
In fixing up remove_all, the following changes were made:
- On Windows, regular symlinks and directory symlinks are distinct;
as an example, to remove directory symlinks (and junctions, for that
matter), one must use RemoveDirectory. Only on Windows, I added new
`file_type` and `file_status` types, with `file_type` including a new
`directory_symlink` enumerator, and `file_status` being exactly the
same as the old one except using the new `file_type`. On Unix, I
didn't make that change since they don't make a distinction.
- I added new `symlink_status` and `status` functions which use the
new `file_status` on Windows.
- I made `Filesystem::exists` call `fs::exists(status(p))`, as opposed
to the old version which called `stdfs::exists` directly.
- Added benchmarks to `vcpkg-test/files.cpp`. They test the
performance of `remove_all` on small directories (~20 files), with
symlinks and without, and on large directories (~2000 files), with
symlinks and without.
* Add googleapis proto libraries port.
Compile protos from github.com/googleapis/googleapis into C++ libraries.
* Updated google-cloud-cpp to 0.12.0
* [google-cloud-cpp] Fix flaky build
* [libevent] update to 2.1.11
* [libevent] Move scripts to tools folder
* [libevent] Fix non-Windows build
* [libevent] remove bin folder only for static build
and move script to tools folder no matter static or dynamic