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 # 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 ## PR Structure
### Make separate Pull Requests per port ### 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 ### 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 ### 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 ### 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 ## 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: At this time, the following helpers are deprecated:
1. `vcpkg_extract_archive()` should be replaced by `vcpkg_extract_archive_ex()` 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()`) 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()` 3. `vcpkg_build_msbuild()` should be replaced by [`vcpkg_install_msbuild()`](vcpkg_install_msbuild.md)
### Avoid excessive comments in portfiles ### 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 ## Build Techniques
### Do not use vendored dependencies ### 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 ### 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) Examples: [abseil](../../ports/abseil/portfile.cmake)
### Choose either static or shared binaries ### 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 ```cmake
string(COMPARE EQUAL "${VCPKG_LIBRARY_LINKAGE}" "static" KEYSTONE_BUILD_STATIC) 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 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 ```cmake
set(CMAKE_DISABLE_FIND_PACKAGE_ZLIB ON) if ("zlib" IN_LIST FEATURES)
if("zlib" IN_LIST FEATURES) set(CMAKE_DISABLE_FIND_PACKAGE_ZLIB OFF)
set(CMAKE_DISABLE_FIND_PACKAGE_ZLIB OFF) else()
set(CMAKE_DISABLE_FIND_PACKAGE_ZLIB ON)
endif() endif()
vcpkg_configure_cmake(
SOURCE_PATH ${SOURCE_PATH}
PREFER_NINJA
OPTIONS
-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( vcpkg_configure_cmake(
SOURCE_PATH ${SOURCE_PATH} SOURCE_PATH ${SOURCE_PATH}
PREFER_NINJA PREFER_NINJA
OPTIONS OPTIONS
-DCMAKE_DISABLE_FIND_PACKAGE_ZLIB=${CMAKE_DISABLE_FIND_PACKAGE_ZLIB} ${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) 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) 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 ### 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. 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\_from\_gitlab](vcpkg_from_gitlab.md)
- [vcpkg\_install\_cmake](vcpkg_install_cmake.md) - [vcpkg\_install\_cmake](vcpkg_install_cmake.md)
- [vcpkg\_install\_msbuild](vcpkg_install_msbuild.md) - [vcpkg\_install\_msbuild](vcpkg_install_msbuild.md)
- [vcpkg\_prettify\_command](vcpkg_prettify_command.md)
- [vcpkg\_test\_cmake](vcpkg_test_cmake.md) - [vcpkg\_test\_cmake](vcpkg_test_cmake.md)

View File

@ -1,71 +1,148 @@
# vcpkg_check_features # vcpkg_check_features
Check if one or more features are a part of a package installation.
Check if one or more features are a part of the package installation.
## Usage ## Usage
```cmake ```cmake
vcpkg_check_features( vcpkg_check_features(
<feature1> <output_variable1> OUT_FEATURE_OPTIONS <FEATURE_OPTIONS>
[<feature2> <output_variable2>] [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.
`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(
SOURCE_PATH ${SOURCE_PATH}
PREFER_NINJA
OPTIONS
-DBUILD_TESTING=ON
${FEATURE_OPTIONS}
)
```
## Notes ## Notes
```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()
```
However, if you have a feature that was checked like this before: The `FEATURES` name parameter can be omitted if no `INVERTED_FEATURES` are used.
```cmake
if(<feature> IN_LIST FEATURES) At least one (`FEATURE_NAME`, `OPTION_NAME`) pair must be passed to the function call.
set(<output_variable> OFF)
else() Arguments passed to `FEATURES` and `INVERTED_FEATURES` are not validated to prevent duplication.
set(<output_variable> ON) If the same (`FEATURE_NAME`, `OPTION_NAME`) pair is passed to both lists,
endif() two conflicting definitions are added to `OUT_FEATURE_OPTIONS`.
```
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.
`vcpkg_check_features` is supposed to be called only once. Otherwise, the `FEATURE_OPTIONS` variable set by a previous call will be overwritten.
## Examples ## Examples
* [czmq](https://github.com/microsoft/vcpkg/blob/master/ports/czmq/portfile.cmake) ### Example 1: Regular features
* [xsimd](https://github.com/microsoft/vcpkg/blob/master/ports/xsimd/portfile.cmake)
* [xtensor](https://github.com/microsoft/vcpkg/blob/master/ports/xtensor/portfile.cmake) ```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
# Expands to "-DMI_SEE_ASM=ON; -DMI_OVERRIDE=OFF; -DMI_SECURE=ON"
${FEATURE_OPTIONS}
)
```
### Example 2: Inverted features
```cmake
$ ./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}
)
```
### Example 3: Set multiple options for same feature
```cmake
$ ./vcpkg install pcl[cuda]
# 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)
## Source ## Source
[scripts/cmake/vcpkg_check_features.cmake](https://github.com/Microsoft/vcpkg/blob/master/scripts/cmake/vcpkg_check_features.cmake) [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 ## Parameters
### SOURCE_PATH ### 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 ### 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 ### DISABLE_PARALLEL_CONFIGURE
Disables running the CMake configure step in parallel. Disables running the CMake configure step in parallel.
This is needed for libraries which write back into their source directory during configure. This is needed for libraries which write back into their source directory during configure.
### NO_CHARSET_FLAG ### NO_CHARSET_FLAG
@ -36,7 +37,8 @@ This is needed for libraries that set their own source code's character set.
### GENERATOR ### GENERATOR
Specifies the precise generator to use. 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 ### OPTIONS
Additional options passed to CMake during the configuration. 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 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. 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( vcpkg_from_github(
OUT_SOURCE_PATH SOURCE_PATH OUT_SOURCE_PATH SOURCE_PATH
REPO opencv/ade REPO opencv/ade
REF v0.1.1e REF v0.1.1f
SHA512 6271b3a6d23b155757a47b21f70cb169b0469501bd1a7c99aa91a76117387840e02b4c70dc4069b7c50408f760b9a7ea77527a30b4691048a1ee55dd94988dd5 SHA512 fbdec8f3d5811a573abb81f1ceb6fb8d40274439013f749645db5430c6d9cdc52227c25203f1a68177b263d648bb65197ea7c2bea7871264a06585e59892631c
HEAD_REF master HEAD_REF master
) )

View File

@ -1,3 +1,6 @@
Source: angelscript 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. 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 # Handle copyright
file(INSTALL ${CURRENT_PORT_DIR}/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/angelscript RENAME 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 Source: blosc
Version: 1.17.0 Version: 1.17.0-1
Build-Depends: lz4, snappy, zlib, zstd Build-Depends: lz4, snappy, zlib, zstd
Homepage: https://github.com/Blosc/c-blosc Homepage: https://github.com/Blosc/c-blosc
Description: A blocking, shuffling and loss-less compression library that can be faster than `memcpy()` 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 REF v1.17.0
SHA512 7fe517e9d050a36839ddf963e718881533cc10a7c8963222b3167fd48ec84455614206c1cc2c248f52042a019262fa0419c4c1a828eb1ae64294c55bbaf56f6e SHA512 7fe517e9d050a36839ddf963e718881533cc10a7c8963222b3167fd48ec84455614206c1cc2c248f52042a019262fa0419c4c1a828eb1ae64294c55bbaf56f6e
HEAD_REF master HEAD_REF master
PATCHES
0001-find-deps.patch
) )
if (VCPKG_LIBRARY_LINKAGE STREQUAL static) if (VCPKG_LIBRARY_LINKAGE STREQUAL static)
@ -51,3 +53,7 @@ file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include)
# Handle copyright # Handle copyright
file(INSTALL ${SOURCE_PATH}/LICENSES/BLOSC.txt DESTINATION ${CURRENT_PACKAGES_DIR}/share/blosc RENAME 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 Source: brynet
Version: 1.0.2 Version: 1.0.3
Homepage: https://github.com/IronsDu/brynet Homepage: https://github.com/IronsDu/brynet
Description: A C++ cross platform high performance tcp network library, and support SSL/HTTP/Websocket. Description: A C++ cross platform high performance tcp network library, and support SSL/HTTP/Websocket.
Build-Depends: openssl Build-Depends: openssl

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

@ -1,4 +1,4 @@
Source: cpp-httplib Source: cpp-httplib
Version: 0.2.0 Version: 0.2.1
Homepage: https://github.com/yhirose/cpp-httplib Homepage: https://github.com/yhirose/cpp-httplib
Description: A single file C++11 header-only HTTP/HTTPS server and client library 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( vcpkg_from_github(
OUT_SOURCE_PATH SOURCE_PATH OUT_SOURCE_PATH SOURCE_PATH
REPO yhirose/cpp-httplib REPO yhirose/cpp-httplib
REF 2f8479016fa9af9a63056571992b31c32741d89b REF v0.2.1
SHA512 2f17a6a95c849a5c873a65e8da8bf85311f0152e439a973354c24d02ee9e6c3b0f3a456b60f90637ea4588d9ac09f7e41f42199de61315754e5fe9eecbb657ed SHA512 f0f24cb58da4bbe4ccaa28891fd56257bc97cdf861c4406f41c0cb0bb76b53f9f707298cb5ea1139e4a819c4b1a4b750090a53652d45c3621b33d76ba627a78f
HEAD_REF master HEAD_REF master
) )

View File

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

View File

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

View File

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

View File

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

View File

@ -1,5 +1,5 @@
Source: darknet 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. 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 Build-Depends: pthreads (windows), stb
Default-Features: weights Default-Features: weights
@ -19,5 +19,5 @@ Feature: weights-train
Description: Download pre-built weights for training Description: Download pre-built weights for training
Feature: opencv-cuda 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 Description: Build darknet with support for a CUDA-enabled OpenCV

View File

@ -16,17 +16,12 @@ vcpkg_from_github(
HEAD_REF master HEAD_REF master
) )
vcpkg_check_features( vcpkg_check_features(OUT_FEATURE_OPTIONS FEATURE_OPTIONS
"cuda" ENABLE_CUDA "cuda" ENABLE_CUDA
"opencv" ENABLE_OPENCV "opencv" ENABLE_OPENCV
) )
if("opencv-cuda" IN_LIST FEATURES) if ("cuda" IN_LIST FEATURES)
set(ENABLE_OPENCV ON)
set(ENABLE_CUDA ON)
endif()
if (ENABLE_CUDA)
if (NOT VCPKG_CMAKE_SYSTEM_NAME AND NOT ENV{CUDACXX}) 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 #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") set(ENV{CUDACXX} "$ENV{CUDA_PATH}/bin/nvcc.exe")
@ -80,8 +75,7 @@ vcpkg_configure_cmake(
OPTIONS OPTIONS
-DINSTALL_BIN_DIR:STRING=bin -DINSTALL_BIN_DIR:STRING=bin
-DINSTALL_LIB_DIR:STRING=lib -DINSTALL_LIB_DIR:STRING=lib
-DENABLE_CUDA=${ENABLE_CUDA} ${FEATURE_OPTIONS}
-DENABLE_OPENCV=${ENABLE_OPENCV}
) )
vcpkg_install_cmake() 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 Source: dimcli
Version: 4.1.0 Version: 4.1.0-1
Homepage: https://github.com/gknowles/dimcli Homepage: https://github.com/gknowles/dimcli
Description: C++ command line parser toolkit 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 REF v4.1.0
SHA512 5de010b5abfda9e6996bba8c621e03ae0cf81dbc2f69cd859e2ebf7b1706c451f7f8e142299784646d89ca3c3e5803e8711215680b8bdb8eb663158bff3b4f3d SHA512 5de010b5abfda9e6996bba8c621e03ae0cf81dbc2f69cd859e2ebf7b1706c451f7f8e142299784646d89ca3c3e5803e8711215680b8bdb8eb663158bff3b4f3d
HEAD_REF master HEAD_REF master
PATCHES
fix-NameBoolean.patch
) )
set(staticCrt OFF) set(staticCrt OFF)
if(VCPKG_CRT_LINKAGE STREQUAL "static") if(VCPKG_CRT_LINKAGE STREQUAL "static")

