[vcpkg] Merge from master into refactor-includes

This commit is contained in:
Robert Schumacher 2017-10-13 18:50:12 -07:00
commit a790820e8c
55 changed files with 879 additions and 277 deletions

View File

@ -24,7 +24,7 @@ vcpkg_apply_patches(
${CMAKE_CURRENT_LIST_DIR}/Fix-building-in-Visual-Studio-2017.patch
)
if (${VCPKG_LIBRARY_LINKAGE} STREQUAL static)
if (VCPKG_LIBRARY_LINKAGE STREQUAL "static")
set(DEBUG_CONFIG "Debug Static")
set(RELEASE_CONFIG "Release Static")
else()
@ -53,7 +53,7 @@ file(COPY ${SOURCE_PATH}/bin/vs-2015/${TRIPLET_SYSTEM_ARCH}/${DEBUG_CONFIG
file(COPY ${SOURCE_PATH}/bin/vs-2015/${TRIPLET_SYSTEM_ARCH}/${RELEASE_CONFIG}/antlr4-runtime.lib
DESTINATION ${CURRENT_PACKAGES_DIR}/lib)
if (${VCPKG_LIBRARY_LINKAGE} STREQUAL static)
if (VCPKG_LIBRARY_LINKAGE STREQUAL "static")
vcpkg_apply_patches(
SOURCE_PATH ${CURRENT_PACKAGES_DIR}/include
PATCHES ${CMAKE_CURRENT_LIST_DIR}/static.patch

View File

@ -1,4 +1,4 @@
if (VCPKG_LIBRARY_LINKAGE STREQUAL dynamic)
if (VCPKG_LIBRARY_LINKAGE STREQUAL "dynamic")
message(STATUS "Warning: Dynamic building not supported yet. Building static.")
set(VCPKG_LIBRARY_LINKAGE static)
endif()
@ -23,7 +23,7 @@ vcpkg_extract_source_archive(${ARCHIVE})
vcpkg_extract_source_archive(${GBC_ARCHIVE} ${CURRENT_BUILDTREES_DIR}/tools/)
set(FETCHED_GBC_PATH ${CURRENT_BUILDTREES_DIR}/tools/gbc-6.0.0-amd64.exe)
if (NOT EXISTS ${FETCHED_GBC_PATH})
if (NOT EXISTS "${FETCHED_GBC_PATH}")
message(FATAL_ERROR "Fetching GBC failed. Expected '${FETCHED_GBC_PATH}' to exists, but it doesn't.")
endif()

3
ports/celero/CONTROL Normal file
View File

@ -0,0 +1,3 @@
Source: celero
Version: 2.1.0-1
Description: Celero is a modern cross-platform (Windows, Linux, MacOS) Microbenchmarking library for C++.

View File

@ -0,0 +1,29 @@
include(vcpkg_common_functions)
if(VCPKG_LIBRARY_LINKAGE STREQUAL "dynamic")
message(STATUS "Celero currently can only be built statically")
set(VCPKG_LIBRARY_LINKAGE static)
endif()
vcpkg_from_github(
OUT_SOURCE_PATH SOURCE_PATH
REPO DigitalInBlue/Celero
REF v2.1.0
SHA512 30563567255b09a2c810d97896839589ed99d45b6c8d075fd16d1a0068457d70195a199f5c982c84784c2e03284c1eaac565253fa72b81d9e2d4102721b80221
HEAD_REF master
)
vcpkg_configure_cmake(
SOURCE_PATH ${SOURCE_PATH}
PREFER_NINJA # Disable this option if project cannot be built with Ninja
OPTIONS
-DCELERO_ENABLE_EXPERIMENTS=OFF
-DCELERO_ENABLE_TESTS=OFF
-DCELERO_RUN_EXAMPLE_ON_BUILD=OFF
)
vcpkg_install_cmake()
file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include)
file(INSTALL ${SOURCE_PATH}/license.txt DESTINATION ${CURRENT_PACKAGES_DIR}/share/celero RENAME copyright)

View File

@ -72,7 +72,7 @@ set(SRCS ${DEPRECATION_SRCS}
# define (to nothing instead of _declspec(dllimport) ) the DLL_API macro.
# For this purpouse we include (depending on the BUILD_SHARED_LIBS )
# the appropriate FreeImageConfig.h .
if(${BUILD_SHARED_LIBS})
if(BUILD_SHARED_LIBS)
configure_file(${CMAKE_CURRENT_SOURCE_DIR}/FreeImageConfig-dynamic.h ${CMAKE_CURRENT_BINARY_DIR}/FreeImageConfig.h)
else()
configure_file(${CMAKE_CURRENT_SOURCE_DIR}/FreeImageConfig-static.h ${CMAKE_CURRENT_BINARY_DIR}/FreeImageConfig.h)
@ -81,7 +81,7 @@ list(APPEND PUBLIC_HEADERS ${CMAKE_CURRENT_BINARY_DIR}/FreeImageConfig.h)
add_library(FreeImage ${SRCS} ${PRIVATE_HEADERS} ${PUBLIC_HEADERS})
if(${BUILD_SHARED_LIBS})
if(BUILD_SHARED_LIBS)
target_compile_definitions(FreeImage PRIVATE -DFREEIMAGE_EXPORTS)
else()
target_compile_definitions(FreeImage PRIVATE -DFREEIMAGE_LIB)
@ -119,7 +119,7 @@ add_library(FreeImagePlus
${CMAKE_CURRENT_SOURCE_DIR}/Wrapper/FreeImagePlus/FreeImagePlus.h
${CMAKE_CURRENT_SOURCE_DIR}/Wrapper/FreeImagePlus/FreeImagePlus.rc)
if(${BUILD_SHARED_LIBS})
if(BUILD_SHARED_LIBS)
target_compile_definitions(FreeImagePlus PRIVATE -DFIP_EXPORTS)
else()
target_compile_definitions(FreeImagePlus PRIVATE -DFREEIMAGE_LIB)

View File

@ -1,70 +0,0 @@
From 823171a129401d226ac4821fb997ce585045170c Mon Sep 17 00:00:00 2001
From: Manuel Massing <m.massing@warped-space.de>
Date: Wed, 23 Nov 2016 23:50:12 +0100
Subject: [PATCH] Add support for MSVC1900 (backported from GDAL2)
---
nmake.opt | 6 ++++++
port/cpl_config.h.vc | 8 +++++---
2 files changed, 11 insertions(+), 3 deletions(-)
diff --git a/nmake.opt b/nmake.opt
index 8900135..4d1c4fa 100644
--- a/nmake.opt
+++ b/nmake.opt
@@ -31,6 +31,7 @@
# Check version of Visual C++ compiler:
# nmake -f makefile.vc MSVC_VER=xxxx
# where xxxx is one of following:
+# 1900 = 14.0(2015)
# 1800 = 12.0(2013)
# 1700 = 11.0(2012)
# 1600 = 10.0(2010)
@@ -627,8 +628,13 @@ GDALLIB = $(GDAL_ROOT)/gdal.lib
!ENDIF
!IFDEF ODBC_SUPPORTED
+!IF $(MSVC_VER) >= 1900
+# legacy_stdio_definitions.lib : https://connect.microsoft.com/VisualStudio/feedback/details/1134693/vs-2015-ctp-5-c-vsnwprintf-s-and-other-functions-are-not-exported-in-appcrt140-dll-breaking-linkage-of-static-libraries
+ODBCLIB = legacy_stdio_definitions.lib odbc32.lib odbccp32.lib user32.lib
+!ELSE
ODBCLIB = odbc32.lib odbccp32.lib user32.lib
!ENDIF
+!ENDIF
!IF DEFINED(MRSID_DIR) || DEFINED(MRSID_RASTER_DIR) || DEFINED(MRSID_LIDAR_DIR)
!IF "$(MRSID_PLUGIN)" != "YES"
diff --git a/port/cpl_config.h.vc b/port/cpl_config.h.vc
index bfff8f6..fe7b82a 100644
--- a/port/cpl_config.h.vc
+++ b/port/cpl_config.h.vc
@@ -1,5 +1,5 @@
-/* We define this here in general so that a VC++ build will publically
+/* We define this here in general so that a VC++ build will publicly
declare STDCALL interfaces even if an application is built against it
using MinGW */
@@ -17,7 +17,9 @@
#if defined(_MSC_VER) && (_MSC_VER < 1500)
# define vsnprintf _vsnprintf
#endif
-#define snprintf _snprintf
+#if defined(_MSC_VER) && (_MSC_VER < 1900)
+# define snprintf _snprintf
+#endif
#define HAVE_GETCWD 1
/* gmt_notunix.h from GMT project also redefines getcwd. See #3138 */
@@ -86,7 +88,7 @@
/* Set the native cpu bit order */
#define HOST_FILLORDER FILLORDER_LSB2MSB
-/* Define as 0 or 1 according to the floating point format suported by the
+/* Define as 0 or 1 according to the floating point format supported by the
machine */
#define HAVE_IEEEFP 1
--
2.10.1.windows.1

View File

@ -1,18 +1,8 @@
From b25c3dc49ca1bcf9a789cf64c9fa8694e35127f0 Mon Sep 17 00:00:00 2001
From: Manuel Massing <m.massing@warped-space.de>
Date: Sun, 27 Nov 2016 09:57:04 +0100
Subject: [PATCH 2/2] Add variable CXX_CRT_FLAGS to allow for selection of C
runtime linkage in nmake build.
---
nmake.opt | 18 ++++++++++++++----
1 file changed, 14 insertions(+), 4 deletions(-)
diff --git a/nmake.opt b/nmake.opt
index 4d1c4fa..47c2df8 100644
index bd5719c2d1..f6101ccd59 100644
--- a/nmake.opt
+++ b/nmake.opt
@@ -125,18 +125,28 @@ CXX_PDB_FLAGS=/Zi /Fd$(GDAL_ROOT)\gdal$(VERSION).pdb
@@ -127,18 +127,28 @@ CXX_PDB_FLAGS=/Zi /Fd$(GDAL_ROOT)\gdal$(VERSION).pdb
CXX_PDB_FLAGS=
!ENDIF
@ -29,22 +19,19 @@ index 4d1c4fa..47c2df8 100644
!IFNDEF OPTFLAGS
!IF $(MSVC_VER) >= 1400
!IFNDEF DEBUG
-OPTFLAGS= $(CXX_ANALYZE_FLAGS) $(CXX_PDB_FLAGS) /nologo /MD /EHsc /Ox /D_CRT_SECURE_NO_DEPRECATE /D_CRT_NONSTDC_NO_DEPRECATE /DNDEBUG
-OPTFLAGS= $(CXX_ANALYZE_FLAGS) $(CXX_PDB_FLAGS) /nologo /MP /MD /EHsc /Ox /FC /D_CRT_SECURE_NO_DEPRECATE /D_CRT_NONSTDC_NO_DEPRECATE /DNDEBUG
+OPTFLAGS= $(CXX_ANALYZE_FLAGS) $(CXX_PDB_FLAGS) /nologo $(CXX_CRT_FLAGS) /EHsc /Ox /D_CRT_SECURE_NO_DEPRECATE /D_CRT_NONSTDC_NO_DEPRECATE /DNDEBUG
!ELSE
-OPTFLAGS= $(CXX_ANALYZE_FLAGS) $(CXX_PDB_FLAGS) /nologo /MD /EHsc /D_CRT_SECURE_NO_DEPRECATE /D_CRT_NONSTDC_NO_DEPRECATE /DDEBUG
-OPTFLAGS= $(CXX_ANALYZE_FLAGS) $(CXX_PDB_FLAGS) /nologo /MP /MD /EHsc /FC /D_CRT_SECURE_NO_DEPRECATE /D_CRT_NONSTDC_NO_DEPRECATE /DDEBUG
+OPTFLAGS= $(CXX_ANALYZE_FLAGS) $(CXX_PDB_FLAGS) /nologo $(CXX_CRT_FLAGS) /EHsc /D_CRT_SECURE_NO_DEPRECATE /D_CRT_NONSTDC_NO_DEPRECATE /DDEBUG
!ENDIF
!ELSE
!IFNDEF DEBUG
-OPTFLAGS= $(CXX_PDB_FLAGS) /nologo /MD /EHsc /GR /Ox /DNDEBUG
-OPTFLAGS= $(CXX_PDB_FLAGS) /nologo /MD /EHsc /GR /Ox /FC /DNDEBUG
+OPTFLAGS= $(CXX_PDB_FLAGS) /nologo $(CXX_CRT_FLAGS) /EHsc /GR /Ox /DNDEBUG
!ELSE
-OPTFLAGS= $(CXX_PDB_FLAGS) /nologo /MD /EHsc /GR /DDEBUG
-OPTFLAGS= $(CXX_PDB_FLAGS) /nologo /MD /EHsc /GR /FC /DDEBUG
+OPTFLAGS= $(CXX_PDB_FLAGS) /nologo $(CXX_CRT_FLAGS) /EHsc /GR /DDEBUG
!ENDIF
!ENDIF #MSVC_VER
!ENDIF # OPTFLAGS
--
2.10.1.windows.1

View File

@ -0,0 +1,14 @@
diff --git a/nmake.opt b/nmake.opt
index bd5719c2d1..c0ca442cbe 100644
--- a/nmake.opt
+++ b/nmake.opt
@@ -195,6 +205,9 @@ SOFTWARNFLAGS= /wd4244 /wd4702 /wd4701 /wd4013 /wd4706 /wd4057 /wd4210 /wd4305
# Linker debug options
!IFDEF DEBUG
LDEBUG= /debug
+!ELSEIFDEF WITH_PDB
+# Ensures that PDB is included in release DLL if so requested
+LDEBUG= /debug /opt:ref /opt:icf
!ENDIF
# Uncomment the following if you are building for 64-bit windows

View File

@ -1,26 +0,0 @@
From 9da0cb6eed442ebf3eea232cd85e26c155c963ef Mon Sep 17 00:00:00 2001
From: Manuel Massing <m.massing@warped-space.de>
Date: Tue, 29 Nov 2016 12:43:58 +0100
Subject: [PATCH 3/4] - Ensures inclusion of PDB in release dll if so requested
---
gdal/nmake.opt | 3 +++
1 file changed, 3 insertions(+)
diff --git a/nmake.opt b/nmake.opt
index 47c2df8..4844d22 100644
--- a/nmake.opt
+++ b/nmake.opt
@@ -174,6 +174,9 @@ SOFTWARNFLAGS= /wd4244 /wd4702 /wd4701 /wd4013 /wd4706 /wd4057 /wd4210 /wd4305
# Linker debug options
!IFDEF DEBUG
LDEBUG= /debug
+!ELSEIFDEF WITH_PDB
+# Ensures that PDB is included in release DLL if so requested
+LDEBUG= /debug /opt:ref /opt:icf
!ENDIF
# Uncomment the following if you are building for 64-bit windows
--
2.10.1.windows.1

View File

@ -0,0 +1,20 @@
diff --git a/frmts/openjpeg/openjpegdataset.cpp b/frmts/openjpeg/openjpegdataset.cpp
index 5978882bc9..72cc7b9559 100644
--- a/frmts/openjpeg/openjpegdataset.cpp
+++ b/frmts/openjpeg/openjpegdataset.cpp
@@ -34,14 +34,8 @@
#pragma clang diagnostic ignored "-Wdocumentation"
#endif
-#if defined(OPENJPEG_VERSION) && OPENJPEG_VERSION >= 20200
-#include <openjpeg-2.2/openjpeg.h>
-#elif 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 <openjpeg.h>
#ifdef __clang__
#pragma clang diagnostic pop

View File

@ -1,19 +0,0 @@
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"

View File

@ -1,4 +1,4 @@
Source: gdal
Version: 1.11.3-5
Version: 2.2.2
Description: The Geographic Data Abstraction Library for reading and writing geospatial raster and vector data.
Build-Depends: proj4, libpng, geos, sqlite3, curl, expat, libpq, libmysql, openjpeg, libwebp, libxml2, liblzma

View File

@ -5,25 +5,24 @@ endif()
include(vcpkg_common_functions)
vcpkg_download_distfile(ARCHIVE
URLS "http://download.osgeo.org/gdal/1.11.3/gdal1113.zip"
FILENAME "gdal1113.zip"
SHA512 42feb98a54019d3b6ac54f598f299a57e117db500c662d39faa9d5f5090f03c1b8d7680242e1abd8035738edc4fc3197ae118a0ce50733691a76a5cf377bcd46
)
URLS "http://download.osgeo.org/gdal/2.2.2/gdal222.zip"
FILENAME "gdal222.zip"
SHA512 b886238a7915c97f4acec5920dabe959d1ab15a8be0bc31ba0d05ad69d1d7d96f864faf0aa82921fa1a1b40b733744202b86f2f45ff63d6518cd18a53f3544a8
)
# Extract source into archictecture specific directory, because GDALs' nmake based build currently does not
# support out of source builds.
set(SOURCE_PATH_DEBUG ${CURRENT_BUILDTREES_DIR}/src-${TARGET_TRIPLET}-debug/gdal-1.11.3)
set(SOURCE_PATH_RELEASE ${CURRENT_BUILDTREES_DIR}/src-${TARGET_TRIPLET}-release/gdal-1.11.3)
set(SOURCE_PATH_DEBUG ${CURRENT_BUILDTREES_DIR}/src-${TARGET_TRIPLET}-debug/gdal-2.2.2)
set(SOURCE_PATH_RELEASE ${CURRENT_BUILDTREES_DIR}/src-${TARGET_TRIPLET}-release/gdal-2.2.2)
foreach(BUILD_TYPE debug release)
vcpkg_extract_source_archive(${ARCHIVE} ${CURRENT_BUILDTREES_DIR}/src-${TARGET_TRIPLET}-${BUILD_TYPE})
vcpkg_apply_patches(
SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src-${TARGET_TRIPLET}-${BUILD_TYPE}/gdal-1.11.3
SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src-${TARGET_TRIPLET}-${BUILD_TYPE}/gdal-2.2.2
PATCHES
${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
${CMAKE_CURRENT_LIST_DIR}/0001-Add-variable-CXX_CRT_FLAGS-to-allow-for-selection-of.patch
${CMAKE_CURRENT_LIST_DIR}/0002-Ensures-inclusion-of-PDB-in-release-dll-if-so-reques.patch
${CMAKE_CURRENT_LIST_DIR}/0003-Fix-openjpeg-include.patch
)
endforeach()
@ -211,7 +210,7 @@ if (VCPKG_LIBRARY_LINKAGE STREQUAL static)
else()
file(GLOB EXE_FILES ${CURRENT_PACKAGES_DIR}/bin/*.exe)
file(REMOVE ${EXE_FILES} ${CURRENT_PACKAGES_DIR}/lib/gdal.lib)
file(COPY ${SOURCE_PATH_DEBUG}/gdal111.dll DESTINATION ${CURRENT_PACKAGES_DIR}/debug/bin)
file(COPY ${SOURCE_PATH_DEBUG}/gdal202.dll DESTINATION ${CURRENT_PACKAGES_DIR}/debug/bin)
file(COPY ${SOURCE_PATH_DEBUG}/gdal_i.lib DESTINATION ${CURRENT_PACKAGES_DIR}/debug/lib)
file(RENAME ${CURRENT_PACKAGES_DIR}/lib/gdal_i.lib ${CURRENT_PACKAGES_DIR}/lib/gdal.lib)
file(RENAME ${CURRENT_PACKAGES_DIR}/debug/lib/gdal_i.lib ${CURRENT_PACKAGES_DIR}/debug/lib/gdald.lib)

View File

@ -119,7 +119,7 @@ RUNTIME DESTINATION bin
ARCHIVE DESTINATION lib
LIBRARY DESTINATION lib)
if (${CMAKE_BUILD_TYPE} STREQUAL "Release")
if (CMAKE_BUILD_TYPE STREQUAL "Release")
install(FILES agent/address.h DESTINATION include/nice)
install(FILES agent/agent.h DESTINATION include/nice)
install(FILES agent/candidate.h DESTINATION include/nice)

View File

@ -66,7 +66,7 @@ if(USE_X86)
add_definitions(-DOC_X86_ASM)
endif()
if (${BUILD_SHARED_LIBS})
if (BUILD_SHARED_LIBS)
add_definitions(-DLIBTHEORA_EXPORTS)
endif()

View File

@ -1,4 +1,4 @@
Source: mpfr
Version: 3.1.5-1
Version: 3.1.6
Description: The MPFR library is a C library for multiple-precision floating-point computations with correct rounding
Build-Depends: mpir

View File

@ -1,9 +1,9 @@
include(vcpkg_common_functions)
set(SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src/mpfr-3.1.5)
set(SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src/mpfr-3.1.6)
vcpkg_download_distfile(ARCHIVE
URLS "http://www.mpfr.org/mpfr-current/mpfr-3.1.5.tar.xz"
FILENAME "mpfr-3.1.5.tar.xz"
SHA512 3643469b9099b31e41d6ec9158196cd1c30894030c8864ee5b1b1e91b488bccbf7c263c951b03fe9f4ae6f9d29279e157a7dfed0885467d875f107a3d964f032
URLS "http://www.mpfr.org/mpfr-current/mpfr-3.1.6.tar.xz"
FILENAME "mpfr-3.1.6.tar.xz"
SHA512 746ee74d5026f267f74ab352d850ed30ff627d530aa840c71b24793e44875f8503946bd7399905dea2b2dd5744326254d7889337fe94cfe58d03c4066e9d8054
)
vcpkg_extract_source_archive(${ARCHIVE})

View File

@ -22,7 +22,7 @@ vcpkg_get_program_files_platform_bitness(PROGRAM_FILES_PLATFORM_BITNESS)
set(SYSTEM_MPIEXEC_FILEPATH "${PROGRAM_FILES_PLATFORM_BITNESS}/Microsoft MPI/Bin/mpiexec.exe")
set(MSMPI_EXPECTED_FULL_VERSION "8.1.12438.1084")
if(EXISTS ${SYSTEM_MPIEXEC_FILEPATH})
if(EXISTS "${SYSTEM_MPIEXEC_FILEPATH}")
set(MPIEXEC_VERSION_LOGNAME "mpiexec-version")
vcpkg_execute_required_process(
COMMAND ${SYSTEM_MPIEXEC_FILEPATH}
@ -31,8 +31,8 @@ if(EXISTS ${SYSTEM_MPIEXEC_FILEPATH})
)
file(READ ${CURRENT_BUILDTREES_DIR}/${MPIEXEC_VERSION_LOGNAME}-out.log MPIEXEC_OUTPUT)
if(${MPIEXEC_OUTPUT} MATCHES "\\[Version ([0-9]+\\.[0-9]+\\.[0-9]+\\.[0-9]+)\\]")
if(NOT ${CMAKE_MATCH_1} STREQUAL ${MSMPI_EXPECTED_FULL_VERSION})
if(MPIEXEC_OUTPUT MATCHES "\\[Version ([0-9]+\\.[0-9]+\\.[0-9]+\\.[0-9]+)\\]")
if(NOT CMAKE_MATCH_1 STREQUAL MSMPI_EXPECTED_FULL_VERSION)
download_msmpi_redistributable_package()
message(FATAL_ERROR
@ -102,7 +102,7 @@ file(INSTALL
DESTINATION
${CURRENT_PACKAGES_DIR}/lib
)
if(${TRIPLET_SYSTEM_ARCH} STREQUAL "x86")
if(TRIPLET_SYSTEM_ARCH STREQUAL "x86")
file(INSTALL
"${SOURCE_LIB_PATH}/${TRIPLET_SYSTEM_ARCH}/msmpifes.lib"
"${SOURCE_LIB_PATH}/${TRIPLET_SYSTEM_ARCH}/msmpifms.lib"
@ -121,7 +121,7 @@ file(INSTALL
DESTINATION
${CURRENT_PACKAGES_DIR}/debug/lib
)
if(${TRIPLET_SYSTEM_ARCH} STREQUAL "x86")
if(TRIPLET_SYSTEM_ARCH STREQUAL "x86")
file(INSTALL
"${SOURCE_LIB_PATH}/${TRIPLET_SYSTEM_ARCH}/msmpifes.lib"
"${SOURCE_LIB_PATH}/${TRIPLET_SYSTEM_ARCH}/msmpifms.lib"

View File

@ -1,4 +1,4 @@
Source: openni2
Version: 2.2.0.33-2
Version: 2.2.0.33-4
Build-Depends: kinectsdk1
Description: OpenNI is open source library for access to Natural Interaction (NI) devices such as RGB-D camera.

View File

@ -1,15 +1,3 @@
# 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)
#
# UWP Not Support
if (VCPKG_CMAKE_SYSTEM_NAME STREQUAL "WindowsStore")
message(FATAL_ERROR "Error: UWP builds are currently not supported.")
@ -28,16 +16,13 @@ endif()
# Download Source Code
include(vcpkg_common_functions)
set(SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src/OpenNI2-2.2-beta2)
vcpkg_download_distfile(ARCHIVE
URLS "https://github.com/OpenNI/OpenNI2/archive/2.2-beta2.zip"
FILENAME "OpenNI2-2.2-beta.zip"
SHA512 9779161493114265745c9eb8b15db95a3ed2322cd75504931d0fb7b6214d7abc8a9eb2ea5f35e309bc4d2748f015eee27ada4974a2e9568b5ecb9d98099c84e9
vcpkg_from_github(
OUT_SOURCE_PATH SOURCE_PATH
REPO OpenNI/OpenNI2
REF 2.2-beta2
SHA512 60a3a3043679f3069aea869e92dc5881328ce4393d4140ea8d089027321ac501ae27d283657214e2834d216d0d49bf4f29a4b3d3e43df27a6ed21f889cd0083f
HEAD_REF master
)
vcpkg_extract_source_archive(${ARCHIVE})
file(TO_NATIVE_PATH ${VCPKG_ROOT_DIR} NATIVE_VCPKG_ROOT_DIR)
configure_file("${CMAKE_CURRENT_LIST_DIR}/replace_environment_variable.patch.in" "${CMAKE_CURRENT_LIST_DIR}/replace_environment_variable.patch" @ONLY)
vcpkg_apply_patches(
SOURCE_PATH ${SOURCE_PATH}
@ -46,6 +31,17 @@ vcpkg_apply_patches(
"${CMAKE_CURRENT_LIST_DIR}/replace_environment_variable.patch"
)
file(REMOVE_RECURSE ${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET})
file(MAKE_DIRECTORY ${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET})
file(COPY ${SOURCE_PATH} DESTINATION ${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET})
get_filename_component(SOURCE_DIR_NAME "${SOURCE_PATH}" NAME)
# Use fresh copy of sources for building and modification
set(SOURCE_PATH "${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}/${SOURCE_DIR_NAME}")
file(TO_NATIVE_PATH ${CURRENT_INSTALLED_DIR} NATIVE_INSTALLED_DIR)
configure_file("${SOURCE_PATH}/Source/Drivers/Kinect/Kinect.vcxproj" "${SOURCE_PATH}/Source/Drivers/Kinect/Kinect.vcxproj" @ONLY)
# Build OpenNI2
vcpkg_build_msbuild(
PROJECT_PATH "${SOURCE_PATH}/OpenNI.sln"

View File

@ -7,7 +7,7 @@ index 08a49fe..7fd8620 100644
<WarningLevel>Level3</WarningLevel>
<Optimization>Disabled</Optimization>
- <AdditionalIncludeDirectories>..\..\..\Include;..\..\..\ThirdParty\PSCommon\XnLib\Include;$(KINECTSDK10_DIR)\inc;</AdditionalIncludeDirectories>
+ <AdditionalIncludeDirectories>..\..\..\Include;..\..\..\ThirdParty\PSCommon\XnLib\Include;@NATIVE_VCPKG_ROOT_DIR@\packages\kinectsdk1_x86-windows\include</AdditionalIncludeDirectories>
+ <AdditionalIncludeDirectories>..\..\..\Include;..\..\..\ThirdParty\PSCommon\XnLib\Include;@NATIVE_INSTALLED_DIR@\include</AdditionalIncludeDirectories>
<PreprocessorDefinitions>_WINDLL;%(PreprocessorDefinitions);_WINDOWS</PreprocessorDefinitions>
<DisableLanguageExtensions>false</DisableLanguageExtensions>
<TreatWarningAsError>false</TreatWarningAsError>
@ -16,7 +16,7 @@ index 08a49fe..7fd8620 100644
<GenerateDebugInformation>true</GenerateDebugInformation>
<AdditionalDependencies>Kinect10.lib;XnLib.lib;%(AdditionalDependencies)</AdditionalDependencies>
- <AdditionalLibraryDirectories>$(SolutionDir)Bin\$(Platform)-$(Configuration)\;$(KINECTSDK10_DIR)\lib\x86;</AdditionalLibraryDirectories>
+ <AdditionalLibraryDirectories>$(SolutionDir)Bin\$(Platform)-$(Configuration)\;@NATIVE_VCPKG_ROOT_DIR@\packages\kinectsdk1_x86-windows\debug\lib</AdditionalLibraryDirectories>
+ <AdditionalLibraryDirectories>$(SolutionDir)Bin\$(Platform)-$(Configuration)\;@NATIVE_INSTALLED_DIR@\debug\lib</AdditionalLibraryDirectories>
<TreatLinkerWarningAsErrors>true</TreatLinkerWarningAsErrors>
</Link>
</ItemDefinitionGroup>
@ -25,7 +25,7 @@ index 08a49fe..7fd8620 100644
<WarningLevel>Level3</WarningLevel>
<Optimization>Disabled</Optimization>
- <AdditionalIncludeDirectories>..\..\..\Include;..\..\..\ThirdParty\PSCommon\XnLib\Include;$(KINECTSDK10_DIR)\inc;</AdditionalIncludeDirectories>
+ <AdditionalIncludeDirectories>..\..\..\Include;..\..\..\ThirdParty\PSCommon\XnLib\Include;@NATIVE_VCPKG_ROOT_DIR@\packages\kinectsdk1_x64-windows\include</AdditionalIncludeDirectories>
+ <AdditionalIncludeDirectories>..\..\..\Include;..\..\..\ThirdParty\PSCommon\XnLib\Include;@NATIVE_INSTALLED_DIR@\include</AdditionalIncludeDirectories>
<PreprocessorDefinitions>_WINDLL;%(PreprocessorDefinitions);_WINDOWS</PreprocessorDefinitions>
<DisableLanguageExtensions>false</DisableLanguageExtensions>
<TreatWarningAsError>false</TreatWarningAsError>
@ -34,7 +34,7 @@ index 08a49fe..7fd8620 100644
<GenerateDebugInformation>true</GenerateDebugInformation>
<AdditionalDependencies>Kinect10.lib;XnLib.lib;%(AdditionalDependencies)</AdditionalDependencies>
- <AdditionalLibraryDirectories>$(SolutionDir)Bin\$(Platform)-$(Configuration)\;$(KINECTSDK10_DIR)\lib\amd64;</AdditionalLibraryDirectories>
+ <AdditionalLibraryDirectories>$(SolutionDir)Bin\$(Platform)-$(Configuration)\;@NATIVE_VCPKG_ROOT_DIR@\packages\kinectsdk1_x64-windows\debug\lib</AdditionalLibraryDirectories>
+ <AdditionalLibraryDirectories>$(SolutionDir)Bin\$(Platform)-$(Configuration)\;@NATIVE_INSTALLED_DIR@\debug\lib</AdditionalLibraryDirectories>
<IgnoreSpecificDefaultLibraries>
</IgnoreSpecificDefaultLibraries>
<IgnoreAllDefaultLibraries>
@ -43,7 +43,7 @@ index 08a49fe..7fd8620 100644
<FunctionLevelLinking>true</FunctionLevelLinking>
<IntrinsicFunctions>true</IntrinsicFunctions>
- <AdditionalIncludeDirectories>..\..\..\Include;..\..\..\ThirdParty\PSCommon\XnLib\Include;$(KINECTSDK10_DIR)\inc;</AdditionalIncludeDirectories>
+ <AdditionalIncludeDirectories>..\..\..\Include;..\..\..\ThirdParty\PSCommon\XnLib\Include;@NATIVE_VCPKG_ROOT_DIR@\packages\kinectsdk1_x86-windows\include</AdditionalIncludeDirectories>
+ <AdditionalIncludeDirectories>..\..\..\Include;..\..\..\ThirdParty\PSCommon\XnLib\Include;@NATIVE_INSTALLED_DIR@\include</AdditionalIncludeDirectories>
<TreatWarningAsError>false</TreatWarningAsError>
</ClCompile>
<Link>
@ -52,7 +52,7 @@ index 08a49fe..7fd8620 100644
<OptimizeReferences>true</OptimizeReferences>
<AdditionalDependencies>Kinect10.lib;XnLib.lib;%(AdditionalDependencies)</AdditionalDependencies>
- <AdditionalLibraryDirectories>$(SolutionDir)Bin\$(Platform)-$(Configuration)\;$(KINECTSDK10_DIR)\lib\x86;</AdditionalLibraryDirectories>
+ <AdditionalLibraryDirectories>$(SolutionDir)Bin\$(Platform)-$(Configuration)\;@NATIVE_VCPKG_ROOT_DIR@\packages\kinectsdk1_x86-windows\lib</AdditionalLibraryDirectories>
+ <AdditionalLibraryDirectories>$(SolutionDir)Bin\$(Platform)-$(Configuration)\;@NATIVE_INSTALLED_DIR@\lib</AdditionalLibraryDirectories>
<TreatLinkerWarningAsErrors>true</TreatLinkerWarningAsErrors>
</Link>
</ItemDefinitionGroup>
@ -61,7 +61,7 @@ index 08a49fe..7fd8620 100644
<FunctionLevelLinking>true</FunctionLevelLinking>
<IntrinsicFunctions>true</IntrinsicFunctions>
- <AdditionalIncludeDirectories>..\..\..\Include;..\..\..\ThirdParty\PSCommon\XnLib\Include;$(KINECTSDK10_DIR)\inc;</AdditionalIncludeDirectories>
+ <AdditionalIncludeDirectories>..\..\..\Include;..\..\..\ThirdParty\PSCommon\XnLib\Include;@NATIVE_VCPKG_ROOT_DIR@\packages\kinectsdk1_x64-windows\include</AdditionalIncludeDirectories>
+ <AdditionalIncludeDirectories>..\..\..\Include;..\..\..\ThirdParty\PSCommon\XnLib\Include;@NATIVE_INSTALLED_DIR@\include</AdditionalIncludeDirectories>
<TreatWarningAsError>false</TreatWarningAsError>
</ClCompile>
<Link>
@ -70,7 +70,7 @@ index 08a49fe..7fd8620 100644
<OptimizeReferences>true</OptimizeReferences>
<AdditionalDependencies>Kinect10.lib;XnLib.lib;%(AdditionalDependencies)</AdditionalDependencies>
- <AdditionalLibraryDirectories>$(SolutionDir)Bin\$(Platform)-$(Configuration)\;$(KINECTSDK10_DIR)\lib\amd64;</AdditionalLibraryDirectories>
+ <AdditionalLibraryDirectories>$(SolutionDir)Bin\$(Platform)-$(Configuration)\;@NATIVE_VCPKG_ROOT_DIR@\packages\kinectsdk1_x64-windows\lib</AdditionalLibraryDirectories>
+ <AdditionalLibraryDirectories>$(SolutionDir)Bin\$(Platform)-$(Configuration)\;@NATIVE_INSTALLED_DIR@\lib</AdditionalLibraryDirectories>
<TreatLinkerWarningAsErrors>true</TreatLinkerWarningAsErrors>
</Link>
</ItemDefinitionGroup>

View File

@ -1,4 +1,4 @@
Source: pcl
Version: 1.8.1-1
Build-Depends: boost, eigen3, flann, qhull, vtk, openni2, qt5
Version: 1.8.1-2
Build-Depends: boost, eigen3, flann, qhull, vtk, openni2, qt5, winpcap
Description: Point Cloud Library (PCL) is open source library for 2D/3D image and point cloud processing.

View File

@ -50,7 +50,7 @@ vcpkg_configure_cmake(
-DWITH_CUDA=OFF
-DWITH_LIBUSB=OFF
-DWITH_OPENNI2=ON
-DWITH_PCAP=OFF
-DWITH_PCAP=ON
-DWITH_PNG=OFF
-DWITH_QHULL=ON
-DWITH_QT=ON

View File

@ -1,4 +1,4 @@
Source: sciter
Version: 4.0.3
Version: 4.0.4
Description: Sciter is an embeddable HTML/CSS/scripting engine.
Maintainer: andrew.fedoniouk@gmail.com, ehysta@gmail.com

View File

@ -12,9 +12,9 @@ include(vcpkg_common_functions)
# header-only library
set(VCPKG_POLICY_DLLS_WITHOUT_LIBS enabled)
set(SCITER_VERSION 4.0.3)
set(SCITER_REVISION 1209528289b8c8369352d648f4ba0c67826cbd8b)
set(SCITER_SHA 9fc72dd44b22c69715b4b08c5af7a65e0bb48d849191002b2ae45ca6f5ea058fb8c64cc7f6c176215afce682af6166a1579efd8cc2ca0fb9e844ceba1160f10f)
set(SCITER_VERSION 4.0.4)
set(SCITER_REVISION 9b5954df34ac0094e6037ac8aa6e00fb883185f9)
set(SCITER_SHA a87b05aec6c99f56926b005eb1303b2b68f901fe2658433ca11d704b50308e6d291026404b86320fae0f1b12ca257a35338464f21d94ebeaa6e40cfec64a9201)
if(VCPKG_TARGET_ARCHITECTURE STREQUAL x64)
set(SCITER_ARCH 64)

View File

@ -1,5 +1,5 @@
option(SUFFIX_D "Add d Suffix to lib" ${SUFFIX_D})
if(NOT ${SUFFIX_D})
if(NOT SUFFIX_D)
find_library(GLSLANG glslang)
find_library(OSDEPENDENT OSDependent)
find_library(OGLCOMPILER OGLCompiler)

View File

@ -1,5 +1,5 @@
option(SUFFIX_D "Add d Suffix to lib" ${SUFFIX_D})
if(NOT ${SUFFIX_D})
if(NOT SUFFIX_D)
find_library(SPIRVTOOLSOPT spirv-tools-opt)
find_library(SPIRVTOOLS spirv-tools)
ELSE()

View File

@ -0,0 +1,4 @@
Source: spatialite-tools
Version: 4.3.0
Description: Contains spatialite.exe and other command line tools to work with SpatiaLite databases (import, export, SQL queries)
Build-Depends: sqlite3, libspatialite, geos, readosm, proj4, zlib, libiconv, expat

View File

@ -0,0 +1,128 @@
diff --git a/makefile.vc b/makefile.vc
index 33c85d2..c811e7d 100644
--- a/makefile.vc
+++ b/makefile.vc
@@ -15,7 +15,7 @@ SPATIALITE_OSM_RAW_EXE = spatialite_osm_raw.exe
SPATIALITE_OSM_FILTER_EXE = spatialite_osm_filter.exe
SPATIALITE_GML_EXE = spatialite_gml.exe
-CFLAGS = /nologo -IC:\OSGeo4W\include $(OPTFLAGS)
+CFLAGS = /nologo -I$(INSTALLED_ROOT)\include $(OPTFLAGS)
default: all
@@ -26,89 +26,58 @@ all: $(SPATIALITE_EXE) $(SHP_DOCTOR_EXE) $(SPATIALITE_TOOL_EXE) \
$(SPATIALITE_OSM_FILTER_EXE)
$(SPATIALITE_EXE): shell.obj
- cl shell.obj C:\OSGeo4W\lib\proj_i.lib \
- C:\OSGeo4W\lib\iconv.lib C:\OSGeo4W\lib\geos_c.lib \
- C:\OSGeo4W\lib\spatialite_i.lib C:\OSGeo4W\lib\sqlite3_i.lib \
- /Fe$(SPATIALITE_EXE)
+ cl shell.obj $(LIBS_ALL) /Fe$(SPATIALITE_EXE)
if exist $(SPATIALITE_EXE).manifest mt -manifest \
$(SPATIALITE_EXE).manifest -outputresource:$(SPATIALITE_EXE);1
$(EXIF_LOADER_EXE): exif_loader.obj
- cl exif_loader.obj C:\OSGeo4W\lib\proj_i.lib \
- C:\OSGeo4W\lib\iconv.lib C:\OSGeo4W\lib\geos_c.lib \
- C:\OSGeo4W\lib\spatialite_i.lib C:\OSGeo4W\lib\sqlite3_i.lib
+ cl exif_loader.obj $(LIBS_ALL)
if exist $(EXIF_LOADER_EXE).manifest mt -manifest \
$(EXIF_LOADER_EXE).manifest -outputresource:$(EXIF_LOADER_EXE);1
$(SHP_DOCTOR_EXE): shp_doctor.obj
- cl shp_doctor.obj C:\OSGeo4W\lib\proj_i.lib \
- C:\OSGeo4W\lib\iconv.lib C:\OSGeo4W\lib\geos_c.lib \
- C:\OSGeo4W\lib\spatialite_i.lib C:\OSGeo4W\lib\sqlite3_i.lib
+ cl shp_doctor.obj $(LIBS_ALL)
if exist $(SHP_DOCTOR_EXE).manifest mt -manifest \
$(SHP_DOCTOR_EXE).manifest -outputresource:$(SHP_DOCTOR_EXE);1
$(SPATIALITE_NETWORK_EXE): spatialite_network.obj
- cl spatialite_network.obj C:\OSGeo4W\lib\proj_i.lib \
- C:\OSGeo4W\lib\iconv.lib \
- C:\OSGeo4W\lib\spatialite_i.lib C:\OSGeo4W\lib\sqlite3_i.lib
+ cl spatialite_network.obj $(LIBS_ALL)
if exist $(SPATIALITE_NETWORK_EXE).manifest mt -manifest \
$(SPATIALITE_TOOL_EXE).manifest \
-outputresource:$(SPATIALITE_TOOL_EXE);1
$(SPATIALITE_TOOL_EXE): spatialite_tool.obj
- cl spatialite_tool.obj C:\OSGeo4W\lib\proj_i.lib \
- C:\OSGeo4W\lib\iconv.lib C:\OSGeo4W\lib\geos_c.lib \
- C:\OSGeo4W\lib\spatialite_i.lib C:\OSGeo4W\lib\sqlite3_i.lib
+ cl spatialite_tool.obj $(LIBS_ALL)
if exist $(SPATIALITE_TOOL_EXE).manifest mt -manifest \
$(SPATIALITE_TOOL_EXE).manifest \
-outputresource:$(SPATIALITE_TOOL_EXE);1
$(SPATIALITE_OSM_NET_EXE): spatialite_osm_net.obj
- cl spatialite_osm_net.obj C:\OSGeo4W\lib\proj_i.lib \
- C:\OSGeo4W\lib\iconv.lib \
- C:\OSGeo4W\lib\readosm_i.lib \
- C:\OSGeo4W\lib\libexpat.lib \
- C:\OSGeo4W\lib\zlib.lib \
- C:\OSGeo4W\lib\spatialite_i.lib C:\OSGeo4W\lib\sqlite3_i.lib
+ cl spatialite_osm_net.obj $(LIBS_ALL)
if exist $(SPATIALITE_OSM_EXE).manifest mt -manifest \
$(SPATIALITE_OSM_EXE).manifest \
-outputresource:$(SPATIALITE_OSM_NET_EXE);1
$(SPATIALITE_OSM_MAP_EXE): spatialite_osm_map.obj
- cl spatialite_osm_map.obj C:\OSGeo4W\lib\proj_i.lib \
- C:\OSGeo4W\lib\iconv.lib \
- C:\OSGeo4W\lib\readosm_i.lib \
- C:\OSGeo4W\lib\libexpat.lib \
- C:\OSGeo4W\lib\zlib.lib \
- C:\OSGeo4W\lib\spatialite_i.lib C:\OSGeo4W\lib\sqlite3_i.lib
+ cl spatialite_osm_map.obj $(LIBS_ALL)
if exist $(SPATIALITE_OSM_MAP_EXE).manifest mt -manifest \
$(SPATIALITE_OSM_MAP_EXE).manifest \
-outputresource:$(SPATIALITE_OSM_MAP_EXE);1
$(SPATIALITE_GML_EXE): spatialite_gml.obj
- cl spatialite_gml.obj C:\OSGeo4W\lib\proj_i.lib \
- C:\OSGeo4W\lib\iconv.lib \
- C:\OSGeo4W\lib\libexpat.lib \
- C:\OSGeo4W\lib\spatialite_i.lib C:\OSGeo4W\lib\sqlite3_i.lib
+ cl spatialite_gml.obj $(LIBS_ALL)
if exist $(SPATIALITE_GML_EXE).manifest mt -manifest \
$(SPATIALITE_GML_EXE).manifest \
-outputresource:$(SPATIALITE_GML_EXE);1
$(SPATIALITE_OSM_RAW_EXE): spatialite_osm_raw.obj
- cl spatialite_osm_raw.obj C:\OSGeo4W\lib\proj_i.lib \
- C:\OSGeo4W\lib\iconv.lib \
- C:\OSGeo4W\lib\readosm_i.lib \
- C:\OSGeo4W\lib\libexpat.lib \
- C:\OSGeo4W\lib\zlib.lib \
- C:\OSGeo4W\lib\spatialite_i.lib C:\OSGeo4W\lib\sqlite3_i.lib
+ cl spatialite_osm_raw.obj $(LIBS_ALL)
if exist $(SPATIALITE_OSM_RAW_EXE).manifest mt -manifest \
$(SPATIALITE_OSM_RAW_EXE).manifest \
-outputresource:$(SPATIALITE_OSM_RAW_EXE);1
$(SPATIALITE_OSM_FILTER_EXE): spatialite_osm_filter.obj
- cl spatialite_osm_filter.obj C:\OSGeo4W\lib\proj_i.lib \
- C:\OSGeo4W\lib\iconv.lib \
- C:\OSGeo4W\lib\spatialite_i.lib C:\OSGeo4W\lib\sqlite3_i.lib
+ cl spatialite_osm_filter.obj $(LIBS_ALL)
if exist $(SPATIALITE_OSM_FILTER_EXE).manifest mt -manifest \
$(SPATIALITE_OSM_FILTER_EXE).manifest \
-outputresource:$(SPATIALITE_OSM_FILTER_EXE);1
diff --git a/nmake.opt b/nmake.opt
index 4f4a953..d9efecf 100644
--- a/nmake.opt
+++ b/nmake.opt
@@ -1,8 +1,8 @@
# Directory tree where SpatiaLite will be installed.
-INSTDIR=C:\OSGeo4W
+INSTDIR=$(INST_DIR)
# Uncomment the first for an optimized build, or the second for debug.
-OPTFLAGS= /nologo /Ox /fp:precise /W3 /MD /D_CRT_SECURE_NO_WARNINGS \
+OPTFLAGS= /nologo /fp:precise /W3 $(CL_FLAGS) /D_CRT_SECURE_NO_WARNINGS \
/D_LARGE_FILE=1 /D_FILE_OFFSET_BITS=64 /D_LARGEFILE_SOURCE=1
#OPTFLAGS= /nologo /Zi /MD /Fdspatialite.pdb

View File

@ -0,0 +1,118 @@
include(vcpkg_common_functions)
option(BUILD_DEBUG_TOOLS "Build debug version of tools" OFF)
set(SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src/spatialite-tools-4.3.0)
vcpkg_download_distfile(ARCHIVE
URLS "http://www.gaia-gis.it/gaia-sins/spatialite-tools-4.3.0.tar.gz"
FILENAME "spatialite-tools-4.3.0.tar.gz"
SHA512 e1de27c1c65ff2ff0b08583113517bea74edf33fff59ad6e9c77492ea3ae87d9c0f17d7670ee6602b32eea73ad3678bb5410ef2c6fac6e213bf2e341a907db88
)
vcpkg_extract_source_archive(${ARCHIVE})
find_program(NMAKE nmake)
vcpkg_apply_patches(
SOURCE_PATH ${SOURCE_PATH}
PATCHES ${CMAKE_CURRENT_LIST_DIR}/fix-makefiles.patch
)
set(LDIR "\"${CURRENT_INSTALLED_DIR}\"")
if(VCPKG_CRT_LINKAGE STREQUAL dynamic)
set(CL_FLAGS_DBG "/MDd /Zi")
set(CL_FLAGS_REL "/MD /Ox")
set(GEOS_LIBS_REL "${LDIR}/lib/geos_c.lib")
set(GEOS_LIBS_DBG "${LDIR}/debug/lib/geos_c.lib")
set(LIBXML2_LIBS_REL "${LDIR}/lib/libxml2.lib")
set(LIBXML2_LIBS_DBG "${LDIR}/debug/lib/libxml2.lib")
set(SPATIALITE_LIBS_REL "${LDIR}/lib/spatialite.lib")
set(SPATIALITE_LIBS_DBG "${LDIR}/debug/lib/spatialite.lib")
set(ICONV_LIBS_REL "${LDIR}/lib/libiconv.lib")
set(ICONV_LIBS_DBG "${LDIR}/debug/lib/libiconv.lib")
else()
set(CL_FLAGS_DBG "/MTd /Zi")
set(CL_FLAGS_REL "/MT /Ox")
set(GEOS_LIBS_REL "${LDIR}/lib/libgeos_c.lib ${LDIR}/lib/libgeos.lib")
set(GEOS_LIBS_DBG "${LDIR}/debug/lib/libgeos_c.lib ${LDIR}/debug/lib/libgeos.lib")
set(LIBXML2_LIBS_REL "${LDIR}/lib/libxml2.lib ${LDIR}/lib/lzma.lib ws2_32.lib")
set(LIBXML2_LIBS_DBG "${LDIR}/debug/lib/libxml2.lib ${LDIR}/debug/lib/lzma.lib ws2_32.lib")
set(SPATIALITE_LIBS_REL "${LDIR}/lib/spatialite.lib ${LDIR}/lib/freexl.lib")
set(SPATIALITE_LIBS_DBG "${LDIR}/debug/lib/spatialite.lib ${LDIR}/debug/lib/freexl.lib")
set(ICONV_LIBS_REL "${LDIR}/lib/libiconv.lib ${LDIR}/lib/libcharset.lib")
set(ICONV_LIBS_DBG "${LDIR}/debug/lib/libiconv.lib ${LDIR}/debug/lib/libcharset.lib ")
endif()
set(LIBS_ALL_DBG
"${ICONV_LIBS_DBG} \
${LDIR}/debug/lib/sqlite3.lib \
${SPATIALITE_LIBS_DBG} \
${LIBXML2_LIBS_DBG} \
${GEOS_LIBS_DBG} \
${LDIR}/debug/lib/readosm.lib \
${LDIR}/debug/lib/expat.lib \
${LDIR}/debug/lib/zlibd.lib \
${LDIR}/debug/lib/projd.lib"
)
set(LIBS_ALL_REL
"${ICONV_LIBS_REL} \
${LDIR}/lib/sqlite3.lib \
${SPATIALITE_LIBS_REL} \
${LIBXML2_LIBS_REL} \
${GEOS_LIBS_REL} \
${LDIR}/lib/readosm.lib \
${LDIR}/lib/expat.lib \
${LDIR}/lib/zlib.lib \
${LDIR}/lib/proj.lib"
)
if(BUILD_DEBUG_TOOLS)
################
# Debug build
################
message(STATUS "Building ${TARGET_TRIPLET}-dgb")
file(TO_NATIVE_PATH "${CURRENT_PACKAGES_DIR}" INST_DIR_REL)
vcpkg_execute_required_process(
COMMAND ${NMAKE} -f makefile.vc clean install
"INST_DIR=\"${INST_DIR_REL}\"" "INSTALLED_ROOT=${LDIR}" "CL_FLAGS=${CL_FLAGS_DBG}" "LIBS_ALL=${LIBS_ALL_DBG}"
WORKING_DIRECTORY ${SOURCE_PATH}
LOGNAME nmake-build-${TARGET_TRIPLET}-debug
)
message(STATUS "Building ${TARGET_TRIPLET}-dbg done")
set(EXE_FOLDER ${CURRENT_PACKAGES_DIR}/bin/)
else()
################
# Release build
################
message(STATUS "Building ${TARGET_TRIPLET}-rel")
file(TO_NATIVE_PATH "${CURRENT_PACKAGES_DIR}" INST_DIR_REL)
vcpkg_execute_required_process(
COMMAND ${NMAKE} -f makefile.vc clean install
"INST_DIR=\"${INST_DIR_REL}\"" "INSTALLED_ROOT=${LDIR}" "CL_FLAGS=${CL_FLAGS_REL}" "LIBS_ALL=${LIBS_ALL_REL}"
WORKING_DIRECTORY ${SOURCE_PATH}
LOGNAME nmake-build-${TARGET_TRIPLET}-release
)
message(STATUS "Building ${TARGET_TRIPLET}-rel done")
set(EXE_FOLDER ${CURRENT_PACKAGES_DIR}/bin/)
endif()
file(INSTALL ${SOURCE_PATH}/COPYING DESTINATION ${CURRENT_PACKAGES_DIR}/share/${PORT} RENAME copyright)
file(MAKE_DIRECTORY ${CURRENT_PACKAGES_DIR}/tools/${PORT}/)
file(GLOB EXES "${EXE_FOLDER}/*.exe")
file(COPY ${EXES} DESTINATION ${CURRENT_PACKAGES_DIR}/tools/${PORT})
file(REMOVE ${EXES})
file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/bin)
file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/include)
if(NOT BUILD_DEBUG_TOOLS AND VCPKG_CRT_LINKAGE STREQUAL dynamic)
vcpkg_copy_tool_dependencies(${CURRENT_PACKAGES_DIR}/tools/${PORT})
endif()
message(STATUS "Packaging ${TARGET_TRIPLET} done")
# Allow empty include directory
set(VCPKG_POLICY_EMPTY_INCLUDE_FOLDER enabled)

View File

@ -0,0 +1,3 @@
Source: string-theory
Version: 1.6
Description: Flexible C++11 string library with type-safe formatting.

View File

@ -0,0 +1,42 @@
include(vcpkg_common_functions)
vcpkg_from_github(
OUT_SOURCE_PATH SOURCE_PATH
REPO zrax/string_theory
REF 1.6
SHA512 5bc99b6dfc2ab43d2812ee47dfbbeeb68106da39b2349799ab924f009270166ebb5508f87a37e634fbfa5495dd263697a582404650eedc5393722761c5ce2028
HEAD_REF master
)
if(VCPKG_LIBRARY_LINKAGE STREQUAL static)
set(ST_BUILD_STATIC ON)
else()
set(ST_BUILD_STATIC OFF)
endif()
vcpkg_configure_cmake(
SOURCE_PATH ${SOURCE_PATH}
PREFER_NINJA
OPTIONS
-DST_BUILD_STATIC=${ST_BUILD_STATIC}
)
vcpkg_install_cmake()
vcpkg_fixup_cmake_targets(CONFIG_PATH "lib/cmake/string_theory")
file(RENAME ${CURRENT_PACKAGES_DIR}/share/string-theory ${CURRENT_PACKAGES_DIR}/share/string_theory)
if(VCPKG_LIBRARY_LINKAGE STREQUAL static)
file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/bin)
file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/bin)
endif()
vcpkg_copy_pdbs()
file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include)
# Handle copyright
file(COPY ${SOURCE_PATH}/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/string-theory)
file(RENAME ${CURRENT_PACKAGES_DIR}/share/string-theory/LICENSE ${CURRENT_PACKAGES_DIR}/share/string-theory/copyright)
file(COPY ${CURRENT_PACKAGES_DIR}/share/string-theory/copyright DESTINATION ${CURRENT_PACKAGES_DIR}/share/string_theory/copyright)

3
ports/tiny-dnn/CONTROL Normal file
View File

@ -0,0 +1,3 @@
Source: tiny-dnn
Version: 2017-10-09-dd906fed8c8aff8dc837657c42f9d55f8b793b0e
Description: A C++14 implementation of deep learning. It is suitable for deep learning on limited computational resource.

View File

@ -0,0 +1,15 @@
#header-only library
include(vcpkg_common_functions)
vcpkg_from_github(
OUT_SOURCE_PATH SOURCE_PATH
REPO tiny-dnn/tiny-dnn
REF dd906fed8c8aff8dc837657c42f9d55f8b793b0e
SHA512 d853db7f49af1bece55337b93631c41191f3abd8287969f230330662fecc612e4e53ab789535fc6f9770ae0c8623d8e020e6036c2c804783d08f176a08c05d1b
HEAD_REF master
)
file(INSTALL ${SOURCE_PATH}/tiny_dnn DESTINATION ${CURRENT_PACKAGES_DIR}/include)
file(COPY ${CURRENT_BUILDTREES_DIR}/src/tiny-dnn-dd906fed8c8aff8dc837657c42f9d55f8b793b0e/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/tiny-dnn)
file(RENAME ${CURRENT_PACKAGES_DIR}/share/tiny-dnn/LICENSE ${CURRENT_PACKAGES_DIR}/share/tiny-dnn/copyright)

View File

@ -1,4 +1,4 @@
Source: vtk
Version: 8.0.0-2
Version: 8.0.0-3
Description: Software system for 3D computer graphics, image processing, and visualization
Build-Depends: zlib, libpng, tiff, libxml2, jsoncpp, glew, freetype, expat, hdf5, qt5, msmpi, libjpeg-turbo, proj4, lz4, libtheora
Build-Depends: zlib, libpng, tiff, libxml2, jsoncpp, glew, freetype, expat, hdf5, qt5, msmpi, libjpeg-turbo, proj4, lz4, libtheora, libharu

127
ports/vtk/FindGDAL.cmake Normal file
View File

@ -0,0 +1,127 @@
# Distributed under the OSI-approved BSD 3-Clause License. See accompanying
# file Copyright.txt or https://cmake.org/licensing for details.
#.rst:
# FindGDAL
# --------
#
#
#
# Locate gdal
#
# This module accepts the following environment variables:
#
# ::
#
# GDAL_DIR or GDAL_ROOT - Specify the location of GDAL
#
#
#
# This module defines the following CMake variables:
#
# ::
#
# GDAL_FOUND - True if libgdal is found
# GDAL_LIBRARY - A variable pointing to the GDAL library
# GDAL_INCLUDE_DIR - Where to find the headers
#
# $GDALDIR is an environment variable that would
# correspond to the ./configure --prefix=$GDAL_DIR
# used in building gdal.
#
# Created by Eric Wing. I'm not a gdal user, but OpenSceneGraph uses it
# for osgTerrain so I whipped this module together for completeness.
# I actually don't know the conventions or where files are typically
# placed in distros.
# Any real gdal users are encouraged to correct this (but please don't
# break the OS X framework stuff when doing so which is what usually seems
# to happen).
# This makes the presumption that you are include gdal.h like
#
#include "gdal.h"
find_path(GDAL_INCLUDE_DIR gdal.h
HINTS
ENV GDAL_DIR
ENV GDAL_ROOT
PATH_SUFFIXES
include/gdal
include/GDAL
include
PATHS
~/Library/Frameworks/gdal.framework/Headers
/Library/Frameworks/gdal.framework/Headers
/sw # Fink
/opt/local # DarwinPorts
/opt/csw # Blastwave
/opt
)
if(UNIX)
# Use gdal-config to obtain the library version (this should hopefully
# allow us to -lgdal1.x.y where x.y are correct version)
# For some reason, libgdal development packages do not contain
# libgdal.so...
find_program(GDAL_CONFIG gdal-config
HINTS
ENV GDAL_DIR
ENV GDAL_ROOT
PATH_SUFFIXES bin
PATHS
/sw # Fink
/opt/local # DarwinPorts
/opt/csw # Blastwave
/opt
)
if(GDAL_CONFIG)
exec_program(${GDAL_CONFIG} ARGS --libs OUTPUT_VARIABLE GDAL_CONFIG_LIBS)
if(GDAL_CONFIG_LIBS)
string(REGEX MATCHALL "-l[^ ]+" _gdal_dashl ${GDAL_CONFIG_LIBS})
string(REPLACE "-l" "" _gdal_lib "${_gdal_dashl}")
string(REGEX MATCHALL "-L[^ ]+" _gdal_dashL ${GDAL_CONFIG_LIBS})
string(REPLACE "-L" "" _gdal_libpath "${_gdal_dashL}")
endif()
endif()
endif()
find_library(GDAL_LIBRARY_RELEASE
NAMES ${_gdal_lib} gdal gdal_i gdal1.5.0 gdal1.4.0 gdal1.3.2 GDAL
HINTS
ENV GDAL_DIR
ENV GDAL_ROOT
${_gdal_libpath}
PATH_SUFFIXES lib
PATHS
/sw
/opt/local
/opt/csw
/opt
/usr/freeware
)
find_library(GDAL_LIBRARY_DEBUG
NAMES ${_gdal_lib} gdald gdald_i gdald1.5.0 gdald1.4.0 gdald1.3.2 GDALD
HINTS
ENV GDAL_DIR
ENV GDAL_ROOT
${_gdal_libpath}
PATH_SUFFIXES lib
PATHS
/sw
/opt/local
/opt/csw
/opt
/usr/freeware
)
include(SelectLibraryConfigurations)
select_library_configurations(GDAL)
include(FindPackageHandleStandardArgs)
FIND_PACKAGE_HANDLE_STANDARD_ARGS(GDAL DEFAULT_MSG GDAL_LIBRARY GDAL_INCLUDE_DIR)
set(GDAL_LIBRARIES ${GDAL_LIBRARY})
set(GDAL_INCLUDE_DIRS ${GDAL_INCLUDE_DIR})

View File

@ -0,0 +1,18 @@
--- a/CMake/FindLibHaru.cmake Mon Jun 26 15:29:04 2017
+++ b/CMake/FindLibHaru.cmake Wed Aug 16 09:30:12 2017
@@ -19,9 +19,13 @@
find_path(LIBHARU_INCLUDE_DIR hpdf.h)
-find_library(LIBHARU_LIBRARY NAMES hpdf)
+find_library(LIBHARU_LIBRARY_RELEASE NAMES hpdf libhpdf)
+find_library(LIBHARU_LIBRARY_DEBUG NAMES hpdfd libhpdfd)
-# handle the QUIETLY and REQUIRED arguments and set FONTCONFIG_FOUND to TRUE if
+include(SelectLibraryConfigurations)
+select_library_configurations(LIBHARU)
+
+# handle the QUIETLY and REQUIRED arguments and set LIBHARU_FOUND to TRUE if
# all listed variables are TRUE
include(FindPackageHandleStandardArgs)
find_package_handle_standard_args(LibHaru DEFAULT_MSG

View File

@ -0,0 +1,10 @@
--- a/CMake/FindMySQL.cmake Mon Jun 26 15:29:04 2017
+++ b/CMake/FindMySQL.cmake Wed Aug 16 11:21:58 2017
@@ -28,6 +28,7 @@
"C:/MySQL/include"
"[HKEY_LOCAL_MACHINE\\SOFTWARE\\MySQL AB\\MySQL Server 5.0;Location]/include"
"[HKEY_LOCAL_MACHINE\\SOFTWARE\\Wow6432Node\\MySQL AB\\MySQL Server 5.0;Location]/include"
+ PATH_SUFFIXES mysql
DOC "Specify the directory containing mysql.h."
)

View File

@ -0,0 +1,11 @@
--- a/CMake/FindODBC.cmake Mon Jun 26 15:29:04 2017
+++ b/CMake/FindODBC.cmake Wed Aug 16 12:58:11 2017
@@ -30,7 +30,7 @@
)
FIND_LIBRARY( ODBC_LIBRARY
- NAMES odbc iodbc unixodbc
+ NAMES odbc iodbc unixodbc odbc32
PATHS
/usr/lib
/usr/lib/odbc

View File

@ -1,13 +1,26 @@
include(vcpkg_common_functions)
set(VTK_SHORT_VERSION "8.0")
set(VTK_LONG_VERSION "${VTK_SHORT_VERSION}.0")
vcpkg_from_github(
OUT_SOURCE_PATH SOURCE_PATH
REPO "Kitware/VTK"
REF "v8.0.0"
REF "v${VTK_LONG_VERSION}"
SHA512 1a328f24df0b1c40c623ae80c9d49f8b27570144b10af02aeed41b90b50b8d4e0dd83d1341961f6818cde36e2cd793c578ebc95a46950cebfc518f486f249791
HEAD_REF "master"
)
# =============================================================================
# Options: These should be set by feature-packages when they become available
set(VTK_WITH_QT ON ) # IMPORTANT: if ON make sure `qt5` is listed as dependency in the CONTROL file
set(VTK_WITH_MPI ON ) # IMPORTANT: if ON make sure `mpi` is listed as dependency in the CONTROL file
set(VTK_WITH_PYTHON OFF) # IMPORTANT: if ON make sure `python3` is listed as dependency in the CONTROL file
set(VTK_WITH_ALL_MODULES OFF) # IMPORTANT: if ON make sure `qt5`, `mpi`, `python3`, `ffmpeg`, `gdal`, `fontconfig`,
# `libmysql` and `atlmfc` are listed as dependency in the CONTROL file
# =============================================================================
# Apply patches to the source code
vcpkg_apply_patches(
SOURCE_PATH ${SOURCE_PATH}
PATCHES
@ -28,33 +41,78 @@ vcpkg_apply_patches(
${CMAKE_CURRENT_LIST_DIR}/disable-workaround-findhdf5.patch
${CMAKE_CURRENT_LIST_DIR}/fix-find-libproj4.patch
${CMAKE_CURRENT_LIST_DIR}/fix-find-libharu.patch
${CMAKE_CURRENT_LIST_DIR}/fix-find-mysql.patch
${CMAKE_CURRENT_LIST_DIR}/fix-find-odbc.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.
# Remove the FindGLEW.cmake and FindPythonLibs.cmake that are distributed with VTK,
# since they do not detect the debug libraries correctly.
# The default files distributed with CMake (>= 3.9) should be superior by all means.
# For GDAL, the one distributed with CMake does not detect the debug libraries correctly,
# so we provide an own one.
file(REMOVE ${SOURCE_PATH}/CMake/FindGLEW.cmake)
file(REMOVE ${SOURCE_PATH}/CMake/FindPythonLibs.cmake)
file(COPY ${CMAKE_CURRENT_LIST_DIR}/FindGDAL.cmake DESTINATION ${SOURCE_PATH}/CMake)
# =============================================================================
# Collect CMake options for optional components
if(VTK_WITH_QT)
list(APPEND ADDITIONAL_OPTIONS
-DVTK_Group_Qt=ON
-DVTK_QT_VERSION=5
-DVTK_BUILD_QT_DESIGNER_PLUGIN=OFF
)
endif()
if(VTK_WITH_MPI)
list(APPEND ADDITIONAL_OPTIONS
-DVTK_Group_MPI=ON
)
endif()
if(VTK_WITH_PYTHON)
list(APPEND ADDITIONAL_OPTIONS
-DVTK_WRAP_PYTHON=ON
-DVTK_PYTHON_VERSION=3
)
endif()
if(VTK_WITH_ALL_MODULES)
list(APPEND ADDITIONAL_OPTIONS
-DVTK_BUILD_ALL_MODULES=ON
-DVTK_USE_TK=OFF # TCL/TK currently not included in vcpkg
# -DVTK_USE_SYSTEM_AUTOBAHN=ON
# -DVTK_USE_SYSTEM_SIX=ON
# -DVTK_USE_SYSTEM_MPI4PY=ON
# -DVTK_USE_SYSTEM_CONSTANTLY=ON
# -DVTK_USE_SYSTEM_INCREMENTAL=ON
# -DVTK_USE_SYSTEM_TWISTED=ON
# -DVTK_USE_SYSTEM_XDMF2=ON
# -DVTK_USE_SYSTEM_XDMF3=ON
# -DVTK_USE_SYSTEM_ZFP=ON
# -DVTK_USE_SYSTEM_ZOPE=ON
)
endif()
if(VCPKG_LIBRARY_LINKAGE STREQUAL dynamic)
list(APPEND ADDITIONAL_OPTIONS "-DVTK_EXTERNAL_HDF5_IS_SHARED=ON")
endif()
# =============================================================================
# Configure & Install
vcpkg_configure_cmake(
SOURCE_PATH ${SOURCE_PATH}
PREFER_NINJA
OPTIONS
-DVTK_Group_Imaging=ON
-DVTK_Group_Views=ON
-DBUILD_TESTING=OFF
-DBUILD_EXAMPLES=OFF
-DVTK_Group_MPI=ON
-DVTK_Group_Qt=ON
-DVTK_QT_VERSION=5
-DVTK_BUILD_QT_DESIGNER_PLUGIN=OFF
# -DVTK_WRAP_PYTHON=ON
# -DVTK_PYTHON_VERSION=3
-DVTK_USE_SYSTEM_EXPAT=ON
-DVTK_USE_SYSTEM_FREETYPE=ON
# -DVTK_USE_SYSTEM_GL2PS=ON
# -DVTK_USE_SYSTEM_LIBHARU=ON
-DVTK_USE_SYSTEM_LIBHARU=ON
-DVTK_USE_SYSTEM_JPEG=ON
-DVTK_USE_SYSTEM_GLEW=ON
-DVTK_USE_SYSTEM_HDF5=ON
@ -85,9 +143,29 @@ vcpkg_configure_cmake(
vcpkg_install_cmake()
vcpkg_copy_pdbs()
# =============================================================================
# Fixup target files
vcpkg_fixup_cmake_targets()
# For VTK vcpkg_fixup_cmake_targets is not enough:
# For some reason the references to the XDMF libraries in the target files do not end up
# correctly, so we fix them here.
if(VTK_WITH_ALL_MODULES)
file(READ ${CURRENT_PACKAGES_DIR}/share/vtk/VTKTargets-release.cmake VTK_TARGETS_RELEASE_CONTENT)
string(REPLACE "lib/../XdmfCore.lib" "lib/XdmfCore.lib" VTK_TARGETS_RELEASE_CONTENT "${VTK_TARGETS_RELEASE_CONTENT}")
string(REPLACE "bin/../XdmfCore.dll" "bin/XdmfCore.dll" VTK_TARGETS_RELEASE_CONTENT "${VTK_TARGETS_RELEASE_CONTENT}")
string(REPLACE "lib/../vtkxdmf3.lib" "lib/vtkxdmf3.lib" VTK_TARGETS_RELEASE_CONTENT "${VTK_TARGETS_RELEASE_CONTENT}")
string(REPLACE "bin/../vtkxdmf3.dll" "bin/vtkxdmf3.dll" VTK_TARGETS_RELEASE_CONTENT "${VTK_TARGETS_RELEASE_CONTENT}")
file(WRITE ${CURRENT_PACKAGES_DIR}/share/vtk/VTKTargets-release.cmake "${VTK_TARGETS_RELEASE_CONTENT}")
file(READ ${CURRENT_PACKAGES_DIR}/share/vtk/VTKTargets-debug.cmake VTK_TARGETS_DEBUG_CONTENT)
string(REPLACE "lib/../XdmfCore.lib" "lib/XdmfCore.lib" VTK_TARGETS_DEBUG_CONTENT "${VTK_TARGETS_DEBUG_CONTENT}")
string(REPLACE "bin/../XdmfCore.dll" "bin/XdmfCore.dll" VTK_TARGETS_DEBUG_CONTENT "${VTK_TARGETS_DEBUG_CONTENT}")
string(REPLACE "lib/../vtkxdmf3.lib" "lib/vtkxdmf3.lib" VTK_TARGETS_DEBUG_CONTENT "${VTK_TARGETS_DEBUG_CONTENT}")
string(REPLACE "bin/../vtkxdmf3.dll" "bin/vtkxdmf3.dll" VTK_TARGETS_DEBUG_CONTENT "${VTK_TARGETS_DEBUG_CONTENT}")
file(WRITE ${CURRENT_PACKAGES_DIR}/share/vtk/VTKTargets-debug.cmake "${VTK_TARGETS_DEBUG_CONTENT}")
endif()
# 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").
@ -158,8 +236,22 @@ set(SYSTEM_THIRD_PARTY_MODULES
vtkpng
vtktiff
vtkzlib
# vtkgl2ps
vtklibharu
)
if(VTK_WITH_PYTHON OR VTK_WITH_ALL_MODULES)
list(APPEND SYSTEM_THIRD_PARTY_MODULES
vtkPython
)
endif()
if(VTK_WITH_ALL_MODULES)
list(APPEND SYSTEM_THIRD_PARTY_MODULES
AutobahnPython
)
endif()
foreach(MODULE IN LISTS SYSTEM_THIRD_PARTY_MODULES)
_vtk_combine_third_party_libraries("${MODULE}")
endforeach()
@ -172,16 +264,45 @@ file(READ "${CURRENT_PACKAGES_DIR}/share/vtk/VTKTargets.cmake" VTK_TARGETS_CONTE
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
# =============================================================================
# Move executable to tools directory and clean-up other directories
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
function(_vtk_move_tool TOOL_NAME)
if(EXISTS ${CURRENT_PACKAGES_DIR}/bin/${TOOL_NAME}.exe)
file(RENAME ${CURRENT_PACKAGES_DIR}/bin/${TOOL_NAME}.exe ${CURRENT_PACKAGES_DIR}/tools/vtk/${TOOL_NAME}.exe)
endif()
file(REMOVE ${CURRENT_PACKAGES_DIR}/debug/bin/${TOOL_NAME}.exe)
endfunction()
set(VTK_TOOLS
vtkEncodeString-${VTK_SHORT_VERSION}
vtkHashSource-${VTK_SHORT_VERSION}
vtkWrapTclInit-${VTK_SHORT_VERSION}
vtkWrapTcl-${VTK_SHORT_VERSION}
vtkWrapPythonInit-${VTK_SHORT_VERSION}
vtkWrapPython-${VTK_SHORT_VERSION}
vtkWrapJava-${VTK_SHORT_VERSION}
vtkWrapHierarchy-${VTK_SHORT_VERSION}
vtkParseJava-${VTK_SHORT_VERSION}
vtkParseOGLExt-${VTK_SHORT_VERSION}
vtkpython
pvtkpython
)
foreach(TOOL_NAME IN LISTS VTK_TOOLS)
_vtk_move_tool("${TOOL_NAME}")
endforeach()
# =============================================================================
# Remove other files and directories that are not valid for vcpkg
if(VTK_WITH_ALL_MODULES)
file(REMOVE ${CURRENT_PACKAGES_DIR}/XdmfConfig.cmake)
file(REMOVE ${CURRENT_PACKAGES_DIR}/debug/XdmfConfig.cmake)
endif()
if(VCPKG_LIBRARY_LINKAGE STREQUAL static)
file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/bin)
file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/bin)
endif()
@ -189,6 +310,7 @@ endif()
file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include)
file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/share)
# =============================================================================
# Handle copyright
file(COPY ${SOURCE_PATH}/Copyright.txt DESTINATION ${CURRENT_PACKAGES_DIR}/share/vtk)
file(RENAME ${CURRENT_PACKAGES_DIR}/share/vtk/Copyright.txt ${CURRENT_PACKAGES_DIR}/share/vtk/copyright)

View File

@ -55,7 +55,7 @@ set(SRCS zzip/dir.c
add_library(zziplib ${SRCS} ${HEADERS})
if(${BUILD_SHARED_LIBS})
if(BUILD_SHARED_LIBS)
target_compile_definitions(zziplib PRIVATE -DZZIPLIB_EXPORTS)
endif()

View File

@ -26,7 +26,7 @@ function(vcpkg_acquire_depot_tools PATH_TO_ROOT_OUT)
set(download_success 1)
endif()
if (NOT ${download_success})
if (NOT download_success)
message(FATAL_ERROR
"\n"
" Failed to download file.\n"

View File

@ -78,14 +78,20 @@ function(vcpkg_configure_cmake)
set(GENERATOR "Visual Studio 15 2017")
elseif(VCPKG_CMAKE_SYSTEM_NAME STREQUAL "WindowsStore" AND TRIPLET_SYSTEM_ARCH MATCHES "x64" AND VCPKG_PLATFORM_TOOLSET MATCHES "v141")
set(GENERATOR "Visual Studio 15 2017 Win64")
elseif(VCPKG_CMAKE_SYSTEM_NAME STREQUAL "WindowsStore" AND TRIPLET_SYSTEM_ARCH MATCHES "arm" AND VCPKG_PLATFORM_TOOLSET MATCHES "v141")
elseif(VCPKG_CMAKE_SYSTEM_NAME STREQUAL "WindowsStore" AND TRIPLET_SYSTEM_ARCH STREQUAL "arm" AND VCPKG_PLATFORM_TOOLSET MATCHES "v141")
set(GENERATOR "Visual Studio 15 2017 ARM")
elseif(VCPKG_CMAKE_SYSTEM_NAME STREQUAL "WindowsStore" AND TRIPLET_SYSTEM_ARCH STREQUAL "arm64" AND VCPKG_PLATFORM_TOOLSET MATCHES "v141")
set(GENERATOR "Visual Studio 15 2017")
set(ARCH "ARM64")
elseif(TRIPLET_SYSTEM_ARCH MATCHES "x86" AND VCPKG_PLATFORM_TOOLSET MATCHES "v141")
set(GENERATOR "Visual Studio 15 2017")
elseif(TRIPLET_SYSTEM_ARCH MATCHES "x64" AND VCPKG_PLATFORM_TOOLSET MATCHES "v141")
set(GENERATOR "Visual Studio 15 2017 Win64")
elseif(TRIPLET_SYSTEM_ARCH MATCHES "arm" AND VCPKG_PLATFORM_TOOLSET MATCHES "v141")
elseif(TRIPLET_SYSTEM_ARCH STREQUAL "arm" AND VCPKG_PLATFORM_TOOLSET MATCHES "v141")
set(GENERATOR "Visual Studio 15 2017 ARM")
elseif(TRIPLET_SYSTEM_ARCH STREQUAL "arm64" AND VCPKG_PLATFORM_TOOLSET MATCHES "v141")
set(GENERATOR "Visual Studio 15 2017")
set(ARCH "ARM64")
endif()
# If we use Ninja, make sure it's on PATH
@ -139,6 +145,12 @@ function(vcpkg_configure_cmake)
"-DCMAKE_ERROR_ON_ABSOLUTE_INSTALL_DESTINATION=ON"
)
if(DEFINED ARCH)
list(APPEND _csc_OPTIONS
"-A${ARCH}"
)
endif()
if(DEFINED VCPKG_CRT_LINKAGE AND VCPKG_CRT_LINKAGE STREQUAL dynamic)
list(APPEND _csc_OPTIONS_DEBUG
"-DCMAKE_CXX_FLAGS_DEBUG=/D_DEBUG /MDd /Z7 /Ob0 /Od /RTC1 ${VCPKG_CXX_FLAGS_DEBUG}"

View File

@ -78,7 +78,7 @@ function(vcpkg_download_distfile VAR)
endif()
endforeach(url)
if (NOT ${download_success})
if (NOT download_success)
message(FATAL_ERROR
"\n"
" Failed to download file.\n"

View File

@ -34,7 +34,8 @@
## * [openssl](https://github.com/Microsoft/vcpkg/blob/master/ports/openssl/portfile.cmake)
## * [qt5](https://github.com/Microsoft/vcpkg/blob/master/ports/qt5/portfile.cmake)
function(vcpkg_find_acquire_program VAR)
if(${VAR} AND NOT ${VAR} MATCHES "-NOTFOUND")
set(EXPANDED_VAR ${${VAR}})
if(EXPANDED_VAR)
return()
endif()
@ -162,7 +163,7 @@ function(vcpkg_find_acquire_program VAR)
endmacro()
do_find()
if(${VAR} MATCHES "-NOTFOUND")
if("${${VAR}}" MATCHES "-NOTFOUND")
file(DOWNLOAD ${URL} ${DOWNLOADS}/${ARCHIVE}
EXPECTED_HASH SHA512=${HASH}
SHOW_PROGRESS
@ -173,7 +174,7 @@ function(vcpkg_find_acquire_program VAR)
else()
get_filename_component(ARCHIVE_EXTENSION ${ARCHIVE} EXT)
string(TOLOWER "${ARCHIVE_EXTENSION}" ARCHIVE_EXTENSION)
if(${ARCHIVE_EXTENSION} STREQUAL ".msi")
if(ARCHIVE_EXTENSION STREQUAL ".msi")
file(TO_NATIVE_PATH "${DOWNLOADS}/${ARCHIVE}" ARCHIVE_NATIVE_PATH)
file(TO_NATIVE_PATH "${DOWNLOADS}/tools/${PROGNAME}/${SUBDIR}" DESTINATION_NATIVE_PATH)
execute_process(
@ -191,5 +192,5 @@ function(vcpkg_find_acquire_program VAR)
do_find()
endif()
set(${VAR} ${${VAR}} PARENT_SCOPE)
set(${VAR} "${${VAR}}" PARENT_SCOPE)
endfunction()

View File

@ -36,17 +36,19 @@ function SelectProgram([Parameter(Mandatory=$true)][string]$Dependency)
New-Item -ItemType directory -Path $downloadDir | Out-Null
}
$WC = New-Object System.Net.WebClient
$ProxyAuth = !$WC.Proxy.IsBypassed($url)
if ($ProxyAuth)
{
$ProxyCred = Get-Credential -Message "Enter credentials for Proxy Authentication"
$PSDefaultParameterValues.Add("Start-BitsTransfer:ProxyAuthentication","Basic")
$PSDefaultParameterValues.Add("Start-BitsTransfer:ProxyCredential",$ProxyCred)
$WC.Proxy.Credentials=$ProxyCred
}
if (($PSVersionTable.PSEdition -ne "Core") -and ($Dependency -ne "git")) # git fails with BITS
{
try {
$WC = New-Object System.Net.WebClient
$ProxyAuth = !$WC.Proxy.IsBypassed($url)
If($ProxyAuth){
$ProxyCred = Get-Credential -Message "Enter credentials for Proxy Authentication"
$PSDefaultParameterValues.Add("Start-BitsTransfer:ProxyAuthentication","Basic")
$PSDefaultParameterValues.Add("Start-BitsTransfer:ProxyCredential",$ProxyCred)
}
Start-BitsTransfer -Source $url -Destination $downloadPath -ErrorAction Stop
}
catch [System.Exception] {
@ -60,7 +62,7 @@ function SelectProgram([Parameter(Mandatory=$true)][string]$Dependency)
if (!(Test-Path $downloadPath))
{
Write-Verbose("Downloading $Dependency...")
(New-Object System.Net.WebClient).DownloadFile($url, $downloadPath)
$WC.DownloadFile($url, $downloadPath)
}
}
@ -126,11 +128,11 @@ function SelectProgram([Parameter(Mandatory=$true)][string]$Dependency)
}
elseif($Dependency -eq "vswhere")
{
$requiredVersion = "2.1.4"
$downloadVersion = "2.1.4"
$url = "https://github.com/Microsoft/vswhere/releases/download/2.1.4/vswhere.exe"
$requiredVersion = "2.2.3"
$downloadVersion = "2.2.3"
$url = "https://github.com/Microsoft/vswhere/releases/download/2.2.3/vswhere.exe"
$downloadPath = "$downloadsDir\vswhere-$downloadVersion\vswhere.exe"
$expectedDownloadedFileHash = "548fb9dfeed59bc4ddcce739a5729e9c8dd5932cd60ff6f74727ee069e7da458"
$expectedDownloadedFileHash = "5f19066ac91635ad17d33fe0f79fc63c672a46f98c0358589a90163bcb2733e8"
$executableFromDownload = $downloadPath
$extractionType = $ExtractionType_NO_EXTRACTION_REQUIRED
}

View File

@ -6,7 +6,7 @@ param(
$scriptsDir = split-path -parent $MyInvocation.MyCommand.Definition
$vswhereExe = & $scriptsDir\fetchDependency.ps1 "vswhere"
$output = & $vswhereExe -prerelease -legacy -format xml
$output = & $vswhereExe -prerelease -legacy -products * -format xml
[xml]$asXml = $output
$results = New-Object System.Collections.ArrayList

View File

@ -68,8 +68,8 @@ namespace vcpkg
/// <remarks>
/// Valid version strings are "v140", "v141", and "". Empty string gets the latest.
/// </remarks>
const Toolset& VcpkgPaths::get_toolset(const Optional<std::string>& toolset_version,
const Optional<fs::path>& visual_studio_path) const;
const Toolset& get_toolset(const Optional<std::string>& toolset_version,
const Optional<fs::path>& visual_studio_path) const;
Files::Filesystem& get_filesystem() const;

View File

@ -107,6 +107,8 @@ namespace vcpkg::System
L"HTTPS_PROXY",
// Enables find_package(CUDA) in CMake
L"CUDA_PATH",
// Environmental variable generated automatically by CUDA after installation
L"NVCUDASAMPLES_ROOT",
};
// Flush stdout before launching external process

View File

@ -1,9 +1,8 @@
#include "pch.h"
#include <vcpkg/base/sortedvector.h>
#include <vcpkg/base/system.h>
#include <vcpkg/commands.h>
#include <vcpkg/help.h>
#include <vcpkg/metrics.h>
#include <vcpkg/paragraphs.h>
#include <vcpkg/vcpkglib.h>
@ -13,13 +12,12 @@ namespace vcpkg::Commands::Autocomplete
const std::vector<std::unique_ptr<SourceControlFile>>& source_paragraphs, const std::string& start_with)
{
std::vector<std::string> results;
const auto& istartswith = Strings::case_insensitive_ascii_starts_with;
for (const auto& source_control_file : source_paragraphs)
{
auto&& sp = *source_control_file->core_paragraph;
if (istartswith(sp.name, start_with))
if (Strings::case_insensitive_ascii_starts_with(sp.name, start_with))
{
results.push_back(sp.name);
}
@ -31,13 +29,12 @@ namespace vcpkg::Commands::Autocomplete
const std::string& start_with)
{
std::vector<std::string> results;
const auto& istartswith = Strings::case_insensitive_ascii_starts_with;
for (const auto& installed_package : installed_packages)
{
auto sp = installed_package->package.displayname();
const auto sp = installed_package->package.displayname();
if (istartswith(sp, start_with))
if (Strings::case_insensitive_ascii_starts_with(sp, start_with))
{
results.push_back(sp);
}
@ -45,34 +42,68 @@ namespace vcpkg::Commands::Autocomplete
return results;
}
[[noreturn]] static void output_sorted_results_and_exit(const LineInfo& line_info,
std::vector<std::string>&& results)
{
const SortedVector<std::string> sorted_results(results);
System::println(Strings::join("\n", sorted_results));
Checks::exit_success(line_info);
}
void perform_and_exit(const VcpkgCmdArguments& args, const VcpkgPaths& paths)
{
static const std::string EXAMPLE = Strings::format("The argument should be a command line to autocomplete.\n%s",
Help::create_example_string("autocomplete install z"));
Metrics::g_metrics.lock()->set_send_metrics(false);
const std::string to_autocomplete = Strings::join(" ", args.command_arguments);
const std::vector<std::string> tokens = Strings::split(to_autocomplete, " ");
args.check_min_arg_count(1, EXAMPLE);
args.check_max_arg_count(2, EXAMPLE);
args.check_and_get_optional_command_arguments({});
std::smatch match;
const std::string requested_command = args.command_arguments.at(0);
const std::string start_with =
args.command_arguments.size() > 1 ? args.command_arguments.at(1) : Strings::EMPTY;
std::vector<std::string> results;
if (requested_command == "install")
// Handles vcpkg <command>
if (std::regex_match(to_autocomplete, match, std::regex{R"###(^(\S*)$)###"}))
{
const std::string requested_command = match[1].str();
std::vector<std::string> valid_commands = {"install",
"search",
"remove",
"list",
"update",
"hash",
"help",
"integrate",
"export",
"edit",
"create",
"owns",
"cache",
"version",
"contact"};
Util::unstable_keep_if(valid_commands, [&](const std::string& s) {
return Strings::case_insensitive_ascii_starts_with(s, requested_command);
});
output_sorted_results_and_exit(VCPKG_LINE_INFO, std::move(valid_commands));
}
// Handles vcpkg install <package>
if (std::regex_match(to_autocomplete, match, std::regex{R"###(^install.* (\S*)$)###"}))
{
const std::string start_with = match[1].str();
auto sources_and_errors = Paragraphs::try_load_all_ports(paths.get_filesystem(), paths.ports);
auto& source_paragraphs = sources_and_errors.paragraphs;
results = autocomplete_install(source_paragraphs, start_with);
output_sorted_results_and_exit(VCPKG_LINE_INFO, autocomplete_install(source_paragraphs, start_with));
}
else if (requested_command == "remove")
// Handles vcpkg remove <package>
if (std::regex_match(to_autocomplete, match, std::regex{R"###(^remove.* (\S*)$)###"}))
{
const std::string start_with = match[1].str();
const StatusParagraphs status_db = database_load_check(paths);
std::vector<StatusParagraph*> installed_packages = get_installed_ports(status_db);
results = autocomplete_remove(installed_packages, start_with);
const std::vector<StatusParagraph*> installed_packages = get_installed_ports(status_db);
output_sorted_results_and_exit(VCPKG_LINE_INFO, autocomplete_remove(installed_packages, start_with));
}
System::println(Strings::join(" ", results));
Checks::exit_success(VCPKG_LINE_INFO);
}
}

View File

@ -27,6 +27,14 @@ namespace vcpkg::Export::IFW
return date_time_as_string;
}
std::string safe_rich_from_plain_text(const std::string& text)
{
// match standalone ampersand, no HTML number or name
std::regex standalone_ampersand(R"###(&(?!(#[0-9]+|\w+);))###");
return std::regex_replace(text, standalone_ampersand, "&amp;");
}
fs::path get_packages_dir_path(const std::string& export_id, const Options& ifw_options, const VcpkgPaths& paths)
{
return ifw_options.maybe_packages_dir_path.has_value()
@ -157,7 +165,7 @@ namespace vcpkg::Export::IFW
</Package>
)###",
action.spec.name(),
binary_paragraph.description,
safe_rich_from_plain_text(binary_paragraph.description),
binary_paragraph.version,
create_release_date()));
}

View File

@ -558,6 +558,7 @@ namespace vcpkg::Install
const bool no_downloads = options.find(OPTION_NO_DOWNLOADS) != options.cend();
const bool is_recursive = options.find(OPTION_RECURSE) != options.cend();
const KeepGoing keep_going = to_keep_going(options.find(OPTION_KEEP_GOING) != options.cend());
const PrintSummary print_summary = to_print_summary(keep_going == KeepGoing::YES);
// create the plan
StatusParagraphs status_db = database_load_check(paths);
@ -608,7 +609,7 @@ namespace vcpkg::Install
Checks::exit_success(VCPKG_LINE_INFO);
}
perform_and_exit_ex(action_plan, install_plan_options, keep_going, PrintSummary::NO, paths, status_db);
perform_and_exit_ex(action_plan, install_plan_options, keep_going, print_summary, paths, status_db);
Checks::exit_success(VCPKG_LINE_INFO);
}

View File

@ -361,6 +361,7 @@ namespace vcpkg::PostBuildLint
case MachineType::I386: return "x86";
case MachineType::ARM:
case MachineType::ARMNT: return "arm";
case MachineType::ARM64: return "arm64";
default: return "Machine Type Code = " + std::to_string(static_cast<uint16_t>(machine_type));
}
}

View File

@ -370,10 +370,14 @@ namespace vcpkg
supported_architectures.push_back({L"x86_amd64", CPU::X86, CPU::X64});
if (fs.exists(vcvarsall_dir / "vcvarsx86_arm.bat"))
supported_architectures.push_back({L"x86_arm", CPU::X86, CPU::ARM});
if (fs.exists(vcvarsall_dir / "vcvarsx86_arm64.bat"))
supported_architectures.push_back({L"x86_arm64", CPU::X86, CPU::ARM64});
if (fs.exists(vcvarsall_dir / "vcvarsamd64_x86.bat"))
supported_architectures.push_back({L"amd64_x86", CPU::X64, CPU::X86});
if (fs.exists(vcvarsall_dir / "vcvarsamd64_arm.bat"))
supported_architectures.push_back({L"amd64_arm", CPU::X64, CPU::ARM});
if (fs.exists(vcvarsall_dir / "vcvarsamd64_arm64.bat"))
supported_architectures.push_back({L"amd64_arm64", CPU::X64, CPU::ARM64});
// Locate the "best" MSVC toolchain version
const fs::path msvc_path = vc_dir / "Tools" / "MSVC";

6
triplets/arm64-uwp.cmake Normal file
View File

@ -0,0 +1,6 @@
set(VCPKG_TARGET_ARCHITECTURE arm64)
set(VCPKG_CRT_LINKAGE dynamic)
set(VCPKG_LIBRARY_LINKAGE dynamic)
set(VCPKG_CMAKE_SYSTEM_NAME WindowsStore)
set(VCPKG_CMAKE_SYSTEM_VERSION 10.0)