mirror of
https://github.com/cemu-project/vcpkg.git
synced 2025-02-23 19:17:10 +01:00
Merge remote-tracking branch 'upstream/master'
This commit is contained in:
commit
ab50491732
30
CHANGELOG.md
30
CHANGELOG.md
@ -1,3 +1,33 @@
|
||||
vcpkg (0.0.83)
|
||||
--------------
|
||||
* Add ports:
|
||||
- fuzzylite 6.0
|
||||
- jemalloc 4.3.1-1
|
||||
- libkml 1.3.0
|
||||
- pcl 1.8.1
|
||||
- plog 1.1.3
|
||||
* Update ports:
|
||||
- catch 1.9.6 -> 1.9.7
|
||||
- ceres 1.12.0-4 -> 1.13.0
|
||||
- cpp-redis 3.5.2 -> 3.5.2-1
|
||||
- gdal 1.11.3-3 -> 1.11.3-4
|
||||
- graphicsmagick 1.3.26 -> 1.3.26-1
|
||||
- hypre 2.11.1 -> 2.11.2
|
||||
- libtheora 1.1.1 -> 1.2.0alpha1-20170719~vcpkg1
|
||||
- minizip 1.2.11 -> 1.2.11-1
|
||||
- openblas v0.2.19-2 -> v0.2.20
|
||||
- openjpeg 2.1.2-2 -> 2.2.0
|
||||
- physfs 2.0.3 -> 2.0.3-1
|
||||
- stb 1.0 -> 20170724-9d9f75e
|
||||
- uwebsockets 0.14.3 -> 0.14.4
|
||||
- vtk 7.1.1-1 -> 8.0.0-1
|
||||
- yaml-cpp 0.5.4 candidate -> 0.5.4-rc-1
|
||||
* Bump required version & auto-downloaded version of `cmake` to 3.9.1 (was 3.9.0)
|
||||
* Fixes and improvements in the `vcpkg` tool itself
|
||||
|
||||
-- vcpkg team <vcpkg@microsoft.com> FRI, 11 Aug 2017 12:00:00 -0800
|
||||
|
||||
|
||||
vcpkg (0.0.82)
|
||||
--------------
|
||||
* Add ports:
|
||||
|
@ -10,7 +10,7 @@ Prerequisites:
|
||||
- Windows 10, 8.1, or 7
|
||||
- Visual Studio 2017 or Visual Studio 2015 Update 3
|
||||
- Git
|
||||
- *Optional: CMake 3.9.0*
|
||||
- *Optional: CMake 3.9.1*
|
||||
|
||||
Clone this repository, then run
|
||||
```
|
||||
|
@ -1,3 +1,3 @@
|
||||
Source: catch
|
||||
Version: 1.9.6
|
||||
Version: 1.9.7
|
||||
Description: C++ Automated Test Cases in Headers
|
||||
|
@ -1,11 +1,10 @@
|
||||
include(vcpkg_common_functions)
|
||||
|
||||
set(CATCH_VERSION v1.9.6)
|
||||
|
||||
set(CATCH_VERSION v1.9.7)
|
||||
vcpkg_download_distfile(HEADER
|
||||
URLS "https://github.com/philsquared/Catch/releases/download/${CATCH_VERSION}/catch.hpp"
|
||||
FILENAME "catch-${CATCH_VERSION}.hpp"
|
||||
SHA512 a0e4d568a5d90e72cef6ae9e741a66909235498c2901e96623892e5b323cb3bc51d55617ee6a42b30938a0cf2564323c621bd201d94eb67ba9c4fe5de65c10ee
|
||||
SHA512 c61fc39d9388a45d9c601c05dafeeba0e7887476b3b28e30a6ab47cb00e062be626c12d9712caa49e0cbfa3fd7517874137a24e8c293d6dd23353ea87f9fbf5c
|
||||
)
|
||||
|
||||
vcpkg_download_distfile(LICENSE
|
||||
|
@ -1,4 +1,4 @@
|
||||
Source: ceres
|
||||
Version: 1.12.0-4
|
||||
Version: 1.13.0
|
||||
Build-Depends:suitesparse, eigen3, clapack, gflags, glog
|
||||
Description: non-linear optimization package
|
@ -22,8 +22,8 @@ set(VCPKG_PLATFORM_TOOLSET "v140") # Force VS2015 because VS2017 compiler return
|
||||
vcpkg_from_github(
|
||||
OUT_SOURCE_PATH SOURCE_PATH
|
||||
REPO ceres-solver/ceres-solver
|
||||
REF 1.12.0
|
||||
SHA512 4b4cba5627fbd80a626e8a31d9f561d6cee1c8345970304e4b5b163a9dcadc6d636257d1046ecede00781a11229ef671ee89c3e7e6baf15f49f63f36e6a2ebe1
|
||||
REF 1.13.0
|
||||
SHA512 b548a303d1d4eeb75545551c381624879e363a2eba13cdd998fb3bea9bd51f6b9215b579d59d6133117b70d8bf35e18b983400c3d6200403210c18fcb1886ebb
|
||||
HEAD_REF master
|
||||
)
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
Source: cpp-redis
|
||||
Version: 3.5.2
|
||||
Version: 3.5.2-1
|
||||
Build-Depends: tacopie
|
||||
Description: cpp-redis is a C++11 Asynchronous Multi-Platform Lightweight Redis Client, with support for synchronous operations and pipelining.
|
||||
|
8
ports/cpp-redis/tacopie/CMakeLists.txt
Normal file
8
ports/cpp-redis/tacopie/CMakeLists.txt
Normal file
@ -0,0 +1,8 @@
|
||||
find_library(TACOPIE tacopie)
|
||||
find_path(TACOPIE_H tacopie/tacopie)
|
||||
|
||||
message(STATUS "TACOPIE_H: ${TACOPIE_H}")
|
||||
|
||||
add_library(tacopie INTERFACE)
|
||||
target_link_libraries(tacopie INTERFACE "${TACOPIE}")
|
||||
target_include_directories(tacopie INTERFACE "${TACOPIE_H}")
|
@ -1,20 +1,20 @@
|
||||
diff --git a/CMakeLists.txt b/CMakeLists.txt
|
||||
index ed3f38a..d6480b7 100644
|
||||
index 0caf3dc..de9fcdb 100644
|
||||
--- a/CMakeLists.txt
|
||||
+++ b/CMakeLists.txt
|
||||
@@ -1010,7 +1010,9 @@ include(CMake/OtherTests.cmake)
|
||||
add_definitions(-DHAVE_CONFIG_H)
|
||||
@@ -941,7 +941,9 @@ check_symbol_exists(ioctl "${CURL_INCLUDES}" HAVE_IOCTL)
|
||||
check_symbol_exists(setsockopt "${CURL_INCLUDES}" HAVE_SETSOCKOPT)
|
||||
|
||||
# For windows, do not allow the compiler to use default target (Vista).
|
||||
# symbol exists in win32, but function does not.
|
||||
-if(WIN32)
|
||||
+if(CMAKE_SYSTEM_NAME STREQUAL "WindowsStore")
|
||||
+ add_definitions(-D_WIN32_WINNT=0x0A00 -DHAVE_STRUCT_POLLFD -D_WINSOCK_DEPRECATED_NO_WARNINGS)
|
||||
+elseif(WIN32)
|
||||
add_definitions(-D_WIN32_WINNT=0x0501)
|
||||
endif(WIN32)
|
||||
|
||||
if(ENABLE_INET_PTON)
|
||||
check_function_exists(inet_pton HAVE_INET_PTON)
|
||||
# _WIN32_WINNT_VISTA (0x0600)
|
||||
diff --git a/lib/curl_gethostname.c b/lib/curl_gethostname.c
|
||||
index 2591fd8..cef38ac 100644
|
||||
index 8337c72..41867b2 100644
|
||||
--- a/lib/curl_gethostname.c
|
||||
+++ b/lib/curl_gethostname.c
|
||||
@@ -21,6 +21,7 @@
|
||||
@ -25,7 +25,7 @@ index 2591fd8..cef38ac 100644
|
||||
|
||||
#include "curl_gethostname.h"
|
||||
|
||||
@@ -64,9 +65,10 @@ int Curl_gethostname(char *name, GETHOSTNAME_TYPE_ARG2 namelen) {
|
||||
@@ -64,9 +65,10 @@ int Curl_gethostname(char *name, GETHOSTNAME_TYPE_ARG2 namelen)
|
||||
#ifdef DEBUGBUILD
|
||||
|
||||
/* Override host name when environment variable CURL_GETHOSTNAME is set */
|
||||
@ -38,10 +38,10 @@ index 2591fd8..cef38ac 100644
|
||||
}
|
||||
else {
|
||||
diff --git a/lib/curl_ntlm_core.c b/lib/curl_ntlm_core.c
|
||||
index 812a073..02c8416 100644
|
||||
index aea5452..c1f59f2 100644
|
||||
--- a/lib/curl_ntlm_core.c
|
||||
+++ b/lib/curl_ntlm_core.c
|
||||
@@ -696,9 +696,12 @@ CURLcode Curl_ntlm_core_mk_ntlmv2_resp(unsigned char *ntlmv2hash,
|
||||
@@ -700,9 +700,12 @@ CURLcode Curl_ntlm_core_mk_ntlmv2_resp(unsigned char *ntlmv2hash,
|
||||
|
||||
/* Calculate the timestamp */
|
||||
#ifdef DEBUGBUILD
|
||||
@ -57,40 +57,23 @@ index 812a073..02c8416 100644
|
||||
#endif
|
||||
tw = ((curl_off_t)time(NULL) + CURL_OFF_T_C(11644473600)) * 10000000;
|
||||
diff --git a/lib/ftp.c b/lib/ftp.c
|
||||
index b231731..d50779f 100644
|
||||
index 6e86e53..a96fe1a 100644
|
||||
--- a/lib/ftp.c
|
||||
+++ b/lib/ftp.c
|
||||
@@ -3250,7 +3250,7 @@ static CURLcode ftp_done(struct connectdata *conn, CURLcode status,
|
||||
ssize_t nread;
|
||||
int ftpcode;
|
||||
CURLcode result = CURLE_OK;
|
||||
@@ -4292,7 +4292,7 @@ CURLcode ftp_parse_url_path(struct connectdata *conn)
|
||||
/* prevpath is "raw" so we convert the input path before we compare the
|
||||
strings */
|
||||
size_t dlen;
|
||||
- char *path;
|
||||
+ char *path = NULL;
|
||||
const char *path_to_use = data->state.path;
|
||||
|
||||
if(!ftp)
|
||||
diff --git a/lib/smb.c b/lib/smb.c
|
||||
index 7cb0c96..2f43d3c 100644
|
||||
--- a/lib/smb.c
|
||||
+++ b/lib/smb.c
|
||||
@@ -32,8 +32,12 @@
|
||||
|
||||
#ifdef HAVE_PROCESS_H
|
||||
#include <process.h>
|
||||
+#if defined(CURL_WINDOWS_APP)
|
||||
+#define getpid GetCurrentProcessId
|
||||
+#else
|
||||
#define getpid _getpid
|
||||
#endif
|
||||
+#endif
|
||||
|
||||
#include "smb.h"
|
||||
#include "urldata.h"
|
||||
diff --git a/lib/vtls/vtls.c b/lib/vtls/vtls.c
|
||||
index 56a8823..5a895ed 100644
|
||||
--- a/lib/vtls/vtls.c
|
||||
+++ b/lib/vtls/vtls.c
|
||||
@@ -197,7 +197,7 @@ unsigned int Curl_rand(struct Curl_easy *data)
|
||||
CURLcode result =
|
||||
Curl_urldecode(conn->data, data->state.path, 0, &path, &dlen, FALSE);
|
||||
if(result) {
|
||||
diff --git a/lib/rand.c b/lib/rand.c
|
||||
index 2713a0a..7da6e00 100644
|
||||
--- a/lib/rand.c
|
||||
+++ b/lib/rand.c
|
||||
@@ -44,7 +44,7 @@ static CURLcode randit(struct Curl_easy *data, unsigned int *rnd)
|
||||
static bool seeded = FALSE;
|
||||
|
||||
#ifdef CURLDEBUG
|
||||
@ -98,12 +81,12 @@ index 56a8823..5a895ed 100644
|
||||
+ char *force_entropy = curl_getenv("CURL_ENTROPY");
|
||||
if(force_entropy) {
|
||||
if(!seeded) {
|
||||
size_t elen = strlen(force_entropy);
|
||||
@@ -208,6 +208,7 @@ unsigned int Curl_rand(struct Curl_easy *data)
|
||||
}
|
||||
unsigned int seed = 0;
|
||||
@@ -58,6 +58,7 @@ static CURLcode randit(struct Curl_easy *data, unsigned int *rnd)
|
||||
else
|
||||
randseed++;
|
||||
*rnd = randseed;
|
||||
+ free(force_entropy);
|
||||
return randseed;
|
||||
return CURLE_OK;
|
||||
}
|
||||
#endif
|
||||
|
@ -1,4 +1,4 @@
|
||||
Source: curl
|
||||
Version: 7.51.0-3
|
||||
Version: 7.55.0
|
||||
Build-Depends: zlib, openssl, libssh2
|
||||
Description: A library for transferring data with URLs
|
||||
|
@ -1,11 +1,11 @@
|
||||
include(vcpkg_common_functions)
|
||||
set(SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src/curl-curl-7_51_0)
|
||||
vcpkg_download_distfile(ARCHIVE_FILE
|
||||
URLS "https://github.com/curl/curl/archive/curl-7_51_0.tar.gz"
|
||||
FILENAME "curl-7.51.0.tar.gz"
|
||||
SHA512 88ec572efb1b2fb793dc26b627e54863718e774343283f0eb92022ce252f7798332d9d3f20f63e45c38576614a000abbf12570e91e14a118f150e0378f1a27e5
|
||||
vcpkg_from_github(
|
||||
OUT_SOURCE_PATH SOURCE_PATH
|
||||
REPO curl/curl
|
||||
REF curl-7_55_0
|
||||
SHA512 7b49e7761f5864589c6cd6eb14d8e6908797c986d8bc46a3d8dc32b7bcd12d5af464259cf3f9975a4792c8e2a504f04dd071d266d2340082a31f7ee508e17d08
|
||||
HEAD_REF master
|
||||
)
|
||||
vcpkg_extract_source_archive(${ARCHIVE_FILE})
|
||||
|
||||
vcpkg_apply_patches(
|
||||
SOURCE_PATH ${SOURCE_PATH}
|
||||
@ -14,40 +14,39 @@ vcpkg_apply_patches(
|
||||
${CMAKE_CURRENT_LIST_DIR}/0002_fix_uwp.patch
|
||||
)
|
||||
|
||||
if (VCPKG_CRT_LINKAGE STREQUAL dynamic)
|
||||
if (VCPKG_LIBRARY_LINKAGE STREQUAL dynamic)
|
||||
SET(CURL_STATICLIB OFF)
|
||||
else()
|
||||
SET(CURL_STATICLIB ON)
|
||||
endif()
|
||||
|
||||
set(UWP_OPTIONS)
|
||||
if(VCPKG_CMAKE_SYSTEM_NAME STREQUAL "WindowsStore")
|
||||
vcpkg_configure_cmake(
|
||||
SOURCE_PATH ${SOURCE_PATH}
|
||||
OPTIONS
|
||||
-DBUILD_TESTING=OFF
|
||||
-DBUILD_CURL_EXE=OFF
|
||||
-DENABLE_MANUAL=OFF
|
||||
set(UWP_OPTIONS
|
||||
-DUSE_WIN32_LDAP=OFF
|
||||
-DCURL_DISABLE_TELNET=ON
|
||||
-DENABLE_IPV6=OFF
|
||||
-DENABLE_UNIX_SOCKETS=OFF
|
||||
-DCMAKE_USE_OPENSSL=ON
|
||||
-DCURL_STATICLIB=${CURL_STATICLIB}
|
||||
OPTIONS_DEBUG
|
||||
-DENABLE_DEBUG=ON
|
||||
)
|
||||
else()
|
||||
endif()
|
||||
|
||||
vcpkg_find_acquire_program(PERL)
|
||||
get_filename_component(PERL_PATH ${PERL} DIRECTORY)
|
||||
set(ENV{PATH} "$ENV{PATH};${PERL_PATH}")
|
||||
|
||||
vcpkg_configure_cmake(
|
||||
SOURCE_PATH ${SOURCE_PATH}
|
||||
PREFER_NINJA
|
||||
OPTIONS
|
||||
${UWP_OPTIONS}
|
||||
-DBUILD_TESTING=OFF
|
||||
-DBUILD_CURL_EXE=OFF
|
||||
-DENABLE_MANUAL=OFF
|
||||
-DCURL_STATICLIB=${CURL_STATICLIB}
|
||||
-DCMAKE_USE_OPENSSL=ON
|
||||
OPTIONS_DEBUG
|
||||
-DENABLE_DEBUG=ON
|
||||
)
|
||||
endif()
|
||||
|
||||
vcpkg_install_cmake()
|
||||
|
||||
@ -56,6 +55,21 @@ file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include)
|
||||
|
||||
if(VCPKG_LIBRARY_LINKAGE STREQUAL static)
|
||||
file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/bin ${CURRENT_PACKAGES_DIR}/debug/bin)
|
||||
# Drop debug suffix, as FindCURL.cmake does not look for it
|
||||
file(RENAME ${CURRENT_PACKAGES_DIR}/debug/lib/libcurl-d.lib ${CURRENT_PACKAGES_DIR}/debug/lib/libcurl.lib)
|
||||
else()
|
||||
file(REMOVE ${CURRENT_PACKAGES_DIR}/bin/curl-config ${CURRENT_PACKAGES_DIR}/debug/bin/curl-config)
|
||||
file(RENAME ${CURRENT_PACKAGES_DIR}/lib/libcurl_imp.lib ${CURRENT_PACKAGES_DIR}/lib/libcurl.lib)
|
||||
file(RENAME ${CURRENT_PACKAGES_DIR}/debug/lib/libcurl-d_imp.lib ${CURRENT_PACKAGES_DIR}/debug/lib/libcurl.lib)
|
||||
endif()
|
||||
file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/lib/pkgconfig ${CURRENT_PACKAGES_DIR}/debug/lib/pkgconfig)
|
||||
|
||||
file(READ ${CURRENT_PACKAGES_DIR}/include/curl/curl.h CURL_H)
|
||||
if(VCPKG_LIBRARY_LINKAGE STREQUAL static)
|
||||
string(REPLACE "#ifdef CURL_STATICLIB" "#if 1" CURL_H "${CURL_H}")
|
||||
else()
|
||||
string(REPLACE "#ifdef CURL_STATICLIB" "#if 0" CURL_H "${CURL_H}")
|
||||
endif()
|
||||
file(WRITE ${CURRENT_PACKAGES_DIR}/include/curl/curl.h "${CURL_H}")
|
||||
|
||||
vcpkg_copy_pdbs()
|
19
ports/gdal/0004-Fix-openjpeg-include.patch
Normal file
19
ports/gdal/0004-Fix-openjpeg-include.patch
Normal file
@ -0,0 +1,19 @@
|
||||
diff --git a/frmts/openjpeg/openjpegdataset.cpp b/frmts/openjpeg/openjpegdataset.cpp
|
||||
index 1fd4f4f..417f7a8 100644
|
||||
--- a/frmts/openjpeg/openjpegdataset.cpp
|
||||
+++ b/frmts/openjpeg/openjpegdataset.cpp
|
||||
@@ -29,12 +29,8 @@
|
||||
|
||||
/* This file is to be used with openjpeg 2.0 */
|
||||
|
||||
-#if defined(OPENJPEG_VERSION) && OPENJPEG_VERSION >= 20100
|
||||
-#include <openjpeg-2.1/openjpeg.h>
|
||||
-#else
|
||||
-#include <stdio.h> /* openjpeg.h needs FILE* */
|
||||
-#include <openjpeg-2.0/openjpeg.h>
|
||||
-#endif
|
||||
+#include <stdio.h>
|
||||
+#include <openjpeg.h>
|
||||
#include <vector>
|
||||
|
||||
#include "gdaljp2abstractdataset.h"
|
@ -1,4 +1,4 @@
|
||||
Source: gdal
|
||||
Version: 1.11.3-3
|
||||
Version: 1.11.3-4
|
||||
Description: The Geographic Data Abstraction Library for reading and writing geospatial raster and vector data.
|
||||
Build-Depends: proj, libpng, geos, sqlite3, curl, expat, libpq, libmysql, openjpeg, libwebp, libxml2, liblzma
|
||||
|
@ -23,6 +23,7 @@ foreach(BUILD_TYPE debug release)
|
||||
${CMAKE_CURRENT_LIST_DIR}/0001-Add-support-for-MSVC1900-backported-from-GDAL2.patch
|
||||
${CMAKE_CURRENT_LIST_DIR}/0002-Add-variable-CXX_CRT_FLAGS-to-allow-for-selection-of.patch
|
||||
${CMAKE_CURRENT_LIST_DIR}/0003-Ensures-inclusion-of-PDB-in-release-dll-if-so-reques.patch
|
||||
${CMAKE_CURRENT_LIST_DIR}/0004-Fix-openjpeg-include.patch
|
||||
)
|
||||
endforeach()
|
||||
|
||||
|
@ -8,7 +8,7 @@ find_package(PNG REQUIRED)
|
||||
find_package(TIFF REQUIRED)
|
||||
find_package(Freetype REQUIRED)
|
||||
|
||||
add_definitions(-D_MAGICKLIB_ -DMAGICK_IMPLEMENTATION)
|
||||
add_definitions(-D_MAGICKLIB_ -D_WANDLIB_ -DMAGICK_IMPLEMENTATION -D_VISUALC_)
|
||||
|
||||
if (BUILD_SHARED_LIBS)
|
||||
add_definitions(-D_DLL -DDLL)
|
||||
@ -79,7 +79,7 @@ add_library(graphicsmagick coders/art.c coders/avs.c
|
||||
coders/uyvy.c coders/vicar.c coders/vid.c coders/viff.c
|
||||
coders/wbmp.c coders/webp.c coders/wmf.c coders/wpg.c
|
||||
coders/x.c coders/xbm.c coders/xc.c coders/xcf.c
|
||||
coders/xpm.c coders/xwd.c coders/yuv.c
|
||||
coders/xpm.c coders/xtrn.c coders/xwd.c coders/yuv.c
|
||||
filters/analyze.c
|
||||
magick/analyze.c magick/animate.c magick/annotate.c magick/attribute.c
|
||||
magick/average.c magick/bit_stream.c magick/blob.c magick/cdl.c
|
||||
|
@ -1,4 +1,4 @@
|
||||
Source: graphicsmagick
|
||||
Version: 1.3.26
|
||||
Version: 1.3.26-1
|
||||
Build-Depends: zlib, bzip2, freetype, libjpeg-turbo, libpng, tiff
|
||||
Description: Image processing library
|
||||
|
133
ports/graphicsmagick/magick_types.h
Normal file
133
ports/graphicsmagick/magick_types.h
Normal file
@ -0,0 +1,133 @@
|
||||
/*
|
||||
Copyright (C) 2003 - 2012 GraphicsMagick Group
|
||||
|
||||
This program is covered by multiple licenses, which are described in
|
||||
Copyright.txt. You should have received a copy of Copyright.txt with this
|
||||
package; otherwise see http://www.graphicsmagick.org/www/Copyright.html.
|
||||
|
||||
GraphicsMagick types typedefs.
|
||||
|
||||
GraphicsMagick is expected to compile with any C '89 ANSI C compiler
|
||||
supporting at least 16-bit 'short', 32-bit 'int', and 32-bit 'long'.
|
||||
It is also expected to take advantage of 64-bit LP64 and Windows
|
||||
WIN64 LLP64. We use C '99 style types but declare our own types so
|
||||
as to not depend on C '99 header files, and take care to depend only
|
||||
on C '89 library functions, POSIX, or well-known extensions. Any C
|
||||
'99 syntax used is removed if the compiler does not support it.
|
||||
*/
|
||||
|
||||
#ifndef _MAGICK_TYPES_H
|
||||
#define _MAGICK_TYPES_H
|
||||
|
||||
#if defined(__cplusplus) || defined(c_plusplus)
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
/*
|
||||
Assign ANSI C stdint.h-like typedefs based on the sizes of native types
|
||||
magick_int8_t -- -128 to 127
|
||||
magick_uint8_t -- 0 to 255
|
||||
magick_int16_t -- -32,768 to 32,767
|
||||
magick_uint16_t -- 0 to 65,535
|
||||
magick_int32_t -- -2,147,483,648 to 2,147,483,647
|
||||
magick_uint32_t -- 0 to 4,294,967,295
|
||||
magick_int64_t -- -9,223,372,036,854,775,807 to 9,223,372,036,854,775,807
|
||||
magick_uint64_t -- 0 to 18,446,744,073,709,551,615
|
||||
|
||||
magick_uintmax_t -- largest native unsigned integer type ("%ju")
|
||||
0 to UINTMAX_MAX
|
||||
UINTMAX_C(value) declares constant value
|
||||
magick_uintptr_t -- unsigned type for storing a pointer value ("%tu")
|
||||
0 to UINTPTR_MAX
|
||||
|
||||
ANSI C '99 stddef.h-like types
|
||||
size_t -- unsigned type representing sizes of objects ("%zu")
|
||||
0 to SIZE_MAX
|
||||
magick_ptrdiff_t -- signed type for subtracting two pointers ("%td")
|
||||
PTRDIFF_MIN to PTRDIFF_MAX
|
||||
|
||||
EEE Std 1003.1, 2004 types
|
||||
ssize_t -- signed type for a count of bytes or an error indication ("%zd")
|
||||
? to SSIZE_MAX
|
||||
*/
|
||||
|
||||
#if (defined(WIN32) || defined(WIN64)) && \
|
||||
!defined(__MINGW32__) && !defined(__MINGW64__)
|
||||
|
||||
/* The following typedefs are used for WIN32 & WIN64 (without
|
||||
configure) */
|
||||
typedef signed char magick_int8_t;
|
||||
typedef unsigned char magick_uint8_t;
|
||||
|
||||
typedef signed short magick_int16_t;
|
||||
typedef unsigned short magick_uint16_t;
|
||||
|
||||
typedef signed int magick_int32_t;
|
||||
# define MAGICK_INT32_F ""
|
||||
typedef unsigned int magick_uint32_t;
|
||||
# define MAGICK_UINT32_F ""
|
||||
|
||||
typedef signed __int64 magick_int64_t;
|
||||
# define MAGICK_INT64_F "I64"
|
||||
typedef unsigned __int64 magick_uint64_t;
|
||||
# define MAGICK_UINT64_F "I64"
|
||||
|
||||
typedef magick_uint64_t magick_uintmax_t;
|
||||
|
||||
# if defined(WIN32)
|
||||
typedef unsigned long magick_uintptr_t;
|
||||
# define MAGICK_SIZE_T_F "l"
|
||||
# define MAGICK_SIZE_T unsigned long
|
||||
# define MAGICK_SSIZE_T_F "l"
|
||||
# define MAGICK_SSIZE_T long
|
||||
# elif defined(WIN64)
|
||||
/* WIN64 uses the LLP64 model */
|
||||
typedef unsigned long long magick_uintptr_t;
|
||||
# define MAGICK_SIZE_T_F "I64"
|
||||
# define MAGICK_SIZE_T unsigned __int64
|
||||
# define MAGICK_SSIZE_T_F "I64"
|
||||
# define MAGICK_SSIZE_T signed __int64
|
||||
# endif
|
||||
|
||||
#else
|
||||
|
||||
/* The following typedefs are subtituted when using Unixish configure */
|
||||
typedef @INT8_T@ magick_int8_t;
|
||||
typedef @UINT8_T@ magick_uint8_t;
|
||||
|
||||
typedef @INT16_T@ magick_int16_t;
|
||||
typedef @UINT16_T@ magick_uint16_t;
|
||||
|
||||
typedef @INT32_T@ magick_int32_t;
|
||||
# define MAGICK_INT32_F @INT32_F@
|
||||
typedef @UINT32_T@ magick_uint32_t;
|
||||
# define MAGICK_UINT32_F @UINT32_F@
|
||||
|
||||
typedef @INT64_T@ magick_int64_t;
|
||||
# define MAGICK_INT64_F @INT64_F@
|
||||
typedef @UINT64_T@ magick_uint64_t;
|
||||
# define MAGICK_UINT64_F @UINT64_F@
|
||||
|
||||
typedef @UINTMAX_T@ magick_uintmax_t;
|
||||
# define MAGICK_UINTMAX_F @UINTMAX_F@
|
||||
|
||||
typedef @UINTPTR_T@ magick_uintptr_t;
|
||||
# define MAGICK_UINTPTR_F @UINTPTR_F@
|
||||
|
||||
# define MAGICK_SIZE_T_F @MAGICK_SIZE_T_F@
|
||||
# define MAGICK_SIZE_T @MAGICK_SIZE_T@
|
||||
|
||||
# define MAGICK_SSIZE_T_F @MAGICK_SSIZE_T_F@
|
||||
# define MAGICK_SSIZE_T @MAGICK_SSIZE_T@
|
||||
|
||||
#endif
|
||||
|
||||
/* 64-bit file and blob offset type */
|
||||
typedef magick_int64_t magick_off_t;
|
||||
#define MAGICK_OFF_F MAGICK_INT64_F
|
||||
|
||||
#if defined(__cplusplus) || defined(c_plusplus)
|
||||
}
|
||||
#endif /* defined(__cplusplus) || defined(c_plusplus) */
|
||||
|
||||
#endif /* _MAGICK_TYPES_H */
|
@ -1,16 +1,17 @@
|
||||
include(vcpkg_common_functions)
|
||||
|
||||
set(GM_VERSION 1.3.26)
|
||||
set(SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src/graphicsmagick-${GM_VERSION})
|
||||
set(SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src/graphicsmagick-${GM_VERSION}-windows-source)
|
||||
|
||||
vcpkg_download_distfile(ARCHIVE
|
||||
URLS "https://downloads.sourceforge.net/project/graphicsmagick/graphicsmagick/1.3.25/GraphicsMagick-${GM_VERSION}.tar.bz2"
|
||||
FILENAME "GraphicsMagick-${GM_VERSION}.tar.bz2"
|
||||
SHA512 c8791ec0e42527e90c602713c52826d1b8e8bbce7861f8cb48083d0f32465399c4f9a86f44342c5670f2fe54e6c5da878241ddf314c67d7fa98542b912ff61ba
|
||||
URLS "https://sourceforge.net/projects/graphicsmagick/files/graphicsmagick/${GM_VERSION}/GraphicsMagick-${GM_VERSION}-windows-source.7z"
|
||||
FILENAME "GraphicsMagick-${GM_VERSION}-windows-source.7z"
|
||||
SHA512 c45a054d082d9a7a2889a2235dd5b96bd564acf55bd581426ecd32c426f9797d7d56d6e5f25a5a7da8ebd26bf0d962372b5d48d86532dc6c57522d27c0d18ec8
|
||||
)
|
||||
vcpkg_extract_source_archive(${ARCHIVE})
|
||||
|
||||
file(COPY ${CMAKE_CURRENT_LIST_DIR}/CMakeLists.txt DESTINATION ${SOURCE_PATH})
|
||||
file(COPY ${CMAKE_CURRENT_LIST_DIR}/magick_types.h DESTINATION ${SOURCE_PATH}/magick)
|
||||
|
||||
# GM always requires a dynamic BZIP2. This patch makes this dependent if _DLL is defined
|
||||
vcpkg_apply_patches(
|
||||
|
@ -1,4 +1,4 @@
|
||||
Source: hypre
|
||||
Version: 2.11.1
|
||||
Version: 2.11.2
|
||||
Description: SCALABLE LINEAR SOLVERS AND MULTIGRID METHODS
|
||||
Build-Depends: msmpi
|
@ -1,5 +1,5 @@
|
||||
--- a/CMakeLists.txt Thu Jun 09 15:56:18 2016
|
||||
+++ b/CMakeLists.txt Wed Jan 04 18:27:54 2017
|
||||
--- a/CMakeLists.txt Mon Mar 13 21:37:24 2017
|
||||
+++ b/CMakeLists.txt Sun Aug 06 19:34:00 2017
|
||||
@@ -1,6 +1,8 @@
|
||||
cmake_minimum_required (VERSION 2.8.8)
|
||||
project (hypre)
|
||||
@ -7,9 +7,9 @@
|
||||
+include(GenerateExportHeader)
|
||||
+
|
||||
# The version number.
|
||||
set (HYPRE_VERSION 2.11.1)
|
||||
set (HYPRE_DATE 2016/06/09)
|
||||
@@ -616,6 +618,8 @@
|
||||
set (HYPRE_VERSION 2.11.2)
|
||||
set (HYPRE_DATE 2017/03/13)
|
||||
@@ -618,6 +620,8 @@
|
||||
struct_ls/sparse_msg_solve.c
|
||||
)
|
||||
|
||||
@ -18,7 +18,7 @@
|
||||
# Headers and sources: sstruct_mv
|
||||
list (APPEND HYPRE_HEADERS
|
||||
sstruct_mv/HYPRE_sstruct_mv.h
|
||||
@@ -756,11 +760,11 @@
|
||||
@@ -758,11 +762,11 @@
|
||||
find_package (MPI)
|
||||
if ((MPI_C_FOUND) AND (NOT CMAKE_C_COMPILER STREQUAL MPI_C_COMPILER))
|
||||
include_directories (${MPI_C_INCLUDE_PATH})
|
||||
@ -32,13 +32,15 @@
|
||||
endif ()
|
||||
endif (NOT HYPRE_SEQUENTIAL)
|
||||
|
||||
@@ -802,8 +806,19 @@
|
||||
endif ()
|
||||
@@ -807,7 +811,23 @@
|
||||
|
||||
add_library (HYPRE ${HYPRE_SOURCES} ${FEI_LIBS})
|
||||
-
|
||||
|
||||
-install (TARGETS HYPRE DESTINATION lib)
|
||||
+if (NOT HYPRE_SEQUENTIAL)
|
||||
+ target_link_libraries(HYPRE ${MPI_C_LIBRARIES})
|
||||
+endif()
|
||||
+
|
||||
+if (WIN32 AND BUILD_SHARED_LIBS)
|
||||
+ set_target_properties(HYPRE PROPERTIES WINDOWS_EXPORT_ALL_SYMBOLS ON)
|
||||
+endif()
|
||||
@ -51,6 +53,7 @@
|
||||
+ LIBRARY DESTINATION lib
|
||||
+ ARCHIVE DESTINATION lib
|
||||
+)
|
||||
+
|
||||
install (FILES ${HYPRE_HEADERS} DESTINATION include)
|
||||
|
||||
# add_subdirectory (test EXCLUDE_FROM_ALL)
|
||||
|
@ -1,9 +1,9 @@
|
||||
include(vcpkg_common_functions)
|
||||
set(SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src/hypre-2.11.1/src)
|
||||
set(SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src/hypre-2.11.2/src)
|
||||
vcpkg_download_distfile(ARCHIVE
|
||||
URLS "http://computation.llnl.gov/projects/hypre-scalable-linear-solvers-multigrid-methods/download/hypre-2.11.1.tar.gz"
|
||||
FILENAME "hypre-2.11.1.tar.gz"
|
||||
SHA512 4266c1b5225bcc97781246475100382f4929d7c918c854570a36b90602e8f111a4893cd1c93b95c68305c851898b970dd92ac173efe9211be5bb914d3c3c5d83
|
||||
URLS "http://computation.llnl.gov/projects/hypre-scalable-linear-solvers-multigrid-methods/download/hypre-2.11.2.tar.gz"
|
||||
FILENAME "hypre-2.11.2.tar.gz"
|
||||
SHA512 a06321028121e5420fa944ce4fae5f9b96e6021ec2802e68ec3c349f19a20543ed7eff774a4735666c5807ce124eb571b3f86757c67e91faa1c683c3f657469f
|
||||
)
|
||||
vcpkg_extract_source_archive(${ARCHIVE})
|
||||
|
||||
|
4
ports/jemalloc/CONTROL
Normal file
4
ports/jemalloc/CONTROL
Normal file
@ -0,0 +1,4 @@
|
||||
Source: jemalloc
|
||||
Version: 4.3.1-1
|
||||
Description: jemalloc is a general purpose malloc(3) implementation that emphasizes fragmentation avoidance and scalable concurrency support
|
||||
Build-Depends:
|
67
ports/jemalloc/fix-cmakelists.patch
Normal file
67
ports/jemalloc/fix-cmakelists.patch
Normal file
@ -0,0 +1,67 @@
|
||||
diff --git a/CMakeLists.txt b/CMakeLists.txt
|
||||
index 06e83ef..229e17a 100644
|
||||
--- a/CMakeLists.txt
|
||||
+++ b/CMakeLists.txt
|
||||
@@ -57,6 +57,7 @@ option(enable-lazy-lock "Enable lazy locking (only lock when multi-threaded" OFF
|
||||
option(force_lazy_lock "Forcing lazy-lock to avoid allocator/threading bootstrap issues" OFF)
|
||||
# install_prefix - installation directory prefix
|
||||
# with-xslroot=<path> XSL stylesheet root path
|
||||
+option(build-tests "Build tests" OFF)
|
||||
|
||||
set (PACKAGE_NAME "jemalloc")
|
||||
project (${PACKAGE_NAME} C)
|
||||
@@ -711,12 +712,8 @@ endif()
|
||||
|
||||
# The original library, delivery product
|
||||
set(LIBJEMALLOCLIB jemalloc${install_suffix})
|
||||
-add_library(${LIBJEMALLOCLIB} STATIC ${C_SRCS})
|
||||
-
|
||||
-# Now add shared library. Needed for integration tests
|
||||
-# and a benchmark
|
||||
-set(LIBJEMALLOCSO jemallocso${install_suffix})
|
||||
-add_library(${LIBJEMALLOCSO} SHARED ${C_SRCS})
|
||||
+set(LIBJEMALLOCSO ${LIBJEMALLOCLIB})
|
||||
+add_library(${LIBJEMALLOCLIB} ${C_SRCS})
|
||||
|
||||
if(WIN32)
|
||||
# May want to replace /d2Zi+ to /Zo
|
||||
@@ -745,8 +745,6 @@ if(WIN32)
|
||||
# either impport or export which is both wrong for a static library
|
||||
set_target_properties(${LIBJEMALLOCLIB}
|
||||
PROPERTIES
|
||||
- COMPILE_DEFINITIONS
|
||||
- "JEMALLOC_EXPORT="
|
||||
CMAKE_COMPILE_PDB_OUTPUT_DIRECTORY_DEBUG
|
||||
${PROJECT_BINARY_DIR}/Debug
|
||||
CMAKE_COMPILE_PDB_OUTPUT_DIRECTORY_RELEASE
|
||||
@@ -754,6 +752,9 @@ if(WIN32)
|
||||
COMPILE_PDB_NAME
|
||||
${LIBJEMALLOCLIB}
|
||||
)
|
||||
+ if(NOT BUILD_SHARED_LIBS)
|
||||
+ target_compile_definitions(${LIBJEMALLOCLIB} "JEMALLOC_EXPORT=")
|
||||
+ endif()
|
||||
|
||||
endif()
|
||||
|
||||
@@ -825,6 +822,14 @@ if(C_UTIL_INTEGRATION_DEFS)
|
||||
"${C_UTIL_INTEGRATION_DEFS}")
|
||||
endif()
|
||||
|
||||
+install(FILES include/jemalloc/jemalloc${install_suffix}.h
|
||||
+ DESTINATION include/jemalloc)
|
||||
+
|
||||
+install(TARGETS ${LIBJEMALLOCSO}
|
||||
+ RUNTIME DESTINATION bin
|
||||
+ LIBRARY DESTINATION lib
|
||||
+ ARCHIVE DESTINATION lib)
|
||||
+if (build-tests)
|
||||
##################################################################
|
||||
# Common source for Unit, Integration and stress test libraries
|
||||
set(C_TESTLIB_SRCS
|
||||
@@ -1028,4 +1033,4 @@ foreach(sourcefile ${TESTS_INTEGRATION})
|
||||
add_test(NAME ${exename} COMMAND ${exename})
|
||||
add_dependencies(check ${exename})
|
||||
endforeach(sourcefile ${TESTS_UNIT})
|
||||
-
|
||||
+endif()
|
30
ports/jemalloc/fix-utilities.patch
Normal file
30
ports/jemalloc/fix-utilities.patch
Normal file
@ -0,0 +1,30 @@
|
||||
diff --git a/Utilities.cmake b/Utilities.cmake
|
||||
index 562e948..d2d3530 100644
|
||||
--- a/Utilities.cmake
|
||||
+++ b/Utilities.cmake
|
||||
@@ -633,9 +633,11 @@ file(TO_NATIVE_PATH "${file_path}" ntv_file_path)
|
||||
# This converts #undefs into #cmakedefines so configure_file can handle it
|
||||
set(PS_CMD
|
||||
"Get-Content \"${ntv_file_path}\" |
|
||||
-ForEach {
|
||||
+ForEach {
|
||||
if($_ -match '^#undef[ \t]*[^ \t]*')
|
||||
- { $_ -replace '^#undef[ \t]*([^ \t]*)','#cmakedefine $1 @$1@' } else {$_}}"
|
||||
+ { $_ -replace '^#undef[ \t]*([^ \t]*)','#cmakedefine $1 @$1@' } else {$_}
|
||||
+} |
|
||||
+Set-Content \"${ntv_file_path}.cmake\""
|
||||
)
|
||||
|
||||
if(EXISTS ${file_path})
|
||||
@@ -646,9 +648,8 @@ if(EXISTS ${file_path})
|
||||
# Convert autoconf .in into a cmake .in
|
||||
execute_process(COMMAND powershell -Command "${PS_CMD}"
|
||||
RESULT_VARIABLE error_level
|
||||
- ERROR_VARIABLE error_output
|
||||
- OUTPUT_FILE ${file_path}.cmake)
|
||||
-
|
||||
+ ERROR_VARIABLE error_output)
|
||||
+
|
||||
if(NOT ${error_level} EQUAL 0)
|
||||
message(FATAL_ERROR "Powershell completed with ${error_level} : ${error_output}")
|
||||
endif()
|
36
ports/jemalloc/portfile.cmake
Normal file
36
ports/jemalloc/portfile.cmake
Normal file
@ -0,0 +1,36 @@
|
||||
if (VCPKG_LIBRARY_LINKAGE STREQUAL static)
|
||||
message(STATUS "Warning: Static building not supported yet. Building dynamic.")
|
||||
set(VCPKG_LIBRARY_LINKAGE dynamic)
|
||||
endif()
|
||||
|
||||
include(vcpkg_common_functions)
|
||||
|
||||
vcpkg_from_github(
|
||||
OUT_SOURCE_PATH SOURCE_PATH
|
||||
REPO jemalloc/jemalloc-cmake
|
||||
REF jemalloc-cmake.4.3.1
|
||||
SHA512 e94b62ec3a53acc0ab5acb247d7646bc172108e80f592bb41c2dd50d181cbbeb33d623adf28415ffc0a0e2de3818af2dfe4c04af75ac891ef5042bc5bb186886
|
||||
HEAD_REF master
|
||||
)
|
||||
vcpkg_apply_patches(
|
||||
SOURCE_PATH ${SOURCE_PATH}
|
||||
PATCHES
|
||||
"${CMAKE_CURRENT_LIST_DIR}/fix-cmakelists.patch"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/fix-utilities.patch"
|
||||
)
|
||||
|
||||
vcpkg_configure_cmake(
|
||||
SOURCE_PATH ${SOURCE_PATH}
|
||||
PREFER_NINJA
|
||||
OPTIONS -DGIT_FOUND=OFF -DCMAKE_DISABLE_FIND_PACKAGE_Git=ON
|
||||
)
|
||||
|
||||
vcpkg_install_cmake()
|
||||
|
||||
vcpkg_copy_pdbs()
|
||||
|
||||
file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include)
|
||||
|
||||
# Handle copyright
|
||||
file(COPY ${SOURCE_PATH}/COPYING DESTINATION ${CURRENT_PACKAGES_DIR}/share/jemalloc)
|
||||
file(RENAME ${CURRENT_PACKAGES_DIR}/share/jemalloc/COPYING ${CURRENT_PACKAGES_DIR}/share/jemalloc/copyright)
|
53
ports/libtheora/0001-fix-uwp.patch
Normal file
53
ports/libtheora/0001-fix-uwp.patch
Normal file
@ -0,0 +1,53 @@
|
||||
From 47eb8d07a8caaa6cc1e6e906a7cd5b44ee0fb624 Mon Sep 17 00:00:00 2001
|
||||
From: Mikhail Paulyshka <me@mixaill.tk>
|
||||
Date: Thu, 27 Jul 2017 04:24:36 +0300
|
||||
Subject: [PATCH] remove redundant assignments
|
||||
|
||||
---
|
||||
lib/tokenize.c | 16 ++++++++--------
|
||||
1 file changed, 8 insertions(+), 8 deletions(-)
|
||||
|
||||
diff --git a/lib/tokenize.c b/lib/tokenize.c
|
||||
index 57b7aa8..3f53fb5 100644
|
||||
--- a/lib/tokenize.c
|
||||
+++ b/lib/tokenize.c
|
||||
@@ -487,11 +487,11 @@ int oc_enc_tokenize_ac(oc_enc_ctx *_enc,int _pli,ptrdiff_t _fragi,
|
||||
zzj=64;
|
||||
for(zzi=OC_MINI(_zzi,63);zzi>0;zzi--){
|
||||
ogg_uint32_t best_cost;
|
||||
- int best_bits=best_bits;
|
||||
- int best_next=best_next;
|
||||
- int best_token=best_token;
|
||||
- int best_eb=best_eb;
|
||||
- int best_qc=best_qc;
|
||||
+ int best_bits;
|
||||
+ int best_next;
|
||||
+ int best_token;
|
||||
+ int best_eb;
|
||||
+ int best_qc;
|
||||
ogg_uint32_t d2;
|
||||
int dq;
|
||||
int qc_m;
|
||||
@@ -1091,8 +1091,8 @@ void oc_enc_tokenize_dc_frag_list(oc_enc_ctx *_enc,int _pli,
|
||||
int neobs1;
|
||||
int token;
|
||||
int eb;
|
||||
- int token1=token1;
|
||||
- int eb1=eb1;
|
||||
+ int token1;
|
||||
+ int eb1;
|
||||
/*Return immediately if there are no coded fragments; otherwise we'd flush
|
||||
any trailing EOB run into the AC 1 list and never read it back out.*/
|
||||
if(_ncoded_fragis<=0)return;
|
||||
@@ -1328,7 +1328,7 @@ void oc_enc_tokenize_finish(oc_enc_ctx *_enc){
|
||||
int new_eb;
|
||||
int zzj;
|
||||
int plj;
|
||||
- ptrdiff_t ti=ti;
|
||||
+ ptrdiff_t ti;
|
||||
int run_count;
|
||||
/*Make sure this coefficient has tokens at all.*/
|
||||
if(_enc->ndct_tokens[pli][zzi]<=0)continue;
|
||||
--
|
||||
2.12.2.windows.2
|
||||
|
@ -1,4 +1,5 @@
|
||||
project(theora)
|
||||
cmake_minimum_required(VERSION 3.0)
|
||||
project(theora LANGUAGES C)
|
||||
|
||||
set(CMAKE_MODULE_PATH "${PROJECT_SOURCE_DIR}")
|
||||
FIND_PACKAGE(OGG REQUIRED)
|
||||
@ -7,19 +8,36 @@ file(GLOB HEADERS
|
||||
"include/theora/codec.h"
|
||||
"include/theora/theora.h"
|
||||
"include/theora/theoradec.h"
|
||||
"include/theora/theoraenc.h"
|
||||
)
|
||||
|
||||
|
||||
include_directories("include")
|
||||
include_directories(${OGG_INCLUDE_DIR})
|
||||
|
||||
file(GLOB SOURCES
|
||||
set(LIBTHEORA_COMMON
|
||||
"lib/apiwrapper.c"
|
||||
"lib/bitpack.c"
|
||||
"lib/dequant.c"
|
||||
"lib/fragment.c"
|
||||
"lib/idct.c"
|
||||
"lib/info.c"
|
||||
"lib/internal.c"
|
||||
"lib/state.c"
|
||||
"lib/quant.c"
|
||||
|
||||
"lib/x86_vc/mmxfrag.c"
|
||||
"lib/x86_vc/mmxidct.c"
|
||||
"lib/x86_vc/mmxstate.c"
|
||||
"lib/x86_vc/x86cpu.c"
|
||||
"lib/x86_vc/x86state.c"
|
||||
)
|
||||
|
||||
set(LIBTHEORA_ENC
|
||||
"lib/analyze.c"
|
||||
"lib/encapiwrapper.c"
|
||||
"lib/encfrag.c"
|
||||
"lib/encinfo.c"
|
||||
"lib/encode.c"
|
||||
#"lib/encoder_disabled.c"
|
||||
"lib/enquant.c"
|
||||
"lib/fdct.c"
|
||||
"lib/huffenc.c"
|
||||
@ -27,41 +45,47 @@ file(GLOB SOURCES
|
||||
"lib/mcenc.c"
|
||||
"lib/rate.c"
|
||||
"lib/tokenize.c"
|
||||
|
||||
"lib/x86_vc/mmxencfrag.c"
|
||||
"lib/x86_vc/mmxfdct.c"
|
||||
"lib/x86_vc/x86cpu.c"
|
||||
"lib/x86_vc/x86enc.c"
|
||||
"lib/apiwrapper.c"
|
||||
"lib/bitpack.c"
|
||||
)
|
||||
|
||||
set(LIBTHEORA_DEC
|
||||
"lib/decapiwrapper.c"
|
||||
"lib/decinfo.c"
|
||||
"lib/decode.c"
|
||||
"lib/dequant.c"
|
||||
"lib/fragment.c"
|
||||
"lib/huffdec.c"
|
||||
"lib/idct.c"
|
||||
"lib/info.c"
|
||||
"lib/internal.c"
|
||||
"lib/quant.c"
|
||||
"lib/state.c"
|
||||
"lib/x86_vc/mmxfrag.c"
|
||||
"lib/x86_vc/mmxidct.c"
|
||||
"lib/x86_vc/mmxstate.c"
|
||||
"lib/x86_vc/x86state.c"
|
||||
"win32/xmingw32/libtheoradec-all.def"
|
||||
)
|
||||
|
||||
add_definitions(-D_CRT_SECURE_NO_DEPRECATE -D_CRT_NONSTDC_NO_DEPRECATE -D_BIND_TO_CURRENT_CRT_VERSION)
|
||||
add_definitions(-D_CRT_SECURE_NO_DEPRECATE)
|
||||
add_definitions(-D_CRT_NONSTDC_NO_DEPRECATE)
|
||||
|
||||
option(USE_X86 "Use x86 optimization" OFF)
|
||||
if(USE_X86)
|
||||
add_definitions(-DOC_X86_ASM)
|
||||
endif()
|
||||
|
||||
if (${BUILD_SHARED_LIBS})
|
||||
add_definitions(-DLIBTHEORA_EXPORTS)
|
||||
endif()
|
||||
|
||||
add_library(theora ${SOURCES} ${HEADERS})
|
||||
add_library(theora-common OBJECT ${LIBTHEORA_COMMON} ${HEADERS})
|
||||
add_library(theora-enc OBJECT ${LIBTHEORA_ENC} ${HEADERS})
|
||||
add_library(theora-dec OBJECT ${LIBTHEORA_DEC} ${HEADERS})
|
||||
|
||||
add_library(theora $<TARGET_OBJECTS:theora-common> $<TARGET_OBJECTS:theora-enc> $<TARGET_OBJECTS:theora-dec> "libtheora.def")
|
||||
target_link_libraries(theora ${OGG_LIBRARY})
|
||||
|
||||
add_library(theoraenc $<TARGET_OBJECTS:theora-common> $<TARGET_OBJECTS:theora-enc> "win32/xmingw32/libtheoraenc-all.def")
|
||||
target_link_libraries(theoraenc ${OGG_LIBRARY})
|
||||
|
||||
add_library(theoradec $<TARGET_OBJECTS:theora-common> $<TARGET_OBJECTS:theora-dec> "win32/xmingw32/libtheoradec-all.def")
|
||||
target_link_libraries(theoradec ${OGG_LIBRARY})
|
||||
|
||||
install(FILES ${HEADERS} DESTINATION include/theora)
|
||||
|
||||
install(TARGETS theora
|
||||
install(TARGETS theora theoraenc theoradec
|
||||
RUNTIME DESTINATION bin
|
||||
LIBRARY DESTINATION bin
|
||||
ARCHIVE DESTINATION lib
|
||||
|
@ -1,4 +1,4 @@
|
||||
Source: libtheora
|
||||
Version: 1.1.1
|
||||
Version: 1.2.0alpha1-20170719~vcpkg1
|
||||
Description: Theora is a free and open video compression format from the Xiph.org Foundation.
|
||||
Build-Depends: libogg
|
||||
|
61
ports/libtheora/libtheora.def
Normal file
61
ports/libtheora/libtheora.def
Normal file
@ -0,0 +1,61 @@
|
||||
EXPORTS
|
||||
; Old alpha API
|
||||
theora_version_string
|
||||
theora_version_number
|
||||
theora_decode_header
|
||||
theora_decode_init
|
||||
theora_decode_packetin
|
||||
theora_decode_YUVout
|
||||
theora_control
|
||||
theora_packet_isheader
|
||||
theora_packet_iskeyframe
|
||||
theora_granule_shift
|
||||
theora_granule_frame
|
||||
theora_granule_time
|
||||
theora_info_init
|
||||
theora_info_clear
|
||||
theora_clear
|
||||
theora_comment_init
|
||||
theora_comment_add
|
||||
theora_comment_add_tag
|
||||
theora_comment_query
|
||||
theora_comment_query_count
|
||||
theora_comment_clear
|
||||
; New theora-exp API
|
||||
th_version_string
|
||||
th_version_number
|
||||
th_decode_headerin
|
||||
th_decode_alloc
|
||||
th_setup_free
|
||||
th_decode_ctl
|
||||
th_decode_packetin
|
||||
th_decode_ycbcr_out
|
||||
th_decode_free
|
||||
th_packet_isheader
|
||||
th_packet_iskeyframe
|
||||
th_granule_frame
|
||||
th_granule_time
|
||||
th_info_init
|
||||
th_info_clear
|
||||
th_comment_init
|
||||
th_comment_add
|
||||
th_comment_add_tag
|
||||
th_comment_query
|
||||
th_comment_query_count
|
||||
th_comment_clear
|
||||
; Old alpha API
|
||||
theora_encode_init
|
||||
theora_encode_YUVin
|
||||
theora_encode_packetout
|
||||
theora_encode_header
|
||||
theora_encode_comment
|
||||
theora_encode_tables
|
||||
; New theora-exp API
|
||||
th_encode_alloc
|
||||
th_encode_ctl
|
||||
th_encode_flushheader
|
||||
th_encode_ycbcr_in
|
||||
th_encode_packetout
|
||||
th_encode_free
|
||||
TH_VP31_QUANT_INFO
|
||||
TH_VP31_HUFF_CODES
|
@ -1,31 +1,41 @@
|
||||
# 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/libtheora-1.1.1)
|
||||
vcpkg_download_distfile(ARCHIVE
|
||||
URLS "http://downloads.xiph.org/releases/theora/libtheora-1.1.1.tar.bz2"
|
||||
FILENAME "libtheora-1.1.1.tar.bz2"
|
||||
SHA512 9ab9b3af1c35d16a7d6d84f61f59ef3180132e30c27bdd7c0fa2683e0d00e2c791accbc7fd2c90718cc947d8bd10ee4a5940fb55f90f1fd7b0ed30583a47dbbd
|
||||
|
||||
vcpkg_from_github(
|
||||
OUT_SOURCE_PATH SOURCE_PATH
|
||||
REPO xiph/theora
|
||||
REF fa5707d68c2a4338d58aa8b6afc95539ba89fecb
|
||||
SHA512 e33da23a17e93709dfe4421b512cedbd9aab0d706f5650e0436f9c8e1cde76b902c3338d46750bb86d83e1bceb111ee84e90df36fb59b5c2e7f7aee1610752b2
|
||||
HEAD_REF master
|
||||
)
|
||||
|
||||
vcpkg_apply_patches(
|
||||
SOURCE_PATH ${SOURCE_PATH}
|
||||
PATCHES
|
||||
${CMAKE_CURRENT_LIST_DIR}/0001-fix-uwp.patch
|
||||
)
|
||||
vcpkg_extract_source_archive(${ARCHIVE})
|
||||
|
||||
file(COPY ${CMAKE_CURRENT_LIST_DIR}/CMakeLists.txt DESTINATION ${SOURCE_PATH})
|
||||
file(COPY ${CMAKE_CURRENT_LIST_DIR}/libtheora.def DESTINATION ${SOURCE_PATH})
|
||||
file(COPY ${CMAKE_CURRENT_LIST_DIR}/FindOGG.cmake DESTINATION ${SOURCE_PATH})
|
||||
|
||||
if(VCPKG_TARGET_ARCHITECTURE STREQUAL "x86")
|
||||
set(THEORA_X86_OPT ON)
|
||||
else()
|
||||
set(THEORA_X86_OPT OFF)
|
||||
endif()
|
||||
|
||||
vcpkg_configure_cmake(
|
||||
SOURCE_PATH ${SOURCE_PATH}
|
||||
PREFER_NINJA
|
||||
OPTIONS
|
||||
-DUSE_X86=${THEORA_X86_OPT}
|
||||
)
|
||||
|
||||
vcpkg_build_cmake()
|
||||
vcpkg_install_cmake()
|
||||
vcpkg_copy_pdbs()
|
||||
|
||||
file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include)
|
||||
|
||||
# Handle copyright
|
||||
file(COPY ${SOURCE_PATH}/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/libtheora)
|
||||
file(RENAME ${CURRENT_PACKAGES_DIR}/share/libtheora/LICENSE ${CURRENT_PACKAGES_DIR}/share/libtheora/copyright)
|
||||
|
@ -65,8 +65,15 @@ file(TO_NATIVE_PATH "${SDK_ARCHIVE}" SDK_ARCHIVE)
|
||||
file(TO_NATIVE_PATH "${SOURCE_PATH}/sdk" SDK_SOURCE_DIR)
|
||||
file(TO_NATIVE_PATH "${CURRENT_BUILDTREES_DIR}/msiexec-${TARGET_TRIPLET}.log" MSIEXEC_LOG_PATH)
|
||||
|
||||
set(PARAM_MSI "/a \"${SDK_ARCHIVE}\"")
|
||||
set(PARAM_LOG "/log \"${MSIEXEC_LOG_PATH}\"")
|
||||
set(PARAM_TARGET_DIR "TARGETDIR=\"${SDK_SOURCE_DIR}\"")
|
||||
set(SCRIPT_FILE ${CURRENT_BUILDTREES_DIR}/msiextract-msmpi.bat)
|
||||
# Write the command out to a script file and run that to avoid weird escaping behavior when spaces are present
|
||||
file(WRITE ${SCRIPT_FILE} "msiexec ${PARAM_MSI} /qn ${PARAM_LOG} ${PARAM_TARGET_DIR}")
|
||||
|
||||
vcpkg_execute_required_process(
|
||||
COMMAND msiexec /a ${SDK_ARCHIVE} /qn TARGETDIR=${SDK_SOURCE_DIR} /log "${MSIEXEC_LOG_PATH}"
|
||||
COMMAND ${SCRIPT_FILE}
|
||||
WORKING_DIRECTORY ${CURRENT_BUILDTREES_DIR}
|
||||
LOGNAME extract-sdk
|
||||
)
|
||||
|
@ -1,3 +1,3 @@
|
||||
Source: openblas
|
||||
Version: v0.2.19-2
|
||||
Version: v0.2.20
|
||||
Description: OpenBLAS is an optimized BLAS library based on GotoBLAS2 1.13 BSD version.
|
||||
|
@ -1,9 +1,9 @@
|
||||
diff --git a/CMakeLists.txt b/CMakeLists.txt
|
||||
index ff42643..1a013ee 100644
|
||||
index a379f549..f95a872b 100644
|
||||
--- a/CMakeLists.txt
|
||||
+++ b/CMakeLists.txt
|
||||
@@ -13,7 +13,7 @@ enable_language(ASM)
|
||||
enable_language(C)
|
||||
@@ -16,7 +16,7 @@ enable_language(C)
|
||||
include(GNUInstallDirs)
|
||||
|
||||
if(MSVC)
|
||||
-set(OpenBLAS_LIBNAME libopenblas)
|
||||
@ -11,7 +11,7 @@ index ff42643..1a013ee 100644
|
||||
else()
|
||||
set(OpenBLAS_LIBNAME openblas)
|
||||
endif()
|
||||
@@ -174,6 +174,10 @@ set_target_properties(${OpenBLAS_LIBNAME} PROPERTIES
|
||||
@@ -197,6 +197,10 @@ set_target_properties(${OpenBLAS_LIBNAME} PROPERTIES
|
||||
SOVERSION ${OpenBLAS_MAJOR_VERSION}
|
||||
)
|
||||
|
||||
@ -22,3 +22,40 @@ index ff42643..1a013ee 100644
|
||||
|
||||
# TODO: Why is the config saved here? Is this necessary with CMake?
|
||||
#Save the config files for installation
|
||||
diff --git a/cmake/prebuild.cmake b/cmake/prebuild.cmake
|
||||
index a7f98bfb..02ab7080 100644
|
||||
--- a/cmake/prebuild.cmake
|
||||
+++ b/cmake/prebuild.cmake
|
||||
@@ -37,6 +37,10 @@
|
||||
|
||||
# CPUIDEMU = ../../cpuid/table.o
|
||||
|
||||
+if (NOT DEFINED BLASHELPER_BINARY_DIR)
|
||||
+ set(BLASHELPER_BINARY_DIR "${PROJECT_BINARY_DIR}")
|
||||
+endif ()
|
||||
+
|
||||
if (DEFINED CPUIDEMU)
|
||||
set(EXFLAGS "-DCPUIDEMU -DVENDOR=99")
|
||||
endif ()
|
||||
@@ -95,8 +99,8 @@ endif ()
|
||||
message(STATUS "Running getarch")
|
||||
|
||||
# use the cmake binary w/ the -E param to run a shell command in a cross-platform way
|
||||
-execute_process(COMMAND ${PROJECT_BINARY_DIR}/${GETARCH_BIN} 0 OUTPUT_VARIABLE GETARCH_MAKE_OUT)
|
||||
-execute_process(COMMAND ${PROJECT_BINARY_DIR}/${GETARCH_BIN} 1 OUTPUT_VARIABLE GETARCH_CONF_OUT)
|
||||
+execute_process(COMMAND ${BLASHELPER_BINARY_DIR}/${GETARCH_BIN} 0 OUTPUT_VARIABLE GETARCH_MAKE_OUT)
|
||||
+execute_process(COMMAND ${BLASHELPER_BINARY_DIR}/${GETARCH_BIN} 1 OUTPUT_VARIABLE GETARCH_CONF_OUT)
|
||||
|
||||
message(STATUS "GETARCH results:\n${GETARCH_MAKE_OUT}")
|
||||
|
||||
@@ -121,8 +125,8 @@ if (NOT "${CMAKE_SYSTEM_NAME}" STREQUAL "WindowsStore")
|
||||
endif ()
|
||||
|
||||
# use the cmake binary w/ the -E param to run a shell command in a cross-platform way
|
||||
-execute_process(COMMAND ${PROJECT_BINARY_DIR}/${GETARCH2_BIN} 0 OUTPUT_VARIABLE GETARCH2_MAKE_OUT)
|
||||
-execute_process(COMMAND ${PROJECT_BINARY_DIR}/${GETARCH2_BIN} 1 OUTPUT_VARIABLE GETARCH2_CONF_OUT)
|
||||
+execute_process(COMMAND ${BLASHELPER_BINARY_DIR}/${GETARCH2_BIN} 0 OUTPUT_VARIABLE GETARCH2_MAKE_OUT)
|
||||
+execute_process(COMMAND ${BLASHELPER_BINARY_DIR}/${GETARCH2_BIN} 1 OUTPUT_VARIABLE GETARCH2_CONF_OUT)
|
||||
|
||||
# append config data from getarch_2nd to the TARGET file and read in CMake vars
|
||||
file(APPEND ${TARGET_CONF} ${GETARCH2_CONF_OUT})
|
||||
|
@ -12,7 +12,6 @@
|
||||
|
||||
include(vcpkg_common_functions)
|
||||
|
||||
|
||||
if(NOT VCPKG_TARGET_ARCHITECTURE STREQUAL "x64")
|
||||
message(FATAL_ERROR "openblas can only be built for x64 currently")
|
||||
endif()
|
||||
@ -22,11 +21,11 @@ if(VCPKG_LIBRARY_LINKAGE STREQUAL "static")
|
||||
set(VCPKG_LIBRARY_LINKAGE "dynamic")
|
||||
endif()
|
||||
|
||||
set(SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src/openblas-0.2.19)
|
||||
set(SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src/openblas-0.2.20)
|
||||
vcpkg_download_distfile(ARCHIVE
|
||||
URLS "https://codeload.github.com/xianyi/OpenBLAS/zip/v0.2.19"
|
||||
FILENAME "openblas-v0.2.19.zip"
|
||||
SHA512 d95dcd1ca5b3bdc5355969d10c22486f7e32f7dfc3a418b5d0a979d030e9f2ed242d2d78267a5896aa83d27b6041e13ee4c6694f9a589765535011eb22dad9e2
|
||||
URLS "https://codeload.github.com/xianyi/OpenBLAS/zip/v0.2.20"
|
||||
FILENAME "openblas-v0.2.20.zip"
|
||||
SHA512 c9cd7397bb026e3bb06c9407ad5ac26bf936258da81ac22132ceceb53c0235677e18a6046f1db8a75c8a92a614b2d156a3da89d684421a24bd283430ce55db7d
|
||||
)
|
||||
vcpkg_extract_source_archive(${ARCHIVE})
|
||||
|
||||
@ -35,11 +34,50 @@ vcpkg_apply_patches(
|
||||
PATCHES "${CMAKE_CURRENT_LIST_DIR}/install-openblas.patch"
|
||||
)
|
||||
|
||||
find_program(GIT NAMES git git.cmd)
|
||||
|
||||
# sed and awk are installed with git but in a different directory
|
||||
get_filename_component(GIT_EXE_PATH ${GIT} DIRECTORY)
|
||||
set(SED_EXE_PATH "${GIT_EXE_PATH}/../usr/bin")
|
||||
|
||||
# openblas require perl to generate .def for exports
|
||||
vcpkg_find_acquire_program(PERL)
|
||||
get_filename_component(PERL_EXE_PATH ${PERL} DIRECTORY)
|
||||
set(ENV{PATH} "$ENV{PATH};${PERL_EXE_PATH}")
|
||||
set(ENV{PATH} "$ENV{PATH};${PERL_EXE_PATH};${SED_EXE_PATH}")
|
||||
|
||||
# for UWP version, must build non uwp first for helper
|
||||
# binaries.
|
||||
if(VCPKG_CMAKE_SYSTEM_NAME STREQUAL "WindowsStore")
|
||||
message(STATUS "Building Windows helper files")
|
||||
set(TEMP_CMAKE_SYSTEM_NAME "${VCPKG_CMAKE_SYSTEM_NAME}")
|
||||
set(TEMP_CMAKE_SYSTEM_VERSION "${VCPKG_CMAKE_SYSTEM_VERSION}")
|
||||
set(TEMP_TARGET_TRIPLET "${TARGET_TRIPLET}")
|
||||
unset(VCPKG_CMAKE_SYSTEM_NAME)
|
||||
unset(VCPKG_CMAKE_SYSTEM_VERSION)
|
||||
set(TARGET_TRIPLET "x64-windows")
|
||||
|
||||
vcpkg_configure_cmake(
|
||||
SOURCE_PATH ${SOURCE_PATH}
|
||||
OPTIONS -DTARGET=NEHALEM -DBUILD_WITHOUT_LAPACK=ON
|
||||
)
|
||||
|
||||
# add just built path to environment for gen_config_h.exe,
|
||||
# getarch.exe and getarch_2nd.exe
|
||||
set(ENV{PATH} "$ENV{PATH};${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-rel")
|
||||
|
||||
# restore target build information
|
||||
set(VCPKG_CMAKE_SYSTEM_NAME "${TEMP_CMAKE_SYSTEM_NAME}")
|
||||
set(VCPKG_CMAKE_SYSTEM_VERSION "${TEMP_CMAKE_SYSTEM_VERSION}")
|
||||
set(TARGET_TRIPLET "${TEMP_TARGET_TRIPLET}")
|
||||
|
||||
message(STATUS "Finished building Windows helper files")
|
||||
|
||||
vcpkg_configure_cmake(
|
||||
SOURCE_PATH ${SOURCE_PATH}
|
||||
OPTIONS -DCMAKE_SYSTEM_PROCESSOR=AMD64 -DVS_WINRT_COMPONENT=TRUE -DBUILD_WITHOUT_LAPACK=ON
|
||||
"-DBLASHELPER_BINARY_DIR=${CURRENT_BUILDTREES_DIR}/x64-windows-rel")
|
||||
|
||||
else()
|
||||
vcpkg_configure_cmake(
|
||||
SOURCE_PATH ${SOURCE_PATH}
|
||||
OPTIONS -DTARGET=NEHALEM -DBUILD_WITHOUT_LAPACK=ON
|
||||
@ -49,6 +87,8 @@ vcpkg_configure_cmake(
|
||||
# OPTIONS_DEBUG -DDEBUGGABLE=1
|
||||
)
|
||||
|
||||
endif()
|
||||
|
||||
|
||||
vcpkg_install_cmake()
|
||||
|
||||
@ -65,7 +105,9 @@ string(REPLACE "#include \"common.h\"" "#include \"openblas_common.h\"" CBLAS_H
|
||||
file(WRITE ${CURRENT_PACKAGES_DIR}/include/cblas.h "${CBLAS_H}")
|
||||
|
||||
# openblas is BSD
|
||||
file(COPY ${CURRENT_BUILDTREES_DIR}/src/OpenBLAS-0.2.19/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/openblas)
|
||||
file(COPY ${SOURCE_PATH}/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/openblas)
|
||||
file(RENAME ${CURRENT_PACKAGES_DIR}/share/openblas/LICENSE ${CURRENT_PACKAGES_DIR}/share/openblas/copyright)
|
||||
|
||||
vcpkg_copy_pdbs()
|
||||
|
||||
file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include)
|
||||
|
@ -1,3 +1,3 @@
|
||||
Source: openjpeg
|
||||
Version: 2.1.2-2
|
||||
Version: 2.2.0
|
||||
Description: JPEG 2000 image library
|
||||
|
@ -1,17 +1,18 @@
|
||||
include(vcpkg_common_functions)
|
||||
set(SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src/openjpeg-2.1.2)
|
||||
vcpkg_download_distfile(ARCHIVE
|
||||
URLS "https://github.com/uclouvain/openjpeg/archive/v2.1.2.zip"
|
||||
FILENAME "openjpeg-2.1.2.zip"
|
||||
SHA512 45518b92b2a8e7218ab3efdebe1acf0437c01ab2e4d5769da17103a76ba38a7305fb36d0ceeca0576d53c071a3482d2d3f01d6e48a569191290bfba9274ef7b4
|
||||
vcpkg_from_github(
|
||||
OUT_SOURCE_PATH SOURCE_PATH
|
||||
REPO uclouvain/openjpeg
|
||||
REF v2.2.0
|
||||
SHA512 20651c380bee582ab1950994c424cc00061ad852e9c5438fb32a9809e3f275571a4cc7e92589add0d91debf2394262e58f441c2dd918809fc1c602ed68396a3a
|
||||
HEAD_REF master
|
||||
)
|
||||
vcpkg_extract_source_archive(${ARCHIVE})
|
||||
|
||||
vcpkg_configure_cmake(
|
||||
SOURCE_PATH ${SOURCE_PATH}
|
||||
PREFER_NINJA
|
||||
OPTIONS -DBUILD_CODEC:BOOL=OFF
|
||||
-DOPENJPEG_INSTALL_PACKAGE_DIR=share/openjpeg
|
||||
-DOPENJPEG_INSTALL_INCLUDE_DIR=include
|
||||
)
|
||||
|
||||
vcpkg_install_cmake()
|
||||
@ -20,14 +21,14 @@ file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include)
|
||||
|
||||
vcpkg_fixup_cmake_targets()
|
||||
|
||||
file(READ ${CURRENT_PACKAGES_DIR}/include/openjpeg-2.1/openjpeg.h OPENJPEG_H)
|
||||
file(READ ${CURRENT_PACKAGES_DIR}/include/openjpeg.h OPENJPEG_H)
|
||||
if(VCPKG_LIBRARY_LINKAGE STREQUAL "static")
|
||||
string(REPLACE "defined(OPJ_STATIC)" "1" OPENJPEG_H "${OPENJPEG_H}")
|
||||
else()
|
||||
string(REPLACE "defined(OPJ_STATIC)" "0" OPENJPEG_H "${OPENJPEG_H}")
|
||||
endif()
|
||||
string(REPLACE "defined(DLL_EXPORT)" "0" OPENJPEG_H "${OPENJPEG_H}")
|
||||
file(WRITE ${CURRENT_PACKAGES_DIR}/include/openjpeg-2.1/openjpeg.h "${OPENJPEG_H}")
|
||||
file(WRITE ${CURRENT_PACKAGES_DIR}/include/openjpeg.h "${OPENJPEG_H}")
|
||||
|
||||
# Handle copyright
|
||||
file(COPY ${SOURCE_PATH}/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/openjpeg)
|
||||
|
4
ports/pcl/CONTROL
Normal file
4
ports/pcl/CONTROL
Normal file
@ -0,0 +1,4 @@
|
||||
Source: pcl
|
||||
Version: 1.8.1
|
||||
Build-Depends: boost, eigen3, flann, qhull, vtk, openni2, qt5
|
||||
Description: Point Cloud Library (PCL) is open source library for 2D/3D image and point cloud processing.
|
63
ports/pcl/config.patch
Normal file
63
ports/pcl/config.patch
Normal file
@ -0,0 +1,63 @@
|
||||
diff --git a/PCLConfig.cmake.in b/PCLConfig.cmake.in
|
||||
index f4ef6a0ff..3a2c259dc 100644
|
||||
--- a/PCLConfig.cmake.in
|
||||
+++ b/PCLConfig.cmake.in
|
||||
@@ -155,7 +155,7 @@ macro(find_qhull)
|
||||
NAMES "@QHULL_LIBRARY_DEBUG_NAME@"
|
||||
HINTS "${QHULL_ROOT}" "$ENV{QHULL_ROOT}"
|
||||
PATHS "$ENV{PROGRAMFILES}/qhull" "$ENV{PROGRAMW6432}/qhull"
|
||||
- PATH_SUFFIXES project build bin lib)
|
||||
+ PATH_SUFFIXES project build bin debug/lib)
|
||||
|
||||
find_package_handle_standard_args(qhull DEFAULT_MSG QHULL_LIBRARY QHULL_INCLUDE_DIRS)
|
||||
|
||||
@@ -443,7 +443,7 @@ macro(find_flann)
|
||||
HINTS ${PC_FLANN_LIBDIR} ${PC_FLANN_LIBRARY_DIRS} "${FLANN_ROOT}" "$ENV{FLANN_ROOT}"
|
||||
PATHS "$ENV{PROGRAMFILES}/flann 1.6.9" "$ENV{PROGRAMW6432}/flann 1.6.9"
|
||||
"$ENV{PROGRAMFILES}/flann" "$ENV{PROGRAMW6432}/flann"
|
||||
- PATH_SUFFIXES lib)
|
||||
+ PATH_SUFFIXES debug/lib)
|
||||
|
||||
find_package_handle_standard_args(Flann DEFAULT_MSG FLANN_LIBRARY FLANN_INCLUDE_DIRS)
|
||||
if(FLANN_FOUND)
|
||||
@@ -715,25 +715,18 @@ file(TO_CMAKE_PATH "${PCL_DIR}" PCL_DIR)
|
||||
if(WIN32 AND NOT MINGW)
|
||||
# PCLConfig.cmake is installed to PCL_ROOT/cmake
|
||||
get_filename_component(PCL_ROOT "${PCL_DIR}" PATH)
|
||||
+ get_filename_component(PCL_ROOT "${PCL_ROOT}" PATH)
|
||||
else(WIN32 AND NOT MINGW)
|
||||
# PCLConfig.cmake is installed to PCL_ROOT/share/pcl-x.y
|
||||
get_filename_component(PCL_ROOT "${CMAKE_CURRENT_LIST_DIR}/../.." ABSOLUTE)
|
||||
endif(WIN32 AND NOT MINGW)
|
||||
|
||||
# check whether PCLConfig.cmake is found into a PCL installation or in a build tree
|
||||
-if(EXISTS "${PCL_ROOT}/include/pcl-${PCL_VERSION_MAJOR}.${PCL_VERSION_MINOR}/pcl/pcl_config.h")
|
||||
+if(EXISTS "${PCL_ROOT}/include/pcl/pcl_config.h")
|
||||
# Found a PCL installation
|
||||
# pcl_message("Found a PCL installation")
|
||||
- set(PCL_INCLUDE_DIRS "${PCL_ROOT}/include/pcl-${PCL_VERSION_MAJOR}.${PCL_VERSION_MINOR}")
|
||||
- set(PCL_LIBRARY_DIRS "${PCL_ROOT}/@LIB_INSTALL_DIR@")
|
||||
- if(EXISTS "${PCL_ROOT}/3rdParty")
|
||||
- set(PCL_ALL_IN_ONE_INSTALLER ON)
|
||||
- endif(EXISTS "${PCL_ROOT}/3rdParty")
|
||||
-elseif(EXISTS "${PCL_ROOT}/include/pcl/pcl_config.h")
|
||||
- # Found a non-standard (likely ANDROID) PCL installation
|
||||
- # pcl_message("Found a PCL installation")
|
||||
set(PCL_INCLUDE_DIRS "${PCL_ROOT}/include")
|
||||
- set(PCL_LIBRARY_DIRS "${PCL_ROOT}/lib")
|
||||
+ set(PCL_LIBRARY_DIRS "${PCL_ROOT}/@LIB_INSTALL_DIR@" "${PCL_ROOT}/debug/@LIB_INSTALL_DIR@")
|
||||
if(EXISTS "${PCL_ROOT}/3rdParty")
|
||||
set(PCL_ALL_IN_ONE_INSTALLER ON)
|
||||
endif(EXISTS "${PCL_ROOT}/3rdParty")
|
||||
@@ -743,9 +736,9 @@ elseif(EXISTS "${PCL_DIR}/include/pcl/pcl_config.h")
|
||||
set(PCL_INCLUDE_DIRS "${PCL_DIR}/include") # for pcl_config.h
|
||||
set(PCL_LIBRARY_DIRS "${PCL_DIR}/@LIB_INSTALL_DIR@")
|
||||
set(PCL_SOURCES_TREE "@CMAKE_SOURCE_DIR@")
|
||||
-else(EXISTS "${PCL_ROOT}/include/pcl-${PCL_VERSION_MAJOR}.${PCL_VERSION_MINOR}/pcl/pcl_config.h")
|
||||
+else(EXISTS "${PCL_ROOT}/include/pcl/pcl_config.h")
|
||||
pcl_report_not_found("PCL can not be found on this machine")
|
||||
-endif(EXISTS "${PCL_ROOT}/include/pcl-${PCL_VERSION_MAJOR}.${PCL_VERSION_MINOR}/pcl/pcl_config.h")
|
||||
+endif(EXISTS "${PCL_ROOT}/include/pcl/pcl_config.h")
|
||||
|
||||
#set a suffix for debug libraries
|
||||
set(PCL_DEBUG_SUFFIX "@CMAKE_DEBUG_POSTFIX@")
|
22
ports/pcl/config_install.patch
Normal file
22
ports/pcl/config_install.patch
Normal file
@ -0,0 +1,22 @@
|
||||
diff --git a/cmake/pcl_utils.cmake b/cmake/pcl_utils.cmake
|
||||
index 69f1e76a4..37305815e 100644
|
||||
--- a/cmake/pcl_utils.cmake
|
||||
+++ b/cmake/pcl_utils.cmake
|
||||
@@ -105,7 +105,7 @@ macro(SET_INSTALL_DIRS)
|
||||
endif (NOT DEFINED LIB_INSTALL_DIR)
|
||||
if(NOT ANDROID)
|
||||
set(INCLUDE_INSTALL_ROOT
|
||||
- "include/${PROJECT_NAME_LOWER}-${PCL_MAJOR_VERSION}.${PCL_MINOR_VERSION}")
|
||||
+ "include")
|
||||
else(NOT ANDROID)
|
||||
set(INCLUDE_INSTALL_ROOT "include") # Android, don't put into subdir
|
||||
endif(NOT ANDROID)
|
||||
@@ -114,7 +114,7 @@ macro(SET_INSTALL_DIRS)
|
||||
set(BIN_INSTALL_DIR "bin")
|
||||
set(PKGCFG_INSTALL_DIR "${LIB_INSTALL_DIR}/pkgconfig")
|
||||
if(WIN32 AND NOT MINGW)
|
||||
- set(PCLCONFIG_INSTALL_DIR "cmake")
|
||||
+ set(PCLCONFIG_INSTALL_DIR "share/pcl")
|
||||
else(WIN32 AND NOT MINGW)
|
||||
set(PCLCONFIG_INSTALL_DIR "share/${PROJECT_NAME_LOWER}-${PCL_MAJOR_VERSION}.${PCL_MINOR_VERSION}")
|
||||
endif(WIN32 AND NOT MINGW)
|
15
ports/pcl/find_flann.patch
Normal file
15
ports/pcl/find_flann.patch
Normal file
@ -0,0 +1,15 @@
|
||||
diff --git a/cmake/Modules/FindFLANN.cmake b/cmake/Modules/FindFLANN.cmake
|
||||
index b5739dc95..4041a2539 100644
|
||||
--- a/cmake/Modules/FindFLANN.cmake
|
||||
+++ b/cmake/Modules/FindFLANN.cmake
|
||||
@@ -10,8 +10,8 @@
|
||||
# look for shared ones
|
||||
|
||||
if(FLANN_USE_STATIC)
|
||||
- set(FLANN_RELEASE_NAME flann_cpp_s)
|
||||
- set(FLANN_DEBUG_NAME flann_cpp_s-gd)
|
||||
+ set(FLANN_RELEASE_NAME flann_cpp)
|
||||
+ set(FLANN_DEBUG_NAME flann_cpp-gd)
|
||||
else(FLANN_USE_STATIC)
|
||||
set(FLANN_RELEASE_NAME flann_cpp)
|
||||
set(FLANN_DEBUG_NAME flann_cpp-gd)
|
12
ports/pcl/find_openni2.patch
Normal file
12
ports/pcl/find_openni2.patch
Normal file
@ -0,0 +1,12 @@
|
||||
diff --git a/cmake/Modules/FindOpenNI2.cmake b/cmake/Modules/FindOpenNI2.cmake
|
||||
index 713099a14..f31de96a6 100644
|
||||
--- a/cmake/Modules/FindOpenNI2.cmake
|
||||
+++ b/cmake/Modules/FindOpenNI2.cmake
|
||||
@@ -51,6 +51,7 @@ find_path(OPENNI2_INCLUDE_DIRS OpenNI.h
|
||||
PATHS
|
||||
"$ENV{OPENNI2_INCLUDE${OPENNI2_SUFFIX}}" # Win64 needs '64' suffix
|
||||
/usr/include/openni2 # common path for deb packages
|
||||
+ PATH_SUFFIXES include/openni2
|
||||
)
|
||||
|
||||
find_library(OPENNI2_LIBRARY
|
13
ports/pcl/find_qhull.patch
Normal file
13
ports/pcl/find_qhull.patch
Normal file
@ -0,0 +1,13 @@
|
||||
diff --git a/cmake/Modules/FindQhull.cmake b/cmake/Modules/FindQhull.cmake
|
||||
index 698bd151b..44c1d5d8d 100644
|
||||
--- a/cmake/Modules/FindQhull.cmake
|
||||
+++ b/cmake/Modules/FindQhull.cmake
|
||||
@@ -55,7 +55,7 @@ find_library(QHULL_LIBRARY_DEBUG
|
||||
NAMES ${QHULL_DEBUG_NAME} ${QHULL_RELEASE_NAME}
|
||||
HINTS "${QHULL_ROOT}" "$ENV{QHULL_ROOT}"
|
||||
PATHS "$ENV{PROGRAMFILES}/QHull" "$ENV{PROGRAMW6432}/QHull"
|
||||
- PATH_SUFFIXES project build bin lib)
|
||||
+ PATH_SUFFIXES project build bin debug/lib)
|
||||
|
||||
if(NOT QHULL_LIBRARY_DEBUG)
|
||||
set(QHULL_LIBRARY_DEBUG ${QHULL_LIBRARY})
|
65
ports/pcl/portfile.cmake
Normal file
65
ports/pcl/portfile.cmake
Normal file
@ -0,0 +1,65 @@
|
||||
# Common Ambient Variables:
|
||||
# CURRENT_BUILDTREES_DIR = ${VCPKG_ROOT_DIR}\buildtrees\${PORT}
|
||||
# CURRENT_PACKAGES_DIR = ${VCPKG_ROOT_DIR}\packages\${PORT}_${TARGET_TRIPLET}
|
||||
# CURRENT_PORT_DIR = ${VCPKG_ROOT_DIR}\ports\${PORT}
|
||||
# PORT = current port name (zlib, etc)
|
||||
# TARGET_TRIPLET = current triplet (x86-windows, x64-windows-static, etc)
|
||||
# VCPKG_CRT_LINKAGE = C runtime linkage type (static, dynamic)
|
||||
# VCPKG_LIBRARY_LINKAGE = target library linkage type (static, dynamic)
|
||||
# VCPKG_ROOT_DIR = <C:\path\to\current\vcpkg>
|
||||
# VCPKG_TARGET_ARCHITECTURE = target architecture (x64, x86, arm)
|
||||
#
|
||||
|
||||
include(vcpkg_common_functions)
|
||||
|
||||
vcpkg_from_github(
|
||||
OUT_SOURCE_PATH SOURCE_PATH
|
||||
REPO PointCloudLibrary/pcl
|
||||
REF pcl-1.8.1
|
||||
SHA512 9e7c87fb750a176712f08d215a906012c9e8174b687bbc8c08fa65de083b4468951bd8017b10409015d5eff0fc343885d2aae5c340346118b1a251af7bdd5cd7
|
||||
HEAD_REF master
|
||||
)
|
||||
|
||||
vcpkg_apply_patches(
|
||||
SOURCE_PATH ${SOURCE_PATH}
|
||||
PATCHES "${CMAKE_CURRENT_LIST_DIR}/config.patch"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/config_install.patch"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/find_flann.patch"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/find_qhull.patch"
|
||||
"${CMAKE_CURRENT_LIST_DIR}/find_openni2.patch"
|
||||
)
|
||||
|
||||
if(VCPKG_LIBRARY_LINKAGE STREQUAL "dynamic")
|
||||
set(LIBRARY_LINKAGE ON)
|
||||
elseif(VCPKG_LIBRARY_LINKAGE STREQUAL "static")
|
||||
set(LIBRARY_LINKAGE OFF)
|
||||
endif()
|
||||
|
||||
vcpkg_configure_cmake(
|
||||
SOURCE_PATH ${SOURCE_PATH}
|
||||
PREFER_NINJA
|
||||
OPTIONS
|
||||
# BUILD
|
||||
-DBUILD_surface_on_nurbs=ON
|
||||
-DBUILD_tools=OFF
|
||||
# PCL
|
||||
-DPCL_BUILD_WITH_BOOST_DYNAMIC_LINKING_WIN32=${LIBRARY_LINKAGE}
|
||||
-DPCL_BUILD_WITH_FLANN_DYNAMIC_LINKING_WIN32=${LIBRARY_LINKAGE}
|
||||
-DPCL_SHARED_LIBS=${LIBRARY_LINKAGE}
|
||||
# WITH
|
||||
-DWITH_CUDA=OFF
|
||||
-DWITH_LIBUSB=OFF
|
||||
-DWITH_OPENNI2=ON
|
||||
-DWITH_PCAP=OFF
|
||||
-DWITH_PNG=OFF
|
||||
-DWITH_QHULL=ON
|
||||
-DWITH_QT=ON
|
||||
-DWITH_VTK=ON
|
||||
)
|
||||
|
||||
vcpkg_install_cmake()
|
||||
|
||||
file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include)
|
||||
file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/share)
|
||||
file(COPY ${SOURCE_PATH}/LICENSE.txt DESTINATION ${CURRENT_PACKAGES_DIR}/share/pcl)
|
||||
file(RENAME ${CURRENT_PACKAGES_DIR}/share/pcl/LICENSE.txt ${CURRENT_PACKAGES_DIR}/share/pcl/copyright)
|
@ -1,3 +1,4 @@
|
||||
Source: physfs
|
||||
Version: 2.0.3
|
||||
Version: 2.0.3-1
|
||||
Description: a library to provide abstract access to various archives
|
||||
Build-Depends: zlib
|
||||
|
13
ports/physfs/export-symbols-in-shared-build-only.patch
Normal file
13
ports/physfs/export-symbols-in-shared-build-only.patch
Normal file
@ -0,0 +1,13 @@
|
||||
diff --git a/physfs.h b/physfs.h
|
||||
index 3c252c6..4319981 100644
|
||||
--- a/physfs.h
|
||||
+++ b/physfs.h
|
||||
@@ -221,7 +221,7 @@ extern "C" {
|
||||
#endif
|
||||
|
||||
#ifndef DOXYGEN_SHOULD_IGNORE_THIS
|
||||
-#if (defined _MSC_VER)
|
||||
+#if (defined _MSC_VER && defined (physfs_EXPORTS))
|
||||
#define __EXPORT__ __declspec(dllexport)
|
||||
#elif (__GNUC__ >= 3)
|
||||
#define __EXPORT__ __attribute__((visibility("default")))
|
@ -1,32 +1,32 @@
|
||||
# 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 static)
|
||||
message(STATUS "Warning: Static building not supported yet. Building dynamic.")
|
||||
set(VCPKG_LIBRARY_LINKAGE dynamic)
|
||||
endif()
|
||||
include(vcpkg_common_functions)
|
||||
set(SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src/physfs-2.0.3)
|
||||
set(PHYSFS_VERSION 2.0.3)
|
||||
set(SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src/physfs-${PHYSFS_VERSION})
|
||||
vcpkg_download_distfile(ARCHIVE
|
||||
URLS "https://icculus.org/physfs/downloads/physfs-2.0.3.tar.bz2"
|
||||
FILENAME "physfs-2.0.3.tar.bz2"
|
||||
URLS "https://icculus.org/physfs/downloads/physfs-${PHYSFS_VERSION}.tar.bz2"
|
||||
FILENAME "physfs-${PHYSFS_VERSION}.tar.bz2"
|
||||
SHA512 47eff0c81b8dc3bb526766b0a8ad2437d2951867880116d6e6e8f2ec1490e263541fb741867fed6517cc3fa8a9c5651b36e3e02a499f19cfdc5c7261c9707e80
|
||||
)
|
||||
vcpkg_extract_source_archive(${ARCHIVE})
|
||||
|
||||
vcpkg_apply_patches(SOURCE_PATH ${SOURCE_PATH}
|
||||
PATCHES ${CMAKE_CURRENT_LIST_DIR}/export-symbols-in-shared-build-only.patch)
|
||||
|
||||
string(COMPARE EQUAL "${VCPKG_LIBRARY_LINKAGE}" "static" PHYSFS_STATIC)
|
||||
string(COMPARE EQUAL "${VCPKG_LIBRARY_LINKAGE}" "dynamic" PHYSFS_SHARED)
|
||||
|
||||
vcpkg_configure_cmake(
|
||||
SOURCE_PATH ${SOURCE_PATH}
|
||||
PREFER_NINJA
|
||||
OPTIONS
|
||||
-DPHYSFS_BUILD_STATIC=${PHYSFS_STATIC}
|
||||
-DPHYSFS_BUILD_SHARED=${PHYSFS_SHARED}
|
||||
-DPHYSFS_BUILD_TEST=OFF
|
||||
)
|
||||
|
||||
vcpkg_install_cmake()
|
||||
vcpkg_copy_pdbs()
|
||||
|
||||
file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include)
|
||||
file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/bin/test_physfs.exe)
|
||||
file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/bin/test_physfs.exe)
|
||||
|
||||
# Handle copyright
|
||||
file(COPY ${SOURCE_PATH}/LICENSE.txt DESTINATION ${CURRENT_PACKAGES_DIR}/share/physfs)
|
||||
|
3
ports/plog/CONTROL
Normal file
3
ports/plog/CONTROL
Normal file
@ -0,0 +1,3 @@
|
||||
Source: plog
|
||||
Version: 1.1.3
|
||||
Description: Portable, simple and extensible C++ logging library.
|
17
ports/plog/portfile.cmake
Normal file
17
ports/plog/portfile.cmake
Normal file
@ -0,0 +1,17 @@
|
||||
# Header-only library
|
||||
include(vcpkg_common_functions)
|
||||
|
||||
vcpkg_from_github(
|
||||
OUT_SOURCE_PATH SOURCE_PATH
|
||||
REPO SergiusTheBest/plog
|
||||
REF 1.1.3
|
||||
SHA512 9a5a455e1942158d2802313682ed007750789a9048773302d92f2591dfac0185914dba8b67fa285fed25e54dff44e2c97c92b9e7decd39fa2bca460c03549377
|
||||
HEAD_REF master
|
||||
)
|
||||
|
||||
# Put the licence file where vcpkg expects it
|
||||
file(COPY ${SOURCE_PATH}/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/plog)
|
||||
file(RENAME ${CURRENT_PACKAGES_DIR}/share/plog/LICENSE ${CURRENT_PACKAGES_DIR}/share/plog/copyright)
|
||||
|
||||
# Copy header files
|
||||
file(INSTALL ${SOURCE_PATH}/include DESTINATION ${CURRENT_PACKAGES_DIR} FILES_MATCHING PATTERN "*.h")
|
@ -1,3 +1,3 @@
|
||||
Source: stb
|
||||
Version: 1.0
|
||||
Version: 20170724-9d9f75e
|
||||
Description: stb single-file public domain libraries for C/C++
|
||||
|
@ -1,12 +1,12 @@
|
||||
#header-only library
|
||||
include(vcpkg_common_functions)
|
||||
set(SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src/stb-e713a69f1ea6ee1e0d55725ed0731520045a5993)
|
||||
vcpkg_download_distfile(ARCHIVE
|
||||
URLS "https://github.com/nothings/stb/archive/e713a69f1ea6ee1e0d55725ed0731520045a5993.zip"
|
||||
FILENAME "stb-e713a69f1ea6ee1e0d55725ed0731520045a5993.zip"
|
||||
SHA512 28d73905e626bf286bc42e30bc50e8449912a9db5e421e09bfbd17790de1909fe9df19c96d6ad3125a6ae0947d45b11b83ee5965dab68d1eadd0c332e391400e
|
||||
vcpkg_from_github(
|
||||
OUT_SOURCE_PATH SOURCE_PATH
|
||||
REPO nothings/stb
|
||||
REF 9d9f75eb682dd98b34de08bb5c489c6c561c9fa6
|
||||
SHA512 e710385b1de9b07108c1a0628e74832e163729d95d529a6fe333156cc8e518af47e480761c2f9acd69cffbc14e477952d7e5b208708ffbd3870949dccf315b4f
|
||||
HEAD_REF master
|
||||
)
|
||||
vcpkg_extract_source_archive(${ARCHIVE})
|
||||
|
||||
# Put the licence file where vcpkg expects it
|
||||
file(COPY ${SOURCE_PATH}/README.md DESTINATION ${CURRENT_PACKAGES_DIR}/share/stb/README.md)
|
||||
|
@ -1,4 +1,4 @@
|
||||
Source: uwebsockets
|
||||
Version: 0.14.3
|
||||
Version: 0.14.4
|
||||
Build-Depends: libuv, openssl, zlib, boost
|
||||
Description: Highly scalable cross-platform WebSocket & HTTP library for C++11 and Node.js
|
||||
|
@ -1,10 +1,10 @@
|
||||
include(vcpkg_common_functions)
|
||||
set(VERSION 0.14.3)
|
||||
set(VERSION 0.14.4)
|
||||
set(SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src/uwebsockets-${VERSION})
|
||||
vcpkg_download_distfile(ARCHIVE
|
||||
URLS "https://github.com/uWebSockets/uWebSockets/archive/v${VERSION}.zip"
|
||||
FILENAME "uwebsockets-v${VERSION}.zip"
|
||||
SHA512 a64a6ee91d411f4285deb10b9b7620b4c4a2ff0f8137864380968349f7786c406ba44644b6ca589ee41c1e5adfa1ee1cf3697e54ecf5d459ab8bf69a3a4def7e
|
||||
SHA512 cc395437790a51a729582897111304e7d6c72574d59c55929a686b6a8a489eb3ea3ea7f037aeda9083243317ed885bd710a708d3dd635220387d3253e0712b10
|
||||
)
|
||||
vcpkg_extract_source_archive(${ARCHIVE})
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
Source: vtk
|
||||
Version: 7.1.1-1
|
||||
Version: 8.0.0-1
|
||||
Description: Software system for 3D computer graphics, image processing, and visualization
|
||||
Build-Depends: zlib, libpng, tiff, libxml2, jsoncpp, glew, freetype, expat, hdf5, qt5, msmpi
|
||||
Build-Depends: zlib, libpng, tiff, libxml2, jsoncpp, glew, freetype, expat, hdf5, qt5, msmpi, libjpeg-turbo, proj, lz4, libtheora
|
||||
|
28
ports/vtk/SplitLibraryConfigurations.cmake
Normal file
28
ports/vtk/SplitLibraryConfigurations.cmake
Normal file
@ -0,0 +1,28 @@
|
||||
|
||||
cmake_minimum_required(VERSION 3.2.0)
|
||||
|
||||
function(split_library_configurations LIBRARIES OPTIMIZED_OUT_VAR DEBUG_OUT_VAR GENERAL_OUT_VAR)
|
||||
set(OPTIMIZED_LIBRARIES)
|
||||
set(DEBUG_LIBRARIES)
|
||||
set(GENERAL_LIBRARIES)
|
||||
|
||||
set(CURRENT_TYPE)
|
||||
foreach(LIBRARY ${LIBRARIES})
|
||||
if("${LIBRARY}" STREQUAL "optimized" OR "${LIBRARY}" STREQUAL "debug" OR "${LIBRARY}" STREQUAL "general")
|
||||
set(CURRENT_TYPE "${LIBRARY}")
|
||||
else()
|
||||
if("${CURRENT_TYPE}" STREQUAL "optimized")
|
||||
list(APPEND OPTIMIZED_LIBRARIES "${LIBRARY}")
|
||||
elseif("${CURRENT_TYPE}" STREQUAL "debug")
|
||||
list(APPEND DEBUG_LIBRARIES "${LIBRARY}")
|
||||
else()
|
||||
list(APPEND GENERAL_LIBRARIES "${LIBRARY}")
|
||||
endif()
|
||||
set(CURRENT_TYPE)
|
||||
endif()
|
||||
endforeach()
|
||||
|
||||
set(${OPTIMIZED_OUT_VAR} "${OPTIMIZED_LIBRARIES}" PARENT_SCOPE)
|
||||
set(${DEBUG_OUT_VAR} "${DEBUG_LIBRARIES}" PARENT_SCOPE)
|
||||
set(${GENERAL_OUT_VAR} "${GENERAL_LIBRARIES}" PARENT_SCOPE)
|
||||
endfunction()
|
@ -1,13 +1,11 @@
|
||||
diff --git a/CMake/vtkModuleMacros.cmake b/CMake/vtkModuleMacros.cmake
|
||||
index fdd83ed8fc..4986582a5b 100644
|
||||
--- a/CMake/vtkModuleMacros.cmake
|
||||
+++ b/CMake/vtkModuleMacros.cmake
|
||||
@@ -885,18 +885,6 @@ macro(vtk_module_third_party _pkg)
|
||||
set(vtk${_lower}_DEFINITIONS ${${_upper}_DEFINITIONS})
|
||||
--- a/CMake/vtkModuleMacros.cmake Mon Jun 26 15:29:04 2017
|
||||
+++ b/CMake/vtkModuleMacros.cmake Tue Aug 08 17:54:03 2017
|
||||
@@ -893,18 +893,6 @@
|
||||
set(vtk${_lower}_LIBRARIES "${${_upper_pkg_name}_LIBRARIES}")
|
||||
endif()
|
||||
|
||||
- #a workaround for bad FindHDF5 behavior in which deb or opt can
|
||||
- #end up empty. cmake >= 2.8.12.2 makes this uneccessary
|
||||
- #end up empty. cmake >= 2.8.12.2 makes this unnecessary
|
||||
- string(REGEX MATCH "debug;.*optimized;.*"
|
||||
- _remove_deb_opt "${vtk${_lower}_LIBRARIES}")
|
||||
- if (_remove_deb_opt)
|
||||
|
68
ports/vtk/fix-find-libproj4.patch
Normal file
68
ports/vtk/fix-find-libproj4.patch
Normal file
@ -0,0 +1,68 @@
|
||||
--- a/CMake/FindLIBPROJ4.cmake Thu Aug 10 21:03:55 2017
|
||||
+++ b/CMake/FindLIBPROJ4.cmake Thu Aug 10 21:08:58 2017
|
||||
@@ -11,7 +11,7 @@
|
||||
file( TO_CMAKE_PATH "$ENV{LIBPROJ4_DIR}" _LIBPROJ4_DIR )
|
||||
endif ()
|
||||
|
||||
- find_library( LIBPROJ4_LIBRARIES
|
||||
+ find_library( LIBPROJ4_LIBRARY_RELEASE
|
||||
NAMES proj
|
||||
PATHS
|
||||
${_LIBPROJ4_DIR}/lib64
|
||||
@@ -24,7 +24,21 @@
|
||||
${CMAKE_INSTALL_PREFIX}/lib
|
||||
/usr/local/lib
|
||||
/usr/lib
|
||||
- NO_DEFAULT_PATH
|
||||
+ )
|
||||
+
|
||||
+ find_library( LIBPROJ4_LIBRARY_DEBUG
|
||||
+ NAMES projd
|
||||
+ PATHS
|
||||
+ ${_LIBPROJ4_DIR}/lib64
|
||||
+ ${CMAKE_INSTALL_PREFIX}/lib64
|
||||
+ /usr/local/lib64
|
||||
+ /usr/lib64
|
||||
+ ${_LIBPROJ4_DIR}
|
||||
+ ${_LIBPROJ4_DIR}/lib
|
||||
+ ${CMAKE_INSTALL_PREFIX}/bin
|
||||
+ ${CMAKE_INSTALL_PREFIX}/lib
|
||||
+ /usr/local/lib
|
||||
+ /usr/lib
|
||||
)
|
||||
|
||||
find_path( LIBPROJ4_INCLUDE_DIR
|
||||
@@ -37,19 +51,22 @@
|
||||
/usr/local/include
|
||||
/usr/include
|
||||
/usr/include/postgresql
|
||||
- NO_DEFAULT_PATH
|
||||
)
|
||||
|
||||
- if ( NOT LIBPROJ4_INCLUDE_DIR OR NOT LIBPROJ4_LIBRARIES )
|
||||
- if ( LIBPROJ4_REQUIRED )
|
||||
- message( FATAL_ERROR "LIBPROJ4 is required. Set LIBPROJ4_DIR" )
|
||||
- endif ()
|
||||
- else ()
|
||||
- set( LIBPROJ4_FOUND 1 )
|
||||
- mark_as_advanced( LIBPROJ4_FOUND )
|
||||
- endif ()
|
||||
+ include(SelectLibraryConfigurations)
|
||||
+ select_library_configurations(LIBPROJ4)
|
||||
+
|
||||
+ include(FindPackageHandleStandardArgs)
|
||||
+ find_package_handle_standard_args(LIBPROJ4
|
||||
+ REQUIRED_VARS LIBPROJ4_LIBRARY LIBPROJ4_INCLUDE_DIR)
|
||||
+
|
||||
+ if(LIBPROJ4_FOUND)
|
||||
+ set(LIBPROJ4_INCLUDE_DIRS ${LIBPROJ4_INCLUDE_DIR})
|
||||
|
||||
+ if(NOT LIBPROJ4_LIBRARIES)
|
||||
+ set(LIBPROJ4_LIBRARIES ${LIBPROJ4_LIBRARY})
|
||||
+ endif()
|
||||
+ endif()
|
||||
endif ()
|
||||
|
||||
-mark_as_advanced( FORCE LIBPROJ4_INCLUDE_DIR )
|
||||
-mark_as_advanced( FORCE LIBPROJ4_LIBRARIES )
|
||||
+mark_as_advanced(LIBPROJ4_INCLUDE_DIR)
|
@ -1,10 +0,0 @@
|
||||
--- a/ThirdParty/netcdf/vtknetcdf/CMakeLists.txt Mon Nov 14 17:59:47 2016
|
||||
+++ b/ThirdParty/netcdf/vtknetcdf/CMakeLists.txt Thu Jan 05 21:15:28 2017
|
||||
@@ -330,6 +330,7 @@
|
||||
${netcdf_dispatch_SOURCES}
|
||||
${netcdf_liblib_SOURCES})
|
||||
target_link_libraries(vtkNetCDF ${vtkhdf5_LIBRARIES})
|
||||
+target_compile_definitions(vtkNetCDF PRIVATE ${vtkhdf5_DEFINITIONS})
|
||||
|
||||
if (UNIX)
|
||||
# link against the math library.
|
@ -1,29 +1,42 @@
|
||||
include(vcpkg_common_functions)
|
||||
set(SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src/VTK-7.1.1)
|
||||
vcpkg_download_distfile(ARCHIVE
|
||||
URLS "http://www.vtk.org/files/release/7.1/VTK-7.1.1.tar.gz"
|
||||
FILENAME "VTK-7.1.1.tar.gz"
|
||||
SHA512 34a068801fe45f98325e5334d2569fc9b15ed38620386f1b5b860c9735e5fb8510953b50a3340d3ef9795e22fecf798c25bf750215b2ff1ff1eb7a1ecd87b623
|
||||
|
||||
vcpkg_from_github(
|
||||
OUT_SOURCE_PATH SOURCE_PATH
|
||||
REPO "Kitware/VTK"
|
||||
REF "v8.0.0"
|
||||
SHA512 1a328f24df0b1c40c623ae80c9d49f8b27570144b10af02aeed41b90b50b8d4e0dd83d1341961f6818cde36e2cd793c578ebc95a46950cebfc518f486f249791
|
||||
HEAD_REF "master"
|
||||
)
|
||||
vcpkg_extract_source_archive(${ARCHIVE})
|
||||
|
||||
vcpkg_apply_patches(
|
||||
SOURCE_PATH ${SOURCE_PATH}
|
||||
PATCHES
|
||||
${CMAKE_CURRENT_LIST_DIR}/transfer-3rd-party-module-definitions.patch
|
||||
${CMAKE_CURRENT_LIST_DIR}/transfer-hdf5-definitions.patch
|
||||
${CMAKE_CURRENT_LIST_DIR}/netcdf-use-hdf5-definitions.patch
|
||||
# Disable ssize_t because this can conflict with ssize_t that is defined on windows.
|
||||
${CMAKE_CURRENT_LIST_DIR}/dont-define-ssize_t.patch
|
||||
${CMAKE_CURRENT_LIST_DIR}/fix-findhdf5-shared.patch
|
||||
|
||||
# We force CMake to use it's own version of the FindHDF5 module since newer versions
|
||||
# shipped with CMake behave differently. E.g. the one shipped with CMake 3.9 always
|
||||
# only finds the release libraries, but not the debug libraries.
|
||||
# The file shipped with CMake allows us to set the libraries explicitly as it is done below.
|
||||
# Maybe in the future we can disable the patch and use the new version shipped with CMake
|
||||
# together with the hdf5-config.cmake that is written by HDF5 itself, but currently VTK
|
||||
# disables taking the config into account explicitly.
|
||||
${CMAKE_CURRENT_LIST_DIR}/use-fixed-find-hdf5.patch
|
||||
|
||||
# We disable a workaround in the VTK CMake scripts that can lead to the fact that a dependency
|
||||
# will link to both, the debug and the release library.
|
||||
${CMAKE_CURRENT_LIST_DIR}/disable-workaround-findhdf5.patch
|
||||
|
||||
${CMAKE_CURRENT_LIST_DIR}/fix-find-libproj4.patch
|
||||
)
|
||||
|
||||
# Remove the FindGLEW.cmake that is distributed with VTK, since it does not
|
||||
# detect the debug libraries correctly.
|
||||
# The default file distributed with CMake should be superior by all means.
|
||||
file(REMOVE ${SOURCE_PATH}/CMake/FindGLEW.cmake)
|
||||
|
||||
if(VCPKG_LIBRARY_LINKAGE STREQUAL dynamic)
|
||||
# HACK: The FindHDF5.cmake script does not seem to detect the HDF5_DEFINITIONS correctly
|
||||
# if HDF5 has been built without the tools (which is the case in the HDF5 port),
|
||||
# so we set the BUILT_AS_DYNAMIC_LIB=1 flag here explicitly because we know HDF5
|
||||
# has been build as dynamic library in the current case.
|
||||
list(APPEND ADDITIONAL_OPTIONS "-DHDF5_DEFINITIONS=-DH5_BUILT_AS_DYNAMIC_LIB=1")
|
||||
list(APPEND ADDITIONAL_OPTIONS "-DVTK_EXTERNAL_HDF5_IS_SHARED=ON")
|
||||
endif()
|
||||
|
||||
vcpkg_configure_cmake(
|
||||
@ -41,17 +54,21 @@ vcpkg_configure_cmake(
|
||||
-DVTK_USE_SYSTEM_EXPAT=ON
|
||||
-DVTK_USE_SYSTEM_FREETYPE=ON
|
||||
# -DVTK_USE_SYSTEM_GL2PS=ON
|
||||
# -DVTK_USE_SYSTEM_LIBHARU=ON
|
||||
-DVTK_USE_SYSTEM_JPEG=ON
|
||||
-DVTK_USE_SYSTEM_GLEW=ON
|
||||
-DVTK_USE_SYSTEM_HDF5=ON
|
||||
-DVTK_USE_SYSTEM_JSONCPP=ON
|
||||
# -DVTK_USE_SYSTEM_LIBPROJ4=ON
|
||||
# -DVTK_USE_SYSTEM_LIBRARIES=ON
|
||||
-DVTK_USE_SYSTEM_LIBPROJ4=ON
|
||||
-DVTK_USE_SYSTEM_LIBXML2=ON
|
||||
-DVTK_USE_SYSTEM_LZ4=ON
|
||||
# -DVTK_USE_SYSTEM_NETCDF=ON
|
||||
# -DVTK_USE_SYSTEM_OGGTHEORA=ON
|
||||
# -DVTK_USE_SYSTEM_NETCDFCPP=ON
|
||||
-DVTK_USE_SYSTEM_OGGTHEORA=ON
|
||||
-DVTK_USE_SYSTEM_PNG=ON
|
||||
-DVTK_USE_SYSTEM_TIFF=ON
|
||||
-DVTK_USE_SYSTEM_ZLIB=ON
|
||||
-DVTK_INSTALL_INCLUDE_DIR=include
|
||||
-DVTK_INSTALL_DATA_DIR=share/vtk/data
|
||||
-DVTK_INSTALL_DOC_DIR=share/vtk/doc
|
||||
-DVTK_INSTALL_PACKAGE_DIR=share/vtk
|
||||
@ -68,24 +85,109 @@ vcpkg_configure_cmake(
|
||||
vcpkg_install_cmake()
|
||||
vcpkg_copy_pdbs()
|
||||
|
||||
file(READ ${CURRENT_PACKAGES_DIR}/share/vtk/VTKTargets-release.cmake VTK_TARGETS_RELEASE_MODULE)
|
||||
string(REPLACE "list\(APPEND _IMPORT_CHECK_FILES_FOR_vtkEncodeString" "#list(APPEND _IMPORT_CHECK_FILES_FOR_vtkEncodeString" VTK_TARGETS_RELEASE_MODULE "${VTK_TARGETS_RELEASE_MODULE}")
|
||||
string(REPLACE "list\(APPEND _IMPORT_CHECK_FILES_FOR_vtkHashSource" "#list(APPEND _IMPORT_CHECK_FILES_FOR_vtkHashSource" VTK_TARGETS_RELEASE_MODULE "${VTK_TARGETS_RELEASE_MODULE}")
|
||||
file(WRITE ${CURRENT_PACKAGES_DIR}/share/vtk/VTKTargets-release.cmake "${VTK_TARGETS_RELEASE_MODULE}")
|
||||
vcpkg_fixup_cmake_targets()
|
||||
|
||||
file(READ ${CURRENT_PACKAGES_DIR}/debug/share/vtk/VTKTargets-debug.cmake VTK_TARGETS_DEBUG_MODULE)
|
||||
string(REPLACE "\${_IMPORT_PREFIX}" "\${_IMPORT_PREFIX}/debug" VTK_TARGETS_DEBUG_MODULE "${VTK_TARGETS_DEBUG_MODULE}")
|
||||
string(REPLACE "list\(APPEND _IMPORT_CHECK_FILES_FOR_vtkEncodeString" "#list(APPEND _IMPORT_CHECK_FILES_FOR_vtkEncodeString" VTK_TARGETS_DEBUG_MODULE "${VTK_TARGETS_DEBUG_MODULE}")
|
||||
string(REPLACE "list\(APPEND _IMPORT_CHECK_FILES_FOR_vtkHashSource" "#list(APPEND _IMPORT_CHECK_FILES_FOR_vtkHashSource" VTK_TARGETS_DEBUG_MODULE "${VTK_TARGETS_DEBUG_MODULE}")
|
||||
file(WRITE ${CURRENT_PACKAGES_DIR}/share/vtk/VTKTargets-debug.cmake "${VTK_TARGETS_DEBUG_MODULE}")
|
||||
# For VTK vcpkg_fixup_cmake_targets is not enough:
|
||||
# Files for system third party dependencies are written to modules that
|
||||
# are located in the paths `share/vtk/Modules` and `debug/share/vtk/Modules`.
|
||||
# In the release folder, only the release libraries are referenced (e.g. "C:/vcpkg/installed/x64-windows/lib/zlib.lib").
|
||||
# But in the debug folder both libraries (e.g. "optimized;C:/vcpkg/installed/x64-windows/lib/zlib.lib;debug;C:/vcpkg/installed/x64-windows/debug/lib/zlibd.lib")
|
||||
# or only the debug library (e.g. "C:/vcpkg/installed/x64-windows/debug/lib/hdf5_D.lib") is referenced.
|
||||
# This is because VCPKG appends only the release library prefix (.../x64-windows/lib)
|
||||
# when configuring release but both (.../x64-windows/lib and .../x64-windows/debug/lib)
|
||||
# when configuring debug.
|
||||
# Now if we delete the debug/share/Modules folder and just leave share/Modules, a library
|
||||
# that links to VTK will always use the release third party dependencies, even if
|
||||
# debug VTK is used.
|
||||
#
|
||||
# The following code merges the libraries from both release and debug:
|
||||
|
||||
include(${CMAKE_CURRENT_LIST_DIR}/SplitLibraryConfigurations.cmake)
|
||||
|
||||
function(_vtk_combine_third_party_libraries MODULE_NAME)
|
||||
set(MODULE_LIBRARIES_REGEX "set\\(${MODULE_NAME}_LIBRARIES \"([^\"]*)\"\\)")
|
||||
|
||||
# Read release libraries
|
||||
file(READ "${CURRENT_PACKAGES_DIR}/share/vtk/Modules/${MODULE_NAME}.cmake" RELEASE_MODULE_CONTENT)
|
||||
if("${RELEASE_MODULE_CONTENT}" MATCHES "${MODULE_LIBRARIES_REGEX}")
|
||||
set(RELEASE_LIBRARY_LIST "${CMAKE_MATCH_1}")
|
||||
else()
|
||||
message(FATAL_ERROR "Could not extract module libraries for ${MODULE_NAME}")
|
||||
endif()
|
||||
|
||||
# Read debug libraries
|
||||
file(READ "${CURRENT_PACKAGES_DIR}/debug/share/vtk/Modules/${MODULE_NAME}.cmake" DEBUG_MODULE_CONTENT)
|
||||
if("${DEBUG_MODULE_CONTENT}" MATCHES "${MODULE_LIBRARIES_REGEX}")
|
||||
set(DEBUG_LIBRARY_LIST "${CMAKE_MATCH_1}")
|
||||
else()
|
||||
message(FATAL_ERROR "Could not extract module libraries for ${MODULE_NAME}")
|
||||
endif()
|
||||
|
||||
split_library_configurations("${RELEASE_LIBRARY_LIST}" OPTIMIZED_RELEASE_LIBRARIES DEBUG_RELEASE_LIBRARIES GENERAL_RELEASE_LIBRARIES)
|
||||
split_library_configurations("${DEBUG_LIBRARY_LIST}" OPTIMIZED_DEBUG_LIBRARIES DEBUG_DEBUG_LIBRARIES GENERAL_DEBUG_LIBRARIES)
|
||||
|
||||
# Combine libraries and wrap them in generator expressions
|
||||
foreach(LIBRARY ${OPTIMIZED_RELEASE_LIBRARIES} ${GENERAL_RELEASE_LIBRARIES})
|
||||
list(APPEND LIBRARY_LIST "$<$<NOT:$<CONFIG:Debug>>:${LIBRARY}>")
|
||||
endforeach()
|
||||
foreach(LIBRARY ${DEBUG_DEBUG_LIBRARIES} ${GENERAL_DEBUG_LIBRARIES})
|
||||
list(APPEND LIBRARY_LIST "$<$<CONFIG:Debug>:${LIBRARY}>")
|
||||
endforeach()
|
||||
|
||||
# Write combined libraries back
|
||||
string(REGEX REPLACE "${MODULE_LIBRARIES_REGEX}"
|
||||
"set(${MODULE_NAME}_LIBRARIES \"${LIBRARY_LIST}\")"
|
||||
RELEASE_MODULE_CONTENT
|
||||
"${RELEASE_MODULE_CONTENT}"
|
||||
)
|
||||
file(WRITE "${CURRENT_PACKAGES_DIR}/share/vtk/Modules/${MODULE_NAME}.cmake" "${RELEASE_MODULE_CONTENT}")
|
||||
endfunction()
|
||||
|
||||
# IMPORTANT: Please make sure to extend this list whenever a new library is marked `USE_SYSTEM` in the configure step above!
|
||||
set(SYSTEM_THIRD_PARTY_MODULES
|
||||
vtkexpat
|
||||
vtkfreetype
|
||||
vtkjpeg
|
||||
vtkglew
|
||||
vtkhdf5
|
||||
vtkjsoncpp
|
||||
vtklibproj4
|
||||
vtklibxml2
|
||||
vtklz4
|
||||
vtkoggtheora
|
||||
vtkpng
|
||||
vtktiff
|
||||
vtkzlib
|
||||
)
|
||||
|
||||
foreach(MODULE IN LISTS SYSTEM_THIRD_PARTY_MODULES)
|
||||
_vtk_combine_third_party_libraries("${MODULE}")
|
||||
endforeach()
|
||||
|
||||
# Remove all explicit references to vcpkg system libraries in the general VTKTargets.cmake file
|
||||
# since these references always point to the release libraries, even in the debug case.
|
||||
# The dependencies should be handled by the explicit modules we fixed above, so removing
|
||||
# them here shouldn't cause any problems.
|
||||
file(READ "${CURRENT_PACKAGES_DIR}/share/vtk/VTKTargets.cmake" VTK_TARGETS_CONTENT)
|
||||
string(REGEX REPLACE "${CURRENT_INSTALLED_DIR}/lib/[^\\.]*\\.lib" "" VTK_TARGETS_CONTENT "${VTK_TARGETS_CONTENT}")
|
||||
file(WRITE "${CURRENT_PACKAGES_DIR}/share/vtk/VTKTargets.cmake" "${VTK_TARGETS_CONTENT}")
|
||||
|
||||
# Move executable to tools directory
|
||||
file(MAKE_DIRECTORY ${CURRENT_PACKAGES_DIR}/tools/vtk)
|
||||
file(RENAME ${CURRENT_PACKAGES_DIR}/bin/vtkEncodeString-8.0.exe ${CURRENT_PACKAGES_DIR}/tools/vtk/vtkEncodeString-8.0.exe)
|
||||
file(RENAME ${CURRENT_PACKAGES_DIR}/bin/vtkHashSource-8.0.exe ${CURRENT_PACKAGES_DIR}/tools/vtk/vtkHashSource-8.0.exe)
|
||||
|
||||
if(VCPKG_LIBRARY_LINKAGE STREQUAL dynamic)
|
||||
file(REMOVE ${CURRENT_PACKAGES_DIR}/debug/bin/vtkEncodeString-8.0.exe)
|
||||
file(REMOVE ${CURRENT_PACKAGES_DIR}/debug/bin/vtkHashSource-8.0.exe)
|
||||
else()
|
||||
# On static builds there should be no bin directory at all
|
||||
file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/bin)
|
||||
file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/bin)
|
||||
endif()
|
||||
|
||||
file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/share)
|
||||
file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include)
|
||||
|
||||
file(REMOVE ${CURRENT_PACKAGES_DIR}/bin/vtkEncodeString-7.1.exe)
|
||||
file(REMOVE ${CURRENT_PACKAGES_DIR}/bin/vtkHashSource-7.1.exe)
|
||||
file(REMOVE ${CURRENT_PACKAGES_DIR}/debug/bin/vtkEncodeString-7.1.exe)
|
||||
file(REMOVE ${CURRENT_PACKAGES_DIR}/debug/bin/vtkHashSource-7.1.exe)
|
||||
file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/share)
|
||||
|
||||
# Handle copyright
|
||||
file(COPY ${SOURCE_PATH}/Copyright.txt DESTINATION ${CURRENT_PACKAGES_DIR}/share/vtk)
|
||||
|
@ -1,26 +0,0 @@
|
||||
--- a/CMake/vtkModuleMacros.cmake Mon Nov 14 17:59:47 2016
|
||||
+++ b/CMake/vtkModuleMacros.cmake Thu Jan 05 21:36:06 2017
|
||||
@@ -665,6 +665,9 @@
|
||||
if(${dep}_LIBRARY_DIRS)
|
||||
link_directories(${${dep}_LIBRARY_DIRS})
|
||||
endif()
|
||||
+ if(${dep}_DEFINITIONS)
|
||||
+ target_compile_definitions(${vtk-module} PRIVATE ${${dep}_DEFINITIONS})
|
||||
+ endif()
|
||||
vtk_module_link_libraries(${vtk-module} LINK_PRIVATE ${${dep}_LIBRARIES})
|
||||
if(_help_vs7 AND ${dep}_LIBRARIES)
|
||||
add_dependencies(${vtk-module} ${${dep}_LIBRARIES})
|
||||
@@ -870,6 +873,13 @@
|
||||
set(vtk${_lower}_LIBRARIES "${${_pkg}_LIBRARIES}")
|
||||
else()
|
||||
set(vtk${_lower}_LIBRARIES "${${_upper}_LIBRARIES}")
|
||||
+ endif()
|
||||
+ if(${_pkg}_DEFINITIONS)
|
||||
+ set(vtk${_lower}_DEFINITIONS ${${_pkg}_DEFINITIONS})
|
||||
+ elseif(${_upper}_DEFINITIONS)
|
||||
+ set(vtk${_lower}_DEFINITIONS ${${_upper}_DEFINITIONS})
|
||||
+ else()
|
||||
+ set(vtk${_lower}_DEFINITIONS ${${_upper}_DEFINITIONS})
|
||||
endif()
|
||||
|
||||
#a workaround for bad FindHDF5 behavior in which deb or opt can
|
@ -1,10 +0,0 @@
|
||||
--- a/ThirdParty/hdf5/module.cmake Mon Nov 14 17:59:47 2016
|
||||
+++ b/ThirdParty/hdf5/module.cmake Thu Jan 05 21:23:20 2017
|
||||
@@ -5,6 +5,7 @@
|
||||
endif()
|
||||
if(VTK_USE_SYSTEM_HDF5)
|
||||
set(vtkhdf5_LIBRARIES ${HDF5_LIBRARIES} ${HDF5_HL_LIBRARIES})
|
||||
+ set(vtkhdf5_DEFINITIONS ${HDF5_DEFINITIONS})
|
||||
endif()
|
||||
vtk_module(vtkhdf5
|
||||
EXCLUDE_FROM_WRAPPING
|
@ -1,3 +1,3 @@
|
||||
Source: yaml-cpp
|
||||
Version: 0.5.4 candidate
|
||||
Version: 0.5.4-rc-1
|
||||
Description: yaml-cpp is a YAML parser and emitter in C++ matching the YAML 1.2 spec.
|
||||
|
@ -1,38 +1,53 @@
|
||||
# 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/yaml-cpp-380ecb404ef99ba132154ed43dd2b84136b30b14)
|
||||
vcpkg_download_distfile(ARCHIVE
|
||||
URLS "https://github.com/jbeder/yaml-cpp/archive/380ecb404ef99ba132154ed43dd2b84136b30b14.zip"
|
||||
FILENAME "380ecb404ef99ba132154ed43dd2b84136b30b14.zip"
|
||||
SHA512 7e090b53ba760f4f9a44701359fe2c30c05f1bbcd2cba78a8f9a88c651b09be6d592e65826fbacb9dd7317afbe3cd968be531b89f83e79f15cd97e9c27d17232
|
||||
vcpkg_from_github(
|
||||
OUT_SOURCE_PATH SOURCE_PATH
|
||||
REPO jbeder/yaml-cpp
|
||||
REF 380ecb404ef99ba132154ed43dd2b84136b30b14
|
||||
SHA512 36fa4432f1ee94049dc67c52c180efe1eddc7678bfc545437b0d751be1eecd94d541daabdbcb01acbb84a321f2c80d609ba2927c8458ad8499e007123ae25d4e
|
||||
HEAD_REF master
|
||||
)
|
||||
vcpkg_extract_source_archive(${ARCHIVE})
|
||||
|
||||
vcpkg_configure_cmake(
|
||||
SOURCE_PATH ${SOURCE_PATH}
|
||||
# OPTIONS -DUSE_THIS_IN_ALL_BUILDS=1 -DUSE_THIS_TOO=2
|
||||
# OPTIONS_RELEASE -DOPTIMIZE=1
|
||||
# OPTIONS_DEBUG -DDEBUGGABLE=1
|
||||
PREFER_NINJA
|
||||
OPTIONS
|
||||
-DYAML_CPP_BUILD_TOOLS=OFF
|
||||
)
|
||||
|
||||
vcpkg_install_cmake()
|
||||
|
||||
vcpkg_copy_pdbs()
|
||||
vcpkg_fixup_cmake_targets(CONFIG_PATH CMake)
|
||||
|
||||
# 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}")
|
||||
|
||||
foreach(CONF debug release)
|
||||
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)
|
||||
# Remove cmake files
|
||||
file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/CMake)
|
||||
file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/CMake)
|
||||
|
||||
file(READ ${CURRENT_PACKAGES_DIR}/include/yaml-cpp/dll.h DLL_H)
|
||||
if(VCPKG_LIBRARY_LINKAGE STREQUAL "dynamic")
|
||||
string(REPLACE "#ifdef YAML_CPP_DLL" "#if 1" DLL_H "${DLL_H}")
|
||||
else()
|
||||
string(REPLACE "#ifdef YAML_CPP_DLL" "#if 0" DLL_H "${DLL_H}")
|
||||
endif()
|
||||
file(WRITE ${CURRENT_PACKAGES_DIR}/include/yaml-cpp/dll.h "${DLL_H}")
|
||||
|
||||
# Handle copyright
|
||||
file(COPY ${SOURCE_PATH}/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/yaml-cpp)
|
||||
file(RENAME ${CURRENT_PACKAGES_DIR}/share/yaml-cpp/LICENSE ${CURRENT_PACKAGES_DIR}/share/yaml-cpp/copyright)
|
||||
|
||||
|
@ -151,12 +151,12 @@ function SelectProgram([Parameter(Mandatory=$true)][string]$Dependency)
|
||||
|
||||
if($Dependency -eq "cmake")
|
||||
{
|
||||
$requiredVersion = "3.9.0"
|
||||
$downloadVersion = "3.9.0"
|
||||
$url = "https://cmake.org/files/v3.9/cmake-3.9.0-win32-x86.zip"
|
||||
$downloadPath = "$downloadsDir\cmake-3.9.0-win32-x86.zip"
|
||||
$expectedDownloadedFileHash = "9d593839f64b94718a1b75b8519b56ecb959e4d37d406bf2a087e2c1f7a6b89c"
|
||||
$executableFromDownload = "$downloadsDir\cmake-3.9.0-win32-x86\bin\cmake.exe"
|
||||
$requiredVersion = "3.9.1"
|
||||
$downloadVersion = "3.9.1"
|
||||
$url = "https://cmake.org/files/v3.9/cmake-3.9.1-win32-x86.zip"
|
||||
$downloadPath = "$downloadsDir\cmake-3.9.1-win32-x86.zip"
|
||||
$expectedDownloadedFileHash = "e0d9501bd34e3100e925dcb2e07f5f0ce8980bdbe5fce0ae950b21368d54c1a1"
|
||||
$executableFromDownload = "$downloadsDir\cmake-3.9.1-win32-x86\bin\cmake.exe"
|
||||
$extractionType = $ExtractionType_ZIP
|
||||
$extractionFolder = $downloadsDir
|
||||
}
|
||||
@ -172,16 +172,16 @@ function SelectProgram([Parameter(Mandatory=$true)][string]$Dependency)
|
||||
}
|
||||
elseif($Dependency -eq "git")
|
||||
{
|
||||
$requiredVersion = "2.0.0"
|
||||
$downloadVersion = "2.11.1"
|
||||
$url = "https://github.com/git-for-windows/git/releases/download/v2.11.1.windows.1/MinGit-2.11.1-32-bit.zip" # We choose the 32-bit version
|
||||
$downloadPath = "$downloadsDir\MinGit-2.11.1-32-bit.zip"
|
||||
$expectedDownloadedFileHash = "6ca79af09015625f350ef4ad74a75cfb001b340aec095b6963be9d45becb3bba"
|
||||
$requiredVersion = "2.14.1"
|
||||
$downloadVersion = "2.14.1"
|
||||
$url = "https://github.com/git-for-windows/git/releases/download/v2.14.1.windows.1/MinGit-2.14.1-32-bit.zip" # We choose the 32-bit version
|
||||
$downloadPath = "$downloadsDir\MinGit-2.14.1-32-bit.zip"
|
||||
$expectedDownloadedFileHash = "77b468e0ead1e7da4cb3a1cf35dabab5210bf10457b4142f5e9430318217cdef"
|
||||
# There is another copy of git.exe in MinGit\bin. However, an installed version of git add the cmd dir to the PATH.
|
||||
# Therefore, choosing the cmd dir here as well.
|
||||
$executableFromDownload = "$downloadsDir\MinGit-2.11.1-32-bit\cmd\git.exe"
|
||||
$executableFromDownload = "$downloadsDir\MinGit-2.14.1-32-bit\cmd\git.exe"
|
||||
$extractionType = $ExtractionType_ZIP
|
||||
$extractionFolder = "$downloadsDir\MinGit-2.11.1-32-bit"
|
||||
$extractionFolder = "$downloadsDir\MinGit-2.14.1-32-bit"
|
||||
}
|
||||
else
|
||||
{
|
||||
|
@ -1 +1 @@
|
||||
"0.0.82"
|
||||
"0.0.83"
|
@ -70,16 +70,23 @@ namespace vcpkg
|
||||
return Util::fmap(Strings::split(out.output, "\n"), [](auto&& s) { return fs::path(s); });
|
||||
}
|
||||
|
||||
static fs::path fetch_dependency(const fs::path scripts_folder,
|
||||
static fs::path fetch_dependency(const fs::path& scripts_folder,
|
||||
const std::wstring& tool_name,
|
||||
const fs::path& expected_downloaded_path)
|
||||
const fs::path& expected_downloaded_path,
|
||||
const std::array<int, 3>& version)
|
||||
{
|
||||
const fs::path script = scripts_folder / "fetchDependency.ps1";
|
||||
auto install_cmd = System::create_powershell_script_cmd(script, Strings::wformat(L"-Dependency %s", tool_name));
|
||||
System::ExitCodeAndOutput rc = System::cmd_execute_and_capture_output(install_cmd);
|
||||
if (rc.exit_code)
|
||||
{
|
||||
System::println(System::Color::error, "Launching powershell failed or was denied");
|
||||
const std::string version_as_string = Strings::format("%d.%d.%d", version[0], version[1], version[2]);
|
||||
|
||||
System::println(System::Color::error,
|
||||
"Launching powershell failed or was denied when trying to fetch %s version %s.\n"
|
||||
"(No sufficient installed version was found)",
|
||||
Strings::to_utf8(tool_name),
|
||||
version_as_string);
|
||||
Metrics::track_property("error", "powershell install failed");
|
||||
Metrics::track_property("installcmd", install_cmd);
|
||||
Checks::exit_with_code(VCPKG_LINE_INFO, rc.exit_code);
|
||||
@ -96,12 +103,12 @@ namespace vcpkg
|
||||
return actual_downloaded_path;
|
||||
}
|
||||
|
||||
static fs::path get_cmake_path(const fs::path& downloads_folder, const fs::path scripts_folder)
|
||||
static fs::path get_cmake_path(const fs::path& downloads_folder, const fs::path& scripts_folder)
|
||||
{
|
||||
static constexpr std::array<int, 3> expected_version = {3, 9, 0};
|
||||
static constexpr std::array<int, 3> expected_version = {3, 9, 1};
|
||||
static const std::wstring version_check_arguments = L"--version";
|
||||
|
||||
const fs::path downloaded_copy = downloads_folder / "cmake-3.9.0-win32-x86" / "bin" / "cmake.exe";
|
||||
const fs::path downloaded_copy = downloads_folder / "cmake-3.9.1-win32-x86" / "bin" / "cmake.exe";
|
||||
const std::vector<fs::path> from_path = find_from_PATH(L"cmake");
|
||||
|
||||
std::vector<fs::path> candidate_paths;
|
||||
@ -117,10 +124,10 @@ namespace vcpkg
|
||||
return *p;
|
||||
}
|
||||
|
||||
return fetch_dependency(scripts_folder, L"cmake", downloaded_copy);
|
||||
return fetch_dependency(scripts_folder, L"cmake", downloaded_copy, expected_version);
|
||||
}
|
||||
|
||||
fs::path get_nuget_path(const fs::path& downloads_folder, const fs::path scripts_folder)
|
||||
fs::path get_nuget_path(const fs::path& downloads_folder, const fs::path& scripts_folder)
|
||||
{
|
||||
static constexpr std::array<int, 3> expected_version = {4, 1, 0};
|
||||
static const std::wstring version_check_arguments = L"";
|
||||
@ -138,15 +145,15 @@ namespace vcpkg
|
||||
return *p;
|
||||
}
|
||||
|
||||
return fetch_dependency(scripts_folder, L"nuget", downloaded_copy);
|
||||
return fetch_dependency(scripts_folder, L"nuget", downloaded_copy, expected_version);
|
||||
}
|
||||
|
||||
fs::path get_git_path(const fs::path& downloads_folder, const fs::path scripts_folder)
|
||||
fs::path get_git_path(const fs::path& downloads_folder, const fs::path& scripts_folder)
|
||||
{
|
||||
static constexpr std::array<int, 3> expected_version = {2, 0, 0};
|
||||
static constexpr std::array<int, 3> expected_version = {2, 14, 1};
|
||||
static const std::wstring version_check_arguments = L"--version";
|
||||
|
||||
const fs::path downloaded_copy = downloads_folder / "MinGit-2.11.1-32-bit" / "cmd" / "git.exe";
|
||||
const fs::path downloaded_copy = downloads_folder / "MinGit-2.14.1-32-bit" / "cmd" / "git.exe";
|
||||
const std::vector<fs::path> from_path = find_from_PATH(L"git");
|
||||
|
||||
std::vector<fs::path> candidate_paths;
|
||||
@ -162,7 +169,7 @@ namespace vcpkg
|
||||
return *p;
|
||||
}
|
||||
|
||||
return fetch_dependency(scripts_folder, L"git", downloaded_copy);
|
||||
return fetch_dependency(scripts_folder, L"git", downloaded_copy, expected_version);
|
||||
}
|
||||
|
||||
Expected<VcpkgPaths> VcpkgPaths::create(const fs::path& vcpkg_root_dir)
|
||||
|
@ -4,16 +4,44 @@
|
||||
#include "vcpkg_Commands.h"
|
||||
#include "vcpkg_Strings.h"
|
||||
#include "vcpkg_System.h"
|
||||
#include "vcpkg_Util.h"
|
||||
|
||||
namespace vcpkg::Commands::DependInfo
|
||||
{
|
||||
void perform_and_exit(const VcpkgCmdArguments& args, const VcpkgPaths& paths)
|
||||
{
|
||||
static const std::string example = Commands::Help::create_example_string(R"###(depend-info)###");
|
||||
args.check_exact_arg_count(0, example);
|
||||
static const std::string example = Commands::Help::create_example_string(R"###(depend-info [pat])###");
|
||||
args.check_max_arg_count(1, example);
|
||||
args.check_and_get_optional_command_arguments({});
|
||||
|
||||
const auto source_control_files = Paragraphs::load_all_ports(paths.get_filesystem(), paths.ports);
|
||||
std::vector<std::unique_ptr<SourceControlFile>> source_control_files =
|
||||
Paragraphs::load_all_ports(paths.get_filesystem(), paths.ports);
|
||||
|
||||
if (args.command_arguments.size() == 1)
|
||||
{
|
||||
const std::string filter = args.command_arguments.at(0);
|
||||
|
||||
Util::erase_remove_if(source_control_files,
|
||||
[&](const std::unique_ptr<SourceControlFile>& source_control_file) {
|
||||
|
||||
const SourceParagraph& source_paragraph = *source_control_file->core_paragraph;
|
||||
|
||||
if (Strings::case_insensitive_ascii_contains(source_paragraph.name, filter))
|
||||
{
|
||||
return false;
|
||||
}
|
||||
|
||||
for (const Dependency& dependency : source_paragraph.depends)
|
||||
{
|
||||
if (Strings::case_insensitive_ascii_contains(dependency.name, filter))
|
||||
{
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
return true;
|
||||
});
|
||||
}
|
||||
|
||||
for (auto&& source_control_file : source_control_files)
|
||||
{
|
||||
|
Loading…
x
Reference in New Issue
Block a user