View File

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

View File

@ -3,14 +3,14 @@ include(vcpkg_common_functions)
vcpkg_check_linkage(ONLY_STATIC_LIBRARY) vcpkg_check_linkage(ONLY_STATIC_LIBRARY)
if(NOT VCPKG_CRT_LINKAGE STREQUAL "dynamic") if(NOT VCPKG_CRT_LINKAGE STREQUAL "dynamic")
message(FATAL_ERROR "DirectXMesh only supports dynamic CRT linkage") message(FATAL_ERROR "DirectXMesh only supports dynamic CRT linkage")
endif() endif()
vcpkg_from_github( vcpkg_from_github(
OUT_SOURCE_PATH SOURCE_PATH OUT_SOURCE_PATH SOURCE_PATH
REPO Microsoft/DirectXMesh REPO Microsoft/DirectXMesh
REF apr2019 REF jun2019
SHA512 a9e0dbf6483633a1727592de7e2fa733de993daff848d9ec2241ce54b67c7d24ed0419058f2f6ce256021dcf7e16d178b62ed9b8c7a1756504ab044f8740be1d SHA512 6d42cd4d3e34e7f3bd5cee1a9ad90c9f89eafa55951a0a8d776034a05caa06b0fd17629547d14c8f2b4d0c5fafdbd24ae05c2a6582b5d069093d6b4dadac09a0
HEAD_REF master HEAD_REF master
) )
@ -20,8 +20,24 @@ ELSE()
SET(BUILD_ARCH ${TRIPLET_SYSTEM_ARCH}) SET(BUILD_ARCH ${TRIPLET_SYSTEM_ARCH})
ENDIF() 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( vcpkg_build_msbuild(
PROJECT_PATH ${SOURCE_PATH}/DirectXMesh_Desktop_2017.sln PROJECT_PATH ${SOURCE_PATH}/DirectXMesh_${SLN_NAME}.sln
PLATFORM ${BUILD_ARCH} PLATFORM ${BUILD_ARCH}
) )
@ -30,17 +46,21 @@ file(INSTALL
${SOURCE_PATH}/DirectXMesh/DirectXMesh.inl ${SOURCE_PATH}/DirectXMesh/DirectXMesh.inl
DESTINATION ${CURRENT_PACKAGES_DIR}/include DESTINATION ${CURRENT_PACKAGES_DIR}/include
) )
file(INSTALL 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) DESTINATION ${CURRENT_PACKAGES_DIR}/debug/lib)
file(INSTALL 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) DESTINATION ${CURRENT_PACKAGES_DIR}/lib)
set(TOOL_PATH ${CURRENT_PACKAGES_DIR}/tools) if(NOT VCPKG_CMAKE_SYSTEM_NAME STREQUAL "WindowsStore")
file(INSTALL set(TOOL_PATH ${CURRENT_PACKAGES_DIR}/tools/directxmesh)
${SOURCE_PATH}/Meshconvert/Bin/Desktop_2017/${BUILD_ARCH}/Release/Meshconvert.exe file(MAKE_DIRECTORY ${TOOL_PATH})
DESTINATION ${TOOL_PATH}) file(INSTALL
${SOURCE_PATH}/Meshconvert/Bin/${SLN_NAME}/${BUILD_ARCH}/Release/Meshconvert.exe
DESTINATION ${TOOL_PATH})
endif()
# Handle copyright # Handle copyright
file(COPY ${SOURCE_PATH}/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/directxmesh) file(COPY ${SOURCE_PATH}/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/directxmesh)

