mirror of
https://github.com/cemu-project/vcpkg.git
synced 2025-02-25 03:53:32 +01:00
Merge remote-tracking branch 'upstream/master' into wxchartdir
This commit is contained in:
commit
7fd21c5d82
10
docs/maintainers/execute_process.md
Normal file
10
docs/maintainers/execute_process.md
Normal file
@ -0,0 +1,10 @@
|
||||
# execute_process
|
||||
|
||||
Intercepts all calls to execute_process() inside portfiles and fails when Download Mode
|
||||
is enabled.
|
||||
|
||||
In order to execute a process in Download Mode call `_execute_process()` instead.
|
||||
|
||||
|
||||
## Source
|
||||
[scripts/cmake/execute_process.cmake](https://github.com/Microsoft/vcpkg/blob/master/scripts/cmake/execute_process.cmake)
|
@ -1,6 +1,7 @@
|
||||
<!-- Run regenerate.ps1 to extract documentation from scripts\cmake\*.cmake -->
|
||||
|
||||
# Portfile helper functions
|
||||
- [execute\_process](execute_process.md)
|
||||
- [vcpkg\_acquire\_msys](vcpkg_acquire_msys.md)
|
||||
- [vcpkg\_add\_to\_path](vcpkg_add_to_path.md)
|
||||
- [vcpkg\_apply\_patches](vcpkg_apply_patches.md)
|
||||
@ -9,6 +10,7 @@
|
||||
- [vcpkg\_check\_features](vcpkg_check_features.md)
|
||||
- [vcpkg\_check\_linkage](vcpkg_check_linkage.md)
|
||||
- [vcpkg\_clean\_msbuild](vcpkg_clean_msbuild.md)
|
||||
- [vcpkg\_common\_definitions](vcpkg_common_definitions.md)
|
||||
- [vcpkg\_configure\_cmake](vcpkg_configure_cmake.md)
|
||||
- [vcpkg\_copy\_pdbs](vcpkg_copy_pdbs.md)
|
||||
- [vcpkg\_copy\_tool\_dependencies](vcpkg_copy_tool_dependencies.md)
|
||||
@ -17,6 +19,7 @@
|
||||
- [vcpkg\_execute\_required\_process](vcpkg_execute_required_process.md)
|
||||
- [vcpkg\_extract\_source\_archive](vcpkg_extract_source_archive.md)
|
||||
- [vcpkg\_extract\_source\_archive\_ex](vcpkg_extract_source_archive_ex.md)
|
||||
- [vcpkg\_fail\_port\_install](vcpkg_fail_port_install.md)
|
||||
- [vcpkg\_find\_acquire\_program](vcpkg_find_acquire_program.md)
|
||||
- [vcpkg\_from\_bitbucket](vcpkg_from_bitbucket.md)
|
||||
- [vcpkg\_from\_git](vcpkg_from_git.md)
|
||||
|
19
docs/maintainers/vcpkg_common_definitions.md
Normal file
19
docs/maintainers/vcpkg_common_definitions.md
Normal file
@ -0,0 +1,19 @@
|
||||
# vcpkg_common_definitions
|
||||
|
||||
File contains helpful variabls for portfiles which are commonly needed or used.
|
||||
|
||||
## The following variables are available:
|
||||
```cmake
|
||||
VCPKG_TARGET_IS_<target> with <target> being one of the following: WINDOWS, UWP, LINUX, OSX, ANDROID, FREEBSD. only defined if <target>
|
||||
VCPKG_TARGET_STATIC_LIBRARY_PREFIX static library prefix for target (same as CMAKE_STATIC_LIBRARY_PREFIX)
|
||||
VCPKG_TARGET_STATIC_LIBRARY_SUFFIX static library suffix for target (same as CMAKE_STATIC_LIBRARY_SUFFIX)
|
||||
VCPKG_TARGET_SHARED_LIBRARY_PREFIX shared library prefix for target (same as CMAKE_SHARED_LIBRARY_PREFIX)
|
||||
VCPKG_TARGET_SHARED_LIBRARY_SUFFIX shared library suffix for target (same as CMAKE_SHARED_LIBRARY_SUFFIX)
|
||||
```
|
||||
|
||||
CMAKE_STATIC_LIBRARY_PREFIX, CMAKE_STATIC_LIBRARY_SUFFIX, CMAKE_SHARED_LIBRARY_PREFIX, CMAKE_SHARED_LIBRARY_SUFFIX are defined for the target so that
|
||||
portfiles are able to use find_library calls to discover dependent libraries within the current triplet for ports.
|
||||
|
||||
|
||||
## Source
|
||||
[scripts/cmake/vcpkg_common_definitions.cmake](https://github.com/Microsoft/vcpkg/blob/master/scripts/cmake/vcpkg_common_definitions.cmake)
|
@ -11,6 +11,10 @@ vcpkg_execute_required_process(
|
||||
)
|
||||
```
|
||||
## Parameters
|
||||
### ALLOW_IN_DOWNLOAD_MODE
|
||||
Allows the command to execute in Download Mode.
|
||||
[See execute_process() override](../../scripts/cmake/execute_process.cmake).
|
||||
|
||||
### COMMAND
|
||||
The command to be executed, along with its arguments.
|
||||
|
||||
|
34
docs/maintainers/vcpkg_fail_port_install.md
Normal file
34
docs/maintainers/vcpkg_fail_port_install.md
Normal file
@ -0,0 +1,34 @@
|
||||
# vcpkg_fail_port_install
|
||||
|
||||
Fails the current portfile with a (default) error message
|
||||
|
||||
## Usage
|
||||
```cmake
|
||||
vcpkg_fail_port_install([MESSAGE <message>] [ON_TARGET <target1> [<target2> ...]]
|
||||
```
|
||||
|
||||
## Parameters
|
||||
### MESSAGE
|
||||
Additional failure message. If non is given a default message will be displayed depending on the failure condition
|
||||
|
||||
### ALWAYS
|
||||
will always fail early
|
||||
|
||||
### ON_TARGET
|
||||
targets for which the build should fail early. Valid targets are <target> from VCPKG_IS_TARGET_<target> (see vcpkg_common_definitions.cmake)
|
||||
|
||||
### ON_ARCH
|
||||
architecture for which the build should fail early.
|
||||
|
||||
### ON_CRT_LINKAGE
|
||||
CRT linkage for which the build should fail early.
|
||||
|
||||
### ON_LIBRARY_LINKAGE
|
||||
library linkage for which the build should fail early.
|
||||
|
||||
## Examples
|
||||
|
||||
* [aws-lambda-cpp](https://github.com/Microsoft/vcpkg/blob/master/ports/aws-lambda-cpp/portfile.cmake)
|
||||
|
||||
## Source
|
||||
[scripts/cmake/vcpkg_fail_port_install.cmake](https://github.com/Microsoft/vcpkg/blob/master/scripts/cmake/vcpkg_fail_port_install.cmake)
|
@ -1,5 +1,5 @@
|
||||
Source: abseil
|
||||
Version: 2019-05-08
|
||||
Version: 2019-05-08-1
|
||||
Homepage: https://github.com/abseil/abseil-cpp
|
||||
Description: an open-source collection designed to augment the C++ standard library.
|
||||
Abseil is an open-source collection of C++ library code designed to augment the C++ standard library. The Abseil library code is collected from Google's own C++ code base, has been extensively tested and used in production, and is the same code we depend on in our daily coding lives.
|
||||
|
26
ports/abseil/fix-config.patch
Normal file
26
ports/abseil/fix-config.patch
Normal file
@ -0,0 +1,26 @@
|
||||
diff --git a/CMake/abslConfig.cmake.in b/CMake/abslConfig.cmake.in
|
||||
index 60847fa..4641d44 100644
|
||||
--- a/CMake/abslConfig.cmake.in
|
||||
+++ b/CMake/abslConfig.cmake.in
|
||||
@@ -4,4 +4,8 @@ include(FindThreads)
|
||||
|
||||
@PACKAGE_INIT@
|
||||
|
||||
+include(CMakeFindDependencyMacro)
|
||||
+
|
||||
+set_and_check(absl_INCLUDE_DIR "@PACKAGE_CMAKE_INSTALL_INCLUDEDIR@")
|
||||
+
|
||||
include ("${CMAKE_CURRENT_LIST_DIR}/@PROJECT_NAME@Targets.cmake")
|
||||
\ No newline at end of file
|
||||
diff --git a/CMakeLists.txt b/CMakeLists.txt
|
||||
index e7587f7..3079534 100644
|
||||
--- a/CMakeLists.txt
|
||||
+++ b/CMakeLists.txt
|
||||
@@ -132,6 +132,7 @@ if(ABSL_ENABLE_INSTALL)
|
||||
CMake/abslConfig.cmake.in
|
||||
"${PROJECT_BINARY_DIR}/${PROJECT_NAME}Config.cmake"
|
||||
INSTALL_DESTINATION "${ABSL_INSTALL_CONFIGDIR}"
|
||||
+ PATH_VARS CMAKE_INSTALL_INCLUDEDIR
|
||||
)
|
||||
install(FILES "${PROJECT_BINARY_DIR}/${PROJECT_NAME}Config.cmake"
|
||||
DESTINATION "${ABSL_INSTALL_CONFIGDIR}"
|
@ -12,7 +12,9 @@ vcpkg_from_github(
|
||||
REF aa468ad75539619b47979911297efbb629c52e44
|
||||
SHA512 4254d8599103d8f06b03f60a0386eba07f314184217d0bca404d41fc0bd0a8df287fe6d07158d10cde096af3097aff2ecc1a5e8f7c3046ecf956b5fde709ad1d
|
||||
HEAD_REF master
|
||||
PATCHES fix-usage-lnk-error.patch
|
||||
PATCHES
|
||||
fix-usage-lnk-error.patch
|
||||
fix-config.patch
|
||||
)
|
||||
|
||||
vcpkg_configure_cmake(
|
||||
@ -21,7 +23,7 @@ vcpkg_configure_cmake(
|
||||
)
|
||||
|
||||
vcpkg_install_cmake()
|
||||
vcpkg_fixup_cmake_targets(CONFIG_PATH lib/cmake/absl)
|
||||
vcpkg_fixup_cmake_targets(CONFIG_PATH lib/cmake/absl TARGET_PATH share/absl)
|
||||
|
||||
vcpkg_copy_pdbs()
|
||||
|
||||
|
@ -1,4 +1,5 @@
|
||||
Source: beast
|
||||
Version: 0
|
||||
Homepage: https://www.boost.org/doc/libs/release/libs/beast/
|
||||
Build-Depends: boost-beast
|
||||
Description: HTTP/1 and WebSocket, header-only using Boost.Asio and C++11
|
||||
|
@ -3,7 +3,33 @@ Source: boost
|
||||
Version: 1.70.0
|
||||
Homepage: https://boost.org
|
||||
Description: Peer-reviewed portable C++ source libraries
|
||||
Build-Depends: boost-accumulators, boost-algorithm, boost-align, boost-any, boost-array, boost-asio, boost-assert, boost-assign, boost-atomic, boost-beast, boost-bimap, boost-bind, boost-callable-traits, boost-chrono, boost-circular-buffer, boost-compatibility, boost-compute, boost-concept-check, boost-config, boost-container, boost-container-hash, boost-context (!uwp), boost-contract (!arm), boost-conversion, boost-convert, boost-core, boost-coroutine (!uwp), boost-coroutine2, boost-crc, boost-date-time, boost-detail, boost-disjoint-sets, boost-dll, boost-dynamic-bitset, boost-endian, boost-exception, boost-fiber (windows), boost-filesystem (!uwp), boost-flyweight, boost-foreach, boost-format, boost-function, boost-functional, boost-function-types, boost-fusion, boost-geometry, boost-gil, boost-graph, boost-graph-parallel, boost-hana, boost-heap, boost-histogram, boost-hof, boost-icl, boost-integer, boost-interprocess, boost-intrusive, boost-io, boost-iostreams (!uwp), boost-iterator, boost-lambda, boost-lexical-cast, boost-locale (!uwp), boost-local-function, boost-lockfree, boost-log (!uwp), boost-logic, boost-math, boost-metaparse, boost-move, boost-mp11, boost-mpl, boost-msm, boost-multiprecision, boost-multi-array, boost-multi-index, boost-numeric-conversion, boost-interval, boost-odeint, boost-ublas, boost-safe-numerics, boost-optional, boost-outcome, boost-parameter, boost-parameter-python (windows), boost-phoenix, boost-polygon, boost-poly-collection, boost-pool, boost-predef, boost-preprocessor, boost-process, boost-program-options, boost-property-map, boost-property-tree, boost-proto, boost-ptr-container, boost-python (windows), boost-qvm, boost-random, boost-range, boost-ratio, boost-rational, boost-regex, boost-numeric-conversion, boost-interval, boost-odeint, boost-ublas, boost-safe-numerics, boost-scope-exit, boost-serialization, boost-signals2, boost-smart-ptr, boost-sort, boost-spirit, boost-stacktrace (!uwp), boost-statechart, boost-static-assert, boost-system, boost-test (!uwp), boost-thread (!arm), boost-throw-exception, boost-timer, boost-tokenizer, boost-tti, boost-tuple, boost-typeof, boost-type-erasure (!arm), boost-type-index, boost-type-traits, boost-units, boost-unordered, boost-utility, boost-uuid, boost-variant, boost-vmd, boost-wave (!uwp), boost-winapi, boost-xpressive, boost-yap
|
||||
Build-Depends: boost-accumulators, boost-algorithm, boost-align, boost-any, boost-array,
|
||||
boost-asio, boost-assert, boost-assign, boost-atomic, boost-beast, boost-bimap, boost-bind,
|
||||
boost-callable-traits, boost-chrono, boost-circular-buffer, boost-compatibility,
|
||||
boost-compute, boost-concept-check, boost-config, boost-container, boost-container-hash,
|
||||
boost-context (!uwp), boost-contract (!arm), boost-conversion, boost-convert, boost-core,
|
||||
boost-coroutine (!uwp), boost-coroutine2, boost-crc, boost-date-time, boost-detail,
|
||||
boost-disjoint-sets, boost-dll, boost-dynamic-bitset, boost-endian, boost-exception,
|
||||
boost-fiber (windows), boost-filesystem (!uwp), boost-flyweight, boost-foreach, boost-format,
|
||||
boost-function, boost-functional, boost-function-types, boost-fusion, boost-geometry,
|
||||
boost-gil, boost-graph, boost-graph-parallel, boost-hana, boost-heap, boost-histogram,
|
||||
boost-hof, boost-icl, boost-integer, boost-interprocess, boost-intrusive, boost-io,
|
||||
boost-iostreams (!uwp), boost-iterator, boost-lambda, boost-lexical-cast, boost-locale (!uwp),
|
||||
boost-local-function, boost-lockfree, boost-log (!uwp), boost-logic, boost-math,
|
||||
boost-metaparse, boost-move, boost-mp11, boost-mpl, boost-msm, boost-multiprecision,
|
||||
boost-multi-array, boost-multi-index, boost-numeric-conversion, boost-interval, boost-odeint,
|
||||
boost-ublas, boost-safe-numerics, boost-optional, boost-outcome, boost-parameter,
|
||||
boost-parameter-python (windows), boost-phoenix, boost-polygon, boost-poly-collection,
|
||||
boost-pool, boost-predef, boost-preprocessor, boost-process, boost-program-options,
|
||||
boost-property-map, boost-property-tree, boost-proto, boost-ptr-container,
|
||||
boost-python (windows), boost-qvm, boost-random, boost-range, boost-ratio, boost-rational,
|
||||
boost-regex, boost-numeric-conversion, boost-interval, boost-odeint, boost-ublas,
|
||||
boost-safe-numerics, boost-scope-exit, boost-serialization, boost-signals2, boost-smart-ptr,
|
||||
boost-sort, boost-spirit, boost-stacktrace (!uwp), boost-statechart, boost-static-assert,
|
||||
boost-system, boost-test (!uwp), boost-thread (!arm), boost-throw-exception, boost-timer,
|
||||
boost-tokenizer, boost-tti, boost-tuple, boost-typeof, boost-type-erasure (!arm),
|
||||
boost-type-index, boost-type-traits, boost-units, boost-unordered, boost-utility, boost-uuid,
|
||||
boost-variant, boost-vmd, boost-wave (!uwp), boost-winapi, boost-xpressive, boost-yap
|
||||
|
||||
Feature: mpi
|
||||
Description: Build with MPI support
|
||||
|
@ -1,4 +1,4 @@
|
||||
Source: casclib
|
||||
Version: 1.50-1
|
||||
Version: 1.50b-1
|
||||
Build-Depends: zlib
|
||||
Description: An open-source implementation of library for reading CASC storage from Blizzard games since 2014
|
||||
|
@ -1,16 +1,11 @@
|
||||
diff --git a/src/CascPort.h b/src/CascPort.h
|
||||
index 87a2f2f..da74aef 100644
|
||||
index 3bd08d4..201f7dd 100644
|
||||
--- a/src/CascPort.h
|
||||
+++ b/src/CascPort.h
|
||||
@@ -79,14 +79,19 @@
|
||||
#include <sys/types.h>
|
||||
#include <sys/stat.h>
|
||||
#include <sys/mman.h>
|
||||
- #include <unistd.h>
|
||||
#include <fcntl.h>
|
||||
- #include <stdlib.h>
|
||||
@@ -85,10 +85,17 @@
|
||||
#include <stdlib.h>
|
||||
#include <dirent.h>
|
||||
- #include <errno.h>
|
||||
#include <errno.h>
|
||||
+ #include <unistd.h>
|
||||
#include <stddef.h>
|
||||
+ #include <stdint.h>
|
||||
@ -18,7 +13,7 @@ index 87a2f2f..da74aef 100644
|
||||
+ #include <stdio.h>
|
||||
+ #include <stdarg.h>
|
||||
#include <string.h>
|
||||
+ #include <ctype.h>
|
||||
#include <ctype.h>
|
||||
+ #include <wchar.h>
|
||||
#include <cassert>
|
||||
+ #include <errno.h>
|
||||
|
@ -3,8 +3,8 @@ include(vcpkg_common_functions)
|
||||
vcpkg_from_github(
|
||||
OUT_SOURCE_PATH SOURCE_PATH
|
||||
REPO ladislav-zezula/CascLib
|
||||
REF 1.50
|
||||
SHA512 7e95e314f09e504566e6fa2b1742f986d17526fb0283af8ffb77681338c9a852d369cbd863512a20ddd3a277d10a9bf701d745f500a717826dd08e201eb6d80e
|
||||
REF 1.50b
|
||||
SHA512 f32cc592f454db4815c0dfd18a9c0076d85b1582e6974d241d1d4094269c42a978fa42186504988ced2c8f4a0b598f41e3ec8a95ddc3c0551af997e37708b1f5
|
||||
HEAD_REF master
|
||||
PATCHES
|
||||
ctype_for_mac.patch
|
||||
|
143
ports/cgl/CMakeLists.txt
Normal file
143
ports/cgl/CMakeLists.txt
Normal file
@ -0,0 +1,143 @@
|
||||
cmake_minimum_required(VERSION 3.11)
|
||||
|
||||
project(Cgl LANGUAGES C CXX)
|
||||
|
||||
set(PROJECT_VERSION 0.60.2)
|
||||
set(PROJECT_VERSION_MAJOR 0)
|
||||
set(PROJECT_VERSION_MINOR 60)
|
||||
set(PROJECT_VERSION_PATCH 2)
|
||||
|
||||
set(CMAKE_CXX_STANDARD 14)
|
||||
|
||||
set(INSTALL_BIN_DIR "bin" CACHE PATH "Path where exe and dll will be installed")
|
||||
set(INSTALL_LIB_DIR "lib" CACHE PATH "Path where lib will be installed")
|
||||
set(INSTALL_INCLUDE_DIR "include/Coin" CACHE PATH "Path where headers will be installed")
|
||||
set(INSTALL_CMAKE_DIR "share/cgl" CACHE PATH "Path where cmake configs will be installed")
|
||||
|
||||
# Make relative paths absolute (needed later on)
|
||||
set(RELATIVE_INSTALL_INCLUDE_DIR ${INSTALL_INCLUDE_DIR})
|
||||
foreach(p LIB BIN INCLUDE CMAKE)
|
||||
set(var INSTALL_${p}_DIR)
|
||||
if(NOT IS_ABSOLUTE "${${var}}")
|
||||
set(${var} "${CMAKE_INSTALL_PREFIX}/${${var}}")
|
||||
endif()
|
||||
endforeach()
|
||||
|
||||
if(MSVC)
|
||||
set(
|
||||
CMAKE_CXX_FLAGS
|
||||
"${CMAKE_CXX_FLAGS} /bigobj /MP /wd4996 /wd4819 /wd4251 /wd4267 /wd4244 /wd4275"
|
||||
)
|
||||
endif()
|
||||
|
||||
if(APPLE)
|
||||
set(
|
||||
CMAKE_CXX_FLAGS
|
||||
"${CMAKE_CXX_FLAGS} -Wno-inconsistent-missing-override -Wno-unused-command-line-argument -Wno-unused-result -Wno-exceptions"
|
||||
)
|
||||
set(CMAKE_OSX_DEPLOYMENT_TARGET "10.9"
|
||||
CACHE STRING "Minimum OS X deployment version")
|
||||
endif()
|
||||
|
||||
find_package(CoinUtils REQUIRED)
|
||||
find_package(Osi REQUIRED)
|
||||
|
||||
file(GLOB CGL_SOURCES
|
||||
Cgl/src/CglConfig.h
|
||||
Cgl/src/*.hpp
|
||||
Cgl/src/*.cpp
|
||||
Cgl/src/CglAllDifferent/*.cpp
|
||||
Cgl/src/CglAllDifferent/*.hpp
|
||||
Cgl/src/CglBKClique/*.cpp
|
||||
Cgl/src/CglBKClique/*.hpp
|
||||
Cgl/src/CglClique/*.cpp
|
||||
Cgl/src/CglClique/*.hpp
|
||||
Cgl/src/CglCliqueMerging/*.cpp
|
||||
Cgl/src/CglCliqueMerging/*.hpp
|
||||
Cgl/src/CglDuplicateRow/*.cpp
|
||||
Cgl/src/CglDuplicateRow/*.hpp
|
||||
Cgl/src/CglFlowCover/*.cpp
|
||||
Cgl/src/CglFlowCover/*.hpp
|
||||
Cgl/src/CglGMI/*.cpp
|
||||
Cgl/src/CglGMI/*.hpp
|
||||
Cgl/src/CglGomory/*.cpp
|
||||
Cgl/src/CglGomory/*.hpp
|
||||
Cgl/src/CglKnapsackCover/*.cpp
|
||||
Cgl/src/CglKnapsackCover/*.hpp
|
||||
Cgl/src/CglLandP/*.cpp
|
||||
Cgl/src/CglLandP/*.hpp
|
||||
Cgl/src/CglLiftAndProject/*.cpp
|
||||
Cgl/src/CglLiftAndProject/*.hpp
|
||||
Cgl/src/CglMixedIntegerRounding/*.cpp
|
||||
Cgl/src/CglMixedIntegerRounding/*.hpp
|
||||
Cgl/src/CglMixedIntegerRounding2/*.cpp
|
||||
Cgl/src/CglMixedIntegerRounding2/*.hpp
|
||||
Cgl/src/CglOddHole/*.cpp
|
||||
Cgl/src/CglOddHole/*.hpp
|
||||
Cgl/src/CglOddHoleWC/*.cpp
|
||||
Cgl/src/CglOddHoleWC/*.hpp
|
||||
Cgl/src/CglPreProcess/*.cpp
|
||||
Cgl/src/CglPreProcess/*.hpp
|
||||
Cgl/src/CglProbing/*.cpp
|
||||
Cgl/src/CglProbing/*.hpp
|
||||
Cgl/src/CglRedSplit/*.cpp
|
||||
Cgl/src/CglRedSplit/*.hpp
|
||||
Cgl/src/CglRedSplit2/*.cpp
|
||||
Cgl/src/CglRedSplit2/*.hpp
|
||||
Cgl/src/CglResidualCapacity/*.cpp
|
||||
Cgl/src/CglResidualCapacity/*.hpp
|
||||
Cgl/src/CglSimpleRounding/*.cpp
|
||||
Cgl/src/CglSimpleRounding/*.hpp
|
||||
Cgl/src/CglTwomir/*.cpp
|
||||
Cgl/src/CglTwomir/*.hpp
|
||||
Cgl/src/CglZeroHalf/*.cpp
|
||||
Cgl/src/CglZeroHalf/*.hpp)
|
||||
|
||||
add_library(${PROJECT_NAME} ${CGL_SOURCES})
|
||||
|
||||
target_include_directories(${PROJECT_NAME}
|
||||
PUBLIC
|
||||
$<INSTALL_INTERFACE:${RELATIVE_INSTALL_INCLUDE_DIR}>
|
||||
$<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/Cgl/src/>)
|
||||
|
||||
if(MSVC)
|
||||
target_compile_definitions(${PROJECT_NAME} PRIVATE _CRT_SECURE_NO_WARNINGS)
|
||||
endif()
|
||||
target_compile_definitions(${PROJECT_NAME} PRIVATE HAVE_CMATH)
|
||||
target_compile_definitions(${PROJECT_NAME} PUBLIC COIN_HAS_CLP)
|
||||
|
||||
target_link_libraries(${PROJECT_NAME} PRIVATE Coin::CoinUtils Coin::Osi)
|
||||
|
||||
install(DIRECTORY Cgl/src/
|
||||
DESTINATION ${INSTALL_INCLUDE_DIR}
|
||||
FILES_MATCHING
|
||||
PATTERN "*.h"
|
||||
PATTERN "*.hpp"
|
||||
PATTERN "config_default.h" EXCLUDE)
|
||||
|
||||
install(TARGETS ${PROJECT_NAME}
|
||||
EXPORT "${PROJECT_NAME}Targets"
|
||||
LIBRARY DESTINATION lib
|
||||
ARCHIVE DESTINATION lib
|
||||
RUNTIME DESTINATION bin)
|
||||
|
||||
include(CMakePackageConfigHelpers)
|
||||
|
||||
set(version_config "${CMAKE_CURRENT_BINARY_DIR}/temp/${PROJECT_NAME}ConfigVersion.cmake")
|
||||
set(project_config "${CMAKE_CURRENT_BINARY_DIR}/temp/${PROJECT_NAME}Config.cmake")
|
||||
set(namespace "Coin::")
|
||||
|
||||
write_basic_package_version_file("${version_config}"
|
||||
COMPATIBILITY SameMajorVersion)
|
||||
|
||||
configure_package_config_file("Config.cmake.in"
|
||||
"${project_config}"
|
||||
INSTALL_DESTINATION
|
||||
"${INSTALL_CMAKE_DIR}")
|
||||
|
||||
install(FILES "${project_config}" "${version_config}"
|
||||
DESTINATION "${INSTALL_CMAKE_DIR}")
|
||||
|
||||
install(EXPORT "${PROJECT_NAME}Targets"
|
||||
NAMESPACE "${namespace}"
|
||||
DESTINATION "${INSTALL_CMAKE_DIR}")
|
5
ports/cgl/CONTROL
Normal file
5
ports/cgl/CONTROL
Normal file
@ -0,0 +1,5 @@
|
||||
Source: cgl
|
||||
Version: 0.60.2-1
|
||||
Homepage: https://github.com/coin-or/Cgl
|
||||
Description: The COIN-OR Cut Generation Library (Cgl) is a collection of cut generators that can be used with other COIN-OR packages that make use of cuts, such as, among others, the linear solver Clp or the mixed integer linear programming solvers Cbc or BCP.
|
||||
Build-Depends: coinutils, osi, clp
|
5
ports/cgl/Config.cmake.in
Normal file
5
ports/cgl/Config.cmake.in
Normal file
@ -0,0 +1,5 @@
|
||||
|
||||
@PACKAGE_INIT@
|
||||
|
||||
include("${CMAKE_CURRENT_LIST_DIR}/@PROJECT_NAME@Targets.cmake")
|
||||
check_required_components("@PROJECT_NAME@")
|
30
ports/cgl/fix-c1083-error.patch
Normal file
30
ports/cgl/fix-c1083-error.patch
Normal file
@ -0,0 +1,30 @@
|
||||
diff --git a/Cgl/src/CglLandP/CglLandP.cpp b/Cgl/src/CglLandP/CglLandP.cpp
|
||||
index 2676790..af90a6e 100644
|
||||
--- a/Cgl/src/CglLandP/CglLandP.cpp
|
||||
+++ b/Cgl/src/CglLandP/CglLandP.cpp
|
||||
@@ -22,7 +22,7 @@
|
||||
#define CLONE_SI //Solver is cloned between two cuts
|
||||
|
||||
#include "CoinTime.hpp"
|
||||
-#include "CglGomory.hpp"
|
||||
+#include "CglGomory/CglGomory.hpp"
|
||||
#include "CoinFactorization.hpp"
|
||||
#include <fstream>
|
||||
namespace LAP
|
||||
diff --git a/Cgl/src/CglPreProcess/CglPreProcess.cpp b/Cgl/src/CglPreProcess/CglPreProcess.cpp
|
||||
index 17cf372..8cb738f 100644
|
||||
--- a/Cgl/src/CglPreProcess/CglPreProcess.cpp
|
||||
+++ b/Cgl/src/CglPreProcess/CglPreProcess.cpp
|
||||
@@ -24,9 +24,9 @@
|
||||
#include "CoinHelperFunctions.hpp"
|
||||
#include "CoinWarmStartBasis.hpp"
|
||||
|
||||
-#include "CglProbing.hpp"
|
||||
-#include "CglDuplicateRow.hpp"
|
||||
-#include "CglClique.hpp"
|
||||
+#include "CglProbing/CglProbing.hpp"
|
||||
+#include "CglDuplicateRow/CglDuplicateRow.hpp"
|
||||
+#include "CglClique/CglClique.hpp"
|
||||
//#define PRINT_DEBUG 1
|
||||
//#define COIN_DEVELOP 1
|
||||
#ifdef COIN_DEVELOP
|
28
ports/cgl/portfile.cmake
Normal file
28
ports/cgl/portfile.cmake
Normal file
@ -0,0 +1,28 @@
|
||||
include(vcpkg_common_functions)
|
||||
|
||||
vcpkg_check_linkage(ONLY_STATIC_LIBRARY)
|
||||
|
||||
vcpkg_from_github(
|
||||
OUT_SOURCE_PATH SOURCE_PATH
|
||||
REPO coin-or/Cgl
|
||||
REF releases/0.60.2
|
||||
SHA512 86db94638d586d2fb64cb55f72197f847731c710351168189647686c5229555c79bc411044ab1cc789a520577de2be3c2e8611221d743f9dbaabb71544d0fa66
|
||||
PATCHES fix-c1083-error.patch
|
||||
)
|
||||
|
||||
file(COPY ${CMAKE_CURRENT_LIST_DIR}/CMakeLists.txt DESTINATION ${SOURCE_PATH})
|
||||
file(COPY ${CMAKE_CURRENT_LIST_DIR}/Config.cmake.in DESTINATION ${SOURCE_PATH})
|
||||
|
||||
vcpkg_configure_cmake(
|
||||
SOURCE_PATH ${SOURCE_PATH}
|
||||
PREFER_NINJA
|
||||
)
|
||||
|
||||
vcpkg_install_cmake()
|
||||
|
||||
vcpkg_copy_pdbs()
|
||||
|
||||
file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include)
|
||||
file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/share)
|
||||
|
||||
file(INSTALL ${SOURCE_PATH}/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/${PORT} RENAME copyright)
|
@ -1,13 +1,16 @@
|
||||
Source: cpprestsdk
|
||||
Version: 2.10.14-1
|
||||
Build-Depends: openssl (!uwp&!windows), boost-system (!uwp&!windows), boost-date-time (!uwp&!windows), boost-regex (!uwp&!windows), boost-thread (!uwp&!windows), boost-filesystem (!uwp&!windows), boost-random (!uwp&!windows), boost-chrono (!uwp&!windows), boost-asio (!uwp&!windows)
|
||||
Build-Depends: openssl (!uwp&!windows), boost-system (!uwp&!windows),
|
||||
boost-date-time (!uwp&!windows), boost-regex (!uwp&!windows), boost-thread (!uwp&!windows),
|
||||
boost-filesystem (!uwp&!windows), boost-random (!uwp&!windows), boost-chrono (!uwp&!windows),
|
||||
boost-asio (!uwp&!windows)
|
||||
Homepage: https://github.com/Microsoft/cpprestsdk
|
||||
Description: C++11 JSON, REST, and OAuth library
|
||||
The C++ REST SDK is a Microsoft project for cloud-based client-server communication in native code using a modern asynchronous C++ API design. This project aims to help C++ developers connect to and interact with services.
|
||||
Default-Features: default-features
|
||||
|
||||
Feature: default-features
|
||||
Build-Depends: cpprestsdk[brotli] (windows), cpprestsdk[core], cpprestsdk[compression], cpprestsdk[websockets]
|
||||
Build-Depends: cpprestsdk[brotli] (windows), cpprestsdk[core,compression,websockets]
|
||||
Description: Features installed by default
|
||||
|
||||
Feature: compression
|
||||
@ -15,9 +18,9 @@ Build-Depends: zlib
|
||||
Description: HTTP Compression support
|
||||
|
||||
Feature: websockets
|
||||
Build-Depends: cpprestsdk[core], cpprestsdk[compression], websocketpp (!uwp), openssl (!uwp), boost-system (!uwp), boost-date-time (!uwp), boost-regex (!uwp)
|
||||
Build-Depends: cpprestsdk[core,compression], websocketpp (!uwp), openssl (!uwp), boost-system (!uwp), boost-date-time (!uwp), boost-regex (!uwp)
|
||||
Description: Websockets support
|
||||
|
||||
Feature: brotli
|
||||
Build-Depends: cpprestsdk[core], cpprestsdk[compression], brotli
|
||||
Build-Depends: cpprestsdk[core,compression], brotli
|
||||
Description: Brotli compression support
|
||||
|
@ -1,5 +1,5 @@
|
||||
Source: duktape
|
||||
Version: 2.3.0-3
|
||||
Version: 2.4.0-3
|
||||
Homepage: https://github.com/svaarala/duktape
|
||||
Description: Embeddable Javascript engine with a focus on portability and compact footprint.
|
||||
Build-Depends:
|
||||
|
@ -7,8 +7,8 @@ endif()
|
||||
vcpkg_from_github(
|
||||
OUT_SOURCE_PATH SOURCE_PATH
|
||||
REPO svaarala/duktape
|
||||
REF v2.3.0
|
||||
SHA512 dd715eab481b948cf71d3ad16d2544166eb53da0df8936a4ac9c33e1f1277ef6efe542782a4c7f689f6c0c8963d7094749af455ff6a8c59593aa56ebb57e5c6f
|
||||
REF v2.4.0
|
||||
SHA512 5f42ff6faab8d49531423e199c032fd2de49524bab71f39d1cf822e6f9ee82a6089c9a93837ae7849d19a95693318a8480986e4672f6f73f3182b4902e6b2daa
|
||||
HEAD_REF master
|
||||
)
|
||||
|
||||
@ -30,7 +30,7 @@ if(NOT EXISTS ${PYTHON2_DIR}/easy_install${EXECUTABLE_SUFFIX})
|
||||
vcpkg_download_distfile(GET_PIP
|
||||
URLS "https://bootstrap.pypa.io/3.3/get-pip.py"
|
||||
FILENAME "tools/python/python2/get-pip.py"
|
||||
SHA512 92e68525830bb23955a31cb19ebc3021ef16b6337eab83d5db2961b791283d2867207545faf83635f6027f2f7b7f8fee2c85f2cfd8e8267df25406474571c741
|
||||
SHA512 99520d223819708b8f6e4b839d1fa215e4e8adc7fcd0db6c25a0399cf2fa10034b35673cf450609303646d12497f301ef53b7e7cc65c78e7bce4af0c673555ad
|
||||
)
|
||||
execute_process(COMMAND ${PYTHON2_DIR}/python${EXECUTABLE_SUFFIX} ${PYTHON2_DIR}/get-pip.py)
|
||||
endif()
|
||||
|
@ -3,8 +3,8 @@ include(vcpkg_common_functions)
|
||||
vcpkg_from_github(
|
||||
OUT_SOURCE_PATH SOURCE_PATH
|
||||
REPO eProsima/Fast-CDR
|
||||
REF 649b9a0e763f8a4cfdd41238b1495c58b7ea6660
|
||||
SHA512 9a72c60f59572ec95b320a44f10ba841cb66d3f71e4ebb2b8f00f42400ea9dd379d884937b047206cdeb19f7c298782b3557113b9fb6a1b79a3a9e3592cb1eb9
|
||||
REF v1.0.10
|
||||
SHA512 b79439b1d8be12e10c761b42cadce4b5e9e51be23a553a0276bcf84504e222149c6543cde149073f272f0374e82a3e0db6b7ad25e81858f744a8ce72512c47de
|
||||
HEAD_REF master
|
||||
PATCHES install-cmake.patch
|
||||
)
|
||||
|
@ -1,4 +1,4 @@
|
||||
Source: fluidsynth
|
||||
Version: 2.0.5
|
||||
Version: 2.0.5-1
|
||||
Description: FluidSynth reads and handles MIDI events from the MIDI input device. It is the software analogue of a MIDI synthesizer. FluidSynth can also play midifiles using a Soundfont.
|
||||
Build-Depends: glib
|
34
ports/fluidsynth/force-x86-gentables.patch
Normal file
34
ports/fluidsynth/force-x86-gentables.patch
Normal file
@ -0,0 +1,34 @@
|
||||
diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
|
||||
index f731632..226f408 100644
|
||||
--- a/src/CMakeLists.txt
|
||||
+++ b/src/CMakeLists.txt
|
||||
@@ -368,10 +368,23 @@ endif ( MACOSX_FRAMEWORK )
|
||||
# ******* Auto Generated Lookup Tables ******
|
||||
|
||||
include(ExternalProject)
|
||||
-ExternalProject_Add(gentables
|
||||
- DOWNLOAD_COMMAND ""
|
||||
- SOURCE_DIR ${CMAKE_CURRENT_SOURCE_DIR}/gentables
|
||||
- BINARY_DIR ${CMAKE_CURRENT_BINARY_DIR}/gentables
|
||||
- INSTALL_COMMAND ${CMAKE_CURRENT_BINARY_DIR}/gentables/make_tables.exe "${CMAKE_BINARY_DIR}/"
|
||||
-)
|
||||
+if(VCPKG_TARGET_ARCHITECTURE STREQUAL arm OR VCPKG_TARGET_ARCHITECTURE STREQUAL arm64)
|
||||
+ ExternalProject_Add(gentables
|
||||
+ DOWNLOAD_COMMAND ""
|
||||
+ SOURCE_DIR ${CMAKE_CURRENT_SOURCE_DIR}/gentables
|
||||
+ BINARY_DIR ${CMAKE_CURRENT_BINARY_DIR}/gentables
|
||||
+ CONFIGURE_COMMAND
|
||||
+ "${CMAKE_COMMAND}" "${CMAKE_CURRENT_SOURCE_DIR}/gentables" -G "${CMAKE_GENERATOR}" -A Win32 -B "${CMAKE_CURRENT_BINARY_DIR}/gentables"
|
||||
+ BUILD_COMMAND
|
||||
+ "${CMAKE_COMMAND}" --build "${CMAKE_CURRENT_BINARY_DIR}/gentables"
|
||||
+ INSTALL_COMMAND ${CMAKE_CURRENT_BINARY_DIR}/gentables/make_tables.exe "${CMAKE_BINARY_DIR}/"
|
||||
+ )
|
||||
+else()
|
||||
+ ExternalProject_Add(gentables
|
||||
+ DOWNLOAD_COMMAND ""
|
||||
+ SOURCE_DIR ${CMAKE_CURRENT_SOURCE_DIR}/gentables
|
||||
+ BINARY_DIR ${CMAKE_CURRENT_BINARY_DIR}/gentables
|
||||
+ INSTALL_COMMAND ${CMAKE_CURRENT_BINARY_DIR}/gentables/make_tables.exe "${CMAKE_BINARY_DIR}/"
|
||||
+ )
|
||||
+endif()
|
||||
add_dependencies(libfluidsynth-OBJ gentables)
|
@ -7,11 +7,12 @@ vcpkg_from_github(
|
||||
REF v2.0.5
|
||||
SHA512 5344ac889d2927dc2465bae40096d756a9bf9b1100e287ba0621c55ffc76f9cb8fa763f6bc832d701cd0ad2997965cf344f58ae4b3dd445eb3491e3659c093d9
|
||||
HEAD_REF master
|
||||
PATCHES
|
||||
force-x86-gentables.patch
|
||||
)
|
||||
|
||||
vcpkg_configure_cmake(
|
||||
SOURCE_PATH ${SOURCE_PATH}
|
||||
PREFER_NINJA # Disable this option if project cannot be built with Ninja
|
||||
OPTIONS -Denable-pkgconfig=0
|
||||
)
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
Source: fmt
|
||||
Version: 5.3.0-2
|
||||
Version: 6.0.0
|
||||
Homepage: https://github.com/fmtlib/fmt
|
||||
Description: Formatting library for C++. It can be used as a safe alternative to printf or as a fast alternative to IOStreams.
|
||||
|
@ -2,8 +2,8 @@ include(vcpkg_common_functions)
|
||||
vcpkg_from_github(
|
||||
OUT_SOURCE_PATH SOURCE_PATH
|
||||
REPO fmtlib/fmt
|
||||
REF 5.3.0
|
||||
SHA512 9ef0f3d328681253c1e1776576d54d67dec49c19fd7fc422ae63c3610b01a3f05f6e83cdf5e913dfd09bac42e52fe35c38ebe1ea91f4207d226a32aaf69eb4a8
|
||||
REF 6.0.0
|
||||
SHA512 7deb5bd843ae6b9d4b58dca9c68c1cfe7b55a41040f358247f5309655188d1ae194ff414437c068f74367f078faa214b5883e8c9e634c7623dcda50850e24766
|
||||
HEAD_REF master
|
||||
)
|
||||
vcpkg_configure_cmake(
|
||||
@ -19,10 +19,14 @@ vcpkg_install_cmake()
|
||||
file(INSTALL ${SOURCE_PATH}/LICENSE.rst DESTINATION ${CURRENT_PACKAGES_DIR}/share/fmt RENAME copyright)
|
||||
if(VCPKG_LIBRARY_LINKAGE STREQUAL dynamic)
|
||||
if(VCPKG_CMAKE_SYSTEM_NAME STREQUAL "WindowsStore" OR NOT VCPKG_CMAKE_SYSTEM_NAME)
|
||||
file(MAKE_DIRECTORY ${CURRENT_PACKAGES_DIR}/bin)
|
||||
file(MAKE_DIRECTORY ${CURRENT_PACKAGES_DIR}/debug/bin)
|
||||
file(RENAME ${CURRENT_PACKAGES_DIR}/lib/fmt.dll ${CURRENT_PACKAGES_DIR}/bin/fmt.dll)
|
||||
file(RENAME ${CURRENT_PACKAGES_DIR}/debug/lib/fmtd.dll ${CURRENT_PACKAGES_DIR}/debug/bin/fmtd.dll)
|
||||
if(NOT DEFINED VCPKG_BUILD_TYPE OR VCPKG_BUILD_TYPE STREQUAL "debug")
|
||||
file(MAKE_DIRECTORY ${CURRENT_PACKAGES_DIR}/debug/bin)
|
||||
file(RENAME ${CURRENT_PACKAGES_DIR}/debug/lib/fmtd.dll ${CURRENT_PACKAGES_DIR}/debug/bin/fmtd.dll)
|
||||
endif()
|
||||
if(NOT DEFINED VCPKG_BUILD_TYPE OR VCPKG_BUILD_TYPE STREQUAL "release")
|
||||
file(MAKE_DIRECTORY ${CURRENT_PACKAGES_DIR}/bin)
|
||||
file(RENAME ${CURRENT_PACKAGES_DIR}/lib/fmt.dll ${CURRENT_PACKAGES_DIR}/bin/fmt.dll)
|
||||
endif()
|
||||
endif()
|
||||
|
||||
# Force FMT_SHARED to 1
|
||||
@ -35,12 +39,16 @@ file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include)
|
||||
vcpkg_fixup_cmake_targets()
|
||||
|
||||
if(VCPKG_CMAKE_SYSTEM_NAME STREQUAL "WindowsStore" OR NOT VCPKG_CMAKE_SYSTEM_NAME)
|
||||
file(READ ${CURRENT_PACKAGES_DIR}/share/fmt/fmt-targets-debug.cmake FMT_DEBUG_MODULE)
|
||||
string(REPLACE "lib/fmtd.dll" "bin/fmtd.dll" FMT_DEBUG_MODULE ${FMT_DEBUG_MODULE})
|
||||
file(WRITE ${CURRENT_PACKAGES_DIR}/share/fmt/fmt-targets-debug.cmake "${FMT_DEBUG_MODULE}")
|
||||
file(READ ${CURRENT_PACKAGES_DIR}/share/fmt/fmt-targets-release.cmake FMT_RELEASE_MODULE)
|
||||
string(REPLACE "lib/fmt.dll" "bin/fmt.dll" FMT_RELEASE_MODULE ${FMT_RELEASE_MODULE})
|
||||
file(WRITE ${CURRENT_PACKAGES_DIR}/share/fmt/fmt-targets-release.cmake "${FMT_RELEASE_MODULE}")
|
||||
if(NOT DEFINED VCPKG_BUILD_TYPE OR VCPKG_BUILD_TYPE STREQUAL "debug")
|
||||
file(READ ${CURRENT_PACKAGES_DIR}/share/fmt/fmt-targets-debug.cmake FMT_DEBUG_MODULE)
|
||||
string(REPLACE "lib/fmtd.dll" "bin/fmtd.dll" FMT_DEBUG_MODULE ${FMT_DEBUG_MODULE})
|
||||
file(WRITE ${CURRENT_PACKAGES_DIR}/share/fmt/fmt-targets-debug.cmake "${FMT_DEBUG_MODULE}")
|
||||
endif()
|
||||
if(NOT DEFINED VCPKG_BUILD_TYPE OR VCPKG_BUILD_TYPE STREQUAL "release")
|
||||
file(READ ${CURRENT_PACKAGES_DIR}/share/fmt/fmt-targets-release.cmake FMT_RELEASE_MODULE)
|
||||
string(REPLACE "lib/fmt.dll" "bin/fmt.dll" FMT_RELEASE_MODULE ${FMT_RELEASE_MODULE})
|
||||
file(WRITE ${CURRENT_PACKAGES_DIR}/share/fmt/fmt-targets-release.cmake "${FMT_RELEASE_MODULE}")
|
||||
endif()
|
||||
endif()
|
||||
file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/share)
|
||||
|
||||
|
24
ports/gppanel/00001-fix-build.patch
Normal file
24
ports/gppanel/00001-fix-build.patch
Normal file
@ -0,0 +1,24 @@
|
||||
diff --git a/gpPanel/gpPanel.cpp b/gpPanel/gpPanel.cpp
|
||||
index 7af20b5..908523c 100644
|
||||
--- a/gpPanel/gpPanel.cpp
|
||||
+++ b/gpPanel/gpPanel.cpp
|
||||
@@ -720,8 +720,8 @@ void gpPanel::OnMenuItemPrintPreview(wxCommandEvent& event)
|
||||
gpLayer_s *gp = GetLayerByMenuId(event.GetId() );
|
||||
if(gp==NULL)return;
|
||||
|
||||
- mpPrintout *plotPrint = new mpPrintout(gp->m_plot, gp->layer->GetName());
|
||||
- mpPrintout *plotPrintPreview = new mpPrintout(gp->m_plot, gp->layer->GetName());
|
||||
+ mpPrintout *plotPrint = new mpPrintout(gp->m_plot, gp->layer->GetName().c_str());
|
||||
+ mpPrintout *plotPrintPreview = new mpPrintout(gp->m_plot, gp->layer->GetName().c_str());
|
||||
|
||||
wxPrintPreview *preview = new wxPrintPreview(plotPrintPreview, plotPrint);
|
||||
|
||||
@@ -765,7 +765,7 @@ void gpPanel::OnMenuItemSaveScreenshot(wxCommandEvent& event)
|
||||
if(index!=-1)
|
||||
{
|
||||
wxString reso = aChoices.Item(index);
|
||||
- if( reso.CompareTo(_("custom")) == 0 ){
|
||||
+ if( reso.CompareTo(_("custom").c_str()) == 0 ){
|
||||
reso = wxGetTextFromUser(_("Write image resolution (format: [width]x[height]"), _("Custom resolution for image"), _("640x480"), this);
|
||||
}
|
||||
if(reso.Find('x') != -1)
|
32
ports/gppanel/CMakeLists.txt
Normal file
32
ports/gppanel/CMakeLists.txt
Normal file
@ -0,0 +1,32 @@
|
||||
cmake_minimum_required(VERSION 3.13)
|
||||
project(gpPanel CXX)
|
||||
|
||||
set(wxWidgets_EXCLUDE_COMMON_LIBRARIES TRUE)
|
||||
find_package(wxWidgets REQUIRED COMPONENTS core base)
|
||||
include(${wxWidgets_USE_FILE})
|
||||
|
||||
file(GLOB_RECURSE SOURCES "gpPanel/*.cpp")
|
||||
file(GLOB HEADERS RELATIVE "${CMAKE_CURRENT_SOURCE_DIR}/include" "include/*.h")
|
||||
|
||||
add_library(gpPanel STATIC ${SOURCES})
|
||||
target_compile_definitions(gpPanel PRIVATE _CRT_SECURE_NO_WARNINGS)
|
||||
|
||||
target_include_directories(gpPanel PUBLIC
|
||||
$<INSTALL_INTERFACE:include>
|
||||
$<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>
|
||||
)
|
||||
|
||||
target_link_libraries(gpPanel PRIVATE ${wxWidgets_LIBRARIES})
|
||||
|
||||
install(TARGETS gpPanel EXPORT gpPanel-config
|
||||
RUNTIME DESTINATION bin
|
||||
ARCHIVE DESTINATION lib
|
||||
LIBRARY DESTINATION lib
|
||||
)
|
||||
|
||||
install(EXPORT gpPanel-config DESTINATION share/cmake/gpPanel)
|
||||
|
||||
foreach (HEADER ${HEADERS} )
|
||||
get_filename_component(HEADER_DIR ${HEADER} DIRECTORY)
|
||||
install(FILES include/${HEADER} DESTINATION include/gpPanel/${HEADER_DIR})
|
||||
endforeach()
|
5
ports/gppanel/CONTROL
Normal file
5
ports/gppanel/CONTROL
Normal file
@ -0,0 +1,5 @@
|
||||
Source: gppanel
|
||||
Version: 2018-04-06
|
||||
Build-Depends: wxwidgets
|
||||
Homepage: https://github.com/woollybah/gppanel
|
||||
Description: gpPanel is chart libary for wxWidget. It inheritance from wxPanel and use modified wxMathPlot library at chart engine.
|
42
ports/gppanel/portfile.cmake
Normal file
42
ports/gppanel/portfile.cmake
Normal file
@ -0,0 +1,42 @@
|
||||
include(vcpkg_common_functions)
|
||||
|
||||
vcpkg_check_linkage(ONLY_STATIC_LIBRARY)
|
||||
|
||||
vcpkg_from_github(
|
||||
OUT_SOURCE_PATH SOURCE_PATH
|
||||
REPO woollybah/gppanel
|
||||
REF 5ef9674d893bbf5e17da66841cbc6aeeef051b25
|
||||
SHA512 a52eb5c4d9065e29d84374e9c484bae14cf7ff9a80fe6b025be108942a6c4683dd7f64830f78f0f7d45971f930df68f58dadf7c3915178e8908dd220d06a1e2c
|
||||
HEAD_REF master
|
||||
PATCHES 00001-fix-build.patch
|
||||
)
|
||||
|
||||
file(COPY ${CMAKE_CURRENT_LIST_DIR}/CMakeLists.txt DESTINATION ${SOURCE_PATH})
|
||||
|
||||
vcpkg_from_github(
|
||||
OUT_SOURCE_PATH VCPKG_WX_FIND_SOURCE_PATH
|
||||
REPO CaeruleusAqua/vcpkg-wx-find
|
||||
REF 17993e942f677799b488a06ca659a8e46ff272c9
|
||||
SHA512 0fe07d3669f115c9b6a761abd7743f87e67f24d1eae3f3abee4715fa4d6b76af0d1ea3a4bd82dbdbed430ae50295e1722615ce0ee7d46182125f5048185ee153
|
||||
HEAD_REF master
|
||||
)
|
||||
|
||||
file(COPY ${CMAKE_ROOT}/Modules/FindPackageHandleStandardArgs.cmake DESTINATION ${VCPKG_WX_FIND_SOURCE_PATH})
|
||||
file(COPY ${CMAKE_ROOT}/Modules/FindPackageMessage.cmake DESTINATION ${VCPKG_WX_FIND_SOURCE_PATH})
|
||||
|
||||
vcpkg_configure_cmake(
|
||||
SOURCE_PATH ${SOURCE_PATH}
|
||||
PREFER_NINJA
|
||||
OPTIONS
|
||||
-DCMAKE_MODULE_PATH=${VCPKG_WX_FIND_SOURCE_PATH}
|
||||
)
|
||||
|
||||
vcpkg_install_cmake()
|
||||
vcpkg_copy_pdbs()
|
||||
vcpkg_fixup_cmake_targets(CONFIG_PATH share/cmake/gpPanel)
|
||||
|
||||
file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include)
|
||||
file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/share)
|
||||
|
||||
configure_file(${SOURCE_PATH}/LICENSE ${CURRENT_PACKAGES_DIR}/share/gpPanel/copyright COPYONLY)
|
||||
file(COPY ${CMAKE_CURRENT_LIST_DIR}/usage DESTINATION ${CURRENT_PACKAGES_DIR}/share/gpPanel)
|
4
ports/gppanel/usage
Normal file
4
ports/gppanel/usage
Normal file
@ -0,0 +1,4 @@
|
||||
The package gppanel provides CMake targets:
|
||||
|
||||
find_package(gpPanel CONFIG REQUIRED)
|
||||
target_link_libraries(main PRIVATE gpPanel)
|
27
ports/json5-parser/00001-fix-build.patch
Normal file
27
ports/json5-parser/00001-fix-build.patch
Normal file
@ -0,0 +1,27 @@
|
||||
diff --git a/json5_parser/CMakeLists.txt b/json5_parser/CMakeLists.txt
|
||||
index e83fb38..b193c97 100644
|
||||
--- a/json5_parser/CMakeLists.txt
|
||||
+++ b/json5_parser/CMakeLists.txt
|
||||
@@ -15,3 +15,22 @@ INCLUDE_DIRECTORIES(${Boost_INCLUDE_DIR})
|
||||
|
||||
ADD_LIBRARY(json5_parser STATIC ${JSON_SPIRIT_SRCS})
|
||||
|
||||
+if(MSVC)
|
||||
+ target_compile_options(json5_parser PRIVATE "/bigobj")
|
||||
+endif()
|
||||
+
|
||||
+target_include_directories(json5_parser PUBLIC $<INSTALL_INTERFACE:include>)
|
||||
+
|
||||
+install(TARGETS json5_parser EXPORT json5_parser-config
|
||||
+ RUNTIME DESTINATION bin
|
||||
+ ARCHIVE DESTINATION lib
|
||||
+ LIBRARY DESTINATION lib
|
||||
+)
|
||||
+install(EXPORT json5_parser-config DESTINATION share/cmake/json5_parser)
|
||||
+
|
||||
+file(GLOB HEADERS RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} json5_parser*.h)
|
||||
+foreach (HEADER ${HEADERS} )
|
||||
+ get_filename_component(HEADER_DIR ${HEADER} DIRECTORY)
|
||||
+ install(FILES ${HEADER} DESTINATION include/${HEADER_DIR})
|
||||
+endforeach()
|
||||
+
|
5
ports/json5-parser/CONTROL
Normal file
5
ports/json5-parser/CONTROL
Normal file
@ -0,0 +1,5 @@
|
||||
Source: json5-parser
|
||||
Version: 1.0.0
|
||||
Homepage: https://bitbucket.org/wlandry/json5_parser
|
||||
Description: An enhancement of the JSON Spirit C++ library to understand json5.
|
||||
Build-Depends: boost-spirit
|
27
ports/json5-parser/portfile.cmake
Normal file
27
ports/json5-parser/portfile.cmake
Normal file
@ -0,0 +1,27 @@
|
||||
include(vcpkg_common_functions)
|
||||
|
||||
vcpkg_check_linkage(ONLY_STATIC_LIBRARY)
|
||||
|
||||
vcpkg_from_bitbucket(
|
||||
OUT_SOURCE_PATH SOURCE_PATH
|
||||
REPO wlandry/json5_parser
|
||||
REF 1.0.0
|
||||
SHA512 105d0cccb28dd9045c06d73ab1e98a5e744ffdb38310a4581b8f1517b0edffb2cba424dc557a3490dfdcd4627d3bd1c6850eb38f588e1627dcab1de120d70717
|
||||
HEAD_REF master
|
||||
PATCHES 00001-fix-build.patch
|
||||
)
|
||||
|
||||
vcpkg_configure_cmake(
|
||||
SOURCE_PATH ${SOURCE_PATH}/json5_parser
|
||||
PREFER_NINJA
|
||||
)
|
||||
|
||||
vcpkg_install_cmake()
|
||||
vcpkg_copy_pdbs()
|
||||
vcpkg_fixup_cmake_targets(CONFIG_PATH share/cmake/json5_parser)
|
||||
|
||||
file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include)
|
||||
file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/share)
|
||||
|
||||
configure_file(${SOURCE_PATH}/LICENSE.txt ${CURRENT_PACKAGES_DIR}/share/json5-parser/copyright COPYONLY)
|
||||
file(COPY ${CMAKE_CURRENT_LIST_DIR}/usage DESTINATION ${CURRENT_PACKAGES_DIR}/share/json5-parser)
|
4
ports/json5-parser/usage
Normal file
4
ports/json5-parser/usage
Normal file
@ -0,0 +1,4 @@
|
||||
The package json5-parser provides CMake targets:
|
||||
|
||||
find_package(json5_parser CONFIG REQUIRED)
|
||||
target_link_libraries(main PRIVATE json5_parser)
|
4
ports/libguarded/CONTROL
Normal file
4
ports/libguarded/CONTROL
Normal file
@ -0,0 +1,4 @@
|
||||
Source: libguarded
|
||||
Version: 2019-08-27
|
||||
Homepage: https://github.com/copperspice/libguarded
|
||||
Description: The libGuarded library is a standalone header-only library for multithreaded programming.
|
15
ports/libguarded/portfile.cmake
Normal file
15
ports/libguarded/portfile.cmake
Normal file
@ -0,0 +1,15 @@
|
||||
include(vcpkg_common_functions)
|
||||
|
||||
vcpkg_from_github(
|
||||
OUT_SOURCE_PATH SOURCE_PATH
|
||||
REPO copperspice/libguarded
|
||||
REF 1f159aa866a50f5d2952de41d8a99821b8ec37df
|
||||
SHA512 3ff138719b895a9c45492aee0a30e9f9eff2c3b3510de01dad59123fac6bdc1c7479518f5a81a61e4d25c0f9679b21b5018953d99809f52aafa7729599a3282a
|
||||
HEAD_REF master
|
||||
)
|
||||
|
||||
File(COPY ${SOURCE_PATH}/src/libguarded DESTINATION ${CURRENT_PACKAGES_DIR}/include)
|
||||
|
||||
file(COPY ${SOURCE_PATH}/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/${PORT})
|
||||
file(RENAME ${CURRENT_PACKAGES_DIR}/share/${PORT}/LICENSE ${CURRENT_PACKAGES_DIR}/share/${PORT}/copyright)
|
||||
|
@ -1,3 +1,3 @@
|
||||
Source: liblsl
|
||||
Version: 1.13.0-b6
|
||||
Version: 1.13.0-b11-1
|
||||
Description: C++ lsl library for multi-modal time-synched data transmission over the local network
|
||||
|
@ -1,12 +1,12 @@
|
||||
include(vcpkg_common_functions)
|
||||
|
||||
vcpkg_check_linkage(ONLY_DYNAMIC_LIBRARY)
|
||||
set(VCPKG_LIBRARY_LINKAGE dynamic)
|
||||
|
||||
vcpkg_from_github(
|
||||
OUT_SOURCE_PATH SOURCE_PATH
|
||||
REPO sccn/liblsl
|
||||
REF 1.13.0-b6 # NOTE: when updating version, also change it in the parameter to vcpkg_configure_cmake
|
||||
SHA512 fb98cdd73de5f13e97f639ba3f2f836d46ce28cdcb2246584728f296eb647e2c9c069534470a603b10d7dc34ab8978bf246e2187428ab231a925feb0b7024c89
|
||||
REF 1.13.0-b11 # NOTE: when updating version, also change it in the parameter to vcpkg_configure_cmake
|
||||
SHA512 212f28070b8239dc176d2e35bf4091896babbf7688e4cbe1c2bb0c3788f317ce2a80f92d4b008c6e577b01a09e8faf65228d396ff13e9ade0c1ffdc5e08cb9e5
|
||||
HEAD_REF master
|
||||
)
|
||||
|
||||
@ -17,7 +17,7 @@ vcpkg_configure_cmake(
|
||||
-DLSL_BUILD_STATIC=OFF
|
||||
-DLSL_UNIXFOLDERS=ON
|
||||
-DLSL_NO_FANCY_LIBNAME=ON
|
||||
-Dlslgitrevision="1.13.0-b6"
|
||||
-Dlslgitrevision="1.13.0-b11"
|
||||
-Dlslgitbranch="master"
|
||||
)
|
||||
|
||||
@ -26,5 +26,12 @@ vcpkg_copy_pdbs()
|
||||
|
||||
file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include)
|
||||
file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/share)
|
||||
|
||||
if(VCPKG_TARGET_IS_WINDOWS)
|
||||
file(REMOVE ${CURRENT_PACKAGES_DIR}/debug/bin/lslver.exe)
|
||||
file(MAKE_DIRECTORY ${CURRENT_PACKAGES_DIR}/tools/lslver/)
|
||||
file(RENAME ${CURRENT_PACKAGES_DIR}/bin/lslver.exe ${CURRENT_PACKAGES_DIR}/tools/lslver/lslver.exe)
|
||||
endif()
|
||||
|
||||
file(INSTALL ${SOURCE_PATH}/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/liblsl RENAME copyright)
|
||||
file(INSTALL ${SOURCE_PATH}/README.md DESTINATION ${CURRENT_PACKAGES_DIR}/share/liblsl)
|
||||
|
16
ports/libwebp/0006-fix-dependecies-platform.patch
Normal file
16
ports/libwebp/0006-fix-dependecies-platform.patch
Normal file
@ -0,0 +1,16 @@
|
||||
diff --git a/CMakeLists.txt b/CMakeLists.txt
|
||||
index 83edb3a..f634094 100644
|
||||
--- a/CMakeLists.txt
|
||||
+++ b/CMakeLists.txt
|
||||
@@ -540,7 +540,10 @@ if(WEBP_BUILD_EXTRAS)
|
||||
find_package(SDL)
|
||||
if(SDL_FOUND)
|
||||
add_executable(vwebp_sdl ${VWEBP_SDL_SRCS})
|
||||
- target_link_libraries(vwebp_sdl ${SDL_LIBRARY} imageioutil webp dxguid winmm)
|
||||
+ target_link_libraries(vwebp_sdl ${SDL_LIBRARY} imageioutil webp)
|
||||
+ if (MSVC)
|
||||
+ target_link_libraries(vwebp_sdl dxguid winmm)
|
||||
+ endif()
|
||||
target_include_directories(vwebp_sdl
|
||||
PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/src
|
@ -1,5 +1,5 @@
|
||||
Source: libwebp
|
||||
Version: 1.0.2-6
|
||||
Version: 1.0.2-7
|
||||
Homepage: https://github.com/webmproject/libwebp
|
||||
Description: Lossy compression of digital photographic images.
|
||||
Build-Depends: opengl
|
||||
|
@ -12,6 +12,7 @@ vcpkg_from_github(
|
||||
0003-remove-missing-symbol.patch
|
||||
0004-add-missing-linked-library.patch
|
||||
0005-fix-static-build.patch
|
||||
0006-fix-dependecies-platform.patch
|
||||
)
|
||||
|
||||
set(WEBP_BUILD_ANIM_UTILS OFF)
|
||||
|
5
ports/log4cpp/CONTROL
Normal file
5
ports/log4cpp/CONTROL
Normal file
@ -0,0 +1,5 @@
|
||||
Source: log4cpp
|
||||
Version: 2.9.1-1
|
||||
Homepage: https://github.com/orocos-toolchain/log4cpp
|
||||
Description: Log4cpp is library of C++ classes for flexible logging to files, syslog, IDSA and other destinations. It is modeled after the Log4j Java library, staying as close to their API as is reasonable.
|
||||
|
13
ports/log4cpp/fix-install-targets.patch
Normal file
13
ports/log4cpp/fix-install-targets.patch
Normal file
@ -0,0 +1,13 @@
|
||||
diff --git a/CMakeLists.txt b/CMakeLists.txt
|
||||
index 8db2287..529c18e 100644
|
||||
--- a/CMakeLists.txt
|
||||
+++ b/CMakeLists.txt
|
||||
@@ -159,7 +159,7 @@ INSTALL (
|
||||
INSTALL(TARGETS ${LOG4CPP_LIBRARY_NAME}
|
||||
LIBRARY DESTINATION lib
|
||||
ARCHIVE DESTINATION lib
|
||||
- RUNTIME DESTINATION lib)
|
||||
+ RUNTIME DESTINATION bin)
|
||||
|
||||
INSTALL(FILES package.xml DESTINATION share/log4cpp)
|
||||
|
36
ports/log4cpp/portfile.cmake
Normal file
36
ports/log4cpp/portfile.cmake
Normal file
@ -0,0 +1,36 @@
|
||||
include(vcpkg_common_functions)
|
||||
|
||||
if(VCPKG_CMAKE_SYSTEM_NAME MATCHES "WindowsStore")
|
||||
message(FATAL_ERROR "${PORT} does not currently support UWP.")
|
||||
endif()
|
||||
|
||||
vcpkg_from_github(
|
||||
OUT_SOURCE_PATH SOURCE_PATH
|
||||
REPO orocos-toolchain/log4cpp
|
||||
REF v2.9.1
|
||||
SHA512 5bd222c820a15c5d96587ac9fe864c3e2dc0fbce8389692be8dd41553ac0308002ad8d6f4ef3ef10af1d796f8ded410788d1a5d22f15505fac639da3f73e3518
|
||||
HEAD_REF master
|
||||
PATCHES
|
||||
fix-install-targets.patch
|
||||
)
|
||||
|
||||
vcpkg_configure_cmake(
|
||||
SOURCE_PATH ${SOURCE_PATH}
|
||||
PREFER_NINJA
|
||||
)
|
||||
|
||||
vcpkg_install_cmake()
|
||||
|
||||
file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include)
|
||||
vcpkg_fixup_cmake_targets(CONFIG_PATH lib/pkgconfig TARGET_PATH share/${PORT})
|
||||
file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/share)
|
||||
|
||||
if(VCPKG_LIBRARY_LINKAGE STREQUAL static)
|
||||
file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/bin ${CURRENT_PACKAGES_DIR}/debug/bin)
|
||||
endif()
|
||||
|
||||
vcpkg_copy_pdbs()
|
||||
|
||||
# Handle copyright
|
||||
file(COPY ${SOURCE_PATH}/COPYING DESTINATION ${CURRENT_PACKAGES_DIR}/share/${PORT})
|
||||
file(RENAME ${CURRENT_PACKAGES_DIR}/share/${PORT}/COPYING ${CURRENT_PACKAGES_DIR}/share/${PORT}/copyright)
|
@ -1,3 +1,3 @@
|
||||
Source: magic-enum
|
||||
Version: 2019-06-07
|
||||
Version: 0.6.0
|
||||
Description: Header-only C++17 library provides static reflection for enums, work with any enum type without any macro or boilerplate code.
|
||||
|
@ -3,8 +3,8 @@ include(vcpkg_common_functions)
|
||||
vcpkg_from_github(
|
||||
OUT_SOURCE_PATH SOURCE_PATH
|
||||
REPO "Neargye/magic_enum"
|
||||
REF 4dfaa4b7b4814c2cf85b08ad3084fc28c8b129c6
|
||||
SHA512 924e5a134f4200652fdc3f3d676b49efa8c30b5577d638f60134ce81092b23f7976a494ce50b58b25ed7bce0653a7e29206acf9e512408c4701ec6822ab2d176
|
||||
REF v0.6.0
|
||||
SHA512 3079155509f0141e9a50b2a773e33e3ebda1a4c1a7d0b78f093e2d0e8a4b78ef108876e63ef986a55c03bb712a494943b7c4c37bcbe08d932035106f4afe3bd2
|
||||
)
|
||||
|
||||
vcpkg_configure_cmake(
|
||||
|
13
ports/magnum/004-khrplatform-include.patch
Normal file
13
ports/magnum/004-khrplatform-include.patch
Normal file
@ -0,0 +1,13 @@
|
||||
diff --git a/src/MagnumExternal/OpenGL/GL/flextGL.h b/src/MagnumExternal/OpenGL/GL/flextGL.h
|
||||
index 7d36f26e3..69cc8c82f 100644
|
||||
--- a/src/MagnumExternal/OpenGL/GL/flextGL.h
|
||||
+++ b/src/MagnumExternal/OpenGL/GL/flextGL.h
|
||||
@@ -118,7 +118,7 @@ void flextGLInit(Magnum::GL::Context& context);
|
||||
|
||||
/* Data types */
|
||||
|
||||
-#include <KHR/khrplatform.h>
|
||||
+#include "MagnumExternal/OpenGL/KHR/khrplatform.h"
|
||||
typedef unsigned int GLenum;
|
||||
typedef unsigned char GLboolean;
|
||||
typedef unsigned int GLbitfield;
|
@ -13,6 +13,7 @@ vcpkg_apply_patches(
|
||||
${CMAKE_CURRENT_LIST_DIR}/001-sdl-includes.patch
|
||||
${CMAKE_CURRENT_LIST_DIR}/002-tools-path.patch
|
||||
${CMAKE_CURRENT_LIST_DIR}/003-glfw-find-module.patch
|
||||
${CMAKE_CURRENT_LIST_DIR}/004-khrplatform-include.patch
|
||||
)
|
||||
|
||||
if(VCPKG_LIBRARY_LINKAGE STREQUAL static)
|
||||
|
4
ports/minifb/CONTROL
Normal file
4
ports/minifb/CONTROL
Normal file
@ -0,0 +1,4 @@
|
||||
Source: minifb
|
||||
Version: 2019-08-20-1
|
||||
Homepage: https://github.com/emoon/minifb
|
||||
Description: MiniFB (Mini FrameBuffer) is a small cross platform library that makes it easy to render (32-bit) pixels in a window.
|
40
ports/minifb/fix-arm-build-error.patch
Normal file
40
ports/minifb/fix-arm-build-error.patch
Normal file
@ -0,0 +1,40 @@
|
||||
diff --git a/CMakeLists.txt b/CMakeLists.txt
|
||||
index 06ba472..0f5874c 100644
|
||||
--- a/CMakeLists.txt
|
||||
+++ b/CMakeLists.txt
|
||||
@@ -54,6 +54,27 @@ add_library(minifb STATIC
|
||||
${SrcLib}
|
||||
)
|
||||
|
||||
+if (WIN32)
|
||||
+add_executable(noise
|
||||
+ tests/noise.c
|
||||
+)
|
||||
+target_link_libraries(noise minifb Gdi32.lib)
|
||||
+
|
||||
+add_executable(input_events
|
||||
+ tests/input_events.c
|
||||
+)
|
||||
+target_link_libraries(input_events minifb Gdi32.lib)
|
||||
+
|
||||
+add_executable(input_events_cpp
|
||||
+ tests/input_events_cpp.cpp
|
||||
+)
|
||||
+target_link_libraries(input_events_cpp minifb Gdi32.lib)
|
||||
+
|
||||
+add_executable(multiple_windows
|
||||
+ tests/multiple_windows.c
|
||||
+)
|
||||
+target_link_libraries(multiple_windows minifb Gdi32.lib)
|
||||
+else()
|
||||
add_executable(noise
|
||||
tests/noise.c
|
||||
)
|
||||
@@ -73,6 +94,7 @@ add_executable(multiple_windows
|
||||
tests/multiple_windows.c
|
||||
)
|
||||
target_link_libraries(multiple_windows minifb)
|
||||
+endif()
|
||||
|
||||
if (MSVC)
|
||||
elseif (MINGW)
|
25
ports/minifb/fix-build-error.patch
Normal file
25
ports/minifb/fix-build-error.patch
Normal file
@ -0,0 +1,25 @@
|
||||
diff --git a/src/windows/WinMiniFB.c b/src/windows/WinMiniFB.c
|
||||
index 84ed0cb..b33f252 100644
|
||||
--- a/src/windows/WinMiniFB.c
|
||||
+++ b/src/windows/WinMiniFB.c
|
||||
@@ -19,7 +19,7 @@ LRESULT CALLBACK WndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam)
|
||||
{
|
||||
LRESULT res = 0;
|
||||
|
||||
- SWindowData *window_data = (SWindowData *) GetWindowLongPtr(hWnd, GWL_USERDATA);
|
||||
+ SWindowData *window_data = (SWindowData *) GetWindowLongPtr(hWnd, GWLP_USERDATA);
|
||||
SWindowData_Win *window_data_win = 0x0;
|
||||
if(window_data != 0x0) {
|
||||
window_data_win = (SWindowData_Win *) window_data->specific;
|
||||
diff --git a/tests/multiple_windows.c b/tests/multiple_windows.c
|
||||
index 4b301c0..29276be 100644
|
||||
--- a/tests/multiple_windows.c
|
||||
+++ b/tests/multiple_windows.c
|
||||
@@ -1,6 +1,7 @@
|
||||
#include <MiniFB.h>
|
||||
#include <stdio.h>
|
||||
#include <stdint.h>
|
||||
+#define _USE_MATH_DEFINES
|
||||
#include <math.h>
|
||||
|
||||
#define kUnused(var) (void) var;
|
54
ports/minifb/fix-install-error.patch
Normal file
54
ports/minifb/fix-install-error.patch
Normal file
@ -0,0 +1,54 @@
|
||||
diff --git a/CMakeLists.txt b/CMakeLists.txt
|
||||
index 06ba472..6dc7988 100644
|
||||
--- a/CMakeLists.txt
|
||||
+++ b/CMakeLists.txt
|
||||
@@ -17,6 +17,12 @@ file(GLOB SrcMacOSX "src/macosx/*.c"
|
||||
file(GLOB SrcWayland "src/wayland/*.c")
|
||||
file(GLOB SrcX11 "src/x11/*.c")
|
||||
|
||||
+file(GLOB HEADERS "include/*.h")
|
||||
+file(GLOB HeaderWindows "src/windows/*.h")
|
||||
+file(GLOB HeaderMacOSX "src/macosx/*.h")
|
||||
+file(GLOB HeaderWayland "src/wayland/*.h")
|
||||
+file(GLOB HeaderX11 "src/x11/*.h")
|
||||
+
|
||||
if (NOT MSVC)
|
||||
set (CMAKE_C_FLAGS "-g -Wall -Wextra -pedantic -Wno-switch -Wno-unused-function")
|
||||
set (CMAKE_CXX_FLAGS "${CMAKE_C_FLAGS} -std=c++11")
|
||||
@@ -34,19 +40,24 @@ if (MSVC)
|
||||
add_definitions(-D_CRT_SECURE_NO_WARNINGS)
|
||||
add_definitions(-D_WIN32_WINNT=0x0600)
|
||||
list (APPEND SrcLib ${SrcWindows})
|
||||
+ list (APPEND HEADERS ${HeaderWindows})
|
||||
elseif (MINGW)
|
||||
add_definitions(-D_WIN32_WINNT=0x0600)
|
||||
list(APPEND SrcLib ${SrcWindows})
|
||||
+ list (APPEND HEADERS ${HeaderWindows})
|
||||
elseif (APPLE)
|
||||
if(USE_METAL_API)
|
||||
add_definitions(-DUSE_METAL_API)
|
||||
endif()
|
||||
list(APPEND SrcLib ${SrcMacOSX})
|
||||
+ list (APPEND HEADERS ${HeaderMacOSX})
|
||||
elseif (UNIX)
|
||||
if(USE_WAYLAND_API)
|
||||
list(APPEND SrcLib ${SrcWayland})
|
||||
+ list (APPEND HEADERS ${HeaderWayland})
|
||||
else()
|
||||
list(APPEND SrcLib ${SrcX11})
|
||||
+ list (APPEND HEADERS ${HeaderX11})
|
||||
endif()
|
||||
endif()
|
||||
|
||||
@@ -112,3 +123,11 @@ elseif (UNIX)
|
||||
target_link_libraries(multiple_windows -lX11)
|
||||
endif()
|
||||
endif()
|
||||
+
|
||||
+install(TARGETS minifb
|
||||
+ RUNTIME DESTINATION bin
|
||||
+ LIBRARY DESTINATION lib
|
||||
+ ARCHIVE DESTINATION lib
|
||||
+ )
|
||||
+
|
||||
+install(FILES ${HEADERS} DESTINATION include)
|
32
ports/minifb/portfile.cmake
Normal file
32
ports/minifb/portfile.cmake
Normal file
@ -0,0 +1,32 @@
|
||||
include(vcpkg_common_functions)
|
||||
|
||||
vcpkg_check_linkage(ONLY_STATIC_LIBRARY)
|
||||
|
||||
if(VCPKG_CMAKE_SYSTEM_NAME STREQUAL "WindowsStore")
|
||||
message(FATAL_ERROR "${PORT} currently doesn't supports UWP.")
|
||||
endif()
|
||||
|
||||
vcpkg_from_github(
|
||||
OUT_SOURCE_PATH SOURCE_PATH
|
||||
REPO emoon/minifb
|
||||
REF 25a440f8226f12b8014d24288ad0587724005afc
|
||||
SHA512 e54d86e43193d22263003a9539b11cc61cfd4a1b7093c982165cdd6e6f150b431a44e7d4dc8512b62b9853a7605e29cee19f85b8d25a34b3b530f9aa41a2f4a9
|
||||
HEAD_REF master
|
||||
PATCHES
|
||||
fix-install-error.patch
|
||||
fix-build-error.patch
|
||||
fix-arm-build-error.patch
|
||||
)
|
||||
|
||||
vcpkg_configure_cmake(
|
||||
SOURCE_PATH ${SOURCE_PATH}
|
||||
PREFER_NINJA
|
||||
)
|
||||
|
||||
vcpkg_install_cmake()
|
||||
|
||||
file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include)
|
||||
|
||||
# Handle copyright
|
||||
file(COPY ${SOURCE_PATH}/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/${PORT})
|
||||
file(RENAME ${CURRENT_PACKAGES_DIR}/share/${PORT}/LICENSE ${CURRENT_PACKAGES_DIR}/share/${PORT}/copyright)
|
@ -1,7 +1,5 @@
|
||||
Source: moos-ui
|
||||
Version: 10.0.1-1
|
||||
Version: 10.0.1-2
|
||||
Description: set of user interface tools to use and leverage the MOOS project.
|
||||
Homepage: https://sites.google.com/site/moossoftware/
|
||||
Build-Depends: moos-core
|
||||
|
||||
|
||||
|
@ -19,19 +19,16 @@ vcpkg_configure_cmake(
|
||||
vcpkg_install_cmake()
|
||||
|
||||
file(MAKE_DIRECTORY ${CURRENT_PACKAGES_DIR}/tools/MOOS)
|
||||
if(EXISTS "${CURRENT_PACKAGES_DIR}/bin/uPoke")
|
||||
file(RENAME ${CURRENT_PACKAGES_DIR}/bin/uPoke ${CURRENT_PACKAGES_DIR}/tools/MOOS/uPoke)
|
||||
file(RENAME ${CURRENT_PACKAGES_DIR}/bin/iRemoteLite ${CURRENT_PACKAGES_DIR}/tools/MOOS/iRemoteLite)
|
||||
if (VCPKG_TARGET_IS_WINDOWS)
|
||||
file(RENAME ${CURRENT_PACKAGES_DIR}/bin/uPoke.exe ${CURRENT_PACKAGES_DIR}/tools/MOOS/uPoke.exe)
|
||||
file(RENAME ${CURRENT_PACKAGES_DIR}/bin/iRemoteLite.exe ${CURRENT_PACKAGES_DIR}/tools/MOOS/iRemoteLite.exe)
|
||||
else()
|
||||
file(RENAME ${CURRENT_PACKAGES_DIR}/bin/uPoke ${CURRENT_PACKAGES_DIR}/tools/MOOS/uPoke)
|
||||
file(RENAME ${CURRENT_PACKAGES_DIR}/bin/iRemoteLite ${CURRENT_PACKAGES_DIR}/tools/MOOS/iRemoteLite)
|
||||
endif()
|
||||
vcpkg_copy_tool_dependencies(${CURRENT_PACKAGES_DIR}/tools/MOOS)
|
||||
|
||||
# file(RENAME ${CURRENT_PACKAGES_DIR}/bin/uMS ${CURRENT_PACKAGES_DIR}/tools/uMS)
|
||||
# file(RENAME ${CURRENT_PACKAGES_DIR}/bin/uPlayback ${CURRENT_PACKAGES_DIR}/tools/uPlayback)
|
||||
# file(RENAME ${CURRENT_PACKAGES_DIR}/bin/pShare ${CURRENT_PACKAGES_DIR}/tools/pShare)
|
||||
#endif()
|
||||
|
||||
if(VCPKG_LIBRARY_LINKAGE STREQUAL static)
|
||||
file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/bin ${CURRENT_PACKAGES_DIR}/debug)
|
||||
endif()
|
||||
file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/bin ${CURRENT_PACKAGES_DIR}/debug)
|
||||
|
||||
file(WRITE ${CURRENT_PACKAGES_DIR}/include/fake_header_ui.h "// fake header to pass vcpkg post install check \n")
|
||||
file(WRITE ${CURRENT_PACKAGES_DIR}/share/${PORT}/copyright "see moos-core for copyright\n" )
|
||||
|
@ -1,4 +1,4 @@
|
||||
Source: nmap
|
||||
Version: 7.70
|
||||
Build-Depends: winpcap, lua, openssl, python2, libssh2
|
||||
Version: 7.70-1
|
||||
Build-Depends: winpcap (windows), libpcap (!windows), lua, openssl, python2 (windows), libssh2, zlib, pcre
|
||||
Description: A library for scanning network ports.
|
||||
|
@ -1,24 +0,0 @@
|
||||
#!/usr/bin/bash
|
||||
set -e
|
||||
export PATH=/usr/bin:$PATH
|
||||
# Export HTTP(S)_PROXY as http(s)_proxy:
|
||||
if [ "$HTTP_PROXY" ]; then
|
||||
export http_proxy=$HTTP_PROXY
|
||||
fi
|
||||
if [ "$HTTPS_PROXY" ]; then
|
||||
export https_proxy=$HTTPS_PROXY
|
||||
fi
|
||||
|
||||
PATH_TO_BUILD_DIR="`cygpath "$1"`"
|
||||
PATH_TO_SRC_DIR="`cygpath "$2"`"
|
||||
PATH_TO_PACKAGE_DIR="`cygpath "$3"`"
|
||||
# Note: $4 is extra configure options
|
||||
|
||||
cd "$PATH_TO_BUILD_DIR"
|
||||
echo "=== CONFIGURING ==="
|
||||
echo "building nmap package $PATH_TO_SRC_DIR"
|
||||
"$PATH_TO_SRC_DIR/configure" CC=cl.exe LD=link.exe CXX=lc.exe "--prefix=$PATH_TO_PACKAGE_DIR" $4
|
||||
echo "=== BUILDING ==="
|
||||
make -j6
|
||||
echo "=== INSTALLING ==="
|
||||
make install
|
@ -1,75 +0,0 @@
|
||||
--- a/configure 2017-11-01 23:55:49.000000000 +0100
|
||||
+++ b/configure 2019-03-05 03:35:21.753268300 +0100
|
||||
@@ -5989,13 +5989,13 @@
|
||||
|
||||
# use_openssl="yes" given explicitly in next 2 rules to avoid adding lib to $LIBS
|
||||
if test "$use_openssl" = "yes"; then
|
||||
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for BIO_int_ctrl in -lcrypto" >&5
|
||||
-$as_echo_n "checking for BIO_int_ctrl in -lcrypto... " >&6; }
|
||||
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for BIO_int_ctrl in -llibeay32" >&5
|
||||
+$as_echo_n "checking for BIO_int_ctrl in -llibeay32... " >&6; }
|
||||
if ${ac_cv_lib_crypto_BIO_int_ctrl+:} false; then :
|
||||
$as_echo_n "(cached) " >&6
|
||||
else
|
||||
ac_check_lib_save_LIBS=$LIBS
|
||||
-LIBS="-lcrypto $LIBS"
|
||||
+LIBS="-llibeay32 $LIBS"
|
||||
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
|
||||
/* end confdefs.h. */
|
||||
|
||||
@@ -6030,23 +6030,23 @@
|
||||
else
|
||||
use_openssl="no"
|
||||
if test "$with_openssl" = "yes"; then
|
||||
- as_fn_error $? "OpenSSL was explicitly requested but libcrypto was not found. Try the --with-openssl=DIR argument to give the location of OpenSSL or run configure with --without-openssl." "$LINENO" 5
|
||||
+ as_fn_error $? "OpenSSL was explicitly requested but libeay32 was not found. Try the --with-openssl=DIR argument to give the location of OpenSSL or run configure with --without-openssl." "$LINENO" 5
|
||||
fi
|
||||
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Failed to find libcrypto so OpenSSL will not be used. If it is installed you can try the --with-openssl=DIR argument" >&5
|
||||
-$as_echo "$as_me: WARNING: Failed to find libcrypto so OpenSSL will not be used. If it is installed you can try the --with-openssl=DIR argument" >&2;}
|
||||
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Failed to find libeay32 so OpenSSL will not be used. If it is installed you can try the --with-openssl=DIR argument" >&5
|
||||
+$as_echo "$as_me: WARNING: Failed to find libeay32 so OpenSSL will not be used. If it is installed you can try the --with-openssl=DIR argument" >&2;}
|
||||
|
||||
fi
|
||||
|
||||
fi
|
||||
|
||||
if test "$use_openssl" = "yes"; then
|
||||
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for SSL_new in -lssl" >&5
|
||||
-$as_echo_n "checking for SSL_new in -lssl... " >&6; }
|
||||
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for SSL_new in -lssleay32" >&5
|
||||
+$as_echo_n "checking for SSL_new in -lssleay32... " >&6; }
|
||||
if ${ac_cv_lib_ssl_SSL_new+:} false; then :
|
||||
$as_echo_n "(cached) " >&6
|
||||
else
|
||||
ac_check_lib_save_LIBS=$LIBS
|
||||
-LIBS="-lssl -lcrypto $LIBS"
|
||||
+LIBS="-lssleay32 -llibeay32 $LIBS"
|
||||
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
|
||||
/* end confdefs.h. */
|
||||
|
||||
@@ -6090,13 +6090,13 @@
|
||||
fi
|
||||
|
||||
if test "$use_openssl" = "yes"; then
|
||||
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for EVP_PKEY_get1_EC_KEY in -lcrypto" >&5
|
||||
-$as_echo_n "checking for EVP_PKEY_get1_EC_KEY in -lcrypto... " >&6; }
|
||||
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for EVP_PKEY_get1_EC_KEY in -llibeay32" >&5
|
||||
+$as_echo_n "checking for EVP_PKEY_get1_EC_KEY in -llibeay32... " >&6; }
|
||||
if ${ac_cv_lib_crypto_EVP_PKEY_get1_EC_KEY+:} false; then :
|
||||
$as_echo_n "(cached) " >&6
|
||||
else
|
||||
ac_check_lib_save_LIBS=$LIBS
|
||||
-LIBS="-lcrypto $LIBS"
|
||||
+LIBS="-llibeay32 $LIBS"
|
||||
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
|
||||
/* end confdefs.h. */
|
||||
|
||||
@@ -6144,7 +6144,7 @@
|
||||
|
||||
$as_echo "#define HAVE_OPENSSL 1" >>confdefs.h
|
||||
|
||||
- OPENSSL_LIBS="-lssl -lcrypto"
|
||||
+ OPENSSL_LIBS="-lssleay32 -llibeay32"
|
||||
else
|
||||
trace_no_use="$trace_no_use openssl"
|
||||
fi
|
1986
ports/nmap/fix-msvc-prj.patch
Normal file
1986
ports/nmap/fix-msvc-prj.patch
Normal file
File diff suppressed because it is too large
Load Diff
39
ports/nmap/fix-snprintf.patch
Normal file
39
ports/nmap/fix-snprintf.patch
Normal file
@ -0,0 +1,39 @@
|
||||
diff --git a/libdnet-stripped/include/dnet_winconfig.h b/libdnet-stripped/include/dnet_winconfig.h
|
||||
index e41907c..82bc595 100644
|
||||
--- a/libdnet-stripped/include/dnet_winconfig.h
|
||||
+++ b/libdnet-stripped/include/dnet_winconfig.h
|
||||
@@ -277,7 +277,7 @@ int strlcpy(char *, const char *, int);
|
||||
char *strsep(char **, const char *);
|
||||
#endif
|
||||
|
||||
-#define snprintf _snprintf
|
||||
+//#define snprintf _snprintf
|
||||
|
||||
/* Without this, Windows will give us all sorts of crap about using functions
|
||||
like strcpy() even if they are done safely */
|
||||
diff --git a/nbase/nbase.h b/nbase/nbase.h
|
||||
index 0ecd9bc..c0eb395 100644
|
||||
--- a/nbase/nbase.h
|
||||
+++ b/nbase/nbase.h
|
||||
@@ -359,7 +359,7 @@ extern "C" int vsnprintf (char *, size_t, const char *, va_list);
|
||||
#define putenv _putenv
|
||||
|
||||
#if !defined(__GNUC__)
|
||||
-#define snprintf _snprintf
|
||||
+//#define snprintf _snprintf
|
||||
#endif
|
||||
|
||||
#define strcasecmp _stricmp
|
||||
diff --git a/nse_libssh2.cc b/nse_libssh2.cc
|
||||
index bf721b6..1fafe7f 100644
|
||||
--- a/nse_libssh2.cc
|
||||
+++ b/nse_libssh2.cc
|
||||
@@ -58,7 +58,7 @@ struct ssh_userdata {
|
||||
|
||||
|
||||
#if defined(_MSC_VER) && _MSC_VER < 1900
|
||||
-#define snprintf c99_snprintf
|
||||
+//#define snprintf c99_snprintf
|
||||
#define vsnprintf c99_vsnprintf
|
||||
|
||||
__inline int c99_vsnprintf(char *outBuf, size_t size, const char *format, va_list ap) {
|
16
ports/nmap/fix-ssize_t.patch
Normal file
16
ports/nmap/fix-ssize_t.patch
Normal file
@ -0,0 +1,16 @@
|
||||
diff --git a/libdnet-stripped/include/dnet/os.h b/libdnet-stripped/include/dnet/os.h
|
||||
index 55a21b9..544ebd8 100644
|
||||
--- a/libdnet-stripped/include/dnet/os.h
|
||||
+++ b/libdnet-stripped/include/dnet/os.h
|
||||
@@ -23,7 +23,11 @@
|
||||
typedef u_short uint16_t;
|
||||
typedef u_int uint32_t;
|
||||
# ifndef __CYGWIN__
|
||||
+#ifdef _WIN64
|
||||
+ typedef __int64 ssize_t;
|
||||
+#else
|
||||
typedef long ssize_t;
|
||||
+#endif
|
||||
# endif
|
||||
#else
|
||||
# include <sys/param.h>
|
@ -1,134 +1,117 @@
|
||||
include(vcpkg_common_functions)
|
||||
|
||||
# nmap is a tools, so ignor POST_CHECK
|
||||
SET(VCPKG_POLICY_EMPTY_PACKAGE enabled)
|
||||
|
||||
vcpkg_download_distfile(ARCHIVE
|
||||
URLS "https://nmap.org/dist/nmap-7.70.tar.bz2"
|
||||
FILENAME "nmap-7.70.tar.bz2"
|
||||
SHA512 084c148b022ff6550e269d976d0077f7932a10e2ef218236fe13aa3a70b4eb6506df03329868fc68cb3ce78e4360b200f5a7a491d3145028fed679ef1c9ecae5
|
||||
)
|
||||
vcpkg_extract_source_archive_ex(
|
||||
OUT_SOURCE_PATH SOURCE_PATH
|
||||
ARCHIVE ${ARCHIVE}
|
||||
REF ${SQLITE_VERSION}
|
||||
)
|
||||
|
||||
vcpkg_extract_source_archive(${ARCHIVE})
|
||||
|
||||
vcpkg_apply_patches(
|
||||
SOURCE_PATH ${SOURCE_PATH}
|
||||
PATCHES
|
||||
${CMAKE_CURRENT_LIST_DIR}/detect-crypto-library.patch
|
||||
)
|
||||
|
||||
if(VCPKG_CMAKE_SYSTEM_NAME STREQUAL "WindowsStore" AND VCPKG_TARGET_ARCHITECTURE STREQUAL "arm")
|
||||
vcpkg_acquire_msys(MSYS_ROOT PACKAGES perl gcc diffutils make)
|
||||
else()
|
||||
vcpkg_acquire_msys(MSYS_ROOT PACKAGES diffutils make)
|
||||
endif()
|
||||
set(BASH ${MSYS_ROOT}/usr/bin/bash.exe)
|
||||
set(ENV{INCLUDE} "${CURRENT_INSTALLED_DIR}/include;$ENV{INCLUDE}")
|
||||
set(ENV{LIB} "${CURRENT_INSTALLED_DIR}/lib;$ENV{LIB}")
|
||||
|
||||
set(_csc_PROJECT_PATH nmap)
|
||||
|
||||
file(REMOVE_RECURSE ${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-dbg ${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-rel)
|
||||
|
||||
if(VCPKG_CMAKE_SYSTEM_NAME STREQUAL "WindowsStore")
|
||||
set(ENV{LIBPATH} "$ENV{LIBPATH};$ENV{_WKITS10}references\\windows.foundation.foundationcontract\\2.0.0.0\\;$ENV{_WKITS10}references\\windows.foundation.universalapicontract\\3.0.0.0\\")
|
||||
set(OPTIONS "${OPTIONS} --disable-programs --enable-cross-compile --target-os=win32 --arch=${VCPKG_TARGET_ARCHITECTURE}")
|
||||
set(OPTIONS "${OPTIONS} --extra-cflags=-DWINAPI_FAMILY=WINAPI_FAMILY_APP --extra-cflags=-D_WIN32_WINNT=0x0A00")
|
||||
|
||||
if (VCPKG_TARGET_ARCHITECTURE STREQUAL "arm")
|
||||
vcpkg_find_acquire_program(GASPREPROCESSOR)
|
||||
foreach(GAS_PATH ${GASPREPROCESSOR})
|
||||
get_filename_component(GAS_ITEM_PATH ${GAS_PATH} DIRECTORY)
|
||||
set(ENV{PATH} "$ENV{PATH};${GAS_ITEM_PATH}")
|
||||
endforeach(GAS_PATH)
|
||||
elseif (VCPKG_TARGET_ARCHITECTURE STREQUAL "x64")
|
||||
elseif (VCPKG_TARGET_ARCHITECTURE STREQUAL "x86")
|
||||
else()
|
||||
message(FATAL_ERROR "Unsupported architecture")
|
||||
endif()
|
||||
endif()
|
||||
|
||||
|
||||
set(OPTIONS "--with-openssl=${VCPKG_ROOT_DIR}/installed/x64-windows/bin/ --with-libssh2=${VCPKG_ROOT_DIR}/installed/x64-windows/bin/")
|
||||
|
||||
message(STATUS "Building Options: ${OPTIONS}")
|
||||
|
||||
set(OPTIONS_DEBUG "") # Note: --disable-optimizations can't be used due to http://ffmpeg.org/pipermail/libav-user/2013-March/003945.html
|
||||
set(OPTIONS_RELEASE "")
|
||||
|
||||
if(VCPKG_LIBRARY_LINKAGE STREQUAL "dynamic")
|
||||
set(OPTIONS "${OPTIONS} --disable-static --enable-shared")
|
||||
if (VCPKG_CMAKE_SYSTEM_NAME STREQUAL "WindowsStore")
|
||||
set(OPTIONS "${OPTIONS} --extra-ldflags=-APPCONTAINER --extra-ldflags=WindowsApp.lib")
|
||||
endif()
|
||||
endif()
|
||||
|
||||
message(STATUS "Building Options: ${OPTIONS}")
|
||||
|
||||
message(STATUS "Building ${_csc_PROJECT_PATH} for Release")
|
||||
file(MAKE_DIRECTORY ${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-rel)
|
||||
vcpkg_execute_required_process(
|
||||
COMMAND ${BASH} --noprofile --norc "${CMAKE_CURRENT_LIST_DIR}\\build.sh"
|
||||
"${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-rel" # BUILD DIR
|
||||
"${SOURCE_PATH}" # SOURCE DIR
|
||||
"${CURRENT_PACKAGES_DIR}" # PACKAGE DIR
|
||||
"${OPTIONS} ${OPTIONS_RELEASE}"
|
||||
WORKING_DIRECTORY ${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-rel
|
||||
LOGNAME build-${TARGET_TRIPLET}-rel
|
||||
)
|
||||
|
||||
message(STATUS "Building ${_csc_PROJECT_PATH} for Debug")
|
||||
file(MAKE_DIRECTORY ${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-dbg)
|
||||
vcpkg_execute_required_process(
|
||||
COMMAND ${BASH} --noprofile --norc "${CMAKE_CURRENT_LIST_DIR}\\build.sh"
|
||||
"${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-dbg" # BUILD DIR
|
||||
"${SOURCE_PATH}" # SOURCE DIR
|
||||
"${CURRENT_PACKAGES_DIR}/debug" # PACKAGE DIR
|
||||
"${OPTIONS} ${OPTIONS_DEBUG}"
|
||||
WORKING_DIRECTORY ${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-dbg
|
||||
LOGNAME build-${TARGET_TRIPLET}-dbg
|
||||
)
|
||||
|
||||
file(GLOB DEF_FILES ${CURRENT_PACKAGES_DIR}/lib/*.def ${CURRENT_PACKAGES_DIR}/debug/lib/*.def)
|
||||
|
||||
if(VCPKG_TARGET_ARCHITECTURE STREQUAL "arm")
|
||||
set(LIB_MACHINE_ARG /machine:ARM)
|
||||
elseif(VCPKG_TARGET_ARCHITECTURE STREQUAL "x86")
|
||||
set(LIB_MACHINE_ARG /machine:x86)
|
||||
elseif(VCPKG_TARGET_ARCHITECTURE STREQUAL "x64")
|
||||
set(LIB_MACHINE_ARG /machine:x64)
|
||||
else()
|
||||
message(FATAL_ERROR "Unsupported target architecture")
|
||||
endif()
|
||||
|
||||
foreach(DEF_FILE ${DEF_FILES})
|
||||
get_filename_component(DEF_FILE_DIR "${DEF_FILE}" DIRECTORY)
|
||||
get_filename_component(DEF_FILE_NAME "${DEF_FILE}" NAME)
|
||||
string(REGEX REPLACE "-[0-9]*\\.def" ".lib" OUT_FILE_NAME "${DEF_FILE_NAME}")
|
||||
file(TO_NATIVE_PATH "${DEF_FILE}" DEF_FILE_NATIVE)
|
||||
file(TO_NATIVE_PATH "${DEF_FILE_DIR}/${OUT_FILE_NAME}" OUT_FILE_NATIVE)
|
||||
message(STATUS "Generating ${OUT_FILE_NATIVE}")
|
||||
vcpkg_execute_required_process(
|
||||
COMMAND lib.exe /def:${DEF_FILE_NATIVE} /out:${OUT_FILE_NATIVE} ${LIB_MACHINE_ARG}
|
||||
WORKING_DIRECTORY ${CURRENT_PACKAGES_DIR}
|
||||
LOGNAME libconvert-${TARGET_TRIPLET}
|
||||
if(VCPKG_TARGET_IS_WINDOWS)
|
||||
vcpkg_extract_source_archive_ex(
|
||||
OUT_SOURCE_PATH SOURCE_PATH
|
||||
ARCHIVE ${ARCHIVE}
|
||||
PATCHES
|
||||
fix-snprintf.patch
|
||||
fix-ssize_t.patch
|
||||
fix-msvc-prj.patch
|
||||
)
|
||||
endforeach()
|
||||
list(APPEND DEL_PROJS "libpcap" "libpcre" "libssh2" "libz")
|
||||
foreach (DEL_PROJ ${DEL_PROJS})
|
||||
file(REMOVE_RECURSE ${SOURCE_PATH}/${DEL_PROJ})
|
||||
endforeach()
|
||||
|
||||
file(GLOB EXP_FILES ${CURRENT_PACKAGES_DIR}/lib/*.exp ${CURRENT_PACKAGES_DIR}/debug/lib/*.exp)
|
||||
file(GLOB LIB_FILES ${CURRENT_PACKAGES_DIR}/bin/*.lib ${CURRENT_PACKAGES_DIR}/debug/bin/*.lib)
|
||||
file(GLOB EXE_FILES ${CURRENT_PACKAGES_DIR}/bin/*.exe ${CURRENT_PACKAGES_DIR}/debug/bin/*.exe)
|
||||
set(FILES_TO_REMOVE ${EXP_FILES} ${LIB_FILES} ${DEF_FILES} ${EXE_FILES})
|
||||
list(LENGTH FILES_TO_REMOVE FILES_TO_REMOVE_LEN)
|
||||
if(FILES_TO_REMOVE_LEN GREATER 0)
|
||||
file(REMOVE ${FILES_TO_REMOVE})
|
||||
# Clear
|
||||
vcpkg_execute_required_process(
|
||||
COMMAND "devenv.exe"
|
||||
"nmap.sln"
|
||||
/Clean
|
||||
WORKING_DIRECTORY ${SOURCE_PATH}/mswin32
|
||||
)
|
||||
|
||||
# Uprade
|
||||
message(STATUS "Upgrade solution...")
|
||||
vcpkg_execute_required_process(
|
||||
COMMAND "devenv.exe"
|
||||
"nmap.sln"
|
||||
/Upgrade
|
||||
WORKING_DIRECTORY ${SOURCE_PATH}/mswin32
|
||||
LOGNAME upgrade-Packet-${TARGET_TRIPLET}
|
||||
)
|
||||
# Build
|
||||
vcpkg_build_msbuild(
|
||||
PROJECT_PATH ${SOURCE_PATH}/mswin32/nmap.vcxproj
|
||||
PLATFORM ${MSBUILD_PLATFORM}
|
||||
USE_VCPKG_INTEGRATION
|
||||
)
|
||||
|
||||
# Install
|
||||
if (NOT CMAKE_BUILD_TYPE OR CMAKE_BUILD_TYPE STREQUAL Release)
|
||||
file(INSTALL ${SOURCE_PATH}/mswin32/Release/nmap.exe
|
||||
${SOURCE_PATH}/mswin32/Release/nmap.pdb
|
||||
DESTINATION ${CURRENT_PACKAGES_DIR}/tools)
|
||||
endif()
|
||||
if (NOT CMAKE_BUILD_TYPE OR CMAKE_BUILD_TYPE STREQUAL Debug)
|
||||
file(INSTALL ${SOURCE_PATH}/mswin32/Debug/nmap.exe
|
||||
${SOURCE_PATH}/mswin32/Debug/nmap.pdb
|
||||
DESTINATION ${CURRENT_PACKAGES_DIR}/tools)
|
||||
endif()
|
||||
else()
|
||||
foreach(BUILD_TYPE rel dbg)
|
||||
file(REMOVE_RECURSE ${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-${BUILD_TYPE})
|
||||
file(MAKE_DIRECTORY ${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-${BUILD_TYPE})
|
||||
# Since nmap makefile has strong relationshop with codes, copy codes to obj path
|
||||
vcpkg_extract_source_archive(${ARCHIVE} ${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-${BUILD_TYPE})
|
||||
endforeach()
|
||||
set(OPTIONS --without-nmap-update --with-openssl=${CURRENT_INSTALLED_DIR} --with-libssh2=${CURRENT_INSTALLED_DIR} --with-libz=${CURRENT_INSTALLED_DIR} --with-libpcre=${CURRENT_INSTALLED_DIR})
|
||||
message(STATUS "Building Options: ${OPTIONS}")
|
||||
|
||||
if (NOT CMAKE_BUILD_TYPE OR CMAKE_BUILD_TYPE STREQUAL Release)
|
||||
message(STATUS "Configuring ${TARGET_TRIPLET}-rel")
|
||||
set(SOURCE_PATH_RELEASE ${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-rel/nmap-7.70)
|
||||
vcpkg_execute_required_process(
|
||||
COMMAND "./configure" ${OPTIONS}
|
||||
WORKING_DIRECTORY ${SOURCE_PATH_RELEASE}
|
||||
LOGNAME config-${TARGET_TRIPLET}-rel
|
||||
)
|
||||
|
||||
message(STATUS "Building ${TARGET_TRIPLET}-rel")
|
||||
vcpkg_execute_required_process(
|
||||
COMMAND make
|
||||
WORKING_DIRECTORY ${SOURCE_PATH_RELEASE}
|
||||
LOGNAME build-${TARGET_TRIPLET}-rel
|
||||
)
|
||||
|
||||
message(STATUS "Installing ${TARGET_TRIPLET}-rel")
|
||||
file(INSTALL ${SOURCE_PATH_RELEASE}/nmap DESTINATION ${CURRENT_PACKAGES_DIR}/tools)
|
||||
endif()
|
||||
|
||||
if (NOT CMAKE_BUILD_TYPE OR CMAKE_BUILD_TYPE STREQUAL Debug)
|
||||
message(STATUS "Configuring ${TARGET_TRIPLET}-dbg")
|
||||
set(SOURCE_PATH_DEBUG ${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-dbg/nmap-7.70)
|
||||
vcpkg_execute_required_process(
|
||||
COMMAND "./configure" ${OPTIONS}
|
||||
WORKING_DIRECTORY ${SOURCE_PATH_DEBUG}
|
||||
LOGNAME config-${TARGET_TRIPLET}-dbg
|
||||
)
|
||||
|
||||
message(STATUS "Building ${TARGET_TRIPLET}-dbg")
|
||||
vcpkg_execute_required_process(
|
||||
COMMAND make
|
||||
WORKING_DIRECTORY ${SOURCE_PATH_DEBUG}
|
||||
LOGNAME build-${TARGET_TRIPLET}-dbg
|
||||
)
|
||||
|
||||
message(STATUS "Installing ${TARGET_TRIPLET}-dbg")
|
||||
file(INSTALL ${SOURCE_PATH_RELEASE}/nmap DESTINATION ${CURRENT_PACKAGES_DIR}/debug/tools)
|
||||
endif()
|
||||
|
||||
set(SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-rel/nmap-7.70)
|
||||
endif()
|
||||
file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include ${CURRENT_PACKAGES_DIR}/debug/share)
|
||||
|
||||
vcpkg_copy_pdbs()
|
||||
|
||||
# Handle copyright
|
||||
# TODO: Examine build log and confirm that this license matches the build output
|
||||
file(RENAME ${CURRENT_PACKAGES_DIR}/COPYING ${CURRENT_PACKAGES_DIR}/copyright)
|
||||
file(INSTALL ${SOURCE_PATH}/COPYING DESTINATION ${CURRENT_PACKAGES_DIR}/share/${PORT} RENAME copyright)
|
||||
|
@ -1,3 +1,4 @@
|
||||
Source: ogdf
|
||||
Version: 2018-03-28-2
|
||||
Version: 2019-08-23
|
||||
Homepage: https://github.com/ogdf/ogdf
|
||||
Description: Open Graph Drawing Framework
|
||||
|
@ -1,11 +1,12 @@
|
||||
include(vcpkg_common_functions)
|
||||
set(SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src/2018-03-28/OGDF-snapshot)
|
||||
vcpkg_download_distfile(ARCHIVE
|
||||
URLS "http://www.ogdf.net/lib/exe/fetch.php/tech%3aogdf-snapshot-2018-03-28.zip"
|
||||
FILENAME "ogdf-2018-03-28.zip"
|
||||
SHA512 a6ddb33bc51dca4d59fcac65ff66459043b11ce5303e9d40e4fc1756adf84a0af7d0ac7debab670111e7a145dcdd9373c0e350d5b7e831b169811f246b6e19b6
|
||||
|
||||
vcpkg_from_github(
|
||||
OUT_SOURCE_PATH SOURCE_PATH
|
||||
REPO ogdf/ogdf
|
||||
REF 8a103cf3a7dfff87fe8b7534575604bc53c0870c
|
||||
SHA512 264e8586be7a18640f253eb7b289dd99f1f2fc42c4d2304ab12f7c6aa9c5754b710642e7296038aea0cd9368d732d0106501fefed800743b403adafff7e3f0b2
|
||||
HEAD_REF master
|
||||
)
|
||||
vcpkg_extract_source_archive(${ARCHIVE} ${CURRENT_BUILDTREES_DIR}/src/2018-03-28)
|
||||
|
||||
vcpkg_configure_cmake(
|
||||
SOURCE_PATH ${SOURCE_PATH}
|
||||
|
@ -1,5 +1,5 @@
|
||||
Source: opencv3
|
||||
Version: 3.4.7
|
||||
Version: 3.4.7-1
|
||||
Build-Depends: protobuf, zlib
|
||||
Homepage: https://github.com/opencv/opencv
|
||||
Description: computer vision library
|
||||
|
@ -204,7 +204,7 @@ endif()
|
||||
vcpkg_configure_cmake(
|
||||
PREFER_NINJA
|
||||
SOURCE_PATH ${SOURCE_PATH}
|
||||
OPTIONS
|
||||
OPTIONS ${FEATURE_OPTIONS}
|
||||
###### ocv_options
|
||||
-DOpenCV_INSTALL_BINARIES_PREFIX=
|
||||
-DOPENCV_LIB_INSTALL_PATH=lib
|
||||
|
@ -1,5 +1,5 @@
|
||||
Source: openni2
|
||||
Version: 2.2.0.33-9
|
||||
Version: 2.2.0.33-10
|
||||
Build-Depends: kinectsdk1
|
||||
Homepage: https://github.com/OpenNI/OpenNI2
|
||||
Description: OpenNI is open source library for access to Natural Interaction (NI) devices such as RGB-D camera.
|
||||
|
@ -1,8 +1,15 @@
|
||||
include(vcpkg_common_functions)
|
||||
|
||||
if (VCPKG_CMAKE_SYSTEM_NAME STREQUAL "WindowsStore")
|
||||
message(FATAL_ERROR "Error: UWP builds are currently not supported.")
|
||||
endif()
|
||||
|
||||
find_path(COR_H_PATH cor.h)
|
||||
if(COR_H_PATH MATCHES "NOTFOUND")
|
||||
message(FATAL_ERROR "Could not find <cor.h>. Ensure the NETFXSDK is installed.")
|
||||
endif()
|
||||
get_filename_component(NETFXSDK_PATH "${COR_H_PATH}/../.." ABSOLUTE)
|
||||
|
||||
vcpkg_check_linkage(ONLY_DYNAMIC_LIBRARY ONLY_DYNAMIC_CRT)
|
||||
|
||||
vcpkg_from_github(
|
||||
@ -11,13 +18,9 @@ vcpkg_from_github(
|
||||
REF 2.2-beta2
|
||||
SHA512 60a3a3043679f3069aea869e92dc5881328ce4393d4140ea8d089027321ac501ae27d283657214e2834d216d0d49bf4f29a4b3d3e43df27a6ed21f889cd0083f
|
||||
HEAD_REF master
|
||||
)
|
||||
|
||||
vcpkg_apply_patches(
|
||||
SOURCE_PATH ${SOURCE_PATH}
|
||||
PATCHES "${CMAKE_CURRENT_LIST_DIR}/upgrade_projects.patch"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/inherit_from_parent_or_project_defaults.patch"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/replace_environment_variable.patch"
|
||||
PATCHES upgrade_projects.patch
|
||||
inherit_from_parent_or_project_defaults.patch
|
||||
replace_environment_variable.patch
|
||||
)
|
||||
|
||||
file(REMOVE_RECURSE ${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET})
|
||||
@ -34,6 +37,7 @@ configure_file("${SOURCE_PATH}/Source/Drivers/Kinect/Kinect.vcxproj" "${SOURCE_P
|
||||
# Build OpenNI2
|
||||
vcpkg_build_msbuild(
|
||||
PROJECT_PATH "${SOURCE_PATH}/OpenNI.sln"
|
||||
OPTIONS "/p:DotNetSdkRoot=${NETFXSDK_PATH}/"
|
||||
)
|
||||
|
||||
# Install OpenNI2
|
||||
|
15
ports/orc/0004-update-tzdata.patch
Normal file
15
ports/orc/0004-update-tzdata.patch
Normal file
@ -0,0 +1,15 @@
|
||||
diff --git a/cmake_modules/ThirdpartyToolchain.cmake b/cmake_modules/ThirdpartyToolchain.cmake
|
||||
index 1a28b1ae..74f0e61c 100644
|
||||
--- a/cmake_modules/ThirdpartyToolchain.cmake
|
||||
+++ b/cmake_modules/ThirdpartyToolchain.cmake
|
||||
@@ -228,8 +228,8 @@ endif ()
|
||||
|
||||
if (WIN32)
|
||||
ExternalProject_Add(tzdata_ep
|
||||
- URL "ftp://cygwin.osuosl.org/pub/cygwin/noarch/release/tzdata/tzdata-2018c-1.tar.xz"
|
||||
- URL_HASH MD5=F69FCA5C906FAFF02462D3D06F28267C
|
||||
+ URL "ftp://cygwin.osuosl.org/pub/cygwin/noarch/release/tzdata/tzdata-2019b-1.tar.xz"
|
||||
+ URL_HASH MD5=17D8AB346BB1009D4EB35BC08040E51D
|
||||
CONFIGURE_COMMAND ""
|
||||
BUILD_COMMAND ""
|
||||
INSTALL_COMMAND "")
|
@ -1,4 +1,5 @@
|
||||
Source: orc
|
||||
Version: 1.5.6
|
||||
Homepage: https://orc.apache.org/
|
||||
Build-Depends: zlib, protobuf, lz4, snappy, zstd, gtest
|
||||
Description: The smallest, fastest columnar storage for Hadoop workloads.
|
||||
|
@ -8,6 +8,7 @@ vcpkg_from_github(
|
||||
HEAD_REF master
|
||||
PATCHES
|
||||
0003-dependencies-from-vcpkg.patch
|
||||
0004-update-tzdata.patch
|
||||
no-werror.patch
|
||||
)
|
||||
|
||||
|
4
ports/outcome/CONTROL
Normal file
4
ports/outcome/CONTROL
Normal file
@ -0,0 +1,4 @@
|
||||
Source: outcome
|
||||
Version: 2.1
|
||||
Homepage: https://github.com/ned14/outcome
|
||||
Description: Provides very lightweight outcome<T> and result<T> (non-Boost edition)
|
16
ports/outcome/portfile.cmake
Normal file
16
ports/outcome/portfile.cmake
Normal file
@ -0,0 +1,16 @@
|
||||
# single header file
|
||||
|
||||
include(vcpkg_common_functions)
|
||||
|
||||
vcpkg_from_github(
|
||||
OUT_SOURCE_PATH SOURCE_PATH
|
||||
REPO ned14/outcome
|
||||
REF 525478ed519d7c3400d60110649c315d705a07ad #v2.1
|
||||
SHA512 cf05f7c09ced02fa5fe3d9ad6533358a2fb63e31b5d5be81c16c285250cd275467217b8f9364b4ff1947d8c4aa6a86e10cef310d8475dcd9f7a0a713f1a01c8e
|
||||
HEAD_REF develop
|
||||
)
|
||||
|
||||
file(GLOB_RECURSE OUTCOME_HEADERS "${SOURCE_PATH}/single-header/*.hpp")
|
||||
file(INSTALL ${OUTCOME_HEADERS} DESTINATION ${CURRENT_PACKAGES_DIR}/include)
|
||||
|
||||
file(INSTALL ${SOURCE_PATH}/Licence.txt DESTINATION ${CURRENT_PACKAGES_DIR}/share/${PORT} RENAME copyright)
|
@ -1,3 +1,3 @@
|
||||
Source: pcre
|
||||
Version: 8.41-2
|
||||
Description: Perl Compatible Regular Expresions
|
||||
Description: Perl Compatible Regular Expressions
|
||||
|
@ -10,7 +10,7 @@ set(PCRE_VERSION 8.41)
|
||||
include(vcpkg_common_functions)
|
||||
set(SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src/pcre-${PCRE_VERSION})
|
||||
vcpkg_download_distfile(ARCHIVE
|
||||
URLS "ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/pcre-${PCRE_VERSION}.zip"
|
||||
URLS "https://ftp.pcre.org/pub/pcre/pcre-${PCRE_VERSION}.zip"
|
||||
"https://downloads.sourceforge.net/project/pcre/pcre/${PCRE_VERSION}/pcre-${PCRE_VERSION}.zip"
|
||||
FILENAME "pcre-${PCRE_VERSION}.zip"
|
||||
SHA512 a3fd57090a5d9ce9d608aeecd59f42f04deea5b86a5c5899bdb25b18d8ec3a89b2b52b62e325c6485a87411eb65f1421604f80c3eaa653bd7dbab05ad22795ea
|
||||
|
@ -1,5 +1,5 @@
|
||||
Source: poco
|
||||
Version: 1.9.2
|
||||
Version: 1.9.2-1
|
||||
Build-Depends: expat, libpq, pcre, sqlite3, zlib, libpng
|
||||
Description: Modern, powerful open source C++ class libraries for building network and internet-based applications that run on desktop, server, mobile and embedded systems.
|
||||
Homepage: https://github.com/pocoproject/poco
|
||||
@ -15,3 +15,7 @@ Description: MariaDB support for POCO
|
||||
Feature: postgresql
|
||||
Build-Depends: libpqxx
|
||||
Description: PostgreSQL support for POCO
|
||||
|
||||
Feature: pdf
|
||||
Build-Depends: libharu
|
||||
Description: Haru support for POCO
|
||||
|
@ -13,8 +13,8 @@ vcpkg_from_github(
|
||||
include_pcre.patch
|
||||
# Fix embedded copy of pcre in static linking mode
|
||||
static_pcre.patch
|
||||
# Fix source path of PDF
|
||||
unbundled_pdf.patch
|
||||
# Use vcpkg installed libharu for feature pdf
|
||||
use-vcpkg-libharu.patch
|
||||
# Add the support of arm64-windows
|
||||
arm64_pcre.patch
|
||||
fix_foundation_link.patch
|
||||
@ -24,6 +24,10 @@ vcpkg_from_github(
|
||||
string(COMPARE EQUAL "${VCPKG_LIBRARY_LINKAGE}" "static" POCO_STATIC)
|
||||
string(COMPARE EQUAL "${VCPKG_CRT_LINKAGE}" "static" POCO_MT)
|
||||
|
||||
vcpkg_check_features(OUT_FEATURE_OPTIONS FEATURE_OPTIONS
|
||||
pdf ENABLE_PDF
|
||||
)
|
||||
|
||||
# MySQL / MariaDDB feature
|
||||
if("mysql" IN_LIST FEATURES OR "mariadb" IN_LIST FEATURES)
|
||||
if("mysql" IN_LIST FEATURES)
|
||||
@ -43,7 +47,7 @@ endif()
|
||||
vcpkg_configure_cmake(
|
||||
SOURCE_PATH ${SOURCE_PATH}
|
||||
#PREFER_NINJA
|
||||
OPTIONS
|
||||
OPTIONS ${FEATURE_OPTIONS}
|
||||
# Set to OFF|ON (default is OFF) to control linking dependencies as external
|
||||
-DPOCO_UNBUNDLED=ON
|
||||
# Define linking feature
|
||||
@ -63,7 +67,6 @@ vcpkg_configure_cmake(
|
||||
-DENABLE_MONGODB=ON
|
||||
# -DPOCO_ENABLE_SQL_SQLITE=ON # SQLITE are not supported.
|
||||
-DENABLE_REDIS=ON
|
||||
-DENABLE_PDF=ON
|
||||
-DENABLE_UTIL=ON
|
||||
-DENABLE_NET=ON
|
||||
-DENABLE_SEVENZIP=ON
|
||||
|
@ -1,30 +0,0 @@
|
||||
diff --git a/PDF/CMakeLists.txt b/PDF/CMakeLists.txt
|
||||
index 3e44906..ae8fe6e 100644
|
||||
--- a/PDF/CMakeLists.txt
|
||||
+++ b/PDF/CMakeLists.txt
|
||||
@@ -97,6 +97,8 @@ POCO_SOURCES(SRCS hpdf
|
||||
|
||||
# TODO: Currently only bundled is supported, in future this should also be possible
|
||||
# with an unbundled version of libpng
|
||||
+find_package(PNG REQUIRED)
|
||||
+if (0)
|
||||
POCO_SOURCES( SRCS libpng
|
||||
src/png.c
|
||||
src/pngerror.c
|
||||
@@ -117,6 +119,7 @@ POCO_SOURCES( SRCS libpng
|
||||
src/pngwtran.c
|
||||
src/pngwutil.c
|
||||
)
|
||||
+endif(0)
|
||||
|
||||
# Version Resource
|
||||
if(MSVC AND NOT POCO_STATIC)
|
||||
@@ -136,7 +139,7 @@ set_target_properties( "${LIBNAME}"
|
||||
DEFINE_SYMBOL PDF_EXPORTS
|
||||
)
|
||||
|
||||
-target_link_libraries( "${LIBNAME}" ${SYSLIBS} XML Util Foundation )
|
||||
+target_link_libraries( "${LIBNAME}" ${SYSLIBS} XML Util Foundation ${PNG_LIBRARIES})
|
||||
target_include_directories( "${LIBNAME}"
|
||||
PUBLIC
|
||||
$<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>
|
18
ports/poco/use-vcpkg-libharu.patch
Normal file
18
ports/poco/use-vcpkg-libharu.patch
Normal file
@ -0,0 +1,18 @@
|
||||
diff --git a/CMakeLists.txt b/CMakeLists.txt
|
||||
index 5f8a2a6..1ffd0a0 100644
|
||||
--- a/CMakeLists.txt
|
||||
+++ b/CMakeLists.txt
|
||||
@@ -195,8 +195,11 @@ if(EXISTS ${PROJECT_SOURCE_DIR}/Redis AND ENABLE_REDIS)
|
||||
add_subdirectory(Redis)
|
||||
list(APPEND Poco_COMPONENTS "Redis")
|
||||
endif()
|
||||
-if(EXISTS ${PROJECT_SOURCE_DIR}/PDF AND ENABLE_PDF)
|
||||
-add_subdirectory(PDF)
|
||||
+if(ENABLE_PDF)
|
||||
+include(SelectLibraryConfigurations)
|
||||
+find_library(PocoPDF_LIBRARY_RELEASE NAMES libhpdf)
|
||||
+find_library(PocoPDF_LIBRARY_DEBUG NAMES libhpdfd)
|
||||
+select_library_configurations(PocoPDF)
|
||||
list(APPEND Poco_COMPONENTS "PDF")
|
||||
endif()
|
||||
|
@ -1,6 +1,6 @@
|
||||
Source: wpilib
|
||||
Version: 2019.5.1
|
||||
Build-Depends: libuv
|
||||
Version: 2019.6.1
|
||||
Build-Depends: eigen3, libuv
|
||||
Description: WPILib is the software library package for the FIRST Robotics Competition. The core install includes wpiutil, a common utilies library, and ntcore, the base NetworkTables library.
|
||||
|
||||
Feature: cameraserver
|
||||
@ -8,5 +8,5 @@ Build-Depends: opencv
|
||||
Description: Enables the CameraServer and CSCore libraries for manipulating USB Cameras and HTTP Camera Streams
|
||||
|
||||
Feature: allwpilib
|
||||
Build-Depends: wpilib[cameraserver] opencv
|
||||
Build-Depends: wpilib[cameraserver], opencv
|
||||
Description: Enables the simulation HAL, and the high level wpilibc library.
|
||||
|
@ -3,8 +3,8 @@ include(vcpkg_common_functions)
|
||||
vcpkg_from_github(
|
||||
OUT_SOURCE_PATH SOURCE_PATH
|
||||
REPO wpilibsuite/allwpilib
|
||||
REF 3dfb01d45b971ffdfeea50ce58653eff592807d9
|
||||
SHA512 188923cbe166f5812a24a06d8af56bda289aaed38231d45583d423e51e9cd23bb257ade02fdc26e8d0fdd6cdcb793282c04ac80ebad76f29fdbd0a3c1a10f05c
|
||||
REF d10a1a797720014197c21dee38fdced73454dca4
|
||||
SHA512 a76e8652b6d6a921d466e08bcf162ee1b28c06af031b616b2333f8a9479ffd12d1c301182dac86e5d7d59909a21cbee4e551028393df80671336546c14ecf606
|
||||
)
|
||||
|
||||
set(WITHOUT_JAVA ON)
|
||||
@ -28,6 +28,7 @@ vcpkg_configure_cmake(
|
||||
-DWITHOUT_CSCORE=${WITHOUT_CSCORE}
|
||||
-DWITHOUT_ALLWPILIB=${WITHOUT_ALLWPILIB}
|
||||
-DUSE_VCPKG_LIBUV=ON
|
||||
-DUSE_VCPKG_EIGEN=ON
|
||||
-DFLAT_INSTALL_WPILIB=ON
|
||||
)
|
||||
vcpkg_install_cmake()
|
||||
|
13
ports/yaml-cpp/0002-fix-include-path.patch
Normal file
13
ports/yaml-cpp/0002-fix-include-path.patch
Normal file
@ -0,0 +1,13 @@
|
||||
diff --git a/CMakeLists.txt b/CMakeLists.txt
|
||||
index d2d8810..c4d4be1 100644
|
||||
--- a/CMakeLists.txt
|
||||
+++ b/CMakeLists.txt
|
||||
@@ -326,7 +326,7 @@ else()
|
||||
set(INSTALL_CMAKE_DIR ${LIB_INSTALL_DIR}/cmake/yaml-cpp)
|
||||
endif()
|
||||
|
||||
-file(RELATIVE_PATH REL_INCLUDE_DIR "${CMAKE_INSTALL_PREFIX}/${INSTALL_CMAKE_DIR}" "${CMAKE_INSTALL_PREFIX}/${INCLUDE_INSTALL_ROOT_DIR}")
|
||||
+set(REL_INCLUDE_DIR "../../include")
|
||||
set(CONFIG_INCLUDE_DIRS "\${YAML_CPP_CMAKE_DIR}/${REL_INCLUDE_DIR}")
|
||||
configure_file(${CMAKE_CURRENT_SOURCE_DIR}/yaml-cpp-config.cmake.in
|
||||
"${PROJECT_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/yaml-cpp-config.cmake" @ONLY)
|
@ -1,4 +1,4 @@
|
||||
Source: yaml-cpp
|
||||
Version: 0.6.2-2
|
||||
Version: 0.6.2-3
|
||||
Homepage: https://github.com/jbeder/yaml-cpp
|
||||
Description: yaml-cpp is a YAML parser and emitter in C++ matching the YAML 1.2 spec.
|
||||
|
@ -6,7 +6,8 @@ vcpkg_from_github(
|
||||
SHA512 fea8ce0a20a00cbc75023d1db442edfcd32d0ac57a3c41b32ec8d56f87cc1d85d7dd7a923ce662f5d3a315f91a736d6be0d649997acd190915c1d68cc93795e4
|
||||
HEAD_REF master
|
||||
PATCHES
|
||||
${CMAKE_CURRENT_LIST_DIR}/0001-noexcept.patch
|
||||
0001-noexcept.patch
|
||||
0002-fix-include-path.patch
|
||||
)
|
||||
|
||||
vcpkg_configure_cmake(
|
||||
@ -26,32 +27,6 @@ if(EXISTS ${CURRENT_PACKAGES_DIR}/lib/cmake/yaml-cpp)
|
||||
vcpkg_fixup_cmake_targets(CONFIG_PATH lib/cmake/yaml-cpp)
|
||||
endif()
|
||||
|
||||
# Adjust paths and remove hardcoded ones from the config files
|
||||
file(READ ${CURRENT_PACKAGES_DIR}/share/yaml-cpp/yaml-cpp-config.cmake YAML_CONFIG)
|
||||
string(REPLACE "set(YAML_CPP_INCLUDE_DIR \"\${YAML_CPP_CMAKE_DIR}/../include\")"
|
||||
"set(YAML_CPP_INCLUDE_DIR \"\${YAML_CPP_CMAKE_DIR}/../../include\")" YAML_CONFIG "${YAML_CONFIG}")
|
||||
file(WRITE ${CURRENT_PACKAGES_DIR}/share/yaml-cpp/yaml-cpp-config.cmake "${YAML_CONFIG}")
|
||||
|
||||
file(READ ${CURRENT_PACKAGES_DIR}/share/yaml-cpp/yaml-cpp-targets.cmake YAML_CONFIG)
|
||||
string(REPLACE "set(_IMPORT_PREFIX \"${CURRENT_PACKAGES_DIR}\")"
|
||||
"get_filename_component(_IMPORT_PREFIX \"\${CMAKE_CURRENT_LIST_FILE}\" PATH)
|
||||
get_filename_component(_IMPORT_PREFIX \"\${_IMPORT_PREFIX}\" PATH)
|
||||
get_filename_component(_IMPORT_PREFIX \"\${_IMPORT_PREFIX}\" PATH)" YAML_CONFIG "${YAML_CONFIG}")
|
||||
file(WRITE ${CURRENT_PACKAGES_DIR}/share/yaml-cpp/yaml-cpp-targets.cmake "${YAML_CONFIG}")
|
||||
|
||||
set(_targets_cmake_conf)
|
||||
if(NOT DEFINED VCPKG_BUILD_TYPE OR VCPKG_BUILD_TYPE STREQUAL "debug")
|
||||
list(APPEND _targets_cmake_conf "debug")
|
||||
endif()
|
||||
if(NOT DEFINED VCPKG_BUILD_TYPE OR VCPKG_BUILD_TYPE STREQUAL "release")
|
||||
list(APPEND _targets_cmake_conf "release")
|
||||
endif()
|
||||
foreach(CONF ${_targets_cmake_conf})
|
||||
file(READ ${CURRENT_PACKAGES_DIR}/share/yaml-cpp/yaml-cpp-targets-${CONF}.cmake YAML_CONFIG)
|
||||
string(REPLACE "${CURRENT_PACKAGES_DIR}" "\${_IMPORT_PREFIX}" YAML_CONFIG "${YAML_CONFIG}")
|
||||
file(WRITE ${CURRENT_PACKAGES_DIR}/share/yaml-cpp/yaml-cpp-targets-${CONF}.cmake "${YAML_CONFIG}")
|
||||
endforeach()
|
||||
|
||||
# Remove debug include files
|
||||
file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include)
|
||||
|
||||
|
20
scripts/cmake/execute_process.cmake
Normal file
20
scripts/cmake/execute_process.cmake
Normal file
@ -0,0 +1,20 @@
|
||||
## # execute_process
|
||||
##
|
||||
## Intercepts all calls to execute_process() inside portfiles and fails when Download Mode
|
||||
## is enabled.
|
||||
##
|
||||
## In order to execute a process in Download Mode call `_execute_process()` instead.
|
||||
##
|
||||
if (NOT DEFINED OVERRIDEN_EXECUTE_PROCESS)
|
||||
set(OVERRIDEN_EXECUTE_PROCESS ON)
|
||||
|
||||
if (DEFINED VCPKG_DOWNLOAD_MODE)
|
||||
function(execute_process)
|
||||
message(FATAL_ERROR "This command cannot be executed in Download Mode.\nHalting portfile execution.\n")
|
||||
endfunction()
|
||||
else()
|
||||
function(execute_process)
|
||||
_execute_process(${ARGV})
|
||||
endfunction()
|
||||
endif()
|
||||
endif()
|
@ -81,15 +81,15 @@ function(vcpkg_acquire_msys PATH_TO_ROOT_OUT)
|
||||
|
||||
file(REMOVE_RECURSE ${TOOLPATH}/${TOOLSUBPATH})
|
||||
file(MAKE_DIRECTORY ${TOOLPATH})
|
||||
execute_process(
|
||||
_execute_process(
|
||||
COMMAND ${CMAKE_COMMAND} -E tar xzf ${ARCHIVE_PATH}
|
||||
WORKING_DIRECTORY ${TOOLPATH}
|
||||
)
|
||||
execute_process(
|
||||
_execute_process(
|
||||
COMMAND ${PATH_TO_ROOT}/usr/bin/bash.exe --noprofile --norc -c "PATH=/usr/bin;pacman-key --init;pacman-key --populate"
|
||||
WORKING_DIRECTORY ${TOOLPATH}
|
||||
)
|
||||
execute_process(
|
||||
_execute_process(
|
||||
COMMAND ${PATH_TO_ROOT}/usr/bin/bash.exe --noprofile --norc -c "PATH=/usr/bin;pacman -Syu --noconfirm"
|
||||
WORKING_DIRECTORY ${TOOLPATH}
|
||||
)
|
||||
@ -104,6 +104,7 @@ function(vcpkg_acquire_msys PATH_TO_ROOT_OUT)
|
||||
set(_ENV_ORIGINAL $ENV{PATH})
|
||||
set(ENV{PATH} ${PATH_TO_ROOT}/usr/bin)
|
||||
vcpkg_execute_required_process(
|
||||
ALLOW_IN_DOWNLOAD_MODE
|
||||
COMMAND ${PATH_TO_ROOT}/usr/bin/bash.exe --noprofile --norc -c "pacman -Sy --noconfirm --needed ${_am_PACKAGES}"
|
||||
WORKING_DIRECTORY ${TOOLPATH}
|
||||
LOGNAME msys-pacman-${TARGET_TRIPLET}
|
||||
@ -116,6 +117,7 @@ function(vcpkg_acquire_msys PATH_TO_ROOT_OUT)
|
||||
# Deal with a stale process created by MSYS
|
||||
if (NOT VCPKG_CMAKE_SYSTEM_NAME OR VCPKG_CMAKE_SYSTEM_NAME STREQUAL "WindowsStore")
|
||||
vcpkg_execute_required_process(
|
||||
ALLOW_IN_DOWNLOAD_MODE
|
||||
COMMAND TASKKILL /F /IM gpg-agent.exe /fi "memusage gt 2"
|
||||
WORKING_DIRECTORY ${SOURCE_PATH}
|
||||
)
|
||||
|
@ -40,7 +40,7 @@ function(vcpkg_apply_patches)
|
||||
get_filename_component(ABSOLUTE_PATCH "${PATCH}" ABSOLUTE BASE_DIR "${CURRENT_PORT_DIR}")
|
||||
message(STATUS "Applying patch ${PATCH}")
|
||||
set(LOGNAME patch-${TARGET_TRIPLET}-${PATCHNUM})
|
||||
execute_process(
|
||||
_execute_process(
|
||||
COMMAND ${GIT} --work-tree=. --git-dir=.git apply "${ABSOLUTE_PATCH}" --ignore-whitespace --whitespace=nowarn --verbose
|
||||
OUTPUT_FILE ${CURRENT_BUILDTREES_DIR}/${LOGNAME}-out.log
|
||||
ERROR_FILE ${CURRENT_BUILDTREES_DIR}/${LOGNAME}-err.log
|
||||
|
@ -1,3 +1,4 @@
|
||||
include(execute_process)
|
||||
include(vcpkg_acquire_msys)
|
||||
include(vcpkg_add_to_path)
|
||||
include(vcpkg_check_features)
|
||||
|
@ -120,7 +120,7 @@ function(vcpkg_download_distfile VAR)
|
||||
list(APPEND request_headers "--header=${header}")
|
||||
endforeach()
|
||||
endif()
|
||||
execute_process(
|
||||
_execute_process(
|
||||
COMMAND ${ARIA2} ${vcpkg_download_distfile_URLS}
|
||||
-o temp/${vcpkg_download_distfile_FILENAME}
|
||||
-l download-${vcpkg_download_distfile_FILENAME}-detailed.log
|
||||
|
@ -11,6 +11,10 @@
|
||||
## )
|
||||
## ```
|
||||
## ## Parameters
|
||||
## ### ALLOW_IN_DOWNLOAD_MODE
|
||||
## Allows the command to execute in Download Mode.
|
||||
## [See execute_process() override](../../scripts/cmake/execute_process.cmake).
|
||||
##
|
||||
## ### COMMAND
|
||||
## The command to be executed, along with its arguments.
|
||||
##
|
||||
@ -30,10 +34,20 @@
|
||||
## * [qt5](https://github.com/Microsoft/vcpkg/blob/master/ports/qt5/portfile.cmake)
|
||||
include(vcpkg_prettify_command)
|
||||
function(vcpkg_execute_required_process)
|
||||
cmake_parse_arguments(vcpkg_execute_required_process "" "WORKING_DIRECTORY;LOGNAME" "COMMAND" ${ARGN})
|
||||
cmake_parse_arguments(vcpkg_execute_required_process "ALLOW_IN_DOWNLOAD_MODE" "WORKING_DIRECTORY;LOGNAME" "COMMAND" ${ARGN})
|
||||
set(LOG_OUT "${CURRENT_BUILDTREES_DIR}/${vcpkg_execute_required_process_LOGNAME}-out.log")
|
||||
set(LOG_ERR "${CURRENT_BUILDTREES_DIR}/${vcpkg_execute_required_process_LOGNAME}-err.log")
|
||||
execute_process(
|
||||
|
||||
set(execute_process_function execute_process)
|
||||
if (DEFINED VCPKG_DOWNLOAD_MODE AND NOT vcpkg_execute_required_process_ALLOW_IN_DOWNLOAD_MODE)
|
||||
message(FATAL_ERROR
|
||||
[[
|
||||
This command cannot be executed in Download Mode.
|
||||
Halting portfile execution.
|
||||
]])
|
||||
endif()
|
||||
|
||||
_execute_process(
|
||||
COMMAND ${vcpkg_execute_required_process_COMMAND}
|
||||
OUTPUT_FILE ${LOG_OUT}
|
||||
ERROR_FILE ${LOG_ERR}
|
||||
|
@ -41,6 +41,7 @@ function(vcpkg_extract_source_archive ARCHIVE)
|
||||
message(STATUS "Extracting source ${ARCHIVE}")
|
||||
file(MAKE_DIRECTORY ${WORKING_DIRECTORY})
|
||||
vcpkg_execute_required_process(
|
||||
ALLOW_IN_DOWNLOAD_MODE
|
||||
COMMAND ${CMAKE_COMMAND} -E tar xjf ${ARCHIVE}
|
||||
WORKING_DIRECTORY ${WORKING_DIRECTORY}
|
||||
LOGNAME extract
|
||||
|
@ -302,12 +302,12 @@ function(vcpkg_find_acquire_program VAR)
|
||||
if(ARCHIVE_EXTENSION STREQUAL ".msi")
|
||||
file(TO_NATIVE_PATH "${ARCHIVE_PATH}" ARCHIVE_NATIVE_PATH)
|
||||
file(TO_NATIVE_PATH "${PROG_PATH_SUBDIR}" DESTINATION_NATIVE_PATH)
|
||||
execute_process(
|
||||
_execute_process(
|
||||
COMMAND msiexec /a ${ARCHIVE_NATIVE_PATH} /qn TARGETDIR=${DESTINATION_NATIVE_PATH}
|
||||
WORKING_DIRECTORY ${DOWNLOADS}
|
||||
)
|
||||
else()
|
||||
execute_process(
|
||||
_execute_process(
|
||||
COMMAND ${CMAKE_COMMAND} -E tar xzf ${ARCHIVE_PATH}
|
||||
WORKING_DIRECTORY ${PROG_PATH_SUBDIR}
|
||||
)
|
||||
@ -316,6 +316,7 @@ function(vcpkg_find_acquire_program VAR)
|
||||
|
||||
if(DEFINED POST_INSTALL_COMMAND)
|
||||
vcpkg_execute_required_process(
|
||||
ALLOW_IN_DOWNLOAD_MODE
|
||||
COMMAND ${POST_INSTALL_COMMAND}
|
||||
WORKING_DIRECTORY ${PROG_PATH_SUBDIR}
|
||||
LOGNAME ${VAR}-tool-post-install
|
||||
|
@ -74,16 +74,18 @@ function(vcpkg_from_git)
|
||||
find_program(GIT NAMES git git.cmd)
|
||||
# Note: git init is safe to run multiple times
|
||||
vcpkg_execute_required_process(
|
||||
ALLOW_IN_DOWNLOAD_MODE
|
||||
COMMAND ${GIT} init git-tmp
|
||||
WORKING_DIRECTORY ${DOWNLOADS}
|
||||
LOGNAME git-init-${TARGET_TRIPLET}
|
||||
)
|
||||
vcpkg_execute_required_process(
|
||||
ALLOW_IN_DOWNLOAD_MODE
|
||||
COMMAND ${GIT} fetch ${_vdud_URL} ${_vdud_REF} --depth 1 -n
|
||||
WORKING_DIRECTORY ${DOWNLOADS}/git-tmp
|
||||
LOGNAME git-fetch-${TARGET_TRIPLET}
|
||||
)
|
||||
execute_process(
|
||||
_execute_process(
|
||||
COMMAND ${GIT} rev-parse FETCH_HEAD
|
||||
OUTPUT_VARIABLE REV_PARSE_HEAD
|
||||
ERROR_VARIABLE REV_PARSE_HEAD
|
||||
@ -100,6 +102,7 @@ function(vcpkg_from_git)
|
||||
|
||||
file(MAKE_DIRECTORY "${DOWNLOADS}/temp")
|
||||
vcpkg_execute_required_process(
|
||||
ALLOW_IN_DOWNLOAD_MODE
|
||||
COMMAND ${GIT} archive FETCH_HEAD -o "${TEMP_ARCHIVE}"
|
||||
WORKING_DIRECTORY ${DOWNLOADS}/git-tmp
|
||||
LOGNAME git-archive
|
||||
|
@ -150,7 +150,7 @@ function(vcpkg_from_gitlab)
|
||||
endif()
|
||||
|
||||
# There are issues with the Gitlab API project paths being URL-escaped, so we use git here to get the head revision
|
||||
execute_process(COMMAND ${GIT} ls-remote
|
||||
_execute_process(COMMAND ${GIT} ls-remote
|
||||
"${_vdud_GITLAB_URL}/${ORG_NAME}/${REPO_NAME}.git" "${_vdud_HEAD_REF}"
|
||||
RESULT_VARIABLE _git_result
|
||||
OUTPUT_VARIABLE _git_output
|
||||
|
@ -21,59 +21,4 @@ function(vcpkg_test_cmake)
|
||||
# 2. Select a generator in the same method as vcpkg_configure_cmake() as though the PREFER_NINJA flag was always passed.
|
||||
# 3. Fully emulate the toolchain file for the just-built package (just adding it to CMAKE_PREFIX_PATH is not enough).
|
||||
return()
|
||||
|
||||
cmake_parse_arguments(_tc "MODULE" "PACKAGE_NAME" "" ${ARGN})
|
||||
|
||||
if(NOT DEFINED _tc_PACKAGE_NAME)
|
||||
message(FATAL_ERROR "PACKAGE_NAME must be specified")
|
||||
endif()
|
||||
if(_tc_MODULE)
|
||||
set(PACKAGE_TYPE MODULE)
|
||||
else()
|
||||
set(PACKAGE_TYPE CONFIG)
|
||||
endif()
|
||||
|
||||
if(VCPKG_PLATFORM_TOOLSET STREQUAL "v142")
|
||||
message(STATUS "Skipping CMake integration test due to v142 / CMake interaction issues")
|
||||
return()
|
||||
endif()
|
||||
|
||||
message(STATUS "Performing CMake integration test")
|
||||
file(REMOVE_RECURSE ${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-test)
|
||||
file(MAKE_DIRECTORY ${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-test)
|
||||
|
||||
#Generate Dummy source
|
||||
# set(VCPKG_TEST_SOURCE ${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-test/CMakeIntegration.cpp)
|
||||
# file(WRITE ${VCPKG_TEST_SOURCE} "int main() \{\n")
|
||||
# file(APPEND ${VCPKG_TEST_SOURCE} "return 0;}")
|
||||
# Generate test source CMakeLists.txt
|
||||
set(VCPKG_TEST_CMAKELIST ${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-test/CMakeLists.txt)
|
||||
file(WRITE ${VCPKG_TEST_CMAKELIST} "cmake_minimum_required(VERSION 3.10)\n")
|
||||
file(APPEND ${VCPKG_TEST_CMAKELIST} "set(CMAKE_PREFIX_PATH \"${CURRENT_PACKAGES_DIR};${CURRENT_INSTALLED_DIR}\")\n")
|
||||
file(APPEND ${VCPKG_TEST_CMAKELIST} "\n")
|
||||
file(APPEND ${VCPKG_TEST_CMAKELIST} "find_package(${_tc_PACKAGE_NAME} ${PACKAGE_TYPE} REQUIRED)\n")
|
||||
#To properly test if the package is actually working haveway correctly we have to link all targets of a package to
|
||||
#a test executable and than actually build it. This will not discover if every symbol exported by the library is available/linked
|
||||
#but it will doscover if all files which are linked by a target actual exist. Problem is: How to discover all targets?
|
||||
# file(APPEND ${VCPKG_TEST_CMAKELIST} "add_executable(${_tc_PACKAGE_NAME}_exe ${VCPKG_TEST_SOURCE})\n")
|
||||
# file(APPEND ${VCPKG_TEST_CMAKELIST} "target_link_libraries(${_tc_PACKAGE_NAME}_exe PRIVATE ${_tc_PACKAGE_NAME})\n")
|
||||
|
||||
if(DEFINED _VCPKG_CMAKE_GENERATOR)
|
||||
set(VCPKG_CMAKE_TEST_GENERATOR "${_VCPKG_CMAKE_GENERATOR}")
|
||||
else()
|
||||
set(VCPKG_CMAKE_TEST_GENERATOR Ninja)
|
||||
endif()
|
||||
|
||||
# Run cmake config with a generated CMakeLists.txt
|
||||
set(LOGPREFIX "${CURRENT_BUILDTREES_DIR}/test-cmake-${TARGET_TRIPLET}")
|
||||
execute_process(
|
||||
COMMAND ${CMAKE_COMMAND} -G ${VCPKG_CMAKE_TEST_GENERATOR} .
|
||||
OUTPUT_FILE "${LOGPREFIX}-out.log"
|
||||
ERROR_FILE "${LOGPREFIX}-err.log"
|
||||
RESULT_VARIABLE error_code
|
||||
WORKING_DIRECTORY ${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-test
|
||||
)
|
||||
if(error_code)
|
||||
message(FATAL_ERROR "CMake integration test failed; unable to find_package(${_tc_PACKAGE_NAME} ${PACKAGE_TYPE} REQUIRED)")
|
||||
endif()
|
||||
endfunction()
|
||||
|
@ -1 +1 @@
|
||||
"2019.08.16"
|
||||
"2019.08.27"
|
||||
|
@ -6,6 +6,46 @@
|
||||
|
||||
namespace vcpkg::Hash
|
||||
{
|
||||
std::string get_string_hash(const std::string& s, const std::string& hash_type);
|
||||
std::string get_file_hash(const Files::Filesystem& fs, const fs::path& path, const std::string& hash_type);
|
||||
enum class Algorithm
|
||||
{
|
||||
Sha1,
|
||||
Sha256,
|
||||
Sha512,
|
||||
};
|
||||
|
||||
const char* to_string(Algorithm algo) noexcept;
|
||||
Optional<Algorithm> algorithm_from_string(StringView sv) noexcept;
|
||||
|
||||
struct Hasher
|
||||
{
|
||||
virtual void add_bytes(const void* start, const void* end) noexcept = 0;
|
||||
|
||||
// one may only call this once before calling `clear()` or the dtor
|
||||
virtual std::string get_hash() noexcept = 0;
|
||||
virtual void clear() noexcept = 0;
|
||||
virtual ~Hasher() = default;
|
||||
};
|
||||
|
||||
std::unique_ptr<Hasher> get_hasher_for(Algorithm algo) noexcept;
|
||||
|
||||
std::string get_bytes_hash(const void* first, const void* last, Algorithm algo) noexcept;
|
||||
std::string get_string_hash(StringView s, Algorithm algo) noexcept;
|
||||
std::string get_file_hash(const Files::Filesystem& fs,
|
||||
const fs::path& path,
|
||||
Algorithm algo,
|
||||
std::error_code& ec) noexcept;
|
||||
inline std::string get_file_hash(LineInfo li,
|
||||
const Files::Filesystem& fs,
|
||||
const fs::path& path,
|
||||
Algorithm algo) noexcept
|
||||
{
|
||||
std::error_code ec;
|
||||
const auto result = get_file_hash(fs, path, algo, ec);
|
||||
if (ec)
|
||||
{
|
||||
Checks::exit_with_message(li, "Failure to read file for hashing: %s", ec.message());
|
||||
}
|
||||
|
||||
return result;
|
||||
}
|
||||
}
|
||||
|
@ -12,15 +12,25 @@
|
||||
namespace vcpkg::Strings::details
|
||||
{
|
||||
template<class T>
|
||||
auto to_printf_arg(const T& t) -> decltype(t.to_string())
|
||||
auto to_string(const T& t) -> decltype(t.to_string())
|
||||
{
|
||||
return t.to_string();
|
||||
}
|
||||
|
||||
// first looks up to_string on `T` using ADL; then, if that isn't found,
|
||||
// uses the above definition which returns t.to_string()
|
||||
template<class T, class = std::enable_if_t<!std::is_arithmetic<T>::value>>
|
||||
auto to_printf_arg(const T& t) -> decltype(to_string(t))
|
||||
{
|
||||
return to_string(t);
|
||||
}
|
||||
|
||||
inline const char* to_printf_arg(const std::string& s) { return s.c_str(); }
|
||||
|
||||
inline const char* to_printf_arg(const char* s) { return s; }
|
||||
|
||||
inline const wchar_t* to_printf_arg(const wchar_t* s) { return s; }
|
||||
|
||||
template<class T, class = std::enable_if_t<std::is_arithmetic<T>::value>>
|
||||
T to_printf_arg(T s)
|
||||
{
|
||||
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
x
Reference in New Issue
Block a user