Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
24 commits
Select commit Hold shift + click to select a range
b1e2474
[tesseract] add missing reference for downstream projects
cenit Dec 13, 2020
44ec359
[tesseract] restore ci, fix many regressions that are uncovered by that
cenit Dec 13, 2020
3dbba14
Update ports/opencv2/CONTROL
cenit Dec 14, 2020
ee71778
[opencv] fix regressions on uwp, accept failure on arm64 for now
cenit Dec 14, 2020
dd15b9e
Merge branch 'dev/cenit/tesseract_lz4' of https://github.com/cenit/vc…
cenit Dec 14, 2020
9867a38
Apply suggestions from code review
cenit Dec 14, 2020
e40a093
[opencv4] allow failures on all arm windows targets, both win32 and uwp
cenit Dec 15, 2020
68e8bcd
adopts hints from #15180
cenit Dec 21, 2020
16e1def
[libarchive] bump control version
cenit Dec 21, 2020
69debb5
[libarchive] use vcpkg-cmake-wrapper instead of a custom libarchiveCo…
cenit Dec 23, 2020
5948420
enable features to be visible in parent scope
cenit Dec 23, 2020
d82d626
apply documentation fix from CI
cenit Dec 23, 2020
8ea2dd0
[libarchive] remove unnecessary lines in portfile
cenit Dec 23, 2020
6d1ad94
Merge branch 'dev/cenit/tesseract_lz4' of https://github.com/cenit/vc…
cenit Dec 23, 2020
83f8070
Merge branch 'master' into dev/cenit/tesseract_lz4
cenit Jan 1, 2021
2fad58d
Merge branch 'master' into dev/cenit/tesseract_lz4
cenit Jan 12, 2021
3319115
fix regressions
cenit Jan 13, 2021
439ef2a
Merge branch 'master' into dev/cenit/tesseract_lz4
cenit Jan 13, 2021
400f7a3
Update ports/gdcm/CONTROL
NancyLi1013 Jan 14, 2021
17848a8
Merge branch 'dev/cenit/tesseract_lz4' of https://github.com/cenit/vc…
cenit Jan 14, 2021
1924559
Merge branch 'master' into dev/cenit/tesseract_lz4
cenit Jan 14, 2021
7e70099
use more compact logic syntax
cenit Jan 15, 2021
e6c32d3
Merge branch 'master' into dev/cenit/tesseract_lz4
cenit Jan 15, 2021
9d3ae54
add new versions to baseline
cenit Jan 15, 2021
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 2 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -316,6 +316,7 @@ __pycache__/
############################################################
# vcpkg - End
############################################################
vcpkg.disable-metrics
archives
.DS_Store
prefab/
Expand All @@ -325,3 +326,4 @@ prefab/
# Codespaces
###################
pythonenv3.8/
.venv/
40 changes: 20 additions & 20 deletions docs/maintainers/vcpkg_check_features.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ Check if one or more features are a part of a package installation.
## Usage
```cmake
vcpkg_check_features(
OUT_FEATURE_OPTIONS <FEATURE_OPTIONS>
OUT_FEATURE_OPTIONS <FEATURE_OPTIONS>
[FEATURES
<cuda> <WITH_CUDA>
[<opencv> <WITH_OPENCV>]
Expand All @@ -15,27 +15,27 @@ vcpkg_check_features(
...]
)
```
`vcpkg_check_features()` accepts these parameters:
`vcpkg_check_features()` accepts these parameters:

* `OUT_FEATURE_OPTIONS`:
An output variable, the function will clear the variable passed to `OUT_FEATURE_OPTIONS`
* `OUT_FEATURE_OPTIONS`:
An output variable, the function will clear the variable passed to `OUT_FEATURE_OPTIONS`
and then set it to contain a list of option definitions (`-D<OPTION_NAME>=ON|OFF`).