View File

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

View File

@ -9,8 +9,8 @@ endif()
vcpkg_from_github( vcpkg_from_github(
OUT_SOURCE_PATH SOURCE_PATH OUT_SOURCE_PATH SOURCE_PATH
REPO Microsoft/DirectXTex REPO Microsoft/DirectXTex
REF apr2019 REF jun2019
SHA512 3e50c5beb25416a0720614321bb2b712b5677b50989909ca703801080023f8f8ad168bbe4e5dc522500325989a8f6982026d7dc5029ee28d9dcfe35efdd002de SHA512 036a4593f8117e622cd6f609aea5bad734f9c3fc239984ec4f970cb6634ac3097cdb5ed2e467d3b1549e2340bcfe10ee4925b4e3691cf7f729ca538d3724c26e
HEAD_REF master HEAD_REF master
) )
@ -20,8 +20,24 @@ ELSE()
SET(BUILD_ARCH ${TRIPLET_SYSTEM_ARCH}) SET(BUILD_ARCH ${TRIPLET_SYSTEM_ARCH})
ENDIF() 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( vcpkg_build_msbuild(
PROJECT_PATH ${SOURCE_PATH}/DirectXTex_Desktop_2017.sln PROJECT_PATH ${SOURCE_PATH}/DirectXTex_${SLN_NAME}.sln
PLATFORM ${BUILD_ARCH} PLATFORM ${BUILD_ARCH}
) )
@ -31,23 +47,25 @@ file(INSTALL
DESTINATION ${CURRENT_PACKAGES_DIR}/include DESTINATION ${CURRENT_PACKAGES_DIR}/include
) )
file(INSTALL 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) DESTINATION ${CURRENT_PACKAGES_DIR}/debug/lib)
file(INSTALL 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) DESTINATION ${CURRENT_PACKAGES_DIR}/lib)
set(TOOL_PATH ${CURRENT_PACKAGES_DIR}/tools) if(NOT VCPKG_CMAKE_SYSTEM_NAME STREQUAL "WindowsStore")
file(MAKE_DIRECTORY ${TOOL_PATH}) set(TOOL_PATH ${CURRENT_PACKAGES_DIR}/tools/directxtex)
file(INSTALL file(MAKE_DIRECTORY ${TOOL_PATH})
${SOURCE_PATH}/Texdiag/Bin/Desktop_2017/${BUILD_ARCH}/Release/texdiag.exe file(INSTALL
DESTINATION ${TOOL_PATH}) ${SOURCE_PATH}/Texdiag/Bin/${SLN_NAME}/${BUILD_ARCH}/Release/texdiag.exe
file(INSTALL DESTINATION ${TOOL_PATH})
${SOURCE_PATH}/Texconv/Bin/Desktop_2017/${BUILD_ARCH}/Release/Texconv.exe file(INSTALL
DESTINATION ${TOOL_PATH}) ${SOURCE_PATH}/Texconv/Bin/${SLN_NAME}/${BUILD_ARCH}/Release/Texconv.exe
file(INSTALL DESTINATION ${TOOL_PATH})
${SOURCE_PATH}/Texassemble/Bin/Desktop_2017/${BUILD_ARCH}/Release/Texassemble.exe file(INSTALL
DESTINATION ${TOOL_PATH}) ${SOURCE_PATH}/Texassemble/Bin/${SLN_NAME}/${BUILD_ARCH}/Release/Texassemble.exe
DESTINATION ${TOOL_PATH})
endif()
# Handle copyright # Handle copyright
file(COPY ${SOURCE_PATH}/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/DirectXTex) file(COPY ${SOURCE_PATH}/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/DirectXTex)

