mirror of
https://github.com/microsoft/vcpkg.git
synced 2025-01-18 21:13:04 +08:00
Merge branch 'master' into curl-uwp
This commit is contained in:
commit
7676b8780d
40
CHANGELOG.md
40
CHANGELOG.md
@ -1,3 +1,43 @@
|
||||
vcpkg (0.0.66)
|
||||
--------------
|
||||
* Add ports:
|
||||
- antlr4 4.6
|
||||
- bzip2 1.0.6
|
||||
- dx 1.0.0
|
||||
- gli 0.8.2
|
||||
- libarchive 3.2.2
|
||||
- libffi 3.1
|
||||
- liblzma 5.2.2
|
||||
- libmodplug 0.8.8.5-bb25b05
|
||||
- libsigcpp 2.10
|
||||
- lmdb 0.9.18-1
|
||||
- lz4 1.7.4.2
|
||||
- ogre 1.9.0
|
||||
- qwt 6.1.3
|
||||
- smpeg2 2.0.0
|
||||
- spirv-tools 1.1-f72189c249ba143c6a89a4cf1e7d53337b2ddd40
|
||||
* Update ports:
|
||||
- aws-sdk-cpp 1.0.34-1 -> 1.0.47
|
||||
- azure-storage-cpp 2.5.0 -> 2.6.0
|
||||
- boost 1.62-8 -> 1.62-9
|
||||
- chakracore 1.3.1 -> 1.4.0
|
||||
- freetype 2.6.3-2 -> 2.6.3-3
|
||||
- icu 58.1 -> 58.2-1
|
||||
- libbson 1.5.0-rc6 -> 1.5.1
|
||||
- libvorbis -> 1.3.5-143caf4023a90c09a5eb685fdd46fb9b9c36b1ee
|
||||
- lua 5.3.3-1 -> 5.3.3-2
|
||||
- mongo-c-driver 1.5.0-rc6 -> 1.5.1
|
||||
- pixman 0.34.0 -> 0.34.0-1
|
||||
- qt5 5.7-1 -> 5.7.1-2
|
||||
- sdl2 2.0.5 -> 2.0.5-2
|
||||
- zlib 1.2.8 -> 1.2.10
|
||||
* Improvements in pre-install checks:
|
||||
- Refactor file-exists-check. Improved clarity and performance.
|
||||
* Fixes and improvements in existing portfiles and the `vcpkg` tool itself
|
||||
|
||||
-- vcpkg team <vcpkg@microsoft.com> TUE, 10 Jan 2017 17:15:00 -0800
|
||||
|
||||
|
||||
vcpkg (0.0.65)
|
||||
--------------
|
||||
* Add ports:
|
||||
|
@ -1,4 +1,4 @@
|
||||
Source: boost
|
||||
Version: 1.62-9
|
||||
Version: 1.62-10
|
||||
Description: Peer-reviewed portable C++ source libraries
|
||||
Build-Depends: zlib
|
||||
|
@ -108,11 +108,10 @@ file(
|
||||
DESTINATION ${CURRENT_PACKAGES_DIR}/include
|
||||
)
|
||||
|
||||
if (VCPKG_LIBRARY_LINKAGE STREQUAL dynamic)
|
||||
file(APPEND ${CURRENT_PACKAGES_DIR}/include/boost/config/user.hpp
|
||||
"\n#define BOOST_ALL_DYN_LINK\n"
|
||||
)
|
||||
endif()
|
||||
# Disable Boost auto-link.
|
||||
file(APPEND ${CURRENT_PACKAGES_DIR}/include/boost/config/user.hpp
|
||||
"\n#define BOOST_ALL_NO_LIB\n"
|
||||
)
|
||||
|
||||
file(INSTALL ${SOURCE_PATH}/LICENSE_1_0.txt DESTINATION ${CURRENT_PACKAGES_DIR}/share/boost RENAME copyright)
|
||||
message(STATUS "Packaging headers done")
|
||||
|
3
ports/directxtex/CONTROL
Normal file
3
ports/directxtex/CONTROL
Normal file
@ -0,0 +1,3 @@
|
||||
Source: directxtex
|
||||
Version: dec2016
|
||||
Description: DirectXTex texture processing library
|
59
ports/directxtex/portfile.cmake
Normal file
59
ports/directxtex/portfile.cmake
Normal file
@ -0,0 +1,59 @@
|
||||
# Common Ambient Variables:
|
||||
# VCPKG_ROOT_DIR = <C:\path\to\current\vcpkg>
|
||||
# TARGET_TRIPLET is the current triplet (x86-windows, etc)
|
||||
# PORT is the current port name (zlib, etc)
|
||||
# CURRENT_BUILDTREES_DIR = ${VCPKG_ROOT_DIR}\buildtrees\${PORT}
|
||||
# CURRENT_PACKAGES_DIR = ${VCPKG_ROOT_DIR}\packages\${PORT}_${TARGET_TRIPLET}
|
||||
#
|
||||
if (VCPKG_LIBRARY_LINKAGE STREQUAL dynamic)
|
||||
message(STATUS "Warning: Dynamic building not supported yet. Building static.")
|
||||
set(VCPKG_LIBRARY_LINKAGE static)
|
||||
endif()
|
||||
|
||||
include(vcpkg_common_functions)
|
||||
set(SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src/directxtex-dec2016)
|
||||
vcpkg_download_distfile(ARCHIVE
|
||||
URLS "https://github.com/Microsoft/DirectXTex/archive/dec2016.tar.gz"
|
||||
FILENAME "directxtex-dec2016.tar.gz"
|
||||
SHA512 87797340c40a98a7b11b6eb7da17d0b93bc01ba48deed50e99ce74e0e33387cac2ec18f2f14d0148c2a79f97ca98d6b2a228dad2f16010b6dcf03c0d24a79d20
|
||||
)
|
||||
vcpkg_extract_source_archive(${ARCHIVE})
|
||||
|
||||
IF (TRIPLET_SYSTEM_ARCH MATCHES "x86")
|
||||
SET(BUILD_ARCH "Win32")
|
||||
ELSE()
|
||||
SET(BUILD_ARCH ${TRIPLET_SYSTEM_ARCH})
|
||||
ENDIF()
|
||||
|
||||
vcpkg_build_msbuild(
|
||||
PROJECT_PATH ${SOURCE_PATH}/DirectXTex_Desktop_2015.sln
|
||||
PLATFORM ${BUILD_ARCH}
|
||||
)
|
||||
|
||||
file(INSTALL
|
||||
${SOURCE_PATH}/DirectXTex/DirectXTex.h
|
||||
${SOURCE_PATH}/DirectXTex/DirectXTex.inl
|
||||
DESTINATION ${CURRENT_PACKAGES_DIR}/include
|
||||
)
|
||||
file(INSTALL
|
||||
${SOURCE_PATH}/DirectXTex/Bin/Desktop_2015/${BUILD_ARCH}/Debug/DirectXTex.lib
|
||||
DESTINATION ${CURRENT_PACKAGES_DIR}/debug/lib)
|
||||
file(INSTALL
|
||||
${SOURCE_PATH}/DirectXTex/Bin/Desktop_2015/${BUILD_ARCH}/Release/DirectXTex.lib
|
||||
DESTINATION ${CURRENT_PACKAGES_DIR}/lib)
|
||||
|
||||
set(TOOL_PATH ${CURRENT_PACKAGES_DIR}/tools)
|
||||
file(MAKE_DIRECTORY ${TOOL_PATH})
|
||||
file(INSTALL
|
||||
${SOURCE_PATH}/Texdiag/Bin/Desktop_2015/${BUILD_ARCH}/Release/texdiag.exe
|
||||
DESTINATION ${TOOL_PATH})
|
||||
file(INSTALL
|
||||
${SOURCE_PATH}/Texconv/Bin/Desktop_2015/${BUILD_ARCH}/Release/Texconv.exe
|
||||
DESTINATION ${TOOL_PATH})
|
||||
file(INSTALL
|
||||
${SOURCE_PATH}/Texassemble/Bin/Desktop_2015/${BUILD_ARCH}/Release/Texassemble.exe
|
||||
DESTINATION ${TOOL_PATH})
|
||||
|
||||
# Handle copyright
|
||||
file(COPY ${SOURCE_PATH}/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/DirectXTex)
|
||||
file(RENAME ${CURRENT_PACKAGES_DIR}/share/DirectXTex/LICENSE ${CURRENT_PACKAGES_DIR}/share/DirectXTex/copyright)
|
@ -1,3 +1,3 @@
|
||||
Source: directxtk
|
||||
Version: oct2016-1
|
||||
Version: dec2016
|
||||
Description: A collection of helper classes for writing DirectX 11.x code in C++.
|
||||
|
@ -4,11 +4,11 @@ if (VCPKG_LIBRARY_LINKAGE STREQUAL dynamic)
|
||||
endif()
|
||||
|
||||
include(vcpkg_common_functions)
|
||||
set(SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src/DirectXTK-oct2016)
|
||||
set(SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src/DirectXTK-dec2016)
|
||||
vcpkg_download_distfile(ARCHIVE
|
||||
URLS "https://github.com/Microsoft/DirectXTK/archive/oct2016.tar.gz"
|
||||
FILENAME "oct2016.tar.gz"
|
||||
SHA512 b44ee28518ca65d38a3c915881ef79533b48b07d3738b616f1935d7c00a26d5e48b2292cde6acc34e933f85ba2a6362c585c60b2bbc704745d43cef53769a112
|
||||
URLS "https://github.com/Microsoft/DirectXTK/archive/dec2016.tar.gz"
|
||||
FILENAME "DirectXTK-dec2016.tar.gz"
|
||||
SHA512 efb8a98d0872bf1835b274ba88615e88c4a58ab753c5ebef5a407c54d5f9a2197d1521f14651c60ea16c047918db6f54bf2ac58a6eb7330490b9bae619e8dad3
|
||||
)
|
||||
vcpkg_extract_source_archive(${ARCHIVE})
|
||||
|
||||
|
@ -1,3 +1,3 @@
|
||||
Source: directxtk12
|
||||
Version: oct2016
|
||||
Version: dec2016
|
||||
Description: A collection of helper classes for writing DirectX 12 code in C++.
|
||||
|
@ -4,11 +4,11 @@ if (VCPKG_LIBRARY_LINKAGE STREQUAL dynamic)
|
||||
endif()
|
||||
|
||||
include(vcpkg_common_functions)
|
||||
set(SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src/DirectXTK12-oct2016)
|
||||
set(SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src/DirectXTK12-dec2016)
|
||||
vcpkg_download_distfile(ARCHIVE
|
||||
URLS "https://github.com/Microsoft/DirectXTK12/archive/oct2016.tar.gz"
|
||||
FILENAME "DirectXTK12-oct2016.tar.gz"
|
||||
SHA512 f33af80dc018c1fda117eeef66bd08046b48572806d879651187cbed9d5ceb402b1798ecc0e1089b54ddb879e5355b45f2b67e3be99fbe270c5216a945a9924b
|
||||
URLS "https://github.com/Microsoft/DirectXTK12/archive/dec2016.tar.gz"
|
||||
FILENAME "DirectXTK12-dec2016.tar.gz"
|
||||
SHA512 7c98fbf1d7ef96807a38d396a87dacdc60fdcd7e461210d246cc424789c4c5c5fb1390db958c1bd1f77da8af756a9eae36813e5da6bbb0ea1432ff4004f1d010
|
||||
)
|
||||
vcpkg_extract_source_archive(${ARCHIVE})
|
||||
|
||||
|
@ -31,8 +31,8 @@ if(VCPKG_LIBRARY_LINKAGE STREQUAL dynamic)
|
||||
|
||||
endif()
|
||||
file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include)
|
||||
file(REMOVE ${CURRENT_PACKAGES_DIR}/include/fmt/format.cc)
|
||||
file(REMOVE ${CURRENT_PACKAGES_DIR}/include/fmt/ostream.cc)
|
||||
#file(REMOVE ${CURRENT_PACKAGES_DIR}/include/fmt/format.cc)
|
||||
#file(REMOVE ${CURRENT_PACKAGES_DIR}/include/fmt/ostream.cc)
|
||||
file(RENAME ${CURRENT_PACKAGES_DIR}/debug/share/fmt/fmt-targets-debug.cmake ${CURRENT_PACKAGES_DIR}/share/fmt/fmt-targets-debug.cmake)
|
||||
file(READ ${CURRENT_PACKAGES_DIR}/share/fmt/fmt-targets-debug.cmake FMT_DEBUG_MODULE)
|
||||
string(REPLACE "\${_IMPORT_PREFIX}" "\${_IMPORT_PREFIX}/debug" FMT_DEBUG_MODULE "${FMT_DEBUG_MODULE}")
|
||||
|
63
ports/freetype/0003-Fix-UWP.patch
Normal file
63
ports/freetype/0003-Fix-UWP.patch
Normal file
@ -0,0 +1,63 @@
|
||||
diff --git a/CMakeLists.txt b/CMakeLists.txt
|
||||
index 744b2d5..d114b9b 100644
|
||||
--- a/CMakeLists.txt
|
||||
+++ b/CMakeLists.txt
|
||||
@@ -312,6 +312,9 @@ else ()
|
||||
set(BASE_SRCS ${BASE_SRCS} src/base/ftdebug.c)
|
||||
endif ()
|
||||
|
||||
+if(MSVC)
|
||||
+ add_definitions(-D_CRT_SECURE_NO_DEPRECATE -D_CRT_NONSTDC_NO_DEPRECATE -D_CRT_SECURE_NO_WARNINGS)
|
||||
+endif()
|
||||
|
||||
if (BUILD_FRAMEWORK)
|
||||
set(BASE_SRCS
|
||||
diff --git a/include/freetype/freetype.h b/include/freetype/freetype.h
|
||||
index 4666d48..382a915 100644
|
||||
--- a/include/freetype/freetype.h
|
||||
+++ b/include/freetype/freetype.h
|
||||
@@ -845,6 +845,9 @@ FT_BEGIN_HEADER
|
||||
/*************************************************************************/
|
||||
/*************************************************************************/
|
||||
|
||||
+#if defined(WINAPI_FAMILY) && (WINAPI_FAMILY != WINAPI_FAMILY_DESKTOP_APP)
|
||||
+#define generic GenericFromFreeTypeLibrary
|
||||
+#endif
|
||||
|
||||
/*************************************************************************/
|
||||
/* */
|
||||
@@ -1777,6 +1780,10 @@ FT_BEGIN_HEADER
|
||||
|
||||
} FT_GlyphSlotRec;
|
||||
|
||||
+#if defined(WINAPI_FAMILY) && (WINAPI_FAMILY != WINAPI_FAMILY_DESKTOP_APP)
|
||||
+#undef generic
|
||||
+#endif
|
||||
+
|
||||
|
||||
/*************************************************************************/
|
||||
/*************************************************************************/
|
||||
diff --git a/src/base/ftobjs.c b/src/base/ftobjs.c
|
||||
index fa05347..ae2754b 100644
|
||||
--- a/src/base/ftobjs.c
|
||||
+++ b/src/base/ftobjs.c
|
||||
@@ -457,6 +457,9 @@
|
||||
return error;
|
||||
}
|
||||
|
||||
+#if defined(WINAPI_FAMILY) && (WINAPI_FAMILY != WINAPI_FAMILY_DESKTOP_APP)
|
||||
+#define generic GenericFromFreeTypeLibrary
|
||||
+#endif
|
||||
|
||||
/* documentation is in ftobjs.h */
|
||||
|
||||
@@ -971,6 +974,9 @@
|
||||
FT_FREE( face );
|
||||
}
|
||||
|
||||
+#if defined(WINAPI_FAMILY) && (WINAPI_FAMILY != WINAPI_FAMILY_DESKTOP_APP)
|
||||
+#undef generic
|
||||
+#endif
|
||||
|
||||
static void
|
||||
Destroy_Driver( FT_Driver driver )
|
@ -1,4 +1,4 @@
|
||||
Source: freetype
|
||||
Version: 2.6.3-3
|
||||
Version: 2.6.3-4
|
||||
Build-Depends: zlib, bzip2, libpng
|
||||
Description: A library to render fonts.
|
@ -11,6 +11,7 @@ vcpkg_apply_patches(
|
||||
SOURCE_PATH ${SOURCE_PATH}
|
||||
PATCHES ${CMAKE_CURRENT_LIST_DIR}/0001-Support-Windows-DLLs-via-CMAKE_WINDOWS_EXPORT_ALL_SY.patch
|
||||
${CMAKE_CURRENT_LIST_DIR}/0002-Add-CONFIG_INSTALL_PATH-option.patch
|
||||
${CMAKE_CURRENT_LIST_DIR}/0003-Fix-UWP.patch
|
||||
)
|
||||
|
||||
vcpkg_configure_cmake(
|
||||
|
78
ports/libffi/CMakeLists.txt
Normal file
78
ports/libffi/CMakeLists.txt
Normal file
@ -0,0 +1,78 @@
|
||||
cmake_minimum_required(VERSION 3.0)
|
||||
project(libffi)
|
||||
|
||||
# config variables for ffi.h.in
|
||||
set(VERSION 3.1)
|
||||
if(CMAKE_SIZEOF_VOID_P EQUAL 4)
|
||||
set(TARGET X86_WIN32)
|
||||
else()
|
||||
set(TARGET X86_WIN64)
|
||||
endif()
|
||||
set(HAVE_LONG_DOUBLE 0)
|
||||
set(HAVE_LONG_DOUBLE_VARIANT 0)
|
||||
set(FFI_EXEC_TRAMPOLINE_TABLE 0)
|
||||
|
||||
# mimic layout of original buildsystem
|
||||
configure_file(include/ffi.h.in ${CMAKE_BINARY_DIR}/include/ffi.h)
|
||||
file(COPY ${FFI_CONFIG_FILE} DESTINATION ${CMAKE_BINARY_DIR})
|
||||
file(COPY src/x86/ffitarget.h DESTINATION ${CMAKE_BINARY_DIR}/include)
|
||||
|
||||
include_directories(${CMAKE_BINARY_DIR}/include)
|
||||
include_directories(${CMAKE_BINARY_DIR})
|
||||
include_directories(include)
|
||||
|
||||
add_definitions(-DHAVE_CONFIG_H)
|
||||
add_definitions(-DFFI_BUILDING)
|
||||
if(BUILD_SHARED_LIBS)
|
||||
add_definitions(-DFFI_EXPORT_DATA)
|
||||
set(CMAKE_WINDOWS_EXPORT_ALL_SYMBOLS ON)
|
||||
endif()
|
||||
|
||||
if(CMAKE_SIZEOF_VOID_P EQUAL 4)
|
||||
set(ARCH_ASM_NAME win32)
|
||||
set(ARCH_ASSEMBLER ml /safeseh)
|
||||
else()
|
||||
set(ARCH_ASM_NAME win64)
|
||||
set(ARCH_ASSEMBLER ml64)
|
||||
endif()
|
||||
|
||||
execute_process(
|
||||
COMMAND cl /nologo /EP /I. /Iinclude ${CMAKE_SOURCE_DIR}/src/x86/${ARCH_ASM_NAME}.S
|
||||
WORKING_DIRECTORY ${CMAKE_BINARY_DIR}
|
||||
OUTPUT_FILE ${ARCH_ASM_NAME}.asm)
|
||||
|
||||
# Produced *.asm file could be just added to sources.
|
||||
# It works in x64 mode, but for some strange reason MASM returns error code when in x86,
|
||||
# (even though it didn't report any errors and correctly generated object file)
|
||||
# which in turn causes MSBUILD to stop.
|
||||
execute_process(
|
||||
COMMAND ${ARCH_ASSEMBLER} /c /Zi ${ARCH_ASM_NAME}.asm
|
||||
WORKING_DIRECTORY ${CMAKE_BINARY_DIR})
|
||||
|
||||
set(FFI_SOURCES
|
||||
${CMAKE_BINARY_DIR}/${ARCH_ASM_NAME}.obj
|
||||
src/x86/ffi.c
|
||||
src/closures.c
|
||||
src/java_raw_api.c
|
||||
src/prep_cif.c
|
||||
src/raw_api.c
|
||||
src/types.c)
|
||||
|
||||
if(CMAKE_BUILD_TYPE STREQUAL Debug)
|
||||
list(APPEND FFI_SOURCES src/debug.c)
|
||||
add_definitions(-DFFI_DEBUG)
|
||||
endif()
|
||||
|
||||
add_library(libffi ${FFI_SOURCES})
|
||||
|
||||
install(TARGETS libffi
|
||||
RUNTIME DESTINATION bin
|
||||
ARCHIVE DESTINATION lib
|
||||
LIBRARY DESTINATION lib)
|
||||
|
||||
if(NOT FFI_SKIP_HEADERS)
|
||||
install(FILES
|
||||
${CMAKE_BINARY_DIR}/include/ffi.h
|
||||
${CMAKE_BINARY_DIR}/include/ffitarget.h
|
||||
DESTINATION include)
|
||||
endif()
|
3
ports/libffi/CONTROL
Normal file
3
ports/libffi/CONTROL
Normal file
@ -0,0 +1,3 @@
|
||||
Source: libffi
|
||||
Version: 3.1
|
||||
Description: Portable, high level programming interface to various calling conventions
|
14
ports/libffi/auto-define-static-macro.patch
Normal file
14
ports/libffi/auto-define-static-macro.patch
Normal file
@ -0,0 +1,14 @@
|
||||
diff --git a/ffi.h b/ffi.h
|
||||
index 8d5eac2..0b0c2f6 100644
|
||||
--- a/ffi.h
|
||||
+++ b/ffi.h
|
||||
@@ -174,6 +174,9 @@ typedef struct _ffi_type
|
||||
/* of the library, but don't worry about that. Besides, */
|
||||
/* as a workaround, they can define FFI_BUILDING if they */
|
||||
/* *know* they are going to link with the static library. */
|
||||
+
|
||||
+#define FFI_BUILDING
|
||||
+
|
||||
#if defined _MSC_VER && !defined FFI_BUILDING
|
||||
#define FFI_EXTERN extern __declspec(dllimport)
|
||||
#else
|
35
ports/libffi/export-global-data.patch
Normal file
35
ports/libffi/export-global-data.patch
Normal file
@ -0,0 +1,35 @@
|
||||
diff --git a/src/types.c b/src/types.c
|
||||
index 0de5994..46c8d18 100644
|
||||
--- a/src/types.c
|
||||
+++ b/src/types.c
|
||||
@@ -31,6 +31,12 @@
|
||||
#include <ffi.h>
|
||||
#include <ffi_common.h>
|
||||
|
||||
+#ifdef FFI_EXPORT_DATA
|
||||
+#define FFI_EXPORT __declspec(dllexport)
|
||||
+#else
|
||||
+#define FFI_EXPORT
|
||||
+#endif
|
||||
+
|
||||
/* Type definitions */
|
||||
|
||||
#define FFI_TYPEDEF(name, type, id) \
|
||||
@@ -38,7 +44,7 @@ struct struct_align_##name { \
|
||||
char c; \
|
||||
type x; \
|
||||
}; \
|
||||
-const ffi_type ffi_type_##name = { \
|
||||
+FFI_EXPORT const ffi_type ffi_type_##name = { \
|
||||
sizeof(type), \
|
||||
offsetof(struct struct_align_##name, x), \
|
||||
id, NULL \
|
||||
@@ -56,7 +62,7 @@ ffi_type ffi_type_##name = { \
|
||||
}
|
||||
|
||||
/* Size and alignment are fake here. They must not be 0. */
|
||||
-const ffi_type ffi_type_void = {
|
||||
+FFI_EXPORT const ffi_type ffi_type_void = {
|
||||
1, 1, FFI_TYPE_VOID, NULL
|
||||
};
|
||||
|
220
ports/libffi/fficonfig.h
Normal file
220
ports/libffi/fficonfig.h
Normal file
@ -0,0 +1,220 @@
|
||||
/* fficonfig.h. Generated from fficonfig.h.in by configure. */
|
||||
/* fficonfig.h.in. Generated from configure.ac by autoheader. */
|
||||
|
||||
/* Define if building universal (internal helper macro) */
|
||||
/* #undef AC_APPLE_UNIVERSAL_BUILD */
|
||||
|
||||
/* Define to one of `_getb67', `GETB67', `getb67' for Cray-2 and Cray-YMP
|
||||
systems. This function is required for `alloca.c' support on those systems.
|
||||
*/
|
||||
/* #undef CRAY_STACKSEG_END */
|
||||
|
||||
/* Define to 1 if using `alloca.c'. */
|
||||
/* #undef C_ALLOCA */
|
||||
|
||||
/* Define to the flags needed for the .section .eh_frame directive. */
|
||||
/* #undef EH_FRAME_FLAGS */
|
||||
|
||||
/* Define this if you want extra debugging. */
|
||||
/* #undef FFI_DEBUG */
|
||||
|
||||
/* Cannot use PROT_EXEC on this target, so, we revert to alternative means */
|
||||
/* #undef FFI_EXEC_TRAMPOLINE_TABLE */
|
||||
|
||||
/* Define this if you want to enable pax emulated trampolines */
|
||||
/* #undef FFI_MMAP_EXEC_EMUTRAMP_PAX */
|
||||
|
||||
/* Cannot use malloc on this target, so, we revert to alternative means */
|
||||
/* #undef FFI_MMAP_EXEC_WRIT */
|
||||
|
||||
/* Define this if you do not want support for the raw API. */
|
||||
/* #undef FFI_NO_RAW_API */
|
||||
|
||||
/* Define this if you do not want support for aggregate types. */
|
||||
/* #undef FFI_NO_STRUCTS */
|
||||
|
||||
/* Define to 1 if you have `alloca', as a function or macro. */
|
||||
#define HAVE_ALLOCA 1
|
||||
|
||||
/* Define to 1 if you have <alloca.h> and it should be used (not on Ultrix).
|
||||
*/
|
||||
/* #undef HAVE_ALLOCA_H */
|
||||
|
||||
/* Define if your assembler supports .ascii. */
|
||||
#ifndef _WIN64
|
||||
#define HAVE_AS_ASCII_PSEUDO_OP 1
|
||||
#endif
|
||||
|
||||
/* Define if your assembler supports .cfi_* directives. */
|
||||
/* #undef HAVE_AS_CFI_PSEUDO_OP */
|
||||
|
||||
/* Define if your assembler supports .register. */
|
||||
/* #undef HAVE_AS_REGISTER_PSEUDO_OP */
|
||||
|
||||
/* Define if your assembler and linker support unaligned PC relative relocs.
|
||||
*/
|
||||
/* #undef HAVE_AS_SPARC_UA_PCREL */
|
||||
|
||||
/* Define if your assembler supports .string. */
|
||||
#ifndef _WIN64
|
||||
#define HAVE_AS_STRING_PSEUDO_OP 1
|
||||
#endif
|
||||
|
||||
/* Define if your assembler supports unwind section type. */
|
||||
/* #undef HAVE_AS_X86_64_UNWIND_SECTION_TYPE */
|
||||
|
||||
/* Define if your assembler supports PC relative relocs. */
|
||||
#ifndef _WIN64
|
||||
#define HAVE_AS_X86_PCREL 1
|
||||
#endif
|
||||
|
||||
/* Define to 1 if you have the <dlfcn.h> header file. */
|
||||
/* #undef HAVE_DLFCN_H */
|
||||
|
||||
/* Define if __attribute__((visibility("hidden"))) is supported. */
|
||||
/* #undef HAVE_HIDDEN_VISIBILITY_ATTRIBUTE */
|
||||
|
||||
/* Define to 1 if you have the <inttypes.h> header file. */
|
||||
#define HAVE_INTTYPES_H 1
|
||||
|
||||
/* Define if you have the long double type and it is bigger than a double */
|
||||
/* #undef HAVE_LONG_DOUBLE */
|
||||
|
||||
/* Define if you support more than one size of the long double type */
|
||||
/* #undef HAVE_LONG_DOUBLE_VARIANT */
|
||||
|
||||
/* Define to 1 if you have the `memcpy' function. */
|
||||
/* #undef HAVE_MEMCPY */
|
||||
|
||||
/* Define to 1 if you have the <memory.h> header file. */
|
||||
#define HAVE_MEMORY_H 1
|
||||
|
||||
/* Define to 1 if you have the `mmap' function. */
|
||||
/* #undef HAVE_MMAP */
|
||||
|
||||
/* Define if mmap with MAP_ANON(YMOUS) works. */
|
||||
/* #undef HAVE_MMAP_ANON */
|
||||
|
||||
/* Define if mmap of /dev/zero works. */
|
||||
/* #undef HAVE_MMAP_DEV_ZERO */
|
||||
|
||||
/* Define if read-only mmap of a plain file works. */
|
||||
/* #undef HAVE_MMAP_FILE */
|
||||
|
||||
/* Define if .eh_frame sections should be read-only. */
|
||||
/* #undef HAVE_RO_EH_FRAME */
|
||||
|
||||
/* Define to 1 if you have the <stdint.h> header file. */
|
||||
#define HAVE_STDINT_H 1
|
||||
|
||||
/* Define to 1 if you have the <stdlib.h> header file. */
|
||||
#define HAVE_STDLIB_H 1
|
||||
|
||||
/* Define to 1 if you have the <strings.h> header file. */
|
||||
/* #undef HAVE_STRINGS_H */
|
||||
|
||||
/* Define to 1 if you have the <string.h> header file. */
|
||||
#define HAVE_STRING_H 1
|
||||
|
||||
/* Define to 1 if you have the <sys/mman.h> header file. */
|
||||
/* #undef HAVE_SYS_MMAN_H */
|
||||
|
||||
/* Define to 1 if you have the <sys/stat.h> header file. */
|
||||
#define HAVE_SYS_STAT_H 1
|
||||
|
||||
/* Define to 1 if you have the <sys/types.h> header file. */
|
||||
#define HAVE_SYS_TYPES_H 1
|
||||
|
||||
/* Define to 1 if you have the <unistd.h> header file. */
|
||||
/* #undef HAVE_UNISTD_H */
|
||||
|
||||
/* Define to the sub-directory where libtool stores uninstalled libraries. */
|
||||
#define LT_OBJDIR ".libs/"
|
||||
|
||||
/* Name of package */
|
||||
#define PACKAGE "libffi"
|
||||
|
||||
/* Define to the address where bug reports for this package should be sent. */
|
||||
#define PACKAGE_BUGREPORT "http://github.com/atgreen/libffi/issues"
|
||||
|
||||
/* Define to the full name of this package. */
|
||||
#define PACKAGE_NAME "libffi"
|
||||
|
||||
/* Define to the full name and version of this package. */
|
||||
#define PACKAGE_STRING "libffi 3.1"
|
||||
|
||||
/* Define to the one symbol short name of this package. */
|
||||
#define PACKAGE_TARNAME "libffi"
|
||||
|
||||
/* Define to the home page for this package. */
|
||||
#define PACKAGE_URL ""
|
||||
|
||||
/* Define to the version of this package. */
|
||||
#define PACKAGE_VERSION "3.1"
|
||||
|
||||
/* The size of `double', as computed by sizeof. */
|
||||
#define SIZEOF_DOUBLE 8
|
||||
|
||||
/* The size of `long double', as computed by sizeof. */
|
||||
#define SIZEOF_LONG_DOUBLE 8
|
||||
|
||||
/* The size of `size_t', as computed by sizeof. */
|
||||
#ifndef _WIN64
|
||||
#define SIZEOF_SIZE_T 4
|
||||
#else
|
||||
#define SIZEOF_SIZE_T 8
|
||||
#endif
|
||||
|
||||
/* If using the C implementation of alloca, define if you know the
|
||||
direction of stack growth for your system; otherwise it will be
|
||||
automatically deduced at runtime.
|
||||
STACK_DIRECTION > 0 => grows toward higher addresses
|
||||
STACK_DIRECTION < 0 => grows toward lower addresses
|
||||
STACK_DIRECTION = 0 => direction of growth unknown */
|
||||
/* #undef STACK_DIRECTION */
|
||||
|
||||
/* Define to 1 if you have the ANSI C header files. */
|
||||
#define STDC_HEADERS 1
|
||||
|
||||
/* Define if symbols are underscored. */
|
||||
#ifndef _WIN64
|
||||
#define SYMBOL_UNDERSCORE 1
|
||||
#endif
|
||||
|
||||
/* Define this if you are using Purify and want to suppress spurious messages.
|
||||
*/
|
||||
/* #undef USING_PURIFY */
|
||||
|
||||
/* Version number of package */
|
||||
#define VERSION "3.1"
|
||||
|
||||
/* Define WORDS_BIGENDIAN to 1 if your processor stores words with the most
|
||||
significant byte first (like Motorola and SPARC, unlike Intel). */
|
||||
#if defined AC_APPLE_UNIVERSAL_BUILD
|
||||
# if defined __BIG_ENDIAN__
|
||||
# define WORDS_BIGENDIAN 1
|
||||
# endif
|
||||
#else
|
||||
# ifndef WORDS_BIGENDIAN
|
||||
/* # undef WORDS_BIGENDIAN */
|
||||
# endif
|
||||
#endif
|
||||
|
||||
/* Define to `unsigned int' if <sys/types.h> does not define. */
|
||||
/* #undef size_t */
|
||||
|
||||
|
||||
#ifdef HAVE_HIDDEN_VISIBILITY_ATTRIBUTE
|
||||
#ifdef LIBFFI_ASM
|
||||
#define FFI_HIDDEN(name) .hidden name
|
||||
#else
|
||||
#define FFI_HIDDEN __attribute__ ((visibility ("hidden")))
|
||||
#endif
|
||||
#else
|
||||
#ifdef LIBFFI_ASM
|
||||
#define FFI_HIDDEN(name)
|
||||
#else
|
||||
#define FFI_HIDDEN
|
||||
#endif
|
||||
#endif
|
||||
|
38
ports/libffi/portfile.cmake
Normal file
38
ports/libffi/portfile.cmake
Normal file
@ -0,0 +1,38 @@
|
||||
if(NOT VCPKG_TARGET_ARCHITECTURE STREQUAL x86 AND NOT VCPKG_TARGET_ARCHITECTURE STREQUAL x64)
|
||||
message(FATAL_ERROR "Architecture not supported")
|
||||
endif()
|
||||
|
||||
include(vcpkg_common_functions)
|
||||
set(SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src/libffi-3.1)
|
||||
vcpkg_download_distfile(ARCHIVE
|
||||
URLS "https://github.com/libffi/libffi/archive/v3.1.zip"
|
||||
FILENAME "libffi-3.1.zip"
|
||||
SHA512 a5d4cc638262aecec29e70333119f561588a737fd8f353e18d9bf1bfa7b38eb6aba371778119ea8d35339b458815105d5b110063295b6588a8761b24dac77a7c)
|
||||
|
||||
vcpkg_extract_source_archive(${ARCHIVE})
|
||||
file(COPY ${CMAKE_CURRENT_LIST_DIR}/CMakeLists.txt DESTINATION ${SOURCE_PATH})
|
||||
|
||||
vcpkg_apply_patches(
|
||||
SOURCE_PATH ${SOURCE_PATH}
|
||||
PATCHES
|
||||
${CMAKE_CURRENT_LIST_DIR}/export-global-data.patch)
|
||||
|
||||
vcpkg_configure_cmake(
|
||||
SOURCE_PATH ${SOURCE_PATH}
|
||||
OPTIONS
|
||||
-DFFI_CONFIG_FILE=${CMAKE_CURRENT_LIST_DIR}/fficonfig.h
|
||||
OPTIONS_DEBUG
|
||||
-DFFI_SKIP_HEADERS=ON)
|
||||
|
||||
vcpkg_install_cmake()
|
||||
vcpkg_copy_pdbs()
|
||||
|
||||
if(VCPKG_LIBRARY_LINKAGE STREQUAL static)
|
||||
vcpkg_apply_patches(
|
||||
SOURCE_PATH ${CURRENT_PACKAGES_DIR}/include
|
||||
PATCHES
|
||||
${CMAKE_CURRENT_LIST_DIR}/auto-define-static-macro.patch)
|
||||
endif()
|
||||
|
||||
file(COPY ${SOURCE_PATH}/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/libffi)
|
||||
file(RENAME ${CURRENT_PACKAGES_DIR}/share/libffi/LICENSE ${CURRENT_PACKAGES_DIR}/share/libffi/copyright)
|
57
ports/libsigcpp/CMakeLists.txt
Normal file
57
ports/libsigcpp/CMakeLists.txt
Normal file
@ -0,0 +1,57 @@
|
||||
cmake_minimum_required(VERSION 3.0)
|
||||
project(libsigc++)
|
||||
|
||||
set(SIGCPP_API_VERSION 2.0)
|
||||
|
||||
add_definitions(-DSIGC_BUILD)
|
||||
|
||||
include_directories(./MSVC_Net2013) # config file for windows is there
|
||||
include_directories(.)
|
||||
|
||||
set(SICGPP_SOURCES
|
||||
sigc++/connection.cc
|
||||
sigc++/signal_base.cc
|
||||
sigc++/trackable.cc
|
||||
sigc++/adaptors/lambda/lambda.cc
|
||||
sigc++/functors/slot_base.cc)
|
||||
|
||||
add_library(sigc ${SICGPP_SOURCES})
|
||||
set_target_properties(sigc PROPERTIES OUTPUT_NAME sigc-${SIGCPP_API_VERSION})
|
||||
install(TARGETS sigc RUNTIME DESTINATION bin ARCHIVE DESTINATION lib)
|
||||
|
||||
if(NOT SIGCPP_SKIP_HEADERS)
|
||||
install(FILES MSVC_Net2013/sigc++config.h DESTINATION include)
|
||||
install(FILES sigc++/sigc++.h DESTINATION include/sigc++)
|
||||
install(FILES sigc++/bind.h DESTINATION include/sigc++)
|
||||
install(FILES sigc++/bind_return.h DESTINATION include/sigc++)
|
||||
install(FILES sigc++/connection.h DESTINATION include/sigc++)
|
||||
install(FILES sigc++/limit_reference.h DESTINATION include/sigc++)
|
||||
install(FILES sigc++/reference_wrapper.h DESTINATION include/sigc++)
|
||||
install(FILES sigc++/retype_return.h DESTINATION include/sigc++)
|
||||
install(FILES sigc++/signal.h DESTINATION include/sigc++)
|
||||
install(FILES sigc++/signal_base.h DESTINATION include/sigc++)
|
||||
install(FILES sigc++/slot.h DESTINATION include/sigc++)
|
||||
install(FILES sigc++/trackable.h DESTINATION include/sigc++)
|
||||
install(FILES sigc++/type_traits.h DESTINATION include/sigc++)
|
||||
install(FILES sigc++/visit_each.h DESTINATION include/sigc++)
|
||||
install(FILES sigc++/adaptors/adaptors.h DESTINATION include/sigc++/adaptors)
|
||||
install(FILES sigc++/adaptors/adaptor_trait.h DESTINATION include/sigc++/adaptors)
|
||||
install(FILES sigc++/adaptors/bind.h DESTINATION include/sigc++/adaptors)
|
||||
install(FILES sigc++/adaptors/bind_return.h DESTINATION include/sigc++/adaptors)
|
||||
install(FILES sigc++/adaptors/bound_argument.h DESTINATION include/sigc++/adaptors)
|
||||
install(FILES sigc++/adaptors/compose.h DESTINATION include/sigc++/adaptors)
|
||||
install(FILES sigc++/adaptors/deduce_result_type.h DESTINATION include/sigc++/adaptors)
|
||||
install(FILES sigc++/adaptors/exception_catch.h DESTINATION include/sigc++/adaptors)
|
||||
install(FILES sigc++/adaptors/hide.h DESTINATION include/sigc++/adaptors)
|
||||
install(FILES sigc++/adaptors/retype.h DESTINATION include/sigc++/adaptors)
|
||||
install(FILES sigc++/adaptors/retype_return.h DESTINATION include/sigc++/adaptors)
|
||||
install(FILES sigc++/adaptors/track_obj.h DESTINATION include/sigc++/adaptors)
|
||||
install(FILES sigc++/adaptors/lambda/base.h DESTINATION include/sigc++/adaptors/lambda)
|
||||
install(FILES sigc++/adaptors/lambda/select.h DESTINATION include/sigc++/adaptors/lambda)
|
||||
install(FILES sigc++/functors/functors.h DESTINATION include/sigc++/functors)
|
||||
install(FILES sigc++/functors/functor_trait.h DESTINATION include/sigc++/functors)
|
||||
install(FILES sigc++/functors/mem_fun.h DESTINATION include/sigc++/functors)
|
||||
install(FILES sigc++/functors/ptr_fun.h DESTINATION include/sigc++/functors)
|
||||
install(FILES sigc++/functors/slot.h DESTINATION include/sigc++/functors)
|
||||
install(FILES sigc++/functors/slot_base.h DESTINATION include/sigc++/functors)
|
||||
endif()
|
3
ports/libsigcpp/CONTROL
Normal file
3
ports/libsigcpp/CONTROL
Normal file
@ -0,0 +1,3 @@
|
||||
Source: libsigcpp
|
||||
Version: 2.10
|
||||
Description: Typesafe callback framework for C++
|
13
ports/libsigcpp/dont-import-symbols.patch
Normal file
13
ports/libsigcpp/dont-import-symbols.patch
Normal file
@ -0,0 +1,13 @@
|
||||
diff --git a/sigc++config.h b/sigc++config.h
|
||||
index e212700..8d7366e 100644
|
||||
--- a/sigc++config.h
|
||||
+++ b/sigc++config.h
|
||||
@@ -72,6 +72,8 @@
|
||||
|
||||
#endif /* !SIGC_MSC */
|
||||
|
||||
+#undef SIGC_DLL
|
||||
+
|
||||
#ifdef SIGC_DLL
|
||||
# if defined(SIGC_BUILD) && defined(_WINDLL)
|
||||
# define SIGC_API __declspec(dllexport)
|
28
ports/libsigcpp/portfile.cmake
Normal file
28
ports/libsigcpp/portfile.cmake
Normal file
@ -0,0 +1,28 @@
|
||||
|
||||
include(vcpkg_common_functions)
|
||||
set(SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src/libsigc++-2.10.0)
|
||||
vcpkg_download_distfile(ARCHIVE
|
||||
URLS "http://ftp.gnome.org/pub/GNOME/sources/libsigc++/2.10/libsigc++-2.10.0.tar.xz"
|
||||
FILENAME "libsigc++-2.10.0.tar.xz"
|
||||
SHA512 5b96df21d6bd6ba41520c7219e77695a86aabc60b7259262c7a9f4b8475ce0e2fd8dc37bcf7c17e24e818ff28c262d682b964c83e215b51bdbe000f3f58794ae)
|
||||
|
||||
vcpkg_extract_source_archive(${ARCHIVE})
|
||||
file(COPY ${CMAKE_CURRENT_LIST_DIR}/CMakeLists.txt DESTINATION ${SOURCE_PATH})
|
||||
|
||||
vcpkg_configure_cmake(
|
||||
SOURCE_PATH ${SOURCE_PATH}
|
||||
OPTIONS_DEBUG
|
||||
-DSIGCPP_SKIP_HEADERS=ON)
|
||||
|
||||
vcpkg_install_cmake()
|
||||
vcpkg_copy_pdbs()
|
||||
|
||||
if(VCPKG_LIBRARY_LINKAGE STREQUAL static)
|
||||
vcpkg_apply_patches(
|
||||
SOURCE_PATH ${CURRENT_PACKAGES_DIR}/include
|
||||
PATCHES
|
||||
${CMAKE_CURRENT_LIST_DIR}/dont-import-symbols.patch)
|
||||
endif()
|
||||
|
||||
file(COPY ${SOURCE_PATH}/COPYING DESTINATION ${CURRENT_PACKAGES_DIR}/share/libsigcpp)
|
||||
file(RENAME ${CURRENT_PACKAGES_DIR}/share/libsigcpp/COPYING ${CURRENT_PACKAGES_DIR}/share/libsigcpp/copyright)
|
48
ports/libssh2/0001-Fix-UWP.patch
Normal file
48
ports/libssh2/0001-Fix-UWP.patch
Normal file
@ -0,0 +1,48 @@
|
||||
diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
|
||||
index 6401acf..64de3e9 100644
|
||||
--- a/src/CMakeLists.txt
|
||||
+++ b/src/CMakeLists.txt
|
||||
@@ -349,7 +349,7 @@ target_include_directories(libssh2 PRIVATE ${CMAKE_CURRENT_BINARY_DIR})
|
||||
# Check for the OS.
|
||||
# Daniel's note: this should not be necessary and we need to work to
|
||||
# get this removed.
|
||||
-if(${CMAKE_SYSTEM_NAME} STREQUAL "Windows")
|
||||
+if(${CMAKE_SYSTEM_NAME} STREQUAL "Windows" OR ${CMAKE_SYSTEM_NAME} STREQUAL "WindowsStore")
|
||||
target_compile_definitions(libssh2 PRIVATE LIBSSH2_WIN32)
|
||||
elseif(${CMAKE_SYSTEM_NAME} STREQUAL "Darwin")
|
||||
target_compile_definitions(libssh2 PRIVATE LIBSSH2_DARWIN)
|
||||
diff --git a/src/agent.c b/src/agent.c
|
||||
index c2ba422..f1799f8 100644
|
||||
--- a/src/agent.c
|
||||
+++ b/src/agent.c
|
||||
@@ -51,6 +51,10 @@
|
||||
#include "userauth.h"
|
||||
#include "session.h"
|
||||
|
||||
+#if defined(WINAPI_FAMILY) && (WINAPI_FAMILY != WINAPI_FAMILY_DESKTOP_APP)
|
||||
+#define IS_UWP 1
|
||||
+#endif /* #if defined(WINAPI_FAMILY) */
|
||||
+
|
||||
/* Requests from client to agent for protocol 1 key operations */
|
||||
#define SSH_AGENTC_REQUEST_RSA_IDENTITIES 1
|
||||
#define SSH_AGENTC_RSA_CHALLENGE 3
|
||||
@@ -254,7 +258,7 @@ struct agent_ops agent_ops_unix = {
|
||||
};
|
||||
#endif /* PF_UNIX */
|
||||
|
||||
-#ifdef WIN32
|
||||
+#if defined(WIN32) && !defined(IS_UWP)
|
||||
/* Code to talk to Pageant was taken from PuTTY.
|
||||
*
|
||||
* Portions copyright Robert de Bath, Joris van Rantwijk, Delian
|
||||
@@ -362,8 +366,8 @@ static struct {
|
||||
const char *name;
|
||||
struct agent_ops *ops;
|
||||
} supported_backends[] = {
|
||||
-#ifdef WIN32
|
||||
- {"Pageant", &agent_ops_pageant},
|
||||
+#if defined(WIN32) && !defined(IS_UWP)
|
||||
+ {"Pageant", &agent_ops_pageant},
|
||||
#endif /* WIN32 */
|
||||
#ifdef PF_UNIX
|
||||
{"Unix", &agent_ops_unix},
|
@ -1,4 +1,4 @@
|
||||
Source: libssh2
|
||||
Version: 1.8.0
|
||||
Version: 1.8.0-1
|
||||
Build-Depends: zlib, openssl
|
||||
Description: The SSH library
|
@ -7,6 +7,10 @@ vcpkg_download_distfile(ARCHIVE_FILE
|
||||
)
|
||||
vcpkg_extract_source_archive(${ARCHIVE_FILE})
|
||||
|
||||
vcpkg_apply_patches(
|
||||
SOURCE_PATH ${SOURCE_PATH}
|
||||
PATCHES ${CMAKE_CURRENT_LIST_DIR}/0001-Fix-UWP.patch
|
||||
)
|
||||
vcpkg_configure_cmake(
|
||||
SOURCE_PATH ${SOURCE_PATH}
|
||||
OPTIONS
|
||||
|
3
ports/lmdb/CONTROL
Normal file
3
ports/lmdb/CONTROL
Normal file
@ -0,0 +1,3 @@
|
||||
Source: lmdb
|
||||
Version: 0.9.18-1
|
||||
Description: LMDB is an extraordinarily fast, memory-efficient database
|
80
ports/lmdb/cmake/CMakeLists.txt
Normal file
80
ports/lmdb/cmake/CMakeLists.txt
Normal file
@ -0,0 +1,80 @@
|
||||
cmake_minimum_required(VERSION 2.8)
|
||||
|
||||
file(READ "${CMAKE_CURRENT_SOURCE_DIR}/lmdb.h" VERSION_HEADER)
|
||||
string(REGEX MATCH ".*MDB_VERSION_MAJOR[ \t]+([0-9])" MAJOR_VERSION_MATCH "${VERSION_HEADER}")
|
||||
set(LMDB_MAJOR_VERSION ${CMAKE_MATCH_1})
|
||||
string(REGEX MATCH ".*MDB_VERSION_MINOR[ \t]+([0-9])" MINOR_VERSION_MATCH "${VERSION_HEADER}")
|
||||
set(LMDB_MINOR_VERSION ${CMAKE_MATCH_1})
|
||||
string(REGEX MATCH ".*MDB_VERSION_PATCH[ \t]+([0-9]+)" PATCH_VERSION_MATCH "${VERSION_HEADER}")
|
||||
set(LMDB_PATCH_VERSION ${CMAKE_MATCH_1})
|
||||
|
||||
set(LMDB_VERSION "${LMDB_MAJOR_VERSION}.${LMDB_MINOR_VERSION}.${LMDB_PATCH_VERSION}")
|
||||
|
||||
project(lmdb)
|
||||
|
||||
option(LMDB_BUILD_TOOLS "Build lmdb tools" OFF)
|
||||
option(LMDB_BUILD_TESTS "Build lmdb tests" OFF)
|
||||
option(LMDB_INSTALL_HEADERS "Install LMDB header files" ON)
|
||||
set(LMDB_INCLUDE_INSTALL_DIR include CACHE PATH "Install directory for headers")
|
||||
set(LMDB_LIBRARY_INSTALL_DIR lib CACHE PATH "Install directory for library")
|
||||
set(LMDB_RUNTIME_INSTALL_DIR bin CACHE PATH "Install directory for binaries/dlls")
|
||||
set(LMDB_CONFIG_INSTALL_DIR share/lmdb CACHE PATH "Install directory for cmake config files")
|
||||
|
||||
|
||||
if(BUILD_SHARED_LIBS)
|
||||
set(CMAKE_SHARED_LINKER_FLAGS_DEBUG "${CMAKE_SHARED_LINKER_FLAGS_DEBUG} /DEF:${CMAKE_CURRENT_SOURCE_DIR}/lmdbd.def")
|
||||
set(CMAKE_SHARED_LINKER_FLAGS_RELEASE "${CMAKE_SHARED_LINKER_FLAGS_DEBUG} /DEF:${CMAKE_CURRENT_SOURCE_DIR}/lmdb.def")
|
||||
endif()
|
||||
|
||||
set(SRCS lmdb mdb.c lmdb.h midl.c midl.h )
|
||||
add_library(lmdb ${SRCS})
|
||||
set_target_properties(lmdb PROPERTIES DEBUG_POSTFIX d)
|
||||
target_link_libraries(lmdb PRIVATE ntdll.lib)
|
||||
|
||||
install(TARGETS lmdb DESTINATION lib
|
||||
EXPORT lmdb-targets
|
||||
RUNTIME DESTINATION ${LMDB_RUNTIME_INSTALL_DIR}
|
||||
LIBRARY DESTINATION ${LMDB_LIBRARY_INSTALL_DIR}
|
||||
ARCHIVE DESTINATION ${LMDB_LIBRARY_INSTALL_DIR}
|
||||
)
|
||||
|
||||
if(LMDB_INSTALL_HEADERS)
|
||||
install(FILES lmdb.h midl.h DESTINATION ${LMDB_INCLUDE_INSTALL_DIR})
|
||||
endif()
|
||||
|
||||
include(CMakePackageConfigHelpers)
|
||||
|
||||
set(INSTALL_INCLUDE_DIR ${LMDB_INCLUDE_INSTALL_DIR})
|
||||
configure_package_config_file(${CMAKE_CURRENT_SOURCE_DIR}/cmake/package-config.cmakein ${CMAKE_CURRENT_BINARY_DIR}/lmdb-config.cmake
|
||||
INSTALL_DESTINATION ${LMDB_CONFIG_INSTALL_DIR}
|
||||
PATH_VARS INSTALL_INCLUDE_DIR
|
||||
)
|
||||
|
||||
write_basic_package_version_file( ${CMAKE_CURRENT_BINARY_DIR}/lmdb-config-version.cmake VERSION ${LMDB_VERSION} COMPATIBILITY SameMajorVersion )
|
||||
|
||||
install(FILES ${CMAKE_CURRENT_BINARY_DIR}/lmdb-config.cmake ${CMAKE_CURRENT_BINARY_DIR}/lmdb-config-version.cmake
|
||||
DESTINATION ${LMDB_CONFIG_INSTALL_DIR} )
|
||||
|
||||
|
||||
install(EXPORT lmdb-targets DESTINATION ${LMDB_CONFIG_INSTALL_DIR})
|
||||
|
||||
if(LMDB_BUILD_TOOLS)
|
||||
# don't build mdb_dump/load/stat since they will
|
||||
# not build on windows
|
||||
foreach(_tool mdb_copy)
|
||||
add_executable(${_tool} ${_tool}.c)
|
||||
target_link_libraries(${_tool} lmdb)
|
||||
endforeach()
|
||||
endif()
|
||||
|
||||
if(LMDB_BUILD_TESTS)
|
||||
enable_testing()
|
||||
# don't use mtest6 since it will only build in static
|
||||
# build
|
||||
foreach(_test mtest mtest2 mtest3 mtest4 mtest5)
|
||||
add_executable(${_test} ${_test}.c)
|
||||
target_link_libraries(${_test} lmdb)
|
||||
add_test(NAME ${_test}
|
||||
COMMAND ${CMAKE_COMMAND} -DTEST=$<TARGET_FILE:"${_test}" -P ${CMAKE_CURRENT_SOURCE_DIR}/cmake/runtest.cmake)
|
||||
endforeach()
|
||||
endif()
|
13
ports/lmdb/cmake/cmake/package-config.cmakein
Normal file
13
ports/lmdb/cmake/cmake/package-config.cmakein
Normal file
@ -0,0 +1,13 @@
|
||||
@PACKAGE_INIT@
|
||||
|
||||
include("${CMAKE_CURRENT_LIST_DIR}/lmdb-targets.cmake")
|
||||
|
||||
set(${CMAKE_FIND_PACKAGE_NAME}_INCLUDE_DIR @PACKAGE_INSTALL_INCLUDE_DIR@)
|
||||
set(${CMAKE_FIND_PACKAGE_NAME}_INCLUDE_DIRS @PACKAGE_INSTALL_INCLUDE_DIR@)
|
||||
set(${CMAKE_FIND_PACKAGE_NAME}_LIBRARIES lmdb)
|
||||
|
||||
string(TOUPPER "${CMAKE_FIND_PACKAGE_NAME}" UPPER_PACKAGE_NAME)
|
||||
|
||||
set(${UPPER_PACKAGE_NAME}_INCLUDE_DIR @PACKAGE_INSTALL_INCLUDE_DIR@)
|
||||
set(${UPPER_PACKAGE_NAME}_INCLUDE_DIRS @PACKAGE_INSTALL_INCLUDE_DIR@)
|
||||
set(${UPPER_PACKAGE_NAME}_LIBRARIES lmdb)
|
3
ports/lmdb/cmake/cmake/runtest.cmake
Normal file
3
ports/lmdb/cmake/cmake/runtest.cmake
Normal file
@ -0,0 +1,3 @@
|
||||
file(MAKE_DIRECTORY testb)
|
||||
execute_process(COMMAND ${TEST})
|
||||
file(REMOVE_RECURSE testdb)
|
58
ports/lmdb/cmake/lmdb.def
Normal file
58
ports/lmdb/cmake/lmdb.def
Normal file
@ -0,0 +1,58 @@
|
||||
LIBRARY lmdb
|
||||
EXPORTS
|
||||
mdb_version
|
||||
mdb_strerror
|
||||
mdb_env_create
|
||||
mdb_env_open
|
||||
mdb_env_copy
|
||||
mdb_env_copyfd
|
||||
mdb_env_copy2
|
||||
mdb_env_copyfd2
|
||||
mdb_env_stat
|
||||
mdb_env_info
|
||||
mdb_env_sync
|
||||
mdb_env_close
|
||||
mdb_env_set_flags
|
||||
mdb_env_get_flags
|
||||
mdb_env_get_path
|
||||
mdb_env_get_fd
|
||||
mdb_env_set_mapsize
|
||||
mdb_env_set_maxreaders
|
||||
mdb_env_get_maxreaders
|
||||
mdb_env_set_maxdbs
|
||||
mdb_env_get_maxkeysize
|
||||
mdb_env_set_userctx
|
||||
mdb_env_get_userctx
|
||||
mdb_env_set_assert
|
||||
mdb_txn_begin
|
||||
mdb_txn_env
|
||||
mdb_txn_id
|
||||
mdb_txn_commit
|
||||
mdb_txn_abort
|
||||
mdb_txn_reset
|
||||
mdb_txn_renew
|
||||
mdb_dbi_open
|
||||
mdb_stat
|
||||
mdb_dbi_flags
|
||||
mdb_dbi_close
|
||||
mdb_drop
|
||||
mdb_set_compare
|
||||
mdb_set_dupsort
|
||||
mdb_set_relfunc
|
||||
mdb_set_relctx
|
||||
mdb_get
|
||||
mdb_put
|
||||
mdb_del
|
||||
mdb_cursor_open
|
||||
mdb_cursor_close
|
||||
mdb_cursor_renew
|
||||
mdb_cursor_txn
|
||||
mdb_cursor_dbi
|
||||
mdb_cursor_get
|
||||
mdb_cursor_put
|
||||
mdb_cursor_del
|
||||
mdb_cursor_count
|
||||
mdb_cmp
|
||||
mdb_dcmp
|
||||
mdb_reader_list
|
||||
mdb_reader_check
|
58
ports/lmdb/cmake/lmdbd.def
Normal file
58
ports/lmdb/cmake/lmdbd.def
Normal file
@ -0,0 +1,58 @@
|
||||
LIBRARY lmdbd
|
||||
EXPORTS
|
||||
mdb_version
|
||||
mdb_strerror
|
||||
mdb_env_create
|
||||
mdb_env_open
|
||||
mdb_env_copy
|
||||
mdb_env_copyfd
|
||||
mdb_env_copy2
|
||||
mdb_env_copyfd2
|
||||
mdb_env_stat
|
||||
mdb_env_info
|
||||
mdb_env_sync
|
||||
mdb_env_close
|
||||
mdb_env_set_flags
|
||||
mdb_env_get_flags
|
||||
mdb_env_get_path
|
||||
mdb_env_get_fd
|
||||
mdb_env_set_mapsize
|
||||
mdb_env_set_maxreaders
|
||||
mdb_env_get_maxreaders
|
||||
mdb_env_set_maxdbs
|
||||
mdb_env_get_maxkeysize
|
||||
mdb_env_set_userctx
|
||||
mdb_env_get_userctx
|
||||
mdb_env_set_assert
|
||||
mdb_txn_begin
|
||||
mdb_txn_env
|
||||
mdb_txn_id
|
||||
mdb_txn_commit
|
||||
mdb_txn_abort
|
||||
mdb_txn_reset
|
||||
mdb_txn_renew
|
||||
mdb_dbi_open
|
||||
mdb_stat
|
||||
mdb_dbi_flags
|
||||
mdb_dbi_close
|
||||
mdb_drop
|
||||
mdb_set_compare
|
||||
mdb_set_dupsort
|
||||
mdb_set_relfunc
|
||||
mdb_set_relctx
|
||||
mdb_get
|
||||
mdb_put
|
||||
mdb_del
|
||||
mdb_cursor_open
|
||||
mdb_cursor_close
|
||||
mdb_cursor_renew
|
||||
mdb_cursor_txn
|
||||
mdb_cursor_dbi
|
||||
mdb_cursor_get
|
||||
mdb_cursor_put
|
||||
mdb_cursor_del
|
||||
mdb_cursor_count
|
||||
mdb_cmp
|
||||
mdb_dcmp
|
||||
mdb_reader_list
|
||||
mdb_reader_check
|
3932
ports/lmdb/lmdb_45a88275d2a410e683bae4ef44881e0f55fa3c4d.patch
Normal file
3932
ports/lmdb/lmdb_45a88275d2a410e683bae4ef44881e0f55fa3c4d.patch
Normal file
File diff suppressed because it is too large
Load Diff
33
ports/lmdb/portfile.cmake
Normal file
33
ports/lmdb/portfile.cmake
Normal file
@ -0,0 +1,33 @@
|
||||
include(vcpkg_common_functions)
|
||||
set(SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src/lmdb-LMDB_0.9.18/libraries/liblmdb)
|
||||
vcpkg_download_distfile(ARCHIVE_FILE
|
||||
URLS "https://github.com/LMDB/lmdb/archive/LMDB_0.9.18.zip"
|
||||
FILENAME "LMDB_0.9.18.zip"
|
||||
SHA512 46d7ba226af05443c871f83c6ae0ab2ddbeecd289df59c082e806e135fcaa69d9d9060a19a4a907c4f7046de30871126e91e540eca27fc94446e95ba5616155b
|
||||
)
|
||||
vcpkg_extract_source_archive(${ARCHIVE_FILE})
|
||||
|
||||
vcpkg_apply_patches(
|
||||
SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src/lmdb-LMDB_0.9.18
|
||||
PATCHES ${CMAKE_CURRENT_LIST_DIR}/lmdb_45a88275d2a410e683bae4ef44881e0f55fa3c4d.patch
|
||||
)
|
||||
|
||||
file(COPY ${CMAKE_CURRENT_LIST_DIR}/cmake/ DESTINATION ${SOURCE_PATH})
|
||||
|
||||
vcpkg_configure_cmake(
|
||||
SOURCE_PATH ${SOURCE_PATH}
|
||||
OPTIONS_DEBUG
|
||||
-DLMDB_INSTALL_HEADERS=OFF
|
||||
)
|
||||
|
||||
vcpkg_install_cmake()
|
||||
|
||||
file(READ ${CURRENT_PACKAGES_DIR}/debug/share/lmdb/lmdb-targets-debug.cmake LMDB_DEBUG_MODULE)
|
||||
string(REPLACE "\${_IMPORT_PREFIX}" "\${_IMPORT_PREFIX}/debug" LMDB_DEBUG_MODULE "${LMDB_DEBUG_MODULE}")
|
||||
file(WRITE ${CURRENT_PACKAGES_DIR}/share/lmdb/lmdb-targets-debug.cmake "${LMDB_DEBUG_MODULE}")
|
||||
|
||||
file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/share)
|
||||
|
||||
file(INSTALL ${SOURCE_PATH}/COPYRIGHT DESTINATION ${CURRENT_PACKAGES_DIR}/share/lmdb RENAME copyright)
|
||||
|
||||
vcpkg_copy_pdbs()
|
3
ports/metis/CONTROL
Normal file
3
ports/metis/CONTROL
Normal file
@ -0,0 +1,3 @@
|
||||
Source: metis
|
||||
Version: 5.1.0
|
||||
Description: Serial Graph Partitioning and Fill-reducing Matrix Ordering
|
8
ports/metis/disable-programs.patch
Normal file
8
ports/metis/disable-programs.patch
Normal file
@ -0,0 +1,8 @@
|
||||
--- a/CMakeLists.txt Wed Dec 21 18:24:22 2016
|
||||
+++ b/CMakeLists.txt Wed Dec 21 18:24:26 2016
|
||||
@@ -20,4 +20,4 @@
|
||||
# Recursively look for CMakeLists.txt in subdirs.
|
||||
add_subdirectory("include")
|
||||
add_subdirectory("libmetis")
|
||||
-add_subdirectory("programs")
|
||||
+# add_subdirectory("programs")
|
15
ports/metis/enable-install.patch
Normal file
15
ports/metis/enable-install.patch
Normal file
@ -0,0 +1,15 @@
|
||||
--- a/CMakeLists.txt Sat Mar 30 17:24:45 2013
|
||||
+++ b/CMakeLists.txt Wed Dec 21 18:23:43 2016
|
||||
@@ -4,11 +4,7 @@
|
||||
set(GKLIB_PATH "GKlib" CACHE PATH "path to GKlib")
|
||||
set(SHARED FALSE CACHE BOOL "build a shared library")
|
||||
|
||||
-if(MSVC)
|
||||
- set(METIS_INSTALL FALSE)
|
||||
-else()
|
||||
- set(METIS_INSTALL TRUE)
|
||||
-endif()
|
||||
+set(METIS_INSTALL TRUE)
|
||||
|
||||
# Configure libmetis library.
|
||||
if(SHARED)
|
11
ports/metis/fix-gklib-vs14-math.patch
Normal file
11
ports/metis/fix-gklib-vs14-math.patch
Normal file
@ -0,0 +1,11 @@
|
||||
--- a/GKlib/gk_arch.h Wed Dec 21 18:34:18 2016
|
||||
+++ b/GKlib/gk_arch.h Wed Dec 21 18:30:49 2016
|
||||
@@ -58,7 +58,7 @@
|
||||
#define PTRDIFF_MAX INT64_MAX
|
||||
#endif
|
||||
|
||||
-#ifdef __MSC__
|
||||
+#if defined(__MSC__) && (_MSC_VER < 1900)
|
||||
/* MSC does not have rint() function */
|
||||
#define rint(x) ((int)((x)+0.5))
|
||||
|
11
ports/metis/fix-metis-vs14-math.patch
Normal file
11
ports/metis/fix-metis-vs14-math.patch
Normal file
@ -0,0 +1,11 @@
|
||||
--- a/libmetis/metislib.h Sat Mar 30 17:24:45 2013
|
||||
+++ b/libmetis/metislib.h Wed Dec 21 18:30:59 2016
|
||||
@@ -31,7 +31,7 @@
|
||||
#include <proto.h>
|
||||
|
||||
|
||||
-#if defined(COMPILER_MSC)
|
||||
+#if defined(COMPILER_MSC) && (_MSC_VER < 1900)
|
||||
#if defined(rint)
|
||||
#undef rint
|
||||
#endif
|
10
ports/metis/fix-runtime-install-destination.patch
Normal file
10
ports/metis/fix-runtime-install-destination.patch
Normal file
@ -0,0 +1,10 @@
|
||||
--- a/libmetis/CMakeLists.txt Sat Mar 30 17:24:45 2013
|
||||
+++ b/libmetis/CMakeLists.txt Wed Dec 21 17:41:37 2016
|
||||
@@ -11,6 +11,6 @@
|
||||
if(METIS_INSTALL)
|
||||
install(TARGETS metis
|
||||
LIBRARY DESTINATION lib
|
||||
- RUNTIME DESTINATION lib
|
||||
+ RUNTIME DESTINATION bin
|
||||
ARCHIVE DESTINATION lib)
|
||||
endif()
|
47
ports/metis/portfile.cmake
Normal file
47
ports/metis/portfile.cmake
Normal file
@ -0,0 +1,47 @@
|
||||
# Common Ambient Variables:
|
||||
# VCPKG_ROOT_DIR = <C:\path\to\current\vcpkg>
|
||||
# TARGET_TRIPLET is the current triplet (x86-windows, etc)
|
||||
# PORT is the current port name (zlib, etc)
|
||||
# CURRENT_BUILDTREES_DIR = ${VCPKG_ROOT_DIR}\buildtrees\${PORT}
|
||||
# CURRENT_PACKAGES_DIR = ${VCPKG_ROOT_DIR}\packages\${PORT}_${TARGET_TRIPLET}
|
||||
#
|
||||
|
||||
include(vcpkg_common_functions)
|
||||
set(SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src/metis-5.1.0)
|
||||
vcpkg_download_distfile(ARCHIVE
|
||||
URLS "http://glaros.dtc.umn.edu/gkhome/fetch/sw/metis/metis-5.1.0.tar.gz"
|
||||
FILENAME "metis-5.1.0.tar.gz"
|
||||
SHA512 deea47749d13bd06fbeaf98a53c6c0b61603ddc17a43dae81d72c8015576f6495fd83c11b0ef68d024879ed5415c14ebdbd87ce49c181bdac680573bea8bdb25
|
||||
)
|
||||
vcpkg_extract_source_archive(${ARCHIVE})
|
||||
|
||||
vcpkg_apply_patches(
|
||||
SOURCE_PATH ${SOURCE_PATH}
|
||||
PATCHES
|
||||
${CMAKE_CURRENT_LIST_DIR}/enable-install.patch
|
||||
${CMAKE_CURRENT_LIST_DIR}/disable-programs.patch
|
||||
${CMAKE_CURRENT_LIST_DIR}/fix-runtime-install-destination.patch
|
||||
${CMAKE_CURRENT_LIST_DIR}/fix-metis-vs14-math.patch
|
||||
${CMAKE_CURRENT_LIST_DIR}/fix-gklib-vs14-math.patch
|
||||
)
|
||||
|
||||
if(VCPKG_LIBRARY_LINKAGE STREQUAL dynamic)
|
||||
set(OPTIONS -DSHARED=ON -DCMAKE_WINDOWS_EXPORT_ALL_SYMBOLS=ON)
|
||||
else()
|
||||
set(OPTIONS -DSHARED=OFF)
|
||||
endif()
|
||||
|
||||
vcpkg_configure_cmake(
|
||||
SOURCE_PATH ${SOURCE_PATH}
|
||||
OPTIONS
|
||||
${OPTIONS}
|
||||
)
|
||||
|
||||
vcpkg_install_cmake()
|
||||
vcpkg_copy_pdbs()
|
||||
|
||||
file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include)
|
||||
|
||||
# Handle copyright
|
||||
file(COPY ${SOURCE_PATH}/LICENSE.txt DESTINATION ${CURRENT_PACKAGES_DIR}/share/metis)
|
||||
file(RENAME ${CURRENT_PACKAGES_DIR}/share/metis/LICENSE.txt ${CURRENT_PACKAGES_DIR}/share/metis/copyright)
|
24
ports/mongo-c-driver/bson.patch
Normal file
24
ports/mongo-c-driver/bson.patch
Normal file
@ -0,0 +1,24 @@
|
||||
diff --git a/build/cmake/FindBSON.cmake b/build/cmake/FindBSON.cmake
|
||||
index 4ac39ea..d11aa1f 100644
|
||||
--- a/build/cmake/FindBSON.cmake
|
||||
+++ b/build/cmake/FindBSON.cmake
|
||||
@@ -12,6 +12,7 @@ endif ()
|
||||
find_path(BSON_INCLUDE_DIR
|
||||
NAMES
|
||||
libbson-1.0/bson.h
|
||||
+ bson.h
|
||||
HINTS
|
||||
${BSON_ROOT_DIR}
|
||||
${_BSON_INCLUDEDIR}
|
||||
@@ -19,7 +20,10 @@ find_path(BSON_INCLUDE_DIR
|
||||
include
|
||||
)
|
||||
|
||||
-set(BSON_INCLUDE_DIR "${BSON_INCLUDE_DIR}/libbson-1.0")
|
||||
+set(BSON_INCLUDE_DIR "${BSON_INCLUDE_DIR}")
|
||||
+if (NOT EXISTS ${BSON_INCLUDE_DIR}/bson.h)
|
||||
+ set(BSON_INCLUDE_DIR "${BSON_INCLUDE_DIR}/libbson-1.0")
|
||||
+endif()
|
||||
|
||||
if(WIN32 AND NOT CYGWIN)
|
||||
if(MSVC)
|
@ -8,6 +8,12 @@ vcpkg_download_distfile(ARCHIVE
|
||||
)
|
||||
vcpkg_extract_source_archive(${ARCHIVE})
|
||||
|
||||
vcpkg_apply_patches(
|
||||
SOURCE_PATH ${SOURCE_PATH}
|
||||
PATCHES
|
||||
${CMAKE_CURRENT_LIST_DIR}/bson.patch
|
||||
)
|
||||
|
||||
vcpkg_configure_cmake(
|
||||
SOURCE_PATH ${SOURCE_PATH}
|
||||
OPTIONS
|
||||
|
@ -1,3 +1,3 @@
|
||||
Source: pixman
|
||||
Version: 0.34.0
|
||||
Version: 0.34.0-1
|
||||
Description: Pixman is a low-level software library for pixel manipulation, providing features such as image compositing and trapezoid rasterization.
|
||||
|
@ -5,10 +5,6 @@
|
||||
# CURRENT_BUILDTREES_DIR = ${VCPKG_ROOT_DIR}\buildtrees\${PORT}
|
||||
# CURRENT_PACKAGES_DIR = ${VCPKG_ROOT_DIR}\packages\${PORT}_${TARGET_TRIPLET}
|
||||
#
|
||||
if (VCPKG_LIBRARY_LINKAGE STREQUAL dynamic)
|
||||
message(STATUS "Warning: Dynamic building not supported. Building static.") # pixman does not export any symbols.
|
||||
set(VCPKG_LIBRARY_LINKAGE static)
|
||||
endif()
|
||||
|
||||
include(vcpkg_common_functions)
|
||||
|
||||
@ -27,6 +23,7 @@ file(RENAME ${SOURCE_PATH}/pixman/CMakeLists_pixman.txt ${SOURCE_PATH}/pixman/CM
|
||||
|
||||
vcpkg_configure_cmake(
|
||||
SOURCE_PATH ${SOURCE_PATH}
|
||||
OPTIONS -DCMAKE_WINDOWS_EXPORT_ALL_SYMBOLS=ON
|
||||
)
|
||||
|
||||
vcpkg_install_cmake()
|
||||
|
@ -32,11 +32,13 @@ if(DEFINED VCPKG_CRT_LINKAGE AND VCPKG_CRT_LINKAGE STREQUAL static)
|
||||
vcpkg_apply_patches(
|
||||
SOURCE_PATH ${SOURCE_PATH}
|
||||
PATCHES "${CMAKE_CURRENT_LIST_DIR}/set-static-qmakespec.patch"
|
||||
QUIET
|
||||
)
|
||||
else()
|
||||
vcpkg_apply_patches(
|
||||
SOURCE_PATH ${SOURCE_PATH}
|
||||
PATCHES "${CMAKE_CURRENT_LIST_DIR}/set-shared-qmakespec.patch"
|
||||
QUIET
|
||||
)
|
||||
endif()
|
||||
|
||||
|
109
ports/sdl2-image/CMakeLists.txt
Normal file
109
ports/sdl2-image/CMakeLists.txt
Normal file
@ -0,0 +1,109 @@
|
||||
cmake_minimum_required(VERSION 2.6)
|
||||
project(SDL2_image)
|
||||
|
||||
### configuration ###
|
||||
|
||||
list(APPEND CMAKE_MODULE_PATH "${CMAKE_CURRENT_LIST_DIR}/cmake")
|
||||
# enable all file formats which are supported natively
|
||||
set(SUPPORTED_FORMATS BMP GIF LBM PCX PNM TGA XPM XCF XV)
|
||||
|
||||
# enable all file formats which are supported through external dependencies
|
||||
# first try to load them statically (lib file in vcpkg installation)
|
||||
# if this fails try to make them a dynamic dependency (dll will be loaded at runtime) if possible. vcpkg cannot resolve these dependencies!
|
||||
# else do not support this file format at all
|
||||
set(DEPENDENCIES PNG JPEG TIFF WEBP)
|
||||
|
||||
# patch library names for preprocessor flags
|
||||
set(JPEG_FLAG JPG)
|
||||
set(TIFF_FLAG TIF)
|
||||
|
||||
# names of potentially dynamically loaded libraries
|
||||
set(JPEG_DYNAMIC \"libjpeg-9.dll\")
|
||||
set(PNG_DYNAMIC \"libpng16-16.dll\")
|
||||
set(TIFF_DYNAMIC \"libtiff-5.dll\")
|
||||
set(WEBP_DYNAMIC \"libwebp-4.dll\")
|
||||
|
||||
### implementation ###
|
||||
|
||||
add_library(SDL2_image
|
||||
IMG.c
|
||||
IMG_bmp.c
|
||||
IMG_gif.c
|
||||
IMG_jpg.c
|
||||
IMG_lbm.c
|
||||
IMG_pcx.c
|
||||
IMG_png.c
|
||||
IMG_pnm.c
|
||||
IMG_tga.c
|
||||
IMG_tif.c
|
||||
IMG_webp.c
|
||||
IMG_xcf.c
|
||||
IMG_xpm.c
|
||||
IMG_xv.c
|
||||
IMG_xxx.c
|
||||
)
|
||||
|
||||
foreach(FORMAT ${SUPPORTED_FORMATS})
|
||||
add_definitions(-DLOAD_${FORMAT})
|
||||
endforeach(FORMAT)
|
||||
|
||||
# SDL
|
||||
find_path(SDL_INCLUDE_DIR SDL2/SDL.h)
|
||||
find_library(SDL_LIBRARY SDL2)
|
||||
|
||||
include_directories(${SDL_INCLUDE_DIR})
|
||||
include_directories(${SDL_INCLUDE_DIR}/SDL2)
|
||||
include_directories(${CMAKE_SOURCE_DIR})
|
||||
|
||||
target_link_libraries(SDL2_image ${SDL_LIBRARY})
|
||||
|
||||
# external dependencies
|
||||
foreach(DEPENDENCY ${DEPENDENCIES})
|
||||
find_package(${DEPENDENCY})
|
||||
|
||||
if(NOT DEFINED ${DEPENDENCY}_FLAG)
|
||||
set(${DEPENDENCY}_FLAG ${DEPENDENCY})
|
||||
endif()
|
||||
|
||||
add_definitions(-DLOAD_${${DEPENDENCY}_FLAG})
|
||||
if(${DEPENDENCY}_FOUND)
|
||||
message(STATUS " --> linking statically.")
|
||||
target_link_libraries(SDL2_image ${${DEPENDENCY}_LIBRARIES})
|
||||
elseif(DEFINED ${DEPENDENCY}_DYNAMIC)
|
||||
message(STATUS " --> linking dynamically.")
|
||||
add_definitions(-DLOAD_${${DEPENDENCY}_FLAG}_DYNAMIC=${${DEPENDENCY}_DYNAMIC})
|
||||
set(RUNTIME_DEPENDENCIES ON)
|
||||
else()
|
||||
message(STATUS " --> skipping.")
|
||||
endif()
|
||||
endforeach(DEPENDENCY)
|
||||
|
||||
if(DEFINED RUNTIME_DEPENDENCIES)
|
||||
include_directories(VisualC/external/include)
|
||||
endif()
|
||||
|
||||
|
||||
install(TARGETS SDL2_image
|
||||
RUNTIME DESTINATION bin
|
||||
ARCHIVE DESTINATION lib
|
||||
LIBRARY DESTINATION lib)
|
||||
|
||||
install(FILES SDL_image.h DESTINATION include/SDL2 CONFIGURATIONS Release)
|
||||
|
||||
|
||||
message(STATUS "Link-time dependencies:")
|
||||
message(STATUS " " ${SDL_LIBRARY})
|
||||
foreach(DEPENDENCY ${DEPENDENCIES})
|
||||
if(${DEPENDENCY}_FOUND)
|
||||
message(STATUS " " ${DEPENDENCY})
|
||||
endif()
|
||||
endforeach(DEPENDENCY)
|
||||
|
||||
if(DEFINED RUNTIME_DEPENDENCIES)
|
||||
message(STATUS "Run-time dependencies:")
|
||||
foreach(DEPENDENCY ${DEPENDENCIES})
|
||||
if(NOT ${DEPENDENCY}_FOUND AND DEFINED ${DEPENDENCY}_DYNAMIC)
|
||||
message(STATUS " " ${${DEPENDENCY}_DYNAMIC})
|
||||
endif()
|
||||
endforeach(DEPENDENCY)
|
||||
endif()
|
5
ports/sdl2-image/CONTROL
Normal file
5
ports/sdl2-image/CONTROL
Normal file
@ -0,0 +1,5 @@
|
||||
Source: sdl2-image
|
||||
Version: 2.0.1
|
||||
Build-Depends: sdl2, libpng, libjpeg-turbo, tiff, libwebp
|
||||
Description: SDL_image is an image file loading library. It loads images as SDL surfaces and textures, and supports the following formats: BMP, GIF, JPEG, LBM, PCX, PNG, PNM, TGA, TIFF, WEBP, XCF, XPM, XV
|
||||
|
24
ports/sdl2-image/FindWEBP.cmake
Normal file
24
ports/sdl2-image/FindWEBP.cmake
Normal file
@ -0,0 +1,24 @@
|
||||
# - Find WEBP
|
||||
# Find the WEBP library
|
||||
# This module defines
|
||||
# WEBP_INCLUDE_DIRS, where to find webp/decode.h
|
||||
# WEBP_LIBRARIES, the libraries needed to use WEBP
|
||||
#
|
||||
|
||||
find_path(WEBP_INCLUDE_DIRS
|
||||
NAMES webp/decode.h
|
||||
)
|
||||
mark_as_advanced(WEBP_INCLUDE_DIRS)
|
||||
|
||||
find_library(
|
||||
WEBP_LIBRARIES
|
||||
NAMES webp
|
||||
)
|
||||
|
||||
find_library(WEBP_LIBRARY_RELEASE NAMES webp PATH_SUFFIXES lib)
|
||||
find_library(WEBP_LIBRARY_DEBUG NAMES webpd PATH_SUFFIXES lib)
|
||||
include(SelectLibraryConfigurations)
|
||||
select_library_configurations(WEBP)
|
||||
|
||||
include(FindPackageHandleStandardArgs)
|
||||
FIND_PACKAGE_HANDLE_STANDARD_ARGS(WEBP DEFAULT_MSG WEBP_INCLUDE_DIRS WEBP_LIBRARIES)
|
25
ports/sdl2-image/correct-sdl-headers-dir.patch
Normal file
25
ports/sdl2-image/correct-sdl-headers-dir.patch
Normal file
@ -0,0 +1,25 @@
|
||||
diff --git "a/SDL_image.h" "b/SDL_image.h"
|
||||
index f654483..1bd4f62 100644
|
||||
--- "a/SDL_image.h"
|
||||
+++ "b/SDL_image.h"
|
||||
@@ -24,9 +24,9 @@
|
||||
#ifndef _SDL_IMAGE_H
|
||||
#define _SDL_IMAGE_H
|
||||
|
||||
-#include "SDL.h"
|
||||
-#include "SDL_version.h"
|
||||
-#include "begin_code.h"
|
||||
+#include <SDL2/SDL.h>
|
||||
+#include <SDL2/SDL_version.h>
|
||||
+#include <SDL2/begin_code.h>
|
||||
|
||||
/* Set up for C function definitions, even when using C++ */
|
||||
#ifdef __cplusplus
|
||||
@@ -140,6 +140,6 @@ extern DECLSPEC int SDLCALL IMG_SavePNG_RW(SDL_Surface *surface, SDL_RWops *dst,
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
-#include "close_code.h"
|
||||
+#include <SDL2/close_code.h>
|
||||
|
||||
#endif /* _SDL_IMAGE_H */
|
39
ports/sdl2-image/portfile.cmake
Normal file
39
ports/sdl2-image/portfile.cmake
Normal file
@ -0,0 +1,39 @@
|
||||
# Common Ambient Variables:
|
||||
# VCPKG_ROOT_DIR = <C:\path\to\current\vcpkg>
|
||||
# TARGET_TRIPLET is the current triplet (x86-windows, etc)
|
||||
# PORT is the current port name (zlib, etc)
|
||||
# CURRENT_BUILDTREES_DIR = ${VCPKG_ROOT_DIR}\buildtrees\${PORT}
|
||||
# CURRENT_PACKAGES_DIR = ${VCPKG_ROOT_DIR}\packages\${PORT}_${TARGET_TRIPLET}
|
||||
#
|
||||
|
||||
include(vcpkg_common_functions)
|
||||
set(SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src/SDL2_image-2.0.1)
|
||||
vcpkg_download_distfile(ARCHIVE
|
||||
URLS "https://www.libsdl.org/projects/SDL_image/release/SDL2_image-2.0.1.zip"
|
||||
FILENAME "SDL2_image-2.0.1.zip"
|
||||
SHA512 37d12f4fae71c586bec73262bddb9207ab2f9a2ca6001d2cbfde646e268a950ba5cd4cff53d75e2da8959ae6da6e9cadc6eca88fa7bd9aa2758395d64c84a307
|
||||
)
|
||||
vcpkg_extract_source_archive(${ARCHIVE})
|
||||
|
||||
vcpkg_apply_patches(
|
||||
SOURCE_PATH ${SOURCE_PATH}
|
||||
PATCHES
|
||||
${CMAKE_CURRENT_LIST_DIR}/correct-sdl-headers-dir.patch)
|
||||
|
||||
file(COPY ${CMAKE_CURRENT_LIST_DIR}/CMakeLists.txt DESTINATION ${SOURCE_PATH})
|
||||
file(COPY ${CMAKE_CURRENT_LIST_DIR}/FindWEBP.cmake DESTINATION ${SOURCE_PATH}/cmake)
|
||||
|
||||
vcpkg_configure_cmake(
|
||||
SOURCE_PATH ${SOURCE_PATH}
|
||||
# OPTIONS
|
||||
# OPTIONS_RELEASE -DOPTIMIZE=1
|
||||
# OPTIONS_DEBUG -DDEBUGGABLE=1
|
||||
)
|
||||
|
||||
vcpkg_install_cmake()
|
||||
|
||||
# Handle copyright
|
||||
file(COPY ${SOURCE_PATH}/COPYING.txt DESTINATION ${CURRENT_PACKAGES_DIR}/share/sdl2-image)
|
||||
file(RENAME ${CURRENT_PACKAGES_DIR}/share/sdl2-image/COPYING.txt ${CURRENT_PACKAGES_DIR}/share/sdl2-image/copyright)
|
||||
|
||||
vcpkg_copy_pdbs()
|
@ -1,4 +1,4 @@
|
||||
Source: tiff
|
||||
Version: 4.0.6-1
|
||||
Version: 4.0.6-2
|
||||
Build-Depends: zlib
|
||||
Description: A library that supports the manipulation of TIFF image files
|
25
ports/tiff/fix-uwp.patch
Normal file
25
ports/tiff/fix-uwp.patch
Normal file
@ -0,0 +1,25 @@
|
||||
diff --git a/CMakeLists.txt b/CMakeLists.txt
|
||||
index 439e26a..05416d8 100644
|
||||
--- a/CMakeLists.txt
|
||||
+++ b/CMakeLists.txt
|
||||
@@ -187,6 +187,7 @@ endforeach(flag ${test_flags})
|
||||
|
||||
if(MSVC)
|
||||
set(CMAKE_DEBUG_POSTFIX "d")
|
||||
+ add_definitions(-D_CRT_SECURE_NO_DEPRECATE -D_CRT_NONSTDC_NO_DEPRECATE)
|
||||
endif()
|
||||
|
||||
option(ld-version-script "Enable linker version script" ON)
|
||||
diff --git a/libtiff/tif_dirread.c b/libtiff/tif_dirread.c
|
||||
index a0dc68b..3c4e101 100644
|
||||
--- a/libtiff/tif_dirread.c
|
||||
+++ b/libtiff/tif_dirread.c
|
||||
@@ -3690,7 +3690,7 @@ TIFFReadDirectory(TIFF* tif)
|
||||
case TIFFTAG_SMAXSAMPLEVALUE:
|
||||
{
|
||||
|
||||
- double *data;
|
||||
+ double *data = NULL;
|
||||
enum TIFFReadDirEntryErr err;
|
||||
uint32 saved_flags;
|
||||
int m;
|
@ -10,6 +10,7 @@ vcpkg_extract_source_archive(${ARCHIVE})
|
||||
vcpkg_apply_patches(
|
||||
SOURCE_PATH ${SOURCE_PATH}
|
||||
PATCHES ${CMAKE_CURRENT_LIST_DIR}/add-component-options.patch
|
||||
${CMAKE_CURRENT_LIST_DIR}/fix-uwp.patch
|
||||
)
|
||||
|
||||
vcpkg_configure_cmake(
|
||||
|
@ -46,8 +46,7 @@ function(vcpkg_find_acquire_program VAR)
|
||||
endif()
|
||||
endif()
|
||||
if(PYTHON2 MATCHES "NOTFOUND")
|
||||
message(FATAL_ERROR "libuv uses the GYP build system, which requires Python 2.7.\n"
|
||||
"Python 2.7 was not found in the path or by searching inside C:\\Python27.\n"
|
||||
message(FATAL_ERROR "Python 2.7 was not found in the path or by searching inside C:\\Python27.\n"
|
||||
"There is no portable redistributable for Python 2.7, so you will need to install the MSI located at:\n"
|
||||
" https://www.python.org/ftp/python/2.7.11/python-2.7.11.amd64.msi\n"
|
||||
)
|
||||
@ -58,6 +57,12 @@ function(vcpkg_find_acquire_program VAR)
|
||||
set(URL "http://download.qt.io/official_releases/jom/jom_1_1_1.zip")
|
||||
set(ARCHIVE "jom_1_1_1.zip")
|
||||
set(HASH 23a26dc7e29979bec5dcd3bfcabf76397b93ace64f5d46f2254d6420158bac5eff1c1a8454e3427e7a2fe2c233c5f2cffc87b376772399e12e40b51be2c065f4)
|
||||
elseif(VAR MATCHES "7Z")
|
||||
set(PROGNAME 7z)
|
||||
set(PATHS "C:/Program Files/7-Zip" ${DOWNLOADS}/tools/7z/Files/7-Zip)
|
||||
set(URL "http://7-zip.org/a/7z1604.msi")
|
||||
set(ARCHIVE "7z1604.msi")
|
||||
set(HASH 556f95f7566fe23704d136239e4cf5e2a26f939ab43b44145c91b70d031a088d553e5c21301f1242a2295dcde3143b356211f0108c68e65eef8572407618326d)
|
||||
else()
|
||||
message(FATAL "unknown tool ${VAR} -- unable to acquire.")
|
||||
endif()
|
||||
@ -72,10 +77,21 @@ function(vcpkg_find_acquire_program VAR)
|
||||
if(DEFINED NOEXTRACT)
|
||||
file(COPY ${DOWNLOADS}/${ARCHIVE} DESTINATION ${DOWNLOADS}/tools/${PROGNAME})
|
||||
else()
|
||||
execute_process(
|
||||
COMMAND ${CMAKE_COMMAND} -E tar xzf ${DOWNLOADS}/${ARCHIVE}
|
||||
WORKING_DIRECTORY ${DOWNLOADS}/tools/${PROGNAME}
|
||||
)
|
||||
get_filename_component(ARCHIVE_EXTENSION ${ARCHIVE} EXT)
|
||||
string(TOLOWER "${ARCHIVE_EXTENSION}" ARCHIVE_EXTENSION)
|
||||
if(${ARCHIVE_EXTENSION} STREQUAL ".msi")
|
||||
file(TO_NATIVE_PATH "${DOWNLOADS}/${ARCHIVE}" ARCHIVE_NATIVE_PATH)
|
||||
file(TO_NATIVE_PATH "${DOWNLOADS}/tools/${PROGNAME}" DESTINATION_NATIVE_PATH)
|
||||
execute_process(
|
||||
COMMAND msiexec /a ${ARCHIVE_NATIVE_PATH} /qn TARGETDIR=${DESTINATION_NATIVE_PATH}
|
||||
WORKING_DIRECTORY ${DOWNLOADS}
|
||||
)
|
||||
else()
|
||||
execute_process(
|
||||
COMMAND ${CMAKE_COMMAND} -E tar xzf ${DOWNLOADS}/${ARCHIVE}
|
||||
WORKING_DIRECTORY ${DOWNLOADS}/tools/${PROGNAME}
|
||||
)
|
||||
endif()
|
||||
endif()
|
||||
|
||||
find_program(${VAR} ${PROGNAME} PATHS ${PATHS})
|
||||
|
@ -1 +1 @@
|
||||
"0.0.65"
|
||||
"0.0.66"
|
Loading…
Reference in New Issue
Block a user