Merge branch 'master' into path_separator

This commit is contained in:
Alexander Neumann 2019-08-19 21:40:43 +02:00 committed by GitHub
commit 70f4aabbe8
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
288 changed files with 5085 additions and 2361 deletions

View File

@ -1,26 +1,37 @@
# Maintainer Guidelines and Policies
This document lists a set of policies that you should apply when adding or updating a port recipe. It is intended to serve the role of [Debian's Policy Manual](https://www.debian.org/doc/debian-policy/), [Homebrew's Maintainer Guidelines](https://docs.brew.sh/Maintainer-Guidelines), and [Homebrew's Formula Cookbook](https://docs.brew.sh/Formula-Cookbook).
This document lists a set of policies that you should apply when adding or updating a port recipe.
It is intended to serve the role of
[Debian's Policy Manual](https://www.debian.org/doc/debian-policy/),
[Homebrew's Maintainer Guidelines](https://docs.brew.sh/Maintainer-Guidelines), and
[Homebrew's Formula Cookbook](https://docs.brew.sh/Formula-Cookbook).
## PR Structure
### Make separate Pull Requests per port
Whenever possible, separate changes into multiple PR's. This makes them significantly easier to review and prevents issues with one set of changes from holding up every other change.
Whenever possible, separate changes into multiple PRs.
This makes them significantly easier to review and prevents issues with one set of changes from holding up every other change.
### Avoid trivial changes in untouched files
For example, avoid reformatting or renaming variables in portfiles that otherwise have no reason to be modified for the issue at hand. However, if you need to modify the file for the primary purpose of the PR (updating the library), then obviously beneficial changes like fixing typos are appreciated!
For example, avoid reformatting or renaming variables in portfiles that otherwise have no reason to be modified for the issue at hand.
However, if you need to modify the file for the primary purpose of the PR (updating the library),
then obviously beneficial changes like fixing typos are appreciated!
### Check names against other repositories
A good service to check many at once is [Repology](https://repology.org/). If the library you are adding could be confused with another one, consider renaming to make it clear.
A good service to check many at once is [Repology](https://repology.org/).
If the library you are adding could be confused with another one,
consider renaming to make it clear.
### Use GitHub Draft PRs
GitHub Draft PRs are a great way to get CI or human feedback on work that isn't yet ready to merge. Most new PRs should be opened as drafts and converted to normal PRs once the CI passes.
GitHub Draft PRs are a great way to get CI or human feedback on work that isn't yet ready to merge.
Most new PRs should be opened as drafts and converted to normal PRs once the CI passes.
More information about GitHub Draft PRs: https://github.blog/2019-02-14-introducing-draft-pull-requests/
More information about GitHub Draft PRs:
https://github.blog/2019-02-14-introducing-draft-pull-requests/
## Portfiles
@ -28,29 +39,33 @@ More information about GitHub Draft PRs: https://github.blog/2019-02-14-introduc
At this time, the following helpers are deprecated:
1. `vcpkg_extract_archive()` should be replaced by `vcpkg_extract_archive_ex()`
2. `vcpkg_apply_patches()` should be replaced by the `PATCHES` arguments to the "extract" helpers (e.g. `vcpkg_from_github()`)
3. `vcpkg_build_msbuild()` should be replaced by `vcpkg_install_msbuild()`
1. `vcpkg_extract_archive()` should be replaced by [`vcpkg_extract_archive_ex()`](vcpkg_extract_archive_ex.md)
2. `vcpkg_apply_patches()` should be replaced by the `PATCHES` arguments to the "extract" helpers (e.g. [`vcpkg_from_github()`](vcpkg_from_github.md))
3. `vcpkg_build_msbuild()` should be replaced by [`vcpkg_install_msbuild()`](vcpkg_install_msbuild.md)
### Avoid excessive comments in portfiles
Ideally, portfiles should be short, simple, and as declarative as possible. Remove any boiler plate comments introduced by the `create` command before submitting a PR.
Ideally, portfiles should be short, simple, and as declarative as possible.
Remove any boiler plate comments introduced by the `create` command before submitting a PR.
## Build Techniques
### Do not use vendored dependencies
Do not use embedded copies of libraries. All dependencies should be split out and packaged separately so they can be updated and maintained.
Do not use embedded copies of libraries.
All dependencies should be split out and packaged separately so they can be updated and maintained.
### Prefer using CMake
When multiple buildsystems are available, prefer using CMake. Additionally, when appropriate, it can be easier and more maintainable to rewrite alternative buildsystems into CMake using `file(GLOB)` directives.
When multiple buildsystems are available, prefer using CMake.
Additionally, when appropriate, it can be easier and more maintainable to rewrite alternative buildsystems into CMake using `file(GLOB)` directives.
Examples: [abseil](../../ports/abseil/portfile.cmake)
### Choose either static or shared binaries
By default, `vcpkg_configure_cmake()` will pass in the appropriate setting for `BUILD_SHARED_LIBS`, however for libraries that don't respect that variable, you can switch on `VCPKG_LIBRARY_LINKAGE`:
By default, `vcpkg_configure_cmake()` will pass in the appropriate setting for `BUILD_SHARED_LIBS`,
however for libraries that don't respect that variable, you can switch on `VCPKG_LIBRARY_LINKAGE`:
```cmake
string(COMPARE EQUAL "${VCPKG_LIBRARY_LINKAGE}" "static" KEYSTONE_BUILD_STATIC)
@ -67,19 +82,37 @@ vcpkg_configure_cmake(
### When defining features, explicitly control dependencies
When defining a feature that captures an optional dependency, ensure that the dependency will not be used accidentally when the feature is not explicitly enabled. For example:
When defining a feature that captures an optional dependency,
ensure that the dependency will not be used accidentally when the feature is not explicitly enabled.
```cmake
set(CMAKE_DISABLE_FIND_PACKAGE_ZLIB ON)
if ("zlib" IN_LIST FEATURES)
set(CMAKE_DISABLE_FIND_PACKAGE_ZLIB OFF)
else()
set(CMAKE_DISABLE_FIND_PACKAGE_ZLIB ON)
endif()
vcpkg_configure_cmake(
SOURCE_PATH ${SOURCE_PATH}
PREFER_NINJA
OPTIONS
-DCMAKE_DISABLE_FIND_PACKAGE_ZLIB=${CMAKE_DISABLE_FIND_PACKAGE_ZLIB}
-CMAKE_DISABLE_FIND_PACKAGE_ZLIB=${CMAKE_DISABLE_FIND_PACKAGE_ZLIB}
)
```
The snippet below using `vcpkg_check_features()` is equivalent, [see the documentation](vcpkg_check_features.md).
```cmake
vcpkg_check_features(OUT_FEATURE_OPTIONS FEATURE_OPTIONS
INVERTED_FEATURES
"zlib" CMAKE_DISABLE_FIND_PACKAGE_ZLIB
)
vcpkg_configure_cmake(
SOURCE_PATH ${SOURCE_PATH}
PREFER_NINJA
OPTIONS
${FEATURE_OPTIONS}
)
```
@ -125,6 +158,22 @@ Common options that allow avoiding patching:
2. [CMAKE] Calls to `find_package(XYz)` in CMake scripts can be disabled via [`-DCMAKE_DISABLE_FIND_PACKAGE_XYz=ON`](https://cmake.org/cmake/help/v3.15/variable/CMAKE_DISABLE_FIND_PACKAGE_PackageName.html)
3. [CMAKE] Cache variables (declared as `set(VAR "value" CACHE STRING "Documentation")` or `option(VAR "Documentation" "Default Value")`) can be overriden by just passing them in on the command line as `-DVAR:STRING=Foo`. One notable exception is if the `FORCE` parameter is passed to `set()`. See also the [CMake `set` documentation](https://cmake.org/cmake/help/v3.15/command/set.html)
### Prefer patching over overriding `VCPKG_<VARIABLE>` values
Some variables prefixed with `VCPKG_<VARIABLE>` have an equivalent `CMAKE_<VARIABLE>`.
However, not all of them are passed to the internal package build [(see implementation: Windows toolchain)](../../scripts/toolchains/windows.cmake).
Consider the following example:
```cmake
set(VCPKG_C_FLAGS "-O2 ${VCPKG_C_FLAGS}")
set(VCPKG_CXX_FLAGS "-O2 ${VCPKG_CXX_FLAGS}")
```
Using `vcpkg`'s built-in toolchains this works, because the value of `VCPKG_<LANG>_FLAGS` is forwarded to the appropriate `CMAKE_LANG_FLAGS` variable. But, a custom toolchain that is not aware of `vcpkg`'s variables will not forward them.
Because of this, it is preferable to patch the buildsystem directly when setting `CMAKE_<LANG>_FLAGS`.
### Minimize patches
When making changes to a library, strive to minimize the final diff. This means you should _not_ reformat the upstream source code when making changes that affect a region. Also, when disabling a conditional, it is better to add a `AND FALSE` or `&& 0` to the condition than to delete every line of the conditional.

View File

@ -24,4 +24,5 @@
- [vcpkg\_from\_gitlab](vcpkg_from_gitlab.md)
- [vcpkg\_install\_cmake](vcpkg_install_cmake.md)
- [vcpkg\_install\_msbuild](vcpkg_install_msbuild.md)
- [vcpkg\_prettify\_command](vcpkg_prettify_command.md)
- [vcpkg\_test\_cmake](vcpkg_test_cmake.md)

View File

@ -1,71 +1,148 @@
# vcpkg_check_features
Check if one or more features are a part of the package installation.
Check if one or more features are a part of a package installation.
## Usage
```cmake
vcpkg_check_features(
<feature1> <output_variable1>
[<feature2> <output_variable2>]
...
OUT_FEATURE_OPTIONS <FEATURE_OPTIONS>
[FEATURES
<cuda> <WITH_CUDA>
[<opencv> <WITH_OPENCV>]
...]
[INVERTED_FEATURES
<cuda> <IGNORE_PACKAGE_CUDA>
[<opencv> <IGNORE_PACKAGE_OPENCV>]
...]
)
```
`vcpkg_check_features()` accepts these parameters:
`vcpkg_check_features` accepts a list of (feature, output_variable) pairs. If a feature is specified, the corresponding output variable will be set as `ON`, or `OFF` otherwise. The syntax is similar to the `PROPERTIES` argument of `set_target_properties`.
* `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:
* `-D<OPTION_NAME>=ON`, if a feature is specified for installation,
* `-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:
* `-D<OPTION_NAME>=OFF`, if a feature is specified for installation,
* `-D<OPTION_NAME>=ON`, otherwise.
## Notes
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,
two conflicting definitions are added to `OUT_FEATURE_OPTIONS`.
## Examples
### Example 1: Regular features
`vcpkg_check_features` will create a variable `FEATURE_OPTIONS` in the parent scope, which you can pass as a part of `OPTIONS` argument when calling functions like `vcpkg_config_cmake`:
```cmake
vcpkg_config_cmake(
$ ./vcpkg install mimalloc[asm,secure]
# ports/mimalloc/portfile.cmake
vcpkg_check_features(OUT_FEATURE_OPTIONS FEATURE_OPTIONS
# Keyword FEATURES is optional if INVERTED_FEATURES are not used
asm MI_SEE_ASM
override MI_OVERRIDE
secure MI_SECURE
)
vcpkg_configure_cmake(
SOURCE_PATH ${SOURCE_PATH}
PREFER_NINJA
OPTIONS
-DBUILD_TESTING=ON
# Expands to "-DMI_SEE_ASM=ON; -DMI_OVERRIDE=OFF; -DMI_SECURE=ON"
${FEATURE_OPTIONS}
)
```
## Notes
### Example 2: Inverted features
```cmake
vcpkg_check_features(<feature> <output_variable>)
```
can be used as a replacement of:
```cmake
if(<feature> IN_LIST FEATURES)
set(<output_variable> ON)
else()
set(<output_variable> OFF)
endif()
$ ./vcpkg install cpprestsdk[websockets]
# ports/cpprestsdk/portfile.cmake
vcpkg_check_features(OUT_FEATURE_OPTIONS FEATURE_OPTIONS
INVERTED_FEATURES # <- Keyword INVERTED_FEATURES required
brotli CPPREST_EXCLUDE_BROTLI
websockets CPPREST_EXCLUDE_WEBSOCKETS
)
vcpkg_configure_cmake(
SOURCE_PATH ${SOURCE_PATH}
PREFER_NINJA
OPTIONS
# Expands to "-DCPPREST_EXCLUDE_BROTLI=ON; -DCPPREST_EXCLUDE_WEBSOCKETS=OFF"
${FEATURE_OPTIONS}
)
```
However, if you have a feature that was checked like this before:
```cmake
if(<feature> IN_LIST FEATURES)
set(<output_variable> OFF)
else()
set(<output_variable> ON)
endif()
```
then you should not use `vcpkg_check_features` instead. [```oniguruma```](https://github.com/microsoft/vcpkg/blob/master/ports/oniguruma/portfile.cmake), for example, has a feature named `non-posix` which is checked with:
```cmake
if("non-posix" IN_LIST FEATURES)
set(ENABLE_POSIX_API OFF)
else()
set(ENABLE_POSIX_API ON)
endif()
```
and by replacing these code with:
```cmake
vcpkg_check_features(non-posix ENABLE_POSIX_API)
```
is totally wrong.
### Example 3: Set multiple options for same feature
`vcpkg_check_features` is supposed to be called only once. Otherwise, the `FEATURE_OPTIONS` variable set by a previous call will be overwritten.
```cmake
$ ./vcpkg install pcl[cuda]
## Examples
# ports/pcl/portfile.cmake
vcpkg_check_features(OUT_FEATURE_OPTIONS FEATURE_OPTIONS
cuda WITH_CUDA
cuda BUILD_CUDA
cuda BUILD_GPU
)
vcpkg_configure_cmake(
SOURCE_PATH ${SOURCE_PATH}
PREFER_NINJA
OPTIONS
# Expands to "-DWITH_CUDA=ON; -DBUILD_CUDA=ON; -DBUILD_GPU=ON"
${FEATURE_OPTIONS}
)
```
### Example 4: Use regular and inverted features
```cmake
$ ./vcpkg install rocksdb[tbb]
# ports/rocksdb/portfile.cmake
vcpkg_check_features(OUT_FEATURE_OPTIONS FEATURE_OPTIONS
FEATURES # <- Keyword FEATURES is required because INVERTED_FEATURES are being used
tbb WITH_TBB
INVERTED_FEATURES
tbb ROCKSDB_IGNORE_PACKAGE_TBB
)
vcpkg_configure_cmake(
SOURCE_PATH ${SOURCE_PATH}
PREFER_NINJA
OPTIONS
# Expands to "-DWITH_TBB=ON; -DROCKSDB_IGNORE_PACKAGE_TBB=OFF"
${FEATURE_OPTIONS}
)
```
## Examples in portfiles
* [cpprestsdk](https://github.com/microsoft/vcpkg/blob/master/ports/cpprestsdk/portfile.cmake)
* [pcl](https://github.com/microsoft/vcpkg/blob/master/ports/pcl/portfile.cmake)
* [rocksdb](https://github.com/microsoft/vcpkg/blob/master/ports/rocksdb/portfile.cmake)
* [czmq](https://github.com/microsoft/vcpkg/blob/master/ports/czmq/portfile.cmake)
* [xsimd](https://github.com/microsoft/vcpkg/blob/master/ports/xsimd/portfile.cmake)
* [xtensor](https://github.com/microsoft/vcpkg/blob/master/ports/xtensor/portfile.cmake)
## Source
[scripts/cmake/vcpkg_check_features.cmake](https://github.com/Microsoft/vcpkg/blob/master/scripts/cmake/vcpkg_check_features.cmake)

View File

@ -18,14 +18,15 @@ vcpkg_configure_cmake(
## Parameters
### SOURCE_PATH
Specifies the directory containing the `CMakeLists.txt`. By convention, this is usually set in the portfile as the variable `SOURCE_PATH`.
Specifies the directory containing the `CMakeLists.txt`.
By convention, this is usually set in the portfile as the variable `SOURCE_PATH`.
### PREFER_NINJA
Indicates that, when available, Vcpkg should use Ninja to perform the build. This should be specified unless the port is known to not work under Ninja.
Indicates that, when available, Vcpkg should use Ninja to perform the build.
This should be specified unless the port is known to not work under Ninja.
### DISABLE_PARALLEL_CONFIGURE
Disables running the CMake configure step in parallel.
This is needed for libraries which write back into their source directory during configure.
### NO_CHARSET_FLAG
@ -36,7 +37,8 @@ This is needed for libraries that set their own source code's character set.
### GENERATOR
Specifies the precise generator to use.
This is useful if some project-specific buildsystem has been wrapped in a cmake script that won't perform an actual build. If used for this purpose, it should be set to "NMake Makefiles".
This is useful if some project-specific buildsystem has been wrapped in a cmake script that won't perform an actual build.
If used for this purpose, it should be set to "NMake Makefiles".
### OPTIONS
Additional options passed to CMake during the configuration.

View File

@ -0,0 +1,17 @@
# vcpkg_prettify_command
Turns list of command arguments into a formatted string.
## Usage
```cmake
vcpkg_prettify_command()
```
## Examples
* `scripts/cmake/vcpkg_execute_build_process.cmake`
* `scripts/cmake/vcpkg_execute_required_process.cmake`
* `scripts/cmake/vcpkg_execute_required_process_repeat.cmake`
## Source
[scripts/cmake/vcpkg_prettify_command.cmake](https://github.com/Microsoft/vcpkg/blob/master/scripts/cmake/vcpkg_prettify_command.cmake)

View File

@ -1,3 +1,3 @@
Source: ade
Version: 0.1.1e
Version: 0.1.1f
Description: ADE Framework is a graph construction, manipulation, and processing framework. ADE Framework is suitable for organizing data flow processing and execution.

View File

@ -3,8 +3,8 @@ include(vcpkg_common_functions)
vcpkg_from_github(
OUT_SOURCE_PATH SOURCE_PATH
REPO opencv/ade
REF v0.1.1e
SHA512 6271b3a6d23b155757a47b21f70cb169b0469501bd1a7c99aa91a76117387840e02b4c70dc4069b7c50408f760b9a7ea77527a30b4691048a1ee55dd94988dd5
REF v0.1.1f
SHA512 fbdec8f3d5811a573abb81f1ceb6fb8d40274439013f749645db5430c6d9cdc52227c25203f1a68177b263d648bb65197ea7c2bea7871264a06585e59892631c
HEAD_REF master
)

View File

@ -1,3 +1,6 @@
Source: angelscript
Version: 2.33.0-1
Version: 2.33.1-1
Description: The AngelCode Scripting Library, or AngelScript as it is also known, is an extremely flexible cross-platform scripting library designed to allow applications to extend their functionality through external scripts. It has been designed from the beginning to be an easy to use component, both for the application programmer and the script writer.
Feature: addons
Description: Installs all addons for use in compiling scripts addons

View File

@ -28,3 +28,11 @@ vcpkg_fixup_cmake_targets(CONFIG_PATH lib/cmake/Angelscript)
# Handle copyright
file(INSTALL ${CURRENT_PORT_DIR}/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/angelscript RENAME copyright)
# Copy the addon files
if("addons" IN_LIST FEATURES)
file(INSTALL ${SOURCE_PATH}/add_on/ DESTINATION ${CURRENT_PACKAGES_DIR}/include/angelscript FILES_MATCHING PATTERN "*.h" PATTERN "*.cpp")
endif()
# Post-build test for cmake libraries
# vcpkg_test_cmake(PACKAGE_NAME angelscript)

5
ports/bento4/CONTROL Normal file
View File

@ -0,0 +1,5 @@
Source: bento4
Version: 1.5.1-628
Homepage: https://github.com/axiomatic-systems/Bento4
Description: Bento4 is a C++ class library and tools designed to read and write ISO-MP4 files. This format is defined in international specifications ISO/IEC 14496-12, 14496-14 and 14496-15.

6
ports/bento4/LICENSE Normal file
View File

@ -0,0 +1,6 @@
Bento4 is developed by Axiomatic Systems LLC in San Francisco, California.
This software is available under two different licenses
For applications that are entirely distributable under the terms of the GPL(https://www.gnu.org/licenses/old-licenses/gpl-2.0-standalone.html), the Bento4 GPL license applies.
For applications that cannot be entirely distributable under the terms of the GPL (either the application, or code modules linked with the application are not compatible with the terms of the GPL licence), a non-GPL commercial license is available from Axiomatic Systems LLC.
Contact Gilles Boccon-Gibod (licensing@axiosys.com or bok@bok.net) for more information.

View File

@ -0,0 +1,43 @@
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 2f08b2f..fccf2a8 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -35,6 +35,8 @@ endif()
add_library(ap4 STATIC ${AP4_SOURCES})
+add_definitions(-D_CRT_SECURE_NO_WARNINGS)
+
# Includes
include_directories(
${SOURCE_CORE}
@@ -43,6 +45,14 @@ include_directories(
${SOURCE_METADATA}
)
+# AP4 includes
+file(GLOB AP4_INCLUDES
+ ${SOURCE_CODECS}/*.h
+ ${SOURCE_CORE}/*.h
+ ${SOURCE_CRYPTO}/*.h
+ ${SOURCE_METADATA}/*.h
+)
+
# Apps
file(GLOB BENTO4_APPS RELATIVE ${SOURCE_ROOT}/Apps ${SOURCE_ROOT}/Apps/*)
foreach(app ${BENTO4_APPS})
@@ -50,3 +60,13 @@ foreach(app ${BENTO4_APPS})
add_executable(${binary_name} ${SOURCE_ROOT}/Apps/${app}/${app}.cpp)
target_link_libraries(${binary_name} ap4)
endforeach()
+
+# Install targets
+install(TARGETS ap4
+ RUNTIME DESTINATION bin
+ LIBRARY DESTINATION lib
+ ARCHIVE DESTINATION lib
+)
+
+# Install headers
+install(FILES ${AP4_INCLUDES} DESTINATION include)
\ No newline at end of file

View File

@ -0,0 +1,25 @@
include(vcpkg_common_functions)
vcpkg_check_linkage(ONLY_STATIC_LIBRARY)
vcpkg_from_github(
OUT_SOURCE_PATH SOURCE_PATH
REPO axiomatic-systems/Bento4
REF v1.5.1-628
SHA512 2bf44f55307178cc9128e323904acbfaa2f88e06beff26cf27fc0a7707875942de89778a0ee1a8315ef2c3b19754edad77d32fdb74f3d651f03c2623e7a9122d
HEAD_REF master
PATCHES fix-install-and-c4996-error.patch
)
vcpkg_configure_cmake(
SOURCE_PATH ${SOURCE_PATH}
PREFER_NINJA
)
vcpkg_install_cmake()
file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include)
vcpkg_copy_pdbs()
file(INSTALL ${CMAKE_CURRENT_LIST_DIR}/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/${PORT} RENAME copyright)

View File

@ -0,0 +1,107 @@
diff --git a/blosc/CMakeLists.txt b/blosc/CMakeLists.txt
index 1d1bebe..3a7a51c 100644
--- a/blosc/CMakeLists.txt
+++ b/blosc/CMakeLists.txt
@@ -109,7 +109,7 @@ endif(NOT DEACTIVATE_ZLIB)
if (NOT DEACTIVATE_ZSTD)
if (ZSTD_FOUND)
- set(LIBS ${LIBS} ${ZSTD_LIBRARY})
+ set(LIBS ${LIBS} ${ZSTD_LIBRARIES})
else (ZSTD_FOUND)
file(GLOB ZSTD_FILES
${ZSTD_LOCAL_DIR}/common/*.c
diff --git a/cmake/FindLZ4.cmake b/cmake/FindLZ4.cmake
index e581a80..8ce17c5 100644
--- a/cmake/FindLZ4.cmake
+++ b/cmake/FindLZ4.cmake
@@ -1,10 +1,13 @@
-find_path(LZ4_INCLUDE_DIR lz4.h)
+find_path(LZ4_INCLUDE_DIRS NAMES lz4.h)
-find_library(LZ4_LIBRARY NAMES lz4)
+find_library(LZ4_LIBRARY_DEBUG NAMES lz4d)
+find_library(LZ4_LIBRARY_RELEASE NAMES lz4)
-if (LZ4_INCLUDE_DIR AND LZ4_LIBRARY)
- set(LZ4_FOUND TRUE)
- message(STATUS "Found LZ4 library: ${LZ4_LIBRARY}")
-else ()
- message(STATUS "No LZ4 library found. Using internal sources.")
-endif ()
+include(SelectLibraryConfigurations)
+select_library_configurations(LZ4)
+
+include(FindPackageHandleStandardArgs)
+find_package_handle_standard_args(
+ LZ4
+ REQUIRED_VARS LZ4_LIBRARIES LZ4_INCLUDE_DIRS
+)
diff --git a/cmake/FindSnappy.cmake b/cmake/FindSnappy.cmake
index 688d4d5..c8b9a05 100644
--- a/cmake/FindSnappy.cmake
+++ b/cmake/FindSnappy.cmake
@@ -1,10 +1,13 @@
-find_path(SNAPPY_INCLUDE_DIR snappy-c.h)
+find_path(SNAPPY_INCLUDE_DIR snappy.h)
-find_library(SNAPPY_LIBRARY NAMES snappy)
+find_library(SNAPPY_LIBRARY_DEBUG NAMES snappyd)
+find_library(SNAPPY_LIBRARY_RELEASE NAMES snappy)
-if (SNAPPY_INCLUDE_DIR AND SNAPPY_LIBRARY)
- set(SNAPPY_FOUND TRUE)
- message(STATUS "Found SNAPPY library: ${SNAPPY_LIBRARY}")
-else ()
- message(STATUS "No snappy found. Using internal sources.")
-endif ()
+include(SelectLibraryConfigurations)
+select_library_configurations(SNAPPY)
+
+include(FindPackageHandleStandardArgs)
+FIND_PACKAGE_HANDLE_STANDARD_ARGS(
+ SNAPPY DEFAULT_MSG
+ SNAPPY_LIBRARY SNAPPY_INCLUDE_DIR
+)
diff --git a/cmake/FindZstd.cmake b/cmake/FindZstd.cmake
index 7db4bb9..ba20ba6 100644
--- a/cmake/FindZstd.cmake
+++ b/cmake/FindZstd.cmake
@@ -1,10 +1,30 @@
+include(FindPackageHandleStandardArgs)
+
find_path(ZSTD_INCLUDE_DIR zstd.h)
-find_library(ZSTD_LIBRARY NAMES zstd)
+get_filename_component(_prefix_path ${ZSTD_INCLUDE_DIR} PATH)
+
+find_library(
+ ZSTD_LIBRARY_DEBUG
+ NAMES zstdd
+ PATHS ${_prefix_path}/debug/lib
+ NO_DEFAULT_PATH
+)
+
+find_library(
+ ZSTD_LIBRARY_RELEASE
+ NAMES zstd
+ PATHS ${_prefix_path}/lib
+ NO_DEFAULT_PATH
+)
+
+unset(_prefix_path)
+
+include(SelectLibraryConfigurations)
+select_library_configurations(ZSTD)
-if (ZSTD_INCLUDE_DIR AND ZSTD_LIBRARY)
- set(ZSTD_FOUND TRUE)
- message(STATUS "Found Zstd library: ${ZSTD_LIBRARY}")
-else ()
- message(STATUS "No Zstd library found. Using internal sources.")
-endif ()
+include(FindPackageHandleStandardArgs)
+find_package_handle_standard_args(
+ ZSTD
+ REQUIRED_VARS ZSTD_LIBRARIES ZSTD_INCLUDE_DIR
+)

View File

@ -1,5 +1,5 @@
Source: blosc
Version: 1.17.0
Version: 1.17.0-1
Build-Depends: lz4, snappy, zlib, zstd
Homepage: https://github.com/Blosc/c-blosc
Description: A blocking, shuffling and loss-less compression library that can be faster than `memcpy()`

View File

@ -0,0 +1,33 @@
include(FindPackageHandleStandardArgs)
find_path(
BLOSC_INCLUDE_DIRS
blosc.h
)
get_filename_component(_prefix_path ${BLOSC_INCLUDE_DIRS} PATH)
find_library(
BLOSC_LIBRARY_DEBUG
NAMES blosc
PATHS ${_prefix_path}/debug/lib
NO_DEFAULT_PATH
)
find_library(
SNAPPY_LIBRARY_RELEASE
NAMES blosc
PATHS ${_prefix_path}/lib
NO_DEFAULT_PATH
)
unset(_prefix_path)
include(SelectLibraryConfigurations)
select_library_configurations(blosc)
include(FindPackageHandleStandardArgs)
find_package_handle_standard_args(
blosc
REQUIRED_VARS BLOSC_LIBRARIES BLOSC_INCLUDE_DIRS
)

View File

@ -6,6 +6,8 @@ vcpkg_from_github(
REF v1.17.0
SHA512 7fe517e9d050a36839ddf963e718881533cc10a7c8963222b3167fd48ec84455614206c1cc2c248f52042a019262fa0419c4c1a828eb1ae64294c55bbaf56f6e
HEAD_REF master
PATCHES
0001-find-deps.patch
)
if (VCPKG_LIBRARY_LINKAGE STREQUAL static)
@ -51,3 +53,7 @@ file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include)
# Handle copyright
file(INSTALL ${SOURCE_PATH}/LICENSES/BLOSC.txt DESTINATION ${CURRENT_PACKAGES_DIR}/share/blosc RENAME copyright)
file(COPY
"${CMAKE_CURRENT_LIST_DIR}/FindBlosc.cmake"
DESTINATION ${CURRENT_PACKAGES_DIR}/share/${PORT}
)

View File

@ -1,5 +1,5 @@
Source: brynet
Version: 1.0.2
Version: 1.0.3
Homepage: https://github.com/IronsDu/brynet
Description: A C++ cross platform high performance tcp network library, and support SSL/HTTP/Websocket.
Build-Depends: openssl

View File

@ -5,8 +5,8 @@ vcpkg_check_linkage(ONLY_STATIC_LIBRARY)
vcpkg_from_github(
OUT_SOURCE_PATH SOURCE_PATH
REPO IronsDu/brynet
REF v1.0.2
SHA512 b07ceb858ed125959b3901415d6099939acf51a194950de8c65f063b6462a0ab424494659aedd889378bd4388cc9e71a0aedcb30108b6c2eef4d5e6ebea2cce8
REF v1.0.3
SHA512 8759b522da34be68a7ba0959ed3d85382965efe5080e4cdd403001f3911d36398b7fe9d039fd9fb485a0d557cec0fa53863a512eb88f13f3ff222b6e30642baf
HEAD_REF master
)

View File

@ -1,4 +1,4 @@
Source: catch2
Version: 2.9.1-1
Version: 2.9.2
Description: A modern, header-only test framework for unit testing.
Homepage: https://github.com/catchorg/Catch2

View File

@ -3,8 +3,8 @@ include(vcpkg_common_functions)
vcpkg_from_github(
OUT_SOURCE_PATH SOURCE_PATH
REPO catchorg/Catch2
REF v2.9.1
SHA512 ea18eef1fece72518c8a46b89727f5d0545a15038957087324abe6421c682693379476ff46106132f080677ebcc1c9ead51a9cf25dced3bb576a33e4f6fae4f6
REF v2.9.2
SHA512 06430322dbeb637902f3bdc1c4df04e2525bc3ad9aea47aaf284b311401f26f489092971a2822d5a54041ef1d01d1b1bda3eedea2ba5041ae89903d8e56db121
HEAD_REF master
)

View File

@ -1,3 +1,3 @@
Source: cgltf
Version: 2019-04-30
Version: 1.2
Description: Single-file glTF 2.0 parser written in C99

View File

@ -5,8 +5,8 @@ include(vcpkg_common_functions)
vcpkg_from_github(
OUT_SOURCE_PATH SOURCE_PATH
REPO jkuhlmann/cgltf
REF 093ef81bf63ec18ba6d9f61073da8881fb7619b3
SHA512 8801c13ee98780e845c7d28b27d523af86ab2a49499bbb235ee67a91dfacda3c7fddc9503d91918001a432267f890e82c2204a9c1462c64467034d334b0eadf2
REF v1.2
SHA512 3a678023ffd25416a1454da5e67bdf303d08dcd5a46e19a912dc2dfc549a6cd5800024649757c19653f9b2763fc6342d8dd398e940b2df6c3e1b222a4fd2e0e1
HEAD_REF master
)

View File

@ -1,4 +1,4 @@
Source: chakracore
Version: 1.11.11
Version: 1.11.12
Homepage: https://github.com/Microsoft/ChakraCore
Description: Core part of the Chakra Javascript engine

View File

@ -9,8 +9,8 @@ vcpkg_check_linkage(ONLY_DYNAMIC_LIBRARY)
vcpkg_from_github(
OUT_SOURCE_PATH SOURCE_PATH
REPO Microsoft/ChakraCore
REF v1.11.11
SHA512 67fd364090632c4187c43dc7bb50d2a6cd18ebb2963f86b7f07c6394c243a94963dd9a1e2dc8f4ab9653ab1316921dbac2c1f5fa235e241e9c605e63f2551a10
REF v1.11.12
SHA512 6ff8b8fa379bd290d547ca9900c5aca47b6148f0112e58c11ab757fb2a9080119be59611fb5cb73fabae99802e8df2da35d7b8f1c351a32b452444d090d3b069
HEAD_REF master
)

View File

@ -1,4 +1,4 @@
Source: cpp-httplib
Version: 0.2.0
Version: 0.2.1
Homepage: https://github.com/yhirose/cpp-httplib
Description: A single file C++11 header-only HTTP/HTTPS server and client library

View File

@ -5,8 +5,8 @@ set(VERSION 0.2.0)
vcpkg_from_github(
OUT_SOURCE_PATH SOURCE_PATH
REPO yhirose/cpp-httplib
REF 2f8479016fa9af9a63056571992b31c32741d89b
SHA512 2f17a6a95c849a5c873a65e8da8bf85311f0152e439a973354c24d02ee9e6c3b0f3a456b60f90637ea4588d9ac09f7e41f42199de61315754e5fe9eecbb657ed
REF v0.2.1
SHA512 f0f24cb58da4bbe4ccaa28891fd56257bc97cdf861c4406f41c0cb0bb76b53f9f707298cb5ea1139e4a819c4b1a4b750090a53652d45c3621b33d76ba627a78f
HEAD_REF master
)

View File

@ -1,4 +1,4 @@
Source: cppgraphqlgen
Version: 3.0.0
Version: 3.0.2
Build-Depends: boost-filesystem (!uwp&!windows), boost-program-options, pegtl, rapidjson
Description: C++ GraphQL schema service generator

View File

@ -2,9 +2,9 @@ include(vcpkg_common_functions)
vcpkg_from_github(
OUT_SOURCE_PATH SOURCE_PATH
REPO Microsoft/cppgraphqlgen
REF v3.0.0
SHA512 26da9b559b7220f44bc1aabd68250a4cf869329a5496ac439f9bc7cea5137e0ef9068dc6e868adf441cd5c212f21dd08f0a21db393eb4c237525961eefd49389
REPO microsoft/cppgraphqlgen
REF v3.0.2
SHA512 ae2e94e7cb8853c88d2dbf226dec52e30fb16d1889f14f94d2a585dd2be1985e58ac8c16765b970c4417c08d519b32514080d90bfab7e34b66dc7c32b9f9caa6
HEAD_REF master
)

View File

@ -1,5 +1,5 @@
Source: czmq
Version: 2019-06-10-1
Version: 2019-06-10-3
Build-Depends: zeromq
Description: High-level C binding for ZeroMQ
Homepage: https://github.com/zeromq/czmq

View File

@ -27,7 +27,7 @@ endforeach()
string(COMPARE EQUAL "${VCPKG_LIBRARY_LINKAGE}" "dynamic" BUILD_SHARED)
string(COMPARE EQUAL "${VCPKG_LIBRARY_LINKAGE}" "static" BUILD_STATIC)
vcpkg_check_features(
vcpkg_check_features(OUT_FEATURE_OPTIONS FEATURE_OPTIONS
draft ENABLE_DRAFTS
tool BUILD_TOOLS
curl CZMQ_WITH_LIBCURL
@ -69,7 +69,7 @@ else()
set(EXECUTABLE_SUFFIX "")
endif()
if (BUILD_TOOLS)
if ("tool" IN_LIST FEATURES)
file(COPY ${CURRENT_PACKAGES_DIR}/bin/zmakecert${EXECUTABLE_SUFFIX}
DESTINATION ${CURRENT_PACKAGES_DIR}/tools/${PORT})
vcpkg_copy_tool_dependencies(${CURRENT_PACKAGES_DIR}/tools/${PORT})

View File

@ -1,5 +1,5 @@
Source: darknet
Version: 0.2.5-5
Version: 0.2.5-6
Description: Darknet is an open source neural network framework written in C and CUDA. You only look once (YOLO) is a state-of-the-art, real-time object detection system, best example of darknet functionalities.
Build-Depends: pthreads (windows), stb
Default-Features: weights
@ -19,5 +19,5 @@ Feature: weights-train
Description: Download pre-built weights for training
Feature: opencv-cuda
Build-Depends: opencv[ffmpeg], opencv[cuda]
Build-Depends: darknet[opencv], darknet[cuda]
Description: Build darknet with support for a CUDA-enabled OpenCV

View File

@ -16,17 +16,12 @@ vcpkg_from_github(
HEAD_REF master
)
vcpkg_check_features(
vcpkg_check_features(OUT_FEATURE_OPTIONS FEATURE_OPTIONS
"cuda" ENABLE_CUDA
"opencv" ENABLE_OPENCV
)
if("opencv-cuda" IN_LIST FEATURES)
set(ENABLE_OPENCV ON)
set(ENABLE_CUDA ON)
endif()
if (ENABLE_CUDA)
if ("cuda" IN_LIST FEATURES)
if (NOT VCPKG_CMAKE_SYSTEM_NAME AND NOT ENV{CUDACXX})
#CMake looks for nvcc only in PATH and CUDACXX env vars for the Ninja generator. Since we filter path on vcpkg and CUDACXX env var is not set by CUDA installer on Windows, CMake cannot find CUDA when using Ninja generator, so we need to manually enlight it if necessary (https://gitlab.kitware.com/cmake/cmake/issues/19173). Otherwise we could just disable Ninja and use MSBuild, but unfortunately CUDA installer does not integrate with some distributions of MSBuild (like the ones inside Build Tools), making CUDA unavailable otherwise in those cases, which we want to avoid
set(ENV{CUDACXX} "$ENV{CUDA_PATH}/bin/nvcc.exe")
@ -80,8 +75,7 @@ vcpkg_configure_cmake(
OPTIONS
-DINSTALL_BIN_DIR:STRING=bin
-DINSTALL_LIB_DIR:STRING=lib
-DENABLE_CUDA=${ENABLE_CUDA}
-DENABLE_OPENCV=${ENABLE_OPENCV}
${FEATURE_OPTIONS}
)
vcpkg_install_cmake()

5
ports/dbow2/CONTROL Normal file
View File

@ -0,0 +1,5 @@
Source: dbow2
Version: 2019-08-05
Homepage: https://github.com/dorian3d/DBoW2
Description: DBoW2 is an improved version of the DBow library, an open source C++ library for indexing and converting images into a bag-of-word representation.
Build-Depends: opencv

View File

@ -0,0 +1,30 @@
include(vcpkg_common_functions)
vcpkg_check_linkage(ONLY_STATIC_LIBRARY)
vcpkg_from_github(
OUT_SOURCE_PATH SOURCE_PATH
REPO dorian3d/DBoW2
REF 4d08e9fc751fac9063874d85a43c1ccdcda8b401
SHA512 0a4ad8506c731395cb23d96d0e8afe4131576af88468723b9496cdbc95a031089ecdeb61dbb7205cb3a7599acb60a39887fa9852e7d7a690b8152a1bd26d9bd0
HEAD_REF master
)
vcpkg_configure_cmake(
SOURCE_PATH ${SOURCE_PATH}
PREFER_NINJA
OPTIONS -DBUILD_Demo=OFF
)
vcpkg_install_cmake()
# Move CMake files to the right place
vcpkg_fixup_cmake_targets(CONFIG_PATH lib/cmake/DBoW2)
file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include)
file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/include/DBoW2/DBoW2Config.cmake)
# Handle copyright
file(COPY ${SOURCE_PATH}/LICENSE.txt DESTINATION ${CURRENT_PACKAGES_DIR}/share/${PORT})
file(RENAME ${CURRENT_PACKAGES_DIR}/share/${PORT}/LICENSE.txt ${CURRENT_PACKAGES_DIR}/share/${PORT}/copyright)

View File

@ -1,4 +1,4 @@
Source: dimcli
Version: 4.1.0
Version: 4.1.0-1
Homepage: https://github.com/gknowles/dimcli
Description: C++ command line parser toolkit

View File

@ -0,0 +1,63 @@
diff --git a/libs/dimcli/cli.cpp b/libs/dimcli/cli.cpp
index 9e67c12..c96bd24 100644
--- a/libs/dimcli/cli.cpp
+++ b/libs/dimcli/cli.cpp
@@ -388,8 +388,8 @@ GroupConfig const & Cli::Config::findGrpOrDie(Cli const & cli) {
***/
//===========================================================================
-Cli::OptBase::OptBase(string const & names, bool boolean)
- : m_bool{boolean}
+Cli::OptBase::OptBase(string const & names, bool in_boolean)
+ : m_bool{in_boolean}
, m_names{names}
{
// set m_fromName and assert if names is malformed
@@ -486,12 +486,12 @@ static bool includeName(
OptName const & name,
NameListType type,
Cli::OptBase const & opt,
- bool boolean,
+ bool in_boolean,
bool inverted
) {
if (name.opt != &opt)
return false;
- if (boolean) {
+ if (in_boolean) {
if (type == kNameEnable)
return !name.invert;
if (type == kNameDisable)
diff --git a/libs/dimcli/cli.h b/libs/dimcli/cli.h
index 2c1615c..3e4f405 100644
--- a/libs/dimcli/cli.h
+++ b/libs/dimcli/cli.h
@@ -818,7 +818,7 @@ public:
};
public:
- OptBase(std::string const & keys, bool boolean);
+ OptBase(std::string const & keys, bool in_boolean);
virtual ~OptBase() {}
//-----------------------------------------------------------------------
@@ -952,7 +952,7 @@ inline void Cli::OptBase::setValueDesc<DIMCLI_LIB_FILESYSTEM_PATH>() {
template <typename A, typename T>
class Cli::OptShim : public OptBase {
public:
- OptShim(std::string const & keys, bool boolean);
+ OptShim(std::string const & keys, bool in_boolean);
OptShim(OptShim const &) = delete;
OptShim & operator=(OptShim const &) = delete;
@@ -1100,8 +1100,8 @@ protected:
//===========================================================================
template <typename A, typename T>
-Cli::OptShim<A, T>::OptShim(std::string const & keys, bool boolean)
- : OptBase(keys, boolean)
+Cli::OptShim<A, T>::OptShim(std::string const & keys, bool in_boolean)
+ : OptBase(keys, in_boolean)
{
setValueDesc<T>();
}

View File

@ -6,6 +6,8 @@ vcpkg_from_github(
REF v4.1.0
SHA512 5de010b5abfda9e6996bba8c621e03ae0cf81dbc2f69cd859e2ebf7b1706c451f7f8e142299784646d89ca3c3e5803e8711215680b8bdb8eb663158bff3b4f3d
HEAD_REF master
PATCHES
fix-NameBoolean.patch
)
set(staticCrt OFF)
if(VCPKG_CRT_LINKAGE STREQUAL "static")

View File

@ -1,4 +1,4 @@
Source: directxmesh
Version: apr2019
Version: jun2019-1
Homepage: https://github.com/Microsoft/DirectXMesh
Description: DirectXMesh geometry processing library

View File

@ -9,8 +9,8 @@ endif()
vcpkg_from_github(
OUT_SOURCE_PATH SOURCE_PATH
REPO Microsoft/DirectXMesh
REF apr2019
SHA512 a9e0dbf6483633a1727592de7e2fa733de993daff848d9ec2241ce54b67c7d24ed0419058f2f6ce256021dcf7e16d178b62ed9b8c7a1756504ab044f8740be1d
REF jun2019
SHA512 6d42cd4d3e34e7f3bd5cee1a9ad90c9f89eafa55951a0a8d776034a05caa06b0fd17629547d14c8f2b4d0c5fafdbd24ae05c2a6582b5d069093d6b4dadac09a0
HEAD_REF master
)
@ -20,8 +20,24 @@ ELSE()
SET(BUILD_ARCH ${TRIPLET_SYSTEM_ARCH})
ENDIF()
if (VCPKG_PLATFORM_TOOLSET STREQUAL "v140")
set(VS_VERSION "2015")
elseif (VCPKG_PLATFORM_TOOLSET STREQUAL "v141")
set(VS_VERSION "2017")
elseif (VCPKG_PLATFORM_TOOLSET STREQUAL "v142")
set(VS_VERSION "2019")
else()
message(FATAL_ERROR "Unsupported platform toolset.")
endif()
if(VCPKG_CMAKE_SYSTEM_NAME STREQUAL "WindowsStore")
set(SLN_NAME "Windows10_${VS_VERSION}")
else()
set(SLN_NAME "Desktop_${VS_VERSION}")
endif()
vcpkg_build_msbuild(
PROJECT_PATH ${SOURCE_PATH}/DirectXMesh_Desktop_2017.sln
PROJECT_PATH ${SOURCE_PATH}/DirectXMesh_${SLN_NAME}.sln
PLATFORM ${BUILD_ARCH}
)
@ -30,17 +46,21 @@ file(INSTALL
${SOURCE_PATH}/DirectXMesh/DirectXMesh.inl
DESTINATION ${CURRENT_PACKAGES_DIR}/include
)
file(INSTALL
${SOURCE_PATH}/DirectXMesh/Bin/Desktop_2017/${BUILD_ARCH}/Debug/DirectXMesh.lib
${SOURCE_PATH}/DirectXMesh/Bin/${SLN_NAME}/${BUILD_ARCH}/Debug/DirectXMesh.lib
DESTINATION ${CURRENT_PACKAGES_DIR}/debug/lib)
file(INSTALL
${SOURCE_PATH}/DirectXMesh/Bin/Desktop_2017/${BUILD_ARCH}/Release/DirectXMesh.lib
${SOURCE_PATH}/DirectXMesh/Bin/${SLN_NAME}/${BUILD_ARCH}/Release/DirectXMesh.lib
DESTINATION ${CURRENT_PACKAGES_DIR}/lib)
set(TOOL_PATH ${CURRENT_PACKAGES_DIR}/tools)
if(NOT VCPKG_CMAKE_SYSTEM_NAME STREQUAL "WindowsStore")
set(TOOL_PATH ${CURRENT_PACKAGES_DIR}/tools/directxmesh)
file(MAKE_DIRECTORY ${TOOL_PATH})
file(INSTALL
${SOURCE_PATH}/Meshconvert/Bin/Desktop_2017/${BUILD_ARCH}/Release/Meshconvert.exe
${SOURCE_PATH}/Meshconvert/Bin/${SLN_NAME}/${BUILD_ARCH}/Release/Meshconvert.exe
DESTINATION ${TOOL_PATH})
endif()
# Handle copyright
file(COPY ${SOURCE_PATH}/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/directxmesh)

View File

@ -1,4 +1,4 @@
Source: directxtex
Version: apr2019
Version: jun2019-1
Homepage: https://github.com/Microsoft/DirectXTex
Description: DirectXTex texture processing library

View File

@ -9,8 +9,8 @@ endif()
vcpkg_from_github(
OUT_SOURCE_PATH SOURCE_PATH
REPO Microsoft/DirectXTex
REF apr2019
SHA512 3e50c5beb25416a0720614321bb2b712b5677b50989909ca703801080023f8f8ad168bbe4e5dc522500325989a8f6982026d7dc5029ee28d9dcfe35efdd002de
REF jun2019
SHA512 036a4593f8117e622cd6f609aea5bad734f9c3fc239984ec4f970cb6634ac3097cdb5ed2e467d3b1549e2340bcfe10ee4925b4e3691cf7f729ca538d3724c26e
HEAD_REF master
)
@ -20,8 +20,24 @@ ELSE()
SET(BUILD_ARCH ${TRIPLET_SYSTEM_ARCH})
ENDIF()
if (VCPKG_PLATFORM_TOOLSET STREQUAL "v140")
set(VS_VERSION "2015")
elseif (VCPKG_PLATFORM_TOOLSET STREQUAL "v141")
set(VS_VERSION "2017")
elseif (VCPKG_PLATFORM_TOOLSET STREQUAL "v142")
set(VS_VERSION "2019")
else()
message(FATAL_ERROR "Unsupported platform toolset.")
endif()
if(VCPKG_CMAKE_SYSTEM_NAME STREQUAL "WindowsStore")
set(SLN_NAME "Windows10_${VS_VERSION}")
else()
set(SLN_NAME "Desktop_${VS_VERSION}")
endif()
vcpkg_build_msbuild(
PROJECT_PATH ${SOURCE_PATH}/DirectXTex_Desktop_2017.sln
PROJECT_PATH ${SOURCE_PATH}/DirectXTex_${SLN_NAME}.sln
PLATFORM ${BUILD_ARCH}
)
@ -31,23 +47,25 @@ file(INSTALL
DESTINATION ${CURRENT_PACKAGES_DIR}/include
)
file(INSTALL
${SOURCE_PATH}/DirectXTex/Bin/Desktop_2017/${BUILD_ARCH}/Debug/DirectXTex.lib
${SOURCE_PATH}/DirectXTex/Bin/${SLN_NAME}/${BUILD_ARCH}/Debug/DirectXTex.lib
DESTINATION ${CURRENT_PACKAGES_DIR}/debug/lib)
file(INSTALL
${SOURCE_PATH}/DirectXTex/Bin/Desktop_2017/${BUILD_ARCH}/Release/DirectXTex.lib
${SOURCE_PATH}/DirectXTex/Bin/${SLN_NAME}/${BUILD_ARCH}/Release/DirectXTex.lib
DESTINATION ${CURRENT_PACKAGES_DIR}/lib)
set(TOOL_PATH ${CURRENT_PACKAGES_DIR}/tools)
if(NOT VCPKG_CMAKE_SYSTEM_NAME STREQUAL "WindowsStore")
set(TOOL_PATH ${CURRENT_PACKAGES_DIR}/tools/directxtex)
file(MAKE_DIRECTORY ${TOOL_PATH})
file(INSTALL
${SOURCE_PATH}/Texdiag/Bin/Desktop_2017/${BUILD_ARCH}/Release/texdiag.exe
${SOURCE_PATH}/Texdiag/Bin/${SLN_NAME}/${BUILD_ARCH}/Release/texdiag.exe
DESTINATION ${TOOL_PATH})
file(INSTALL
${SOURCE_PATH}/Texconv/Bin/Desktop_2017/${BUILD_ARCH}/Release/Texconv.exe
${SOURCE_PATH}/Texconv/Bin/${SLN_NAME}/${BUILD_ARCH}/Release/Texconv.exe
DESTINATION ${TOOL_PATH})
file(INSTALL
${SOURCE_PATH}/Texassemble/Bin/Desktop_2017/${BUILD_ARCH}/Release/Texassemble.exe
${SOURCE_PATH}/Texassemble/Bin/${SLN_NAME}/${BUILD_ARCH}/Release/Texassemble.exe
DESTINATION ${TOOL_PATH})
endif()
# Handle copyright
file(COPY ${SOURCE_PATH}/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/DirectXTex)

View File

@ -1,4 +1,4 @@
Source: directxtk
Version: apr2019-1
Version: jun2019-1
Homepage: https://github.com/Microsoft/DirectXTK
Description: A collection of helper classes for writing DirectX 11.x code in C++.

View File

@ -9,10 +9,9 @@ endif()
vcpkg_from_github(
OUT_SOURCE_PATH SOURCE_PATH
REPO Microsoft/DirectXTK
REF apr2019
SHA512 811ed222c1650d34a8475e44719cca8972a85d96f9ccb10548e1501eb9d28fd8685de90832b517cdcbf21ae8c9160dea69000e8dca06fab745a15a7acc14ba98
REF jun2019
SHA512 211b18ee0755802a5d44b58da2485276cabdee222d2f5fd7b42bad0bf75810e3ac1bd319b90891d9cc0345b124631ad37588422af9120cece9fa0ed769033e77
HEAD_REF master
PATCHES fix-invalid-configuration.patch
)
IF (TRIPLET_SYSTEM_ARCH MATCHES "x86")
@ -21,10 +20,20 @@ ELSE()
SET(BUILD_ARCH ${TRIPLET_SYSTEM_ARCH})
ENDIF()
if(VCPKG_CMAKE_SYSTEM_NAME STREQUAL "WindowsStore")
set(SLN_NAME "Windows10")
if (VCPKG_PLATFORM_TOOLSET STREQUAL "v140")
set(VS_VERSION "2015")
elseif (VCPKG_PLATFORM_TOOLSET STREQUAL "v141")
set(VS_VERSION "2017")
elseif (VCPKG_PLATFORM_TOOLSET STREQUAL "v142")
set(VS_VERSION "2019")
else()
set(SLN_NAME "Desktop_2017")
message(FATAL_ERROR "Unsupported platform toolset.")
endif()
if(VCPKG_CMAKE_SYSTEM_NAME STREQUAL "WindowsStore")
set(SLN_NAME "Windows10_${VS_VERSION}")
else()
set(SLN_NAME "Desktop_${VS_VERSION}")
endif()
vcpkg_build_msbuild(
@ -32,6 +41,11 @@ vcpkg_build_msbuild(
PLATFORM ${BUILD_ARCH}
)
file(INSTALL
${SOURCE_PATH}/Inc/
DESTINATION ${CURRENT_PACKAGES_DIR}/include/DirectXTK
)
file(INSTALL
${SOURCE_PATH}/Bin/${SLN_NAME}/${BUILD_ARCH}/Release/DirectXTK.lib
DESTINATION ${CURRENT_PACKAGES_DIR}/lib)
@ -43,20 +57,13 @@ file(INSTALL
if(NOT VCPKG_CMAKE_SYSTEM_NAME STREQUAL "WindowsStore")
set(DXTK_TOOL_PATH ${CURRENT_PACKAGES_DIR}/tools/directxtk)
file(MAKE_DIRECTORY ${DXTK_TOOL_PATH})
file(INSTALL
${SOURCE_PATH}/MakeSpriteFont/bin/Release/MakeSpriteFont.exe
DESTINATION ${DXTK_TOOL_PATH})
file(INSTALL
${SOURCE_PATH}/XWBTool/Bin/Desktop_2017/${BUILD_ARCH}/Release/XWBTool.exe
${SOURCE_PATH}/XWBTool/Bin/${SLN_NAME}/${BUILD_ARCH}/Release/XWBTool.exe
DESTINATION ${DXTK_TOOL_PATH})
endif()
file(INSTALL
${SOURCE_PATH}/Inc/
DESTINATION ${CURRENT_PACKAGES_DIR}/include/DirectXTK
)
# Handle copyright
file(INSTALL ${SOURCE_PATH}/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/directxtk RENAME copyright)

View File

@ -1,4 +1,4 @@
Source: directxtk12
Version: dec2016-1
Version: jun2019-1
Homepage: https://github.com/Microsoft/DirectXTK12
Description: A collection of helper classes for writing DirectX 12 code in C++.

View File

@ -3,19 +3,15 @@ include(vcpkg_common_functions)
vcpkg_check_linkage(ONLY_STATIC_LIBRARY)
if(NOT VCPKG_CRT_LINKAGE STREQUAL "dynamic")
message(FATAL_ERROR "DirectXTk12 only supports dynamic CRT linkage")
message(FATAL_ERROR "DirectXTK12 only supports dynamic CRT linkage")
endif()
set(SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src/DirectXTK12-dec2016)
vcpkg_download_distfile(ARCHIVE
URLS "https://github.com/Microsoft/DirectXTK12/archive/dec2016.tar.gz"
FILENAME "DirectXTK12-dec2016.tar.gz"
SHA512 7c98fbf1d7ef96807a38d396a87dacdc60fdcd7e461210d246cc424789c4c5c5fb1390db958c1bd1f77da8af756a9eae36813e5da6bbb0ea1432ff4004f1d010
)
vcpkg_extract_source_archive(${ARCHIVE})
vcpkg_build_msbuild(
PROJECT_PATH ${SOURCE_PATH}/DirectXTK_Desktop_2015_Win10.sln
vcpkg_from_github(
OUT_SOURCE_PATH SOURCE_PATH
REPO Microsoft/DirectXTK12
REF jun2019
SHA512 f635746ff92cf3b60b96f74f5ada5fb8409d1ac6e2729d24ebf0ebb275e26d373ec0ccdfbb66a3cb967267da86de4d70304d1f3326b738f94f5a8fc0d43a8c97
HEAD_REF master
)
IF (TRIPLET_SYSTEM_ARCH MATCHES "x86")
@ -24,17 +20,38 @@ ELSE()
SET(BUILD_ARCH ${TRIPLET_SYSTEM_ARCH})
ENDIF()
file(INSTALL
${SOURCE_PATH}/Bin/Desktop_2015_Win10/${BUILD_ARCH}/Release/DirectXTK12.lib
DESTINATION ${CURRENT_PACKAGES_DIR}/lib)
file(INSTALL
${SOURCE_PATH}/Bin/Desktop_2015_Win10/${BUILD_ARCH}/Debug/DirectXTK12.lib
DESTINATION ${CURRENT_PACKAGES_DIR}/debug/lib)
if (VCPKG_PLATFORM_TOOLSET STREQUAL "v140")
set(VS_VERSION "2015")
elseif (VCPKG_PLATFORM_TOOLSET STREQUAL "v141")
set(VS_VERSION "2017")
elseif (VCPKG_PLATFORM_TOOLSET STREQUAL "v142")
set(VS_VERSION "2019")
else()
message(FATAL_ERROR "Unsupported platform toolset.")
endif()
if(VCPKG_CMAKE_SYSTEM_NAME STREQUAL "WindowsStore")
set(SLN_NAME "Windows10_${VS_VERSION}")
else()
set(SLN_NAME "Desktop_${VS_VERSION}_Win10")
endif()
vcpkg_build_msbuild(
PROJECT_PATH ${SOURCE_PATH}/DirectXTK_${SLN_NAME}.sln
)
file(INSTALL
${SOURCE_PATH}/Inc/
DESTINATION ${CURRENT_PACKAGES_DIR}/include/DirectXTK12
)
file(INSTALL
${SOURCE_PATH}/Bin/${SLN_NAME}/${BUILD_ARCH}/Release/DirectXTK12.lib
DESTINATION ${CURRENT_PACKAGES_DIR}/lib)
file(INSTALL
${SOURCE_PATH}/Bin/${SLN_NAME}/${BUILD_ARCH}/Debug/DirectXTK12.lib
DESTINATION ${CURRENT_PACKAGES_DIR}/debug/lib)
# Handle copyright
file(INSTALL ${SOURCE_PATH}/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/directxtk12 RENAME copyright)

View File

@ -1,4 +1,4 @@
Source: doctest
Version: 2.3.3
Version: 2.3.4
Homepage: https://github.com/onqtam/doctest
Description: The fastest feature-rich C++ single-header testing framework for unit tests and TDD

View File

@ -3,8 +3,8 @@ include(vcpkg_common_functions)
vcpkg_from_github(
OUT_SOURCE_PATH SOURCE_PATH
REPO onqtam/doctest
REF 2.3.3
SHA512 9ef94de93906f3c43918f232b3baa64756fdaee883afc5b2e785e76b108f1aa0d526a49dac58ffb0475ebfd8d8394ef266aec499c29282eea9a2752fb60b663f
REF 2.3.4
SHA512 ca97da8e22684f2d901d0a9dc9c1d0c7126a850f75fe20c37a4d8bbc6f7eafc961313a6c58ca712f00465fff107e1b6b6d9557d2b04edb3029b0035bcfa6db20
HEAD_REF master
)

View File

@ -1,4 +1,4 @@
Source: double-conversion
Version: 3.1.4
Version: 3.1.5
Homepage: https://github.com/google/double-conversion
Description: Efficient binary-decimal and decimal-binary conversion routines for IEEE doubles.

View File

@ -5,8 +5,8 @@ vcpkg_check_linkage(ONLY_STATIC_LIBRARY)
vcpkg_from_github(
OUT_SOURCE_PATH SOURCE_PATH
REPO google/double-conversion
REF v3.1.4
SHA512 715a34ace2ff74b79d80a8c003c16cfbf958ebc92264e28cc572e1a12a786e1df9678abb46f032c2be387495e1a3d02957b12fa4a245ec6cfe19ca637519ac3c
REF v3.1.5
SHA512 0aeabdbfa06c3c4802905ac4bf8c2180840577677b47d45e1c91034fe07746428c9db79260ce6bdbdf8b584746066cea9247ba43a9c38155caf1ef44e214180a
HEAD_REF master
)

4
ports/drlibs/CONTROL Normal file
View File

@ -0,0 +1,4 @@
Source: drlibs
Version: 2019-08-12
Homepage: https://github.com/mackron/dr_libs
Description: A collection of public domain single-file libraries for C/C++.

View File

@ -0,0 +1,17 @@
#header-only library
include(vcpkg_common_functions)
vcpkg_from_github(
OUT_SOURCE_PATH SOURCE_PATH
REPO mackron/dr_libs
REF b777360d73c10a367d268a8bb51bc0d1f36020b5
SHA512 65d2c01ea72868e1212dc5af6b8bad7603a40e030a6c6ee59ae4e723de9c974ed31385475e2bcf0f22d424666fc70c7851c3998d0c51afc845785e71ed267a8f
HEAD_REF master
)
# Put the licence file where vcpkg expects it
file(COPY ${SOURCE_PATH}/README.md DESTINATION ${CURRENT_PACKAGES_DIR}/share/drlibs)
file(RENAME ${CURRENT_PACKAGES_DIR}/share/drlibs/README.md ${CURRENT_PACKAGES_DIR}/share/drlibs/copyright)
# Copy the header files
file(GLOB HEADER_FILES ${SOURCE_PATH}/*.h)
file(COPY ${HEADER_FILES} DESTINATION ${CURRENT_PACKAGES_DIR}/include)

View File

@ -1,3 +1,5 @@
cmake_minimum_required(VERSION 3.14)
project (duktape)
file(GLOB_RECURSE DUKTAPE_SOURCES "src/*.c")

View File

@ -1,5 +1,5 @@
Source: duktape
Version: 2.3.0-2
Version: 2.3.0-3
Homepage: https://github.com/svaarala/duktape
Description: Embeddable Javascript engine with a focus on portability and compact footprint.
Build-Depends:

View File

@ -28,9 +28,9 @@ vcpkg_add_to_path("${PYTHON2_DIR}")
if(NOT EXISTS ${PYTHON2_DIR}/easy_install${EXECUTABLE_SUFFIX})
if(NOT EXISTS ${PYTHON2_DIR}/Scripts/pip${EXECUTABLE_SUFFIX})
vcpkg_download_distfile(GET_PIP
URLS "https://bootstrap.pypa.io/get-pip.py"
URLS "https://bootstrap.pypa.io/3.3/get-pip.py"
FILENAME "tools/python/python2/get-pip.py"
SHA512 99520d223819708b8f6e4b839d1fa215e4e8adc7fcd0db6c25a0399cf2fa10034b35673cf450609303646d12497f301ef53b7e7cc65c78e7bce4af0c673555ad
SHA512 92e68525830bb23955a31cb19ebc3021ef16b6337eab83d5db2961b791283d2867207545faf83635f6027f2f7b7f8fee2c85f2cfd8e8267df25406474571c741
)
execute_process(COMMAND ${PYTHON2_DIR}/python${EXECUTABLE_SUFFIX} ${PYTHON2_DIR}/get-pip.py)
endif()

View File

@ -0,0 +1,4 @@
Source: fast-cpp-csv-parser
Version: 2019-08-14
Description: A small, easy-to-use and fast header-only library for reading comma separated value (CSV) files
Homepage: https://github.com/ben-strasser/fast-cpp-csv-parser

View File

@ -0,0 +1,16 @@
# header-only library
include(vcpkg_common_functions)
vcpkg_from_github(
OUT_SOURCE_PATH SOURCE_PATH
REPO ben-strasser/fast-cpp-csv-parser
REF 78f413248fdeea27368481c4a1d48c059ac36680
SHA512 f8eb477e0b5e82f5b5d7bdf045094dcc59433e7b6305a1e16e45c2c24f4bbb7f6e9540e17a8ffafce29ea2ebe3a2647174824abe80da5f2054f7df3d7da8c28d
HEAD_REF master
)
file(COPY ${SOURCE_PATH}/csv.h DESTINATION ${CURRENT_PACKAGES_DIR}/include)
# Handle copyright
configure_file(${SOURCE_PATH}/LICENSE ${CURRENT_PACKAGES_DIR}/share/${PORT}/copyright COPYONLY)

View File

@ -1,5 +1,6 @@
Source: ffmpeg
Version: 4.1-9
Version: 4.1-11
Build-Depends: zlib
Homepage: https://ffmpeg.org
Description: a library to decode, encode, transcode, mux, demux, stream, filter and play pretty much anything that humans and machines have created.
FFmpeg is the leading multimedia framework, able to decode, encode, transcode, mux, demux, stream, filter and play pretty much anything that humans and machines have created. It supports the most obscure ancient formats up to the cutting edge. No matter if they were designed by some standards committee, the community or a corporation. It is also highly portable: FFmpeg compiles, runs, and passes our testing infrastructure FATE across Linux, Mac OS X, Microsoft Windows, the BSDs, Solaris, etc. under a wide variety of build environments, machine architectures, and configurations.
@ -45,3 +46,6 @@ Description: allow nonfree and unredistributable libraries
Feature: gpl
Description: allow GPL licensed libraries
Feature: avresample
Description: Libav audio resampling library support in ffmpeg

View File

@ -35,6 +35,8 @@ include(${CMAKE_ROOT}/Modules/FindPackageHandleStandardArgs.cmake)
include(${CMAKE_ROOT}/Modules/SelectLibraryConfigurations.cmake)
include(${CMAKE_ROOT}/Modules/CMakeFindDependencyMacro.cmake)
set(FFMPEG_VERSION "4.1")
find_dependency(Threads)
#list(APPEND FFMPEG_PLATFORM_DEPENDENT_LIBS Threads::Threads)
if(UNIX)
@ -44,7 +46,7 @@ endif()
# Platform dependent libraries required by FFMPEG
if(WIN32)
if(NOT CYGWIN)
list(APPEND FFMPEG_PLATFORM_DEPENDENT_LIBS wsock32 ws2_32 Secur32)
list(APPEND FFMPEG_PLATFORM_DEPENDENT_LIBS wsock32 ws2_32 Secur32 bcrypt)
endif()
else()
list(APPEND FFMPEG_PLATFORM_DEPENDENT_LIBS m)
@ -83,17 +85,41 @@ macro(FFMPEG_FIND_GENEX varname shortname headername)
set(FFMPEG_${varname}_FOUND 1)
list(APPEND FFMPEG_LIBRARY_DIRS ${FFMPEG_${varname}_LIBRARY_RELEASE_DIR} ${FFMPEG_${varname}_LIBRARY_DEBUG_DIR})
endif()
endmacro(FFMPEG_FIND)
endmacro(FFMPEG_FIND_GENEX)
if(WIN32)
if(NOT FFMPEG_${varname}_INCLUDE_DIRS)
find_path(FFMPEG_stdint_INCLUDE_DIRS NAMES stdint.h PATH_SUFFIXES ffmpeg)
endif()
if (FFMPEG_stdint_INCLUDE_DIRS)
set(STDINT_OK TRUE)
endif()
FFMPEG_FIND_GENEX(libzlib zlib zlib.h)
else()
set(STDINT_OK TRUE)
FFMPEG_FIND_GENEX(libzlib z zlib.h)
endif()
if(APPLE)
find_library(VT_UNIT VideoToolbox)
if (NOT VT_UNIT)
message(FATAL_ERROR "VideoToolbox not found")
endif()
find_library(AT_UNIT AudioToolbox)
if (NOT AT_UNIT)
message(FATAL_ERROR "AudioToolbox not found")
endif()
find_library(SEC_UNIT Security)
if (NOT SEC_UNIT)
message(FATAL_ERROR "Security not found")
endif()
find_library(CF_UNIT CoreFoundation)
if (NOT CF_UNIT)
message(FATAL_ERROR "CoreFoundation not found")
endif()
find_library(CM_UNIT CoreMedia)
if (NOT CM_UNIT)
message(FATAL_ERROR "CoreMedia not found")
endif()
find_library(CV_UNIT CoreVideo)
if (NOT CV_UNIT)
message(FATAL_ERROR "CoreVideo not found")
endif()
find_package(Iconv QUIET)
list(APPEND FFMPEG_PLATFORM_DEPENDENT_LIBS ${VT_UNIT} ${AT_UNIT} ${SEC_UNIT} ${CF_UNIT} ${CM_UNIT} ${CV_UNIT} ${Iconv_LIBRARIES})
endif()
FFMPEG_FIND(libavcodec avcodec avcodec.h)
@ -103,13 +129,20 @@ FFMPEG_FIND(libavformat avformat avformat.h)
FFMPEG_FIND(libavutil avutil avutil.h)
FFMPEG_FIND(libswresample swresample swresample.h)
FFMPEG_FIND(libswscale swscale swscale.h)
FFMPEG_FIND_GENEX(libzlib zlib zlib.h)
if (FFMPEG_libavcodec_FOUND AND FFMPEG_libavdevice_FOUND AND FFMPEG_libavfilter_FOUND AND FFMPEG_libavformat_FOUND AND FFMPEG_libavutil_FOUND AND FFMPEG_libswresample_FOUND AND FFMPEG_libswscale_FOUND AND FFMPEG_libzlib_FOUND AND STDINT_OK)
list(APPEND FFMPEG_INCLUDE_DIRS ${FFMPEG_libavformat_INCLUDE_DIRS} ${FFMPEG_libavdevice_INCLUDE_DIRS} ${FFMPEG_libavcodec_INCLUDE_DIRS} ${FFMPEG_libavutil_INCLUDE_DIRS} ${FFMPEG_libswscale_INCLUDE_DIRS} ${FFMPEG_stdint_INCLUDE_DIRS})
if (FFMPEG_libavcodec_FOUND AND FFMPEG_libavdevice_FOUND AND FFMPEG_libavfilter_FOUND AND FFMPEG_libavformat_FOUND AND FFMPEG_libavutil_FOUND AND FFMPEG_libswresample_FOUND AND FFMPEG_libswscale_FOUND AND FFMPEG_libzlib_FOUND)
list(APPEND FFMPEG_INCLUDE_DIRS ${FFMPEG_libavformat_INCLUDE_DIRS} ${FFMPEG_libavdevice_INCLUDE_DIRS} ${FFMPEG_libavcodec_INCLUDE_DIRS} ${FFMPEG_libavutil_INCLUDE_DIRS} ${FFMPEG_libswscale_INCLUDE_DIRS})
list(REMOVE_DUPLICATES FFMPEG_INCLUDE_DIRS)
list(REMOVE_DUPLICATES FFMPEG_LIBRARY_DIRS)
set(FFMPEG_libavformat_VERSION "${FFMPEG_VERSION}" CACHE STRING "")
set(FFMPEG_libavdevice_VERSION "${FFMPEG_VERSION}" CACHE STRING "")
set(FFMPEG_libavcodec_VERSION "${FFMPEG_VERSION}" CACHE STRING "")
set(FFMPEG_libavutil_VERSION "${FFMPEG_VERSION}" CACHE STRING "")
set(FFMPEG_libswscale_VERSION "${FFMPEG_VERSION}" CACHE STRING "")
set(FFMPEG_libavfilter_VERSION "${FFMPEG_VERSION}" CACHE STRING "")
set(FFMPEG_libswresample_VERSION "${FFMPEG_VERSION}" CACHE STRING "")
list(APPEND FFMPEG_LIBRARIES
${FFMPEG_libavformat_LIBRARY}
${FFMPEG_libavdevice_LIBRARY}

View File

@ -1,11 +0,0 @@
--- a/configure
+++ b/configure
@@ -6110,7 +6110,7 @@ enabled libopencore_amrnb && require libopencore_amrnb opencore-amrnb/interf_dec
enabled libopencore_amrwb && require libopencore_amrwb opencore-amrwb/dec_if.h D_IF_init -lopencore-amrwb
enabled libopencv && { check_headers opencv2/core/core_c.h &&
{ check_pkg_config libopencv opencv opencv2/core/core_c.h cvCreateImageHeader ||
- require libopencv opencv2/core/core_c.h cvCreateImageHeader -lopencv_core -lopencv_imgproc; } ||
+ require opencv opencv2/core/core_c.h cvCreateImageHeader -lopencv_core341 -lopencv_imgproc341; } ||
require_pkg_config libopencv opencv opencv/cxcore.h cvCreateImageHeader; }
enabled libopenh264 && require_pkg_config libopenh264 openh264 wels/codec_api.h WelsGetCodecVersion
enabled libopenjpeg && { check_pkg_config libopenjpeg "libopenjp2 >= 2.1.0" openjpeg.h opj_version ||

View File

@ -12,7 +12,6 @@ vcpkg_extract_source_archive_ex(
PATCHES
create-lib-libraries.patch
detect-openssl.patch
configure_opencv.patch
fix_windowsinclude-in-ffmpegexe-1.patch
fix_windowsinclude-in-ffmpegexe-2.patch
fix_libvpx_windows_linking.patch
@ -126,6 +125,10 @@ else()
set(OPTIONS "${OPTIONS} --disable-bzlib")
endif()
if("avresample" IN_LIST FEATURES)
set(OPTIONS "${OPTIONS} --enable-avresample")
endif()
set(OPTIONS_CROSS "")
if (VCPKG_TARGET_ARCHITECTURE STREQUAL "arm" OR VCPKG_TARGET_ARCHITECTURE STREQUAL "arm64")

5
ports/field3d/CONTROL Normal file
View File

@ -0,0 +1,5 @@
Source: field3d
Version: 1.7.2
Homepage: https://github.com/imageworks/Field3D
Description: An open source library for storing voxel data. It provides C++ classes that handle in-memory storage and a file format based on HDF5 that allows the C++ objects to be written to and read from disk.
Build-Depends: hdf5, boost-regex, boost-thread, boost-program-options, boost-system, openexr, boost-foreach, boost-test, boost-timer, boost-format

View File

@ -0,0 +1,13 @@
diff --git a/CMakeLists.txt b/CMakeLists.txt
index e9ad44f..45f3fad 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -147,7 +147,7 @@ IF ( CMAKE_HOST_UNIX )
${MPI_LIBRARIES} )
ENDIF ( MPI_FOUND )
LIST ( APPEND Field3D_Libraries_Shared
- Iex Half IlmThread Imath
+ Iex-2_3 Half-2_3 IlmThread-2_3 Imath-2_3
pthread dl z )
SET ( Field3D_DSO_Libraries ${Field3D_Libraries_Shared} )
SET ( Field3D_BIN_Libraries Field3D ${Field3D_Libraries_Shared}

View File

@ -0,0 +1,35 @@
include(vcpkg_common_functions)
if (VCPKG_TARGET_IS_WINDOWS)
message(FATAL_ERROR "Windows is currently not supported.")
elseif (TRIPLET_SYSTEM_ARCH MATCHES "arm")
message(FATAL_ERROR "ARM is currently not supported.")
elseif(VCPKG_CMAKE_SYSTEM_NAME STREQUAL WindowsStore)
message(FATAL_ERROR "Error: UWP builds are currently not supported.")
endif()
vcpkg_from_github(
OUT_SOURCE_PATH SOURCE_PATH
REPO imageworks/Field3D
REF v1.7.2
SHA512 e4ea51310105980f759dce48830db8ae3592ce32a02b246214d8aed9df7a7f5c500314f2daf92196b7a76d648f2909b18112df4c5c3c8949c0676d710dfbf1f2
HEAD_REF master
PATCHES
fix-build_error.patch
)
vcpkg_configure_cmake(
SOURCE_PATH ${SOURCE_PATH}
PREFER_NINJA
)
vcpkg_install_cmake()
if(VCPKG_LIBRARY_LINKAGE STREQUAL static)
file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/bin ${CURRENT_PACKAGES_DIR}/debug/bin)
endif()
file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include)
# Handle copyright
file(COPY ${SOURCE_PATH}/COPYING ${SOURCE_PATH}/README DESTINATION ${CURRENT_PACKAGES_DIR}/share/field3d)
file(RENAME ${CURRENT_PACKAGES_DIR}/share/field3d/COPYING ${CURRENT_PACKAGES_DIR}/share/field3d/copyright)

View File

@ -1,5 +1,5 @@
Source: freeimage
Version: 3.18.0-6
Build-Depends: zlib, libpng, libjpeg-turbo, tiff, openjpeg, libwebp[all], libraw, jxrlib, openexr
Version: 3.18.0-7
Build-Depends: zlib, libpng, libjpeg-turbo, tiff, openjpeg, libwebp[all] (!uwp), libraw, jxrlib, openexr
Homepage: https://sourceforge.net/projects/freeimage/
Description: Support library for graphics image formats

View File

@ -1,4 +1,4 @@
Source: gdcm
Version: 3.0.0-3
Version: 3.0.0-4
Description: Grassroots DICOM library
Build-Depends: zlib, expat, openjpeg

View File

@ -43,6 +43,12 @@ file(REMOVE_RECURSE
${CURRENT_PACKAGES_DIR}/debug/share
)
file(READ ${CURRENT_PACKAGES_DIR}/share/gdcm/GDCMTargets.cmake GDCM_TARGETS)
string(REPLACE "set(CMAKE_IMPORT_FILE_VERSION 1)"
"set(CMAKE_IMPORT_FILE_VERSION 1)
find_package(OpenJPEG QUIET)" GDCM_TARGETS "${GDCM_TARGETS}")
file(WRITE ${CURRENT_PACKAGES_DIR}/share/gdcm/GDCMTargets.cmake "${GDCM_TARGETS}")
if(VCPKG_LIBRARY_LINKAGE STREQUAL "static")
file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/bin ${CURRENT_PACKAGES_DIR}/debug/bin)
endif()

View File

@ -1,4 +1,4 @@
Source: geographiclib
Version: 1.47-patch1-6
Version: 1.47-patch1-7
Homepage: https://sourceforge.net/projects/geographiclib/
Description: a small set of C++ classes for performing conversions between geographic, UTM, UPS, MGRS, geocentric, and local cartesian coordinates, for gravity (e.g., EGM2008), geoid height, and geomagnetic field (e.g., WMM2010) calculations, and for solving geodesic problems.

View File

@ -46,7 +46,11 @@ endif()
vcpkg_install_cmake()
if (VCPKG_TARGET_IS_WINDOWS)
vcpkg_fixup_cmake_targets(CONFIG_PATH cmake)
else()
vcpkg_fixup_cmake_targets(CONFIG_PATH lib/cmake)
endif()
vcpkg_copy_pdbs()
file(COPY ${CURRENT_PACKAGES_DIR}/lib/pkgconfig DESTINATION ${CURRENT_PACKAGES_DIR}/share/geographiclib)

View File

@ -1,5 +1,5 @@
Source: googleapis
Version: 0.1.1
Version: 0.1.3
Build-Depends: grpc, protobuf
Description: C++ Proto Libraries for Google APIs.
Homepage: https://github.com/googleapis/cpp-cmakefiles

View File

@ -9,8 +9,8 @@ vcpkg_check_linkage(ONLY_STATIC_LIBRARY)
vcpkg_from_github(
OUT_SOURCE_PATH SOURCE_PATH
REPO googleapis/cpp-cmakefiles
REF v0.1.1
SHA512 e23af2d0d36d4e13da761473b78b958326b9c7fd4aaf0c4b6742ae498b65aafe73976f7c858365b041aa667f280c10eca6df7e87644c260fc022ec4eee7a7bc6
REF v0.1.3
SHA512 5c6be5af731d97dcf754b1f643c35a1c806e6b976a3dd027dd80ee15f86c6d70f772dcecbf2da5597a4e8d8d9639813c2d2f66dd7112b8039c14c3a49ec6c4db
HEAD_REF master
)

View File

@ -1,4 +1,4 @@
Source: gtest
Version: 2019-01-04-2
Version: 2019-08-14
Homepage: https://github.com/google/googletest
Description: GoogleTest and GoogleMock testing frameworks.

View File

@ -7,8 +7,8 @@ endif()
vcpkg_from_github(
OUT_SOURCE_PATH SOURCE_PATH
REPO google/googletest
REF b6cd405286ed8635ece71c72f118e659f4ade3fb
SHA512 1642a9cf1923d00c52c346399941517787431dad3e6d3a5da07bc02243a231a95e30e0a9568ffd29bb9b9757f15c1c47d2d811c2bedb301f2d27cf912be0a534
REF 90a443f9c2437ca8a682a1ac625eba64e1d74a8a
SHA512 fc874a7977f11be58dc63993b520b4ae6ca43654fb5250c8b56df62a21f4dca8fcbdc81dfa106374b2bb7c59bc88952fbfc0e3ae4c7d63fdb502afbaeb39c822
HEAD_REF master
PATCHES
${CMAKE_CURRENT_LIST_DIR}/0002-Fix-z7-override.patch

4
ports/hayai/CONTROL Normal file
View File

@ -0,0 +1,4 @@
Source: hayai
Version: 2019-08-10
Description: C++ benchmarking framework
Homepage: https://github.com/nickbruun/hayai

View File

@ -0,0 +1,70 @@
include(vcpkg_common_functions)
vcpkg_check_linkage(ONLY_STATIC_LIBRARY)
vcpkg_from_github(
OUT_SOURCE_PATH SOURCE_PATH
REPO nickbruun/hayai
REF 0234860c7a851362ab33efc6c018203cded3eb48
SHA512 e4c65d834eddaeb77e73a3bc24645a531b93d26e32ff1daffbe71c579b76b4b8b4865f6c7ea07b378cafbe2da3a698414d4135f28fc9821eef995ed78d0987f2
HEAD_REF master
)
if(VCPKG_TARGET_IS_UWP)
set(VCPKG_C_FLAGS "${VCPKG_C_FLAGS} -D_CRT_SECURE_NO_WARNINGS")
set(VCPKG_CXX_FLAGS "${VCPKG_CXX_FLAGS} -D_CRT_SECURE_NO_WARNINGS")
endif()
vcpkg_configure_cmake(
SOURCE_PATH ${SOURCE_PATH}
PREFER_NINJA
OPTIONS
-DINSTALL_HAYAI=ON
-DBUILD_HAYAI_TESTS=OFF
-DBUILD_HAYAI_SAMPLES=OFF
)
vcpkg_install_cmake()
if(EXISTS ${CURRENT_PACKAGES_DIR}/CMake)
vcpkg_fixup_cmake_targets(CONFIG_PATH CMake)
elseif(EXISTS ${CURRENT_PACKAGES_DIR}/lib/CMake/${PORT})
vcpkg_fixup_cmake_targets(CONFIG_PATH lib/CMake/${PORT})
endif()
file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include)
# Handle manual-link libraries
if(EXISTS ${CURRENT_PACKAGES_DIR}/debug/lib/hayai_main.lib)
file(MAKE_DIRECTORY ${CURRENT_PACKAGES_DIR}/debug/lib/manual-link)
file(RENAME
${CURRENT_PACKAGES_DIR}/debug/lib/hayai_main.lib
${CURRENT_PACKAGES_DIR}/debug/lib/manual-link/hayai_main.lib
)
vcpkg_replace_string(
${CURRENT_PACKAGES_DIR}/share/${PORT}/hayai-targets-debug.cmake
"\${CMAKE_CURRENT_LIST_DIR}/../../debug/lib/hayai_main.lib"
"\${CMAKE_CURRENT_LIST_DIR}/../../debug/lib/manual-link/hayai_main.lib"
)
endif()
if(EXISTS ${CURRENT_PACKAGES_DIR}/lib/hayai_main.lib)
file(MAKE_DIRECTORY ${CURRENT_PACKAGES_DIR}/lib/manual-link)
file(RENAME
${CURRENT_PACKAGES_DIR}/lib/hayai_main.lib
${CURRENT_PACKAGES_DIR}/lib/manual-link/hayai_main.lib
)
vcpkg_replace_string(
${CURRENT_PACKAGES_DIR}/share/${PORT}/hayai-targets-release.cmake
"\${CMAKE_CURRENT_LIST_DIR}/../../lib/hayai_main.lib"
"\${CMAKE_CURRENT_LIST_DIR}/../../lib/manual-link/hayai_main.lib"
)
endif()
# Handle copyright
configure_file(${SOURCE_PATH}/LICENSE.md ${CURRENT_PACKAGES_DIR}/share/${PORT}/copyright COPYONLY)
# CMake integration test
vcpkg_test_cmake(PACKAGE_NAME ${PORT})

5
ports/hfsm2/CONTROL Normal file
View File

@ -0,0 +1,5 @@
Source: hfsm2
Version: beta7
Homepage: https://github.com/andrew-gresyk/HFSM2
Description: Header-only heriarchical FSM framework in C++14, with fully statically-defined structure (no dynamic allocations), built with variadic templates.
Build-Depends: catch2

View File

@ -0,0 +1,15 @@
include(vcpkg_common_functions)
vcpkg_from_github(
OUT_SOURCE_PATH SOURCE_PATH
REPO andrew-gresyk/HFSM2
REF Beta7
SHA512 f3365c0823fa63f7e6b82bd2dc84f8871eb58ffd9485753a60ea8f956856cbec7c5da3929ab8fe8b5902a7c840334a1d421417984124adf109f96756490ac437
HEAD_REF master
)
# Install include directory
file(INSTALL ${SOURCE_PATH}/include DESTINATION ${CURRENT_PACKAGES_DIR}/include)
# Handle copyright
file(INSTALL ${SOURCE_PATH}/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/${PORT}/copyright)

View File

@ -85,13 +85,6 @@ target_link_libraries(Irrlicht PRIVATE
${BZIP2_LIBRARY}
)
target_compile_definitions(Irrlicht PRIVATE
NO_IRR_USE_NON_SYSTEM_ZLIB_
NO_IRR_USE_NON_SYSTEM_LIB_PNG_
NO_IRR_USE_NON_SYSTEM_JPEG_LIB_
NO_IRR_USE_NON_SYSTEM_BZLIB_
)
if(IRR_BUILD_TOOLS)
add_executable(FileToHeader ${IRR_TOOL_FILES_FILE_TO_HEADER})
@ -151,9 +144,6 @@ endif()
target_compile_definitions(Irrlicht PRIVATE IRRLICHT_EXPORTS)
if(WIN32)
# Unicode
target_compile_definitions(Irrlicht PRIVATE UNICODE _UNICODE)
# Import the symbols of bzip2
target_compile_definitions(Irrlicht PRIVATE BZ_IMPORT)

View File

@ -1,5 +1,5 @@
Source: irrlicht
Version: 1.8.4-2
Version: 1.8.4-1
Description: Irrlicht lightning fast 3d engine
Build-Depends: zlib, libpng, bzip2, libjpeg-turbo

View File

@ -22,8 +22,6 @@ vcpkg_extract_source_archive_ex(
OUT_SOURCE_PATH SOURCE_PATH
ARCHIVE ${ARCHIVE}
REF "1.8.4"
PATCHES
"support-unicode-on-windows.patch"
# [NO_REMOVE_ONE_LEVEL]
# [WORKING_DIRECTORY <${CURRENT_BUILDTREES_DIR}/src>]
# [PATCHES <a.patch>...]

View File

@ -1,28 +0,0 @@
diff --git a/include/IrrCompileConfig.h b/include/IrrCompileConfig.h
index c2c5d12..7c44f0c 100644
--- a/include/IrrCompileConfig.h
+++ b/include/IrrCompileConfig.h
@@ -233,7 +233,9 @@ you will not be able to use anything provided by the GUI Environment, including
disable this feature, the engine behave as before (ansi). This is currently only supported
for Windows based systems. You also have to set #define UNICODE for this to compile.
*/
-//#define _IRR_WCHAR_FILESYSTEM
+#if defined(_IRR_WINDOWS_) && (defined(_UNICODE) || defined(UNICODE))
+#define _IRR_WCHAR_FILESYSTEM
+#endif
#ifdef NO_IRR_WCHAR_FILESYSTEM
#undef _IRR_WCHAR_FILESYSTEM
#endif
diff --git a/include/Keycodes.h b/include/Keycodes.h
index e56eca1..57ab312 100644
--- a/include/Keycodes.h
+++ b/include/Keycodes.h
@@ -89,7 +89,7 @@ namespace irr
KEY_KEY_X = 0x58, // X key
KEY_KEY_Y = 0x59, // Y key
KEY_KEY_Z = 0x5A, // Z key
- KEY_LWIN = 0x5B, // Left Windows key (Microsoft® Natural® keyboard)
+ KEY_LWIN = 0x5B, // Left Windows key (Microsoft® Natural® keyboard)
KEY_RWIN = 0x5C, // Right Windows key (Natural keyboard)
KEY_APPS = 0x5D, // Applications key (Natural keyboard)
KEY_SLEEP = 0x5F, // Computer Sleep key

View File

@ -1,4 +1,4 @@
Source: jsoncons
Version: 0.131.2
Version: 0.132.1
Description: A C++, header-only library for constructing JSON and JSON-like text and binary data formats, with JSON Pointer, JSON Patch, JSONPath, CSV, MessagePack, CBOR, BSON, UBJSON
Homepage: https://github.com/danielaparker/jsoncons

View File

@ -3,8 +3,8 @@ include(vcpkg_common_functions)
vcpkg_from_github(
OUT_SOURCE_PATH SOURCE_PATH
REPO danielaparker/jsoncons
REF v0.131.2
SHA512 7053a971cbc6e12623b65f98323c0d330c903f2b5eae9191369a9a04ae87654e8fa435139e9a72829a1ef9a957e3d4837362c90668f42ba8a0eedc80207e6eef
REF v0.132.1
SHA512 74bfe6fe18e90f4230b9d811a01f263e4597f6363f4df0cb29a89148bbc040ab578a1eb77d3cb87ce0d8e9d304b9716dd245f4dc5603c7d445cd0acdfb62905d
HEAD_REF master
)

View File

@ -1,4 +1,4 @@
Source: jsoncpp
Version: 1.8.4-1
Version: 1.9.1
Homepage: https://github.com/open-source-parsers/jsoncpp
Description: jsoncpp is an implementation of a JSON reader and writer in C++. JSON (JavaScript Object Notation) is a lightweight data-interchange format that it is easy to parse and redeable for human.

View File

@ -2,8 +2,8 @@ include(vcpkg_common_functions)
vcpkg_from_github(
OUT_SOURCE_PATH SOURCE_PATH
REPO open-source-parsers/jsoncpp
REF 1.8.4
SHA512 f70361a3263dd8b9441374a9a409462be1426c0d6587c865171a80448ab73b3f69de2b4d70d2f0c541764e1e6cccc727dd53178347901f625ec6fb54fb94f4f1
REF 1.9.1
SHA512 4a8352e1d32c0ba8a0aea4df1663279cb2256b334643c5b62be37dfb5951e06900ba38c010d1201511fcf7de09137d6a4b886edbb2b99160d2f62b5f4679f766
HEAD_REF master
)

View File

@ -1,8 +1,8 @@
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 8682cc8..88b95c1 100644
index cdd5367..e982ee5 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -11,6 +11,8 @@ set(GLOBAL_OUTPUT_PATH_SUFFIX "" CACHE STRING
@@ -13,6 +13,8 @@ set(GLOBAL_OUTPUT_PATH_SUFFIX "" CACHE STRING
project(jsonnet C CXX)
@ -11,26 +11,35 @@ index 8682cc8..88b95c1 100644
# Discourage in-source builds because they overwrite the hand-written Makefile.
# Use `cmake . -B<dir>` or the CMake GUI to do an out-of-source build.
if (${CMAKE_SOURCE_DIR} STREQUAL ${CMAKE_BINARY_DIR} AND
@@ -73,17 +75,6 @@ elseif (BUILD_TESTS AND USE_SYSTEM_GTEST)
add_subdirectory(/usr/src/googletest ${GLOBAL_OUTPUT_PATH}/googletest-build)
@@ -76,6 +78,7 @@ elseif (BUILD_TESTS AND USE_SYSTEM_GTEST)
endif()
-# Compiler flags.
-if (${CMAKE_CXX_COMPILER_ID} MATCHES "Clang" OR
- ${CMAKE_CXX_COMPILER_ID} STREQUAL "GNU")
- set(OPT "-O3")
- set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -g -Wall -Wextra -pedantic -std=c99 -O3 ${OPT}")
- set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -g -Wall -Wextra -Woverloaded-virtual -pedantic -std=c++0x -fPIC ${OPT}")
-else()
- # TODO: Windows support.
- message(FATAL_ERROR "Compiler ${CMAKE_CXX_COMPILER_ID} not supported")
-endif()
-
# Compiler flags.
+if (0)
if (${CMAKE_CXX_COMPILER_ID} MATCHES "Clang" OR
${CMAKE_CXX_COMPILER_ID} STREQUAL "GNU")
set(OPT "-O3")
@@ -85,6 +88,7 @@ else()
# TODO: Windows support.
message(FATAL_ERROR "Compiler ${CMAKE_CXX_COMPILER_ID} not supported")
endif()
+endif()
# Look for libraries in global output path.
link_directories(${GLOBAL_OUTPUT_PATH})
diff --git a/cmd/CMakeLists.txt b/cmd/CMakeLists.txt
index 66e6aa0..aedc87e 100644
--- a/cmd/CMakeLists.txt
+++ b/cmd/CMakeLists.txt
@@ -13,5 +13,5 @@ if (BUILD_JSONNETFMT OR BUILD_TESTS)
add_dependencies(jsonnetfmt libjsonnet_static)
target_link_libraries(jsonnetfmt libjsonnet_static)
- install(TARGETS jsonnetfmt DESTINATION "${CMAKE_INSTALL_BINDIR}")
+ install(TARGETS jsonnetfmt DESTINATION tools/jsonnet)
endif()
diff --git a/core/CMakeLists.txt b/core/CMakeLists.txt
index f1c32b8..1a45a51 100644
index e877015..5ec328b 100644
--- a/core/CMakeLists.txt
+++ b/core/CMakeLists.txt
@@ -28,7 +28,7 @@ set(LIBJSONNET_SOURCE
@ -42,37 +51,38 @@ index f1c32b8..1a45a51 100644
add_dependencies(libjsonnet md5 stdlib)
target_link_libraries(libjsonnet md5)
@@ -36,13 +36,12 @@ target_link_libraries(libjsonnet md5)
# this step the output would be |liblibjsonnet|.
set_target_properties(libjsonnet PROPERTIES OUTPUT_NAME jsonnet
VERSION 0.12.1 SOVERSION 0)
-install(TARGETS libjsonnet DESTINATION lib)
+install(TARGETS libjsonnet DESTINATION lib RUNTIME DESTINATION bin)
@@ -41,13 +41,13 @@ set_target_properties(libjsonnet PROPERTIES OUTPUT_NAME jsonnet
install(TARGETS libjsonnet
LIBRARY DESTINATION "${CMAKE_INSTALL_LIBDIR}"
ARCHIVE DESTINATION "${CMAKE_INSTALL_LIBDIR}"
+ RUNTIME DESTINATION "${CMAKE_INSTALL_BINDIR}"
PUBLIC_HEADER DESTINATION "${CMAKE_INSTALL_INCLUDEDIR}")
# Static library for jsonnet command-line tool.
add_library(libjsonnet_static STATIC ${LIBJSONNET_SOURCE})
add_dependencies(libjsonnet_static md5 stdlib)
target_link_libraries(libjsonnet_static md5)
-set_target_properties(libjsonnet_static PROPERTIES OUTPUT_NAME jsonnet)
install(TARGETS libjsonnet_static DESTINATION "${CMAKE_INSTALL_LIBDIR}")
# Tests
diff --git a/stdlib/CMakeLists.txt b/stdlib/CMakeLists.txt
index a481d9f..9fe768e 100644
index a481d9f..bb8e418 100644
--- a/stdlib/CMakeLists.txt
+++ b/stdlib/CMakeLists.txt
@@ -2,14 +2,6 @@
@@ -2,6 +2,7 @@
add_executable(to_c_array to_c_array.cpp)
-# Custom command that will only build stdlib when it changes.
-add_custom_command(
- OUTPUT ${PROJECT_SOURCE_DIR}/core/std.jsonnet.h
- COMMAND ${GLOBAL_OUTPUT_PATH}/to_c_array
- ${PROJECT_SOURCE_DIR}/stdlib/std.jsonnet
- ${PROJECT_SOURCE_DIR}/core/std.jsonnet.h
- DEPENDS to_c_array std.jsonnet)
-
+if (0)
# Custom command that will only build stdlib when it changes.
add_custom_command(
OUTPUT ${PROJECT_SOURCE_DIR}/core/std.jsonnet.h
@@ -9,6 +10,7 @@ add_custom_command(
${PROJECT_SOURCE_DIR}/stdlib/std.jsonnet
${PROJECT_SOURCE_DIR}/core/std.jsonnet.h
DEPENDS to_c_array std.jsonnet)
+endif()
# Standard library build target that libjsonnet can depend on.
add_custom_target(stdlib ALL
DEPENDS ${PROJECT_SOURCE_DIR}/core/std.jsonnet.h)

View File

@ -1,4 +1,4 @@
Source: jsonnet
Version: 2019-05-08-1
Version: 0.13.0
Homepage: https://github.com/google/jsonnet
Description: Jsonnet - The data templating language

View File

@ -7,14 +7,14 @@ endif()
vcpkg_from_github(
OUT_SOURCE_PATH SOURCE_PATH
REPO google/jsonnet
REF c323f5ce5b8aa663585d23dc0fb94d4b166c6f16
SHA512 d9f84c39929e9e80272e2b834f68a13b48c1cb4d64b70f5b6fa16e677555d947f7cf57372453e23066a330faa6a429b9aa750271b46f763581977a223d238785
REF v0.13.0
SHA512 d19e5398763e37b79b0ef02368f6bd6215d2df234b5ff7a6d98e2306a0d47290600061c9f868c0c262570b4f0ee9eee6c309bcc93937b12f6c14f8d12339a7d5
HEAD_REF master
PATCHES
001-enable-msvc.patch
)
if (NOT VCPKG_CMAKE_SYSTEM_NAME OR VCPKG_CMAKE_SYSTEM_NAME STREQUAL "WindowsStore")
if (VCPKG_TARGET_IS_WINDOWS)
vcpkg_execute_required_process(
COMMAND Powershell -Command "((Get-Content -AsByteStream \"${SOURCE_PATH}/stdlib/std.jsonnet\") -join ',') + ',0' | Out-File -Encoding Ascii \"${SOURCE_PATH}/core/std.jsonnet.h\""
WORKING_DIRECTORY "${SOURCE_PATH}"

View File

@ -0,0 +1,4 @@
Source: lazy-importer
Version: 2019-08-10
Description: Library for importing functions from dlls in a hidden, reverse engineer unfriendly way
Homepage: https://github.com/JustasMasiulis/lazy_importer

View File

@ -0,0 +1,16 @@
# header-only library
include(vcpkg_common_functions)
vcpkg_from_github(
OUT_SOURCE_PATH SOURCE_PATH
REPO JustasMasiulis/lazy_importer
REF 88186bfce98845eba9050f7597332754f621c0fc
SHA512 04789501ea9c9cf600326b3f8292c441f54d0915452eb29b063fe0a8d56a31157cf338a4ec44aa658e397d754b6593ece51af2736d5980e72d67359a1abc2625
HEAD_REF master
)
file(COPY ${SOURCE_PATH}/include/lazy_importer.hpp DESTINATION ${CURRENT_PACKAGES_DIR}/include)
# Handle copyright
configure_file(${SOURCE_PATH}/LICENSE ${CURRENT_PACKAGES_DIR}/share/${PORT}/copyright COPYONLY)

View File

@ -1,5 +1,5 @@
Source: leptonica
Version: 1.76.0-1
Version: 1.78.0
Homepage: https://github.com/DanBloomberg/leptonica
Description: An open source library containing software that is broadly useful for image processing and image analysis applications
Build-Depends: libjpeg-turbo, zlib, libpng, tiff, giflib

View File

@ -3,8 +3,8 @@ include(vcpkg_common_functions)
vcpkg_from_github(
OUT_SOURCE_PATH SOURCE_PATH
REPO DanBloomberg/leptonica
REF 1.76.0
SHA512 0d7575dc38d1e656a228ef30412a2cbb908b9c7c8636e4e96f4a7dc0429c04709316b8ad04893285ab430c1b2063d71537fc5b989a0f9dbdbec488713e1bab1f
REF 87b8219360bca3c9929a5705c3d9c50c42c34bca
SHA512 b7bfa9437be7e3d9276acacf8f62ccda1cd8f88741ada5106ef0232d4965617be2c5d0b8a6b4462896a1a0b6b44d9ecefd6e6b8d0e50d4fb881bdf5e821703a4
HEAD_REF master
PATCHES
${CMAKE_CURRENT_LIST_DIR}/fix-cmakelists.patch

View File

@ -1,8 +1,8 @@
diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
index 3af7e30..55e17da 100644
index 6daad98..5119895 100644
--- a/src/CMakeLists.txt
+++ b/src/CMakeLists.txt
@@ -44,7 +44,7 @@ if (PNG_LIBRARY)
@@ -48,7 +48,7 @@ if (PNG_LIBRARY)
endif()
if (TIFF_LIBRARY)
target_include_directories (leptonica PUBLIC ${TIFF_INCLUDE_DIR})
@ -10,4 +10,4 @@ index 3af7e30..55e17da 100644
+ target_link_libraries (leptonica ${TIFF_LIBRARIES})
endif()
if (WEBP_FOUND)
target_include_directories (leptonica PUBLIC ${WEBP_INCLUDE_DIR})
target_include_directories (leptonica PUBLIC ${WEBP_INCLUDE_DIRS})

View File

@ -1,5 +1,5 @@
Source: libgit2
Version: 0.28.2
Version: 0.28.3
Homepage: https://github.com/libgit2/libgit2
Build-Depends: openssl (!windows&&!uwp)
Description: Git linkable library

View File

@ -8,8 +8,8 @@ include(vcpkg_common_functions)
vcpkg_from_github(
OUT_SOURCE_PATH SOURCE_PATH
REPO libgit2/libgit2
REF b3e1a56ebb2b9291e82dc027ba9cbcfc3ead54d3
SHA512 2a992759c0892300eff6d4e823367e2cfc5bcaa6e37a0e87de45a16393c53ccd286f47f37d38c104e79eed8688b9834ada00000b2d6894f89773f75c83e23022
REF v0.28.3
SHA512 15444823b7d4885f7b8c3982f8905efc4a75913de016a9b2e0a24d5ce9746e6a549dffd5469036529557feff2ce7ece9328266eb312c80b96091ce0f65ee97ee
HEAD_REF master
)

View File

@ -1,5 +1,5 @@
Source: libidn2
Version: 2.1.1-1
Version: 2.2.0
Build-Depends: libiconv
Homepage: https://www.gnu.org/software/libidn/
Description: GNU Libidn is an implementation of the Stringprep, Punycode and IDNA 2003 specifications. Libidn's purpose is to encode and decode internationalized domain names.

View File

@ -1,12 +1,12 @@
include(vcpkg_common_functions)
set(IDN2_VERSION 2.1.1)
set(IDN2_FILENAME libidn2-${IDN2_VERSION}a.tar.gz)
set(IDN2_VERSION 2.2.0)
set(IDN2_FILENAME libidn2-${IDN2_VERSION}.tar.gz)
vcpkg_download_distfile(ARCHIVE
URLS "http://ftp.gnu.org/gnu/libidn/${IDN2_FILENAME}"
FILENAME "${IDN2_FILENAME}"
SHA512 404a739e33d324f700ac8e8119de3feef0de778bbb11be09049cb64eab447cd101883f6d489cca1e88c230f58bcaf9758fe102e571b6501450aa750ec2a4a9c6
SHA512 ccf56056a378d49a28ff67a2a23cd3d32ce51f86a78f84839b98dad709a1d0d03ac8d7c1496f0e4d3536bca00e3d09d34d76a37317b2ce87e3aa66bdf4e877b8
)
vcpkg_extract_source_archive_ex(

View File

@ -1,4 +1,4 @@
Source: libmariadb
Version: 3.0.10-3
Version: 3.0.10-4
Homepage: https://github.com/MariaDB/mariadb-connector-c
Description: MariaDB Connector/C is used to connect C/C++ applications to MariaDB and MySQL databases

View File

@ -1,19 +1,3 @@
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 02757a9..b2715dd 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -15,6 +15,11 @@ IF(COMMAND CMAKE_POLICY)
ENDFOREACH()
ENDIF()
+if (BUILD_SHARED_LIBS)
+ set(DEFAULT_LINKAGE DYNAMIC)
+else()
+ set(DEFAULT_LINKAGE STATIC)
+endif()
PROJECT(mariadb-connector-c C)
diff --git a/cmake/install_plugins.cmake b/cmake/install_plugins.cmake
index cd5616c..d058a5c 100644
--- a/cmake/install_plugins.cmake
@ -63,84 +47,3 @@ index a1f039e..03a3a6f 100644
# On Windows, install PDB
INSTALL(FILES $<TARGET_PDB_FILE:libmariadb> DESTINATION "${INSTALL_LIBDIR}"
CONFIGURATIONS Debug RelWithDebInfo
diff --git a/plugins/auth/CMakeLists.txt b/plugins/auth/CMakeLists.txt
index 42f6f05..9a57146 100644
--- a/plugins/auth/CMakeLists.txt
+++ b/plugins/auth/CMakeLists.txt
@@ -14,7 +14,7 @@ REGISTER_PLUGIN(TARGET mysql_native_password
REGISTER_PLUGIN(TARGET dialog
TYPE MARIADB_CLIENT_PLUGIN_AUTH
CONFIGURATIONS DYNAMIC STATIC OFF
- DEFAULT DYNAMIC
+ DEFAULT ${DEFAULT_LINKAGE}
SOURCES ${CC_SOURCE_DIR}/plugins/auth/dialog.c
${CC_SOURCE_DIR}/libmariadb/get_password.c)
@@ -33,7 +33,7 @@ IF(WITH_SSL)
REGISTER_PLUGIN(TARGET caching_sha2_password
TYPE MARIADB_CLIENT_PLUGIN_AUTH
CONFIGURATIONS DYNAMIC STATIC OFF
- DEFAULT DYNAMIC
+ DEFAULT ${DEFAULT_LINKAGE}
SOURCES ${CC_SOURCE_DIR}/plugins/auth/caching_sha2_pw.c
${CRYPT_SOURCE}
LIBRARIES ${CACHING_SHA2_LIBS})
@@ -53,7 +53,7 @@ IF(GSSAPI_SOURCES)
REGISTER_PLUGIN(TARGET auth_gssapi_client
TYPE MARIADB_CLIENT_PLUGIN_AUTH
CONFIGURATIONS DYNAMIC STATIC OFF
- DEFAULT DYNAMIC
+ DEFAULT ${DEFAULT_LINKAGE}
SOURCES ${GSSAPI_SOURCES}
INCLUDES ${CC_SOURCE_DIR}/plugins/auth ${GSSAPI_INCS}
LIBRARIES ${GSSAPI_LIBS})
@@ -68,7 +68,7 @@ IF(${WITH_SSL} STREQUAL "OPENSSL" OR ${WITH_SSL} STREQUAL "SCHANNEL")
REGISTER_PLUGIN(TARGET sha256_password
TYPE MARIADB_CLIENT_PLUGIN_AUTH
CONFIGURATIONS DYNAMIC STATIC OFF
- DEFAULT DYNAMIC
+ DEFAULT ${DEFAULT_LINKAGE}
SOURCES ${AUTH_DIR}/sha256_pw.c
LIBRARIES ${SHA256_LIBS})
ENDIF()
@@ -85,6 +85,6 @@ REGISTER_PLUGIN(TARGET mysql_old_password
REGISTER_PLUGIN(TARGET mysql_clear_password
TYPE MARIADB_CLIENT_PLUGIN_AUTH
CONFIGURATIONS DYNAMIC STATIC OFF
- DEFAULT DYNAMIC
+ DEFAULT ${DEFAULT_LINKAGE}
SOURCES ${AUTH_DIR}/mariadb_cleartext.c)
diff --git a/plugins/io/CMakeLists.txt b/plugins/io/CMakeLists.txt
index 8c304c9..3547107 100644
--- a/plugins/io/CMakeLists.txt
+++ b/plugins/io/CMakeLists.txt
@@ -7,7 +7,7 @@ IF (WITH_CURL)
REGISTER_PLUGIN(TARGET remote_io
TYPE MARIADB_CLIENT_PLUGIN_IO
CONFIGURATIONS DYNAMIC STATIC OFF
- DEFAULT DYNAMIC
+ DEFAULT ${DEFAULT_LINKAGE}
SOURCES ${CC_SOURCE_DIR}/plugins/io/remote_io.c
INCLUDES ${CURL_INCLUDE_DIR}
LIBRARIES ${CURL_LIBRARIES})
diff --git a/plugins/pvio/CMakeLists.txt b/plugins/pvio/CMakeLists.txt
index 76eb3ef..3601622 100644
--- a/plugins/pvio/CMakeLists.txt
+++ b/plugins/pvio/CMakeLists.txt
@@ -15,13 +15,13 @@ IF(WIN32)
REGISTER_PLUGIN(TARGET pvio_npipe
TYPE MARIADB_CLIENT_PLUGIN_PVIO
CONFIGURATIONS STATIC DYNAMIC DEFAULT
- DEFAULT DYNAMIC
+ DEFAULT ${DEFAULT_LINKAGE}
SOURCES ${CC_SOURCE_DIR}/plugins/pvio/pvio_npipe.c)
# shared memory
REGISTER_PLUGIN(TARGET pvio_shmem
TYPE MARIADB_CLIENT_PLUGIN_PVIO
CONFIGURATIONS STATIC DYNAMIC DEFAULT
- DEFAULT DYNAMIC
+ DEFAULT ${DEFAULT_LINKAGE}
SOURCES ${CC_SOURCE_DIR}/plugins/pvio/pvio_shmem.c)
ENDIF()

View File

@ -33,6 +33,10 @@ if(NOT DEFINED VCPKG_BUILD_TYPE OR VCPKG_BUILD_TYPE STREQUAL "release")
file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include)
endif()
if(VCPKG_LIBRARY_LINKAGE STREQUAL static)
file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/bin ${CURRENT_PACKAGES_DIR}/debug/bin)
endif()
if(VCPKG_BUILD_TYPE STREQUAL "debug")
# move headers
file(RENAME

Some files were not shown because too many files have changed in this diff Show More