View File

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

View File

@ -3,16 +3,15 @@ include(vcpkg_common_functions)
vcpkg_check_linkage(ONLY_STATIC_LIBRARY) vcpkg_check_linkage(ONLY_STATIC_LIBRARY)
if(NOT VCPKG_CRT_LINKAGE STREQUAL "dynamic") if(NOT VCPKG_CRT_LINKAGE STREQUAL "dynamic")
message(FATAL_ERROR "DirectXTK only supports dynamic CRT linkage") message(FATAL_ERROR "DirectXTK only supports dynamic CRT linkage")
endif() endif()
vcpkg_from_github( vcpkg_from_github(
OUT_SOURCE_PATH SOURCE_PATH OUT_SOURCE_PATH SOURCE_PATH
REPO Microsoft/DirectXTK REPO Microsoft/DirectXTK
REF apr2019 REF jun2019
SHA512 811ed222c1650d34a8475e44719cca8972a85d96f9ccb10548e1501eb9d28fd8685de90832b517cdcbf21ae8c9160dea69000e8dca06fab745a15a7acc14ba98 SHA512 211b18ee0755802a5d44b58da2485276cabdee222d2f5fd7b42bad0bf75810e3ac1bd319b90891d9cc0345b124631ad37588422af9120cece9fa0ed769033e77
HEAD_REF master HEAD_REF master
PATCHES fix-invalid-configuration.patch
) )
IF (TRIPLET_SYSTEM_ARCH MATCHES "x86") IF (TRIPLET_SYSTEM_ARCH MATCHES "x86")
@ -21,10 +20,20 @@ ELSE()
SET(BUILD_ARCH ${TRIPLET_SYSTEM_ARCH}) SET(BUILD_ARCH ${TRIPLET_SYSTEM_ARCH})
ENDIF() ENDIF()
if(VCPKG_CMAKE_SYSTEM_NAME STREQUAL "WindowsStore") if (VCPKG_PLATFORM_TOOLSET STREQUAL "v140")
set(SLN_NAME "Windows10") 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() 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() endif()
vcpkg_build_msbuild( vcpkg_build_msbuild(
@ -32,6 +41,11 @@ vcpkg_build_msbuild(
PLATFORM ${BUILD_ARCH} PLATFORM ${BUILD_ARCH}
) )
file(INSTALL
${SOURCE_PATH}/Inc/
DESTINATION ${CURRENT_PACKAGES_DIR}/include/DirectXTK
)
file(INSTALL file(INSTALL
${SOURCE_PATH}/Bin/${SLN_NAME}/${BUILD_ARCH}/Release/DirectXTK.lib ${SOURCE_PATH}/Bin/${SLN_NAME}/${BUILD_ARCH}/Release/DirectXTK.lib
DESTINATION ${CURRENT_PACKAGES_DIR}/lib) DESTINATION ${CURRENT_PACKAGES_DIR}/lib)
@ -41,22 +55,15 @@ file(INSTALL
DESTINATION ${CURRENT_PACKAGES_DIR}/debug/lib) DESTINATION ${CURRENT_PACKAGES_DIR}/debug/lib)
if(NOT VCPKG_CMAKE_SYSTEM_NAME STREQUAL "WindowsStore") if(NOT VCPKG_CMAKE_SYSTEM_NAME STREQUAL "WindowsStore")
set(DXTK_TOOL_PATH ${CURRENT_PACKAGES_DIR}/tools/directxtk) set(DXTK_TOOL_PATH ${CURRENT_PACKAGES_DIR}/tools/directxtk)
file(MAKE_DIRECTORY ${DXTK_TOOL_PATH}) file(MAKE_DIRECTORY ${DXTK_TOOL_PATH})
file(INSTALL
file(INSTALL ${SOURCE_PATH}/MakeSpriteFont/bin/Release/MakeSpriteFont.exe
${SOURCE_PATH}/MakeSpriteFont/bin/Release/MakeSpriteFont.exe DESTINATION ${DXTK_TOOL_PATH})
DESTINATION ${DXTK_TOOL_PATH}) file(INSTALL
${SOURCE_PATH}/XWBTool/Bin/${SLN_NAME}/${BUILD_ARCH}/Release/XWBTool.exe
file(INSTALL DESTINATION ${DXTK_TOOL_PATH})
${SOURCE_PATH}/XWBTool/Bin/Desktop_2017/${BUILD_ARCH}/Release/XWBTool.exe
DESTINATION ${DXTK_TOOL_PATH})
endif() endif()
file(INSTALL
${SOURCE_PATH}/Inc/
DESTINATION ${CURRENT_PACKAGES_DIR}/include/DirectXTK
)
# Handle copyright # Handle copyright
file(INSTALL ${SOURCE_PATH}/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/directxtk RENAME copyright) file(INSTALL ${SOURCE_PATH}/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/directxtk RENAME copyright)