This should be set to `FEATURE_OPTIONS` by convention.
* `FEATURES`:
A list of (`FEATURE_NAME`, `OPTION_NAME`) pairs.
For each `FEATURE_NAME` a definition is added to `OUT_FEATURE_OPTIONS` in the form of:

* `FEATURES`:
A list of (`FEATURE_NAME`, `OPTION_NAME`) pairs.
For each `FEATURE_NAME` a definition is added to `OUT_FEATURE_OPTIONS` in the form of:

* `-D<OPTION_NAME>=ON`, if a feature is specified for installation,
* `-D<OPTION_NAME>=OFF`, otherwise.
* `-D<OPTION_NAME>=OFF`, otherwise.

* `INVERTED_FEATURES`:
A list of (`FEATURE_NAME`, `OPTION_NAME`) pairs, uses reversed logic from `FEATURES`.
For each `FEATURE_NAME` a definition is added to `OUT_FEATURE_OPTIONS` in the form of:

* `INVERTED_FEATURES`:
A list of (`FEATURE_NAME`, `OPTION_NAME`) pairs, uses reversed logic from `FEATURES`.
For each `FEATURE_NAME` a definition is added to `OUT_FEATURE_OPTIONS` in the form of:

* `-D<OPTION_NAME>=OFF`, if a feature is specified for installation,
* `-D<OPTION_NAME>=ON`, otherwise.
* `-D<OPTION_NAME>=ON`, otherwise.


## Notes
Expand All @@ -44,8 +44,8 @@ The `FEATURES` name parameter can be omitted if no `INVERTED_FEATURES` are used.

At least one (`FEATURE_NAME`, `OPTION_NAME`) pair must be passed to the function call.

Arguments passed to `FEATURES` and `INVERTED_FEATURES` are not validated to prevent duplication.
If the same (`FEATURE_NAME`, `OPTION_NAME`) pair is passed to both lists,
Arguments passed to `FEATURES` and `INVERTED_FEATURES` are not validated to prevent duplication.
If the same (`FEATURE_NAME`, `OPTION_NAME`) pair is passed to both lists,
two conflicting definitions are added to `OUT_FEATURE_OPTIONS`.


Expand Down Expand Up @@ -113,7 +113,7 @@ vcpkg_configure_cmake(
# Expands to "-DWITH_CUDA=ON; -DBUILD_CUDA=ON; -DBUILD_GPU=ON"
${FEATURE_OPTIONS}
)
```
```

### Example 4: Use regular and inverted features

Expand All @@ -135,7 +135,7 @@ vcpkg_configure_cmake(
# Expands to "-DWITH_TBB=ON; -DROCKSDB_IGNORE_PACKAGE_TBB=OFF"
${FEATURE_OPTIONS}
)
```
```

## Examples in portfiles