View File

@ -1,4 +1,4 @@
Source: directxtk12 Source: directxtk12
Version: dec2016-1 Version: jun2019-1
Homepage: https://github.com/Microsoft/DirectXTK12 Homepage: https://github.com/Microsoft/DirectXTK12
Description: A collection of helper classes for writing DirectX 12 code in C++. 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) vcpkg_check_linkage(ONLY_STATIC_LIBRARY)
if(NOT VCPKG_CRT_LINKAGE STREQUAL "dynamic") 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() endif()
set(SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src/DirectXTK12-dec2016) vcpkg_from_github(
vcpkg_download_distfile(ARCHIVE OUT_SOURCE_PATH SOURCE_PATH
URLS "https://github.com/Microsoft/DirectXTK12/archive/dec2016.tar.gz" REPO Microsoft/DirectXTK12
FILENAME "DirectXTK12-dec2016.tar.gz" REF jun2019
SHA512 7c98fbf1d7ef96807a38d396a87dacdc60fdcd7e461210d246cc424789c4c5c5fb1390db958c1bd1f77da8af756a9eae36813e5da6bbb0ea1432ff4004f1d010 SHA512 f635746ff92cf3b60b96f74f5ada5fb8409d1ac6e2729d24ebf0ebb275e26d373ec0ccdfbb66a3cb967267da86de4d70304d1f3326b738f94f5a8fc0d43a8c97
) HEAD_REF master
vcpkg_extract_source_archive(${ARCHIVE})
vcpkg_build_msbuild(
PROJECT_PATH ${SOURCE_PATH}/DirectXTK_Desktop_2015_Win10.sln
) )
IF (TRIPLET_SYSTEM_ARCH MATCHES "x86") IF (TRIPLET_SYSTEM_ARCH MATCHES "x86")
@ -24,17 +20,38 @@ ELSE()
SET(BUILD_ARCH ${TRIPLET_SYSTEM_ARCH}) SET(BUILD_ARCH ${TRIPLET_SYSTEM_ARCH})
ENDIF() ENDIF()
file(INSTALL if (VCPKG_PLATFORM_TOOLSET STREQUAL "v140")
${SOURCE_PATH}/Bin/Desktop_2015_Win10/${BUILD_ARCH}/Release/DirectXTK12.lib set(VS_VERSION "2015")
DESTINATION ${CURRENT_PACKAGES_DIR}/lib) elseif (VCPKG_PLATFORM_TOOLSET STREQUAL "v141")
file(INSTALL set(VS_VERSION "2017")
${SOURCE_PATH}/Bin/Desktop_2015_Win10/${BUILD_ARCH}/Debug/DirectXTK12.lib elseif (VCPKG_PLATFORM_TOOLSET STREQUAL "v142")
DESTINATION ${CURRENT_PACKAGES_DIR}/debug/lib) 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 file(INSTALL
${SOURCE_PATH}/Inc/ ${SOURCE_PATH}/Inc/
DESTINATION ${CURRENT_PACKAGES_DIR}/include/DirectXTK12 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 # Handle copyright
file(INSTALL ${SOURCE_PATH}/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/directxtk12 RENAME copyright) file(INSTALL ${SOURCE_PATH}/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/directxtk12 RENAME copyright)

View File

@ -1,4 +1,4 @@
Source: doctest Source: doctest
Version: 2.3.3 Version: 2.3.4
Homepage: https://github.com/onqtam/doctest Homepage: https://github.com/onqtam/doctest
Description: The fastest feature-rich C++ single-header testing framework for unit tests and TDD 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( vcpkg_from_github(
OUT_SOURCE_PATH SOURCE_PATH OUT_SOURCE_PATH SOURCE_PATH
REPO onqtam/doctest REPO onqtam/doctest
REF 2.3.3 REF 2.3.4
SHA512 9ef94de93906f3c43918f232b3baa64756fdaee883afc5b2e785e76b108f1aa0d526a49dac58ffb0475ebfd8d8394ef266aec499c29282eea9a2752fb60b663f SHA512 ca97da8e22684f2d901d0a9dc9c1d0c7126a850f75fe20c37a4d8bbc6f7eafc961313a6c58ca712f00465fff107e1b6b6d9557d2b04edb3029b0035bcfa6db20
HEAD_REF master HEAD_REF master
) )

View File

@ -1,4 +1,4 @@
Source: double-conversion Source: double-conversion
Version: 3.1.4 Version: 3.1.5
Homepage: https://github.com/google/double-conversion Homepage: https://github.com/google/double-conversion
Description: Efficient binary-decimal and decimal-binary conversion routines for IEEE doubles. 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( vcpkg_from_github(
OUT_SOURCE_PATH SOURCE_PATH OUT_SOURCE_PATH SOURCE_PATH
REPO google/double-conversion REPO google/double-conversion
REF v3.1.4 REF v3.1.5
SHA512 715a34ace2ff74b79d80a8c003c16cfbf958ebc92264e28cc572e1a12a786e1df9678abb46f032c2be387495e1a3d02957b12fa4a245ec6cfe19ca637519ac3c SHA512 0aeabdbfa06c3c4802905ac4bf8c2180840577677b47d45e1c91034fe07746428c9db79260ce6bdbdf8b584746066cea9247ba43a9c38155caf1ef44e214180a
HEAD_REF master 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) project (duktape)
file(GLOB_RECURSE DUKTAPE_SOURCES "src/*.c") file(GLOB_RECURSE DUKTAPE_SOURCES "src/*.c")

View File

@ -1,5 +1,5 @@
Source: duktape Source: duktape
Version: 2.3.0-2 Version: 2.3.0-3
Homepage: https://github.com/svaarala/duktape Homepage: https://github.com/svaarala/duktape
Description: Embeddable Javascript engine with a focus on portability and compact footprint. Description: Embeddable Javascript engine with a focus on portability and compact footprint.
Build-Depends: 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}/easy_install${EXECUTABLE_SUFFIX})
if(NOT EXISTS ${PYTHON2_DIR}/Scripts/pip${EXECUTABLE_SUFFIX}) if(NOT EXISTS ${PYTHON2_DIR}/Scripts/pip${EXECUTABLE_SUFFIX})
vcpkg_download_distfile(GET_PIP 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" FILENAME "tools/python/python2/get-pip.py"
SHA512 99520d223819708b8f6e4b839d1fa215e4e8adc7fcd0db6c25a0399cf2fa10034b35673cf450609303646d12497f301ef53b7e7cc65c78e7bce4af0c673555ad SHA512 92e68525830bb23955a31cb19ebc3021ef16b6337eab83d5db2961b791283d2867207545faf83635f6027f2f7b7f8fee2c85f2cfd8e8267df25406474571c741
) )
execute_process(COMMAND ${PYTHON2_DIR}/python${EXECUTABLE_SUFFIX} ${PYTHON2_DIR}/get-pip.py) execute_process(COMMAND ${PYTHON2_DIR}/python${EXECUTABLE_SUFFIX} ${PYTHON2_DIR}/get-pip.py)
endif() 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 Source: ffmpeg
Version: 4.1-9 Version: 4.1-11
Build-Depends: zlib
Homepage: https://ffmpeg.org 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. 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. 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 Feature: gpl
Description: allow GPL licensed libraries 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/SelectLibraryConfigurations.cmake)
include(${CMAKE_ROOT}/Modules/CMakeFindDependencyMacro.cmake) include(${CMAKE_ROOT}/Modules/CMakeFindDependencyMacro.cmake)
set(FFMPEG_VERSION "4.1")
find_dependency(Threads) find_dependency(Threads)
#list(APPEND FFMPEG_PLATFORM_DEPENDENT_LIBS Threads::Threads) #list(APPEND FFMPEG_PLATFORM_DEPENDENT_LIBS Threads::Threads)
if(UNIX) if(UNIX)
@ -44,7 +46,7 @@ endif()
# Platform dependent libraries required by FFMPEG # Platform dependent libraries required by FFMPEG
if(WIN32) if(WIN32)
if(NOT CYGWIN) 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() endif()
else() else()
list(APPEND FFMPEG_PLATFORM_DEPENDENT_LIBS m) list(APPEND FFMPEG_PLATFORM_DEPENDENT_LIBS m)
@ -83,17 +85,41 @@ macro(FFMPEG_FIND_GENEX varname shortname headername)
set(FFMPEG_${varname}_FOUND 1) set(FFMPEG_${varname}_FOUND 1)
list(APPEND FFMPEG_LIBRARY_DIRS ${FFMPEG_${varname}_LIBRARY_RELEASE_DIR} ${FFMPEG_${varname}_LIBRARY_DEBUG_DIR}) list(APPEND FFMPEG_LIBRARY_DIRS ${FFMPEG_${varname}_LIBRARY_RELEASE_DIR} ${FFMPEG_${varname}_LIBRARY_DEBUG_DIR})
endif() endif()
endmacro(FFMPEG_FIND) endmacro(FFMPEG_FIND_GENEX)
if(WIN32) if(WIN32)
if(NOT FFMPEG_${varname}_INCLUDE_DIRS) FFMPEG_FIND_GENEX(libzlib zlib zlib.h)
find_path(FFMPEG_stdint_INCLUDE_DIRS NAMES stdint.h PATH_SUFFIXES ffmpeg)
endif()
if (FFMPEG_stdint_INCLUDE_DIRS)
set(STDINT_OK TRUE)
endif()
else() 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() endif()
FFMPEG_FIND(libavcodec avcodec avcodec.h) FFMPEG_FIND(libavcodec avcodec avcodec.h)
@ -103,13 +129,20 @@ FFMPEG_FIND(libavformat avformat avformat.h)
FFMPEG_FIND(libavutil avutil avutil.h) FFMPEG_FIND(libavutil avutil avutil.h)
FFMPEG_FIND(libswresample swresample swresample.h) FFMPEG_FIND(libswresample swresample swresample.h)
FFMPEG_FIND(libswscale swscale swscale.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) 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} ${FFMPEG_stdint_INCLUDE_DIRS}) 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_INCLUDE_DIRS)
list(REMOVE_DUPLICATES FFMPEG_LIBRARY_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 list(APPEND FFMPEG_LIBRARIES
${FFMPEG_libavformat_LIBRARY} ${FFMPEG_libavformat_LIBRARY}
${FFMPEG_libavdevice_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 PATCHES
create-lib-libraries.patch create-lib-libraries.patch
detect-openssl.patch detect-openssl.patch
configure_opencv.patch
fix_windowsinclude-in-ffmpegexe-1.patch fix_windowsinclude-in-ffmpegexe-1.patch
fix_windowsinclude-in-ffmpegexe-2.patch fix_windowsinclude-in-ffmpegexe-2.patch
fix_libvpx_windows_linking.patch fix_libvpx_windows_linking.patch
@ -126,6 +125,10 @@ else()
set(OPTIONS "${OPTIONS} --disable-bzlib") set(OPTIONS "${OPTIONS} --disable-bzlib")
endif() endif()
if("avresample" IN_LIST FEATURES)
set(OPTIONS "${OPTIONS} --enable-avresample")
endif()
set(OPTIONS_CROSS "") set(OPTIONS_CROSS "")
if (VCPKG_TARGET_ARCHITECTURE STREQUAL "arm" OR VCPKG_TARGET_ARCHITECTURE STREQUAL "arm64") 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 Source: freeimage
Version: 3.18.0-6 Version: 3.18.0-7
Build-Depends: zlib, libpng, libjpeg-turbo, tiff, openjpeg, libwebp[all], libraw, jxrlib, openexr Build-Depends: zlib, libpng, libjpeg-turbo, tiff, openjpeg, libwebp[all] (!uwp), libraw, jxrlib, openexr
Homepage: https://sourceforge.net/projects/freeimage/ Homepage: https://sourceforge.net/projects/freeimage/
Description: Support library for graphics image formats Description: Support library for graphics image formats

View File

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

View File

@ -43,6 +43,12 @@ file(REMOVE_RECURSE
${CURRENT_PACKAGES_DIR}/debug/share ${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") if(VCPKG_LIBRARY_LINKAGE STREQUAL "static")
file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/bin ${CURRENT_PACKAGES_DIR}/debug/bin) file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/bin ${CURRENT_PACKAGES_DIR}/debug/bin)
endif() endif()

View File

@ -1,4 +1,4 @@
Source: geographiclib Source: geographiclib
Version: 1.47-patch1-6 Version: 1.47-patch1-7
Homepage: https://sourceforge.net/projects/geographiclib/ 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. 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() vcpkg_install_cmake()
vcpkg_fixup_cmake_targets(CONFIG_PATH 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() vcpkg_copy_pdbs()
file(COPY ${CURRENT_PACKAGES_DIR}/lib/pkgconfig DESTINATION ${CURRENT_PACKAGES_DIR}/share/geographiclib) file(COPY ${CURRENT_PACKAGES_DIR}/lib/pkgconfig DESTINATION ${CURRENT_PACKAGES_DIR}/share/geographiclib)

View File

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

View File

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

View File

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

View File

@ -7,8 +7,8 @@ endif()
vcpkg_from_github( vcpkg_from_github(
OUT_SOURCE_PATH SOURCE_PATH OUT_SOURCE_PATH SOURCE_PATH
REPO google/googletest REPO google/googletest
REF b6cd405286ed8635ece71c72f118e659f4ade3fb REF 90a443f9c2437ca8a682a1ac625eba64e1d74a8a
SHA512 1642a9cf1923d00c52c346399941517787431dad3e6d3a5da07bc02243a231a95e30e0a9568ffd29bb9b9757f15c1c47d2d811c2bedb301f2d27cf912be0a534 SHA512 fc874a7977f11be58dc63993b520b4ae6ca43654fb5250c8b56df62a21f4dca8fcbdc81dfa106374b2bb7c59bc88952fbfc0e3ae4c7d63fdb502afbaeb39c822
HEAD_REF master HEAD_REF master
PATCHES PATCHES
${CMAKE_CURRENT_LIST_DIR}/0002-Fix-z7-override.patch ${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} ${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) if(IRR_BUILD_TOOLS)
add_executable(FileToHeader ${IRR_TOOL_FILES_FILE_TO_HEADER}) add_executable(FileToHeader ${IRR_TOOL_FILES_FILE_TO_HEADER})
@ -151,9 +144,6 @@ endif()
target_compile_definitions(Irrlicht PRIVATE IRRLICHT_EXPORTS) target_compile_definitions(Irrlicht PRIVATE IRRLICHT_EXPORTS)
if(WIN32) if(WIN32)
# Unicode
target_compile_definitions(Irrlicht PRIVATE UNICODE _UNICODE)
# Import the symbols of bzip2 # Import the symbols of bzip2
target_compile_definitions(Irrlicht PRIVATE BZ_IMPORT) target_compile_definitions(Irrlicht PRIVATE BZ_IMPORT)

View File

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

View File

@ -22,8 +22,6 @@ vcpkg_extract_source_archive_ex(
OUT_SOURCE_PATH SOURCE_PATH OUT_SOURCE_PATH SOURCE_PATH
ARCHIVE ${ARCHIVE} ARCHIVE ${ARCHIVE}
REF "1.8.4" REF "1.8.4"
PATCHES
"support-unicode-on-windows.patch"
# [NO_REMOVE_ONE_LEVEL] # [NO_REMOVE_ONE_LEVEL]
# [WORKING_DIRECTORY <${CURRENT_BUILDTREES_DIR}/src>] # [WORKING_DIRECTORY <${CURRENT_BUILDTREES_DIR}/src>]
# [PATCHES <a.patch>...] # [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 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 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 Homepage: https://github.com/danielaparker/jsoncons

View File

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

View File

@ -1,4 +1,4 @@
Source: jsoncpp Source: jsoncpp
Version: 1.8.4-1 Version: 1.9.1
Homepage: https://github.com/open-source-parsers/jsoncpp 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. 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( vcpkg_from_github(
OUT_SOURCE_PATH SOURCE_PATH OUT_SOURCE_PATH SOURCE_PATH
REPO open-source-parsers/jsoncpp REPO open-source-parsers/jsoncpp
REF 1.8.4 REF 1.9.1
SHA512 f70361a3263dd8b9441374a9a409462be1426c0d6587c865171a80448ab73b3f69de2b4d70d2f0c541764e1e6cccc727dd53178347901f625ec6fb54fb94f4f1 SHA512 4a8352e1d32c0ba8a0aea4df1663279cb2256b334643c5b62be37dfb5951e06900ba38c010d1201511fcf7de09137d6a4b886edbb2b99160d2f62b5f4679f766
HEAD_REF master HEAD_REF master
) )

View File

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

View File

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

View File

@ -7,15 +7,15 @@ endif()
vcpkg_from_github( vcpkg_from_github(
OUT_SOURCE_PATH SOURCE_PATH OUT_SOURCE_PATH SOURCE_PATH
REPO google/jsonnet REPO google/jsonnet
REF c323f5ce5b8aa663585d23dc0fb94d4b166c6f16 REF v0.13.0
SHA512 d9f84c39929e9e80272e2b834f68a13b48c1cb4d64b70f5b6fa16e677555d947f7cf57372453e23066a330faa6a429b9aa750271b46f763581977a223d238785 SHA512 d19e5398763e37b79b0ef02368f6bd6215d2df234b5ff7a6d98e2306a0d47290600061c9f868c0c262570b4f0ee9eee6c309bcc93937b12f6c14f8d12339a7d5
HEAD_REF master HEAD_REF master
PATCHES PATCHES
001-enable-msvc.patch 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( 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\"" 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}" WORKING_DIRECTORY "${SOURCE_PATH}"
LOGNAME "std.jsonnet" LOGNAME "std.jsonnet"

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

View File

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

View File

@ -1,13 +1,13 @@
diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
index 3af7e30..55e17da 100644 index 6daad98..5119895 100644
--- a/src/CMakeLists.txt --- a/src/CMakeLists.txt
+++ b/src/CMakeLists.txt +++ b/src/CMakeLists.txt
@@ -44,7 +44,7 @@ if (PNG_LIBRARY) @@ -48,7 +48,7 @@ if (PNG_LIBRARY)
endif() endif()
if (TIFF_LIBRARY) if (TIFF_LIBRARY)
target_include_directories (leptonica PUBLIC ${TIFF_INCLUDE_DIR}) target_include_directories (leptonica PUBLIC ${TIFF_INCLUDE_DIR})
- target_link_libraries (leptonica ${TIFF_LIBRARY}) - target_link_libraries (leptonica ${TIFF_LIBRARY})
+ target_link_libraries (leptonica ${TIFF_LIBRARIES}) + target_link_libraries (leptonica ${TIFF_LIBRARIES})
endif() endif()
if (WEBP_FOUND) 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 Source: libgit2
Version: 0.28.2 Version: 0.28.3
Homepage: https://github.com/libgit2/libgit2 Homepage: https://github.com/libgit2/libgit2
Build-Depends: openssl (!windows&&!uwp) Build-Depends: openssl (!windows&&!uwp)
Description: Git linkable library Description: Git linkable library

View File

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

View File

@ -1,5 +1,5 @@
Source: libidn2 Source: libidn2
Version: 2.1.1-1 Version: 2.2.0
Build-Depends: libiconv Build-Depends: libiconv
Homepage: https://www.gnu.org/software/libidn/ 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. 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) include(vcpkg_common_functions)
set(IDN2_VERSION 2.1.1) set(IDN2_VERSION 2.2.0)
set(IDN2_FILENAME libidn2-${IDN2_VERSION}a.tar.gz) set(IDN2_FILENAME libidn2-${IDN2_VERSION}.tar.gz)
vcpkg_download_distfile(ARCHIVE vcpkg_download_distfile(ARCHIVE
URLS "http://ftp.gnu.org/gnu/libidn/${IDN2_FILENAME}" URLS "http://ftp.gnu.org/gnu/libidn/${IDN2_FILENAME}"
FILENAME "${IDN2_FILENAME}" FILENAME "${IDN2_FILENAME}"
SHA512 404a739e33d324f700ac8e8119de3feef0de778bbb11be09049cb64eab447cd101883f6d489cca1e88c230f58bcaf9758fe102e571b6501450aa750ec2a4a9c6 SHA512 ccf56056a378d49a28ff67a2a23cd3d32ce51f86a78f84839b98dad709a1d0d03ac8d7c1496f0e4d3536bca00e3d09d34d76a37317b2ce87e3aa66bdf4e877b8
) )
vcpkg_extract_source_archive_ex( vcpkg_extract_source_archive_ex(

View File

@ -1,4 +1,4 @@
Source: libmariadb Source: libmariadb
Version: 3.0.10-3 Version: 3.0.10-4
Homepage: https://github.com/MariaDB/mariadb-connector-c Homepage: https://github.com/MariaDB/mariadb-connector-c
Description: MariaDB Connector/C is used to connect C/C++ applications to MariaDB and MySQL databases 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 diff --git a/cmake/install_plugins.cmake b/cmake/install_plugins.cmake
index cd5616c..d058a5c 100644 index cd5616c..d058a5c 100644
--- a/cmake/install_plugins.cmake --- a/cmake/install_plugins.cmake
@ -63,84 +47,3 @@ index a1f039e..03a3a6f 100644
# On Windows, install PDB # On Windows, install PDB
INSTALL(FILES $<TARGET_PDB_FILE:libmariadb> DESTINATION "${INSTALL_LIBDIR}" INSTALL(FILES $<TARGET_PDB_FILE:libmariadb> DESTINATION "${INSTALL_LIBDIR}"
CONFIGURATIONS Debug RelWithDebInfo 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) file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include)
endif() 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") if(VCPKG_BUILD_TYPE STREQUAL "debug")
# move headers # move headers
file(RENAME file(RENAME

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