Expand Down
18 changes: 9 additions & 9 deletions port_versions/baseline.json
Original file line number Diff line number Diff line change
Expand Up @@ -1633,8 +1633,8 @@
"port-version": 4
},
"dmlc": {
"baseline": "2019-08-12-4",
"port-version": 0
"baseline": "2019-08-12",
"port-version": 5
},
"docopt": {
"baseline": "2018-11-01",
Expand Down Expand Up @@ -2066,7 +2066,7 @@
},
"gdcm": {
"baseline": "3.0.7",
"port-version": 0
"port-version": 1
},
"gdcm2": {
"baseline": "deprecated",
Expand Down Expand Up @@ -2814,7 +2814,7 @@
},
"libarchive": {
"baseline": "3.4.3",
"port-version": 2
"port-version": 3
},
"libass": {
"baseline": "0.15.0",
Expand Down Expand Up @@ -4190,19 +4190,19 @@
},
"opencv": {
"baseline": "4.3.0",
"port-version": 0
"port-version": 1
},
"opencv2": {
"baseline": "2.4.13.7",
"port-version": 4
"port-version": 5
},
"opencv3": {
"baseline": "3.4.10",
"port-version": 4
"port-version": 5
},
"opencv4": {
"baseline": "4.3.0",
"port-version": 4
"port-version": 5
},
"opendnp3": {
"baseline": "3.1.0",
Expand Down Expand Up @@ -5626,7 +5626,7 @@
},
"tesseract": {
"baseline": "4.1.1",
"port-version": 5
"port-version": 6
},
"tfhe": {
"baseline": "1.0.1-1",
Expand Down
5 changes: 5 additions & 0 deletions port_versions/d-/dmlc.json
Original file line number Diff line number Diff line change
@@ -1,5 +1,10 @@
{
"versions": [
{
"git-tree": "162f71aa6f31426d3e8cbbb2614c8bba689e7bbc",
"version-string": "2019-08-12",
"port-version": 5
},
{
"git-tree": "679cba8e39c453c95a626180449c68a0aa41f724",
"version-string": "2019-08-12-4",
Expand Down
5 changes: 5 additions & 0 deletions port_versions/g-/gdcm.json
Original file line number Diff line number Diff line change
@@ -1,5 +1,10 @@
{
"versions": [
{
"git-tree": "151374d525077e7d8229b4ad2bf8f1630f36fbb5",
"version-string": "3.0.7",
"port-version": 1
},
{
"git-tree": "cc2b78ff93cde95d5d9a4c9c9b4b2a393a7195a2",
"version-string": "3.0.7",
Expand Down
5 changes: 5 additions & 0 deletions port_versions/l-/libarchive.json
Original file line number Diff line number Diff line change
@@ -1,5 +1,10 @@
{
"versions": [
{
"git-tree": "114dd98b5e7865923e2e06a1ffad5661b0aec246",
"version-string": "3.4.3",
"port-version": 3
},
{
"git-tree": "5f418195172c2db767e6f0bae8ff4d07101c70e5",
"version-string": "3.4.3",
Expand Down
5 changes: 5 additions & 0 deletions port_versions/o-/opencv.json
Original file line number Diff line number Diff line change
@@ -1,5 +1,10 @@
{
"versions": [
{
"git-tree": "6732874b9a119e4de4e9afdc72469c967348b21b",
"version-string": "4.3.0",
"port-version": 1
},
{
"git-tree": "ad5aa4dfbaa294ebc717c4a057ee7a5ce1dc297c",
"version-string": "4.3.0",
Expand Down
5 changes: 5 additions & 0 deletions port_versions/o-/opencv2.json
Original file line number Diff line number Diff line change
@@ -1,5 +1,10 @@
{
"versions": [
{
"git-tree": "50a5602ecab15fd1c36f0619a5fdbd4792eb1b23",
"version-string": "2.4.13.7",
"port-version": 5
},
{
"git-tree": "7a9db98ab98f632cba250ec9290924c4027a8f0d",
"version-string": "2.4.13.7",
Expand Down
5 changes: 5 additions & 0 deletions port_versions/o-/opencv3.json
Original file line number Diff line number Diff line change
@@ -1,5 +1,10 @@
{
"versions": [
{
"git-tree": "a761625dd5d17548aaa9611295ace23ca8bc27fc",
"version-string": "3.4.10",
"port-version": 5
},
{
"git-tree": "d08b6595a75aefc70b70a366a07c2a3b1dd66e92",
"version-string": "3.4.10",
Expand Down
5 changes: 5 additions & 0 deletions port_versions/o-/opencv4.json
Original file line number Diff line number Diff line change
@@ -1,5 +1,10 @@
{
"versions": [
{
"git-tree": "f6fbdfab1e9ac01652b51f2251715c2be05a6567",
"version-string": "4.3.0",
"port-version": 5
},
{
"git-tree": "bda3727a0c91b614fe1b275e27ad4b68f214eebe",
"version-string": "4.3.0",
Expand Down
5 changes: 5 additions & 0 deletions port_versions/t-/tesseract.json
Original file line number Diff line number Diff line change
@@ -1,5 +1,10 @@
{
"versions": [
{
"git-tree": "46aa8d12c08674f4518e9b74b32826bbb380cac9",
"version-string": "4.1.1",
"port-version": 6
},
{
"git-tree": "118674017f17f5289563c3b07f4fe5403d508151",
"version-string": "4.1.1",
Expand Down
6 changes: 3 additions & 3 deletions ports/dmlc/CONTROL
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
Source: dmlc
Version: 2019-08-12-4
Version: 2019-08-12
Port-Version: 5
Homepage: https://github.com/dmlc/dmlc-core
Description: DMLC-Core is the backbone library to support all DMLC projects, offers the bricks to build efficient and scalable distributed machine learning libraries.
Default-Features: openmp
Supports: !uwp

Feature: openmp
Description: Build with openmp
Description: Build with openmp
3 changes: 2 additions & 1 deletion ports/gdcm/CONTROL
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
Source: gdcm
Version: 3.0.7
Port-Version: 1
Homepage: https://github.com/malaterre/GDCM
Description: Grassroots DICOM library
Build-Depends: zlib, expat, openjpeg
Supports: !uwp
Supports: !uwp&!(windows&(arm|arm64))
2 changes: 1 addition & 1 deletion ports/libarchive/CONTROL
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
Source: libarchive
Version: 3.4.3
Port-Version: 2
Port-Version: 3
Homepage: https://github.com/libarchive/libarchive
Description: Library for reading and writing streaming archives
Build-Depends: zlib
Expand Down
14 changes: 4 additions & 10 deletions ports/libarchive/portfile.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -64,19 +64,13 @@ vcpkg_configure_cmake(
)

vcpkg_install_cmake()

vcpkg_copy_pdbs()

foreach(_feature IN LISTS FEATURE_OPTIONS)
string(REPLACE "-D" "" _feature "${_feature}")
string(REPLACE "=" ";" _feature "${_feature}")
string(REPLACE "ON" "1" _feature "${_feature}")
string(REPLACE "OFF" "0" _feature "${_feature}")
list(GET _feature 0 _feature_name)
list(GET _feature 1 _feature_status)
set(${_feature_name} ${_feature_status})
endforeach()
configure_file("${CMAKE_CURRENT_LIST_DIR}/vcpkg-cmake-wrapper.cmake" "${CURRENT_PACKAGES_DIR}/share/${PORT}/vcpkg-cmake-wrapper.cmake" @ONLY)
configure_file("${CMAKE_CURRENT_LIST_DIR}/vcpkg-cmake-wrapper.cmake.in" "${CURRENT_PACKAGES_DIR}/share/${PORT}/vcpkg-cmake-wrapper.cmake" @ONLY)

file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include)

foreach(HEADER ${CURRENT_PACKAGES_DIR}/include/archive.h ${CURRENT_PACKAGES_DIR}/include/archive_entry.h)
file(READ ${HEADER} CONTENTS)
string(REPLACE "(!defined LIBARCHIVE_STATIC)" "0" CONTENTS "${CONTENTS}")
Expand Down
Original file line number Diff line number Diff line change
@@ -1,29 +1,50 @@
_find_package(${ARGS})

include(CMakeFindDependencyMacro)

if(@ENABLE_ZLIB@)
find_dependency(ZLIB)
endif()
if(@ENABLE_BZip2@)
find_dependency(BZip2)
endif()
if(@ENABLE_LIBXML2@)
find_dependency(LibXml2)
endif()
if(@ENABLE_LZ4@)
find_dependency(lz4)
endif()
if(@ENABLE_LZMA@)
find_dependency(LibLZMA)
endif()
if(@ENABLE_ZSTD@)
find_dependency(zstd)
endif()
if(@ENABLE_OPENSSL@)
find_dependency(OpenSSL)
endif()
if(@ENABLE_LZO@)
find_library(LZO_LIBRARY_DEBUG NAMES lzo2d lzo2 NAMES_PER_DIR PATH_SUFFIXES lib PATHS "${_VCPKG_INSTALLED_DIR}/${VCPKG_TARGET_TRIPLET}/debug" NO_DEFAULT_PATH)
find_library(LZO_LIBRARY_RELEASE NAMES lzo2 NAMES_PER_DIR PATH_SUFFIXES lib PATHS "${_VCPKG_INSTALLED_DIR}/${VCPKG_TARGET_TRIPLET}" NO_DEFAULT_PATH)
endif()

if("@VCPKG_LIBRARY_LINKAGE@" STREQUAL "static")
if(@ENABLE_ZLIB@)
find_package(ZLIB REQUIRED)
list(APPEND LibArchive_LIBRARIES ZLIB::ZLIB)
endif()
if(@ENABLE_BZip2@)
find_package(BZip2 REQUIRED)
list(APPEND LibArchive_LIBRARIES BZip2::BZip2)
endif()
if(@ENABLE_LIBXML2@)
find_package(LibXml2 REQUIRED)
list(APPEND LibArchive_LIBRARIES LibXml2::LibXml2)
endif()
if(@ENABLE_LZ4@)
find_package(lz4 REQUIRED)
list(APPEND LibArchive_LIBRARIES lz4::lz4)
endif()
if(@ENABLE_LZMA@)
find_package(LibLZMA REQUIRED)
list(APPEND LibArchive_LIBRARIES LibLZMA::LibLZMA)
endif()
if(@ENABLE_LZO@)
find_library(LZO_LIBRARY_DEBUG NAMES lzo2d lzo2 NAMES_PER_DIR PATH_SUFFIXES lib PATHS "${_VCPKG_INSTALLED_DIR}/${VCPKG_TARGET_TRIPLET}/debug" NO_DEFAULT_PATH)
find_library(LZO_LIBRARY_RELEASE NAMES lzo2 NAMES_PER_DIR PATH_SUFFIXES lib PATHS "${_VCPKG_INSTALLED_DIR}/${VCPKG_TARGET_TRIPLET}" NO_DEFAULT_PATH)
if(LZO_LIBRARY_RELEASE)
list(APPEND LibArchive_LIBRARIES optimized ${LZO_LIBRARY_RELEASE})
endif()
Expand All @@ -32,15 +53,13 @@ if("@VCPKG_LIBRARY_LINKAGE@" STREQUAL "static")
endif()
endif()
if(@ENABLE_ZSTD@)
find_package(zstd CONFIG REQUIRED)
if(TARGET zstd::libzstd_shared)
list(APPEND LibArchive_LIBRARIES zstd::libzstd_shared)
else(TARGET zstd::libzstd_shared)
list(APPEND LibArchive_LIBRARIES zstd::libzstd_static)
endif(TARGET zstd::libzstd_shared)
endif()
if(@ENABLE_OPENSSL@)
find_package(OpenSSL REQUIRED)
list(APPEND LibArchive_LIBRARIES OpenSSL::Crypto)
endif()

Expand Down
7 changes: 6 additions & 1 deletion ports/opencv/CONTROL
Original file line number Diff line number Diff line change
@@ -1,9 +1,10 @@
Source: opencv
Version: 4.3.0
Port-Version: 1
Homepage: https://github.com/opencv/opencv
Description: Computer vision library
Build-Depends: opencv4[core]
Default-Features: dnn, jpeg, opengl, png, tiff, webp
Default-Features: dnn, jpeg, png, tiff, webp

Feature: nonfree
Build-Depends: opencv4[core,nonfree]
Expand Down Expand Up @@ -53,6 +54,10 @@ Feature: jpeg
Build-Depends: opencv4[core,jpeg]
Description: JPEG support for opencv

Feature: lapack
Build-Depends: opencv4[core,lapack]
Description: LAPACK support for opencv

Feature: openexr
Build-Depends: opencv4[core,openexr]
Description: OpenEXR support for opencv
Expand Down
Loading