From 0a93f4ec120f03df6368168561b61b6252bd1199 Mon Sep 17 00:00:00 2001 From: martin-s Date: Tue, 27 Feb 2018 23:06:12 +0100 Subject: - Added port nvidia-texture-tools. --- ports/nvtt/CONTROL | 3 +++ ports/nvtt/portfile.cmake | 44 ++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 47 insertions(+) create mode 100644 ports/nvtt/CONTROL create mode 100644 ports/nvtt/portfile.cmake diff --git a/ports/nvtt/CONTROL b/ports/nvtt/CONTROL new file mode 100644 index 000000000..31ff5ecf4 --- /dev/null +++ b/ports/nvtt/CONTROL @@ -0,0 +1,3 @@ +Source: nvtt +Version: 2.1.0 +Description: Texture processing tools with support for Direct3D 10 and 11 formats. \ No newline at end of file diff --git a/ports/nvtt/portfile.cmake b/ports/nvtt/portfile.cmake new file mode 100644 index 000000000..237a71b65 --- /dev/null +++ b/ports/nvtt/portfile.cmake @@ -0,0 +1,44 @@ +# Common Ambient Variables: +# VCPKG_ROOT_DIR = +# TARGET_TRIPLET is the current triplet (x86-windows, etc) +# PORT is the current port name (zlib, etc) +# CURRENT_BUILDTREES_DIR = ${VCPKG_ROOT_DIR}\buildtrees\${PORT} +# CURRENT_PACKAGES_DIR = ${VCPKG_ROOT_DIR}\packages\${PORT}_${TARGET_TRIPLET} +# +if (VCPKG_LIBRARY_LINKAGE STREQUAL dynamic) + message(STATUS "Warning: Dynamic building not supported yet. Building static.") + set(VCPKG_LIBRARY_LINKAGE static) +endif() + +include(vcpkg_common_functions) + +vcpkg_from_github( + OUT_SOURCE_PATH SOURCE_PATH + REPO castano/nvidia-texture-tools + REF 2.1.0 + SHA512 6c5c9588af57023fc384de080cbe5c5ccd8707d04a9533384c606efd09730d780cb21bcf2d3576102a3facd2f281cacb2625958d74575e71550fd98da92e38b6 + HEAD_REF master +) + +vcpkg_configure_cmake( + SOURCE_PATH ${SOURCE_PATH} + PREFER_NINJA + OPTIONS + -DNVTT_SHARED=0 +) + +vcpkg_install_cmake() + +if(VCPKG_LIBRARY_LINKAGE STREQUAL static) + file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/bin ${CURRENT_PACKAGES_DIR}/debug/bin) +endif() + +vcpkg_copy_pdbs() + +file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include) +file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/share) + +# Handle copyright +file(REMOVE ${CURRENT_PACKAGES_DIR}/share/doc/nvtt/LICENSE) +file(COPY ${SOURCE_PATH}/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/nvtt) +file(RENAME ${CURRENT_PACKAGES_DIR}/share/nvtt/LICENSE ${CURRENT_PACKAGES_DIR}/share/nvtt/copyright) -- cgit v1.2.3 From 263d4ba469027a42cdf8d965e44cfa8ca8677a82 Mon Sep 17 00:00:00 2001 From: Stefano Sinigardi Date: Sun, 4 Mar 2018 11:31:06 +0100 Subject: [OpenCV] update to 3.4.1 --- ports/opencv/0001-winrt-fixes.patch | 97 ++------------------ ports/opencv/0002-install-options.patch | 71 +++++---------- ports/opencv/0003-disable-downloading.patch | 14 --- ports/opencv/0004-use-find-package-required.patch | 46 ++++------ ports/opencv/0005-remove-protobuf-target.patch | 31 +++++++ ports/opencv/CONTROL | 21 ++++- ports/opencv/portfile.cmake | 104 +++++++++++++--------- 7 files changed, 158 insertions(+), 226 deletions(-) create mode 100644 ports/opencv/0005-remove-protobuf-target.patch diff --git a/ports/opencv/0001-winrt-fixes.patch b/ports/opencv/0001-winrt-fixes.patch index c52c662e1..f913d92a4 100644 --- a/ports/opencv/0001-winrt-fixes.patch +++ b/ports/opencv/0001-winrt-fixes.patch @@ -1,23 +1,6 @@ -From 005963d571f95fc536f60aa77098b9ecbb17128c Mon Sep 17 00:00:00 2001 -From: Robert Schumacher -Date: Wed, 21 Feb 2018 17:03:30 -0800 -Subject: [PATCH 1/5] winrt-fixes - ---- - CMakeLists.txt | 2 +- - cmake/OpenCVCompilerOptions.cmake | 3 +++ - cmake/OpenCVModule.cmake | 2 +- - modules/core/src/utils/filesystem.cpp | 14 ++++++++++++-- - modules/highgui/include/opencv2/highgui/highgui_winrt.hpp | 1 + - modules/highgui/src/window_winrt_bridge.hpp | 1 + - modules/videoio/src/cap_winrt/CaptureFrameGrabber.cpp | 4 ++-- - 7 files changed, 21 insertions(+), 6 deletions(-) - -diff --git a/CMakeLists.txt b/CMakeLists.txt -index 4464441..6bfbecd 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt -@@ -296,7 +296,7 @@ OCV_OPTION(INSTALL_TESTS "Install accuracy and performance test binar +@@ -311,7 +311,7 @@ OCV_OPTION(INSTALL_TESTS "Install accuracy and performance test binar # OpenCV build options # =================================================== OCV_OPTION(ENABLE_CCACHE "Use ccache" (UNIX AND NOT IOS AND (CMAKE_GENERATOR MATCHES "Makefile" OR CMAKE_GENERATOR MATCHES "Ninja")) ) @@ -26,104 +9,45 @@ index 4464441..6bfbecd 100644 OCV_OPTION(ENABLE_SOLUTION_FOLDERS "Solution folder in Visual Studio or in other IDEs" (MSVC_IDE OR CMAKE_GENERATOR MATCHES Xcode) ) OCV_OPTION(ENABLE_PROFILING "Enable profiling in the GCC compiler (Add flags: -g -pg)" OFF IF CMAKE_COMPILER_IS_GNUCXX ) OCV_OPTION(ENABLE_COVERAGE "Enable coverage collection with GCov" OFF IF CMAKE_COMPILER_IS_GNUCXX ) -diff --git a/cmake/OpenCVCompilerOptions.cmake b/cmake/OpenCVCompilerOptions.cmake -index 353ee12..8f4aa3b 100644 ---- a/cmake/OpenCVCompilerOptions.cmake -+++ b/cmake/OpenCVCompilerOptions.cmake -@@ -37,6 +37,9 @@ if(MSVC) - set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /EHa") - set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS}" CACHE STRING "Flags used by the compiler during all build types." FORCE) - endif() -+ if(CMAKE_SYSTEM_NAME STREQUAL "WindowsStore") -+ set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /ZW") -+ endif() - endif() - - set(OPENCV_EXTRA_FLAGS "") -diff --git a/cmake/OpenCVModule.cmake b/cmake/OpenCVModule.cmake -index a84bbff..8feb6df 100644 --- a/cmake/OpenCVModule.cmake +++ b/cmake/OpenCVModule.cmake -@@ -785,7 +785,7 @@ macro(ocv_create_module) +@@ -842,7 +842,7 @@ macro(ocv_create_module) set(the_module_target ${the_module}) endif() - + - if(WINRT) + if(WINRT AND BUILD_TESTS) # removing APPCONTAINER from modules to run from console # in case of usual starting of WinRT test apps output is missing # so starting of console version w/o APPCONTAINER is required to get test results -diff --git a/modules/core/src/utils/filesystem.cpp b/modules/core/src/utils/filesystem.cpp -index 266a92f..1d5a302 100644 ---- a/modules/core/src/utils/filesystem.cpp -+++ b/modules/core/src/utils/filesystem.cpp -@@ -186,7 +186,7 @@ bool createDirectory(const cv::String& path) - wchar_t wpath[MAX_PATH]; - size_t copied = mbstowcs(wpath, path.c_str(), MAX_PATH); - CV_Assert((copied != MAX_PATH) && (copied != (size_t)-1)); -- int result = CreateDirectoryA(wpath, NULL) ? 0 : -1; -+ int result = CreateDirectoryW(wpath, NULL) ? 0 : -1; - #else - int result = _mkdir(path.c_str()); - #endif -@@ -248,8 +248,16 @@ struct FileLock::Impl - int numRetries = 5; - do - { -+#ifdef WINRT -+ wchar_t wpath[MAX_PATH]; -+ size_t copied = mbstowcs(wpath, fname, MAX_PATH); -+ CV_Assert((copied != MAX_PATH) && (copied != (size_t)-1)); -+ handle = ::CreateFile2(wpath, GENERIC_READ, FILE_SHARE_READ | FILE_SHARE_WRITE, -+ OPEN_EXISTING, NULL); -+#else - handle = ::CreateFileA(fname, GENERIC_READ, FILE_SHARE_READ | FILE_SHARE_WRITE, NULL, - OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL, NULL); -+#endif - if (INVALID_HANDLE_VALUE == handle) - { - if (ERROR_SHARING_VIOLATION == GetLastError()) -@@ -399,7 +407,9 @@ cv::String getCacheDirectory(const char* sub_directory_name, const char* configu - if (cache_path.empty()) - { - cv::String default_cache_path; --#ifdef _WIN32 -+#if WINRT -+ // no defaults -+#elif defined _WIN32 - char tmp_path_buf[MAX_PATH+1] = {0}; - DWORD res = GetTempPath(MAX_PATH, tmp_path_buf); - if (res > 0 && res <= MAX_PATH) -diff --git a/modules/highgui/include/opencv2/highgui/highgui_winrt.hpp b/modules/highgui/include/opencv2/highgui/highgui_winrt.hpp -index f4147f3..b92efdd 100644 --- a/modules/highgui/include/opencv2/highgui/highgui_winrt.hpp +++ b/modules/highgui/include/opencv2/highgui/highgui_winrt.hpp @@ -24,6 +24,7 @@ // NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE // POSSIBILITY OF SUCH DAMAGE. - + +#include "opencv2/core/cvdef.h" using namespace Windows::UI::Xaml::Controls; - + namespace cv diff --git a/modules/highgui/src/window_winrt_bridge.hpp b/modules/highgui/src/window_winrt_bridge.hpp index 25f4aef..5429f0b 100644 --- a/modules/highgui/src/window_winrt_bridge.hpp +++ b/modules/highgui/src/window_winrt_bridge.hpp @@ -28,6 +28,7 @@ - + #include #include +#include "opencv2/highgui/highgui_c.h" - + using namespace Windows::UI::Xaml::Controls; - + diff --git a/modules/videoio/src/cap_winrt/CaptureFrameGrabber.cpp b/modules/videoio/src/cap_winrt/CaptureFrameGrabber.cpp index 236e227..e2417dc 100644 --- a/modules/videoio/src/cap_winrt/CaptureFrameGrabber.cpp +++ b/modules/videoio/src/cap_winrt/CaptureFrameGrabber.cpp @@ -94,10 +94,10 @@ Media::CaptureFrameGrabber::~CaptureFrameGrabber() - + void Media::CaptureFrameGrabber::ShowCameraSettings() { -#if WINAPI_FAMILY!=WINAPI_FAMILY_PHONE_APP @@ -135,6 +59,3 @@ index 236e227..e2417dc 100644 } #endif } --- -2.15.1.windows.2 - diff --git a/ports/opencv/0002-install-options.patch b/ports/opencv/0002-install-options.patch index 6351ceeb8..830c9f385 100644 --- a/ports/opencv/0002-install-options.patch +++ b/ports/opencv/0002-install-options.patch @@ -1,22 +1,6 @@ -From 5d4d154117b39d9e11fda709ede7aadf6b960a7d Mon Sep 17 00:00:00 2001 -From: Robert Schumacher -Date: Wed, 21 Feb 2018 17:05:16 -0800 -Subject: [PATCH 2/5] install-options - ---- - CMakeLists.txt | 20 +++++++++++--------- - cmake/OpenCVGenConfig.cmake | 4 ++-- - cmake/OpenCVGenHeaders.cmake | 8 ++++++-- - cmake/OpenCVModule.cmake | 4 +++- - data/CMakeLists.txt | 6 ++++-- - include/CMakeLists.txt | 16 +++++++++------- - 6 files changed, 35 insertions(+), 23 deletions(-) - -diff --git a/CMakeLists.txt b/CMakeLists.txt -index 6bfbecd..0156eeb 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt -@@ -292,6 +292,10 @@ OCV_OPTION(INSTALL_PYTHON_EXAMPLES "Install Python examples" OFF ) +@@ -307,6 +307,10 @@ OCV_OPTION(INSTALL_PYTHON_EXAMPLES "Install Python examples" OFF ) OCV_OPTION(INSTALL_ANDROID_EXAMPLES "Install Android examples" OFF IF ANDROID ) OCV_OPTION(INSTALL_TO_MANGLED_PATHS "Enables mangled install paths, that help with side by side installs." OFF IF (UNIX AND NOT ANDROID AND NOT APPLE_FRAMEWORK AND BUILD_SHARED_LIBS) ) OCV_OPTION(INSTALL_TESTS "Install accuracy and performance test binaries and test data" OFF) @@ -24,21 +8,21 @@ index 6bfbecd..0156eeb 100644 +OCV_OPTION(INSTALL_LICENSE "Install license file" ON) +OCV_OPTION(INSTALL_OTHER "Install other files" ON) +OCV_OPTION(INSTALL_FORCE_UNIX_PATHS "Force unix-style installation" OFF) - + # OpenCV build options # =================================================== -@@ -319,7 +323,7 @@ OCV_OPTION(CV_ENABLE_INTRINSICS "Use intrinsic-based optimized code" ON ) +@@ -335,7 +339,7 @@ OCV_OPTION(CV_ENABLE_INTRINSICS "Use intrinsic-based optimized code" ON ) OCV_OPTION(CV_DISABLE_OPTIMIZATION "Disable explicit optimized code (dispatched code/intrinsics/loop unrolling/etc)" OFF ) OCV_OPTION(CV_TRACE "Enable OpenCV code trace" ON) - + -OCV_OPTION(ENABLE_PYLINT "Add target with Pylint checks" (${BUILD_DOCS} OR ${BUILD_EXAMPLES}) IF (NOT CMAKE_CROSSCOMPILING AND NOT APPLE_FRAMEWORK) ) +OCV_OPTION(ENABLE_PYLINT "Add target with Pylint checks" (BUILD_DOCS OR BUILD_EXAMPLES) IF (NOT CMAKE_CROSSCOMPILING AND NOT APPLE_FRAMEWORK) ) - + if(ENABLE_IMPL_COLLECTION) add_definitions(-DCV_COLLECT_IMPL_DATA) -@@ -355,7 +359,9 @@ else() +@@ -372,7 +376,9 @@ else() endif() - + if(WIN32 AND CMAKE_HOST_SYSTEM_NAME MATCHES Windows) - if(DEFINED OpenCV_RUNTIME AND DEFINED OpenCV_ARCH) + if(DEFINED OpenCV_DISABLE_ARCH_PATH) @@ -47,9 +31,9 @@ index 6bfbecd..0156eeb 100644 ocv_update(OpenCV_INSTALL_BINARIES_PREFIX "${OpenCV_ARCH}/${OpenCV_RUNTIME}/") else() message(STATUS "Can't detect runtime and/or arch") -@@ -409,12 +415,8 @@ else() +@@ -427,12 +433,8 @@ else() ocv_update(3P_LIBRARY_OUTPUT_PATH "${OpenCV_BINARY_DIR}/3rdparty/lib${LIB_SUFFIX}") - + if(WIN32 AND CMAKE_HOST_SYSTEM_NAME MATCHES Windows) - if(OpenCV_STATIC) - ocv_update(OPENCV_LIB_INSTALL_PATH "${OpenCV_INSTALL_BINARIES_PREFIX}staticlib${LIB_SUFFIX}") @@ -59,32 +43,30 @@ index 6bfbecd..0156eeb 100644 - ocv_update(OPENCV_3P_LIB_INSTALL_PATH "${OpenCV_INSTALL_BINARIES_PREFIX}staticlib${LIB_SUFFIX}") + ocv_update(OPENCV_LIB_INSTALL_PATH "${OpenCV_INSTALL_BINARIES_PREFIX}lib${LIB_SUFFIX}") + ocv_update(OPENCV_3P_LIB_INSTALL_PATH "${OpenCV_INSTALL_BINARIES_PREFIX}lib${LIB_SUFFIX}") - ocv_update(OPENCV_SAMPLES_SRC_INSTALL_PATH samples/native) + ocv_update(OPENCV_SAMPLES_SRC_INSTALL_PATH samples) ocv_update(OPENCV_JAR_INSTALL_PATH java) ocv_update(OPENCV_OTHER_INSTALL_PATH etc) -@@ -856,7 +858,7 @@ if(NOT OPENCV_LICENSE_FILE) +@@ -895,7 +897,7 @@ if(NOT OPENCV_LICENSE_FILE) endif() - + # for UNIX it does not make sense as LICENSE and readme will be part of the package automatically -if(ANDROID OR NOT UNIX) +if(ANDROID OR NOT UNIX AND INSTALL_LICENSE) install(FILES ${OPENCV_LICENSE_FILE} PERMISSIONS OWNER_READ GROUP_READ WORLD_READ DESTINATION ./ COMPONENT libs) -diff --git a/cmake/OpenCVGenConfig.cmake b/cmake/OpenCVGenConfig.cmake -index 57c79f2..23f1012 100644 --- a/cmake/OpenCVGenConfig.cmake +++ b/cmake/OpenCVGenConfig.cmake -@@ -103,7 +103,7 @@ function(ocv_gen_config TMP_DIR NESTED_PATH ROOT_NAME) +@@ -105,7 +105,7 @@ function(ocv_gen_config TMP_DIR NESTED_PATH ROOT_NAME) endif() endfunction() - + -if((CMAKE_HOST_SYSTEM_NAME MATCHES "Linux" OR UNIX) AND NOT ANDROID) +if(((CMAKE_HOST_SYSTEM_NAME MATCHES "Linux" OR UNIX) AND NOT ANDROID) OR INSTALL_FORCE_UNIX_PATHS) ocv_gen_config("${CMAKE_BINARY_DIR}/unix-install" "" "") endif() - -@@ -115,7 +115,7 @@ endif() + +@@ -117,7 +117,7 @@ endif() # -------------------------------------------------------------------------------------------- # Part 3/3: ${BIN_DIR}/win-install/OpenCVConfig.cmake -> For use within binary installers/packages # -------------------------------------------------------------------------------------------- @@ -93,8 +75,6 @@ index 57c79f2..23f1012 100644 if(CMAKE_HOST_SYSTEM_NAME MATCHES Windows) if(BUILD_SHARED_LIBS) set(_lib_suffix "lib") -diff --git a/cmake/OpenCVGenHeaders.cmake b/cmake/OpenCVGenHeaders.cmake -index 477b910..beace28 100644 --- a/cmake/OpenCVGenHeaders.cmake +++ b/cmake/OpenCVGenHeaders.cmake @@ -1,7 +1,9 @@ @@ -105,22 +85,20 @@ index 477b910..beace28 100644 +if(INSTALL_HEADERS) + install(FILES "${OPENCV_CONFIG_FILE_INCLUDE_DIR}/cvconfig.h" DESTINATION ${OPENCV_INCLUDE_INSTALL_PATH}/opencv2 COMPONENT dev) +endif() - + # platform-specific config file ocv_compiler_optimization_fill_cpu_config() @@ -29,4 +31,6 @@ set(OPENCV_MODULE_DEFINITIONS_CONFIGMAKE "${OPENCV_MODULE_DEFINITIONS_CONFIGMAKE #endforeach() - + configure_file("${OpenCV_SOURCE_DIR}/cmake/templates/opencv_modules.hpp.in" "${OPENCV_CONFIG_FILE_INCLUDE_DIR}/opencv2/opencv_modules.hpp") -install(FILES "${OPENCV_CONFIG_FILE_INCLUDE_DIR}/opencv2/opencv_modules.hpp" DESTINATION ${OPENCV_INCLUDE_INSTALL_PATH}/opencv2 COMPONENT dev) +if(INSTALL_HEADERS) + install(FILES "${OPENCV_CONFIG_FILE_INCLUDE_DIR}/opencv2/opencv_modules.hpp" DESTINATION ${OPENCV_INCLUDE_INSTALL_PATH}/opencv2 COMPONENT dev) +endif() -diff --git a/cmake/OpenCVModule.cmake b/cmake/OpenCVModule.cmake -index 8feb6df..1a098c4 100644 --- a/cmake/OpenCVModule.cmake +++ b/cmake/OpenCVModule.cmake -@@ -930,7 +930,9 @@ macro(_ocv_create_module) +@@ -994,7 +994,9 @@ macro(_ocv_create_module) foreach(hdr ${OPENCV_MODULE_${the_module}_HEADERS}) string(REGEX REPLACE "^.*opencv2/" "opencv2/" hdr2 "${hdr}") if(NOT hdr2 MATCHES "private" AND hdr2 MATCHES "^(opencv2/?.*)/[^/]+.h(..)?$" ) @@ -131,25 +109,21 @@ index 8feb6df..1a098c4 100644 endif() endforeach() endif() -diff --git a/data/CMakeLists.txt b/data/CMakeLists.txt -index 1f0d720..86b9d89 100644 --- a/data/CMakeLists.txt +++ b/data/CMakeLists.txt @@ -1,8 +1,10 @@ file(GLOB HAAR_CASCADES haarcascades/*.xml) file(GLOB LBP_CASCADES lbpcascades/*.xml) - + -install(FILES ${HAAR_CASCADES} DESTINATION ${OPENCV_OTHER_INSTALL_PATH}/haarcascades COMPONENT libs) -install(FILES ${LBP_CASCADES} DESTINATION ${OPENCV_OTHER_INSTALL_PATH}/lbpcascades COMPONENT libs) +if(INSTALL_OTHER) + install(FILES ${HAAR_CASCADES} DESTINATION ${OPENCV_OTHER_INSTALL_PATH}/haarcascades COMPONENT libs) + install(FILES ${LBP_CASCADES} DESTINATION ${OPENCV_OTHER_INSTALL_PATH}/lbpcascades COMPONENT libs) +endif() - + if(INSTALL_TESTS AND OPENCV_TEST_DATA_PATH) install(DIRECTORY "${OPENCV_TEST_DATA_PATH}/" DESTINATION "${OPENCV_TEST_DATA_INSTALL_PATH}" COMPONENT "tests") -diff --git a/include/CMakeLists.txt b/include/CMakeLists.txt -index b4e48e6..5ac6f16 100644 --- a/include/CMakeLists.txt +++ b/include/CMakeLists.txt @@ -1,7 +1,9 @@ @@ -169,6 +143,3 @@ index b4e48e6..5ac6f16 100644 + DESTINATION ${OPENCV_INCLUDE_INSTALL_PATH}/opencv2 + COMPONENT dev) +endif() --- -2.15.1.windows.2 - diff --git a/ports/opencv/0003-disable-downloading.patch b/ports/opencv/0003-disable-downloading.patch index e51bab3b2..28b00251f 100644 --- a/ports/opencv/0003-disable-downloading.patch +++ b/ports/opencv/0003-disable-downloading.patch @@ -1,14 +1,3 @@ -From 692f6f4fcf9bfddaf8779ba622f190c3a8c772f9 Mon Sep 17 00:00:00 2001 -From: Robert Schumacher -Date: Wed, 21 Feb 2018 17:20:22 -0800 -Subject: [PATCH 3/5] disable-downloading - ---- - cmake/OpenCVDownload.cmake | 2 ++ - 1 file changed, 2 insertions(+) - -diff --git a/cmake/OpenCVDownload.cmake b/cmake/OpenCVDownload.cmake -index f660502..90785f1 100644 --- a/cmake/OpenCVDownload.cmake +++ b/cmake/OpenCVDownload.cmake @@ -151,6 +151,8 @@ function(ocv_download) @@ -20,6 +9,3 @@ index f660502..90785f1 100644 file(DOWNLOAD "${DL_URL}" "${CACHE_CANDIDATE}" INACTIVITY_TIMEOUT 60 TIMEOUT 600 --- -2.15.1.windows.2 - diff --git a/ports/opencv/0004-use-find-package-required.patch b/ports/opencv/0004-use-find-package-required.patch index 6d2fa5688..4e1daf659 100644 --- a/ports/opencv/0004-use-find-package-required.patch +++ b/ports/opencv/0004-use-find-package-required.patch @@ -1,14 +1,3 @@ -From 7e02db97d43cb9aa331da0dbfce8c372c19ad32b Mon Sep 17 00:00:00 2001 -From: Robert Schumacher -Date: Wed, 21 Feb 2018 17:20:49 -0800 -Subject: [PATCH 4/5] use-find-package-required - ---- - cmake/OpenCVFindLibsGrfmt.cmake | 18 +++++++++--------- - 1 file changed, 9 insertions(+), 9 deletions(-) - -diff --git a/cmake/OpenCVFindLibsGrfmt.cmake b/cmake/OpenCVFindLibsGrfmt.cmake -index 0ae58c8..5832d56 100644 --- a/cmake/OpenCVFindLibsGrfmt.cmake +++ b/cmake/OpenCVFindLibsGrfmt.cmake @@ -6,7 +6,7 @@ @@ -18,18 +7,18 @@ index 0ae58c8..5832d56 100644 - find_package(ZLIB "${MIN_VER_ZLIB}") + find_package(ZLIB "${MIN_VER_ZLIB}" REQUIRED) if(ZLIB_FOUND AND ANDROID) - if(ZLIB_LIBRARIES STREQUAL "${ANDROID_SYSROOT}/usr/lib/libz.so" OR - ZLIB_LIBRARIES STREQUAL "${ANDROID_SYSROOT}/usr/lib64/libz.so") -@@ -31,7 +31,7 @@ if(WITH_JPEG) + if(ZLIB_LIBRARIES MATCHES "/usr/(lib|lib32|lib64)/libz.so$") + set(ZLIB_LIBRARIES z) +@@ -30,7 +30,7 @@ if(WITH_JPEG) if(BUILD_JPEG) ocv_clear_vars(JPEG_FOUND) else() - include(FindJPEG) + find_package(JPEG REQUIRED) endif() - + if(NOT JPEG_FOUND) -@@ -52,7 +52,7 @@ if(WITH_TIFF) +@@ -51,7 +51,7 @@ if(WITH_TIFF) if(BUILD_TIFF) ocv_clear_vars(TIFF_FOUND) else() @@ -38,7 +27,7 @@ index 0ae58c8..5832d56 100644 if(TIFF_FOUND) ocv_parse_header("${TIFF_INCLUDE_DIR}/tiff.h" TIFF_VERSION_LINES TIFF_VERSION_CLASSIC TIFF_VERSION_BIG TIFF_VERSION TIFF_BIGTIFF_VERSION) endif() -@@ -95,7 +95,7 @@ if(WITH_WEBP) +@@ -94,7 +94,7 @@ if(WITH_WEBP) if(BUILD_WEBP) ocv_clear_vars(WEBP_FOUND WEBP_LIBRARY WEBP_LIBRARIES WEBP_INCLUDE_DIR) else() @@ -47,16 +36,16 @@ index 0ae58c8..5832d56 100644 if(WEBP_FOUND) set(HAVE_WEBP 1) endif() -@@ -136,7 +136,7 @@ if(WITH_JASPER) +@@ -135,7 +135,7 @@ if(WITH_JASPER) if(BUILD_JASPER) ocv_clear_vars(JASPER_FOUND) else() - include(FindJasper) + find_package(Jasper REQUIRED) endif() - + if(NOT JASPER_FOUND) -@@ -160,7 +160,7 @@ if(WITH_PNG) +@@ -159,7 +159,7 @@ if(WITH_PNG) if(BUILD_PNG) ocv_clear_vars(PNG_FOUND) else() @@ -65,33 +54,30 @@ index 0ae58c8..5832d56 100644 if(PNG_FOUND) include(CheckIncludeFile) check_include_file("${PNG_PNG_INCLUDE_DIR}/libpng/png.h" HAVE_LIBPNG_PNG_H) -@@ -192,7 +192,7 @@ if(WITH_OPENEXR) +@@ -191,7 +191,7 @@ if(WITH_OPENEXR) if(BUILD_OPENEXR) ocv_clear_vars(OPENEXR_FOUND) else() - include("${OpenCV_SOURCE_DIR}/cmake/OpenCVFindOpenEXR.cmake") + find_package(OpenEXR REQUIRED) endif() - + if(NOT OPENEXR_FOUND) -@@ -208,7 +208,7 @@ endif() - +@@ -207,7 +207,7 @@ endif() + # --- GDAL (optional) --- if(WITH_GDAL) - find_package(GDAL QUIET) + find_package(GDAL REQUIRED) - + if(NOT GDAL_FOUND) set(HAVE_GDAL NO) -@@ -220,7 +220,7 @@ if(WITH_GDAL) +@@ -219,7 +219,7 @@ if(WITH_GDAL) endif() - + if (WITH_GDCM) - find_package(GDCM QUIET) + find_package(GDCM REQUIRED) if(NOT GDCM_FOUND) set(HAVE_GDCM NO) ocv_clear_vars(GDCM_VERSION GDCM_LIBRARIES) --- -2.15.1.windows.2 - diff --git a/ports/opencv/0005-remove-protobuf-target.patch b/ports/opencv/0005-remove-protobuf-target.patch new file mode 100644 index 000000000..b538ee040 --- /dev/null +++ b/ports/opencv/0005-remove-protobuf-target.patch @@ -0,0 +1,31 @@ +--- a/cmake/OpenCVFindProtobuf.cmake ++++ b/cmake/OpenCVFindProtobuf.cmake +@@ -44,17 +44,6 @@ else() + # end of compatibility block + + if(Protobuf_FOUND) +- if(TARGET protobuf::libprotobuf) +- add_library(libprotobuf INTERFACE) +- target_link_libraries(libprotobuf INTERFACE protobuf::libprotobuf) +- else() +- add_library(libprotobuf UNKNOWN IMPORTED) +- set_target_properties(libprotobuf PROPERTIES +- IMPORTED_LOCATION "${Protobuf_LIBRARY}" +- INTERFACE_INCLUDE_DIRECTORIES "${Protobuf_INCLUDE_DIR}" +- ) +- get_protobuf_version(Protobuf_VERSION "${Protobuf_INCLUDE_DIR}") +- endif() + set(HAVE_PROTOBUF TRUE) + endif() + endif() +--- a/modules/dnn/CMakeLists.txt ++++ b/modules/dnn/CMakeLists.txt +@@ -65,7 +65,7 @@ endif() + + ocv_module_include_directories(${fw_inc} ${CMAKE_CURRENT_LIST_DIR}/src/ocl4dnn/include ${OPENCL_INCLUDE_DIRS}) + ocv_glob_module_sources(SOURCES ${fw_srcs}) +-ocv_create_module(libprotobuf ${LAPACK_LIBRARIES}) ++ocv_create_module() + ocv_add_samples() + ocv_add_accuracy_tests() + ocv_add_perf_tests() diff --git a/ports/opencv/CONTROL b/ports/opencv/CONTROL index df27dc08c..c4d5adaac 100644 --- a/ports/opencv/CONTROL +++ b/ports/opencv/CONTROL @@ -1,8 +1,23 @@ Source: opencv -Version: 3.4.0-3 -Build-Depends: opengl, zlib, protobuf (windows) +Version: 3.4.1 +Build-Depends: zlib Description: computer vision library -Default-Features: jpeg, png, tiff, eigen +Default-Features: opengl, jpeg, png, tiff, eigen, flann + +Feature: opengl +Build-Depends: opengl +Description: opengl support for opencv + +Feature: dnn +Build-Depends: protobuf +Description: opencv_dnn module + +Feature: ovis +Build-Depends: ogre +Description: opencv_ovis module + +Feature: flann +Description: opencv_flann module Feature: sfm Build-Depends: eigen3, glog, gflags, ceres diff --git a/ports/opencv/portfile.cmake b/ports/opencv/portfile.cmake index f3efaa779..41e7b7406 100644 --- a/ports/opencv/portfile.cmake +++ b/ports/opencv/portfile.cmake @@ -1,20 +1,12 @@ include(vcpkg_common_functions) -set(OPENCV_PORT_VERSION "3.4.0") - -# This is to ensure we are patching clean sources. These lines can be removed when the OpenCV version is next upgraded. -if(EXISTS "${CURRENT_BUILDTREES_DIR}/src/opencv-${OPENCV_PORT_VERSION}" AND NOT EXISTS "${CURRENT_BUILDTREES_DIR}/src/opencv-${OPENCV_PORT_VERSION}/rework.stamp") - file(REMOVE_RECURSE - "${CURRENT_BUILDTREES_DIR}/src/opencv-opencv-${OPENCV_PORT_VERSION}.tar.gz.extracted" - "${CURRENT_BUILDTREES_DIR}/src/opencv-${OPENCV_PORT_VERSION}" - ) -endif() +set(OPENCV_PORT_VERSION "3.4.1") vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO opencv/opencv REF ${OPENCV_PORT_VERSION} - SHA512 aa7e475f356ffdaeb2ae9f7e9380c92cae58fabde9cd3b23c388f9190b8fde31ee70d16648042d0c43c03b2ff1f15e4be950be7851133ea0aa82cf6e42ba4710 + SHA512 e1fc14285090c6fe9e26e721f2d67d7096650c523147e925567426ef76aa7f4c6f12035d6f6ce3ec7991a75a6828a810fd4f9b75f78ed5fcccecefbadd79944b HEAD_REF master ) @@ -25,19 +17,38 @@ vcpkg_apply_patches( "${CMAKE_CURRENT_LIST_DIR}/0002-install-options.patch" "${CMAKE_CURRENT_LIST_DIR}/0003-disable-downloading.patch" "${CMAKE_CURRENT_LIST_DIR}/0004-use-find-package-required.patch" + "${CMAKE_CURRENT_LIST_DIR}/0005-remove-protobuf-target.patch" ) file(WRITE "${CURRENT_BUILDTREES_DIR}/src/opencv-${OPENCV_PORT_VERSION}/rework.stamp") -vcpkg_download_distfile(TINYDNN_ARCHIVE +string(COMPARE EQUAL "${VCPKG_CRT_LINKAGE}" "static" BUILD_WITH_STATIC_CRT) + +set(CMAKE_MODULE_PATH) + +set(BUILD_opencv_dnn OFF) +set(WITH_PROTOBUF OFF) +if("dnn" IN_LIST FEATURES) + set(BUILD_opencv_dnn ON) + set(WITH_PROTOBUF ON) + set(PROTOBUF_UPDATE_FILES ON) + set(UPDATE_PROTO_FILES ON) + vcpkg_download_distfile(TINYDNN_ARCHIVE URLS "https://github.com/tiny-dnn/tiny-dnn/archive/v1.0.0a3.tar.gz" FILENAME "opencv-cache/tiny_dnn/adb1c512e09ca2c7a6faef36f9c53e59-v1.0.0a3.tar.gz" SHA512 5f2c1a161771efa67e85b1fea395953b7744e29f61187ac5a6c54c912fb195b3aef9a5827135c3668bd0eeea5ae04a33cc433e1f6683e2b7955010a2632d168b -) + ) +endif() -string(COMPARE EQUAL "${VCPKG_CRT_LINKAGE}" "static" BUILD_WITH_STATIC_CRT) +set(BUILD_opencv_flann OFF) +if("flann" IN_LIST FEATURES) + set(BUILD_opencv_flann ON) +endif() -set(CMAKE_MODULE_PATH) +set(BUILD_opencv_ovis OFF) +if("ovis" IN_LIST FEATURES) + set(BUILD_opencv_ovis ON) +endif() set(BUILD_opencv_sfm OFF) if("sfm" IN_LIST FEATURES) @@ -99,19 +110,19 @@ set(WITH_FFMPEG OFF) if("ffmpeg" IN_LIST FEATURES) set(WITH_FFMPEG ON) vcpkg_download_distfile(OCV_DOWNLOAD - URLS "https://raw.githubusercontent.com/opencv/opencv_3rdparty/66b1fed06cf3510235f367f96aa26da5cb234a15/ffmpeg/opencv_ffmpeg.dll" - FILENAME "opencv-cache/ffmpeg/3ae76b105113d944984b2351c61e21c6-opencv_ffmpeg.dll" - SHA512 62ad0d6de7a7887a08313e20c474b4f98ae7746a2c10cce2ea5eae284250830e721b81308a401d0fadd238dda85c3ec0f347b41361fd56e473e790e3c40fa554 + URLS "https://raw.githubusercontent.com/opencv/opencv_3rdparty/0a0e88972a7ea97708378d0488a65f83e7cc5e69/ffmpeg/opencv_ffmpeg.dll" + FILENAME "opencv-cache/ffmpeg/b8120c07962d591e2e9071a1bf566fd0-opencv_ffmpeg.dll" + SHA512 53325e3bb04de19273270475d7b7d9190c950b0d12e1179feef63c69ba66c9f8593d8ed9b030109dee8c104ab5babea69f18c7cae7366a57d48272d67c00d871 ) vcpkg_download_distfile(OCV_DOWNLOAD - URLS "https://raw.githubusercontent.com/opencv/opencv_3rdparty/66b1fed06cf3510235f367f96aa26da5cb234a15/ffmpeg/opencv_ffmpeg_64.dll" - FILENAME "opencv-cache/ffmpeg/cf3bb5bc9d393b022ea7a42eb63e794d-opencv_ffmpeg_64.dll" - SHA512 5de95a180895aaa5186578572dd1968d2ff3ce8d24c46755c94d768ea6f463c92416c86e851b06b15fc314dd852a456282a56f5b14d6fb9130a054ac9e8230bd + URLS "https://raw.githubusercontent.com/opencv/opencv_3rdparty/0a0e88972a7ea97708378d0488a65f83e7cc5e69/ffmpeg/opencv_ffmpeg_64.dll" + FILENAME "opencv-cache/ffmpeg/dc9c50e7b05482acc25d6ce0ac61bf1d-opencv_ffmpeg_64.dll" + SHA512 7d90df6f5d141f842a45e5678cf1349657612321250ece4ad5c6b5fb28a50140735d91ced0ce1a6e81962ef87236cbd1669c0b4410308f70fccee341a7a5c28b ) vcpkg_download_distfile(OCV_DOWNLOAD - URLS "https://raw.githubusercontent.com/opencv/opencv_3rdparty/66b1fed06cf3510235f367f96aa26da5cb234a15/ffmpeg/ffmpeg_version.cmake" - FILENAME "opencv-cache/ffmpeg/ec59008da403fb18ab3c1ed66aed583b-ffmpeg_version.cmake" - SHA512 97784032256b104ed9bb3e3f71824985c551b3e4a86928bcf60d3beef50817f66cf276256e140e645e78e04f4463f3665bdda0574585d05af640fb43d0ba4cb9 + URLS "https://raw.githubusercontent.com/opencv/opencv_3rdparty/0a0e88972a7ea97708378d0488a65f83e7cc5e69/ffmpeg/ffmpeg_version.cmake" + FILENAME "opencv-cache/ffmpeg/3b90f67f4b429e77d3da36698cef700c-ffmpeg_version.cmake" + SHA512 7d0142c30ac6f6260c1bcabc22753030fd25a708477fa28053e8df847c366967d3b93a8ac14af19a2b7b73d9f8241749a431458faf21a0c8efc7d6d99eecfdcf ) endif() @@ -155,6 +166,11 @@ if("gdcm" IN_LIST FEATURES) set(WITH_GDCM ON) endif() +set(WITH_OPENGL OFF) +if("opengl" IN_LIST FEATURES) + set(WITH_OPENGL ON) +endif() + set(WITH_OPENEXR OFF) if("openexr" IN_LIST FEATURES) set(WITH_OPENEXR ON) @@ -196,12 +212,13 @@ if(BUILD_opencv_contrib) OUT_SOURCE_PATH CONTRIB_SOURCE_PATH REPO opencv/opencv_contrib REF ${OPENCV_PORT_VERSION} - SHA512 53f6127304f314d3be834f79520d4bc8a75e14cad8c9c14a66a7a6b37908ded114d24e3a2c664d4ec2275903db08ac826f29433e810c6400f3adc2714a3c5be7 + SHA512 431dfba0f413071d7faa18bc6e6f5e4f015285e2cc730c5dd69b2a4d6aa4250b7e0bcb1814ac6f06f5c76f103aea1f93f72f32aee6bc0cd7ddacdaf1f40075c1 HEAD_REF master ) set(BUILD_WITH_CONTRIB_FLAG "-DOPENCV_EXTRA_MODULES_PATH=${CONTRIB_SOURCE_PATH}/modules") endif() +set(WITH_ZLIB ON) set(BUILD_opencv_line_descriptor ON) set(BUILD_opencv_saliency ON) set(BUILD_opencv_bgsegm ON) @@ -219,11 +236,10 @@ vcpkg_configure_cmake( OPTIONS # Ungrouped Entries -DOpenCV_DISABLE_ARCH_PATH=ON - -DPROTOBUF_UPDATE_FILES=ON - -DUPDATE_PROTO_FILES=ON - # BUILD + # Do not build docs/examples -DBUILD_DOCS=OFF -DBUILD_EXAMPLES=OFF + # Do not build integrated libraries, use external ones whenever possible -DBUILD_JASPER=OFF -DBUILD_JPEG=OFF -DBUILD_OPENEXR=OFF @@ -237,16 +253,20 @@ vcpkg_configure_cmake( -DBUILD_WITH_DEBUG_INFO=ON -DBUILD_WITH_STATIC_CRT=${BUILD_WITH_STATIC_CRT} -DBUILD_ZLIB=OFF + # Select which OpenCV modules should be built -DBUILD_opencv_apps=OFF - -DBUILD_opencv_dnn=ON - -DBUILD_opencv_flann=ON + -DBUILD_opencv_bgsegm=${BUILD_opencv_bgsegm} + -DBUILD_opencv_dnn=${BUILD_opencv_dnn} + -DBUILD_opencv_flann=${BUILD_opencv_flann} + -DBUILD_opencv_line_descriptor=${BUILD_opencv_line_descriptor} + -DBUILD_opencv_ovis=${BUILD_opencv_ovis} -DBUILD_opencv_python2=OFF -DBUILD_opencv_python3=OFF - -DBUILD_opencv_sfm=${BUILD_opencv_sfm} - -DBUILD_opencv_line_descriptor=${BUILD_opencv_line_descriptor} -DBUILD_opencv_saliency=${BUILD_opencv_saliency} - -DBUILD_opencv_bgsegm=${BUILD_opencv_bgsegm} - + -DBUILD_opencv_sfm=${BUILD_opencv_sfm} + # PROTOBUF + -DPROTOBUF_UPDATE_FILES=${PROTOBUF_UPDATE_FILES} + -DUPDATE_PROTO_FILES=${UPDATE_PROTO_FILES} # CMAKE -DCMAKE_DISABLE_FIND_PACKAGE_JNI=ON "-DCMAKE_MODULE_PATH=${CMAKE_MODULE_PATH}" @@ -264,22 +284,24 @@ vcpkg_configure_cmake( # WITH -DWITH_CUBLAS=OFF -DWITH_CUDA=${WITH_CUDA} + -DWITH_EIGEN=${WITH_EIGEN} -DWITH_FFMPEG=${WITH_FFMPEG} + -DWITH_GDCM=${WITH_GDCM} -DWITH_IPP=${WITH_IPP} + -DWITH_JASPER=${WITH_JASPER} + -DWITH_JPEG=${WITH_JPEG} -DWITH_LAPACK=OFF -DWITH_MSMF=${WITH_MSMF} -DWITH_OPENCLAMDBLAS=OFF - -DWITH_OPENGL=ON + -DWITH_OPENEXR=${WITH_OPENEXR} + -DWITH_OPENGL=${WITH_OPENGL} + -DWITH_PNG=${WITH_PNG} + -DWITH_PROTOBUF=${WITH_PROTOBUF} -DWITH_QT=${WITH_QT} + -DWITH_TIFF=${WITH_TIFF} -DWITH_VTK=${WITH_VTK} - -DWITH_GDCM=${WITH_GDCM} -DWITH_WEBP=${WITH_WEBP} - -DWITH_OPENEXR=${WITH_OPENEXR} - -DWITH_TIFF=${WITH_TIFF} - -DWITH_JPEG=${WITH_JPEG} - -DWITH_PNG=${WITH_PNG} - -DWITH_JASPER=${WITH_JASPER} - -DWITH_EIGEN=${WITH_EIGEN} + -DWITH_ZLIB=${WITH_ZLIB} OPTIONS_DEBUG -DINSTALL_HEADERS=OFF -DINSTALL_OTHER=OFF -- cgit v1.2.3 From 1e380dde21317e73d1859dad1c64c06eb88cc502 Mon Sep 17 00:00:00 2001 From: Wimok Nupphiboon Date: Sat, 10 Mar 2018 11:00:09 +0700 Subject: [uwebsockets] Update to 0.14.6 --- ports/uwebsockets/CONTROL | 2 +- ports/uwebsockets/portfile.cmake | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/ports/uwebsockets/CONTROL b/ports/uwebsockets/CONTROL index a5ea7d287..1757aae53 100644 --- a/ports/uwebsockets/CONTROL +++ b/ports/uwebsockets/CONTROL @@ -1,4 +1,4 @@ Source: uwebsockets -Version: 0.14.5-1 +Version: 0.14.6-1 Build-Depends: libuv, openssl, zlib Description: Highly scalable cross-platform WebSocket & HTTP library for C++11 and Node.js diff --git a/ports/uwebsockets/portfile.cmake b/ports/uwebsockets/portfile.cmake index 6c660e948..f7cbb6843 100644 --- a/ports/uwebsockets/portfile.cmake +++ b/ports/uwebsockets/portfile.cmake @@ -3,8 +3,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO uWebSockets/uWebSockets - REF v0.14.5 - SHA512 93fa26446962be34f721db609f4cdf5f2d84771a3101f37daab75c1e46aa1a1402ec0d4c6b000b4eeeafa1a391f25c186bfeda1b3dc395da4e48bdb9a498fd22 + REF v0.14.6 + SHA512 cac3be6fcd49796590f19bde89e4195cecf9097248f7550ef6942573b59cd132f136ec026203e8524270440a7ae18c49472eb2166028b5c68d4a4cc457af4748 HEAD_REF master ) -- cgit v1.2.3 From f2ab816e81518e5f7060c11cab24200c1256f239 Mon Sep 17 00:00:00 2001 From: gouranga Date: Mon, 12 Mar 2018 19:45:33 +0300 Subject: [WTL] Update to 10.0.7336 --- ports/wtl/CONTROL | 2 +- ports/wtl/portfile.cmake | 7 ++++--- 2 files changed, 5 insertions(+), 4 deletions(-) diff --git a/ports/wtl/CONTROL b/ports/wtl/CONTROL index 6f8b6208e..bab8da1f2 100644 --- a/ports/wtl/CONTROL +++ b/ports/wtl/CONTROL @@ -1,5 +1,5 @@ Source: wtl Maintainer: jfrederich@gmail.com -Version: 9.1 +Version: 10.0 Description: Windows Template Library (WTL) is a C++ library for developing Windows applications and UI components. Build-Depends: diff --git a/ports/wtl/portfile.cmake b/ports/wtl/portfile.cmake index c8d8c6c34..d992b276a 100644 --- a/ports/wtl/portfile.cmake +++ b/ports/wtl/portfile.cmake @@ -1,9 +1,9 @@ #header-only library include(vcpkg_common_functions) vcpkg_download_distfile(ARCHIVE - URLS "http://downloads.sourceforge.net/project/wtl/WTL%209.1/WTL%209.1.5321%20Final/WTL91_5321_Final.zip?r=&ts=1477467616&use_mirror=netix" - FILENAME "WTL91_5321_Final.zip" - SHA512 52c583f6773839f7ad7fccf0ecba44ad00f41af4ae97d217619cc380ea9b71b90638ae35a5995f9eb08854db423896fec5f06b5cbd853f118eeddd05238a460a + URLS "http://downloads.sourceforge.net/project/wtl/WTL%2010/WTL%2010.0.7336/WTL10_7336.zip" + FILENAME "WTL10_7336.zip" + SHA512 68368be0b35fba97ed63fd684e98c077ab94ea2ce928693da7f1f48e2547486109e045e026218a7c8652aec46930b79572679c0b79afaa75a3dbf98572e4d9b5 ) vcpkg_extract_source_archive(${ARCHIVE}) @@ -13,3 +13,4 @@ file(COPY ${CURRENT_BUILDTREES_DIR}/src/MS-PL.txt DESTINATION ${CURRENT_PACKAGES file(RENAME ${CURRENT_PACKAGES_DIR}/share/wtl/MS-PL.txt ${CURRENT_PACKAGES_DIR}/share/wtl/copyright) file(COPY ${CURRENT_BUILDTREES_DIR}/src/samples DESTINATION ${CURRENT_PACKAGES_DIR}/share/wtl) +file(COPY ${CURRENT_BUILDTREES_DIR}/src/appwizard DESTINATION ${CURRENT_PACKAGES_DIR}/share/wtl) -- cgit v1.2.3 From c4457ea6a70d890ceae0b81a89d677eee28f7645 Mon Sep 17 00:00:00 2001 From: Robert Schumacher Date: Tue, 13 Mar 2018 01:52:00 -0700 Subject: [matio][rocksdb] Fix build --- ports/matio/CMakeLists.txt | 5 +-- ports/matio/portfile.cmake | 3 +- ports/rocksdb/0001-third-party.patch | 76 ------------------------------------ ports/rocksdb/CONTROL | 4 +- ports/rocksdb/portfile.cmake | 14 ++++--- ports/rocksdb/use-find-package.patch | 13 ++++++ 6 files changed, 26 insertions(+), 89 deletions(-) delete mode 100644 ports/rocksdb/0001-third-party.patch create mode 100644 ports/rocksdb/use-find-package.patch diff --git a/ports/matio/CMakeLists.txt b/ports/matio/CMakeLists.txt index 31b7e1e2b..6c21bbf53 100644 --- a/ports/matio/CMakeLists.txt +++ b/ports/matio/CMakeLists.txt @@ -30,9 +30,8 @@ find_package(ZLIB REQUIRED) target_link_libraries(libmatio PRIVATE ZLIB::ZLIB) target_compile_definitions(libmatio PRIVATE -DHAVE_ZLIB=1) -find_package(HDF5 REQUIRED) -target_include_directories(libmatio PRIVATE ${HDF5_INCLUDE_DIRS} ) -target_link_libraries(libmatio PRIVATE ${HDF5_C_LIBRARIES}) +find_package(hdf5 CONFIG REQUIRED) +target_link_libraries(libmatio PRIVATE hdf5::hdf5-shared hdf5::hdf5_hl-shared) if(BUILD_SHARED_LIBS) target_compile_definitions(libmatio PRIVATE -DHAVE_HDF5=1 -DH5_BUILT_AS_DYNAMIC_LIB) else() diff --git a/ports/matio/portfile.cmake b/ports/matio/portfile.cmake index 5752e635c..ac9ca5c45 100644 --- a/ports/matio/portfile.cmake +++ b/ports/matio/portfile.cmake @@ -9,10 +9,9 @@ vcpkg_from_github( file(COPY ${CMAKE_CURRENT_LIST_DIR}/CMakeLists.txt DESTINATION ${SOURCE_PATH}) - - vcpkg_configure_cmake( SOURCE_PATH ${SOURCE_PATH} + PREFER_NINJA OPTIONS_DEBUG -DDISABLE_INSTALL_HEADERS=ON ) diff --git a/ports/rocksdb/0001-third-party.patch b/ports/rocksdb/0001-third-party.patch deleted file mode 100644 index 0b0e3fa8c..000000000 --- a/ports/rocksdb/0001-third-party.patch +++ /dev/null @@ -1,76 +0,0 @@ -From 533ab1b3f3f4286aa756e965e22aa88612479e01 Mon Sep 17 00:00:00 2001 -From: Robert Schumacher -Date: Fri, 23 Feb 2018 01:44:44 -0800 -Subject: [PATCH 1/3] third-party - ---- - thirdparty.inc | 32 ++++++++++++++++---------------- - 1 file changed, 16 insertions(+), 16 deletions(-) - -diff --git a/thirdparty.inc b/thirdparty.inc -index a364d1d..1d85d50 100644 ---- a/thirdparty.inc -+++ b/thirdparty.inc -@@ -19,10 +19,10 @@ set (THIRDPARTY_LIBS "") # Initialization, don't touch - # - # Edit these 4 lines to define paths to GFLAGS - # --set(GFLAGS_HOME $ENV{THIRDPARTY_HOME}/Gflags.Library) --set(GFLAGS_INCLUDE ${GFLAGS_HOME}/inc/include) --set(GFLAGS_LIB_DEBUG ${GFLAGS_HOME}/bin/debug/amd64/gflags.lib) --set(GFLAGS_LIB_RELEASE ${GFLAGS_HOME}/bin/retail/amd64/gflags.lib) -+set(GFLAGS_HOME ${CURRENT_INSTALLED_DIR}) -+set(GFLAGS_INCLUDE ${GFLAGS_HOME}/include) -+set(GFLAGS_LIB_DEBUG ${GFLAGS_HOME}/debug/lib/gflagsd.lib) -+set(GFLAGS_LIB_RELEASE ${GFLAGS_HOME}/lib/gflags.lib) - - # ================================================== GFLAGS ================================================== - # -@@ -63,10 +63,10 @@ endif () - # - # Edit these 4 lines to define paths to Snappy - # --set(SNAPPY_HOME $ENV{THIRDPARTY_HOME}/Snappy.Library) --set(SNAPPY_INCLUDE ${SNAPPY_HOME}/inc/inc) --set(SNAPPY_LIB_DEBUG ${SNAPPY_HOME}/bin/debug/amd64/snappy.lib) --set(SNAPPY_LIB_RELEASE ${SNAPPY_HOME}/bin/retail/amd64/snappy.lib) -+set(SNAPPY_HOME ${CURRENT_INSTALLED_DIR}) -+set(SNAPPY_INCLUDE ${SNAPPY_HOME}/include) -+set(SNAPPY_LIB_DEBUG ${SNAPPY_HOME}/debug/lib/snappyd.lib) -+set(SNAPPY_LIB_RELEASE ${SNAPPY_HOME}/lib/snappy.lib) - - # - # Don't touch these lines -@@ -106,10 +106,10 @@ endif () - # - # Edit these 4 lines to define paths to LZ4 - # --set(LZ4_HOME $ENV{THIRDPARTY_HOME}/LZ4.Library) --set(LZ4_INCLUDE ${LZ4_HOME}/inc/include) --set(LZ4_LIB_DEBUG ${LZ4_HOME}/bin/debug/amd64/lz4.lib) --set(LZ4_LIB_RELEASE ${LZ4_HOME}/bin/retail/amd64/lz4.lib) -+set(LZ4_HOME ${CURRENT_INSTALLED_DIR}) -+set(LZ4_INCLUDE ${LZ4_HOME}/include) -+set(LZ4_LIB_DEBUG ${LZ4_HOME}/debug/lib/lz4d.lib) -+set(LZ4_LIB_RELEASE ${LZ4_HOME}/lib/lz4.lib) - - # - # Don't touch these lines -@@ -149,10 +149,10 @@ endif () - # - # Edit these 4 lines to define paths to ZLIB - # --set(ZLIB_HOME $ENV{THIRDPARTY_HOME}/ZLIB.Library) --set(ZLIB_INCLUDE ${ZLIB_HOME}/inc/include) --set(ZLIB_LIB_DEBUG ${ZLIB_HOME}/bin/debug/amd64/zlib.lib) --set(ZLIB_LIB_RELEASE ${ZLIB_HOME}/bin/retail/amd64/zlib.lib) -+set(ZLIB_HOME ${CURRENT_INSTALLED_DIR}) -+set(ZLIB_INCLUDE ${ZLIB_HOME}/include) -+set(ZLIB_LIB_DEBUG ${ZLIB_HOME}/debug/lib/zlibd.lib) -+set(ZLIB_LIB_RELEASE ${ZLIB_HOME}/lib/zlib.lib) - - # - # Don't touch these lines --- -2.16.2.windows.1 - diff --git a/ports/rocksdb/CONTROL b/ports/rocksdb/CONTROL index 161abe80e..cba7757d1 100644 --- a/ports/rocksdb/CONTROL +++ b/ports/rocksdb/CONTROL @@ -1,4 +1,4 @@ Source: rocksdb -Version: 5.10.4-2 +Version: 5.10.4-3 Description: A library that provides an embeddable, persistent key-value store for fast storage -Build-Depends: snappy, gflags, lz4, zlib +Build-Depends: zlib diff --git a/ports/rocksdb/portfile.cmake b/ports/rocksdb/portfile.cmake index ae60e824e..66541caa1 100644 --- a/ports/rocksdb/portfile.cmake +++ b/ports/rocksdb/portfile.cmake @@ -11,11 +11,13 @@ vcpkg_from_github( vcpkg_apply_patches( SOURCE_PATH ${SOURCE_PATH} PATCHES - "${CMAKE_CURRENT_LIST_DIR}/0001-third-party.patch" "${CMAKE_CURRENT_LIST_DIR}/0002-disable-gtest.patch" "${CMAKE_CURRENT_LIST_DIR}/0003-only-build-one-flavor.patch" + "${CMAKE_CURRENT_LIST_DIR}/use-find-package.patch" ) +file(REMOVE "${SOURCE_PATH}/cmake/modules/Findzlib.cmake") + if(VCPKG_CRT_LINKAGE STREQUAL "static") set(WITH_MD_LIBRARY OFF) else() @@ -29,10 +31,10 @@ vcpkg_configure_cmake( SOURCE_PATH ${SOURCE_PATH} PREFER_NINJA OPTIONS - -DGFLAGS=1 - -DSNAPPY=1 - -DLZ4=1 - -DZLIB=1 + -DWITH_GFLAGS=0 + -DWITH_SNAPPY=0 + -DWITH_LZ4=0 + -DWITH_ZLIB=1 -DWITH_TESTS=OFF -DROCKSDB_INSTALL_ON_WINDOWS=ON -DFAIL_ON_WARNINGS=OFF @@ -41,7 +43,7 @@ vcpkg_configure_cmake( -DCMAKE_DEBUG_POSTFIX=d -DROCKSDB_DISABLE_INSTALL_SHARED_LIB=${ROCKSDB_DISABLE_INSTALL_SHARED_LIB} -DROCKSDB_DISABLE_INSTALL_STATIC_LIB=${ROCKSDB_DISABLE_INSTALL_STATIC_LIB} - -DROCKSDB_VERSION=5.10.4 + -DROCKSDB_VERSION=5.11.3 -DCURRENT_INSTALLED_DIR=${CURRENT_INSTALLED_DIR} -DCMAKE_DISABLE_FIND_PACKAGE_TBB=TRUE -DCMAKE_DISABLE_FIND_PACKAGE_NUMA=TRUE diff --git a/ports/rocksdb/use-find-package.patch b/ports/rocksdb/use-find-package.patch new file mode 100644 index 000000000..1a79c2286 --- /dev/null +++ b/ports/rocksdb/use-find-package.patch @@ -0,0 +1,13 @@ +diff --git a/CMakeLists.txt b/CMakeLists.txt +index f3ac9ce..931e9f2 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -45,7 +45,7 @@ option(WITH_JEMALLOC "build with JeMalloc" OFF) + option(WITH_SNAPPY "build with SNAPPY" OFF) + option(WITH_LZ4 "build with lz4" OFF) + option(WITH_ZLIB "build with zlib" OFF) +-if(MSVC) ++if(MSVC AND NOT VCPKG_TOOLCHAIN) + # Defaults currently different for GFLAGS. + # We will address find_package work a little later + option(WITH_GFLAGS "build with GFlags" OFF) -- cgit v1.2.3 From 81b9ab1291bd322b5de8ad0cec2f21ce4d828a28 Mon Sep 17 00:00:00 2001 From: Robert Schumacher Date: Tue, 13 Mar 2018 04:26:00 -0700 Subject: [vcpkg] Refactor do_build_package and add archive tombstoning --- toolsrc/include/vcpkg/paragraphs.h | 2 +- toolsrc/src/vcpkg/build.cpp | 238 ++++++++++++++++++++----------------- toolsrc/src/vcpkg/install.cpp | 2 +- toolsrc/src/vcpkg/paragraphs.cpp | 2 +- 4 files changed, 132 insertions(+), 112 deletions(-) diff --git a/toolsrc/include/vcpkg/paragraphs.h b/toolsrc/include/vcpkg/paragraphs.h index e2c7f2d99..fa0265b75 100644 --- a/toolsrc/include/vcpkg/paragraphs.h +++ b/toolsrc/include/vcpkg/paragraphs.h @@ -20,7 +20,7 @@ namespace vcpkg::Paragraphs Parse::ParseExpected try_load_port(const Files::Filesystem& fs, const fs::path& control_path); - Expected try_load_cached_control_package(const VcpkgPaths& paths, const PackageSpec& spec); + Expected try_load_cached_package(const VcpkgPaths& paths, const PackageSpec& spec); struct LoadResults { diff --git a/toolsrc/src/vcpkg/build.cpp b/toolsrc/src/vcpkg/build.cpp index 408dde798..7abd5ae0a 100644 --- a/toolsrc/src/vcpkg/build.cpp +++ b/toolsrc/src/vcpkg/build.cpp @@ -315,8 +315,90 @@ namespace vcpkg::Build } static ExtendedBuildResult do_build_package(const VcpkgPaths& paths, + const PreBuildInfo& pre_build_info, + const PackageSpec& spec, + const std::string& abi_tag, const BuildPackageConfig& config, const StatusParagraphs& status_db) + { + auto& fs = paths.get_filesystem(); + const Triplet& triplet = spec.triplet(); + + const fs::path& cmake_exe_path = paths.get_cmake_exe(); + const fs::path& git_exe_path = paths.get_git_exe(); + + std::string all_features; + for (auto& feature : config.scf.feature_paragraphs) + { + all_features.append(feature->name + ";"); + } + + const Toolset& toolset = paths.get_toolset(pre_build_info); + const std::string cmd_launch_cmake = System::make_cmake_cmd( + cmake_exe_path, + paths.ports_cmake, + { + {"CMD", "BUILD"}, + {"PORT", config.scf.core_paragraph->name}, + {"CURRENT_PORT_DIR", config.port_dir / "/."}, + {"TARGET_TRIPLET", spec.triplet().canonical_name()}, + {"VCPKG_PLATFORM_TOOLSET", toolset.version.c_str()}, + {"VCPKG_USE_HEAD_VERSION", + Util::Enum::to_bool(config.build_package_options.use_head_version) ? "1" : "0"}, + {"_VCPKG_NO_DOWNLOADS", !Util::Enum::to_bool(config.build_package_options.allow_downloads) ? "1" : "0"}, + {"GIT", git_exe_path}, + {"FEATURES", Strings::join(";", config.feature_list)}, + {"ALL_FEATURES", all_features}, + }); + + auto command = make_build_env_cmd(pre_build_info, toolset); + if (!command.empty()) command.append(" && "); + command.append(cmd_launch_cmake); + + const auto timer = Chrono::ElapsedTimer::create_started(); + + const int return_code = System::cmd_execute_clean(command); + const auto buildtimeus = timer.microseconds(); + const auto spec_string = spec.to_string(); + + { + auto locked_metrics = Metrics::g_metrics.lock(); + locked_metrics->track_buildtime(spec.to_string() + ":[" + Strings::join(",", config.feature_list) + "]", + buildtimeus); + if (return_code != 0) + { + locked_metrics->track_property("error", "build failed"); + locked_metrics->track_property("build_error", spec_string); + return BuildResult::BUILD_FAILED; + } + } + + const BuildInfo build_info = read_build_info(fs, paths.build_info_file_path(spec)); + const size_t error_count = PostBuildLint::perform_all_checks(spec, paths, pre_build_info, build_info); + + auto bcf = create_binary_control_file(*config.scf.core_paragraph, triplet, build_info, abi_tag); + + if (error_count != 0) + { + return BuildResult::POST_BUILD_CHECKS_FAILED; + } + for (auto&& feature : config.feature_list) + { + for (auto&& f_pgh : config.scf.feature_paragraphs) + { + if (f_pgh->name == feature) + bcf->features.push_back( + create_binary_feature_control_file(*config.scf.core_paragraph, *f_pgh, triplet)); + } + } + + write_binary_control_file(paths, *bcf); + return {BuildResult::SUCCEEDED, std::move(bcf)}; + } + + ExtendedBuildResult build_package(const VcpkgPaths& paths, + const BuildPackageConfig& config, + const StatusParagraphs& status_db) { auto& fs = paths.get_filesystem(); const Triplet& triplet = config.triplet; @@ -359,9 +441,6 @@ namespace vcpkg::Build } const fs::path& cmake_exe_path = paths.get_cmake_exe(); - const fs::path& git_exe_path = paths.get_git_exe(); - - const fs::path ports_cmake_script_path = paths.ports_cmake; if (GlobalState::g_binary_caching) { @@ -420,124 +499,66 @@ namespace vcpkg::Build std::unique_ptr bcf; - auto archives_dir = paths.root / "archives"; - if (!abi_tag.empty()) - { - archives_dir /= abi_tag.substr(0, 2); - } - auto archive_path = archives_dir / (abi_tag + ".zip"); + auto archives_root_dir = paths.root / "archives"; + auto archive_name = abi_tag + ".zip"; + auto archive_subpath = abi_tag.empty() ? fs::path() : fs::u8path(abi_tag.substr(0, 2)) / archive_name; + auto archive_path = archives_root_dir / archive_subpath; + auto archive_tombstone_path = archives_root_dir / "fail" / archive_subpath; - if (GlobalState::g_binary_caching && !abi_tag.empty() && fs.exists(archive_path)) + auto found_archive = false; + + if (GlobalState::g_binary_caching && !abi_tag.empty()) { - System::println("Using cached binary package: %s", archive_path.u8string()); + if (fs.exists(archive_path)) + { + System::println("Using cached binary package: %s", archive_path.u8string()); - auto pkg_path = paths.package_dir(spec); - std::error_code ec; - fs.remove_all(pkg_path, ec); - fs.create_directories(pkg_path, ec); - auto files = fs.get_files_non_recursive(pkg_path); - Checks::check_exit(VCPKG_LINE_INFO, files.empty(), "unable to clear path: %s", pkg_path.u8string()); + auto pkg_path = paths.package_dir(spec); + std::error_code ec; + fs.remove_all(pkg_path, ec); + fs.create_directories(pkg_path, ec); + auto files = fs.get_files_non_recursive(pkg_path); + Checks::check_exit(VCPKG_LINE_INFO, files.empty(), "unable to clear path: %s", pkg_path.u8string()); #if defined(_WIN32) - auto&& _7za = paths.get_7za_exe(); + auto&& _7za = paths.get_7za_exe(); - System::cmd_execute_clean(Strings::format( - R"("%s" x "%s" -o"%s" -y >nul)", _7za.u8string(), archive_path.u8string(), pkg_path.u8string())); + System::cmd_execute_clean(Strings::format( + R"("%s" x "%s" -o"%s" -y >nul)", _7za.u8string(), archive_path.u8string(), pkg_path.u8string())); #else - System::cmd_execute_clean(Strings::format( - R"(unzip -qq "%s" "-d%s")", archive_path.u8string(), pkg_path.u8string())); + System::cmd_execute_clean(Strings::format( + R"(unzip -qq "%s" "-d%s")", archive_path.u8string(), pkg_path.u8string())); #endif - auto maybe_bcf = Paragraphs::try_load_cached_control_package(paths, spec); - bcf = std::make_unique(std::move(maybe_bcf).value_or_exit(VCPKG_LINE_INFO)); - } - else - { - if (GlobalState::g_binary_caching && !abi_tag.empty()) - { - System::println("Could not locate cached archive: %s", archive_path.u8string()); + auto maybe_bcf = Paragraphs::try_load_cached_package(paths, spec); + bcf = std::make_unique(std::move(maybe_bcf).value_or_exit(VCPKG_LINE_INFO)); + found_archive = true; + return {BuildResult::SUCCEEDED, std::move(bcf)}; } - - std::string all_features; - for (auto& feature : config.scf.feature_paragraphs) + else if (fs.exists(archive_tombstone_path)) { - all_features.append(feature->name + ";"); - } - - const Toolset& toolset = paths.get_toolset(pre_build_info); - const std::string cmd_launch_cmake = System::make_cmake_cmd( - cmake_exe_path, - ports_cmake_script_path, - { - {"CMD", "BUILD"}, - {"PORT", config.scf.core_paragraph->name}, - {"CURRENT_PORT_DIR", config.port_dir / "/."}, - {"TARGET_TRIPLET", triplet.canonical_name()}, - {"VCPKG_PLATFORM_TOOLSET", toolset.version.c_str()}, - {"VCPKG_USE_HEAD_VERSION", - Util::Enum::to_bool(config.build_package_options.use_head_version) ? "1" : "0"}, - {"_VCPKG_NO_DOWNLOADS", - !Util::Enum::to_bool(config.build_package_options.allow_downloads) ? "1" : "0"}, - {"GIT", git_exe_path}, - {"FEATURES", features}, - {"ALL_FEATURES", all_features}, - }); - - auto command = make_build_env_cmd(pre_build_info, toolset); - if (!command.empty()) command.append(" && "); - command.append(cmd_launch_cmake); - - const auto timer = Chrono::ElapsedTimer::create_started(); - - const int return_code = System::cmd_execute_clean(command); - const auto buildtimeus = timer.microseconds(); - const auto spec_string = spec.to_string(); - - { - auto locked_metrics = Metrics::g_metrics.lock(); - locked_metrics->track_buildtime(spec.to_string() + ":[" + Strings::join(",", config.feature_list) + "]", - buildtimeus); - if (return_code != 0) - { - locked_metrics->track_property("error", "build failed"); - locked_metrics->track_property("build_error", spec_string); - return BuildResult::BUILD_FAILED; - } + System::println("Found failure tombstone: %s", archive_tombstone_path.u8string()); + return BuildResult::BUILD_FAILED; } + } - const BuildInfo build_info = read_build_info(fs, paths.build_info_file_path(spec)); - const size_t error_count = PostBuildLint::perform_all_checks(spec, paths, pre_build_info, build_info); + if (GlobalState::g_binary_caching && !abi_tag.empty()) + { + System::println("Could not locate cached archive: %s", archive_path.u8string()); + } - bcf = create_binary_control_file(*config.scf.core_paragraph, triplet, build_info, abi_tag); + ExtendedBuildResult result = do_build_package(paths, pre_build_info, spec, abi_tag, config, status_db); - if (error_count != 0) - { - return BuildResult::POST_BUILD_CHECKS_FAILED; - } - for (auto&& feature : config.feature_list) + if (GlobalState::g_binary_caching && !abi_tag.empty()) + { + if (result.code == BuildResult::SUCCEEDED) { - for (auto&& f_pgh : config.scf.feature_paragraphs) - { - if (f_pgh->name == feature) - bcf->features.push_back( - create_binary_feature_control_file(*config.scf.core_paragraph, *f_pgh, triplet)); - } - } + auto tmp_archive_path = paths.buildtrees / spec.name() / (triplet.to_string() + ".zip"); - if (GlobalState::g_binary_caching && !abi_tag.empty()) - { std::error_code ec; fs.write_contents( paths.package_dir(spec) / "share" / spec.name() / "vcpkg_abi_info.txt", full_abi_info, ec); - } - - write_binary_control_file(paths, *bcf); - if (GlobalState::g_binary_caching && !abi_tag.empty()) - { - auto tmp_archive_path = paths.buildtrees / spec.name() / (spec.triplet().to_string() + ".zip"); - - std::error_code ec; fs.remove(tmp_archive_path, ec); Checks::check_exit(VCPKG_LINE_INFO, !fs.exists(tmp_archive_path), @@ -557,21 +578,20 @@ namespace vcpkg::Build paths.package_dir(spec).u8string(), tmp_archive_path.u8string())); #endif - fs.create_directories(archives_dir, ec); + fs.create_directories(archive_path.parent_path(), ec); fs.rename(tmp_archive_path, archive_path); System::println("Stored binary cache: %s", archive_path.u8string()); } + else if (result.code == BuildResult::BUILD_FAILED || result.code == BuildResult::POST_BUILD_CHECKS_FAILED) + { + // Build failed, so store failure archive + std::error_code ec; + fs.create_directories(archive_tombstone_path.parent_path(), ec); + fs.write_contents(archive_tombstone_path, "", ec); + } } - return {BuildResult::SUCCEEDED, std::move(bcf)}; - } - - ExtendedBuildResult build_package(const VcpkgPaths& paths, - const BuildPackageConfig& config, - const StatusParagraphs& status_db) - { - ExtendedBuildResult result = do_build_package(paths, config, status_db); if (config.build_package_options.clean_buildtrees == CleanBuildtrees::YES) { diff --git a/toolsrc/src/vcpkg/install.cpp b/toolsrc/src/vcpkg/install.cpp index 46c7c53b8..7d36fba82 100644 --- a/toolsrc/src/vcpkg/install.cpp +++ b/toolsrc/src/vcpkg/install.cpp @@ -306,7 +306,7 @@ namespace vcpkg::Install System::println("Building package %s... done", display_name_with_features); auto bcf = std::make_unique( - Paragraphs::try_load_cached_control_package(paths, action.spec).value_or_exit(VCPKG_LINE_INFO)); + Paragraphs::try_load_cached_package(paths, action.spec).value_or_exit(VCPKG_LINE_INFO)); auto code = aux_install(display_name_with_features, *bcf); if (action.build_options.clean_packages == Build::CleanPackages::YES) diff --git a/toolsrc/src/vcpkg/paragraphs.cpp b/toolsrc/src/vcpkg/paragraphs.cpp index b66d53994..d0b0c0abf 100644 --- a/toolsrc/src/vcpkg/paragraphs.cpp +++ b/toolsrc/src/vcpkg/paragraphs.cpp @@ -228,7 +228,7 @@ namespace vcpkg::Paragraphs return error_info; } - Expected try_load_cached_control_package(const VcpkgPaths& paths, const PackageSpec& spec) + Expected try_load_cached_package(const VcpkgPaths& paths, const PackageSpec& spec) { Expected>> pghs = get_paragraphs(paths.get_filesystem(), paths.package_dir(spec) / "CONTROL"); -- cgit v1.2.3 From ab09c4a277737b2486190e7a089055e9ad22610d Mon Sep 17 00:00:00 2001 From: Robert Schumacher Date: Tue, 13 Mar 2018 05:09:32 -0700 Subject: [libssh] Bake in LIBSSH_STATIC --- ports/libssh/CONTROL | 4 ++-- ports/libssh/portfile.cmake | 15 ++++++++++----- 2 files changed, 12 insertions(+), 7 deletions(-) diff --git a/ports/libssh/CONTROL b/ports/libssh/CONTROL index 9ae256937..692a6f4b8 100644 --- a/ports/libssh/CONTROL +++ b/ports/libssh/CONTROL @@ -1,4 +1,4 @@ Source: libssh -Version: 0.7.5-1 -Description:libssh is a multiplatform C library implementing the SSHv2 and SSHv1 protocol on client and server side +Version: 0.7.5-2 +Description: libssh is a multiplatform C library implementing the SSHv2 and SSHv1 protocol on client and server side Build-Depends: zlib, openssl diff --git a/ports/libssh/portfile.cmake b/ports/libssh/portfile.cmake index 8cac84063..36ece7321 100644 --- a/ports/libssh/portfile.cmake +++ b/ports/libssh/portfile.cmake @@ -15,20 +15,25 @@ vcpkg_configure_cmake( SOURCE_PATH ${SOURCE_PATH} PREFER_NINJA OPTIONS -DWITH_STATIC_LIB=ON - ) vcpkg_install_cmake() vcpkg_copy_pdbs() -vcpkg_fixup_cmake_targets(CONFIG_PATH "cmake/libssh") - if(VCPKG_LIBRARY_LINKAGE STREQUAL "static") - file(INSTALL ${CURRENT_PACKAGES_DIR}/lib/static/ssh.lib DESTINATION ${CURRENT_PACKAGES_DIR}/lib) - file(INSTALL ${CURRENT_PACKAGES_DIR}/debug/lib/static/ssh.lib DESTINATION ${CURRENT_PACKAGES_DIR}/debug/lib) + file(RENAME ${CURRENT_PACKAGES_DIR}/lib/static/ssh.lib ${CURRENT_PACKAGES_DIR}/lib/ssh.lib) + file(RENAME ${CURRENT_PACKAGES_DIR}/debug/lib/static/ssh.lib ${CURRENT_PACKAGES_DIR}/debug/lib/ssh.lib) file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/bin ${CURRENT_PACKAGES_DIR}/debug/bin) + + file(READ ${CURRENT_PACKAGES_DIR}/include/libssh/libssh.h _contents) + string(REPLACE "#ifdef LIBSSH_STATIC" "#if 1" _contents "${_contents}") + file(WRITE ${CURRENT_PACKAGES_DIR}/include/libssh/libssh.h "${_contents}") endif() file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/lib/static ${CURRENT_PACKAGES_DIR}/debug/lib/static) file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include) + +# The installed cmake config files are nonfunctional (0.7.5) +file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/cmake ${CURRENT_PACKAGES_DIR}/cmake) + file(INSTALL ${SOURCE_PATH}/COPYING DESTINATION ${CURRENT_PACKAGES_DIR}/share/libssh RENAME copyright) -- cgit v1.2.3 From 9336d5ea84f597fa508cbf6a70e591402d210984 Mon Sep 17 00:00:00 2001 From: Robert Schumacher Date: Tue, 13 Mar 2018 05:21:17 -0700 Subject: [vcpkg] Link pthreads --- toolsrc/CMakeLists.txt | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/toolsrc/CMakeLists.txt b/toolsrc/CMakeLists.txt index 2a340bb8f..da0f41631 100644 --- a/toolsrc/CMakeLists.txt +++ b/toolsrc/CMakeLists.txt @@ -1,5 +1,5 @@ cmake_minimum_required(VERSION 3.3) -project(vcpkg CXX) +project(vcpkg C CXX) if(CMAKE_COMPILER_IS_GNUXX OR CMAKE_CXX_COMPILER_ID MATCHES "GNU") set(GCC 1) @@ -19,10 +19,14 @@ file(GLOB_RECURSE VCPKGLIB_SOURCES src/vcpkg/*.cpp) add_executable(vcpkg src/vcpkg.cpp ${VCPKGLIB_SOURCES}) target_compile_definitions(vcpkg PRIVATE -DDISABLE_METRICS=0) -target_include_directories(vcpkg PUBLIC include) +target_include_directories(vcpkg PRIVATE include) if(GCC) - target_link_libraries(vcpkg PUBLIC stdc++fs) + target_link_libraries(vcpkg PRIVATE stdc++fs) elseif(CLANG) - target_link_libraries(vcpkg PUBLIC c++experimental) + target_link_libraries(vcpkg PRIVATE c++experimental) endif() + +set(THREADS_PREFER_PTHREAD_FLAG ON) +find_package(Threads REQUIRED) +target_link_libraries(vcpkg PRIVATE Threads::Threads) -- cgit v1.2.3 From 7142a093448baad2869e1ac99e619f02d3a395c1 Mon Sep 17 00:00:00 2001 From: Robert Schumacher Date: Tue, 13 Mar 2018 05:56:02 -0700 Subject: [vcpkg] Improve non-Windows default triplet detection --- scripts/buildsystems/vcpkg.cmake | 8 +++++--- scripts/toolchains/freebsd.cmake | 4 ++++ scripts/toolchains/linux.cmake | 2 -- scripts/toolchains/osx.cmake | 3 +++ 4 files changed, 12 insertions(+), 5 deletions(-) create mode 100644 scripts/toolchains/freebsd.cmake diff --git a/scripts/buildsystems/vcpkg.cmake b/scripts/buildsystems/vcpkg.cmake index 1d1977e6a..196ddcb3c 100644 --- a/scripts/buildsystems/vcpkg.cmake +++ b/scripts/buildsystems/vcpkg.cmake @@ -57,12 +57,14 @@ endif() if(CMAKE_SYSTEM_NAME STREQUAL "WindowsStore" OR CMAKE_SYSTEM_NAME STREQUAL "WindowsPhone") set(_VCPKG_TARGET_TRIPLET_PLAT uwp) -elseif(CMAKE_SYSTEM_NAME STREQUAL "Linux") +elseif(CMAKE_SYSTEM_NAME STREQUAL "Linux" OR (NOT CMAKE_SYSTEM_NAME AND CMAKE_HOST_SYSTEM_NAME STREQUAL "Linux")) set(_VCPKG_TARGET_TRIPLET_PLAT linux) -elseif(CMAKE_SYSTEM_NAME STREQUAL "Darwin") +elseif(CMAKE_SYSTEM_NAME STREQUAL "Darwin" OR (NOT CMAKE_SYSTEM_NAME AND CMAKE_HOST_SYSTEM_NAME STREQUAL "Darwin")) set(_VCPKG_TARGET_TRIPLET_PLAT osx) -else() +elseif(CMAKE_SYSTEM_NAME STREQUAL "Windows" OR (NOT CMAKE_SYSTEM_NAME AND CMAKE_HOST_SYSTEM_NAME STREQUAL "Windows")) set(_VCPKG_TARGET_TRIPLET_PLAT windows) +elseif(CMAKE_SYSTEM_NAME STREQUAL "FreeBSD" OR (NOT CMAKE_SYSTEM_NAME AND CMAKE_HOST_SYSTEM_NAME STREQUAL "FreeBSD")) + set(_VCPKG_TARGET_TRIPLET_PLAT freebsd) endif() set(VCPKG_TARGET_TRIPLET ${_VCPKG_TARGET_TRIPLET_ARCH}-${_VCPKG_TARGET_TRIPLET_PLAT} CACHE STRING "Vcpkg target triplet (ex. x86-windows)") diff --git a/scripts/toolchains/freebsd.cmake b/scripts/toolchains/freebsd.cmake new file mode 100644 index 000000000..bfeabe18b --- /dev/null +++ b/scripts/toolchains/freebsd.cmake @@ -0,0 +1,4 @@ +if(CMAKE_HOST_SYSTEM_NAME STREQUAL "FreeBSD") + set(CMAKE_CROSSCOMPILING OFF CACHE BOOL "") +endif() +set(CMAKE_SYSTEM_NAME FreeBSD CACHE STRING "") diff --git a/scripts/toolchains/linux.cmake b/scripts/toolchains/linux.cmake index d09d374c8..ea4f15d60 100644 --- a/scripts/toolchains/linux.cmake +++ b/scripts/toolchains/linux.cmake @@ -1,5 +1,3 @@ -cmake_minimum_required(VERSION 3.5) - if(CMAKE_HOST_SYSTEM_NAME STREQUAL "Linux") set(CMAKE_CROSSCOMPILING OFF CACHE BOOL "") endif() diff --git a/scripts/toolchains/osx.cmake b/scripts/toolchains/osx.cmake index 1a164f178..dd21f5264 100644 --- a/scripts/toolchains/osx.cmake +++ b/scripts/toolchains/osx.cmake @@ -1 +1,4 @@ +if(CMAKE_HOST_SYSTEM_NAME STREQUAL "Darwin") + set(CMAKE_CROSSCOMPILING OFF CACHE BOOL "") +endif() set(CMAKE_SYSTEM_NAME Darwin CACHE STRING "") -- cgit v1.2.3 From 511128b1c0478e02b50ca27ed7b8b0af3a6b91f1 Mon Sep 17 00:00:00 2001 From: Robert Schumacher Date: Tue, 13 Mar 2018 06:19:20 -0700 Subject: [openssl] Add BSD-generic64 --- ports/openssl/CMakeLists.txt | 4 +++- ports/openssl/portfile.cmake | 5 +++++ 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/ports/openssl/CMakeLists.txt b/ports/openssl/CMakeLists.txt index 40e82abb4..a2d863452 100644 --- a/ports/openssl/CMakeLists.txt +++ b/ports/openssl/CMakeLists.txt @@ -14,7 +14,9 @@ elseif(CMAKE_SYSTEM_NAME STREQUAL "Linux") set(PLATFORM linux-generic32) endif() elseif(CMAKE_SYSTEM_NAME STREQUAL "Darwin") - set(PLATFORM darwin64-x86_64-cc) + set(PLATFORM darwin64-x86_64-cc) +elseif(CMAKE_SYSTEM_NAME STREQUAL "FreeBSD") + set(PLATFORM BSD-generic64) else() message(FATAL_ERROR "Unknown platform") endif() diff --git a/ports/openssl/portfile.cmake b/ports/openssl/portfile.cmake index fe26c0c31..97ea7b614 100644 --- a/ports/openssl/portfile.cmake +++ b/ports/openssl/portfile.cmake @@ -13,6 +13,11 @@ if(CMAKE_HOST_WIN32) else() find_program(PERL perl) find_program(NASM nasm) + if(NOT PERL) + message(FATAL_ERROR "Could not find perl. Please install it through your system package manager.") + elseif(NOT NASM) + message(FATAL_ERROR "Could not find nasm. Please install it through your system package manager.") + endif() endif() get_filename_component(PERL_EXE_PATH ${PERL} DIRECTORY) -- cgit v1.2.3 From f72b46690a89a7e19563f93f0eaa5f8a21184254 Mon Sep 17 00:00:00 2001 From: Robert Schumacher Date: Tue, 13 Mar 2018 06:25:59 -0700 Subject: [vcpkg] Silence warnings on recent clang --- toolsrc/include/pch.h | 4 ++++ toolsrc/src/vcpkg/metrics.cpp | 2 +- 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/toolsrc/include/pch.h b/toolsrc/include/pch.h index 683bef171..9c9deeb3f 100644 --- a/toolsrc/include/pch.h +++ b/toolsrc/include/pch.h @@ -46,7 +46,11 @@ #include #include #include +#if defined(_WIN32) #include +#else +#include +#endif #include #include #include diff --git a/toolsrc/src/vcpkg/metrics.cpp b/toolsrc/src/vcpkg/metrics.cpp index d49cadbe2..9e17b237d 100644 --- a/toolsrc/src/vcpkg/metrics.cpp +++ b/toolsrc/src/vcpkg/metrics.cpp @@ -92,7 +92,7 @@ namespace vcpkg::Metrics { encoded.append("\\\""); } - else if (ch < 0x20 || ch >= 0x80) + else if (ch < 0x20 || static_cast(ch) >= 0x80) { // Note: this treats incoming Strings as Latin-1 static constexpr const char HEX[16] = { -- cgit v1.2.3 From c17ce742f0ad9dd6c48e8b4c9a6a92891c567016 Mon Sep 17 00:00:00 2001 From: Robert Schumacher Date: Tue, 13 Mar 2018 07:32:27 -0700 Subject: [libpq] Fix config writing into source dir --- ports/libpq/CMakeLists.txt | 19 +++++++++++-------- ports/libpq/portfile.cmake | 3 +++ 2 files changed, 14 insertions(+), 8 deletions(-) diff --git a/ports/libpq/CMakeLists.txt b/ports/libpq/CMakeLists.txt index 54e929a5b..35a67118a 100644 --- a/ports/libpq/CMakeLists.txt +++ b/ports/libpq/CMakeLists.txt @@ -3,11 +3,13 @@ project(libpq VERSION 9.6.1 LANGUAGES C) find_package(OpenSSL REQUIRED) set(CMAKE_DEBUG_POSTFIX "d") -configure_file(${CMAKE_CURRENT_LIST_DIR}/src/include/pg_config.h.win32 ${CMAKE_CURRENT_LIST_DIR}/src/include/pg_config.h) -configure_file(${CMAKE_CURRENT_LIST_DIR}/src/include/pg_config_ext.h.win32 ${CMAKE_CURRENT_LIST_DIR}/src/include/pg_config_ext.h) -configure_file(${CMAKE_CURRENT_LIST_DIR}/src/include/port/win32.h ${CMAKE_CURRENT_LIST_DIR}/src/include/pg_config_os.h) -file(WRITE src/interfaces/libpq/pg_config_paths.h "#define SYSCONFDIR \"\"") +configure_file(${CMAKE_CURRENT_LIST_DIR}/src/include/pg_config.h.win32 ${CMAKE_CURRENT_BINARY_DIR}/include/pg_config.h) +configure_file(${CMAKE_CURRENT_LIST_DIR}/src/include/pg_config_ext.h.win32 ${CMAKE_CURRENT_BINARY_DIR}/include/pg_config_ext.h) +configure_file(${CMAKE_CURRENT_LIST_DIR}/src/include/port/win32.h ${CMAKE_CURRENT_BINARY_DIR}/include/pg_config_os.h) +file(WRITE ${CMAKE_CURRENT_BINARY_DIR}/include/pg_config_paths.h "#define SYSCONFDIR \"\"") + set(INSTALL_INCLUDES ON CACHE BOOL "Install include files") + set(pg_port_src src/port/getaddrinfo.c src/port/pgstrcasecmp.c @@ -53,8 +55,8 @@ set(pg_libpq_src ) set(pg_libpq_interface src/include/postgres_ext.h - src/include/pg_config_ext.h - src/include/pg_config.h + ${CMAKE_CURRENT_BINARY_DIR}/include/pg_config_ext.h + ${CMAKE_CURRENT_BINARY_DIR}/include/pg_config.h src/interfaces/libpq/libpq-fe.h ) set(pg_libpq_catalog_interface @@ -67,14 +69,15 @@ set(CMAKE_INCLUDE_CURRENT_DIR ON) add_library(libpq ${pg_port_src} ${pg_backend_src} ${pg_libpq_src}) target_compile_definitions(libpq PRIVATE -DFRONTEND -DENABLE_THREAD_SAFETY -DUSE_OPENSSL -D_CRT_SECURE_NO_WARNINGS) target_link_libraries(libpq PRIVATE OpenSSL::SSL ws2_32 secur32 advapi32 shell32) -target_include_directories(libpq PRIVATE src/include src/include/port/win32 src/include/port/win32_msvc src/port) +target_include_directories(libpq PRIVATE src/include src/include/port/win32 src/include/port/win32_msvc src/port ${CMAKE_CURRENT_BINARY_DIR}/include) set_target_properties(libpq PROPERTIES WINDOWS_EXPORT_ALL_SYMBOLS ON) install(TARGETS libpq ARCHIVE DESTINATION lib LIBRARY DESTINATION lib RUNTIME DESTINATION bin - ) +) + if(INSTALL_INCLUDES) install(FILES ${pg_libpq_interface} DESTINATION include) install(DIRECTORY src/include/libpq DESTINATION include) diff --git a/ports/libpq/portfile.cmake b/ports/libpq/portfile.cmake index d98ce9a8a..2d14204fa 100644 --- a/ports/libpq/portfile.cmake +++ b/ports/libpq/portfile.cmake @@ -6,9 +6,12 @@ vcpkg_download_distfile(ARCHIVE SHA512 97141972e154e6b0e756ee6a4e20f26e82022a9fd4c56305314a3a5567a79ece638e4ac3d513b46138737ae6bd27a098f30013a94767db151181aac9c01290a1 ) vcpkg_extract_source_archive(${ARCHIVE}) + file(COPY ${CMAKE_CURRENT_LIST_DIR}/CMakeLists.txt DESTINATION ${SOURCE_PATH}) + vcpkg_configure_cmake( SOURCE_PATH ${SOURCE_PATH} + PREFER_NINJA OPTIONS_DEBUG -DINSTALL_INCLUDES=OFF ) -- cgit v1.2.3 From 50a93f01970e499f35edbb57ce0328baeb465635 Mon Sep 17 00:00:00 2001 From: Robert Schumacher Date: Tue, 13 Mar 2018 07:32:51 -0700 Subject: [vcpkg] Fix get_executable_path on BSD --- toolsrc/src/vcpkg/base/system.cpp | 18 +++++++++++++++--- 1 file changed, 15 insertions(+), 3 deletions(-) diff --git a/toolsrc/src/vcpkg/base/system.cpp b/toolsrc/src/vcpkg/base/system.cpp index e55db9461..e24098f97 100644 --- a/toolsrc/src/vcpkg/base/system.cpp +++ b/toolsrc/src/vcpkg/base/system.cpp @@ -8,7 +8,11 @@ #include #if defined(__APPLE__) -# include +#include +#endif + +#if defined(__FreeBSD__) +#include #endif #pragma comment(lib, "Advapi32") @@ -35,14 +39,22 @@ namespace vcpkg::System const int bytes = GetModuleFileNameW(nullptr, buf, _MAX_PATH); if (bytes == 0) std::abort(); return fs::path(buf, buf + bytes); -#elif __APPLE__ +#elif defined(__APPLE__) uint32_t size = 1024 * 32; char buf[size] = {}; bool result = _NSGetExecutablePath(buf, &size); Checks::check_exit(VCPKG_LINE_INFO, result != -1, "Could not determine current executable path."); - std::unique_ptr canonicalPath (realpath(buf, NULL)); + std::unique_ptr canonicalPath(realpath(buf, NULL)); Checks::check_exit(VCPKG_LINE_INFO, result != -1, "Could not determine current executable path."); return fs::path(std::string(canonicalPath.get())); +#elif defined(__FreeBSD__) + int mib[4] = {CTL_KERN, KERN_PROC, KERN_PROC_PATHNAME, -1}; + char exePath[2048]; + size_t len = sizeof(exePath); + auto rcode = sysctl(mib, 4, exePath, &len, NULL, 0); + Checks::check_exit(VCPKG_LINE_INFO, rcode == 0, "Could not determine current executable path."); + Checks::check_exit(VCPKG_LINE_INFO, len > 0, "Could not determine current executable path."); + return fs::path(exePath, exePath + len - 1); #else /* LINUX */ std::array buf; auto written = readlink("/proc/self/exe", buf.data(), buf.size()); -- cgit v1.2.3 From 9de17844e0201a27132149e392152525f8e8d34b Mon Sep 17 00:00:00 2001 From: Robert Schumacher Date: Tue, 13 Mar 2018 07:37:20 -0700 Subject: [libssh] Only build one flavor at a time, don't build examples. --- ports/libssh/CONTROL | 2 +- ports/libssh/build-one-flavor.patch | 20 ++++++++++++++++++++ ports/libssh/portfile.cmake | 28 ++++++++++++++++++++-------- 3 files changed, 41 insertions(+), 9 deletions(-) create mode 100644 ports/libssh/build-one-flavor.patch diff --git a/ports/libssh/CONTROL b/ports/libssh/CONTROL index 692a6f4b8..70b555a79 100644 --- a/ports/libssh/CONTROL +++ b/ports/libssh/CONTROL @@ -1,4 +1,4 @@ Source: libssh -Version: 0.7.5-2 +Version: 0.7.5-3 Description: libssh is a multiplatform C library implementing the SSHv2 and SSHv1 protocol on client and server side Build-Depends: zlib, openssl diff --git a/ports/libssh/build-one-flavor.patch b/ports/libssh/build-one-flavor.patch new file mode 100644 index 000000000..96e20ba98 --- /dev/null +++ b/ports/libssh/build-one-flavor.patch @@ -0,0 +1,20 @@ +diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt +index 1012ddf..612f0ba 100644 +--- a/src/CMakeLists.txt ++++ b/src/CMakeLists.txt +@@ -225,6 +225,7 @@ include_directories( + ${LIBSSH_PRIVATE_INCLUDE_DIRS} + ) + ++if (NOT WITH_STATIC_LIB) + add_library(${LIBSSH_SHARED_LIBRARY} SHARED ${libssh_SRCS}) + + target_link_libraries(${LIBSSH_SHARED_LIBRARY} ${LIBSSH_LINK_LIBRARIES}) +@@ -259,6 +260,7 @@ install( + ARCHIVE DESTINATION ${LIB_INSTALL_DIR} + COMPONENT libraries + ) ++endif() + + if (WITH_STATIC_LIB) + add_library(${LIBSSH_STATIC_LIBRARY} STATIC ${libssh_SRCS}) diff --git a/ports/libssh/portfile.cmake b/ports/libssh/portfile.cmake index 36ece7321..773685f76 100644 --- a/ports/libssh/portfile.cmake +++ b/ports/libssh/portfile.cmake @@ -1,7 +1,7 @@ include(vcpkg_common_functions) if(VCPKG_CMAKE_SYSTEM_NAME STREQUAL WindowsStore) - message(FATAL_ERROR "WindowsStore not supported") + message(FATAL_ERROR "WindowsStore not supported") endif() set(SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src/libssh-0.7.5) vcpkg_download_distfile(ARCHIVE @@ -11,23 +11,35 @@ vcpkg_download_distfile(ARCHIVE ) vcpkg_extract_source_archive(${ARCHIVE}) +vcpkg_apply_patches( + SOURCE_PATH ${SOURCE_PATH} + PATCHES ${CMAKE_CURRENT_LIST_DIR}/build-one-flavor.patch +) + +string(COMPARE EQUAL "${VCPKG_LIBRARY_LINKAGE}" "static" WITH_STATIC_LIB) + vcpkg_configure_cmake( SOURCE_PATH ${SOURCE_PATH} PREFER_NINJA - OPTIONS -DWITH_STATIC_LIB=ON + OPTIONS + -DWITH_STATIC_LIB=${WITH_STATIC_LIB} + -DWITH_EXAMPLES=OFF + -DWITH_TESTING=OFF + -DWITH_NACL=OFF + -DWITH_GSSAPI=OFF ) vcpkg_install_cmake() vcpkg_copy_pdbs() if(VCPKG_LIBRARY_LINKAGE STREQUAL "static") - file(RENAME ${CURRENT_PACKAGES_DIR}/lib/static/ssh.lib ${CURRENT_PACKAGES_DIR}/lib/ssh.lib) - file(RENAME ${CURRENT_PACKAGES_DIR}/debug/lib/static/ssh.lib ${CURRENT_PACKAGES_DIR}/debug/lib/ssh.lib) - file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/bin ${CURRENT_PACKAGES_DIR}/debug/bin) + file(RENAME ${CURRENT_PACKAGES_DIR}/lib/static/ssh.lib ${CURRENT_PACKAGES_DIR}/lib/ssh.lib) + file(RENAME ${CURRENT_PACKAGES_DIR}/debug/lib/static/ssh.lib ${CURRENT_PACKAGES_DIR}/debug/lib/ssh.lib) + file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/bin ${CURRENT_PACKAGES_DIR}/debug/bin) - file(READ ${CURRENT_PACKAGES_DIR}/include/libssh/libssh.h _contents) - string(REPLACE "#ifdef LIBSSH_STATIC" "#if 1" _contents "${_contents}") - file(WRITE ${CURRENT_PACKAGES_DIR}/include/libssh/libssh.h "${_contents}") + file(READ ${CURRENT_PACKAGES_DIR}/include/libssh/libssh.h _contents) + string(REPLACE "#ifdef LIBSSH_STATIC" "#if 1" _contents "${_contents}") + file(WRITE ${CURRENT_PACKAGES_DIR}/include/libssh/libssh.h "${_contents}") endif() file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/lib/static ${CURRENT_PACKAGES_DIR}/debug/lib/static) -- cgit v1.2.3 From 6b7c48646b6f36754384e99f6062880953120905 Mon Sep 17 00:00:00 2001 From: Robert Schumacher Date: Tue, 13 Mar 2018 08:14:58 -0700 Subject: [libmysql] Update to 8.0.4 --- ports/libmysql/CONTROL | 3 ++- ports/libmysql/boost_and_build.patch | 44 ------------------------------- ports/libmysql/ignore-boost-version.patch | 13 +++++++++ ports/libmysql/portfile.cmake | 23 ++++++++++------ 4 files changed, 30 insertions(+), 53 deletions(-) delete mode 100644 ports/libmysql/boost_and_build.patch create mode 100644 ports/libmysql/ignore-boost-version.patch diff --git a/ports/libmysql/CONTROL b/ports/libmysql/CONTROL index 8350014e4..6a069b78e 100644 --- a/ports/libmysql/CONTROL +++ b/ports/libmysql/CONTROL @@ -1,3 +1,4 @@ Source: libmysql -Version: 5.7.17-3 +Version: 8.0.4 +Build-Depends: boost-algorithm, boost-geometry, boost-optional, boost-functional, boost-graph Description: A MySQL client library for C development. diff --git a/ports/libmysql/boost_and_build.patch b/ports/libmysql/boost_and_build.patch deleted file mode 100644 index 7fce8ffc5..000000000 --- a/ports/libmysql/boost_and_build.patch +++ /dev/null @@ -1,44 +0,0 @@ -diff --git a/CMakeLists.txt b/CMakeLists.txt -index 44842d3..e34ab24 100644 ---- a/CMakeLists.txt -+++ b/CMakeLists.txt -@@ -452,7 +452,7 @@ ELSE() - SET(DEFAULT_TMPDIR "\"${TMPDIR}\"") - ENDIF() - --INCLUDE(cmake/boost.cmake) -+#INCLUDE(cmake/boost.cmake) - - IF (CMAKE_SYSTEM_NAME MATCHES "Linux") - OPTION(WITH_SYSTEMD "Enable installation of systemd support files" OFF) -diff --git a/client/dump/CMakeLists.txt b/client/dump/CMakeLists.txt -index bae2ce7..4e11516 100644 ---- a/client/dump/CMakeLists.txt -+++ b/client/dump/CMakeLists.txt -@@ -21,12 +21,12 @@ INCLUDE_DIRECTORIES( - ${CMAKE_SOURCE_DIR}/dump - ) - --IF (CMAKE_CXX_COMPILER_ID STREQUAL "SunPro") -+#IF (CMAKE_CXX_COMPILER_ID STREQUAL "SunPro") - IF (WITHOUT_SERVER) - MESSAGE(STATUS "Not building mysqlpump") - RETURN() - ENDIF() --ENDIF() -+#ENDIF() - - # Prevent Boost from including external precompiled Boost libraries, use - # threading (not implemented for older Solaris Studio compilers) -diff --git a/mysys/mysys_priv.h b/mysys/mysys_priv.h -index 8b7a554..4353037 100644 ---- a/mysys/mysys_priv.h -+++ b/mysys/mysys_priv.h -@@ -18,6 +18,7 @@ - - #include "my_global.h" - #include "mysql/psi/mysql_thread.h" -+#include "my_sys.h" - - #ifdef HAVE_PSI_INTERFACE - diff --git a/ports/libmysql/ignore-boost-version.patch b/ports/libmysql/ignore-boost-version.patch new file mode 100644 index 000000000..ea7111ded --- /dev/null +++ b/ports/libmysql/ignore-boost-version.patch @@ -0,0 +1,13 @@ +diff --git a/cmake/boost.cmake b/cmake/boost.cmake +index 2851181..8788322 100644 +--- a/cmake/boost.cmake ++++ b/cmake/boost.cmake +@@ -280,7 +280,7 @@ IF(NOT BOOST_MAJOR_VERSION EQUAL 10) + COULD_NOT_FIND_BOOST() + ENDIF() + +-IF(NOT BOOST_MINOR_VERSION EQUAL 65) ++IF(NOT BOOST_MINOR_VERSION EQUAL 65 AND NOT IGNORE_BOOST_VERSION) + MESSAGE(WARNING "Boost minor version found is ${BOOST_MINOR_VERSION} " + "we need 65" + ) diff --git a/ports/libmysql/portfile.cmake b/ports/libmysql/portfile.cmake index dee383a81..d3a7a569d 100644 --- a/ports/libmysql/portfile.cmake +++ b/ports/libmysql/portfile.cmake @@ -6,22 +6,27 @@ if(VCPKG_CMAKE_SYSTEM_NAME STREQUAL "WindowsStore") message(FATAL_ERROR "libmysql cannot currently be cross-compiled for UWP") endif() +if(VCPKG_TARGET_ARCHITECTURE STREQUAL "x86") + message(FATAL_ERROR "32-bit builds are not supported by libmysql.") +endif() + include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO mysql/mysql-server - REF mysql-5.7.17 - SHA512 31488972e08a6b83f88e6e3f7923aca91e01eac702f4942fdae92e13f66d92ac86c24dfe7a65a001db836c900147d1c3871b36af8cbb281a0e6c555617cac12c + REF mysql-8.0.4 + SHA512 8d9129e7670e88df14238299052a5fe6d4f3e40bf27ef7a3ca8f4f91fb40507b13463e9bd24435b34e5d06c5d056dfb259fb04e77cc251b188eea734db5642be HEAD_REF master ) vcpkg_apply_patches( SOURCE_PATH ${SOURCE_PATH} - PATCHES - ${CMAKE_CURRENT_LIST_DIR}/boost_and_build.patch + PATCHES ${CMAKE_CURRENT_LIST_DIR}/ignore-boost-version.patch ) +file(REMOVE_RECURSE ${SOURCE_PATH}/include/boost_1_65_0) + set(STACK_DIRECTION) if(VCPKG_TARGET_ARCHITECTURE STREQUAL "x86" OR VCPKG_TARGET_ARCHITECTURE STREQUAL "x64") set(STACK_DIRECTION -DSTACK_DIRECTION=-1) @@ -29,6 +34,7 @@ endif() vcpkg_configure_cmake( SOURCE_PATH ${SOURCE_PATH} + PREFER_NINJA OPTIONS -DWITHOUT_SERVER=ON -DWITH_UNIT_TESTS=OFF @@ -37,6 +43,7 @@ vcpkg_configure_cmake( -DHAVE_LLVM_LIBCPP_EXITCODE=1 ${STACK_DIRECTION} -DWINDOWS_RUNTIME_MD=ON # Note: this disables _replacement_ of /MD with /MT. If /MT is specified, it will be preserved. + -DIGNORE_BOOST_VERSION=ON ) vcpkg_install_cmake() @@ -62,9 +69,9 @@ file(REMOVE_RECURSE # remove misc files file(REMOVE - ${CURRENT_PACKAGES_DIR}/COPYING + ${CURRENT_PACKAGES_DIR}/LICENSE ${CURRENT_PACKAGES_DIR}/README - ${CURRENT_PACKAGES_DIR}/debug/COPYING + ${CURRENT_PACKAGES_DIR}/debug/LICENSE ${CURRENT_PACKAGES_DIR}/debug/README) # remove not-related libs @@ -95,5 +102,5 @@ else() endif() # copy license -file(COPY ${SOURCE_PATH}/COPYING DESTINATION ${CURRENT_PACKAGES_DIR}/share/libmysql) -file(RENAME ${CURRENT_PACKAGES_DIR}/share/libmysql/COPYING ${CURRENT_PACKAGES_DIR}/share/libmysql/copyright) \ No newline at end of file +file(COPY ${SOURCE_PATH}/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/libmysql) +file(RENAME ${CURRENT_PACKAGES_DIR}/share/libmysql/LICENSE ${CURRENT_PACKAGES_DIR}/share/libmysql/copyright) \ No newline at end of file -- cgit v1.2.3 From 3c7997215bc2e44125912fb7aae672f1b63944a8 Mon Sep 17 00:00:00 2001 From: Robert Schumacher Date: Tue, 13 Mar 2018 11:06:22 -0700 Subject: [vcpkg] Improve default triplets for non-windows --- toolsrc/include/vcpkg/base/strings.h | 2 +- toolsrc/src/vcpkg.cpp | 8 ++++++++ toolsrc/src/vcpkg/base/strings.cpp | 7 +++---- 3 files changed, 12 insertions(+), 5 deletions(-) diff --git a/toolsrc/include/vcpkg/base/strings.h b/toolsrc/include/vcpkg/base/strings.h index 6ef840fb3..6294853af 100644 --- a/toolsrc/include/vcpkg/base/strings.h +++ b/toolsrc/include/vcpkg/base/strings.h @@ -46,7 +46,7 @@ namespace vcpkg::Strings bool case_insensitive_ascii_equals(const CStringView left, const CStringView right); - std::string ascii_to_lowercase(const std::string& input); + std::string ascii_to_lowercase(std::string input); bool case_insensitive_ascii_starts_with(const std::string& s, const std::string& pattern); diff --git a/toolsrc/src/vcpkg.cpp b/toolsrc/src/vcpkg.cpp index d9b915367..a65045aa8 100644 --- a/toolsrc/src/vcpkg.cpp +++ b/toolsrc/src/vcpkg.cpp @@ -157,7 +157,15 @@ static void inner(const VcpkgCmdArguments& args) } else { +#if defined(_WIN32) default_triplet = Triplet::X86_WINDOWS; +#elif defined(__APPLE__) + default_triplet = Triplet::from_canonical_name("x64-osx"); +#elif defined(__FreeBSD__) + default_triplet = Triplet::from_canonical_name("x64-freebsd"); +#else + default_triplet = Triplet::from_canonical_name("x64-linux"); +#endif } } diff --git a/toolsrc/src/vcpkg/base/strings.cpp b/toolsrc/src/vcpkg/base/strings.cpp index d912734e3..a08512c9f 100644 --- a/toolsrc/src/vcpkg/base/strings.cpp +++ b/toolsrc/src/vcpkg/base/strings.cpp @@ -108,11 +108,10 @@ namespace vcpkg::Strings #endif } - std::string ascii_to_lowercase(const std::string& input) + std::string ascii_to_lowercase(std::string s) { - std::string output(input); - std::transform(output.begin(), output.end(), output.begin(), &details::tolower_char); - return output; + std::transform(s.begin(), s.end(), s.begin(), &details::tolower_char); + return s; } bool case_insensitive_ascii_starts_with(const std::string& s, const std::string& pattern) -- cgit v1.2.3 From 40bc3cb716c912e7a9cd567369a77918cfce87a2 Mon Sep 17 00:00:00 2001 From: Robert Schumacher Date: Tue, 13 Mar 2018 11:06:52 -0700 Subject: [libssh] Fix static builds for non-windows --- ports/libssh/CONTROL | 2 +- ports/libssh/only-one-flavor-threads.patch | 21 +++++++++++++++++++++ ports/libssh/portfile.cmake | 11 ++++++++--- 3 files changed, 30 insertions(+), 4 deletions(-) create mode 100644 ports/libssh/only-one-flavor-threads.patch diff --git a/ports/libssh/CONTROL b/ports/libssh/CONTROL index 70b555a79..5f3c8a0db 100644 --- a/ports/libssh/CONTROL +++ b/ports/libssh/CONTROL @@ -1,4 +1,4 @@ Source: libssh -Version: 0.7.5-3 +Version: 0.7.5-4 Description: libssh is a multiplatform C library implementing the SSHv2 and SSHv1 protocol on client and server side Build-Depends: zlib, openssl diff --git a/ports/libssh/only-one-flavor-threads.patch b/ports/libssh/only-one-flavor-threads.patch new file mode 100644 index 000000000..31b3e1f36 --- /dev/null +++ b/ports/libssh/only-one-flavor-threads.patch @@ -0,0 +1,21 @@ +diff --git a/src/threads/CMakeLists.txt b/src/threads/CMakeLists.txt +index 2ab4e1b..a47620b 100644 +--- a/src/threads/CMakeLists.txt ++++ b/src/threads/CMakeLists.txt +@@ -59,6 +59,7 @@ include_directories( + if (libssh_threads_SRCS) + set(LIBSSH_THREADS ON CACHE "libssh threads lib" INTERNAL) + ++ if (NOT WITH_STATIC_LIB) + add_library(${LIBSSH_THREADS_SHARED_LIBRARY} SHARED ${libssh_threads_SRCS}) + + target_link_libraries(${LIBSSH_THREADS_SHARED_LIBRARY} ${LIBSSH_THREADS_LINK_LIBRARIES}) +@@ -89,7 +90,7 @@ if (libssh_threads_SRCS) + COMPONENT libraries + ) + +- if (WITH_STATIC_LIB) ++ else (WITH_STATIC_LIB) + add_library(${LIBSSH_THREADS_STATIC_LIBRARY} STATIC ${libssh_threads_SRCS}) + + if (MSVC) diff --git a/ports/libssh/portfile.cmake b/ports/libssh/portfile.cmake index 773685f76..7d986d244 100644 --- a/ports/libssh/portfile.cmake +++ b/ports/libssh/portfile.cmake @@ -13,7 +13,9 @@ vcpkg_extract_source_archive(${ARCHIVE}) vcpkg_apply_patches( SOURCE_PATH ${SOURCE_PATH} - PATCHES ${CMAKE_CURRENT_LIST_DIR}/build-one-flavor.patch + PATCHES + ${CMAKE_CURRENT_LIST_DIR}/build-one-flavor.patch + ${CMAKE_CURRENT_LIST_DIR}/only-one-flavor-threads.patch ) string(COMPARE EQUAL "${VCPKG_LIBRARY_LINKAGE}" "static" WITH_STATIC_LIB) @@ -33,8 +35,10 @@ vcpkg_install_cmake() vcpkg_copy_pdbs() if(VCPKG_LIBRARY_LINKAGE STREQUAL "static") - file(RENAME ${CURRENT_PACKAGES_DIR}/lib/static/ssh.lib ${CURRENT_PACKAGES_DIR}/lib/ssh.lib) - file(RENAME ${CURRENT_PACKAGES_DIR}/debug/lib/static/ssh.lib ${CURRENT_PACKAGES_DIR}/debug/lib/ssh.lib) + if(EXISTS ${CURRENT_PACKAGES_DIR}/lib/static/ssh.lib) + file(RENAME ${CURRENT_PACKAGES_DIR}/lib/static/ssh.lib ${CURRENT_PACKAGES_DIR}/lib/ssh.lib) + file(RENAME ${CURRENT_PACKAGES_DIR}/debug/lib/static/ssh.lib ${CURRENT_PACKAGES_DIR}/debug/lib/ssh.lib) + endif() file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/bin ${CURRENT_PACKAGES_DIR}/debug/bin) file(READ ${CURRENT_PACKAGES_DIR}/include/libssh/libssh.h _contents) @@ -47,5 +51,6 @@ file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include) # The installed cmake config files are nonfunctional (0.7.5) file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/cmake ${CURRENT_PACKAGES_DIR}/cmake) +file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/lib/cmake ${CURRENT_PACKAGES_DIR}/lib/cmake) file(INSTALL ${SOURCE_PATH}/COPYING DESTINATION ${CURRENT_PACKAGES_DIR}/share/libssh RENAME copyright) -- cgit v1.2.3 From 51f93e27f1057cdf7f83d3d799f1b48f3eb77d8a Mon Sep 17 00:00:00 2001 From: Robert Schumacher Date: Tue, 13 Mar 2018 00:18:49 -0700 Subject: [abseil][breakpad][cimg][matio][piex][rocksdb][thrift][tiny-dnn][unicorn-lib][unicorn] Updates --- ports/abseil/CONTROL | 2 +- ports/abseil/portfile.cmake | 4 ++-- ports/breakpad/CONTROL | 2 +- ports/breakpad/portfile.cmake | 4 ++-- ports/cimg/CONTROL | 2 +- ports/cimg/portfile.cmake | 4 ++-- ports/matio/CONTROL | 2 +- ports/matio/portfile.cmake | 4 ++-- ports/piex/CONTROL | 2 +- ports/piex/portfile.cmake | 4 ++-- ports/rocksdb/CONTROL | 2 +- ports/rocksdb/portfile.cmake | 4 ++-- ports/thrift/CONTROL | 2 +- ports/thrift/portfile.cmake | 4 ++-- ports/tiny-dnn/CONTROL | 2 +- ports/tiny-dnn/portfile.cmake | 4 ++-- ports/unicorn-lib/CONTROL | 2 +- ports/unicorn-lib/portfile.cmake | 4 ++-- ports/unicorn/CONTROL | 2 +- ports/unicorn/portfile.cmake | 4 ++-- 20 files changed, 30 insertions(+), 30 deletions(-) diff --git a/ports/abseil/CONTROL b/ports/abseil/CONTROL index cd4a6723f..37258b7b2 100644 --- a/ports/abseil/CONTROL +++ b/ports/abseil/CONTROL @@ -1,5 +1,5 @@ Source: abseil -Version: 2018-03-07 +Version: 2018-03-13 Description: an open-source collection designed to augment the C++ standard library. Abseil is an open-source collection of C++ library code designed to augment the C++ standard library. The Abseil library code is collected from Google's own C++ code base, has been extensively tested and used in production, and is the same code we depend on in our daily coding lives. In some cases, Abseil provides pieces missing from the C++ standard; in others, Abseil provides alternatives to the standard for special needs we've found through usage in the Google code base. We denote those cases clearly within the library code we provide you. diff --git a/ports/abseil/portfile.cmake b/ports/abseil/portfile.cmake index 598f76c2f..526d93bae 100644 --- a/ports/abseil/portfile.cmake +++ b/ports/abseil/portfile.cmake @@ -7,8 +7,8 @@ endif() vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO abseil/abseil-cpp - REF 94f0f79ecd2d9e5271a21bc4ededea9b58c60674 - SHA512 b1309a371b886e4d5d8e963407ddfcd005c041b35880e0af45f07c778875fb69c76f0a1ef7802af3f1eab3497fb40020d8d503c5eb2788fff50dd74b557bf182 + REF 23ef7e11277a7a7709b70c362eea6b17cb932b34 + SHA512 86f83553b8da536c55660d2dd439f0dfc75d0c1839d83b0f5a1ab6f5016730bcac9d007873901789c71e77603276e85658a86ffa4691c60fabec29b593b49744 HEAD_REF master ) diff --git a/ports/breakpad/CONTROL b/ports/breakpad/CONTROL index 9d3e4959c..6b016d29a 100644 --- a/ports/breakpad/CONTROL +++ b/ports/breakpad/CONTROL @@ -1,4 +1,4 @@ Source: breakpad -Version: 2018-02-25 +Version: 2018-03-13 Build-Depends: libdisasm Description: a set of client and server components which implement a crash-reporting system. diff --git a/ports/breakpad/portfile.cmake b/ports/breakpad/portfile.cmake index a7b28e863..b8bac3f6a 100644 --- a/ports/breakpad/portfile.cmake +++ b/ports/breakpad/portfile.cmake @@ -3,8 +3,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO google/breakpad - REF 88e9a460dec52d11ce4520c54246cf5cf29f87bf - SHA512 31750e6db23c30b884af7049dc67cd30198e49a638d3e226c5ba31f562145bdfbc42f0679173cefc93df75b11af734ecf164c0d4030408e6f0ab315d60fdb30f + REF 2d80611fedf1e6bce4459f179dafaac844e9fc7f + SHA512 8c4eabb1e2d071ed67d178c1ee8c3679a24bff39439ee360a079fa926e276247ee18d0d88e420407e08c99cac0d1e9a8b4c7f554bf2d07f125eaa1df2f973e38 HEAD_REF master ) diff --git a/ports/cimg/CONTROL b/ports/cimg/CONTROL index bd6d5b4a4..a4b1438e7 100644 --- a/ports/cimg/CONTROL +++ b/ports/cimg/CONTROL @@ -1,3 +1,3 @@ Source: cimg -Version: 220 +Version: 221 Description: The CImg Library is a small, open-source, and modern C++ toolkit for image processing diff --git a/ports/cimg/portfile.cmake b/ports/cimg/portfile.cmake index 84ee0be9f..5a130433f 100644 --- a/ports/cimg/portfile.cmake +++ b/ports/cimg/portfile.cmake @@ -2,9 +2,9 @@ include(vcpkg_common_functions) vcpkg_from_github(OUT_SOURCE_PATH SOURCE_PATH REPO "dtschump/CImg" - REF v.220 + REF v.221 HEAD_REF master - SHA512 f4954296d7aab9ba840e27d09d4d9abc21d78bedc32bd828f3c898348de7c3711096c1b6ff563907dfa41c78d1ae1c2ac5a8437d272a8d304f940f23b7844076) + SHA512 d1aea69f4662e85c5b56c723cadcc69282f2f1c4e3a968efc312a826a15000c11d61756d3ed87e37ae349cebbd62b67503996c45ed1fe038a91a9f0c8dbec43c) file(COPY ${CMAKE_CURRENT_LIST_DIR}/CMakeLists.txt DESTINATION ${SOURCE_PATH}) diff --git a/ports/matio/CONTROL b/ports/matio/CONTROL index e3d0082f7..7c891c035 100644 --- a/ports/matio/CONTROL +++ b/ports/matio/CONTROL @@ -1,4 +1,4 @@ Source: matio -Version: 1.5.11 +Version: 1.5.12 Description: MATLAB MAT File I/O Library Build-Depends: zlib, hdf5 diff --git a/ports/matio/portfile.cmake b/ports/matio/portfile.cmake index ac9ca5c45..86d5b6a1f 100644 --- a/ports/matio/portfile.cmake +++ b/ports/matio/portfile.cmake @@ -2,8 +2,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO tbeu/matio - REF v1.5.11 - SHA512 f500475e80cdb52a4754c49e900a34c0b540a5c64f353287e6b85b0c16156b251fe8088f2ed584af5a4d0916e98fddf73a3799e7c045ab859298687038e6d513 + REF v1.5.12 + SHA512 3bf6d2bf6460531dd2a740813bca3f3da6347b9fadb39803257f11bcceeaa7cf6657921c9ca9c8db02bf2020d5adf2ecf544b2455aa0ca897c0644493b1902a4 HEAD_REF master ) diff --git a/ports/piex/CONTROL b/ports/piex/CONTROL index 946ca9418..43411e564 100644 --- a/ports/piex/CONTROL +++ b/ports/piex/CONTROL @@ -1,3 +1,3 @@ Source: piex -Version: 2018-02-25 +Version: 2018-03-13 Description: The Preview Image Extractor (PIEX) is designed to find and extract the largest diff --git a/ports/piex/portfile.cmake b/ports/piex/portfile.cmake index 94b7e9494..039c2c41d 100644 --- a/ports/piex/portfile.cmake +++ b/ports/piex/portfile.cmake @@ -8,8 +8,8 @@ endif() vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO google/piex - REF 938f8b6e49ae43b062f76aad968ff76f5f33c965 - SHA512 abe145f29d210b03eb4340a506cd3e061a9ffe69217f916310308c6c8095ebe3229fb969a4403d1ca06375c8c87e78db8bceee89f7963116f80acdce463c556b + REF 2aa74c2dd295758ef4562906a5525300972821fc + SHA512 4fbea41e8f21c2f4a75d899aa28e2d2e92201d429eb8504515466187befc1eac6c9b31d91b039f2aebe2101bbde6b87adce9bae578a536f264d207fe29e4bd8f HEAD_REF master ) diff --git a/ports/rocksdb/CONTROL b/ports/rocksdb/CONTROL index cba7757d1..90511f0b2 100644 --- a/ports/rocksdb/CONTROL +++ b/ports/rocksdb/CONTROL @@ -1,4 +1,4 @@ Source: rocksdb -Version: 5.10.4-3 +Version: 5.11.3 Description: A library that provides an embeddable, persistent key-value store for fast storage Build-Depends: zlib diff --git a/ports/rocksdb/portfile.cmake b/ports/rocksdb/portfile.cmake index 66541caa1..e37b79633 100644 --- a/ports/rocksdb/portfile.cmake +++ b/ports/rocksdb/portfile.cmake @@ -3,8 +3,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO facebook/rocksdb - REF v5.10.4 - SHA512 42841f2e2ca7dee6e88b0539e997cc365a50161c234e5878e30757022114335c613f6d642a0af2bdc7fdb97d09ed79f4e12454d456f1f7fa1a6489c32540460a + REF rocksdb-5.11.3 + SHA512 a4c771e36056ee0da497202b25092d89799db43573a442568b4392b8478ac20320dabf4c904e93bd0641a32f249e9c8dcad0d67577acaee6902cd4d30f29ce57 HEAD_REF master ) diff --git a/ports/thrift/CONTROL b/ports/thrift/CONTROL index 3470a9990..d7beee7e0 100644 --- a/ports/thrift/CONTROL +++ b/ports/thrift/CONTROL @@ -1,4 +1,4 @@ Source: thrift -Version: 2018-03-11 +Version: 2018-03-13 Build-Depends: zlib, libevent, openssl, boost-range, boost-smart-ptr, boost-date-time, boost-locale, boost-scope-exit Description: Apache Thrift is a software project spanning a variety of programming languages and use cases. Our goal is to make reliable, performant communication and data serialization across languages as efficient and seamless as possible. Originally developed at Facebook, Thrift was open sourced in April 2007 and entered the Apache Incubator in May, 2008. Thrift became an Apache TLP in October, 2010. diff --git a/ports/thrift/portfile.cmake b/ports/thrift/portfile.cmake index 502da193a..123b760a7 100644 --- a/ports/thrift/portfile.cmake +++ b/ports/thrift/portfile.cmake @@ -15,8 +15,8 @@ vcpkg_find_acquire_program(BISON) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO apache/thrift - REF 70b33fb6b48d62859a048cac1bec79cfadb2f310 - SHA512 81c2c41fc4daab8b0da94a67862f1a2db0901804e06ed3445fec7bdc408e983bd0662c0d3fdaa9f149bcd531763620ffdfd3c0226f73d246e8e56dd560ccf1b4 + REF 8d55c47610b765b2bcdfaebb7ee8d22930e0bd0d + SHA512 ebca8605f6841826d506608ccf64a985dc97316daa02dfe67e0646761fcea85e8920b17678fb01bfd2dea0337b182316a31c98c79c4e2f4d03f1b342521123d5 HEAD_REF master ) diff --git a/ports/tiny-dnn/CONTROL b/ports/tiny-dnn/CONTROL index 2a53311cb..6468f2473 100644 --- a/ports/tiny-dnn/CONTROL +++ b/ports/tiny-dnn/CONTROL @@ -1,3 +1,3 @@ Source: tiny-dnn -Version: 2018-03-07 +Version: 2018-03-13 Description: A C++14 implementation of deep learning. It is suitable for deep learning on limited computational resource. diff --git a/ports/tiny-dnn/portfile.cmake b/ports/tiny-dnn/portfile.cmake index bb4fc9fcf..151f5dbee 100644 --- a/ports/tiny-dnn/portfile.cmake +++ b/ports/tiny-dnn/portfile.cmake @@ -3,8 +3,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO tiny-dnn/tiny-dnn - REF 4a59e4cc8799b3a768618cb157a2edc9d0f05b91 - SHA512 408cfec895140d10c9a498ce78da3ad1e11c245a05c05c5cd82ccedd100fbadad7fb02a4e4c2cb924f8d2c35eca31176dd8270927b5d8376946a237066b10795 + REF 1c5259477b8b4eab376cc19fd1d55ae965ef5e5a + SHA512 756b8e3d5d00b44973bbae2c0bedbe15206bce479dc70ae5fc89f455772deadc05503afd7abcae2048aeabefd7a45cba0fae38555df7e0d9eb33e9feed21b099 HEAD_REF master ) diff --git a/ports/unicorn-lib/CONTROL b/ports/unicorn-lib/CONTROL index 23967af57..2c742eedc 100644 --- a/ports/unicorn-lib/CONTROL +++ b/ports/unicorn-lib/CONTROL @@ -1,4 +1,4 @@ Source: unicorn-lib -Version: 2018-02-25 +Version: 2018-03-13 Description: Unicode library for C++ by Ross Smith Build-Depends: rs-core-lib, pcre, zlib, libiconv diff --git a/ports/unicorn-lib/portfile.cmake b/ports/unicorn-lib/portfile.cmake index 46a7fc67c..c76da4fa3 100644 --- a/ports/unicorn-lib/portfile.cmake +++ b/ports/unicorn-lib/portfile.cmake @@ -3,8 +3,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO CaptainCrowbar/unicorn-lib - REF 1ee9ca81e62c1916a08522523ca21a46a5005ad5 - SHA512 b61f8b993d46e4750ccb14aa98dee3b9f3d9de54d2dfa60af4fabb338f04348c450089fa331e7d63342698f39168d660452fb49fb707c1a6647553ec494355bb + REF 8fc132c879e748a61c9e4b6a93a6de209b55dbe5 + SHA512 f70d9fd9c06b4bf7a771abfacd1f989f03ea51395b6819b1162a13954e680d49622e48b61b71195c598ac21861435c6c5fe8ff368880098a07eb4b86547eede0 HEAD_REF master ) diff --git a/ports/unicorn/CONTROL b/ports/unicorn/CONTROL index f1856bac6..398df6e27 100644 --- a/ports/unicorn/CONTROL +++ b/ports/unicorn/CONTROL @@ -1,3 +1,3 @@ Source: unicorn -Version: 2018-02-25 +Version: 2018-03-13 Description: Unicorn is a lightweight multi-platform, multi-architecture CPU emulator framework diff --git a/ports/unicorn/portfile.cmake b/ports/unicorn/portfile.cmake index 66ba738c0..dd0aad363 100644 --- a/ports/unicorn/portfile.cmake +++ b/ports/unicorn/portfile.cmake @@ -14,8 +14,8 @@ set(VCPKG_CRT_LINKAGE "static") vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO unicorn-engine/unicorn - REF dab5060005facc38ef6500496ae7f7bd90e4fdb7 - SHA512 42b656a9d6b8091aaed5729658d7dd94064a9c9c43ad33ca474917b0830b760ee81a37a6eec84848d8aa6784d01568649f036383a8953c3e1de2616b053c682e + REF 1f408ce35917e2dcb2136072eb4db9e1cf3ab70e + SHA512 fb630a391b33f34e1d04eec0daf90427f907c111b3a0a6ed0d50eb3b2fea2777d0edc9f00a01af614cd3d072b800663ae578080ee76af63a2ee8ae21da46396f HEAD_REF master ) -- cgit v1.2.3 From d8aed01655c991ee11264bca6b3db1afab1a8218 Mon Sep 17 00:00:00 2001 From: Robert Schumacher Date: Tue, 13 Mar 2018 11:34:59 -0700 Subject: [libjpeg-turbo] Fix non-windows non-linux --- ports/libjpeg-turbo/portfile.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ports/libjpeg-turbo/portfile.cmake b/ports/libjpeg-turbo/portfile.cmake index 2c8c20f92..288960662 100644 --- a/ports/libjpeg-turbo/portfile.cmake +++ b/ports/libjpeg-turbo/portfile.cmake @@ -13,7 +13,7 @@ vcpkg_apply_patches( "${CMAKE_CURRENT_LIST_DIR}/linux-cmake.patch" ) -if(VCPKG_TARGET_ARCHITECTURE STREQUAL "arm" OR VCPKG_TARGET_ARCHITECTURE STREQUAL "arm64" OR VCPKG_CMAKE_SYSTEM_NAME STREQUAL "Linux") +if(VCPKG_TARGET_ARCHITECTURE STREQUAL "arm" OR VCPKG_TARGET_ARCHITECTURE STREQUAL "arm64" OR (VCPKG_CMAKE_SYSTEM_NAME AND NOT VCPKG_CMAKE_SYSTEM_NAME STREQUAL "WindowsStore")) set(LIBJPEGTURBO_SIMD -DWITH_SIMD=OFF) else() set(LIBJPEGTURBO_SIMD -DWITH_SIMD=ON) -- cgit v1.2.3 From 94360c2c65c6b38844ee75890d2be4632cdb4514 Mon Sep 17 00:00:00 2001 From: Robert Schumacher Date: Tue, 13 Mar 2018 11:35:19 -0700 Subject: [vcpkg-find-acquire-program] Handle PERL and NASM on non-windows --- ports/openssl/portfile.cmake | 14 ++------------ scripts/cmake/vcpkg_find_acquire_program.cmake | 4 ++++ 2 files changed, 6 insertions(+), 12 deletions(-) diff --git a/ports/openssl/portfile.cmake b/ports/openssl/portfile.cmake index 97ea7b614..3d442ec9e 100644 --- a/ports/openssl/portfile.cmake +++ b/ports/openssl/portfile.cmake @@ -7,18 +7,8 @@ include(vcpkg_common_functions) set(OPENSSL_VERSION 1.0.2n) set(MASTER_COPY_SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src/openssl-${OPENSSL_VERSION}) -if(CMAKE_HOST_WIN32) - vcpkg_find_acquire_program(PERL) - vcpkg_find_acquire_program(NASM) -else() - find_program(PERL perl) - find_program(NASM nasm) - if(NOT PERL) - message(FATAL_ERROR "Could not find perl. Please install it through your system package manager.") - elseif(NOT NASM) - message(FATAL_ERROR "Could not find nasm. Please install it through your system package manager.") - endif() -endif() +vcpkg_find_acquire_program(PERL) +vcpkg_find_acquire_program(NASM) get_filename_component(PERL_EXE_PATH ${PERL} DIRECTORY) get_filename_component(NASM_EXE_PATH ${NASM} DIRECTORY) diff --git a/scripts/cmake/vcpkg_find_acquire_program.cmake b/scripts/cmake/vcpkg_find_acquire_program.cmake index 21d7ecd8f..083b86fc2 100644 --- a/scripts/cmake/vcpkg_find_acquire_program.cmake +++ b/scripts/cmake/vcpkg_find_acquire_program.cmake @@ -49,12 +49,16 @@ function(vcpkg_find_acquire_program VAR) if(VAR MATCHES "PERL") set(PROGNAME perl) set(PATHS ${DOWNLOADS}/tools/perl/perl/bin) + set(BREW_PACKAGE_NAME "perl") + set(APT_PACKAGE_NAME "perl") set(URL "http://strawberryperl.com/download/5.24.1.1/strawberry-perl-5.24.1.1-32bit-portable.zip") set(ARCHIVE "strawberry-perl-5.24.1.1-32bit-portable.zip") set(HASH a6e685ea24376f50db5f06c5b46075f1d3be25168fa1f27fa9b02e2ac017826cee62a2b43562f9b6c989337a231ba914416c110075457764de2d11f99d5e0f26) elseif(VAR MATCHES "NASM") set(PROGNAME nasm) set(PATHS ${DOWNLOADS}/tools/nasm/nasm-2.12.02) + set(BREW_PACKAGE_NAME "nasm") + set(APT_PACKAGE_NAME "nasm") set(URL "http://www.nasm.us/pub/nasm/releasebuilds/2.12.02/win32/nasm-2.12.02-win32.zip" "http://mirrors.kodi.tv/build-deps/win32/nasm-2.12.02-win32.zip" -- cgit v1.2.3 From 7eae9c153e4622802a7c2c8b318f68692f35890f Mon Sep 17 00:00:00 2001 From: Robert Schumacher Date: Wed, 14 Mar 2018 02:56:49 -0700 Subject: [libmysql] Clarify support message --- ports/libmysql/portfile.cmake | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/ports/libmysql/portfile.cmake b/ports/libmysql/portfile.cmake index d3a7a569d..6c60d0ccc 100644 --- a/ports/libmysql/portfile.cmake +++ b/ports/libmysql/portfile.cmake @@ -6,8 +6,8 @@ if(VCPKG_CMAKE_SYSTEM_NAME STREQUAL "WindowsStore") message(FATAL_ERROR "libmysql cannot currently be cross-compiled for UWP") endif() -if(VCPKG_TARGET_ARCHITECTURE STREQUAL "x86") - message(FATAL_ERROR "32-bit builds are not supported by libmysql.") +if(VCPKG_TARGET_ARCHITECTURE STREQUAL "x86" AND NOT CMAKE_SYSTEM_NAME OR CMAKE_SYSTEM_NAME STREQUAL "WindowsStore") + message(FATAL_ERROR "Oracle has dropped support in libmysql for 32-bit Windows.") endif() include(vcpkg_common_functions) -- cgit v1.2.3 From 0ab8f0d69f469148f926afa796beddc096c45c84 Mon Sep 17 00:00:00 2001 From: Robert Schumacher Date: Wed, 14 Mar 2018 03:18:12 -0700 Subject: [libmariadb] Use vcpkg_from_github() and improve conflict check --- ports/libmariadb/portfile.cmake | 84 ++++++++++++++++++++--------------------- 1 file changed, 42 insertions(+), 42 deletions(-) diff --git a/ports/libmariadb/portfile.cmake b/ports/libmariadb/portfile.cmake index 3aca7afb3..4486564f6 100644 --- a/ports/libmariadb/portfile.cmake +++ b/ports/libmariadb/portfile.cmake @@ -1,24 +1,24 @@ -if (EXISTS "${CURRENT_INSTALLED_DIR}/include/mysql/mysql.h") - message(FATAL_ERROR "FATAL ERROR: libmysql and libmariadb are incompatible.") +if (EXISTS "${CURRENT_INSTALLED_DIR}/share/libmysql") + message(FATAL_ERROR "FATAL ERROR: libmysql and libmariadb are incompatible.") endif() include(vcpkg_common_functions) -set(SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src/mariadb-connector-c-3.0.2) -vcpkg_download_distfile(ARCHIVE - URLS "https://github.com/MariaDB/mariadb-connector-c/archive/v3.0.2.tar.gz" - FILENAME "mariadb-connector-c-3.0.2.tar.gz" +vcpkg_from_github( + OUT_SOURCE_PATH SOURCE_PATH + REPO MariaDB/mariadb-connector-c + REF v3.0.2 SHA512 a5086ff149b1ca0e1b652013475c5f3793824416a60ec35018b6dcd502bd38b50fa040271ff8d308520dadecc9601671fccf67046fcda2425f1d7c59e1c6c52f + HEAD_REF master ) -vcpkg_extract_source_archive(${ARCHIVE}) vcpkg_configure_cmake( SOURCE_PATH ${SOURCE_PATH} - OPTIONS - -DWITH_UNITTEST=OFF - -DWITH_SSL=OFF - -DWITH_CURL=OFF + OPTIONS + -DWITH_UNITTEST=OFF + -DWITH_SSL=OFF + -DWITH_CURL=OFF ) vcpkg_install_cmake() @@ -28,47 +28,47 @@ file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include) # fix libmariadb lib & dll directory. if (VCPKG_LIBRARY_LINKAGE STREQUAL static) - file(RENAME - ${CURRENT_PACKAGES_DIR}/lib/mariadb/mariadbclient.lib - ${CURRENT_PACKAGES_DIR}/lib/mariadbclient.lib) - file(RENAME - ${CURRENT_PACKAGES_DIR}/debug/lib/mariadb/mariadbclient.lib - ${CURRENT_PACKAGES_DIR}/debug/lib/mariadbclient.lib) + file(RENAME + ${CURRENT_PACKAGES_DIR}/lib/mariadb/mariadbclient.lib + ${CURRENT_PACKAGES_DIR}/lib/mariadbclient.lib) + file(RENAME + ${CURRENT_PACKAGES_DIR}/debug/lib/mariadb/mariadbclient.lib + ${CURRENT_PACKAGES_DIR}/debug/lib/mariadbclient.lib) else() - file(MAKE_DIRECTORY - ${CURRENT_PACKAGES_DIR}/bin - ${CURRENT_PACKAGES_DIR}/debug/bin) - file(RENAME - ${CURRENT_PACKAGES_DIR}/lib/mariadb/libmariadb.dll - ${CURRENT_PACKAGES_DIR}/bin/libmariadb.dll) - file(RENAME - ${CURRENT_PACKAGES_DIR}/debug/lib/mariadb/libmariadb.dll - ${CURRENT_PACKAGES_DIR}/debug/bin/libmariadb.dll) - file(RENAME - ${CURRENT_PACKAGES_DIR}/lib/mariadb/libmariadb.lib - ${CURRENT_PACKAGES_DIR}/lib/libmariadb.lib) - file(RENAME - ${CURRENT_PACKAGES_DIR}/debug/lib/mariadb/libmariadb.lib - ${CURRENT_PACKAGES_DIR}/debug/lib/libmariadb.lib) + file(MAKE_DIRECTORY + ${CURRENT_PACKAGES_DIR}/bin + ${CURRENT_PACKAGES_DIR}/debug/bin) + file(RENAME + ${CURRENT_PACKAGES_DIR}/lib/mariadb/libmariadb.dll + ${CURRENT_PACKAGES_DIR}/bin/libmariadb.dll) + file(RENAME + ${CURRENT_PACKAGES_DIR}/debug/lib/mariadb/libmariadb.dll + ${CURRENT_PACKAGES_DIR}/debug/bin/libmariadb.dll) + file(RENAME + ${CURRENT_PACKAGES_DIR}/lib/mariadb/libmariadb.lib + ${CURRENT_PACKAGES_DIR}/lib/libmariadb.lib) + file(RENAME + ${CURRENT_PACKAGES_DIR}/debug/lib/mariadb/libmariadb.lib + ${CURRENT_PACKAGES_DIR}/debug/lib/libmariadb.lib) endif() # remove plugin folder file(REMOVE_RECURSE - ${CURRENT_PACKAGES_DIR}/lib/plugin - ${CURRENT_PACKAGES_DIR}/debug/lib/plugin - ${CURRENT_PACKAGES_DIR}/lib/mariadb - ${CURRENT_PACKAGES_DIR}/debug/lib/mariadb) + ${CURRENT_PACKAGES_DIR}/lib/plugin + ${CURRENT_PACKAGES_DIR}/debug/lib/plugin + ${CURRENT_PACKAGES_DIR}/lib/mariadb + ${CURRENT_PACKAGES_DIR}/debug/lib/mariadb) # copy & remove header files file(GLOB HEADER_FILES ${CURRENT_PACKAGES_DIR}/include/mariadb/*) file(REMOVE - ${CURRENT_PACKAGES_DIR}/include/mariadb/my_config.h.in - ${CURRENT_PACKAGES_DIR}/include/mariadb/mysql_version.h.in - ${CURRENT_PACKAGES_DIR}/include/mariadb/CMakeLists.txt - ${CURRENT_PACKAGES_DIR}/include/mariadb/Makefile.am) + ${CURRENT_PACKAGES_DIR}/include/mariadb/my_config.h.in + ${CURRENT_PACKAGES_DIR}/include/mariadb/mysql_version.h.in + ${CURRENT_PACKAGES_DIR}/include/mariadb/CMakeLists.txt + ${CURRENT_PACKAGES_DIR}/include/mariadb/Makefile.am) file(RENAME - ${CURRENT_PACKAGES_DIR}/include/mariadb - ${CURRENT_PACKAGES_DIR}/include/mysql) + ${CURRENT_PACKAGES_DIR}/include/mariadb + ${CURRENT_PACKAGES_DIR}/include/mysql) # copy license file file(COPY ${SOURCE_PATH}/COPYING.LIB DESTINATION ${CURRENT_PACKAGES_DIR}/share/libmariadb) -- cgit v1.2.3 From b33931c4384f2f0cc2bd10604192c5271d731a1e Mon Sep 17 00:00:00 2001 From: itsuhane Date: Wed, 14 Mar 2018 22:24:39 +0800 Subject: Add OpenMesh 6.3(without apps) (#3032) --- ports/openmesh/CONTROL | 3 +++ ports/openmesh/portfile.cmake | 38 ++++++++++++++++++++++++++++++++++++++ 2 files changed, 41 insertions(+) create mode 100644 ports/openmesh/CONTROL create mode 100644 ports/openmesh/portfile.cmake diff --git a/ports/openmesh/CONTROL b/ports/openmesh/CONTROL new file mode 100644 index 000000000..b803484eb --- /dev/null +++ b/ports/openmesh/CONTROL @@ -0,0 +1,3 @@ +Source: openmesh +Version: 6.3 +Description: A generic and efficient polygon mesh data structure diff --git a/ports/openmesh/portfile.cmake b/ports/openmesh/portfile.cmake new file mode 100644 index 000000000..f70773ceb --- /dev/null +++ b/ports/openmesh/portfile.cmake @@ -0,0 +1,38 @@ +# 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 = +# VCPKG_TARGET_ARCHITECTURE = target architecture (x64, x86, arm) +# + +include(vcpkg_common_functions) +set(SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src/openmesh-6.3) +vcpkg_download_distfile(ARCHIVE + URLS "https://www.openmesh.org/media/Releases/6.3/OpenMesh-6.3.tar.gz" + FILENAME "openmesh-6.3.tar.gz" + SHA512 2ef2dcd2e0abcb0c36a3a9abac433ef4d3430115498ff1134525b27a0f023d7e3bb0d80550f0c8b9658c87651594bce29138bdca05db57f02a5e99e2275c2c07 +) +vcpkg_extract_source_archive(${ARCHIVE}) + +vcpkg_configure_cmake( + SOURCE_PATH ${SOURCE_PATH} + PREFER_NINJA # Disable this option if project cannot be built with Ninja + OPTIONS -DBUILD_APPS=OFF # [TODO]: add apps as feature, requires qt5 and freeglut + # OPTIONS -DUSE_THIS_IN_ALL_BUILDS=1 -DUSE_THIS_TOO=2 + # OPTIONS_RELEASE -DOPTIMIZE=1 + # OPTIONS_DEBUG -DDEBUGGABLE=1 +) + +vcpkg_install_cmake() +vcpkg_copy_pdbs() + +file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include) +file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/include/OpenMesh/Tools/VDPM/xpm) + +# Handle copyright +file(INSTALL ${SOURCE_PATH}/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/openmesh RENAME copyright) -- cgit v1.2.3 From f0dc8c109eaf264fbdbc6fb726fe23a9ef2bd97a Mon Sep 17 00:00:00 2001 From: pravic Date: Wed, 14 Mar 2018 17:51:20 +0300 Subject: [curl] update to 7.59.0 --- ports/curl/CONTROL | 2 +- ports/curl/portfile.cmake | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/ports/curl/CONTROL b/ports/curl/CONTROL index 0f6acea43..c273ec181 100644 --- a/ports/curl/CONTROL +++ b/ports/curl/CONTROL @@ -1,5 +1,5 @@ Source: curl -Version: 7.58.0-5 +Version: 7.59.0 Build-Depends: zlib Description: A library for transferring data with URLs Default-Features: ssl diff --git a/ports/curl/portfile.cmake b/ports/curl/portfile.cmake index 299dc4fa4..852fcf9d0 100644 --- a/ports/curl/portfile.cmake +++ b/ports/curl/portfile.cmake @@ -2,8 +2,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO curl/curl - REF curl-7_58_0 - SHA512 148c25152732dd5ad2626bc70c7725577e25033a73eecefa4dd820927ec552f9c2d0235cc3f597404d3893eced7d5d2bd9522f6302b7f930e9f65912ac2c91f6 + REF curl-7_59_0 + SHA512 eac51b986db7eafb836bc4fa00def88054304110990bf99a4387a5ff85a8375616c2ee5bee91bf608737faffe9f228dfd62be69a4b0622a4afe3deb1098b6bd3 HEAD_REF master ) -- cgit v1.2.3 From 90c4b8dbb7a69584a4a36c67e4982cf086b7c578 Mon Sep 17 00:00:00 2001 From: Robert Schumacher Date: Wed, 14 Mar 2018 04:33:14 -0700 Subject: [vcpkg] Further refactoring inside `build_package()` --- toolsrc/include/vcpkg/commands.h | 2 +- toolsrc/src/vcpkg/build.cpp | 320 ++++++++++++++++++++---------------- toolsrc/src/vcpkg/commands.ci.cpp | 21 ++- toolsrc/src/vcpkg/commands.hash.cpp | 8 +- 4 files changed, 202 insertions(+), 149 deletions(-) diff --git a/toolsrc/include/vcpkg/commands.h b/toolsrc/include/vcpkg/commands.h index 4027e12f4..b6b1c56ab 100644 --- a/toolsrc/include/vcpkg/commands.h +++ b/toolsrc/include/vcpkg/commands.h @@ -120,7 +120,7 @@ namespace vcpkg::Commands namespace Hash { void perform_and_exit(const VcpkgCmdArguments& args, const VcpkgPaths& paths); - std::string get_file_hash(fs::path const& cmake_exe_path, fs::path const& path, std::string const& hash_type); + std::string get_file_hash(const VcpkgPaths& paths, fs::path const& path, std::string const& hash_type); } template diff --git a/toolsrc/src/vcpkg/build.cpp b/toolsrc/src/vcpkg/build.cpp index 7abd5ae0a..99ae5d2a3 100644 --- a/toolsrc/src/vcpkg/build.cpp +++ b/toolsrc/src/vcpkg/build.cpp @@ -396,23 +396,160 @@ namespace vcpkg::Build return {BuildResult::SUCCEEDED, std::move(bcf)}; } - ExtendedBuildResult build_package(const VcpkgPaths& paths, - const BuildPackageConfig& config, - const StatusParagraphs& status_db) + static ExtendedBuildResult do_build_package_and_clean_buildtrees(const VcpkgPaths& paths, + const PreBuildInfo& pre_build_info, + const PackageSpec& spec, + const std::string& abi_tag, + const BuildPackageConfig& config, + const StatusParagraphs& status_db) { + auto result = do_build_package(paths, pre_build_info, spec, abi_tag, config, status_db); + + if (config.build_package_options.clean_buildtrees == CleanBuildtrees::YES) + { + auto& fs = paths.get_filesystem(); + const fs::path buildtrees_dir = paths.buildtrees / config.scf.core_paragraph->name; + auto buildtree_files = fs.get_files_non_recursive(buildtrees_dir); + for (auto&& file : buildtree_files) + { + if (fs.is_directory(file) && file.filename() != "src") + { + std::error_code ec; + fs.remove_all(file, ec); + } + } + } + + return result; + } + + struct AbiEntry + { + std::string key; + std::string value; + }; + + struct AbiTagAndFile + { + std::string tag; + fs::path tag_file; + }; + + static Optional compute_abi_tag(const VcpkgPaths& paths, + const BuildPackageConfig& config, + const PreBuildInfo& pre_build_info, + Span dependency_abis) + { + if (!GlobalState::g_binary_caching) return nullopt; + auto& fs = paths.get_filesystem(); const Triplet& triplet = config.triplet; + const std::string& name = config.scf.core_paragraph->name; + + std::vector abi_tag_entries; + + abi_tag_entries.insert(abi_tag_entries.end(), dependency_abis.begin(), dependency_abis.end()); + + abi_tag_entries.emplace_back( + AbiEntry{"portfile", Commands::Hash::get_file_hash(paths, config.port_dir / "portfile.cmake", "SHA1")}); + abi_tag_entries.emplace_back( + AbiEntry{"control", Commands::Hash::get_file_hash(paths, config.port_dir / "CONTROL", "SHA1")}); + + abi_tag_entries.emplace_back(AbiEntry{"triplet", pre_build_info.triplet_abi_tag}); + + std::string features = Strings::join(";", config.feature_list); + abi_tag_entries.emplace_back(AbiEntry{"features", features}); - struct AbiEntry + if (config.build_package_options.use_head_version == UseHeadVersion::YES) + abi_tag_entries.emplace_back(AbiEntry{"head", ""}); + + std::string full_abi_info = + Strings::join("", abi_tag_entries, [](const AbiEntry& p) { return p.key + " " + p.value + "\n"; }); + + if (GlobalState::debugging) { - std::string key; - std::string value; - }; + System::println("[DEBUG] "); + for (auto&& entry : abi_tag_entries) + { + System::println("[DEBUG] %s|%s", entry.key, entry.value); + } + System::println("[DEBUG] "); + } - std::vector abi_tag_entries; + auto abi_tag_entries_missing = abi_tag_entries; + Util::stable_keep_if(abi_tag_entries_missing, [](const AbiEntry& p) { return p.value.empty(); }); - const PackageSpec spec = - PackageSpec::from_name_and_triplet(config.scf.core_paragraph->name, triplet).value_or_exit(VCPKG_LINE_INFO); + if (abi_tag_entries_missing.empty()) + { + std::error_code ec; + fs.create_directories(paths.buildtrees / name, ec); + auto abi_file_path = paths.buildtrees / name / (triplet.canonical_name() + ".vcpkg_abi_info.txt"); + fs.write_contents(abi_file_path, full_abi_info); + + return AbiTagAndFile{Commands::Hash::get_file_hash(paths, abi_file_path, "SHA1"), abi_file_path}; + } + else + { + System::println( + "Warning: binary caching disabled because abi keys are missing values:\n%s", + Strings::join("", abi_tag_entries_missing, [](const AbiEntry& e) { return " " + e.key + "\n"; })); + + return nullopt; + } + } + + static void decompress_archive(const VcpkgPaths& paths, const PackageSpec& spec, const fs::path& archive_path) + { + auto& fs = paths.get_filesystem(); + + auto pkg_path = paths.package_dir(spec); + std::error_code ec; + fs.remove_all(pkg_path, ec); + fs.create_directories(pkg_path, ec); + auto files = fs.get_files_non_recursive(pkg_path); + Checks::check_exit(VCPKG_LINE_INFO, files.empty(), "unable to clear path: %s", pkg_path.u8string()); + +#if defined(_WIN32) + auto&& _7za = paths.get_7za_exe(); + + System::cmd_execute_clean(Strings::format( + R"("%s" x "%s" -o"%s" -y >nul)", _7za.u8string(), archive_path.u8string(), pkg_path.u8string())); +#else + System::cmd_execute_clean(Strings::format( + R"(unzip -qq "%s" "-d%s")", archive_path.u8string(), pkg_path.u8string())); +#endif + } + + static void compress_archive(const VcpkgPaths& paths, const PackageSpec& spec, const fs::path& tmp_archive_path) + { + auto& fs = paths.get_filesystem(); + + std::error_code ec; + + fs.remove(tmp_archive_path, ec); + Checks::check_exit( + VCPKG_LINE_INFO, !fs.exists(tmp_archive_path), "Could not remove file: %s", tmp_archive_path.u8string()); +#if defined(_WIN32) + auto&& _7za = paths.get_7za_exe(); + + System::cmd_execute_clean(Strings::format( + R"("%s" a "%s" "%s\*" >nul)", + _7za.u8string(), + tmp_archive_path.u8string(), + paths.package_dir(spec).u8string())); +#else + System::cmd_execute_clean(Strings::format( + R"(cd '%s' && zip --quiet -r '%s' *)", paths.package_dir(spec).u8string(), tmp_archive_path.u8string())); +#endif + } + + ExtendedBuildResult build_package(const VcpkgPaths& paths, + const BuildPackageConfig& config, + const StatusParagraphs& status_db) + { + auto& fs = paths.get_filesystem(); + const Triplet& triplet = config.triplet; + const std::string& name = config.scf.core_paragraph->name; std::vector required_fspecs = compute_required_feature_specs(config, status_db); @@ -422,7 +559,7 @@ namespace vcpkg::Build // Find all features that aren't installed. This destroys required_fspecs. Util::unstable_keep_if(required_fspecs, [&](FeatureSpec const& fspec) { - return !status_db.is_installed(fspec) && fspec.name() != spec.name(); + return !status_db.is_installed(fspec) && fspec.name() != name; }); if (!required_fspecs.empty()) @@ -430,109 +567,45 @@ namespace vcpkg::Build return {BuildResult::CASCADED_DUE_TO_MISSING_DEPENDENCIES, std::move(required_fspecs)}; } + const PackageSpec spec = + PackageSpec::from_name_and_triplet(config.scf.core_paragraph->name, triplet).value_or_exit(VCPKG_LINE_INFO); + + std::vector dependency_abis; + // dep_pspecs was not destroyed for (auto&& pspec : dep_pspecs) { if (pspec == spec) continue; auto status_it = status_db.find_installed(pspec); Checks::check_exit(VCPKG_LINE_INFO, status_it != status_db.end()); - abi_tag_entries.emplace_back( + dependency_abis.emplace_back( AbiEntry{status_it->get()->package.spec.name(), status_it->get()->package.abi}); } - const fs::path& cmake_exe_path = paths.get_cmake_exe(); - - if (GlobalState::g_binary_caching) - { - abi_tag_entries.emplace_back(AbiEntry{ - "portfile", Commands::Hash::get_file_hash(cmake_exe_path, config.port_dir / "portfile.cmake", "SHA1")}); - abi_tag_entries.emplace_back(AbiEntry{ - "control", Commands::Hash::get_file_hash(cmake_exe_path, config.port_dir / "CONTROL", "SHA1")}); - } - const auto pre_build_info = PreBuildInfo::from_triplet_file(paths, triplet); - abi_tag_entries.emplace_back(AbiEntry{"triplet", pre_build_info.triplet_abi_tag}); - std::string features = Strings::join(";", config.feature_list); - abi_tag_entries.emplace_back(AbiEntry{"features", features}); - - if (config.build_package_options.use_head_version == UseHeadVersion::YES) - abi_tag_entries.emplace_back(AbiEntry{"head", ""}); - - std::string full_abi_info = - Strings::join("", abi_tag_entries, [](const AbiEntry& p) { return p.key + " " + p.value + "\n"; }); - - std::string abi_tag; - - if (GlobalState::g_binary_caching) - { - if (GlobalState::debugging) - { - System::println("[DEBUG] "); - for (auto&& entry : abi_tag_entries) - { - System::println("[DEBUG] %s|%s", entry.key, entry.value); - } - System::println("[DEBUG] "); - } - - auto abi_tag_entries_missing = abi_tag_entries; - Util::stable_keep_if(abi_tag_entries_missing, [](const AbiEntry& p) { return p.value.empty(); }); - - if (abi_tag_entries_missing.empty()) - { - std::error_code ec; - fs.create_directories(paths.buildtrees / spec.name(), ec); - auto abi_file_path = paths.buildtrees / spec.name() / "vcpkg_abi_info"; - fs.write_contents(abi_file_path, full_abi_info); - - abi_tag = Commands::Hash::get_file_hash(paths.get_cmake_exe(), abi_file_path, "SHA1"); - } - else - { - System::println("Warning: binary caching disabled because abi keys are missing values:\n%s", - Strings::join("", abi_tag_entries_missing, [](const AbiEntry& e) { - return " " + e.key + "\n"; - })); - } - } + auto abi_tag_and_file = compute_abi_tag(paths, config, pre_build_info, dependency_abis); std::unique_ptr bcf; - auto archives_root_dir = paths.root / "archives"; - auto archive_name = abi_tag + ".zip"; - auto archive_subpath = abi_tag.empty() ? fs::path() : fs::u8path(abi_tag.substr(0, 2)) / archive_name; - auto archive_path = archives_root_dir / archive_subpath; - auto archive_tombstone_path = archives_root_dir / "fail" / archive_subpath; + auto maybe_abi_tag_and_file = abi_tag_and_file.get(); - auto found_archive = false; - - if (GlobalState::g_binary_caching && !abi_tag.empty()) + if (GlobalState::g_binary_caching && maybe_abi_tag_and_file) { + auto archives_root_dir = paths.root / "archives"; + auto archive_name = maybe_abi_tag_and_file->tag + ".zip"; + auto archive_subpath = fs::u8path(maybe_abi_tag_and_file->tag.substr(0, 2)) / archive_name; + auto archive_path = archives_root_dir / archive_subpath; + auto archive_tombstone_path = archives_root_dir / "fail" / archive_subpath; + if (fs.exists(archive_path)) { System::println("Using cached binary package: %s", archive_path.u8string()); - auto pkg_path = paths.package_dir(spec); - std::error_code ec; - fs.remove_all(pkg_path, ec); - fs.create_directories(pkg_path, ec); - auto files = fs.get_files_non_recursive(pkg_path); - Checks::check_exit(VCPKG_LINE_INFO, files.empty(), "unable to clear path: %s", pkg_path.u8string()); - -#if defined(_WIN32) - auto&& _7za = paths.get_7za_exe(); - - System::cmd_execute_clean(Strings::format( - R"("%s" x "%s" -o"%s" -y >nul)", _7za.u8string(), archive_path.u8string(), pkg_path.u8string())); -#else - System::cmd_execute_clean(Strings::format( - R"(unzip -qq "%s" "-d%s")", archive_path.u8string(), pkg_path.u8string())); -#endif + decompress_archive(paths, spec, archive_path); auto maybe_bcf = Paragraphs::try_load_cached_package(paths, spec); bcf = std::make_unique(std::move(maybe_bcf).value_or_exit(VCPKG_LINE_INFO)); - found_archive = true; return {BuildResult::SUCCEEDED, std::move(bcf)}; } else if (fs.exists(archive_tombstone_path)) @@ -540,75 +613,42 @@ namespace vcpkg::Build System::println("Found failure tombstone: %s", archive_tombstone_path.u8string()); return BuildResult::BUILD_FAILED; } - } - if (GlobalState::g_binary_caching && !abi_tag.empty()) - { System::println("Could not locate cached archive: %s", archive_path.u8string()); - } - ExtendedBuildResult result = do_build_package(paths, pre_build_info, spec, abi_tag, config, status_db); + ExtendedBuildResult result = do_build_package_and_clean_buildtrees( + paths, pre_build_info, spec, abi_tag_and_file.value_or(AbiTagAndFile{}).tag, config, status_db); + + std::error_code ec; + auto abi_file_in_package = paths.package_dir(spec) / "share" / spec.name() / "vcpkg_abi_info.txt"; + fs.copy_file(maybe_abi_tag_and_file->tag_file, abi_file_in_package, fs::stdfs::copy_options::none, ec); + Checks::check_exit(VCPKG_LINE_INFO, !ec, "Could not copy into file: %s", abi_file_in_package.u8string()); - if (GlobalState::g_binary_caching && !abi_tag.empty()) - { if (result.code == BuildResult::SUCCEEDED) { - auto tmp_archive_path = paths.buildtrees / spec.name() / (triplet.to_string() + ".zip"); + auto tmp_archive_path = paths.buildtrees / spec.name() / (spec.triplet().to_string() + ".zip"); - std::error_code ec; - fs.write_contents( - paths.package_dir(spec) / "share" / spec.name() / "vcpkg_abi_info.txt", full_abi_info, ec); - - fs.remove(tmp_archive_path, ec); - Checks::check_exit(VCPKG_LINE_INFO, - !fs.exists(tmp_archive_path), - "Could not remove file: %s", - tmp_archive_path.u8string()); -#if defined(_WIN32) - auto&& _7za = paths.get_7za_exe(); + compress_archive(paths, spec, tmp_archive_path); - System::cmd_execute_clean(Strings::format( - R"("%s" a "%s" "%s\*" >nul)", - _7za.u8string(), - tmp_archive_path.u8string(), - paths.package_dir(spec).u8string())); -#else - System::cmd_execute_clean(Strings::format( - R"(cd '%s' && zip --quiet -r '%s' *)", - paths.package_dir(spec).u8string(), - tmp_archive_path.u8string())); -#endif fs.create_directories(archive_path.parent_path(), ec); - fs.rename(tmp_archive_path, archive_path); System::println("Stored binary cache: %s", archive_path.u8string()); } else if (result.code == BuildResult::BUILD_FAILED || result.code == BuildResult::POST_BUILD_CHECKS_FAILED) { - // Build failed, so store failure archive - std::error_code ec; + // Build failed, so store tombstone archive fs.create_directories(archive_tombstone_path.parent_path(), ec); fs.write_contents(archive_tombstone_path, "", ec); } - } - if (config.build_package_options.clean_buildtrees == CleanBuildtrees::YES) + return result; + } + else { - auto& fs = paths.get_filesystem(); - const fs::path buildtrees_dir = paths.buildtrees / config.scf.core_paragraph->name; - auto buildtree_files = fs.get_files_non_recursive(buildtrees_dir); - for (auto&& file : buildtree_files) - { - if (fs.is_directory(file) && file.filename() != "src") - { - std::error_code ec; - fs.remove_all(file, ec); - } - } + return do_build_package_and_clean_buildtrees( + paths, pre_build_info, spec, abi_tag_and_file.value_or(AbiTagAndFile{}).tag, config, status_db); } - - return result; } const std::string& to_string(const BuildResult build_result) @@ -732,7 +772,7 @@ namespace vcpkg::Build { return it_hash->second; } - auto hash = Commands::Hash::get_file_hash(paths.get_cmake_exe(), triplet_file_path, "SHA1"); + auto hash = Commands::Hash::get_file_hash(paths, triplet_file_path, "SHA1"); s_hash_cache.emplace(triplet_file_path, hash); return hash; } diff --git a/toolsrc/src/vcpkg/commands.ci.cpp b/toolsrc/src/vcpkg/commands.ci.cpp index c43f25b40..e01072a0a 100644 --- a/toolsrc/src/vcpkg/commands.ci.cpp +++ b/toolsrc/src/vcpkg/commands.ci.cpp @@ -24,6 +24,7 @@ namespace vcpkg::Commands::CI Install::InstallSummary summary; }; + static constexpr StringLiteral OPTION_DRY_RUN = "--dry-run"; static constexpr StringLiteral OPTION_EXCLUDE = "--exclude"; static constexpr StringLiteral OPTION_XUNIT = "--x-xunit"; @@ -32,11 +33,14 @@ namespace vcpkg::Commands::CI {OPTION_XUNIT, "File to output results in XUnit format (internal)"}, }}; + static constexpr std::array CI_SWITCHES = { + {{OPTION_DRY_RUN, "Print out plan without execution"}}}; + const CommandStructure COMMAND_STRUCTURE = { Help::create_example_string("ci x64-windows"), - 0, + 1, SIZE_MAX, - {{}, CI_SETTINGS}, + {CI_SWITCHES, CI_SETTINGS}, nullptr, }; @@ -52,6 +56,8 @@ namespace vcpkg::Commands::CI exclusions_set.insert(exclusions.begin(), exclusions.end()); } + auto is_dry_run = Util::Sets::contains(options.switches, OPTION_DRY_RUN); + std::vector triplets; for (const std::string& triplet : args.command_arguments) { @@ -94,8 +100,15 @@ namespace vcpkg::Commands::CI } } - auto summary = Install::perform(action_plan, Install::KeepGoing::YES, paths, status_db); - results.push_back({triplet, std::move(summary)}); + if (is_dry_run) + { + Dependencies::print_plan(action_plan); + } + else + { + auto summary = Install::perform(action_plan, Install::KeepGoing::YES, paths, status_db); + results.push_back({triplet, std::move(summary)}); + } } for (auto&& result : results) diff --git a/toolsrc/src/vcpkg/commands.hash.cpp b/toolsrc/src/vcpkg/commands.hash.cpp index bbbbed036..cb0a8cc51 100644 --- a/toolsrc/src/vcpkg/commands.hash.cpp +++ b/toolsrc/src/vcpkg/commands.hash.cpp @@ -7,11 +7,11 @@ namespace vcpkg::Commands::Hash { - std::string get_file_hash(fs::path const& cmake_exe_path, fs::path const& path, std::string const& hash_type) + std::string get_file_hash(const VcpkgPaths& paths, fs::path const& path, std::string const& hash_type) { const std::string cmd_line = Strings::format( R"("%s" -E %ssum "%s")", - cmake_exe_path.u8string(), + paths.get_cmake_exe().u8string(), Strings::ascii_to_lowercase(hash_type), path.u8string()); @@ -48,12 +48,12 @@ namespace vcpkg::Commands::Hash if (args.command_arguments.size() == 1) { - auto hash = get_file_hash(paths.get_cmake_exe(), args.command_arguments[0], "SHA512"); + auto hash = get_file_hash(paths, args.command_arguments[0], "SHA512"); System::println(hash); } if (args.command_arguments.size() == 2) { - auto hash = get_file_hash(paths.get_cmake_exe(), args.command_arguments[0], args.command_arguments[1]); + auto hash = get_file_hash(paths, args.command_arguments[0], args.command_arguments[1]); System::println(hash); } -- cgit v1.2.3 From c5f93055a09629247236d1d7dca2c4aa9c1de7c9 Mon Sep 17 00:00:00 2001 From: Robert Schumacher Date: Wed, 14 Mar 2018 05:08:35 -0700 Subject: [vcpkg-cmake-toolchain] Only wrap find_package(Boost) if a boost library is installed. --- scripts/buildsystems/vcpkg.cmake | 14 ++------------ 1 file changed, 2 insertions(+), 12 deletions(-) diff --git a/scripts/buildsystems/vcpkg.cmake b/scripts/buildsystems/vcpkg.cmake index 196ddcb3c..10e3c3f13 100644 --- a/scripts/buildsystems/vcpkg.cmake +++ b/scripts/buildsystems/vcpkg.cmake @@ -190,23 +190,13 @@ macro(find_package name) if(EXISTS "${_VCPKG_INSTALLED_DIR}/${VCPKG_TARGET_TRIPLET}/share/${_vcpkg_lowercase_name}/vcpkg-cmake-wrapper.cmake") set(ARGS "${ARGV}") include(${_VCPKG_INSTALLED_DIR}/${VCPKG_TARGET_TRIPLET}/share/${_vcpkg_lowercase_name}/vcpkg-cmake-wrapper.cmake) - elseif("${name}" STREQUAL "Boost") - set(_Boost_USE_STATIC_LIBS ${Boost_USE_STATIC_LIBS}) - set(_Boost_USE_MULTITHREADED ${Boost_USE_MULTITHREADED}) - set(_Boost_USE_STATIC_RUNTIME ${Boost_USE_STATIC_RUNTIME}) - set(_Boost_COMPILER ${Boost_COMPILER}) + elseif("${name}" STREQUAL "Boost" AND EXISTS "${_VCPKG_INSTALLED_DIR}/${VCPKG_TARGET_TRIPLET}/include/boost") + # Checking for the boost headers disables this wrapper unless the user has installed at least one boost library unset(Boost_USE_STATIC_LIBS) unset(Boost_USE_MULTITHREADED) unset(Boost_USE_STATIC_RUNTIME) set(Boost_COMPILER "-vc140") _find_package(${ARGV}) - if(NOT Boost_FOUND) - set(Boost_USE_STATIC_LIBS ${_Boost_USE_STATIC_LIBS}) - set(Boost_USE_MULTITHREADED ${_Boost_USE_MULTITHREADED}) - set(Boost_USE_STATIC_RUNTIME ${_Boost_USE_STATIC_RUNTIME}) - set(Boost_COMPILER ${_Boost_COMPILER}) - _find_package(${ARGV}) - endif() elseif("${name}" STREQUAL "ICU") function(_vcpkg_find_in_list) list(FIND ARGV "COMPONENTS" COMPONENTS_IDX) -- cgit v1.2.3 From 4fb24d20ad848c37c9968d8bb7609c7790e27aef Mon Sep 17 00:00:00 2001 From: Robert Schumacher Date: Wed, 14 Mar 2018 10:55:07 -0700 Subject: [jemalloc] Fix corrupted patchfile --- ports/jemalloc/fix-cmakelists.patch | 2 +- ports/jemalloc/portfile.cmake | 1 + 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/ports/jemalloc/fix-cmakelists.patch b/ports/jemalloc/fix-cmakelists.patch index a19cb4050..3ba70544c 100644 --- a/ports/jemalloc/fix-cmakelists.patch +++ b/ports/jemalloc/fix-cmakelists.patch @@ -35,7 +35,7 @@ index 06e83ef..229e17a 100644 ${PROJECT_BINARY_DIR}/Debug CMAKE_COMPILE_PDB_OUTPUT_DIRECTORY_RELEASE @@ -754,6 +752,9 @@ if(WIN32) - COMPILE_PDB_NAME + COMPILE_PDB_NAME ${LIBJEMALLOCLIB} ) + if(NOT BUILD_SHARED_LIBS) diff --git a/ports/jemalloc/portfile.cmake b/ports/jemalloc/portfile.cmake index 3fe6fdbb7..527891666 100644 --- a/ports/jemalloc/portfile.cmake +++ b/ports/jemalloc/portfile.cmake @@ -20,6 +20,7 @@ vcpkg_apply_patches( ) vcpkg_configure_cmake( + DISABLE_PARALLEL_CONFIGURE SOURCE_PATH ${SOURCE_PATH} PREFER_NINJA OPTIONS -DGIT_FOUND=OFF -DCMAKE_DISABLE_FIND_PACKAGE_Git=ON -- cgit v1.2.3 From 01c4289d068e071f6ef2d64ac3328644a62a7f7b Mon Sep 17 00:00:00 2001 From: Robert Schumacher Date: Wed, 14 Mar 2018 11:34:59 -0700 Subject: [zeromq] Update --- ports/zeromq/CONTROL | 2 +- ports/zeromq/portfile.cmake | 6 +++--- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/ports/zeromq/CONTROL b/ports/zeromq/CONTROL index 2e876f6e1..c367a229a 100644 --- a/ports/zeromq/CONTROL +++ b/ports/zeromq/CONTROL @@ -1,3 +1,3 @@ Source: zeromq -Version: 20170908-18498f620f0f6d4076981ea16eb5760fe4d28dc2-2 +Version: 2018-03-14 Description: The ZeroMQ lightweight messaging kernel is a library which extends the standard socket interfaces with features traditionally provided by specialised messaging middleware products diff --git a/ports/zeromq/portfile.cmake b/ports/zeromq/portfile.cmake index e5a5d567b..ce12f60c1 100644 --- a/ports/zeromq/portfile.cmake +++ b/ports/zeromq/portfile.cmake @@ -3,8 +3,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO zeromq/libzmq - REF 18498f620f0f6d4076981ea16eb5760fe4d28dc2 - SHA512 0c4a5c72455411f47283da3cad381600101be19a62437ad8e2c38e5f18fb6d621a3136e402c6eb9ba153f3d6333da9902335c2dacd8405094d4d1269df28d4af + REF 59516ed51a5c8ce7e1de0d9f938141f68507dd3c + SHA512 3a7b9875cdc09e5b24acb007fe4052e879fccd6e326b93b0c1e3fcffc13964e4de04289bda050846fe7ac1281fbb7ee03874b44db1323dada518c809417a2129 HEAD_REF master ) @@ -31,7 +31,7 @@ vcpkg_install_cmake() vcpkg_copy_pdbs() -vcpkg_fixup_cmake_targets(CONFIG_PATH share/cmake/ZeroMQ) +vcpkg_fixup_cmake_targets(CONFIG_PATH CMake) file(READ ${CURRENT_PACKAGES_DIR}/share/zeromq/ZeroMQConfig.cmake _contents) if(VCPKG_LIBRARY_LINKAGE STREQUAL "dynamic") -- cgit v1.2.3 From 04030295c0bcd748a3766d5565d84f5c92f21c4c Mon Sep 17 00:00:00 2001 From: Alexander Karatarakis Date: Wed, 14 Mar 2018 15:30:25 -0700 Subject: [opencv] Fixes for contrib --- ports/opencv/CONTROL | 1 + ports/opencv/portfile.cmake | 6 ++++++ 2 files changed, 7 insertions(+) diff --git a/ports/opencv/CONTROL b/ports/opencv/CONTROL index c4d5adaac..5450f3906 100644 --- a/ports/opencv/CONTROL +++ b/ports/opencv/CONTROL @@ -24,6 +24,7 @@ Build-Depends: eigen3, glog, gflags, ceres Description: opencv_sfm module Feature: contrib +Build-Depends: opencv[flann] Description: opencv_contrib module Feature: cuda diff --git a/ports/opencv/portfile.cmake b/ports/opencv/portfile.cmake index 41e7b7406..78ed5fa51 100644 --- a/ports/opencv/portfile.cmake +++ b/ports/opencv/portfile.cmake @@ -66,6 +66,12 @@ if("contrib" IN_LIST FEATURES) SHA512 c16e60a6c4bb4de3ab39b876ae3c3f320ea56f69c93e9303bd2dff8760841dcd71be4161fff8bc71e8fe4fe8747fa8465d49d6bd8f5ebcdaea161f4bc2da7c93 ) + vcpkg_download_distfile(TINYDNN_ARCHIVE + URLS "https://github.com/tiny-dnn/tiny-dnn/archive/v1.0.0a3.tar.gz" + FILENAME "opencv-cache/tiny_dnn/adb1c512e09ca2c7a6faef36f9c53e59-v1.0.0a3.tar.gz" + SHA512 5f2c1a161771efa67e85b1fea395953b7744e29f61187ac5a6c54c912fb195b3aef9a5827135c3668bd0eeea5ae04a33cc433e1f6683e2b7955010a2632d168b + ) + function(download_opencv_3rdparty ID COMMIT HASH) if(NOT EXISTS "${DOWNLOADS}/opencv-cache/${ID}/${COMMIT}.stamp") vcpkg_download_distfile(OCV_DOWNLOAD -- cgit v1.2.3 From f2c7aeedc0154e3e1b19c5583721577a446b9f36 Mon Sep 17 00:00:00 2001 From: Claudio Fantacci Date: Thu, 15 Mar 2018 00:49:54 +0100 Subject: Fix PCL portfile debug/share error (#2996) Add missing file(REMOVE_RECURSE /debug/share) that was preventing post-build validation to complete successfully. --- ports/pcl/portfile.cmake | 1 + 1 file changed, 1 insertion(+) diff --git a/ports/pcl/portfile.cmake b/ports/pcl/portfile.cmake index ac92d40db..812e05674 100644 --- a/ports/pcl/portfile.cmake +++ b/ports/pcl/portfile.cmake @@ -76,6 +76,7 @@ vcpkg_fixup_cmake_targets(CONFIG_PATH share/pcl) vcpkg_copy_pdbs() file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include) +file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/share) if(BUILD_TOOLS) file(GLOB EXEFILES_RELEASE ${CURRENT_PACKAGES_DIR}/bin/*.exe) -- cgit v1.2.3 From f1e9e41e7d89780430c382db8ef1198f6ea83dd8 Mon Sep 17 00:00:00 2001 From: Robert Schumacher Date: Wed, 14 Mar 2018 16:53:23 -0700 Subject: [nlohmann-json] Update to 3.1.2 --- ports/nlohmann-json/CONTROL | 2 +- ports/nlohmann-json/portfile.cmake | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/ports/nlohmann-json/CONTROL b/ports/nlohmann-json/CONTROL index d32991c0d..b0eee2bf9 100644 --- a/ports/nlohmann-json/CONTROL +++ b/ports/nlohmann-json/CONTROL @@ -1,3 +1,3 @@ Source: nlohmann-json -Version: 3.1.0 +Version: 3.1.2 Description: JSON for Modern C++ diff --git a/ports/nlohmann-json/portfile.cmake b/ports/nlohmann-json/portfile.cmake index b186db817..44f7a86dc 100644 --- a/ports/nlohmann-json/portfile.cmake +++ b/ports/nlohmann-json/portfile.cmake @@ -1,11 +1,11 @@ include(vcpkg_common_functions) -set(SOURCE_VERSION 3.1.0) +set(SOURCE_VERSION 3.1.2) vcpkg_download_distfile(HEADER URLS "https://github.com/nlohmann/json/releases/download/v${SOURCE_VERSION}/json.hpp" FILENAME "nlohmann-json-${SOURCE_VERSION}.hpp" - SHA512 710a92f065cc7fc873db2e08158f285390b9ac38f1b0bc6bbfd9e52597574749fe1e90b114d3d750fcc9f79d7d53530242e57135d60675b35c23d1f948ad7ef2 + SHA512 05df0ad3338f0bca885c0aa9da523922b99016986a9b01426b13888c0febd83bf1f6f063886f6c75f8a656ef79abac6292fe442dc05b1897d546ba5b70be48a5 ) vcpkg_download_distfile(LICENSE -- cgit v1.2.3 From 3a056235b85f34573903a7dc325d45e66549b6ff Mon Sep 17 00:00:00 2001 From: Robert Schumacher Date: Wed, 14 Mar 2018 16:56:33 -0700 Subject: [vcpkg] Create minimal package structure even on failure --- toolsrc/src/vcpkg/build.cpp | 1 + 1 file changed, 1 insertion(+) diff --git a/toolsrc/src/vcpkg/build.cpp b/toolsrc/src/vcpkg/build.cpp index 99ae5d2a3..b71bdbf25 100644 --- a/toolsrc/src/vcpkg/build.cpp +++ b/toolsrc/src/vcpkg/build.cpp @@ -620,6 +620,7 @@ namespace vcpkg::Build paths, pre_build_info, spec, abi_tag_and_file.value_or(AbiTagAndFile{}).tag, config, status_db); std::error_code ec; + fs.create_directories(paths.package_dir(spec) / "share" / spec.name(), ec); auto abi_file_in_package = paths.package_dir(spec) / "share" / spec.name() / "vcpkg_abi_info.txt"; fs.copy_file(maybe_abi_tag_and_file->tag_file, abi_file_in_package, fs::stdfs::copy_options::none, ec); Checks::check_exit(VCPKG_LINE_INFO, !ec, "Could not copy into file: %s", abi_file_in_package.u8string()); -- cgit v1.2.3 From 7528c4d525419a418e8e0046f6650b833ad75fd7 Mon Sep 17 00:00:00 2001 From: Daniel Date: Fri, 16 Mar 2018 08:02:55 +0000 Subject: Fix boost build errors when vcpkg path has spaces (#3054) * Fix boost build errors when vcpkg path has spaces Add missing quotes in boost_serialization path * [boost-modular-build-helper] Bump version due to change * [boost-modular-build-helper] Quote mpi as well --- ports/boost-modular-build-helper/CONTROL | 2 +- ports/boost-modular-build-helper/Jamroot.jam | 4 ++-- ports/boost-modular-build-helper/user-config.jam | 4 ++-- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/ports/boost-modular-build-helper/CONTROL b/ports/boost-modular-build-helper/CONTROL index eb2257a01..d57815738 100644 --- a/ports/boost-modular-build-helper/CONTROL +++ b/ports/boost-modular-build-helper/CONTROL @@ -1,2 +1,2 @@ Source: boost-modular-build-helper -Version: 1 +Version: 2 diff --git a/ports/boost-modular-build-helper/Jamroot.jam b/ports/boost-modular-build-helper/Jamroot.jam index e498483c3..1e3dce89c 100644 --- a/ports/boost-modular-build-helper/Jamroot.jam +++ b/ports/boost-modular-build-helper/Jamroot.jam @@ -129,8 +129,8 @@ if "@PORT@" != "boost-serialization" { use-project /boost/serialization : . ; - lib boost_serialization : : @CURRENT_INSTALLED_DIR@/lib/@BOOST_LIB_PREFIX@boost_serialization@BOOST_LIB_RELEASE_SUFFIX@ release ; - lib boost_serialization : : @CURRENT_INSTALLED_DIR@/debug/lib/@BOOST_LIB_PREFIX@boost_serialization@BOOST_LIB_DEBUG_SUFFIX@ debug ; + lib boost_serialization : : "@CURRENT_INSTALLED_DIR@/lib/@BOOST_LIB_PREFIX@boost_serialization@BOOST_LIB_RELEASE_SUFFIX@" release ; + lib boost_serialization : : "@CURRENT_INSTALLED_DIR@/debug/lib/@BOOST_LIB_PREFIX@boost_serialization@BOOST_LIB_DEBUG_SUFFIX@" debug ; explicit boost_serialization ; } diff --git a/ports/boost-modular-build-helper/user-config.jam b/ports/boost-modular-build-helper/user-config.jam index e045d622b..bd3797283 100644 --- a/ports/boost-modular-build-helper/user-config.jam +++ b/ports/boost-modular-build-helper/user-config.jam @@ -28,8 +28,8 @@ if "@PORT@" = "boost-python" if "@PORT@" = "boost-mpi" { using mpi : : - @CURRENT_INSTALLED_DIR@/lib - @CURRENT_INSTALLED_DIR@/include + "@CURRENT_INSTALLED_DIR@/lib" + "@CURRENT_INSTALLED_DIR@/include" msmpi ; } -- cgit v1.2.3 From 33a8ee0a88b277dab4be336169f4b975f8c41cbb Mon Sep 17 00:00:00 2001 From: Robert Schumacher Date: Wed, 14 Mar 2018 01:42:30 -0700 Subject: [abseil][curl][chakracore][thrift] Upgrades --- ports/abseil/CONTROL | 2 +- ports/abseil/portfile.cmake | 4 ++-- ports/chakracore/CONTROL | 2 +- ports/chakracore/portfile.cmake | 4 ++-- ports/curl/0002_fix_uwp.patch | 4 ++-- ports/curl/CONTROL | 2 +- ports/thrift/CONTROL | 2 +- ports/thrift/portfile.cmake | 4 ++-- 8 files changed, 12 insertions(+), 12 deletions(-) diff --git a/ports/abseil/CONTROL b/ports/abseil/CONTROL index 37258b7b2..ff0550213 100644 --- a/ports/abseil/CONTROL +++ b/ports/abseil/CONTROL @@ -1,5 +1,5 @@ Source: abseil -Version: 2018-03-13 +Version: 2018-03-14 Description: an open-source collection designed to augment the C++ standard library. Abseil is an open-source collection of C++ library code designed to augment the C++ standard library. The Abseil library code is collected from Google's own C++ code base, has been extensively tested and used in production, and is the same code we depend on in our daily coding lives. In some cases, Abseil provides pieces missing from the C++ standard; in others, Abseil provides alternatives to the standard for special needs we've found through usage in the Google code base. We denote those cases clearly within the library code we provide you. diff --git a/ports/abseil/portfile.cmake b/ports/abseil/portfile.cmake index 526d93bae..f91867c70 100644 --- a/ports/abseil/portfile.cmake +++ b/ports/abseil/portfile.cmake @@ -7,8 +7,8 @@ endif() vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO abseil/abseil-cpp - REF 23ef7e11277a7a7709b70c362eea6b17cb932b34 - SHA512 86f83553b8da536c55660d2dd439f0dfc75d0c1839d83b0f5a1ab6f5016730bcac9d007873901789c71e77603276e85658a86ffa4691c60fabec29b593b49744 + REF 2661ed4998e8c5e9fa0a7f58b2d32eeab6544a70 + SHA512 07e1f66140883ae407646b3354b60457fd64df267e154cd7d10296bbae3a2d5c050202bcff5a2fdc6ecb4c6dab5bd7b35db3e321d4539085a40b52131d4e8e35 HEAD_REF master ) diff --git a/ports/chakracore/CONTROL b/ports/chakracore/CONTROL index 4ae901a2f..edd7eb1a1 100644 --- a/ports/chakracore/CONTROL +++ b/ports/chakracore/CONTROL @@ -1,3 +1,3 @@ Source: chakracore -Version: 1.8.1 +Version: 1.8.2 Description: Core part of the Chakra Javascript engine diff --git a/ports/chakracore/portfile.cmake b/ports/chakracore/portfile.cmake index 7e8d8ec6e..c056ab599 100644 --- a/ports/chakracore/portfile.cmake +++ b/ports/chakracore/portfile.cmake @@ -15,8 +15,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO Microsoft/ChakraCore - REF v1.8.1 - SHA512 203eaad21130fca9ac043952327f758947d41288ce9eb771bc469e768079a39cc517f86746d85ae270b04c5b7640d18d02f497a18cda05190dfaa68fdc16cbb9 + REF v1.8.2 + SHA512 6d4408311f0c3ff2c9895f59f34f12fb84797d130a562db7c2af27eb26edd3d46bf935dab4cd40c2ffc0dc853ad9bdf432a721cfded7836639858965b7eb67e9 HEAD_REF master ) diff --git a/ports/curl/0002_fix_uwp.patch b/ports/curl/0002_fix_uwp.patch index 8408177e8..111ca98e8 100644 --- a/ports/curl/0002_fix_uwp.patch +++ b/ports/curl/0002_fix_uwp.patch @@ -60,14 +60,14 @@ diff --git a/lib/ftp.c b/lib/ftp.c index 8042edf..3442df7 100644 --- a/lib/ftp.c +++ b/lib/ftp.c -@@ -4297,7 +4297,7 @@ CURLcode ftp_parse_url_path(struct connectdata *conn) +@@ -4260,7 +4260,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; CURLcode result = - Curl_urldecode(conn->data, data->state.path, 0, &path, &dlen, FALSE); + Curl_urldecode(conn->data, data->state.path, 0, &path, &dlen, TRUE); if(result) { diff --git a/lib/rand.c b/lib/rand.c index 2670af9..0d18d37 100644 diff --git a/ports/curl/CONTROL b/ports/curl/CONTROL index c273ec181..1f410c06a 100644 --- a/ports/curl/CONTROL +++ b/ports/curl/CONTROL @@ -1,5 +1,5 @@ Source: curl -Version: 7.59.0 +Version: 7_59_0-1 Build-Depends: zlib Description: A library for transferring data with URLs Default-Features: ssl diff --git a/ports/thrift/CONTROL b/ports/thrift/CONTROL index d7beee7e0..3dd5541a2 100644 --- a/ports/thrift/CONTROL +++ b/ports/thrift/CONTROL @@ -1,4 +1,4 @@ Source: thrift -Version: 2018-03-13 +Version: 2018-03-14 Build-Depends: zlib, libevent, openssl, boost-range, boost-smart-ptr, boost-date-time, boost-locale, boost-scope-exit Description: Apache Thrift is a software project spanning a variety of programming languages and use cases. Our goal is to make reliable, performant communication and data serialization across languages as efficient and seamless as possible. Originally developed at Facebook, Thrift was open sourced in April 2007 and entered the Apache Incubator in May, 2008. Thrift became an Apache TLP in October, 2010. diff --git a/ports/thrift/portfile.cmake b/ports/thrift/portfile.cmake index 123b760a7..05b0da9e0 100644 --- a/ports/thrift/portfile.cmake +++ b/ports/thrift/portfile.cmake @@ -15,8 +15,8 @@ vcpkg_find_acquire_program(BISON) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO apache/thrift - REF 8d55c47610b765b2bcdfaebb7ee8d22930e0bd0d - SHA512 ebca8605f6841826d506608ccf64a985dc97316daa02dfe67e0646761fcea85e8920b17678fb01bfd2dea0337b182316a31c98c79c4e2f4d03f1b342521123d5 + REF da9a9bac92550f676e170e600d4be24769e14835 + SHA512 bf7ba783ae5880d66fb71aa99f9c772509e32c0e35e786a3bfb839901d95efdd7bd27eddc74f7da3452aba176ff6f72cda3cc1e19b5cd808d9fbcd343bc0a403 HEAD_REF master ) -- cgit v1.2.3 From adb8edddbb8e019e04d43d096184d4d6613fece9 Mon Sep 17 00:00:00 2001 From: Robert Schumacher Date: Sat, 17 Mar 2018 20:10:17 -0700 Subject: [abseil][exiv2][jsonnet][ms-gsl][nuklear][re2][rs-core-lib][thrift][zeromq][zziplib] Upgrades --- ports/abseil/CONTROL | 2 +- ports/abseil/portfile.cmake | 4 ++-- ports/exiv2/CONTROL | 2 +- ports/exiv2/portfile.cmake | 4 ++-- ports/jsonnet/CONTROL | 2 +- ports/jsonnet/portfile.cmake | 4 ++-- ports/ms-gsl/CONTROL | 2 +- ports/ms-gsl/portfile.cmake | 4 ++-- ports/nuklear/CONTROL | 2 +- ports/nuklear/portfile.cmake | 4 ++-- ports/re2/CONTROL | 2 +- ports/re2/portfile.cmake | 4 ++-- ports/rs-core-lib/CONTROL | 2 +- ports/rs-core-lib/portfile.cmake | 4 ++-- ports/thrift/CONTROL | 2 +- ports/thrift/portfile.cmake | 4 ++-- ports/zeromq/CONTROL | 2 +- ports/zeromq/portfile.cmake | 4 ++-- ports/zziplib/CONTROL | 2 +- ports/zziplib/portfile.cmake | 4 ++-- 20 files changed, 30 insertions(+), 30 deletions(-) diff --git a/ports/abseil/CONTROL b/ports/abseil/CONTROL index ff0550213..011d38896 100644 --- a/ports/abseil/CONTROL +++ b/ports/abseil/CONTROL @@ -1,5 +1,5 @@ Source: abseil -Version: 2018-03-14 +Version: 2018-03-17 Description: an open-source collection designed to augment the C++ standard library. Abseil is an open-source collection of C++ library code designed to augment the C++ standard library. The Abseil library code is collected from Google's own C++ code base, has been extensively tested and used in production, and is the same code we depend on in our daily coding lives. In some cases, Abseil provides pieces missing from the C++ standard; in others, Abseil provides alternatives to the standard for special needs we've found through usage in the Google code base. We denote those cases clearly within the library code we provide you. diff --git a/ports/abseil/portfile.cmake b/ports/abseil/portfile.cmake index f91867c70..42052143d 100644 --- a/ports/abseil/portfile.cmake +++ b/ports/abseil/portfile.cmake @@ -7,8 +7,8 @@ endif() vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO abseil/abseil-cpp - REF 2661ed4998e8c5e9fa0a7f58b2d32eeab6544a70 - SHA512 07e1f66140883ae407646b3354b60457fd64df267e154cd7d10296bbae3a2d5c050202bcff5a2fdc6ecb4c6dab5bd7b35db3e321d4539085a40b52131d4e8e35 + REF eed36bfba04dbe8a08ec72e631c3b337e4f2db11 + SHA512 250911ccca6f21fafbd636e1d45bff748c53e31d0867e8f04bd73b1fbb5ecd261aa9d8e6d07ff610d58daed1dbe14e67db48b1f32a4ce41b3ac0abdde4b14146 HEAD_REF master ) diff --git a/ports/exiv2/CONTROL b/ports/exiv2/CONTROL index fbcb220c7..8411f4c86 100644 --- a/ports/exiv2/CONTROL +++ b/ports/exiv2/CONTROL @@ -1,4 +1,4 @@ Source: exiv2 -Version: 2018-02-25 +Version: 2018-03-17 Build-Depends: zlib, expat, libiconv Description: Image metadata library and tools http://www.exiv2.org diff --git a/ports/exiv2/portfile.cmake b/ports/exiv2/portfile.cmake index 2a0acc649..57515137b 100644 --- a/ports/exiv2/portfile.cmake +++ b/ports/exiv2/portfile.cmake @@ -3,8 +3,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO Exiv2/exiv2 - REF 28fa146d9758230ea65e2b89574095514aa50429 - SHA512 710020dd404d43edd268a9229f240222b185576d8c277884c57479d291d0f3145b6076d0225849c38ab2e618d113dbc61cd6a60d4545e2a44797a63a2f01a603 + REF a4a0516dc4b8b1376a5d9ca339c59c25e8799033 + SHA512 84ebac0e0aafbf610ae27fd00106a531e5ef1e37f8832c5d52070b0d4f8b8ebad367774f3d0ed4177137fab81d76e08937491b62b77aa73eb563cd7439a111cc HEAD_REF master ) diff --git a/ports/jsonnet/CONTROL b/ports/jsonnet/CONTROL index fafb3c255..f32796ca3 100644 --- a/ports/jsonnet/CONTROL +++ b/ports/jsonnet/CONTROL @@ -1,3 +1,3 @@ Source: jsonnet -Version: 2018-03-11 +Version: 2018-03-17 Description: Jsonnet - The data templating language diff --git a/ports/jsonnet/portfile.cmake b/ports/jsonnet/portfile.cmake index ca5df8b29..0041d7f2c 100644 --- a/ports/jsonnet/portfile.cmake +++ b/ports/jsonnet/portfile.cmake @@ -3,8 +3,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO google/jsonnet - REF c03e3e7f40bcf6f2f62168ad0f0fe21137e0c972 - SHA512 b4bad7591b1a23fcb88e58377f472016177581f9256b9e721eab6e762ad2ec947c432cd1b2f659de54cd9ef4d7a67e6c190152365f6093610697a4e720be2a89 + REF 9829acf280a64b58ad0b14c9f5c28fe8564ed13e + SHA512 5ddcc3d6bc91467da766ba0ed81251066e348db14d1fdf681bdd6c08189249d1c221dab73cc6bdf85465217aeda186f2f5c0eee11bb179435a52ff57be12d20e HEAD_REF master ) diff --git a/ports/ms-gsl/CONTROL b/ports/ms-gsl/CONTROL index c30927bb4..bc4ac2d1d 100644 --- a/ports/ms-gsl/CONTROL +++ b/ports/ms-gsl/CONTROL @@ -1,3 +1,3 @@ Source: ms-gsl -Version: 2018-03-07 +Version: 2018-03-17 Description: Microsoft implementation of the Guidelines Support Library \ No newline at end of file diff --git a/ports/ms-gsl/portfile.cmake b/ports/ms-gsl/portfile.cmake index 45c41f79c..c2ce611df 100644 --- a/ports/ms-gsl/portfile.cmake +++ b/ports/ms-gsl/portfile.cmake @@ -4,8 +4,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO Microsoft/GSL - REF c9e423d7cf2afb88672e31f55e4b30c53be7aae3 - SHA512 a6ea1897b931068384c0dad768202a0314f130cfc30fc6cc8307df14ac02c1842e196d87e30e85e1e3b48295f4f47780a5b3e7123937cb3c8efa9e3e10a596ed + REF d846fe50a3f0bb7767c7e087a05f4be95f4da0ec + SHA512 83560cb0c39b6a4781e916c6081ad2728296e1b19760ca1b6426a8431fb6d7093760a882c539dd77152f5892fe081b1795af6366ea91385bb10aba6adf27170f HEAD_REF master ) diff --git a/ports/nuklear/CONTROL b/ports/nuklear/CONTROL index 8874d2787..9d34a7d77 100644 --- a/ports/nuklear/CONTROL +++ b/ports/nuklear/CONTROL @@ -1,3 +1,3 @@ Source: nuklear -Version: 2018-03-07 +Version: 2018-03-17 Description: This is a minimal state immediate mode graphical user interface toolkit written in ANSI C and licensed under public domain diff --git a/ports/nuklear/portfile.cmake b/ports/nuklear/portfile.cmake index f052ee266..51b45286f 100644 --- a/ports/nuklear/portfile.cmake +++ b/ports/nuklear/portfile.cmake @@ -2,8 +2,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO vurtun/nuklear - REF 905b41f640d5ec901a99d343c95e97104292c2d9 - SHA512 b5d671950f411a99a4f7b0017550cc9448c2ab5743256c949895945664d914b78e35f931c4986d863563391cbee11185b94a03c86737cdbb4b3c4e63e0fdc383 + REF 20cd35c0fb379df3b8668e6319e87ada5081c99d + SHA512 a5cf3ecca15e6a8b8f7a4f7cf1122265831eac1152c6df6495b5e54654e948b05b2e349c46a581b51f6d94bb9c3d4f843f6acaffacd610f54dd45588b8cd5109 HEAD_REF master ) file(INSTALL ${SOURCE_PATH}/nuklear.h DESTINATION ${CURRENT_PACKAGES_DIR}/include) diff --git a/ports/re2/CONTROL b/ports/re2/CONTROL index 4155e0c64..0a1a4fb1d 100644 --- a/ports/re2/CONTROL +++ b/ports/re2/CONTROL @@ -1,3 +1,3 @@ Source: re2 -Version: 2018-03-07 +Version: 2018-03-17 Description: RE2 is a fast, safe, thread-friendly alternative to backtracking regular expression engines like those used in PCRE, Perl, and Python. It is a C++ library. \ No newline at end of file diff --git a/ports/re2/portfile.cmake b/ports/re2/portfile.cmake index 5274a4213..cec69eb6a 100644 --- a/ports/re2/portfile.cmake +++ b/ports/re2/portfile.cmake @@ -3,8 +3,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO google/re2 - REF c1ed8543f1b703ce200212bb5629ba69a2f9b63a - SHA512 399a7545d3ac678b068118271aaa710cfae2c9c38e27b07d880f04714bbb13a19c69b94d4acbdb459f199920fee4d3d1a7e23e22a364c89b3c8b7100ce9b208e + REF f2cc1aeb5de463c45d020c446cbcb028385b49f3 + SHA512 68df93cac6916cf5d944b57de505f7c592dcc66bbe003dbaffdf88cfd6648787a272740a861d8c8440ff2888434776141a7710b326907687285f8e9340be127c HEAD_REF master ) diff --git a/ports/rs-core-lib/CONTROL b/ports/rs-core-lib/CONTROL index af14306e0..03e5f4955 100644 --- a/ports/rs-core-lib/CONTROL +++ b/ports/rs-core-lib/CONTROL @@ -1,4 +1,4 @@ Source: rs-core-lib -Version: 2018-03-11 +Version: 2018-03-17 Description: Minimal common utilities by Ross Smith diff --git a/ports/rs-core-lib/portfile.cmake b/ports/rs-core-lib/portfile.cmake index 32a0befe2..47e31c9bf 100644 --- a/ports/rs-core-lib/portfile.cmake +++ b/ports/rs-core-lib/portfile.cmake @@ -3,8 +3,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO CaptainCrowbar/rs-core-lib - REF a0d287aada58586fc16e8cbb44b2d34eaabeff46 - SHA512 4b160552118dccd2faf076e397d59ff785b53ff2ba7fc5f4ccd338dcb7d0eec7e851071036b5c983ad1ddccbcb64653bf522507c687a11756089c054241ff21d + REF c5b4522c336cd2348c9b65b01802ef1c4865fca2 + SHA512 a720d2f4cf6ef9dda1ce3e6bccf1495a8d29d3765d7456a5e8b79342ddc13f68428d17ea1e2993cb181450b0c2dca4c377735eef0f2f2e8a6bd66e6f2b78fd6a HEAD_REF master ) diff --git a/ports/thrift/CONTROL b/ports/thrift/CONTROL index 3dd5541a2..0d8ba8c5a 100644 --- a/ports/thrift/CONTROL +++ b/ports/thrift/CONTROL @@ -1,4 +1,4 @@ Source: thrift -Version: 2018-03-14 +Version: 2018-03-17 Build-Depends: zlib, libevent, openssl, boost-range, boost-smart-ptr, boost-date-time, boost-locale, boost-scope-exit Description: Apache Thrift is a software project spanning a variety of programming languages and use cases. Our goal is to make reliable, performant communication and data serialization across languages as efficient and seamless as possible. Originally developed at Facebook, Thrift was open sourced in April 2007 and entered the Apache Incubator in May, 2008. Thrift became an Apache TLP in October, 2010. diff --git a/ports/thrift/portfile.cmake b/ports/thrift/portfile.cmake index 05b0da9e0..a80b4bb68 100644 --- a/ports/thrift/portfile.cmake +++ b/ports/thrift/portfile.cmake @@ -15,8 +15,8 @@ vcpkg_find_acquire_program(BISON) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO apache/thrift - REF da9a9bac92550f676e170e600d4be24769e14835 - SHA512 bf7ba783ae5880d66fb71aa99f9c772509e32c0e35e786a3bfb839901d95efdd7bd27eddc74f7da3452aba176ff6f72cda3cc1e19b5cd808d9fbcd343bc0a403 + REF b7084cbc0d377c59e045553add6f61215ed77854 + SHA512 0f3a4ba79b62c4a5f6809fe626adef63b0c0ab0024993146d946aa7de2eeb8e58086220be6a5d6ec41331fc827ce2a9b7ebe9b9b4b59d9d7307ce5f239430005 HEAD_REF master ) diff --git a/ports/zeromq/CONTROL b/ports/zeromq/CONTROL index c367a229a..6ff7822dd 100644 --- a/ports/zeromq/CONTROL +++ b/ports/zeromq/CONTROL @@ -1,3 +1,3 @@ Source: zeromq -Version: 2018-03-14 +Version: 2018-03-17 Description: The ZeroMQ lightweight messaging kernel is a library which extends the standard socket interfaces with features traditionally provided by specialised messaging middleware products diff --git a/ports/zeromq/portfile.cmake b/ports/zeromq/portfile.cmake index ce12f60c1..78d7f7a12 100644 --- a/ports/zeromq/portfile.cmake +++ b/ports/zeromq/portfile.cmake @@ -3,8 +3,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO zeromq/libzmq - REF 59516ed51a5c8ce7e1de0d9f938141f68507dd3c - SHA512 3a7b9875cdc09e5b24acb007fe4052e879fccd6e326b93b0c1e3fcffc13964e4de04289bda050846fe7ac1281fbb7ee03874b44db1323dada518c809417a2129 + REF 4d9fc8066fe75795e8ccd77526b16baa5615b6bf + SHA512 0ba3b52637ee367f78b63c36e8738b1e217dcbc739bf308b386e9269963a3d87f7670f5904bb2cee6702afac6fe05d51645ab3f897ee507e03ca735f22c91b60 HEAD_REF master ) diff --git a/ports/zziplib/CONTROL b/ports/zziplib/CONTROL index 2b7447609..4d4f7ea58 100644 --- a/ports/zziplib/CONTROL +++ b/ports/zziplib/CONTROL @@ -1,4 +1,4 @@ Source: zziplib -Version: 0.13.62-1 +Version: 0.13.69 Build-Depends: zlib Description: library providing read access on ZIP-archives diff --git a/ports/zziplib/portfile.cmake b/ports/zziplib/portfile.cmake index 68419be3b..2ff90af94 100644 --- a/ports/zziplib/portfile.cmake +++ b/ports/zziplib/portfile.cmake @@ -2,8 +2,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO gdraheim/zziplib - REF v0.13.68 - SHA512 e8a9976242acc04064ec239b9b929228370a946e5bd37092adcc1bda14605710a3850d39795d1937b609d1ab9a9a1998152f8c88b2dccc387ac6ec774d9cfce9 + REF v0.13.69 + SHA512 ade026289737f43ca92a8746818d87dd7618d473dbce159546ce9071c9e4cbe164a6b1c9efff16efb7aa0327b2ec6b34f3256c6bda19cd6e325703fffc810ef0 ) file(COPY ${CMAKE_CURRENT_LIST_DIR}/CMakeLists.txt DESTINATION ${SOURCE_PATH}) -- cgit v1.2.3 From bae7c95b22cff9ef667ce1780b839f1a386ed2d5 Mon Sep 17 00:00:00 2001 From: Robert Schumacher Date: Sun, 18 Mar 2018 00:33:00 -0700 Subject: [libjpeg-turbo] Disable GETENV/SETENV in UWP. See https://github.com/libjpeg-turbo/libjpeg-turbo/issues/203 --- ports/libjpeg-turbo/CONTROL | 2 +- ports/libjpeg-turbo/portfile.cmake | 11 +++++++++++ 2 files changed, 12 insertions(+), 1 deletion(-) diff --git a/ports/libjpeg-turbo/CONTROL b/ports/libjpeg-turbo/CONTROL index 2bb119dbc..fa72d68b0 100644 --- a/ports/libjpeg-turbo/CONTROL +++ b/ports/libjpeg-turbo/CONTROL @@ -1,3 +1,3 @@ Source: libjpeg-turbo -Version: 1.5.3 +Version: 1.5.3-1 Description: libjpeg-turbo is a JPEG image codec that uses SIMD instructions (MMX, SSE2, NEON, AltiVec) to accelerate baseline JPEG compression and decompression on x86, x86-64, ARM, and PowerPC systems. diff --git a/ports/libjpeg-turbo/portfile.cmake b/ports/libjpeg-turbo/portfile.cmake index 288960662..7f6bc4973 100644 --- a/ports/libjpeg-turbo/portfile.cmake +++ b/ports/libjpeg-turbo/portfile.cmake @@ -7,10 +7,17 @@ vcpkg_from_github( HEAD_REF master ) +vcpkg_download_distfile(GETENV_PATCH + URLS "https://github.com/libjpeg-turbo/libjpeg-turbo/commit/bd96b30b74fe166fc94218cfc64a097fafdcc05f.diff" + FILENAME "libjpeg-turbo-bd96b30b74fe166fc94218cfc64a097fafdcc05f.diff" + SHA512 4cd064521b5e4baba4adf972f9f574f6dd43a2cd3e3ad143ca2cdf0f165024406d4fd2ed094124d0c17c5370394140e82fdd892d3cdc49609acdf8f79db1758c +) + vcpkg_apply_patches( SOURCE_PATH ${SOURCE_PATH} PATCHES "${CMAKE_CURRENT_LIST_DIR}/add-options-for-exes-docs-headers.patch" "${CMAKE_CURRENT_LIST_DIR}/linux-cmake.patch" + "${GETENV_PATCH}" ) if(VCPKG_TARGET_ARCHITECTURE STREQUAL "arm" OR VCPKG_TARGET_ARCHITECTURE STREQUAL "arm64" OR (VCPKG_CMAKE_SYSTEM_NAME AND NOT VCPKG_CMAKE_SYSTEM_NAME STREQUAL "WindowsStore")) @@ -22,6 +29,10 @@ else() set(ENV{PATH} "$ENV{PATH};${NASM_EXE_PATH}") endif() +if(VCPKG_CMAKE_SYSTEM_NAME STREQUAL "WindowsStore") + set(ENV{_CL_} "-DNO_GETENV -DNO_PUTENV") +endif() + string(COMPARE EQUAL "${VCPKG_LIBRARY_LINKAGE}" "dynamic" ENABLE_SHARED) string(COMPARE EQUAL "${VCPKG_LIBRARY_LINKAGE}" "static" ENABLE_STATIC) string(COMPARE EQUAL "${VCPKG_CRT_LINKAGE}" "dynamic" WITH_CRT_DLL) -- cgit v1.2.3 From d9abd619fabb6aa6faab08d53ef08bf7f706390e Mon Sep 17 00:00:00 2001 From: Robert Schumacher Date: Sat, 17 Mar 2018 20:01:13 -0700 Subject: [gdal] Fix regression due to libmysql upgrade --- ports/gdal/CONTROL | 2 +- ports/gdal/no-my-bool.patch | 13 +++++++++++++ ports/gdal/no-mysql-global-h.patch | 13 +++++++++++++ ports/gdal/no-mysql-sys-h.patch | 13 +++++++++++++ ports/gdal/portfile.cmake | 8 ++++++-- 5 files changed, 46 insertions(+), 3 deletions(-) create mode 100644 ports/gdal/no-my-bool.patch create mode 100644 ports/gdal/no-mysql-global-h.patch create mode 100644 ports/gdal/no-mysql-sys-h.patch diff --git a/ports/gdal/CONTROL b/ports/gdal/CONTROL index b84dc29e1..c958ac671 100644 --- a/ports/gdal/CONTROL +++ b/ports/gdal/CONTROL @@ -1,4 +1,4 @@ Source: gdal -Version: 2.2.2 +Version: 2.2.2-1 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 diff --git a/ports/gdal/no-my-bool.patch b/ports/gdal/no-my-bool.patch new file mode 100644 index 000000000..1ed0279ee --- /dev/null +++ b/ports/gdal/no-my-bool.patch @@ -0,0 +1,13 @@ +diff --git a/ogr/ogrsf_frmts/mysql/ogrmysqldatasource.cpp b/ogr/ogrsf_frmts/mysql/ogrmysqldatasource.cpp +index 8733af9..f49d862 100644 +--- a/ogr/ogrsf_frmts/mysql/ogrmysqldatasource.cpp ++++ b/ogr/ogrsf_frmts/mysql/ogrmysqldatasource.cpp +@@ -259,7 +259,7 @@ int OGRMySQLDataSource::Open( const char * pszNewName, char** papszOpenOptionsIn + // Enable automatic reconnection + // Must be called after mysql_real_connect() on MySQL < 5.0.19 + // and at any point on more recent versions. +- my_bool reconnect = 1; ++ bool reconnect = 1; + mysql_options(hConn, MYSQL_OPT_RECONNECT, &reconnect); + } + diff --git a/ports/gdal/no-mysql-global-h.patch b/ports/gdal/no-mysql-global-h.patch new file mode 100644 index 000000000..57ff89ce3 --- /dev/null +++ b/ports/gdal/no-mysql-global-h.patch @@ -0,0 +1,13 @@ +diff --git a/ogr/ogrsf_frmts/mysql/ogr_mysql.h b/ogr/ogrsf_frmts/mysql/ogr_mysql.h +index 76a6762..b2f0fcb 100644 +--- a/ogr/ogrsf_frmts/mysql/ogr_mysql.h ++++ b/ogr/ogrsf_frmts/mysql/ogr_mysql.h +@@ -43,7 +43,7 @@ + #pragma warning( disable : 4211 ) /* nonstandard extension used : redefined extern to static */ + #endif + +-#include ++/* #include */ /* Mysql 8+ no longer ships with my_global.h */ + #include + + #ifdef _MSC_VER diff --git a/ports/gdal/no-mysql-sys-h.patch b/ports/gdal/no-mysql-sys-h.patch new file mode 100644 index 000000000..951425386 --- /dev/null +++ b/ports/gdal/no-mysql-sys-h.patch @@ -0,0 +1,13 @@ +diff --git a/ogr/ogrsf_frmts/mysql/ogrmysqldatasource.cpp b/ogr/ogrsf_frmts/mysql/ogrmysqldatasource.cpp +index e694bbd..8733af9 100644 +--- a/ogr/ogrsf_frmts/mysql/ogrmysqldatasource.cpp ++++ b/ogr/ogrsf_frmts/mysql/ogrmysqldatasource.cpp +@@ -44,7 +44,7 @@ + #pragma clang diagnostic ignored "-Wunknown-pragmas" + #pragma clang diagnostic ignored "-Wdocumentation" + #endif +-#include ++/*#include mysql 8.1 no longer ships with my_sys.h*/ + #ifdef __clang__ + #pragma clang diagnostic pop + #endif diff --git a/ports/gdal/portfile.cmake b/ports/gdal/portfile.cmake index 5ee981d6c..10e2ceab8 100644 --- a/ports/gdal/portfile.cmake +++ b/ports/gdal/portfile.cmake @@ -1,5 +1,5 @@ if (TRIPLET_SYSTEM_ARCH MATCHES "arm") - message(FATAL_ERROR " ARM is currently not supported.") + message(FATAL_ERROR "ARM is currently not supported.") endif() if(VCPKG_LIBRARY_LINKAGE STREQUAL "static") @@ -16,12 +16,13 @@ vcpkg_download_distfile(ARCHIVE SHA512 b886238a7915c97f4acec5920dabe959d1ab15a8be0bc31ba0d05ad69d1d7d96f864faf0aa82921fa1a1b40b733744202b86f2f45ff63d6518cd18a53f3544a8 ) -# Extract source into archictecture specific directory, because GDALs' nmake based build currently does not +# Extract source into architecture 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-2.2.2) set(SOURCE_PATH_RELEASE ${CURRENT_BUILDTREES_DIR}/src-${TARGET_TRIPLET}-release/gdal-2.2.2) foreach(BUILD_TYPE debug release) + file(REMOVE_RECURSE ${CURRENT_BUILDTREES_DIR}/src-${TARGET_TRIPLET}-${BUILD_TYPE}) 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-2.2.2 @@ -29,6 +30,9 @@ foreach(BUILD_TYPE debug release) ${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 + ${CMAKE_CURRENT_LIST_DIR}/no-mysql-global-h.patch + ${CMAKE_CURRENT_LIST_DIR}/no-mysql-sys-h.patch + ${CMAKE_CURRENT_LIST_DIR}/no-my-bool.patch ) endforeach() -- cgit v1.2.3 From 56560864e9cca01645fa19c65db9742d85a3e381 Mon Sep 17 00:00:00 2001 From: Daniel Strommen Date: Sun, 18 Mar 2018 04:31:30 -0700 Subject: Include windows.h before including consoleapi.h (#3050) * Include windows.h before including consoleapi.h Issue: cpython fails to build against Windows Insider Preview SDK 17115 Root Cause: Failure to include windows.h before other Windows headers (consoleapi.h) Solution: Include windows.h before consoleapi.h If you don't include Windows.h before other Windows headers, then your code is likely to break with new versions of the Windows Platform SDK, as headers move around or new intraheader dependencies are added. That is what happened here. * Remove redundant consoleapi.h The documented header for all the console API's is windows.h, which includes wincon.h which includes consoleapi.h. Consoleapi.h used to also include windows.h, but this caused a circular dependency. So, adjusting this to only include windows.h and omit the consoleapi.h which is redundant. * [python3] formatting --- ports/python3/0004-Fix-iomodule-for-RS4-SDK.patch | 12 +++++++++++ ports/python3/portfile.cmake | 25 +++++++++-------------- 2 files changed, 22 insertions(+), 15 deletions(-) create mode 100644 ports/python3/0004-Fix-iomodule-for-RS4-SDK.patch diff --git a/ports/python3/0004-Fix-iomodule-for-RS4-SDK.patch b/ports/python3/0004-Fix-iomodule-for-RS4-SDK.patch new file mode 100644 index 000000000..a0efc8d1c --- /dev/null +++ b/ports/python3/0004-Fix-iomodule-for-RS4-SDK.patch @@ -0,0 +1,12 @@ +diff --git a/Modules/_io/_iomodule.c b/Modules/_io/_iomodule.c +--- a/Modules/_io/_iomodule.c ++++ b/Modules/_io/_iomodule.c +@@ -21,7 +21,7 @@ + #endif /* HAVE_SYS_STAT_H */ + + #ifdef MS_WINDOWS +-#include ++#include + #endif + + /* Various interned strings */ diff --git a/ports/python3/portfile.cmake b/ports/python3/portfile.cmake index 9bb50b70c..6285f9a9b 100644 --- a/ports/python3/portfile.cmake +++ b/ports/python3/portfile.cmake @@ -1,17 +1,4 @@ -# 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 = -# VCPKG_TARGET_ARCHITECTURE = target architecture (x64, x86, arm) -# if (VCPKG_LIBRARY_LINKAGE STREQUAL dynamic AND VCPKG_CRT_LINKAGE STREQUAL static) - # Because the patches patch the same file, they have to be applied in the correct order - # In this scenario, only the second patch needs to be applied, which doesn't work message(STATUS "Warning: Dynamic library with static CRT is not supported. Building static library.") set(VCPKG_LIBRARY_LINKAGE static) endif() @@ -29,8 +16,16 @@ vcpkg_from_github( REF v${PYTHON_VERSION} SHA512 32cca5e344ee66f08712ab5533e5518f724f978ec98d985f7612d0bd8d7f5cac25625363c9eead192faf1806d4ea3393515f72ba962a2a0bed26261e56d8c637 HEAD_REF master - ) +) + +vcpkg_apply_patches( + SOURCE_PATH ${TEMP_SOURCE_PATH} + PATCHES + ${CMAKE_CURRENT_LIST_DIR}/0004-Fix-iomodule-for-RS4-SDK.patch +) + # We need per-triplet directories because we need to patch the project files differently based on the linkage +# Because the patches patch the same file, they have to be applied in the correct order file(COPY ${TEMP_SOURCE_PATH} DESTINATION ${SOURCE_PATH}) set(SOURCE_PATH ${SOURCE_PATH}/cpython-${PYTHON_VERSION}) @@ -87,4 +82,4 @@ endif() file(COPY ${SOURCE_PATH}/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/python${PYTHON_VERSION_MAJOR}) file(RENAME ${CURRENT_PACKAGES_DIR}/share/python${PYTHON_VERSION_MAJOR}/LICENSE ${CURRENT_PACKAGES_DIR}/share/python${PYTHON_VERSION_MAJOR}/copyright) -vcpkg_copy_pdbs() \ No newline at end of file +vcpkg_copy_pdbs() -- cgit v1.2.3 From dcb940790b97b5518807a0e8af382dc418d84fbf Mon Sep 17 00:00:00 2001 From: Stefano Sinigardi Date: Sun, 18 Mar 2018 12:31:54 +0100 Subject: [msmpi] update to v9.0 (#3058) --- ports/msmpi/CONTROL | 2 +- ports/msmpi/portfile.cmake | 15 +++++++-------- 2 files changed, 8 insertions(+), 9 deletions(-) diff --git a/ports/msmpi/CONTROL b/ports/msmpi/CONTROL index a7f9f38ef..27e27074a 100644 --- a/ports/msmpi/CONTROL +++ b/ports/msmpi/CONTROL @@ -1,3 +1,3 @@ Source: msmpi -Version: 8.1 +Version: 9.0 Description: Microsoft MPI diff --git a/ports/msmpi/portfile.cmake b/ports/msmpi/portfile.cmake index 0992f5f5d..7933f2361 100644 --- a/ports/msmpi/portfile.cmake +++ b/ports/msmpi/portfile.cmake @@ -2,16 +2,16 @@ include(vcpkg_common_functions) set(SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src/msmpi-8.1) vcpkg_download_distfile(SDK_ARCHIVE - URLS "https://download.microsoft.com/download/D/B/B/DBB64BA1-7B51-43DB-8BF1-D1FB45EACF7A/msmpisdk.msi" - FILENAME "msmpisdk-8.1.msi" - SHA512 a0cfb713865257b812c19644286fc0d02ec57ce2a0bea066fead4e0ff18b545a0787065ab748f8dd335bb2fa486911aab54c1b842993b7b685c5832c014a63bf + URLS "https://download.microsoft.com/download/2/E/C/2EC96D7F-687B-4613-80F6-E10F670A2D97/msmpisdk.msi" + FILENAME "msmpisdk-9.0.msi" + SHA512 f80cc7619c42a5a0975224c5a0ab6d4085a97ab9a1480318cd72db2f600db52fb81d3959a2a9e0dbd9412b02d0814b8191dd4745bbde397110210e05960628b4 ) macro(download_msmpi_redistributable_package) vcpkg_download_distfile(REDIST_ARCHIVE - URLS "https://download.microsoft.com/download/D/B/B/DBB64BA1-7B51-43DB-8BF1-D1FB45EACF7A/MSMpiSetup.exe" - FILENAME "MSMpiSetup-8.1.exe" - SHA512 92ae65f3d52e786e39dffedabdf48255b4985a075993e626f5f59674e9ffaedbf33a4725e8f142b21468e24cd6d3e49f3d91da0fbda1867784cc93300c12c96b + URLS "https://download.microsoft.com/download/2/E/C/2EC96D7F-687B-4613-80F6-E10F670A2D97/msmpisetup.exe" + FILENAME "msmpisetup-9.0.exe" + SHA512 ad1cc3bc74e4c9c3c0f304395df9468e729e0acd9c77c8c6c806e88eadf4693811d29e608ffb459fcb6f4a20f61946ef4ac2e411aac49fb8f8d5aaddd10d4554 ) endmacro() @@ -20,7 +20,7 @@ endmacro() # We always want the ProgramFiles folder even on a 64-bit machine (not the ProgramFilesx86 folder) 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") +set(MSMPI_EXPECTED_FULL_VERSION "9.0.12497") if(EXISTS "${SYSTEM_MPIEXEC_FILEPATH}") set(MPIEXEC_VERSION_LOGNAME "mpiexec-version") @@ -31,7 +31,6 @@ if(EXISTS "${SYSTEM_MPIEXEC_FILEPATH}") ) file(READ ${CURRENT_BUILDTREES_DIR}/${MPIEXEC_VERSION_LOGNAME}-out.log MPIEXEC_OUTPUT) - # Note: v8.1.1 was released with version 8.1.12438.1091. This is compatible with 8.1.12438.1084 (the version above), so ignore the fourth version number. 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() -- cgit v1.2.3 From be0e6434371d200f0ebec3543f73436817cf1e3f Mon Sep 17 00:00:00 2001 From: Mateusz Loskot Date: Sun, 18 Mar 2018 12:36:55 +0100 Subject: Update FAQ about cleaning downloads and build trees (#3044) * Update FAQ about cleaning downloads and build trees Answers #2202 and #2538 * [vcpkg-docs] Add packages folder to list of temporary folders --- docs/about/faq.md | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/docs/about/faq.md b/docs/about/faq.md index cb711e384..b345b4fd0 100644 --- a/docs/about/faq.md +++ b/docs/about/faq.md @@ -72,6 +72,10 @@ A lower level mechanism to achieve the same as the `vcpkg integrate project` NuG ``` +## How can I remove temporary files? + +You can save some disk space by completely removing the `packages\`, `buildtrees\`, and `downloads\` folders. + ## How is CMake used internally by Vcpkg? Vcpkg uses CMake internally as a build scripting language. This is because CMake is already an extremely common build system for cross-platform open source libraries and is becoming very popular for C++ projects in general. It is easy to acquire on Windows, does not require system-wide installation, and legible for unfamiliar users. -- cgit v1.2.3 From 55e2cccc19ad8a8f03ac9f27799babc7f15d9d92 Mon Sep 17 00:00:00 2001 From: Ugo Pattacini Date: Sun, 18 Mar 2018 13:13:40 +0100 Subject: purged empty directory in qt5 (#3028) --- ports/qt5-declarative/portfile.cmake | 2 ++ ports/qt5-tools/portfile.cmake | 2 ++ 2 files changed, 4 insertions(+) diff --git a/ports/qt5-declarative/portfile.cmake b/ports/qt5-declarative/portfile.cmake index 63ce79746..1075c9c72 100644 --- a/ports/qt5-declarative/portfile.cmake +++ b/ports/qt5-declarative/portfile.cmake @@ -3,3 +3,5 @@ include(vcpkg_common_functions) include(${CURRENT_INSTALLED_DIR}/share/qt5modularscripts/qt_modular_library.cmake) qt_modular_library(qtdeclarative 49b8b50932b73ea39da14ac3425044193dfd64eabceadba379aa01cf2fc141177f9870c387caf1cf93ce09e8b197828a54b8d9fcefc4d9cdf400a6c6dd9a9e90) + + file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/tools/qt5-declarative/platforminputcontexts) \ No newline at end of file diff --git a/ports/qt5-tools/portfile.cmake b/ports/qt5-tools/portfile.cmake index 10eefa959..a79a1b134 100644 --- a/ports/qt5-tools/portfile.cmake +++ b/ports/qt5-tools/portfile.cmake @@ -3,3 +3,5 @@ include(vcpkg_common_functions) include(${CURRENT_INSTALLED_DIR}/share/qt5modularscripts/qt_modular_library.cmake) qt_modular_library(qttools afce063e167de96dfa264cfd27dc8d80c23ef091a30f4f8119575cae83f39716c3b332427630b340f518b82d6396cca1893f28e00f3c667ba201d7e4fc2aefe1) + +file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}//tools/qt5-tools/platforminputcontexts) \ No newline at end of file -- cgit v1.2.3 From d253123055e6bdfb181c6a8a14a63e2d6fc68cad Mon Sep 17 00:00:00 2001 From: Jacob Zhong Date: Sun, 18 Mar 2018 20:24:19 +0800 Subject: Add options and documentation for env command (#3007) * [vcpkg] Add options and documentation for env command * [vcpkg-env] Cleanup. Add tools/*. --- toolsrc/include/vcpkg/base/system.h | 5 +++- toolsrc/src/vcpkg/base/system.cpp | 15 +++++++++-- toolsrc/src/vcpkg/commands.env.cpp | 54 ++++++++++++++++++++++++++++++++----- toolsrc/src/vcpkg/help.cpp | 6 +---- 4 files changed, 66 insertions(+), 14 deletions(-) diff --git a/toolsrc/include/vcpkg/base/system.h b/toolsrc/include/vcpkg/base/system.h index 31034f6b4..b2faf69bb 100644 --- a/toolsrc/include/vcpkg/base/system.h +++ b/toolsrc/include/vcpkg/base/system.h @@ -1,5 +1,7 @@ #pragma once +#include + #include #include #include @@ -38,7 +40,8 @@ namespace vcpkg::System std::string output; }; - int cmd_execute_clean(const CStringView cmd_line); + int cmd_execute_clean(const CStringView cmd_line, + const std::unordered_map& extra_env = {}); int cmd_execute(const CStringView cmd_line); diff --git a/toolsrc/src/vcpkg/base/system.cpp b/toolsrc/src/vcpkg/base/system.cpp index e24098f97..f339afa51 100644 --- a/toolsrc/src/vcpkg/base/system.cpp +++ b/toolsrc/src/vcpkg/base/system.cpp @@ -153,12 +153,12 @@ namespace vcpkg::System R"(powershell -NoProfile -ExecutionPolicy Bypass -Command "& {& '%s' %s}")", script_path.u8string(), args); } - int cmd_execute_clean(const CStringView cmd_line) + int cmd_execute_clean(const CStringView cmd_line, const std::unordered_map& extra_env) { #if defined(_WIN32) static const std::string SYSTEM_ROOT = get_environment_variable("SystemRoot").value_or_exit(VCPKG_LINE_INFO); static const std::string SYSTEM_32 = SYSTEM_ROOT + R"(\system32)"; - static const std::string NEW_PATH = Strings::format( + std::string NEW_PATH = Strings::format( R"(Path=%s;%s;%s\Wbem;%s\WindowsPowerShell\v1.0\)", SYSTEM_32, SYSTEM_ROOT, SYSTEM_32, SYSTEM_32); std::vector env_wstrings = { @@ -224,11 +224,22 @@ namespace vcpkg::System env_cstr.push_back(L'\0'); } + if (extra_env.find("PATH") != extra_env.end()) + NEW_PATH += Strings::format(";%s", extra_env.find("PATH")->second); env_cstr.append(Strings::to_utf16(NEW_PATH)); env_cstr.push_back(L'\0'); env_cstr.append(L"VSLANG=1033"); env_cstr.push_back(L'\0'); + for (auto item : extra_env) + { + if (item.first == "PATH") continue; + env_cstr.append(Strings::to_utf16(item.first)); + env_cstr.push_back(L'='); + env_cstr.append(Strings::to_utf16(item.second)); + env_cstr.push_back(L'\0'); + } + STARTUPINFOW startup_info; memset(&startup_info, 0, sizeof(STARTUPINFOW)); startup_info.cb = sizeof(STARTUPINFOW); diff --git a/toolsrc/src/vcpkg/commands.env.cpp b/toolsrc/src/vcpkg/commands.env.cpp index f3beef6cd..d078baedb 100644 --- a/toolsrc/src/vcpkg/commands.env.cpp +++ b/toolsrc/src/vcpkg/commands.env.cpp @@ -1,5 +1,6 @@ #include "pch.h" +#include #include #include #include @@ -7,25 +8,66 @@ namespace vcpkg::Commands::Env { + static constexpr StringLiteral OPTION_BIN = "--bin"; + static constexpr StringLiteral OPTION_INCLUDE = "--include"; + static constexpr StringLiteral OPTION_DEBUG_BIN = "--debug-bin"; + static constexpr StringLiteral OPTION_TOOLS = "--tools"; + static constexpr StringLiteral OPTION_PYTHON = "--python"; + + static constexpr std::array SWITCHES = {{ + {OPTION_BIN, "Add installed bin/ to PATH"}, + {OPTION_INCLUDE, "Add installed include/ to INCLUDE"}, + {OPTION_DEBUG_BIN, "Add installed debug/bin/ to PATH"}, + {OPTION_TOOLS, "Add installed tools/*/ to PATH"}, + {OPTION_PYTHON, "Add installed python/ to PYTHONPATH"}, + }}; + const CommandStructure COMMAND_STRUCTURE = { Help::create_example_string("env --triplet x64-windows"), 0, 0, - {}, + {SWITCHES, {}}, nullptr, }; - void perform_and_exit(const VcpkgCmdArguments& args, const VcpkgPaths& paths, const Triplet& default_triplet) + void perform_and_exit(const VcpkgCmdArguments& args, const VcpkgPaths& paths, const Triplet& triplet) { - args.parse_arguments(COMMAND_STRUCTURE); + const auto& fs = paths.get_filesystem(); + + const ParsedArguments options = args.parse_arguments(COMMAND_STRUCTURE); - const auto pre_build_info = Build::PreBuildInfo::from_triplet_file(paths, default_triplet); + const auto pre_build_info = Build::PreBuildInfo::from_triplet_file(paths, triplet); const Toolset& toolset = paths.get_toolset(pre_build_info); auto env_cmd = Build::make_build_env_cmd(pre_build_info, toolset); + + std::unordered_map extra_env = {}; + const bool add_bin = Util::Sets::contains(options.switches, OPTION_BIN); + const bool add_include = Util::Sets::contains(options.switches, OPTION_INCLUDE); + const bool add_debug_bin = Util::Sets::contains(options.switches, OPTION_DEBUG_BIN); + const bool add_tools = Util::Sets::contains(options.switches, OPTION_TOOLS); + const bool add_python = Util::Sets::contains(options.switches, OPTION_PYTHON); + + std::vector path_vars; + if (add_bin) path_vars.push_back((paths.installed / triplet.to_string() / "bin").u8string()); + if (add_debug_bin) path_vars.push_back((paths.installed / triplet.to_string() / "debug" / "bin").u8string()); + if (add_include) extra_env.emplace("INCLUDE", (paths.installed / triplet.to_string() / "include").u8string()); + if (add_tools) + { + auto tools_dir = paths.installed / triplet.to_string() / "tools"; + auto tool_files = fs.get_files_non_recursive(tools_dir); + path_vars.push_back(tools_dir.u8string()); + for (auto&& tool_dir : tool_files) + { + if (fs.is_directory(tool_dir)) path_vars.push_back(tool_dir.u8string()); + } + } + if (add_python) extra_env.emplace("PYTHONPATH", (paths.installed / triplet.to_string() / "python").u8string()); + if (path_vars.size() > 0) extra_env.emplace("PATH", Strings::join(";", path_vars)); + if (env_cmd.empty()) - System::cmd_execute_clean("cmd"); + System::cmd_execute_clean("cmd", extra_env); else - System::cmd_execute_clean(env_cmd + " && cmd"); + System::cmd_execute_clean(env_cmd + " && cmd", extra_env); Checks::exit_success(VCPKG_LINE_INFO); } diff --git a/toolsrc/src/vcpkg/help.cpp b/toolsrc/src/vcpkg/help.cpp index b7d355742..743619937 100644 --- a/toolsrc/src/vcpkg/help.cpp +++ b/toolsrc/src/vcpkg/help.cpp @@ -98,14 +98,10 @@ namespace vcpkg::Help " vcpkg create \n" " [archivename] Create a new package\n" " vcpkg owns Search for files in installed packages\n" - " vcpkg cache List cached compiled packages\n" + " vcpkg env Creates a clean shell environment for development or compiling.\n" " vcpkg version Display version information\n" " vcpkg contact Display contact information to send feedback\n" "\n" - //"internal commands:\n" - //" --check-build-deps \n" - //" --create-binary-control \n" - //"\n" "Options:\n" " --triplet Specify the target architecture triplet.\n" " (default: %%VCPKG_DEFAULT_TRIPLET%%, see 'vcpkg help triplet')\n" -- cgit v1.2.3 From 1e73b6550cdea2792defdf8a142c24f4b80317a4 Mon Sep 17 00:00:00 2001 From: Youngho Kim Date: Fri, 16 Mar 2018 16:32:44 +0900 Subject: bug fixed for librtmp on vcpkg bug fixed for librtmp on vcpkg because of wrong find_package name for zlib and openssl --- ports/librtmp/CMakeLists.txt | 4 ++-- ports/librtmp/CONTROL | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/ports/librtmp/CMakeLists.txt b/ports/librtmp/CMakeLists.txt index f0f78e5f1..9751f3d73 100644 --- a/ports/librtmp/CMakeLists.txt +++ b/ports/librtmp/CMakeLists.txt @@ -2,8 +2,8 @@ cmake_minimum_required(VERSION 3.8) project(librtmp C) -find_package(zlib REQUIRED) -find_package(openssl REQUIRED) +find_package(ZLIB REQUIRED) +find_package(OpenSSL REQUIRED) include_directories(${ZLIB_INCLUDE_DIRS}) include_directories(${CMAKE_CURRENT_SOURCE_DIR}) diff --git a/ports/librtmp/CONTROL b/ports/librtmp/CONTROL index 9a93c8b47..957f5ee16 100644 --- a/ports/librtmp/CONTROL +++ b/ports/librtmp/CONTROL @@ -1,4 +1,4 @@ Source: librtmp -Version: 2.4 +Version: 2.4-1 Build-Depends: zlib, openssl Description: RTMPDump Real-Time Messaging Protocol API -- cgit v1.2.3 From d20fccad10b017e413c71dfd785a14470816ea2b Mon Sep 17 00:00:00 2001 From: Ivy Snow Date: Mon, 19 Mar 2018 11:17:08 +0800 Subject: [curl] fix a dependency error: "Error: Unable to satisfy dependency ssl:x86-windows of curl[http2]:x86-windows" --- ports/curl/CONTROL | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/ports/curl/CONTROL b/ports/curl/CONTROL index 1f410c06a..18518e1ea 100644 --- a/ports/curl/CONTROL +++ b/ports/curl/CONTROL @@ -1,5 +1,5 @@ Source: curl -Version: 7_59_0-1 +Version: 7_59_0-2 Build-Depends: zlib Description: A library for transferring data with URLs Default-Features: ssl @@ -12,7 +12,7 @@ Feature: non-http Description: Enables protocols beyond HTTP/HTTPS/HTTP2 Feature: http2 -Build-Depends: nghttp2, ssl +Build-Depends: nghttp2, curl[ssl] Description: HTTP2 support Feature: ssl -- cgit v1.2.3 From 06b4452da67663a5097a67b0ba1be7b02e50aecd Mon Sep 17 00:00:00 2001 From: Johnny Willemsen Date: Mon, 19 Mar 2018 13:26:16 +0100 Subject: Update to ACE 6.4.7 (#3059) * ports/ace/CONTROL: * ports/ace/portfile.cmake: --- ports/ace/CONTROL | 2 +- ports/ace/portfile.cmake | 6 +++--- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/ports/ace/CONTROL b/ports/ace/CONTROL index 596d5a7a7..9baa763dc 100644 --- a/ports/ace/CONTROL +++ b/ports/ace/CONTROL @@ -1,3 +1,3 @@ Source: ace -Version: 6.4.6 +Version: 6.4.7 Description: The ADAPTIVE Communication Environment diff --git a/ports/ace/portfile.cmake b/ports/ace/portfile.cmake index 63239138b..25eeabb0b 100644 --- a/ports/ace/portfile.cmake +++ b/ports/ace/portfile.cmake @@ -9,9 +9,9 @@ endif() include(vcpkg_common_functions) set(SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src/ACE_wrappers/ace) vcpkg_download_distfile(ARCHIVE - URLS "http://download.dre.vanderbilt.edu/previous_versions/ACE-6.4.6.zip" - FILENAME "ACE-6.4.6.zip" - SHA512 3b1ced19bb42bd753e0a43990f1d8f84dc57f5650c7c972f2e849d4ce3aa1db08673cf14fbc0607d7dbc9b9f95f33f72a5d7f0f11cd993beba528f80eb525e69 + URLS "http://download.dre.vanderbilt.edu/previous_versions/ACE-6.4.7.zip" + FILENAME "ACE-6.4.7.zip" + SHA512 931c7e5902f3999ed05c13f9d2c53a605e9b59b4ce78f33b42238ac25286aa13fb510e2f780b6aea9505d03edf834109ab4481870327fec1b5bb11d29cfbafdc ) vcpkg_extract_source_archive(${ARCHIVE}) -- cgit v1.2.3 From 029fdb2a6cd71aaebb40ac8f97986fdbee9a74be Mon Sep 17 00:00:00 2001 From: Yann Lanthony Date: Mon, 19 Mar 2018 13:26:33 +0100 Subject: [openimageio] update to 1.8.9 (#3051) * [openimageio] update to 1.8.9 * [openimageio] remove '-1' suffix from version name --- ports/openimageio/CONTROL | 4 ++-- ports/openimageio/portfile.cmake | 5 +++-- 2 files changed, 5 insertions(+), 4 deletions(-) diff --git a/ports/openimageio/CONTROL b/ports/openimageio/CONTROL index 3e498bf56..88a66b315 100644 --- a/ports/openimageio/CONTROL +++ b/ports/openimageio/CONTROL @@ -1,4 +1,4 @@ Source: openimageio -Version: 1.7.15-2 -Description: An library for reading and writing images, and a bunch of related classes, utilities, and application +Version: 1.8.9 +Description: A library for reading and writing images, and a bunch of related classes, utilities, and application Build-Depends: libjpeg-turbo, tiff, libpng, openexr, boost-thread, boost-smart-ptr, boost-foreach, boost-regex, boost-type-traits, boost-static-assert, boost-unordered, boost-config, boost-algorithm, boost-filesystem, boost-system, boost-thread, boost-asio, boost-random diff --git a/ports/openimageio/portfile.cmake b/ports/openimageio/portfile.cmake index cc62bd58c..21a5899c1 100644 --- a/ports/openimageio/portfile.cmake +++ b/ports/openimageio/portfile.cmake @@ -3,8 +3,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO OpenImageIO/oiio - REF Release-1.7.15 - SHA512 5b83961a77de36082e0a3abeac8015f9455504680d7437777524a9ac17ac7994df2a2ad1af86a884cf17c1afcd71a36a30e24711cba8d8a30511c05e36d7fadc + REF Release-1.8.9 + SHA512 300eab0d2e7277c46550339d72af59b3ab2232d296b4d46808575015075cdbb9dd911e9b335c0d10bf6d95ebde907240af0f4828d422aca091f82491693dfef3 HEAD_REF master ) @@ -47,6 +47,7 @@ vcpkg_copy_pdbs() file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/doc) file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/doc) file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include) +file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/share) # Handle copyright file(COPY ${SOURCE_PATH}/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/openimageio) -- cgit v1.2.3 From 371cc14917223f427fa42889b774bc6b5539f864 Mon Sep 17 00:00:00 2001 From: Robert Schumacher Date: Mon, 19 Mar 2018 08:27:40 -0700 Subject: [azure-storage-cpp] Upgrade to 3.2.1 --- ports/azure-storage-cpp/CONTROL | 2 +- ports/azure-storage-cpp/portfile.cmake | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/ports/azure-storage-cpp/CONTROL b/ports/azure-storage-cpp/CONTROL index 837aa8ae0..0da717ba7 100644 --- a/ports/azure-storage-cpp/CONTROL +++ b/ports/azure-storage-cpp/CONTROL @@ -1,5 +1,5 @@ Source: azure-storage-cpp -Version: 3.2.0 +Version: 3.2.1 Build-Depends: cpprestsdk, atlmfc Description: Microsoft Azure Storage Client SDK for C++ A client library for working with Microsoft Azure storage services including blobs, files, tables, and queues. This client library enables working with the Microsoft Azure storage services which include the blob service for storing binary and text data, the file service for storing binary and text data, the table service for storing structured non-relational data, and the queue service for storing messages that may be accessed by a client. Microsoft Azure Storage team's blog - http://blogs.msdn.com/b/windowsazurestorage/ diff --git a/ports/azure-storage-cpp/portfile.cmake b/ports/azure-storage-cpp/portfile.cmake index b5a4791c3..edac1e2a2 100644 --- a/ports/azure-storage-cpp/portfile.cmake +++ b/ports/azure-storage-cpp/portfile.cmake @@ -7,8 +7,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO Azure/azure-storage-cpp - REF v3.2.0 - SHA512 841c548986de743b508edd149441727e76f66ba09a99454006d2742547267046833062501e79ff2138d6bcad37740f7009cce4590bbdf40b48b935b989959267 + REF v3.2.1 + SHA512 8d1e8de439e52f53eb28b77e8adf394468f4861c2c4c1f79ec1437c72e3fc0bc871e4e2662ee58090748915b0f12ce6736a7cc6ede619d332686b9fb6a026c9f HEAD_REF master ) -- cgit v1.2.3 From 5968ebf9f4beae3a0662dfc6ba343b0be07a1241 Mon Sep 17 00:00:00 2001 From: Youngho Kim Date: Mon, 12 Mar 2018 22:13:14 +0900 Subject: [ffmpeg] Add options --- ports/ffmpeg/CONTROL | 31 +++++++++++++++++-- ports/ffmpeg/FindFFMPEG.cmake | 2 +- ports/ffmpeg/configure_opencv.patch | 11 +++++++ ports/ffmpeg/portfile.cmake | 59 +++++++++++++++++++++++++++++++++++-- 4 files changed, 98 insertions(+), 5 deletions(-) create mode 100644 ports/ffmpeg/configure_opencv.patch diff --git a/ports/ffmpeg/CONTROL b/ports/ffmpeg/CONTROL index 3ed4c4bac..2f635cc10 100644 --- a/ports/ffmpeg/CONTROL +++ b/ports/ffmpeg/CONTROL @@ -1,8 +1,35 @@ Source: ffmpeg -Version: 3.3.3-3 +Version: 3.3.3-4 Description: a library to decode, encode, transcode, mux, demux, stream, filter and play pretty much anything that humans and machines have created. FFmpeg is the leading multimedia framework, able to decode, encode, transcode, mux, demux, stream, filter and play pretty much anything that humans and machines have created. It supports the most obscure ancient formats up to the cutting edge. No matter if they were designed by some standards committee, the community or a corporation. It is also highly portable: FFmpeg compiles, runs, and passes our testing infrastructure FATE across Linux, Mac OS X, Microsoft Windows, the BSDs, Solaris, etc. under a wide variety of build environments, machine architectures, and configurations. +Feature: ffserver +Description: ffserver appplication support in ffmpeg + +Feature: ffplay +Description: ffplay appplication support in ffmpeg + +Feature: ffprobe +Description: ffprobe appplication support in ffmpeg + Feature: openssl -Build-Depends: openssl +Build-Depends: openssl, ffmpeg[nonfree] Description: openssl support in ffmpeg + +Feature: lzma +Build-Depends: liblzma +Description: lzma support in ffmpeg + +Feature: x264 +Build-Depends: x264, ffmpeg[gpl] +Description: x264 support in ffmpeg + +Feature: opencl +Build-Depends: opencl +Description: opencl support in ffmpeg + +Feature: nonfree +Description: allow nonfree and unredistributable libraries + +Feature: gpl +Description: allow GPL licensed libraries diff --git a/ports/ffmpeg/FindFFMPEG.cmake b/ports/ffmpeg/FindFFMPEG.cmake index ce6e7e600..bd373bfae 100644 --- a/ports/ffmpeg/FindFFMPEG.cmake +++ b/ports/ffmpeg/FindFFMPEG.cmake @@ -8,4 +8,4 @@ foreach(FFMPEG_SUBLIBRARY avformat avdevice avcodec avutil swscale) endforeach() list(APPEND FFMPEG_LIBRARIES wsock32 ws2_32 Secur32) -find_package_handle_standard_args(FFMPEG REQUIRED_VARS FFMPEG_LIBRARIES FFMPEG_INCLUDE_DIR) +find_package_handle_standard_args(FFMPEG REQUIRED_VARS FFMPEG_LIBRARIES FFMPEG_INCLUDE_DIRS) diff --git a/ports/ffmpeg/configure_opencv.patch b/ports/ffmpeg/configure_opencv.patch new file mode 100644 index 000000000..66678661e --- /dev/null +++ b/ports/ffmpeg/configure_opencv.patch @@ -0,0 +1,11 @@ +--- a/configure ++++ b/configure +@@ -5804,7 +5804,7 @@ + enabled libopencore_amrwb && require libopencore_amrwb opencore-amrwb/dec_if.h D_IF_init -lopencore-amrwb + enabled libopencv && { check_header opencv2/core/core_c.h && + { use_pkg_config opencv opencv2/core/core_c.h cvCreateImageHeader || +- require opencv opencv2/core/core_c.h cvCreateImageHeader -lopencv_core -lopencv_imgproc; } || ++ require opencv opencv2/core/core_c.h cvCreateImageHeader -lopencv_core341 -lopencv_imgproc341; } || + require_pkg_config opencv opencv/cxcore.h cvCreateImageHeader; } + enabled libopenh264 && require_pkg_config openh264 wels/codec_api.h WelsGetCodecVersion + enabled libopenjpeg && { { check_lib openjpeg-2.1/openjpeg.h opj_version -lopenjp2 -DOPJ_STATIC && add_cppflags -DOPJ_STATIC; } || diff --git a/ports/ffmpeg/portfile.cmake b/ports/ffmpeg/portfile.cmake index 56b467685..11c24ebc7 100644 --- a/ports/ffmpeg/portfile.cmake +++ b/ports/ffmpeg/portfile.cmake @@ -3,7 +3,7 @@ set(SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src/ffmpeg-3.3.3) vcpkg_download_distfile(ARCHIVE URLS "http://ffmpeg.org/releases/ffmpeg-3.3.3.tar.bz2" FILENAME "ffmpeg-3.3.3.tar.bz2" - SHA512 1cc63bf73356f4e618c0d3572a216bdf5689f10deff56b4262f6d740b0bee5a4b3eac234f45fca3d4d2da77903a507b4fba725b76d2d2070f31b6dae9e7a2dab + SHA512 1cc63bf73356f4e618c0d3572a216bdf5689f10deff56b4262f6d740b0bee5a4b3eac234f45fca3d4d2da77903a507b4fba725b76d2d2070f31b6dae9e7a2dab ) vcpkg_extract_source_archive(${ARCHIVE}) vcpkg_apply_patches( @@ -11,6 +11,7 @@ vcpkg_apply_patches( PATCHES ${CMAKE_CURRENT_LIST_DIR}/create-lib-libraries.patch ${CMAKE_CURRENT_LIST_DIR}/detect-openssl.patch + ${CMAKE_CURRENT_LIST_DIR}/configure_opencv.patch ) vcpkg_find_acquire_program(YASM) @@ -30,14 +31,66 @@ set(_csc_PROJECT_PATH ffmpeg) file(REMOVE_RECURSE ${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-dbg ${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-rel) -set(OPTIONS "--disable-ffmpeg --disable-ffprobe --disable-doc --enable-debug") +set(OPTIONS "--enable-asm --enable-yasm --disable-doc --enable-debug --disable-ffmpeg") set(OPTIONS "${OPTIONS} --enable-runtime-cpudetect") + +if("nonfree" IN_LIST FEATURES) + set(OPTIONS "${OPTIONS} --enable-nonfree") +endif() + +if("gpl" IN_LIST FEATURES) + set(OPTIONS "${OPTIONS} --enable-gpl") +endif() + if("openssl" IN_LIST FEATURES) set(OPTIONS "${OPTIONS} --enable-openssl") else() set(OPTIONS "${OPTIONS} --disable-openssl") endif() +if("ffplay" IN_LIST FEATURES) + set(OPTIONS "${OPTIONS} --enable-ffplay") +else() + set(OPTIONS "${OPTIONS} --disable-ffplay") +endif() + +if("ffserver" IN_LIST FEATURES) + set(OPTIONS "${OPTIONS} --enable-ffserver") +else() + set(OPTIONS "${OPTIONS} --disable-ffserver") +endif() + +if("ffprobe" IN_LIST FEATURES) + set(OPTIONS "${OPTIONS} --enable-ffprobe") +else() + set(OPTIONS "${OPTIONS} --disable-ffprobe") +endif() + +if("x264" IN_LIST FEATURES) + set(OPTIONS "${OPTIONS} --enable-libx264") +else() + set(OPTIONS "${OPTIONS} --disable-libx264") +endif() + +if("opencl" IN_LIST FEATURES) + set(OPTIONS "${OPTIONS} --enable-opencl") +else() + set(OPTIONS "${OPTIONS} --disable-opencl") +endif() + +if("lzma" IN_LIST FEATURES) + set(OPTIONS "${OPTIONS} --enable-lzma") +else() + set(OPTIONS "${OPTIONS} --disable-lzma") +endif() + +# bzip2's debug library is named "bz2d", which isn't found by ffmpeg +# if("bzip2" IN_LIST FEATURES) +# set(OPTIONS "${OPTIONS} --enable-bzip2") +# else() +# set(OPTIONS "${OPTIONS} --disable-bzip2") +# endif() + if(VCPKG_CMAKE_SYSTEM_NAME STREQUAL "WindowsStore") set(ENV{LIBPATH} "$ENV{LIBPATH};$ENV{_WKITS10}references\\windows.foundation.foundationcontract\\2.0.0.0\\;$ENV{_WKITS10}references\\windows.foundation.universalapicontract\\3.0.0.0\\") set(OPTIONS "${OPTIONS} --disable-programs --enable-cross-compile --target-os=win32 --arch=${VCPKG_TARGET_ARCHITECTURE}") @@ -68,6 +121,8 @@ if(VCPKG_LIBRARY_LINKAGE STREQUAL "dynamic") endif() endif() +message(STATUS "Building Options: ${OPTIONS}") + if(VCPKG_CRT_LINKAGE STREQUAL "dynamic") set(OPTIONS_DEBUG "${OPTIONS_DEBUG} --extra-cflags=-MDd --extra-cxxflags=-MDd") set(OPTIONS_RELEASE "${OPTIONS_RELEASE} --extra-cflags=-MD --extra-cxxflags=-MD") -- cgit v1.2.3 From 8bed099d4c4f7bbabc6c17ddbe082fe534121fd0 Mon Sep 17 00:00:00 2001 From: past-due <30942300+past-due@users.noreply.github.com> Date: Mon, 19 Mar 2018 15:15:56 -0400 Subject: [sdl2] Fix build failure when VCPKG_BUILD_TYPE is set --- ports/sdl2/portfile.cmake | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/ports/sdl2/portfile.cmake b/ports/sdl2/portfile.cmake index a3cb80e3f..5d7ac5314 100644 --- a/ports/sdl2/portfile.cmake +++ b/ports/sdl2/portfile.cmake @@ -58,9 +58,14 @@ if(NOT BINS) endif() if(NOT VCPKG_CMAKE_SYSTEM_NAME) - file(MAKE_DIRECTORY ${CURRENT_PACKAGES_DIR}/lib/manual-link ${CURRENT_PACKAGES_DIR}/debug/lib/manual-link) - file(RENAME ${CURRENT_PACKAGES_DIR}/lib/SDL2main.lib ${CURRENT_PACKAGES_DIR}/lib/manual-link/SDL2main.lib) - file(RENAME ${CURRENT_PACKAGES_DIR}/debug/lib/SDL2maind.lib ${CURRENT_PACKAGES_DIR}/debug/lib/manual-link/SDL2maind.lib) + if(NOT DEFINED VCPKG_BUILD_TYPE OR VCPKG_BUILD_TYPE STREQUAL "release") + file(MAKE_DIRECTORY ${CURRENT_PACKAGES_DIR}/lib/manual-link) + file(RENAME ${CURRENT_PACKAGES_DIR}/lib/SDL2main.lib ${CURRENT_PACKAGES_DIR}/lib/manual-link/SDL2main.lib) + endif() + if(NOT DEFINED VCPKG_BUILD_TYPE OR VCPKG_BUILD_TYPE STREQUAL "debug") + file(MAKE_DIRECTORY ${CURRENT_PACKAGES_DIR}/debug/lib/manual-link) + file(RENAME ${CURRENT_PACKAGES_DIR}/debug/lib/SDL2maind.lib ${CURRENT_PACKAGES_DIR}/debug/lib/manual-link/SDL2maind.lib) + endif() file(GLOB SHARE_FILES ${CURRENT_PACKAGES_DIR}/share/sdl2/*.cmake) foreach(SHARE_FILE ${SHARE_FILES}) -- cgit v1.2.3 From 76d63567f0ab7961d08e34e89d7899426c8c95e2 Mon Sep 17 00:00:00 2001 From: past-due <30942300+past-due@users.noreply.github.com> Date: Mon, 19 Mar 2018 14:59:21 -0400 Subject: [freetype] Fix build failures when VCPKG_BUILD_TYPE is set --- ports/freetype/portfile.cmake | 24 ++++++++++++++++-------- 1 file changed, 16 insertions(+), 8 deletions(-) diff --git a/ports/freetype/portfile.cmake b/ports/freetype/portfile.cmake index b0143e382..15e8aceab 100644 --- a/ports/freetype/portfile.cmake +++ b/ports/freetype/portfile.cmake @@ -33,17 +33,25 @@ file(RENAME ${CURRENT_PACKAGES_DIR}/include/freetype2/ft2build.h ${CURRENT_PACKA file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/include/freetype2) file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include) -file(READ ${CURRENT_PACKAGES_DIR}/debug/share/freetype/freetype-config-debug.cmake DEBUG_MODULE) -string(REPLACE "\${_IMPORT_PREFIX}" "\${_IMPORT_PREFIX}/debug" DEBUG_MODULE "${DEBUG_MODULE}") -string(REPLACE "${CURRENT_INSTALLED_DIR}" "\${_IMPORT_PREFIX}" DEBUG_MODULE "${DEBUG_MODULE}") -file(WRITE ${CURRENT_PACKAGES_DIR}/share/freetype/freetype-config-debug.cmake "${DEBUG_MODULE}") +if(NOT DEFINED VCPKG_BUILD_TYPE OR VCPKG_BUILD_TYPE STREQUAL "debug") + file(READ ${CURRENT_PACKAGES_DIR}/debug/share/freetype/freetype-config-debug.cmake DEBUG_MODULE) + string(REPLACE "\${_IMPORT_PREFIX}" "\${_IMPORT_PREFIX}/debug" DEBUG_MODULE "${DEBUG_MODULE}") + string(REPLACE "${CURRENT_INSTALLED_DIR}" "\${_IMPORT_PREFIX}" DEBUG_MODULE "${DEBUG_MODULE}") + file(WRITE ${CURRENT_PACKAGES_DIR}/share/freetype/freetype-config-debug.cmake "${DEBUG_MODULE}") +endif() -file(READ ${CURRENT_PACKAGES_DIR}/share/freetype/freetype-config-release.cmake RELEASE_MODULE) -string(REPLACE "${CURRENT_INSTALLED_DIR}" "\${_IMPORT_PREFIX}" RELEASE_MODULE "${RELEASE_MODULE}") -file(WRITE ${CURRENT_PACKAGES_DIR}/share/freetype/freetype-config-release.cmake "${RELEASE_MODULE}") +if(NOT DEFINED VCPKG_BUILD_TYPE OR VCPKG_BUILD_TYPE STREQUAL "release") + file(READ ${CURRENT_PACKAGES_DIR}/share/freetype/freetype-config-release.cmake RELEASE_MODULE) + string(REPLACE "${CURRENT_INSTALLED_DIR}" "\${_IMPORT_PREFIX}" RELEASE_MODULE "${RELEASE_MODULE}") + file(WRITE ${CURRENT_PACKAGES_DIR}/share/freetype/freetype-config-release.cmake "${RELEASE_MODULE}") +endif() # Fix the include dir [freetype2 -> freetype] -file(READ ${CURRENT_PACKAGES_DIR}/debug/share/freetype/freetype-config.cmake CONFIG_MODULE) +if(NOT DEFINED VCPKG_BUILD_TYPE OR VCPKG_BUILD_TYPE STREQUAL "debug") + file(READ ${CURRENT_PACKAGES_DIR}/debug/share/freetype/freetype-config.cmake CONFIG_MODULE) +else() #if(VCPKG_BUILD_TYPE STREQUAL "release") + file(READ ${CURRENT_PACKAGES_DIR}/share/freetype/freetype-config.cmake CONFIG_MODULE) +endif() string(REPLACE "\${_IMPORT_PREFIX}/include/freetype2" "\${_IMPORT_PREFIX}/include/freetype" CONFIG_MODULE "${CONFIG_MODULE}") file(WRITE ${CURRENT_PACKAGES_DIR}/share/freetype/freetype-config.cmake "${CONFIG_MODULE}") -- cgit v1.2.3 From 2a311cb01f005acb1878f4c24a77249680e301c8 Mon Sep 17 00:00:00 2001 From: past-due <30942300+past-due@users.noreply.github.com> Date: Mon, 19 Mar 2018 16:02:19 -0400 Subject: [chakracore] Fix build failure when VCPKG_BUILD_TYPE is set --- ports/chakracore/portfile.cmake | 50 ++++++++++++++++++++++------------------- 1 file changed, 27 insertions(+), 23 deletions(-) diff --git a/ports/chakracore/portfile.cmake b/ports/chakracore/portfile.cmake index c056ab599..daea20444 100644 --- a/ports/chakracore/portfile.cmake +++ b/ports/chakracore/portfile.cmake @@ -42,29 +42,33 @@ file(INSTALL ${BUILDTREE_PATH}/lib/jsrt/ChakraDebug.h DESTINATION ${CURRENT_PACKAGES_DIR}/include ) -file(INSTALL - ${BUILDTREE_PATH}/Build/VcBuild/bin/${TRIPLET_SYSTEM_ARCH}_debug/ChakraCore.dll - ${BUILDTREE_PATH}/Build/VcBuild/bin/${TRIPLET_SYSTEM_ARCH}_debug/ChakraCore.pdb - DESTINATION ${CURRENT_PACKAGES_DIR}/debug/bin -) -file(INSTALL - ${BUILDTREE_PATH}/Build/VcBuild/bin/${TRIPLET_SYSTEM_ARCH}_debug/Chakracore.lib - DESTINATION ${CURRENT_PACKAGES_DIR}/debug/lib -) -file(INSTALL - ${BUILDTREE_PATH}/Build/VcBuild/bin/${TRIPLET_SYSTEM_ARCH}_release/ChakraCore.dll - ${BUILDTREE_PATH}/Build/VcBuild/bin/${TRIPLET_SYSTEM_ARCH}_release/ChakraCore.pdb - DESTINATION ${CURRENT_PACKAGES_DIR}/bin -) -file(INSTALL - ${BUILDTREE_PATH}/Build/VcBuild/bin/${TRIPLET_SYSTEM_ARCH}_release/Chakracore.lib - DESTINATION ${CURRENT_PACKAGES_DIR}/lib -) -file(INSTALL - ${BUILDTREE_PATH}/Build/VcBuild/bin/${TRIPLET_SYSTEM_ARCH}_release/ch.exe - ${BUILDTREE_PATH}/Build/VcBuild/bin/${TRIPLET_SYSTEM_ARCH}_release/GCStress.exe - ${BUILDTREE_PATH}/Build/VcBuild/bin/${TRIPLET_SYSTEM_ARCH}_release/rl.exe - DESTINATION ${CURRENT_PACKAGES_DIR}/tools/chakracore) +if(NOT DEFINED VCPKG_BUILD_TYPE OR VCPKG_BUILD_TYPE STREQUAL "debug") + file(INSTALL + ${BUILDTREE_PATH}/Build/VcBuild/bin/${TRIPLET_SYSTEM_ARCH}_debug/ChakraCore.dll + ${BUILDTREE_PATH}/Build/VcBuild/bin/${TRIPLET_SYSTEM_ARCH}_debug/ChakraCore.pdb + DESTINATION ${CURRENT_PACKAGES_DIR}/debug/bin + ) + file(INSTALL + ${BUILDTREE_PATH}/Build/VcBuild/bin/${TRIPLET_SYSTEM_ARCH}_debug/Chakracore.lib + DESTINATION ${CURRENT_PACKAGES_DIR}/debug/lib + ) +endif() +if(NOT DEFINED VCPKG_BUILD_TYPE OR VCPKG_BUILD_TYPE STREQUAL "release") + file(INSTALL + ${BUILDTREE_PATH}/Build/VcBuild/bin/${TRIPLET_SYSTEM_ARCH}_release/ChakraCore.dll + ${BUILDTREE_PATH}/Build/VcBuild/bin/${TRIPLET_SYSTEM_ARCH}_release/ChakraCore.pdb + DESTINATION ${CURRENT_PACKAGES_DIR}/bin + ) + file(INSTALL + ${BUILDTREE_PATH}/Build/VcBuild/bin/${TRIPLET_SYSTEM_ARCH}_release/Chakracore.lib + DESTINATION ${CURRENT_PACKAGES_DIR}/lib + ) + file(INSTALL + ${BUILDTREE_PATH}/Build/VcBuild/bin/${TRIPLET_SYSTEM_ARCH}_release/ch.exe + ${BUILDTREE_PATH}/Build/VcBuild/bin/${TRIPLET_SYSTEM_ARCH}_release/GCStress.exe + ${BUILDTREE_PATH}/Build/VcBuild/bin/${TRIPLET_SYSTEM_ARCH}_release/rl.exe + DESTINATION ${CURRENT_PACKAGES_DIR}/tools/chakracore) +endif() vcpkg_copy_pdbs() file(INSTALL -- cgit v1.2.3 From 49a719b78a4c7feccc2aca970ec7fb242e1c121b Mon Sep 17 00:00:00 2001 From: Robert Schumacher Date: Mon, 19 Mar 2018 10:30:33 -0700 Subject: [libmysql] Use system dependencies to avoid ODR violations --- ports/libmysql/CONTROL | 4 +- ports/libmysql/portfile.cmake | 12 ++- ports/libmysql/system-libs.patch | 150 ++++++++++++++++++++++++++++++++++ scripts/cmake/vcpkg_build_cmake.cmake | 22 +++-- 4 files changed, 178 insertions(+), 10 deletions(-) create mode 100644 ports/libmysql/system-libs.patch diff --git a/ports/libmysql/CONTROL b/ports/libmysql/CONTROL index 6a069b78e..4af150af9 100644 --- a/ports/libmysql/CONTROL +++ b/ports/libmysql/CONTROL @@ -1,4 +1,4 @@ Source: libmysql -Version: 8.0.4 -Build-Depends: boost-algorithm, boost-geometry, boost-optional, boost-functional, boost-graph +Version: 8.0.4-1 +Build-Depends: boost-algorithm, boost-geometry, boost-optional, boost-functional, boost-graph, openssl, icu, libevent, liblzma, lz4, zlib Description: A MySQL client library for C development. diff --git a/ports/libmysql/portfile.cmake b/ports/libmysql/portfile.cmake index 6c60d0ccc..c9859c47b 100644 --- a/ports/libmysql/portfile.cmake +++ b/ports/libmysql/portfile.cmake @@ -22,7 +22,9 @@ vcpkg_from_github( vcpkg_apply_patches( SOURCE_PATH ${SOURCE_PATH} - PATCHES ${CMAKE_CURRENT_LIST_DIR}/ignore-boost-version.patch + PATCHES + ${CMAKE_CURRENT_LIST_DIR}/ignore-boost-version.patch + ${CMAKE_CURRENT_LIST_DIR}/system-libs.patch ) file(REMOVE_RECURSE ${SOURCE_PATH}/include/boost_1_65_0) @@ -44,9 +46,15 @@ vcpkg_configure_cmake( ${STACK_DIRECTION} -DWINDOWS_RUNTIME_MD=ON # Note: this disables _replacement_ of /MD with /MT. If /MT is specified, it will be preserved. -DIGNORE_BOOST_VERSION=ON + -DWITH_SSL=system + -DWITH_ICU=system + -DWITH_LIBEVENT=system + -DWITH_LZMA=system + -DWITH_LZ4=system + -DWITH_ZLIB=system ) -vcpkg_install_cmake() +vcpkg_install_cmake(ADD_BIN_TO_PATH) # delete debug headers file(REMOVE_RECURSE diff --git a/ports/libmysql/system-libs.patch b/ports/libmysql/system-libs.patch new file mode 100644 index 000000000..b5c1cba0d --- /dev/null +++ b/ports/libmysql/system-libs.patch @@ -0,0 +1,150 @@ +diff --git a/cmake/icu.cmake b/cmake/icu.cmake +index ce9cc67..64445c5 100644 +--- a/cmake/icu.cmake ++++ b/cmake/icu.cmake +@@ -40,49 +40,10 @@ SET(DEFAULT_ICU "bundled") + # install_root is either 'system' or is assumed to be a path. + # + MACRO (FIND_ICU install_root) +- IF("${install_root}" STREQUAL "system") +- SET(EXTRA_FIND_LIB_ARGS) +- SET(EXTRA_FIND_INC_ARGS) +- ELSE() +- SET(EXTRA_FIND_LIB_ARGS HINTS "${install_root}" +- PATH_SUFFIXES "lib" "lib64" NO_DEFAULT_PATH) +- SET(EXTRA_FIND_INC_ARGS HINTS "${install_root}" +- PATH_SUFFIXES "include" NO_DEFAULT_PATH) +- ENDIF() +- +- FIND_PATH(ICU_INCLUDE_DIR NAMES unicode/regex.h ${EXTRA_FIND_INC_ARGS}) +- IF (NOT ICU_INCLUDE_DIR) +- MESSAGE(FATAL_ERROR "Cannot find ICU regular expression headers") +- ENDIF() +- +- IF(WIN32) +- SET(ICU_LIBS icuuc icuio icudt icuin) +- ELSE() +- SET(ICU_LIBS icuuc icuio icudata icui18n) +- ENDIF() +- +- SET(ICU_SYSTEM_LIBRARIES) +- FOREACH(ICU_LIB ${ICU_LIBS}) +- UNSET(ICU_LIB_PATH CACHE) +- FIND_LIBRARY(ICU_LIB_PATH NAMES ${ICU_LIB} ${EXTRA_FIND_LIB_ARGS}) +- IF(NOT ICU_LIB_PATH) +- MESSAGE(FATAL_ERROR "Cannot find the ICU library ${ICU_LIB}") +- ENDIF() +- LIST(APPEND ICU_SYSTEM_LIBRARIES ${ICU_LIB_PATH}) +- ENDFOREACH() +- +- # To do: If we include the path in ICU_INCLUDE_DIR, it leads to GUnit +- # picking up the wrong regex.h header. And it looks like we don't need it; +- # at least on Linux, the header gets installed in an OS path anyway. +- IF(NOT "${install_root}" STREQUAL "system") +- SET(ICU_INCLUDE_DIRS ${ICU_INCLUDE_DIR}) +- ENDIF() +- +- SET(ICU_LIBRARIES ${ICU_SYSTEM_LIBRARIES}) +- +- # Needed for version information. +- SET(ICU_COMMON_DIR ${ICU_INCLUDE_DIR}) +- ++ find_package(ICU REQUIRED COMPONENTS uc io dt in) ++ set(ICU_SYSTEM_LIBRARIES ICU::uc ICU::io ICU::dt ICU::in) ++ set(ICU_COMMON_DIR ${ICU_INCLUDE_DIR}) ++ SET(ICU_INCLUDE_DIRS ${ICU_INCLUDE_DIR}) + ENDMACRO() + + MACRO (MYSQL_USE_BUNDLED_ICU) +diff --git a/cmake/lz4.cmake b/cmake/lz4.cmake +index 6e576c3..60cb8ba 100644 +--- a/cmake/lz4.cmake ++++ b/cmake/lz4.cmake +@@ -25,7 +25,7 @@ + + MACRO (FIND_SYSTEM_LZ4) + FIND_PATH(PATH_TO_LZ4 NAMES lz4frame.h) +- FIND_LIBRARY(LZ4_SYSTEM_LIBRARY NAMES lz4) ++ FIND_LIBRARY(LZ4_SYSTEM_LIBRARY NAMES lz4d lz4) + IF (PATH_TO_LZ4 AND LZ4_SYSTEM_LIBRARY) + SET(SYSTEM_LZ4_FOUND 1) + INCLUDE_DIRECTORIES(SYSTEM ${PATH_TO_LZ4}) +diff --git a/cmake/lzma.cmake b/cmake/lzma.cmake +index ac8aaa7..78d8e8d 100644 +--- a/cmake/lzma.cmake ++++ b/cmake/lzma.cmake +@@ -24,15 +24,10 @@ + # bundled is the default + + MACRO (FIND_SYSTEM_LZMA) +- FIND_PATH(PATH_TO_LZMA NAMES lzma/lzma.h) +- FIND_LIBRARY(LZMA_SYSTEM_LIBRARY NAMES lzma) +- IF (PATH_TO_LZMA AND LZMA_SYSTEM_LIBRARY) +- SET(SYSTEM_LZMA_FOUND 1) +- SET(LZMA_INCLUDE_DIR ${PATH_TO_LZMA}) +- SET(LZMA_LIBRARY ${LZMA_SYSTEM_LIBRARY}) +- MESSAGE(STATUS "LZMA_INCLUDE_DIR ${LZMA_INCLUDE_DIR}") +- MESSAGE(STATUS "LZMA_LIBRARY ${LZMA_LIBRARY}") +- ENDIF() ++ find_package(LibLZMA REQUIRED) ++ set(LZMA_INCLUDE_DIR ${LZMA_INCLUDE_DIRS}) ++ set(LZMA_LIBRARY ${LZMA_LIBRARIES}) ++ set(SYSTEM_LZMA_FOUND 1) + ENDMACRO() + + MACRO (MYSQL_USE_BUNDLED_LZMA) +diff --git a/cmake/ssl.cmake b/cmake/ssl.cmake +index 8af9699..2bdfe14 100644 +--- a/cmake/ssl.cmake ++++ b/cmake/ssl.cmake +@@ -104,6 +104,16 @@ ENDMACRO() + # Provides the following configure options: + # WITH_SSL=[yes|bundled|system|] + MACRO (MYSQL_CHECK_SSL) ++ find_package(OpenSSL REQUIRED) ++ set(OPENSSL_LIBRARY ${OPENSSL_SSL_LIBRARY} CACHE STRING "") ++ set(CRYPTO_LIBRARY ${OPENSSL_CRYPTO_LIBRARY} CACHE STRING "") ++ FIND_PROGRAM(OPENSSL_EXECUTABLE openssl ++ DOC "path to the openssl executable") ++ SET(SSL_DEFINES "-DHAVE_OPENSSL") ++ set(SSL_LIBRARIES ${OPENSSL_LIBRARIES}) ++ENDMACRO() ++ ++MACRO (MYSQL_CHECK_SSL_OLD) + IF(NOT WITH_SSL) + IF(WIN32) + CHANGE_SSL_SETTINGS("bundled") +diff --git a/cmake/zlib.cmake b/cmake/zlib.cmake +index e74b8c9..6695075 100644 +--- a/cmake/zlib.cmake ++++ b/cmake/zlib.cmake +@@ -51,27 +51,7 @@ MACRO (MYSQL_CHECK_ZLIB_WITH_COMPRESS) + IF(WITH_ZLIB STREQUAL "bundled") + MYSQL_USE_BUNDLED_ZLIB() + ELSE() +- SET(ZLIB_FIND_QUIETLY TRUE) +- INCLUDE(FindZLIB) +- IF(ZLIB_FOUND) +- INCLUDE(CheckFunctionExists) +- SET(CMAKE_REQUIRED_LIBRARIES z) +- CHECK_FUNCTION_EXISTS(crc32 HAVE_CRC32) +- CHECK_FUNCTION_EXISTS(compressBound HAVE_COMPRESSBOUND) +- CHECK_FUNCTION_EXISTS(deflateBound HAVE_DEFLATEBOUND) +- SET(CMAKE_REQUIRED_LIBRARIES) +- IF(HAVE_CRC32 AND HAVE_COMPRESSBOUND AND HAVE_DEFLATEBOUND) +- SET(ZLIB_LIBRARY ${ZLIB_LIBRARIES} CACHE INTERNAL "System zlib library") +- SET(WITH_ZLIB "system" CACHE STRING +- "Which zlib to use (possible values are 'bundled' or 'system')") +- SET(ZLIB_SOURCES "") +- ELSE() +- SET(ZLIB_FOUND FALSE CACHE INTERNAL "Zlib found but not usable") +- MESSAGE(STATUS "system zlib found but not usable") +- ENDIF() +- ENDIF() +- IF(NOT ZLIB_FOUND) +- MYSQL_USE_BUNDLED_ZLIB() +- ENDIF() ++ find_package(ZLIB REQUIRED) ++ SET(ZLIB_LIBRARY ZLIB::ZLIB CACHE INTERNAL "System zlib library") + ENDIF() + ENDMACRO() diff --git a/scripts/cmake/vcpkg_build_cmake.cmake b/scripts/cmake/vcpkg_build_cmake.cmake index bdf192792..630662588 100644 --- a/scripts/cmake/vcpkg_build_cmake.cmake +++ b/scripts/cmake/vcpkg_build_cmake.cmake @@ -15,6 +15,9 @@ ## The target passed to the cmake build command (`cmake --build . --target `). If not specified, no target will ## be passed. ## +## ### ADD_BIN_TO_PATH +## Adds the appropriate Release and Debug `bin\` directories to the path during the build such that executables can run against the in-tree DLLs. +## ## ## Notes: ## This command should be preceeded by a call to [`vcpkg_configure_cmake()`](vcpkg_configure_cmake.md). ## You can use the alias [`vcpkg_install_cmake()`](vcpkg_configure_cmake.md) function if your CMake script supports the @@ -27,7 +30,7 @@ ## * [poco](https://github.com/Microsoft/vcpkg/blob/master/ports/poco/portfile.cmake) ## * [opencv](https://github.com/Microsoft/vcpkg/blob/master/ports/opencv/portfile.cmake) function(vcpkg_build_cmake) - cmake_parse_arguments(_bc "DISABLE_PARALLEL" "TARGET;LOGFILE_ROOT" "" ${ARGN}) + cmake_parse_arguments(_bc "DISABLE_PARALLEL;ADD_BIN_TO_PATH" "TARGET;LOGFILE_ROOT" "" ${ARGN}) if(NOT _bc_LOGFILE_ROOT) set(_bc_LOGFILE_ROOT "build") @@ -65,20 +68,24 @@ function(vcpkg_build_cmake) if(NOT DEFINED VCPKG_BUILD_TYPE OR VCPKG_BUILD_TYPE STREQUAL BUILDTYPE) if(BUILDTYPE STREQUAL "debug") set(SHORT_BUILDTYPE "dbg") + set(CONFIG "Debug") else() set(SHORT_BUILDTYPE "rel") + set(CONFIG "Release") endif() message(STATUS "Build ${TARGET_TRIPLET}-${SHORT_BUILDTYPE}") set(LOGPREFIX "${CURRENT_BUILDTREES_DIR}/${_bc_LOGFILE_ROOT}-${TARGET_TRIPLET}-${SHORT_BUILDTYPE}") set(LOGS) - if(BUILDTYPE STREQUAL "release") - set(CONFIG "Release") - else() - set(CONFIG "Debug") + if(_bc_ADD_BIN_TO_PATH) + set(_BACKUP_ENV_PATH "$ENV{PATH}") + if(BUILDTYPE STREQUAL "debug") + set(ENV{PATH} "${CURRENT_INSTALLED_DIR}/${VCPKG_TARGET_TRIPLET}/debug/bin;$ENV{PATH}") + else() + set(ENV{PATH} "${CURRENT_INSTALLED_DIR}/${VCPKG_TARGET_TRIPLET}/bin;$ENV{PATH}") + endif() endif() - execute_process( COMMAND ${CMAKE_COMMAND} --build . --config ${CONFIG} ${TARGET_PARAM} -- ${BUILD_ARGS} ${PARALLEL_ARG} OUTPUT_FILE "${LOGPREFIX}-out.log" @@ -134,6 +141,9 @@ function(vcpkg_build_cmake) endif() endif() message(STATUS "Build ${TARGET_TRIPLET}-${SHORT_BUILDTYPE} done") + if(_bc_ADD_BIN_TO_PATH) + set(ENV{PATH} "${_BACKUP_ENV_PATH}") + endif() endif() endforeach() endfunction() -- cgit v1.2.3 From 4da9d6cbb62e43170e0f21d26387e1018b1e74e0 Mon Sep 17 00:00:00 2001 From: Robert Schumacher Date: Mon, 19 Mar 2018 13:17:59 -0700 Subject: [libmysql] Use relative include path. Fixes #3071 --- ports/libmysql/CONTROL | 2 +- ports/libmysql/portfile.cmake | 4 ++++ 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/ports/libmysql/CONTROL b/ports/libmysql/CONTROL index 4af150af9..6f856c607 100644 --- a/ports/libmysql/CONTROL +++ b/ports/libmysql/CONTROL @@ -1,4 +1,4 @@ Source: libmysql -Version: 8.0.4-1 +Version: 8.0.4-2 Build-Depends: boost-algorithm, boost-geometry, boost-optional, boost-functional, boost-graph, openssl, icu, libevent, liblzma, lz4, zlib Description: A MySQL client library for C development. diff --git a/ports/libmysql/portfile.cmake b/ports/libmysql/portfile.cmake index c9859c47b..0e7b69edf 100644 --- a/ports/libmysql/portfile.cmake +++ b/ports/libmysql/portfile.cmake @@ -109,6 +109,10 @@ else() file (RENAME ${CURRENT_PACKAGES_DIR}/debug/lib/libmysql.pdb ${CURRENT_PACKAGES_DIR}/debug/bin/libmysql.pdb) endif() +file(READ ${CURRENT_PACKAGES_DIR}/include/mysql/mysql_com.h _contents) +string(REPLACE "#include " "#include \"mysql/udf_registration_types.h\"" _contents "${_contents}") +file(WRITE ${CURRENT_PACKAGES_DIR}/include/mysql/mysql_com.h "${_contents}") + # copy license file(COPY ${SOURCE_PATH}/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/libmysql) file(RENAME ${CURRENT_PACKAGES_DIR}/share/libmysql/LICENSE ${CURRENT_PACKAGES_DIR}/share/libmysql/copyright) \ No newline at end of file -- cgit v1.2.3 From 57c3b6acb3681cffb8df9adf0e8899e9c88764fd Mon Sep 17 00:00:00 2001 From: past-due <30942300+past-due@users.noreply.github.com> Date: Mon, 19 Mar 2018 16:38:12 -0400 Subject: [yoga] Fix build failure when VCPKG_BUILD_TYPE is set --- ports/yoga/portfile.cmake | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/ports/yoga/portfile.cmake b/ports/yoga/portfile.cmake index ba13192c8..e6dc1c709 100644 --- a/ports/yoga/portfile.cmake +++ b/ports/yoga/portfile.cmake @@ -33,8 +33,12 @@ vcpkg_build_cmake() vcpkg_copy_pdbs() file(INSTALL ${SOURCE_PATH}/yoga DESTINATION ${CURRENT_PACKAGES_DIR}/include FILES_MATCHING PATTERN "*.h") -file(INSTALL ${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-rel/Release/yogacore.lib DESTINATION ${CURRENT_PACKAGES_DIR}/lib) -file(INSTALL ${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-dbg/Debug/yogacore.lib DESTINATION ${CURRENT_PACKAGES_DIR}/debug/lib) +if(NOT DEFINED VCPKG_BUILD_TYPE OR VCPKG_BUILD_TYPE STREQUAL "release") + file(INSTALL ${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-rel/Release/yogacore.lib DESTINATION ${CURRENT_PACKAGES_DIR}/lib) +endif() +if(NOT DEFINED VCPKG_BUILD_TYPE OR VCPKG_BUILD_TYPE STREQUAL "debug") + file(INSTALL ${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-dbg/Debug/yogacore.lib DESTINATION ${CURRENT_PACKAGES_DIR}/debug/lib) +endif() vcpkg_copy_pdbs() -- cgit v1.2.3 From 4596fe67d9b9e837af7c563f65b72c5fe4a4ec81 Mon Sep 17 00:00:00 2001 From: Art Date: Mon, 19 Mar 2018 21:40:39 +0100 Subject: Upgraded asio to version 1.12.0 --- ports/asio/CONTROL | 2 +- ports/asio/portfile.cmake | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/ports/asio/CONTROL b/ports/asio/CONTROL index 021e20592..d2ed48569 100644 --- a/ports/asio/CONTROL +++ b/ports/asio/CONTROL @@ -1,3 +1,3 @@ Source: asio -Version: 1.10.8-1 +Version: 1.12.0 Description: Asio is a cross-platform C++ library for network and low-level I/O programming that provides developers with a consistent asynchronous model using a modern C++ approach. diff --git a/ports/asio/portfile.cmake b/ports/asio/portfile.cmake index 88cddfbbc..f6980f14e 100644 --- a/ports/asio/portfile.cmake +++ b/ports/asio/portfile.cmake @@ -4,8 +4,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO chriskohlhoff/asio - REF asio-1-10-8 - SHA512 55c26a6daf893f6e91ec7e8b5d70f1e27f2c1886552b2c9cb5c47b7c3bb08f78c9d6cec0a3bc6edbfb657a5094a001f742db0f18f81f51d79661b01fafea293e + REF asio-1-12-0 + SHA512 a0e341fd6a848784e1533df84d1e6b361c8468f59d4fbde68c1500c1f8a2124ad78db0169098dbbc594ce26717eb9760f37af13cb288a549e2bda563eecf2be3 HEAD_REF master ) -- cgit v1.2.3 From 62a015b4f3754d92381a02b5b11641a1ddcc256d Mon Sep 17 00:00:00 2001 From: past-due <30942300+past-due@users.noreply.github.com> Date: Mon, 19 Mar 2018 16:46:22 -0400 Subject: [sqlite3] Fix build failure when VCPKG_BUILD_TYPE is set to "release" --- ports/sqlite3/portfile.cmake | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/ports/sqlite3/portfile.cmake b/ports/sqlite3/portfile.cmake index 031eefbf2..d6596e7b2 100644 --- a/ports/sqlite3/portfile.cmake +++ b/ports/sqlite3/portfile.cmake @@ -28,9 +28,11 @@ vcpkg_configure_cmake( vcpkg_install_cmake() -file(READ ${CURRENT_PACKAGES_DIR}/debug/share/sqlite3/sqlite3Config-debug.cmake SQLITE3_DEBUG_CONFIG) -string(REPLACE "\${_IMPORT_PREFIX}" "\${_IMPORT_PREFIX}/debug" SQLITE3_DEBUG_CONFIG "${SQLITE3_DEBUG_CONFIG}") -file(WRITE ${CURRENT_PACKAGES_DIR}/share/sqlite3/sqlite3Config-debug.cmake "${SQLITE3_DEBUG_CONFIG}") +if(NOT DEFINED VCPKG_BUILD_TYPE OR VCPKG_BUILD_TYPE STREQUAL "debug") + file(READ ${CURRENT_PACKAGES_DIR}/debug/share/sqlite3/sqlite3Config-debug.cmake SQLITE3_DEBUG_CONFIG) + string(REPLACE "\${_IMPORT_PREFIX}" "\${_IMPORT_PREFIX}/debug" SQLITE3_DEBUG_CONFIG "${SQLITE3_DEBUG_CONFIG}") + file(WRITE ${CURRENT_PACKAGES_DIR}/share/sqlite3/sqlite3Config-debug.cmake "${SQLITE3_DEBUG_CONFIG}") +endif() file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/share) -- cgit v1.2.3 From 241e3ddd25b55af4d70195a88fc463aa593366b8 Mon Sep 17 00:00:00 2001 From: past-due <30942300+past-due@users.noreply.github.com> Date: Mon, 19 Mar 2018 16:58:29 -0400 Subject: [proj4] Fix build failure when VCPKG_BUILD_TYPE is set --- ports/proj4/portfile.cmake | 24 ++++++++++++++++-------- 1 file changed, 16 insertions(+), 8 deletions(-) diff --git a/ports/proj4/portfile.cmake b/ports/proj4/portfile.cmake index 626d6b2e4..bc4e66fcd 100644 --- a/ports/proj4/portfile.cmake +++ b/ports/proj4/portfile.cmake @@ -40,13 +40,17 @@ vcpkg_install_cmake() vcpkg_fixup_cmake_targets(CONFIG_PATH share/proj4) # Rename library and adapt cmake configuration -file(READ ${CURRENT_PACKAGES_DIR}/share/proj4/proj4-targets-release.cmake _contents) -string(REPLACE "proj_4_9.lib" "proj.lib" _contents "${_contents}") -file(WRITE ${CURRENT_PACKAGES_DIR}/share/proj4/proj4-targets-release.cmake "${_contents}") +if(NOT DEFINED VCPKG_BUILD_TYPE OR VCPKG_BUILD_TYPE STREQUAL "release") + file(READ ${CURRENT_PACKAGES_DIR}/share/proj4/proj4-targets-release.cmake _contents) + string(REPLACE "proj_4_9.lib" "proj.lib" _contents "${_contents}") + file(WRITE ${CURRENT_PACKAGES_DIR}/share/proj4/proj4-targets-release.cmake "${_contents}") +endif() -file(READ ${CURRENT_PACKAGES_DIR}/share/proj4/proj4-targets-debug.cmake _contents) -string(REPLACE "proj_4_9_d.lib" "projd.lib" _contents "${_contents}") -file(WRITE ${CURRENT_PACKAGES_DIR}/share/proj4/proj4-targets-debug.cmake "${_contents}") +if(NOT DEFINED VCPKG_BUILD_TYPE OR VCPKG_BUILD_TYPE STREQUAL "debug") + file(READ ${CURRENT_PACKAGES_DIR}/share/proj4/proj4-targets-debug.cmake _contents) + string(REPLACE "proj_4_9_d.lib" "projd.lib" _contents "${_contents}") + file(WRITE ${CURRENT_PACKAGES_DIR}/share/proj4/proj4-targets-debug.cmake "${_contents}") +endif() file(READ ${CURRENT_PACKAGES_DIR}/share/proj4/proj4-targets.cmake _contents) string(REPLACE "set(_IMPORT_PREFIX \"${CURRENT_PACKAGES_DIR}\")" @@ -55,8 +59,12 @@ string(REPLACE "set(_IMPORT_PREFIX \"${CURRENT_PACKAGES_DIR}\")" ) file(WRITE ${CURRENT_PACKAGES_DIR}/share/proj4/proj4-targets.cmake "${_contents}") -file(RENAME ${CURRENT_PACKAGES_DIR}/lib/proj_4_9.lib ${CURRENT_PACKAGES_DIR}/lib/proj.lib) -file(RENAME ${CURRENT_PACKAGES_DIR}/debug/lib/proj_4_9_d.lib ${CURRENT_PACKAGES_DIR}/debug/lib/projd.lib) +if(NOT DEFINED VCPKG_BUILD_TYPE OR VCPKG_BUILD_TYPE STREQUAL "release") + file(RENAME ${CURRENT_PACKAGES_DIR}/lib/proj_4_9.lib ${CURRENT_PACKAGES_DIR}/lib/proj.lib) +endif() +if(NOT DEFINED VCPKG_BUILD_TYPE OR VCPKG_BUILD_TYPE STREQUAL "debug") + file(RENAME ${CURRENT_PACKAGES_DIR}/debug/lib/proj_4_9_d.lib ${CURRENT_PACKAGES_DIR}/debug/lib/projd.lib) +endif() # Remove duplicate headers installed from debug build file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include) -- cgit v1.2.3 From 8e5e293a5155f0c29f2e3356a25ff424df57f922 Mon Sep 17 00:00:00 2001 From: past-due <30942300+past-due@users.noreply.github.com> Date: Mon, 19 Mar 2018 17:15:02 -0400 Subject: [freexl] Fix build failure when VCPKG_BUILD_TYPE is set --- ports/freexl/portfile.cmake | 50 ++++++++++++++++++++++++++------------------- 1 file changed, 29 insertions(+), 21 deletions(-) diff --git a/ports/freexl/portfile.cmake b/ports/freexl/portfile.cmake index 098a1dbec..ff8879fba 100644 --- a/ports/freexl/portfile.cmake +++ b/ports/freexl/portfile.cmake @@ -37,31 +37,35 @@ endif() ################ # Debug build ################ -message(STATUS "Building ${TARGET_TRIPLET}-dbg") +if(NOT DEFINED VCPKG_BUILD_TYPE OR VCPKG_BUILD_TYPE STREQUAL "debug") + message(STATUS "Building ${TARGET_TRIPLET}-dbg") -file(TO_NATIVE_PATH "${CURRENT_PACKAGES_DIR}/debug" INST_DIR_DBG) -vcpkg_execute_required_process( - COMMAND ${NMAKE} -f makefile.vc clean install - INST_DIR="${INST_DIR_DBG}" INSTALLED_ROOT="${CURRENT_INSTALLED_DIR}" "LINK_FLAGS=/debug" "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") -vcpkg_copy_pdbs() + file(TO_NATIVE_PATH "${CURRENT_PACKAGES_DIR}/debug" INST_DIR_DBG) + vcpkg_execute_required_process( + COMMAND ${NMAKE} -f makefile.vc clean install + INST_DIR="${INST_DIR_DBG}" INSTALLED_ROOT="${CURRENT_INSTALLED_DIR}" "LINK_FLAGS=/debug" "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") + vcpkg_copy_pdbs() +endif() ################ # Release build ################ -message(STATUS "Building ${TARGET_TRIPLET}-rel") +if(NOT DEFINED VCPKG_BUILD_TYPE OR VCPKG_BUILD_TYPE STREQUAL "release") + 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="${CURRENT_INSTALLED_DIR}" "LINK_FLAGS=" "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") + 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="${CURRENT_INSTALLED_DIR}" "LINK_FLAGS=" "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") +endif() file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include) file(INSTALL ${SOURCE_PATH}/COPYING DESTINATION ${CURRENT_PACKAGES_DIR}/share/freexl RENAME copyright) @@ -74,8 +78,12 @@ if (VCPKG_LIBRARY_LINKAGE STREQUAL static) else() file(REMOVE ${CURRENT_PACKAGES_DIR}/lib/freexl.lib) file(REMOVE ${CURRENT_PACKAGES_DIR}/debug/lib/freexl.lib) - file(RENAME ${CURRENT_PACKAGES_DIR}/lib/freexl_i.lib ${CURRENT_PACKAGES_DIR}/lib/freexl.lib) - file(RENAME ${CURRENT_PACKAGES_DIR}/debug/lib/freexl_i.lib ${CURRENT_PACKAGES_DIR}/debug/lib/freexl.lib) + if(NOT DEFINED VCPKG_BUILD_TYPE OR VCPKG_BUILD_TYPE STREQUAL "release") + file(RENAME ${CURRENT_PACKAGES_DIR}/lib/freexl_i.lib ${CURRENT_PACKAGES_DIR}/lib/freexl.lib) + endif() + if(NOT DEFINED VCPKG_BUILD_TYPE OR VCPKG_BUILD_TYPE STREQUAL "debug") + file(RENAME ${CURRENT_PACKAGES_DIR}/debug/lib/freexl_i.lib ${CURRENT_PACKAGES_DIR}/debug/lib/freexl.lib) + endif() endif() -- cgit v1.2.3 From cbf6adc9d3224d8f7455f40568dd49c7586d1454 Mon Sep 17 00:00:00 2001 From: past-due <30942300+past-due@users.noreply.github.com> Date: Mon, 19 Mar 2018 16:26:36 -0400 Subject: [paho-mqtt] Fix post-build validation failure when VCPKG_BUILD_TYPE is set The portfile was creating empty directories (for the "other" build type) if `VCPKG_BUILD_TYPE` was specified. --- ports/paho-mqtt/portfile.cmake | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/ports/paho-mqtt/portfile.cmake b/ports/paho-mqtt/portfile.cmake index 27f9c8243..3d0fc12e9 100644 --- a/ports/paho-mqtt/portfile.cmake +++ b/ports/paho-mqtt/portfile.cmake @@ -52,11 +52,15 @@ file(GLOB HEADERS "${SOURCE_PATH}/*/*.h") if(DLLS) file(INSTALL ${DLLS} DESTINATION ${CURRENT_PACKAGES_DIR}/bin) endif() -file(INSTALL ${LIBS} DESTINATION ${CURRENT_PACKAGES_DIR}/lib) +if(LIBS) + file(INSTALL ${LIBS} DESTINATION ${CURRENT_PACKAGES_DIR}/lib) +endif() if(DEBUG_DLLS) file(INSTALL ${DEBUG_DLLS} DESTINATION ${CURRENT_PACKAGES_DIR}/debug/bin) endif() -file(INSTALL ${DEBUG_LIBS} DESTINATION ${CURRENT_PACKAGES_DIR}/debug/lib) +if(DEBUG_LIBS) + file(INSTALL ${DEBUG_LIBS} DESTINATION ${CURRENT_PACKAGES_DIR}/debug/lib) +endif() file(INSTALL ${HEADERS} DESTINATION ${CURRENT_PACKAGES_DIR}/include) if(VCPKG_LIBRARY_LINKAGE STREQUAL static) -- cgit v1.2.3 From a3ecd90797b5271079de85ea1a8af63ac0ccd265 Mon Sep 17 00:00:00 2001 From: past-due <30942300+past-due@users.noreply.github.com> Date: Mon, 19 Mar 2018 18:04:58 -0400 Subject: [libspatialite] Fix build failure when VCPKG_BUILD_TYPE is set --- ports/libspatialite/portfile.cmake | 50 ++++++++++++++++++++++---------------- 1 file changed, 29 insertions(+), 21 deletions(-) diff --git a/ports/libspatialite/portfile.cmake b/ports/libspatialite/portfile.cmake index 2a2834096..1c5cfed19 100644 --- a/ports/libspatialite/portfile.cmake +++ b/ports/libspatialite/portfile.cmake @@ -60,32 +60,36 @@ set(LIBS_ALL_REL ################ # Debug build ################ -message(STATUS "Building ${TARGET_TRIPLET}-dbg") +if(NOT DEFINED VCPKG_BUILD_TYPE OR VCPKG_BUILD_TYPE STREQUAL "debug") + message(STATUS "Building ${TARGET_TRIPLET}-dbg") -file(TO_NATIVE_PATH "${CURRENT_PACKAGES_DIR}/debug" INST_DIR_DBG) + file(TO_NATIVE_PATH "${CURRENT_PACKAGES_DIR}/debug" INST_DIR_DBG) -vcpkg_execute_required_process( - COMMAND ${NMAKE} -f makefile.vc clean install - "INST_DIR=\"${INST_DIR_DBG}\"" INSTALLED_ROOT=${CURRENT_INSTALLED_DIR} "LINK_FLAGS=/debug" "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") -vcpkg_copy_pdbs() + vcpkg_execute_required_process( + COMMAND ${NMAKE} -f makefile.vc clean install + "INST_DIR=\"${INST_DIR_DBG}\"" INSTALLED_ROOT=${CURRENT_INSTALLED_DIR} "LINK_FLAGS=/debug" "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") + vcpkg_copy_pdbs() +endif() ################ # Release build ################ -message(STATUS "Building ${TARGET_TRIPLET}-rel") +if(NOT DEFINED VCPKG_BUILD_TYPE OR VCPKG_BUILD_TYPE STREQUAL "release") + 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=${CURRENT_INSTALLED_DIR} "LINK_FLAGS=" "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") + 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=${CURRENT_INSTALLED_DIR} "LINK_FLAGS=" "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") +endif() file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include) @@ -99,8 +103,12 @@ if (VCPKG_LIBRARY_LINKAGE STREQUAL static) else() file(REMOVE ${CURRENT_PACKAGES_DIR}/lib/spatialite.lib) file(REMOVE ${CURRENT_PACKAGES_DIR}/debug/lib/spatialite.lib) - file(RENAME ${CURRENT_PACKAGES_DIR}/lib/spatialite_i.lib ${CURRENT_PACKAGES_DIR}/lib/spatialite.lib) - file(RENAME ${CURRENT_PACKAGES_DIR}/debug/lib/spatialite_i.lib ${CURRENT_PACKAGES_DIR}/debug/lib/spatialite.lib) + if(NOT DEFINED VCPKG_BUILD_TYPE OR VCPKG_BUILD_TYPE STREQUAL "release") + file(RENAME ${CURRENT_PACKAGES_DIR}/lib/spatialite_i.lib ${CURRENT_PACKAGES_DIR}/lib/spatialite.lib) + endif() + if(NOT DEFINED VCPKG_BUILD_TYPE OR VCPKG_BUILD_TYPE STREQUAL "debug") + file(RENAME ${CURRENT_PACKAGES_DIR}/debug/lib/spatialite_i.lib ${CURRENT_PACKAGES_DIR}/debug/lib/spatialite.lib) + endif() endif() message(STATUS "Packaging ${TARGET_TRIPLET} done") -- cgit v1.2.3 From 72564e610e6715ad0e1b3d62d50ff987e0b0b03e Mon Sep 17 00:00:00 2001 From: past-due <30942300+past-due@users.noreply.github.com> Date: Mon, 19 Mar 2018 18:13:36 -0400 Subject: [readosm] Fix build failure when VCPKG_BUILD_TYPE is set --- ports/readosm/portfile.cmake | 54 +++++++++++++++++++++++++------------------- 1 file changed, 31 insertions(+), 23 deletions(-) diff --git a/ports/readosm/portfile.cmake b/ports/readosm/portfile.cmake index c26934685..5bd5a134f 100644 --- a/ports/readosm/portfile.cmake +++ b/ports/readosm/portfile.cmake @@ -30,34 +30,38 @@ endif() ################ # Debug build ################ -message(STATUS "Building ${TARGET_TRIPLET}-dbg") +if(NOT DEFINED VCPKG_BUILD_TYPE OR VCPKG_BUILD_TYPE STREQUAL "debug") + message(STATUS "Building ${TARGET_TRIPLET}-dbg") -file(TO_NATIVE_PATH "${CURRENT_PACKAGES_DIR}/debug" INST_DIR_DBG) + file(TO_NATIVE_PATH "${CURRENT_PACKAGES_DIR}/debug" INST_DIR_DBG) -vcpkg_execute_required_process( - COMMAND ${NMAKE} -f makefile.vc clean install - INST_DIR="${INST_DIR_DBG}" INSTALLED_ROOT="${CURRENT_INSTALLED_DIR}" "LINK_FLAGS=/debug" "CL_FLAGS=${CL_FLAGS_DBG}" - "LIBS_ALL=${LIBS_ALL_DBG}" - WORKING_DIRECTORY ${SOURCE_PATH} - LOGNAME nmake-build-${TARGET_TRIPLET}-debug -) -vcpkg_copy_pdbs() -message(STATUS "Building ${TARGET_TRIPLET}-dbg done") + vcpkg_execute_required_process( + COMMAND ${NMAKE} -f makefile.vc clean install + INST_DIR="${INST_DIR_DBG}" INSTALLED_ROOT="${CURRENT_INSTALLED_DIR}" "LINK_FLAGS=/debug" "CL_FLAGS=${CL_FLAGS_DBG}" + "LIBS_ALL=${LIBS_ALL_DBG}" + WORKING_DIRECTORY ${SOURCE_PATH} + LOGNAME nmake-build-${TARGET_TRIPLET}-debug + ) + vcpkg_copy_pdbs() + message(STATUS "Building ${TARGET_TRIPLET}-dbg done") +endif() ################ # Release build ################ -message(STATUS "Building ${TARGET_TRIPLET}-rel") +if(NOT DEFINED VCPKG_BUILD_TYPE OR VCPKG_BUILD_TYPE STREQUAL "release") + 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="${CURRENT_INSTALLED_DIR}" "LINK_FLAGS=" "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") + 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="${CURRENT_INSTALLED_DIR}" "LINK_FLAGS=" "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") +endif() file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include) file(INSTALL ${SOURCE_PATH}/COPYING DESTINATION ${CURRENT_PACKAGES_DIR}/share/readosm RENAME copyright) @@ -70,8 +74,12 @@ if (VCPKG_LIBRARY_LINKAGE STREQUAL static) else() file(REMOVE ${CURRENT_PACKAGES_DIR}/lib/readosm.lib) file(REMOVE ${CURRENT_PACKAGES_DIR}/debug/lib/readosm.lib) - file(RENAME ${CURRENT_PACKAGES_DIR}/lib/readosm_i.lib ${CURRENT_PACKAGES_DIR}/lib/readosm.lib) - file(RENAME ${CURRENT_PACKAGES_DIR}/debug/lib/readosm_i.lib ${CURRENT_PACKAGES_DIR}/debug/lib/readosm.lib) + if(NOT DEFINED VCPKG_BUILD_TYPE OR VCPKG_BUILD_TYPE STREQUAL "release") + file(RENAME ${CURRENT_PACKAGES_DIR}/lib/readosm_i.lib ${CURRENT_PACKAGES_DIR}/lib/readosm.lib) + endif() + if(NOT DEFINED VCPKG_BUILD_TYPE OR VCPKG_BUILD_TYPE STREQUAL "debug") + file(RENAME ${CURRENT_PACKAGES_DIR}/debug/lib/readosm_i.lib ${CURRENT_PACKAGES_DIR}/debug/lib/readosm.lib) + endif() endif() -- cgit v1.2.3 From 27016a9b310583e97fd83f74b701fbb1aa38a560 Mon Sep 17 00:00:00 2001 From: past-due <30942300+past-due@users.noreply.github.com> Date: Mon, 19 Mar 2018 18:26:06 -0400 Subject: [yaml-cpp] Fix build failure when VCPKG_BUILD_TYPE is set --- ports/yaml-cpp/portfile.cmake | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/ports/yaml-cpp/portfile.cmake b/ports/yaml-cpp/portfile.cmake index 0fc4f05b6..096b178ac 100644 --- a/ports/yaml-cpp/portfile.cmake +++ b/ports/yaml-cpp/portfile.cmake @@ -32,7 +32,14 @@ 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) +set(_targets_cmake_conf) +if(NOT DEFINED VCPKG_BUILD_TYPE OR VCPKG_BUILD_TYPE STREQUAL "debug") + list(APPEND _targets_cmake_conf "debug") +endif() +if(NOT DEFINED VCPKG_BUILD_TYPE OR VCPKG_BUILD_TYPE STREQUAL "release") + list(APPEND _targets_cmake_conf "release") +endif() +foreach(CONF ${_targets_cmake_conf}) file(READ ${CURRENT_PACKAGES_DIR}/share/yaml-cpp/yaml-cpp-targets-${CONF}.cmake YAML_CONFIG) string(REPLACE "${CURRENT_PACKAGES_DIR}" "\${_IMPORT_PREFIX}" YAML_CONFIG "${YAML_CONFIG}") file(WRITE ${CURRENT_PACKAGES_DIR}/share/yaml-cpp/yaml-cpp-targets-${CONF}.cmake "${YAML_CONFIG}") -- cgit v1.2.3 From 9d02fb0dc8c051e0ecaa188a29d9b0616477c0ae Mon Sep 17 00:00:00 2001 From: past-due <30942300+past-due@users.noreply.github.com> Date: Mon, 19 Mar 2018 18:35:55 -0400 Subject: [double-conversion] Fix build failure when VCPKG_BUILD_TYPE is set --- ports/double-conversion/portfile.cmake | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/ports/double-conversion/portfile.cmake b/ports/double-conversion/portfile.cmake index 8fc31c692..326d7e1c1 100644 --- a/ports/double-conversion/portfile.cmake +++ b/ports/double-conversion/portfile.cmake @@ -25,10 +25,14 @@ vcpkg_install_cmake() # Rename exported target files into something vcpkg_fixup_cmake_targets expects if(NOT VCPKG_USE_HEAD_VERSION) if(EXISTS ${CURRENT_PACKAGES_DIR}/CMake) - file(RENAME ${CURRENT_PACKAGES_DIR}/debug/CMake/double-conversionLibraryDepends-debug.cmake - ${CURRENT_PACKAGES_DIR}/debug/CMake/double-conversionTargets-debug.cmake) - file(RENAME ${CURRENT_PACKAGES_DIR}/CMake/double-conversionLibraryDepends-release.cmake - ${CURRENT_PACKAGES_DIR}/CMake/double-conversionTargets-release.cmake) + if(NOT DEFINED VCPKG_BUILD_TYPE OR VCPKG_BUILD_TYPE STREQUAL "debug") + file(RENAME ${CURRENT_PACKAGES_DIR}/debug/CMake/double-conversionLibraryDepends-debug.cmake + ${CURRENT_PACKAGES_DIR}/debug/CMake/double-conversionTargets-debug.cmake) + endif() + if(NOT DEFINED VCPKG_BUILD_TYPE OR VCPKG_BUILD_TYPE STREQUAL "release") + file(RENAME ${CURRENT_PACKAGES_DIR}/CMake/double-conversionLibraryDepends-release.cmake + ${CURRENT_PACKAGES_DIR}/CMake/double-conversionTargets-release.cmake) + endif() file(RENAME ${CURRENT_PACKAGES_DIR}/CMake/double-conversionLibraryDepends.cmake ${CURRENT_PACKAGES_DIR}/CMake/double-conversionTargets.cmake) -- cgit v1.2.3 From 2efeda15a26d89cc688579ec75f7ab71bffe9a26 Mon Sep 17 00:00:00 2001 From: past-due <30942300+past-due@users.noreply.github.com> Date: Mon, 19 Mar 2018 19:33:13 -0400 Subject: [protobuf] Fix build failure when VCPKG_BUILD_TYPE is set --- ports/protobuf/portfile.cmake | 20 ++++++++++++-------- 1 file changed, 12 insertions(+), 8 deletions(-) diff --git a/ports/protobuf/portfile.cmake b/ports/protobuf/portfile.cmake index b8cb43f93..593eebe7d 100644 --- a/ports/protobuf/portfile.cmake +++ b/ports/protobuf/portfile.cmake @@ -85,14 +85,18 @@ endfunction() protobuf_try_remove_recurse_wait(${CURRENT_PACKAGES_DIR}/debug/include) -file(READ ${CURRENT_PACKAGES_DIR}/share/protobuf/protobuf-targets-release.cmake RELEASE_MODULE) -string(REPLACE "\${_IMPORT_PREFIX}/bin/protoc.exe" "\${_IMPORT_PREFIX}/tools/protoc.exe" RELEASE_MODULE "${RELEASE_MODULE}") -file(WRITE ${CURRENT_PACKAGES_DIR}/share/protobuf/protobuf-targets-release.cmake "${RELEASE_MODULE}") - -file(READ ${CURRENT_PACKAGES_DIR}/debug/share/protobuf/protobuf-targets-debug.cmake DEBUG_MODULE) -string(REPLACE "\${_IMPORT_PREFIX}" "\${_IMPORT_PREFIX}/debug" DEBUG_MODULE "${DEBUG_MODULE}") -string(REPLACE "\${_IMPORT_PREFIX}/debug/bin/protoc.exe" "\${_IMPORT_PREFIX}/tools/protoc.exe" DEBUG_MODULE "${DEBUG_MODULE}") -file(WRITE ${CURRENT_PACKAGES_DIR}/share/protobuf/protobuf-targets-debug.cmake "${DEBUG_MODULE}") +if(NOT DEFINED VCPKG_BUILD_TYPE OR VCPKG_BUILD_TYPE STREQUAL "release") + file(READ ${CURRENT_PACKAGES_DIR}/share/protobuf/protobuf-targets-release.cmake RELEASE_MODULE) + string(REPLACE "\${_IMPORT_PREFIX}/bin/protoc.exe" "\${_IMPORT_PREFIX}/tools/protoc.exe" RELEASE_MODULE "${RELEASE_MODULE}") + file(WRITE ${CURRENT_PACKAGES_DIR}/share/protobuf/protobuf-targets-release.cmake "${RELEASE_MODULE}") +endif() + +if(NOT DEFINED VCPKG_BUILD_TYPE OR VCPKG_BUILD_TYPE STREQUAL "debug") + file(READ ${CURRENT_PACKAGES_DIR}/debug/share/protobuf/protobuf-targets-debug.cmake DEBUG_MODULE) + string(REPLACE "\${_IMPORT_PREFIX}" "\${_IMPORT_PREFIX}/debug" DEBUG_MODULE "${DEBUG_MODULE}") + string(REPLACE "\${_IMPORT_PREFIX}/debug/bin/protoc.exe" "\${_IMPORT_PREFIX}/tools/protoc.exe" DEBUG_MODULE "${DEBUG_MODULE}") + file(WRITE ${CURRENT_PACKAGES_DIR}/share/protobuf/protobuf-targets-debug.cmake "${DEBUG_MODULE}") +endif() protobuf_try_remove_recurse_wait(${CURRENT_PACKAGES_DIR}/debug/share) -- cgit v1.2.3 From 2949174dad100476e68ec9b0d707509554a63f88 Mon Sep 17 00:00:00 2001 From: past-due <30942300+past-due@users.noreply.github.com> Date: Mon, 19 Mar 2018 19:41:20 -0400 Subject: [box2d] Fix build failure when VCPKG_BUILD_TYPE is set --- ports/box2d/portfile.cmake | 36 ++++++++++++++++++++---------------- 1 file changed, 20 insertions(+), 16 deletions(-) diff --git a/ports/box2d/portfile.cmake b/ports/box2d/portfile.cmake index b07dbc663..87aaefc74 100644 --- a/ports/box2d/portfile.cmake +++ b/ports/box2d/portfile.cmake @@ -42,23 +42,27 @@ set(OUTPUTS_PATH "${SOURCE_PATH}/Box2D/Build/vs2015/bin/${PROJECT_ARCH_BITS}") vcpkg_build_msbuild(PROJECT_PATH ${SOURCE_PATH}/Box2D/Build/vs2015/Box2D.vcxproj) -message(STATUS "Packaging ${TARGET_TRIPLET}-Release lib") -file( - INSTALL ${OUTPUTS_PATH}/Release/ - DESTINATION ${CURRENT_PACKAGES_DIR}/lib - FILES_MATCHING PATTERN "*.lib" -) -file(RENAME ${CURRENT_PACKAGES_DIR}/lib/Box2D.lib ${CURRENT_PACKAGES_DIR}/lib/box2d.lib) -message(STATUS "Packaging ${TARGET_TRIPLET}-Release lib done") +if(NOT DEFINED VCPKG_BUILD_TYPE OR VCPKG_BUILD_TYPE STREQUAL "release") + message(STATUS "Packaging ${TARGET_TRIPLET}-Release lib") + file( + INSTALL ${OUTPUTS_PATH}/Release/ + DESTINATION ${CURRENT_PACKAGES_DIR}/lib + FILES_MATCHING PATTERN "*.lib" + ) + file(RENAME ${CURRENT_PACKAGES_DIR}/lib/Box2D.lib ${CURRENT_PACKAGES_DIR}/lib/box2d.lib) + message(STATUS "Packaging ${TARGET_TRIPLET}-Release lib done") +endif() -message(STATUS "Packaging ${TARGET_TRIPLET}-Debug lib") -file( - INSTALL ${OUTPUTS_PATH}/Debug/ - DESTINATION ${CURRENT_PACKAGES_DIR}/debug/lib - FILES_MATCHING PATTERN "*.lib" -) -file(RENAME ${CURRENT_PACKAGES_DIR}/debug/lib/Box2D.lib ${CURRENT_PACKAGES_DIR}/debug/lib/box2d.lib) -message(STATUS "Packaging ${TARGET_TRIPLET}-Debug lib done") +if(NOT DEFINED VCPKG_BUILD_TYPE OR VCPKG_BUILD_TYPE STREQUAL "debug") + message(STATUS "Packaging ${TARGET_TRIPLET}-Debug lib") + file( + INSTALL ${OUTPUTS_PATH}/Debug/ + DESTINATION ${CURRENT_PACKAGES_DIR}/debug/lib + FILES_MATCHING PATTERN "*.lib" + ) + file(RENAME ${CURRENT_PACKAGES_DIR}/debug/lib/Box2D.lib ${CURRENT_PACKAGES_DIR}/debug/lib/box2d.lib) + message(STATUS "Packaging ${TARGET_TRIPLET}-Debug lib done") +endif() message(STATUS "Packaging headers") file( -- cgit v1.2.3 From 6f7d92ddd38ae80da6cc40251b495dd446b9687c Mon Sep 17 00:00:00 2001 From: past-due <30942300+past-due@users.noreply.github.com> Date: Mon, 19 Mar 2018 20:04:20 -0400 Subject: [libssh] Fix static build failure when VCPKG_BUILD_TYPE is set --- ports/libssh/portfile.cmake | 2 ++ 1 file changed, 2 insertions(+) diff --git a/ports/libssh/portfile.cmake b/ports/libssh/portfile.cmake index 7d986d244..49c927c22 100644 --- a/ports/libssh/portfile.cmake +++ b/ports/libssh/portfile.cmake @@ -37,6 +37,8 @@ vcpkg_copy_pdbs() if(VCPKG_LIBRARY_LINKAGE STREQUAL "static") if(EXISTS ${CURRENT_PACKAGES_DIR}/lib/static/ssh.lib) file(RENAME ${CURRENT_PACKAGES_DIR}/lib/static/ssh.lib ${CURRENT_PACKAGES_DIR}/lib/ssh.lib) + endif() + if(EXISTS ${CURRENT_PACKAGES_DIR}/debug/lib/static/ssh.lib) file(RENAME ${CURRENT_PACKAGES_DIR}/debug/lib/static/ssh.lib ${CURRENT_PACKAGES_DIR}/debug/lib/ssh.lib) endif() file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/bin ${CURRENT_PACKAGES_DIR}/debug/bin) -- cgit v1.2.3 From 71dc69e2135c3ec4e2dbd23c4ef8692dba6b9177 Mon Sep 17 00:00:00 2001 From: past-due <30942300+past-due@users.noreply.github.com> Date: Mon, 19 Mar 2018 19:50:13 -0400 Subject: [zlib] Fix static build failure when VCPKG_BUILD_TYPE is set --- ports/zlib/portfile.cmake | 2 ++ 1 file changed, 2 insertions(+) diff --git a/ports/zlib/portfile.cmake b/ports/zlib/portfile.cmake index 291180a29..d924e2135 100644 --- a/ports/zlib/portfile.cmake +++ b/ports/zlib/portfile.cmake @@ -32,6 +32,8 @@ vcpkg_install_cmake() if(VCPKG_LIBRARY_LINKAGE STREQUAL static) if(EXISTS ${CURRENT_PACKAGES_DIR}/lib/zlibstatic.lib) file(RENAME ${CURRENT_PACKAGES_DIR}/lib/zlibstatic.lib ${CURRENT_PACKAGES_DIR}/lib/zlib.lib) + endif() + if(EXISTS ${CURRENT_PACKAGES_DIR}/debug/lib/zlibstaticd.lib) file(RENAME ${CURRENT_PACKAGES_DIR}/debug/lib/zlibstaticd.lib ${CURRENT_PACKAGES_DIR}/debug/lib/zlibd.lib) endif() endif() -- cgit v1.2.3 From 0b629c4ff1a56dc5045ecf9beaae59ff98b64fa5 Mon Sep 17 00:00:00 2001 From: past-due <30942300+past-due@users.noreply.github.com> Date: Mon, 19 Mar 2018 20:15:49 -0400 Subject: [libpng] Fix static build failure when VCPKG_BUILD_TYPE is set --- ports/libpng/portfile.cmake | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/ports/libpng/portfile.cmake b/ports/libpng/portfile.cmake index 1ac8ef3cb..0c9f8ab0b 100644 --- a/ports/libpng/portfile.cmake +++ b/ports/libpng/portfile.cmake @@ -40,9 +40,13 @@ vcpkg_configure_cmake( vcpkg_install_cmake() -if(VCPKG_LIBRARY_LINKAGE STREQUAL "static" AND EXISTS ${CURRENT_PACKAGES_DIR}/lib/libpng16_static.lib) - file(RENAME ${CURRENT_PACKAGES_DIR}/lib/libpng16_static.lib ${CURRENT_PACKAGES_DIR}/lib/libpng16.lib) - file(RENAME ${CURRENT_PACKAGES_DIR}/debug/lib/libpng16_staticd.lib ${CURRENT_PACKAGES_DIR}/debug/lib/libpng16d.lib) +if(VCPKG_LIBRARY_LINKAGE STREQUAL "static") + if(EXISTS ${CURRENT_PACKAGES_DIR}/lib/libpng16_static.lib) + file(RENAME ${CURRENT_PACKAGES_DIR}/lib/libpng16_static.lib ${CURRENT_PACKAGES_DIR}/lib/libpng16.lib) + endif() + if(EXISTS ${CURRENT_PACKAGES_DIR}/debug/lib/libpng16_staticd.lib) + file(RENAME ${CURRENT_PACKAGES_DIR}/debug/lib/libpng16_staticd.lib ${CURRENT_PACKAGES_DIR}/debug/lib/libpng16d.lib) + endif() endif() # Remove CMake config files as they are incorrectly generated and everyone uses built-in FindPNG anyway. -- cgit v1.2.3 From d7394e883cb4b21b6b5ea602308879c51d366fa1 Mon Sep 17 00:00:00 2001 From: past-due <30942300+past-due@users.noreply.github.com> Date: Mon, 19 Mar 2018 15:31:32 -0400 Subject: [glew] Fix build failure when VCPKG_BUILD_TYPE is set --- ports/glew/portfile.cmake | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/ports/glew/portfile.cmake b/ports/glew/portfile.cmake index 79c669640..45f711f77 100644 --- a/ports/glew/portfile.cmake +++ b/ports/glew/portfile.cmake @@ -19,7 +19,15 @@ vcpkg_install_cmake() vcpkg_fixup_cmake_targets(CONFIG_PATH "lib/cmake/glew") -foreach(FILE ${CURRENT_PACKAGES_DIR}/share/glew/glew-targets-debug.cmake ${CURRENT_PACKAGES_DIR}/share/glew/glew-targets-release.cmake) +set(_targets_cmake_files) +if(NOT DEFINED VCPKG_BUILD_TYPE OR VCPKG_BUILD_TYPE STREQUAL "debug") + list(APPEND _targets_cmake_files "${CURRENT_PACKAGES_DIR}/share/glew/glew-targets-debug.cmake") +endif() +if(NOT DEFINED VCPKG_BUILD_TYPE OR VCPKG_BUILD_TYPE STREQUAL "release") + list(APPEND _targets_cmake_files "${CURRENT_PACKAGES_DIR}/share/glew/glew-targets-release.cmake") +endif() + +foreach(FILE ${_targets_cmake_files}) file(READ ${FILE} _contents) string(REPLACE "libglew32" "glew32" _contents "${_contents}") file(WRITE ${FILE} "${_contents}") @@ -27,6 +35,8 @@ endforeach() if(EXISTS ${CURRENT_PACKAGES_DIR}/lib/libglew32.lib) file(RENAME ${CURRENT_PACKAGES_DIR}/lib/libglew32.lib ${CURRENT_PACKAGES_DIR}/lib/glew32.lib) +endif() +if(EXISTS ${CURRENT_PACKAGES_DIR}/debug/lib/libglew32d.lib) file(RENAME ${CURRENT_PACKAGES_DIR}/debug/lib/libglew32d.lib ${CURRENT_PACKAGES_DIR}/debug/lib/glew32d.lib) endif() -- cgit v1.2.3 From 95a8f285d8757f40bbaff0d766e851ba7d82820d Mon Sep 17 00:00:00 2001 From: Alexander Karatarakis Date: Mon, 19 Mar 2018 18:59:37 -0700 Subject: Update CHANGELOG and bump version to v0.0.106 --- CHANGELOG.md | 165 ++++++++++++++++++++++++++++++++++++++++++++++++++++ toolsrc/VERSION.txt | 2 +- 2 files changed, 166 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 134fcd63a..f41efaf10 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,168 @@ +vcpkg (0.0.106) +-------------- + * Add ports: + - armadillo 8.400.0-1 + - boost-modular-build-helper 2 + - clblas 2.12-1 + - clfft 2.12.2 + - entt 2.4.2-1 + - fastcdr 1.0.6-1 + - gamma gamma-2018-01-27 + - gl3w 8f7f459d + - graphite2 1.3.10 + - ismrmrd 1.3.2-1 + - kealib 1.4.7-1 + - lcm 1.3.95 + - libcds 2.3.2 + - monkeys-audio 4.3.3 + - msix 1.0 + - nmslib 1.7.2 + - opencl 2.2 (2017.07.18) + - openmesh 6.3 + - quirc 1.0-1 + - shogun 6.1.3 + - x264 152-e9a5903edf8ca59 + - x265 2.7-1 + * Update ports: + - abseil 2018-2-5 -> 2018-03-17 + - ace 6.4.6 -> 6.4.7 + - alembic 1.7.5 -> 1.7.6 + - args d8905de -> 2018-02-23 + - asio 1.10.8-1 -> 1.12.0 + - atk 2.24.0-1 -> 2.24.0-2 + - avro-c 1.8.2 -> 1.8.2-1 + - azure-storage-cpp 3.0.0-4 -> 3.2.1 + - benchmark 1.3.0 -> 1.3.0-1 + - boost-build 1.66.0-5 -> 1.66.0-8 + - breakpad 2018-2-19 -> 2018-03-13 + - butteraugli 2017-09-02-8c60a2aefa19adb-1 -> 2018-02-25 + - c-ares 1.13.0-1 -> cares-1_14_0 + - catch-classic 1.12.0 -> 1.12.1 + - catch2 2.1.2 -> 2.2.1 + - cctz 2.1 -> 2.2 + - cgal 4.11-3 -> 4.11.1 + - chakracore 1.7.4 -> 1.8.2 + - chmlib 0.40-1 -> 0.40-2 + - cimg 2.1.8 -> 221 + - clara 2017-07-20-9661f2b4a50895d52ebb4c59382785a2b416c310 -> 2018-03-11 + - console-bridge 0.3.2-2 -> 0.3.2-3 + - coolprop 6.1.0-2 -> 6.1.0-3 + - cpp-redis 4.3.0 -> 4.3.1 + - cpr 1.3.0-1 -> 1.3.0-3 + - curl 7.58.0-1 -> 7_59_0-2 + - devil 1.8.0-1 -> 1.8.0-2 + - directxmesh dec2017 -> feb2018 + - directxtex dec2017 -> feb2018b + - directxtk dec2017 -> feb2018 + - dirent 2017-06-23-5c7194c2fe2c68c1a8212712c0b4b6195382d27d -> 1.23.1 + - discord-rpc 2.1.0 -> 3.0.0 + - doctest 1.2.6 -> 1.2.8 + - eastl 3.05.08 -> 3.07.02 + - evpp 0.6.1-1 -> 0.7.0 + - exiv2 8f5b795eaa4bc414d2d6041c1dbd1a7f7bf1fc99 -> 2018-03-17 + - fdk-aac 2017-11-02-1e351 -> 2018-03-07 + - ffmpeg 3.3.3-2 -> 3.3.3-4 + - freetype 2.8.1-1 -> 2.8.1-3 + - freetype-gl 2017-10-9-82fb152a74f01b1483ac80d15935fbdfaf3ed836 -> 2018-02-25 + - freexl 1.0.4 -> 1.0.4-1 + - g2o 20170730_git-2 -> 20170730_git-3 + - gdal 2.2.2 -> 2.2.2-1 + - gdcm2 2.8.3 -> 2.8.4 + - geogram 1.4.9-1 -> 1.6.0-1 + - gflags 2.2.1-1 -> 2.2.1-3 + - glib 2.52.3-1 -> 2.52.3-2 + - glslang 3a21c880500eac21cdf79bef5b80f970a55ac6af-1 -> 2018-03-02 + - grpc 1.8.3 -> 1.10.0 + - gsl 2.4-2 -> 2.4-3 + - gsl-lite 0.26.0 -> 0.28.0 + - gtest 1.8.0-6 -> 1.8.0-7 + - halide release_2017_10_30 -> release_2018_02_15 + - harfbuzz 1.7.4 -> 1.7.6 + - ilmbase 2.2.0-1 -> 2.2.1-1 + - jansson 2.11 -> 2.11-2 + - jsoncpp 1.8.1-1 -> 1.8.4 + - jsonnet 2017-09-02-11cf9fa9f2fe8acbb14b096316006082564ca580 -> 2018-03-17 + - leptonica 1.74.4-2 -> 1.74.4-3 + - libgeotiff 1.4.2-2 -> 1.4.2-3 + - libiconv 1.15-1 -> 1.15-2 + - libjpeg-turbo 1.5.3 -> 1.5.3-1 + - libmysql 5.7.17-3 -> 8.0.4-2 + - libpng 1.6.34-2 -> 1.6.34-3 + - librtmp 2.4 -> 2.4-1 + - libsndfile 1.0.29-6830c42-2 -> 1.0.29-6830c42-3 + - libsodium 1.0.15-1 -> 1.0.16-1 + - libspatialite 4.3.0a-1 -> 4.3.0a-2 + - libssh 0.7.5-1 -> 0.7.5-4 + - libuv 1.18.0 -> 1.19.2 + - libwebp 0.6.1-1 -> 0.6.1-2 + - libwebsockets 2.4.1 -> 2.4.2 + - libxml2 2.9.4-2 -> 2.9.4-4 + - libzip 1.4.0 -> rel-1-5-0 + - live555 2018.01.29 -> 2018.02.28 + - lodepng 2017-09-01-8a0f16afe74a6a-1 -> 2018-02-25 + - luasocket 2017.05.25.5a17f79b0301f0a1b4c7f1c73388757a7e2ed309 -> 2018-02-25 + - lz4 1.8.1.2 -> 1.8.1.2-1 + - magnum-extras 2018.02-1 -> 2018.02-2 + - matio 1.5.10-2 -> 1.5.12 + - mman git-f5ff813 -> git-f5ff813-2 + - ms-gsl 20171204-9d65e74400976b3509833f49b16d401600c7317d -> 2018-03-17 + - msinttypes 2017-06-26-f9e7c5758ed9e3b9f4b2394de1881c704dd79de0 -> 2018-02-25 + - msmpi 8.1 -> 9.0 + - nlohmann-json 3.1.0 -> 3.1.2 + - nuklear 2017-06-15-5c7194c2fe2c68c1a8212712c0b4b6195382d27d -> 2018-03-17 + - ogre 1.10.9-2 -> 1.10.11 + - opencv 3.4.0-3 -> 3.4.1 + - openexr 2.2.0-1 -> 2.2.1-1 + - openimageio 1.7.15-2 -> 1.8.9 + - openjpeg 2.2.0-1 -> 2.3.0 + - pcl 1.8.1-9 -> 1.8.1-10 + - picosha2 2017-09-01-c5ff159b6 -> 2018-02-25 + - piex 2017-09-01-473434f2dd974978b-1 -> 2018-03-13 + - protobuf 3.5.1 -> 3.5.1-1 + - qt5-modularscripts 1 -> 2 + - re2 2017-12-01-1 -> 2018-03-17 + - readosm 1.1.0 -> 1.1.0-1 + - realsense2 2.10.0 -> 2.10.1 + - rocksdb 2017-06-28-18c63af6ef2b9f014c404b88488ae52e6fead03c-1 -> 5.11.3 + - rs-core-lib commit-1ed2dadbda3977b13e5e83cc1f3eeca76b36ebe5 -> 2018-03-17 + - rttr 0.9.5-1 -> 0.9.5-2 + - scintilla 3.7.6 -> 4.0.3 + - sdl2 2.0.7-4 -> 2.0.8-1 + - snappy 1.1.7-1 -> 1.1.7-2 + - spatialite-tools 4.3.0 -> 4.3.0-1 + - spdlog 0.14.0-1 -> 0.16.3 + - spirv-tools 2017.1-dev-7e2d26c77b606b21af839b37fd21381c4a669f23-1 -> 2018.1-1 + - sqlite3 3.21.0 -> 3.21.0-1 + - stb 20170724-9d9f75e -> 2018-03-02 + - thrift 20172805-72ca60debae1d9fb35d9f0085118873669006d7f-2 -> 2018-03-17 + - tiny-dnn 2017-10-09-dd906fed8c8aff8dc837657c42f9d55f8b793b0e -> 2018-03-13 + - tinyxml2 6.0.0 -> 6.0.0-2 + - torch-th 20180131-89ede3ba90c906a8ec6b9a0f4bef188ba5bb2fd8-1 -> 20180131-89ede3ba90c906a8ec6b9a0f4bef188ba5bb2fd8-2 + - unicorn 2017-12-06-bc34c36eaeca0f4fc672015d24ce3efbcc81d6e4-1 -> 2018-03-13 + - unicorn-lib commit-3ffa7fe69a1d0c37fb52a4af61380c5fd84fa5aa -> 2018-03-13 + - uwebsockets 0.14.4-1 -> 0.14.6-1 + - wt 3.3.7-4 -> 4.0.2 + - wtl 9.1 -> 10.0 + - wxwidgets 3.1.0-1 -> 3.1.1 + - yaml-cpp 0.5.4-rc-2 -> 0.6.2 + - zeromq 20170908-18498f620f0f6d4076981ea16eb5760fe4d28dc2-2 -> 2018-03-17 + - zziplib 0.13.62-1 -> 0.13.69 + * Use TLS 1.2 for downloads. + * Tools used by `vcpkg` (`git`, `cmake` etc) are now specified in `scripts\vcpkgTools.xml`. + - Add `7zip` + * Fix various bugs regarding feature packages. Affects `install`, `upgrade` and `export`. + * `vcpkg hash`: Fix bug with whitespace in path. + * Visual Studio detection now properly identifies legacy versions (VS2015). + * Windows SDK detection no longer fails if certain registry keys are not in their expected places. + * Dependency qualifiers now support `!` for inversion. + * Add `VCPKG_DEFAULT_VS_PATH` environment variable. + - `vcpkg` automatically chooses the latest stable version of Visual Studio to use. + - You can now select the desired VS with the `VCPKG_DEFAULT_VS_PATH` environment variable + - You can also select the behavior by specifiying `VCPKG_VISUAL_STUDIO_PATH` in the triplet file (and this takes precedence over the new environment variable) + +-- vcpkg team MON, 19 Mar 2018 19:00:00 -0800 + + vcpkg (0.0.105) -------------- * Add ports: diff --git a/toolsrc/VERSION.txt b/toolsrc/VERSION.txt index 157d21b7b..1305e8f43 100644 --- a/toolsrc/VERSION.txt +++ b/toolsrc/VERSION.txt @@ -1 +1 @@ -"0.0.105" \ No newline at end of file +"0.0.106" \ No newline at end of file -- cgit v1.2.3 From efc0255f80d31c5eaef78fc507c246ee153a63aa Mon Sep 17 00:00:00 2001 From: Alexander Karatarakis Date: Mon, 19 Mar 2018 21:09:13 -0700 Subject: [signalrclient] Use vcpkg_from_github --- ports/signalrclient/CONTROL | 2 +- ports/signalrclient/portfile.cmake | 10 ++++++---- 2 files changed, 7 insertions(+), 5 deletions(-) diff --git a/ports/signalrclient/CONTROL b/ports/signalrclient/CONTROL index ae3ae47c1..fe8aa7dc5 100644 --- a/ports/signalrclient/CONTROL +++ b/ports/signalrclient/CONTROL @@ -1,4 +1,4 @@ Source: signalrclient -Version: 1.0.0-beta1-2 +Version: 1.0.0-beta1-3 Build-Depends: cpprestsdk Description: C++ client for SignalR. diff --git a/ports/signalrclient/portfile.cmake b/ports/signalrclient/portfile.cmake index bf2669569..50f6b0b89 100644 --- a/ports/signalrclient/portfile.cmake +++ b/ports/signalrclient/portfile.cmake @@ -1,12 +1,14 @@ include(vcpkg_common_functions) set(SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src/SignalR-Client-Cpp-1.0.0-beta1) -vcpkg_download_distfile(ARCHIVE - URLS "https://github.com/aspnet/SignalR-Client-Cpp/archive/1.0.0-beta1.tar.gz" - FILENAME "SignalR-Client-Cpp-1.0.0-beta1.tar.gz" + +vcpkg_from_github( + OUT_SOURCE_PATH SOURCE_PATH + REPO SignalR/SignalR-Client-Cpp + REF 1.0.0-beta1 SHA512 b38f6f946f1499080071949cbcf574405118f9acfb469441e5b5b0df3e5f0d277a83b30e0d613dc5e54732b9071e3273dac1ee65129f994d5a60eef0e45bdf6c + HEAD_REF master ) -vcpkg_extract_source_archive(${ARCHIVE}) vcpkg_apply_patches( SOURCE_PATH ${SOURCE_PATH} -- cgit v1.2.3 From fdf8d471ed553fa802db784e1b049cd77e721ce2 Mon Sep 17 00:00:00 2001 From: Alexander Karatarakis Date: Tue, 20 Mar 2018 12:39:43 -0700 Subject: [TLS 1.2] Add message for Powershell 5.1+ --- scripts/VcpkgPowershellUtils.ps1 | 1 + 1 file changed, 1 insertion(+) diff --git a/scripts/VcpkgPowershellUtils.ps1 b/scripts/VcpkgPowershellUtils.ps1 index 73a3fc9ad..82718ecdc 100644 --- a/scripts/VcpkgPowershellUtils.ps1 +++ b/scripts/VcpkgPowershellUtils.ps1 @@ -140,6 +140,7 @@ function vcpkgDownloadFile( [Parameter(Mandatory=$true)][string]$url, { Write-Warning "Github has dropped support for TLS versions prior to 1.2, which is not available on your system" Write-Warning "Please manually download $url to $downloadPath" + Write-Warning "To solve this issue for future downloads, you can also install PowerShell 5.1+" throw "Download failed" } } -- cgit v1.2.3 From eab1d5c531695c2a644276832578e5550dd9abf6 Mon Sep 17 00:00:00 2001 From: Robert Schumacher Date: Wed, 14 Mar 2018 10:30:27 -0700 Subject: [vcpkg-ci] Do not rebuild libraries that were previously successful or failed --- toolsrc/include/vcpkg/base/cache.h | 21 +++++ toolsrc/include/vcpkg/base/util.h | 6 +- toolsrc/include/vcpkg/build.h | 17 ++++ toolsrc/include/vcpkg/commands.h | 12 +++ toolsrc/include/vcpkg/dependencies.h | 5 +- toolsrc/include/vcpkg/install.h | 1 + toolsrc/include/vcpkg/sourceparagraph.h | 2 + toolsrc/src/tests.plan.cpp | 84 ++++++++++++++++++- toolsrc/src/vcpkg/base/system.cpp | 10 ++- toolsrc/src/vcpkg/build.cpp | 44 ++++------ toolsrc/src/vcpkg/commands.ci.cpp | 138 +++++++++++++++++++++++++++++++- toolsrc/src/vcpkg/dependencies.cpp | 11 ++- toolsrc/src/vcpkg/install.cpp | 59 +++++++------- toolsrc/src/vcpkg/sourceparagraph.cpp | 10 +++ 14 files changed, 349 insertions(+), 71 deletions(-) create mode 100644 toolsrc/include/vcpkg/base/cache.h diff --git a/toolsrc/include/vcpkg/base/cache.h b/toolsrc/include/vcpkg/base/cache.h new file mode 100644 index 000000000..dfc7565b8 --- /dev/null +++ b/toolsrc/include/vcpkg/base/cache.h @@ -0,0 +1,21 @@ +#pragma once + +#include + +namespace vcpkg +{ + template + struct Cache + { + template + Value const& get_lazy(const Key& k, const F& f) const + { + auto it = m_cache.find(k); + if (it != m_cache.end()) return it->second; + return m_cache.emplace(k, f()).first->second; + } + + private: + mutable std::map m_cache; + }; +} diff --git a/toolsrc/include/vcpkg/base/util.h b/toolsrc/include/vcpkg/base/util.h index 5e07b240a..b12919951 100644 --- a/toolsrc/include/vcpkg/base/util.h +++ b/toolsrc/include/vcpkg/base/util.h @@ -24,10 +24,10 @@ namespace vcpkg::Util namespace Sets { - template - bool contains(const Container& container, const ElementT& item) + template + bool contains(const Container& container, const Key& item) { - return container.find(item) != container.cend(); + return container.find(item) != container.end(); } } diff --git a/toolsrc/include/vcpkg/build.h b/toolsrc/include/vcpkg/build.h index ea81c4dbe..8c4d7b575 100644 --- a/toolsrc/include/vcpkg/build.h +++ b/toolsrc/include/vcpkg/build.h @@ -204,4 +204,21 @@ namespace vcpkg::Build }; BuildInfo read_build_info(const Files::Filesystem& fs, const fs::path& filepath); + + struct AbiEntry + { + std::string key; + std::string value; + }; + + struct AbiTagAndFile + { + std::string tag; + fs::path tag_file; + }; + + Optional compute_abi_tag(const VcpkgPaths& paths, + const BuildPackageConfig& config, + const PreBuildInfo& pre_build_info, + Span dependency_abis); } diff --git a/toolsrc/include/vcpkg/commands.h b/toolsrc/include/vcpkg/commands.h index b6b1c56ab..7369b8206 100644 --- a/toolsrc/include/vcpkg/commands.h +++ b/toolsrc/include/vcpkg/commands.h @@ -7,6 +7,8 @@ #include #include +#include +#include namespace vcpkg::Commands { @@ -23,7 +25,17 @@ namespace vcpkg::Commands namespace CI { + struct UnknownCIPortsResults + { + std::vector unknown; + std::map known; + }; + extern const CommandStructure COMMAND_STRUCTURE; + UnknownCIPortsResults find_unknown_ports_for_ci(const VcpkgPaths& paths, + const std::set& exclusions, + const Dependencies::PortFileProvider& provider, + const std::vector& fspecs); void perform_and_exit(const VcpkgCmdArguments& args, const VcpkgPaths& paths, const Triplet& default_triplet); } diff --git a/toolsrc/include/vcpkg/dependencies.h b/toolsrc/include/vcpkg/dependencies.h index fadb8cc7e..33af6c4f5 100644 --- a/toolsrc/include/vcpkg/dependencies.h +++ b/toolsrc/include/vcpkg/dependencies.h @@ -45,7 +45,8 @@ namespace vcpkg::Dependencies InstallPlanAction(const PackageSpec& spec, const SourceControlFile& scf, const std::set& features, - const RequestType& request_type); + const RequestType& request_type, + std::vector&& dependencies); std::string displayname() const; @@ -58,6 +59,8 @@ namespace vcpkg::Dependencies RequestType request_type; Build::BuildPackageOptions build_options; std::set feature_list; + + std::vector computed_dependencies; }; enum class RemovePlanType diff --git a/toolsrc/include/vcpkg/install.h b/toolsrc/include/vcpkg/install.h index 2e92764dc..b7acbf15f 100644 --- a/toolsrc/include/vcpkg/install.h +++ b/toolsrc/include/vcpkg/install.h @@ -37,6 +37,7 @@ namespace vcpkg::Install std::string total_elapsed_time; void print() const; + static std::string xunit_result(const PackageSpec& spec, Chrono::ElapsedTime time, Build::BuildResult code); std::string xunit_results() const; }; diff --git a/toolsrc/include/vcpkg/sourceparagraph.h b/toolsrc/include/vcpkg/sourceparagraph.h index ea8e27a94..ae5812ea7 100644 --- a/toolsrc/include/vcpkg/sourceparagraph.h +++ b/toolsrc/include/vcpkg/sourceparagraph.h @@ -63,6 +63,8 @@ namespace vcpkg std::unique_ptr core_paragraph; std::vector> feature_paragraphs; + + Optional find_feature(const std::string& featurename) const; }; void print_error_message(Span> error_info_list); diff --git a/toolsrc/src/tests.plan.cpp b/toolsrc/src/tests.plan.cpp index 95056810c..a99f1abb9 100644 --- a/toolsrc/src/tests.plan.cpp +++ b/toolsrc/src/tests.plan.cpp @@ -593,6 +593,87 @@ namespace UnitTest1 features_check(&install_plan[0], "a", {"core"}, Triplet::X64_WINDOWS); } + TEST_METHOD(install_plan_action_dependencies) + { + std::vector> status_paragraphs; + + // Add a port "a" which depends on the core of "b", which was already + // installed explicitly + PackageSpecMap spec_map(Triplet::X64_WINDOWS); + auto spec_c = spec_map.emplace("c"); + auto spec_b = spec_map.emplace("b", "c"); + spec_map.emplace("a", "b"); + + // Install "a" (without explicit feature specification) + auto install_specs = FullPackageSpec::from_string("a", Triplet::X64_WINDOWS); + auto install_plan = Dependencies::create_feature_install_plan( + spec_map.map, + FullPackageSpec::to_feature_specs({install_specs.value_or_exit(VCPKG_LINE_INFO)}), + StatusParagraphs(std::move(status_paragraphs))); + + Assert::IsTrue(install_plan.size() == 3); + features_check(&install_plan[0], "c", {"core"}, Triplet::X64_WINDOWS); + + features_check(&install_plan[1], "b", {"core"}, Triplet::X64_WINDOWS); + Assert::IsTrue(install_plan[1].install_action.get()->computed_dependencies == + std::vector{spec_c}); + + features_check(&install_plan[2], "a", {"core"}, Triplet::X64_WINDOWS); + Assert::IsTrue(install_plan[2].install_action.get()->computed_dependencies == + std::vector{spec_b}); + } + + TEST_METHOD(install_plan_action_dependencies_2) + { + std::vector> status_paragraphs; + + // Add a port "a" which depends on the core of "b", which was already + // installed explicitly + PackageSpecMap spec_map(Triplet::X64_WINDOWS); + auto spec_c = spec_map.emplace("c"); + auto spec_b = spec_map.emplace("b", "c"); + spec_map.emplace("a", "c, b"); + + // Install "a" (without explicit feature specification) + auto install_specs = FullPackageSpec::from_string("a", Triplet::X64_WINDOWS); + auto install_plan = Dependencies::create_feature_install_plan( + spec_map.map, + FullPackageSpec::to_feature_specs({install_specs.value_or_exit(VCPKG_LINE_INFO)}), + StatusParagraphs(std::move(status_paragraphs))); + + Assert::IsTrue(install_plan.size() == 3); + features_check(&install_plan[0], "c", {"core"}, Triplet::X64_WINDOWS); + + features_check(&install_plan[1], "b", {"core"}, Triplet::X64_WINDOWS); + Assert::IsTrue(install_plan[1].install_action.get()->computed_dependencies == + std::vector{spec_c}); + + features_check(&install_plan[2], "a", {"core"}, Triplet::X64_WINDOWS); + Assert::IsTrue(install_plan[2].install_action.get()->computed_dependencies == + std::vector{spec_b, spec_c}); + } + + TEST_METHOD(install_plan_action_dependencies_3) + { + std::vector> status_paragraphs; + + // Add a port "a" which depends on the core of "b", which was already + // installed explicitly + PackageSpecMap spec_map(Triplet::X64_WINDOWS); + spec_map.emplace("a", "", {{"0", ""}, {"1", "a[0]"}}, {"1"}); + + // Install "a" (without explicit feature specification) + auto install_specs = FullPackageSpec::from_string("a", Triplet::X64_WINDOWS); + auto install_plan = Dependencies::create_feature_install_plan( + spec_map.map, + FullPackageSpec::to_feature_specs({install_specs.value_or_exit(VCPKG_LINE_INFO)}), + StatusParagraphs(std::move(status_paragraphs))); + + Assert::IsTrue(install_plan.size() == 1); + features_check(&install_plan[0], "a", {"1", "0", "core"}, Triplet::X64_WINDOWS); + Assert::IsTrue(install_plan[0].install_action.get()->computed_dependencies == std::vector{}); + } + TEST_METHOD(upgrade_with_default_features_1) { std::vector> pghs; @@ -619,7 +700,6 @@ namespace UnitTest1 Assert::IsTrue(plan[0].remove_action.has_value()); Assert::AreEqual("a", plan[1].spec().name().c_str()); - Assert::IsTrue(plan[1].install_action.has_value()); features_check(&plan[1], "a", {"core", "0"}, Triplet::X86_WINDOWS); } @@ -651,11 +731,9 @@ namespace UnitTest1 Assert::IsTrue(plan[0].remove_action.has_value()); Assert::AreEqual("b", plan[1].spec().name().c_str()); - Assert::IsTrue(plan[1].install_action.has_value()); features_check(&plan[1], "b", {"b0", "core"}, Triplet::X64_WINDOWS); Assert::AreEqual("a", plan[2].spec().name().c_str()); - Assert::IsTrue(plan[2].install_action.has_value()); features_check(&plan[2], "a", {"core"}, Triplet::X64_WINDOWS); } diff --git a/toolsrc/src/vcpkg/base/system.cpp b/toolsrc/src/vcpkg/base/system.cpp index f339afa51..a315c7880 100644 --- a/toolsrc/src/vcpkg/base/system.cpp +++ b/toolsrc/src/vcpkg/base/system.cpp @@ -314,6 +314,8 @@ namespace vcpkg::System // Flush stdout before launching external process fflush(stdout); + auto timer = Chrono::ElapsedTimer::create_started(); + #if defined(_WIN32) const auto actual_cmd_line = Strings::format(R"###("%s 2>&1")###", cmd_line); @@ -335,8 +337,10 @@ namespace vcpkg::System } const auto ec = _pclose(pipe); - Debug::println("_pclose() returned %d", ec); remove_byte_order_marks(&output); + + Debug::println("_pclose() returned %d after %8d us", ec, (int)timer.microseconds()); + return {ec, Strings::to_utf8(output)}; #else const auto actual_cmd_line = Strings::format(R"###(%s 2>&1)###", cmd_line); @@ -359,7 +363,9 @@ namespace vcpkg::System } const auto ec = pclose(pipe); - Debug::println("pclose() returned %d", ec); + + Debug::println("_pclose() returned %d after %8d us", ec, (int)timer.microseconds()); + return {ec, output}; #endif } diff --git a/toolsrc/src/vcpkg/build.cpp b/toolsrc/src/vcpkg/build.cpp index b71bdbf25..bc9eca3ba 100644 --- a/toolsrc/src/vcpkg/build.cpp +++ b/toolsrc/src/vcpkg/build.cpp @@ -273,12 +273,10 @@ namespace vcpkg::Build return filter_dependencies(config.scf.core_paragraph->depends, triplet); } - auto it = - Util::find_if(config.scf.feature_paragraphs, - [&](std::unique_ptr const& fpgh) { return fpgh->name == feature; }); - Checks::check_exit(VCPKG_LINE_INFO, it != config.scf.feature_paragraphs.end()); + auto maybe_feature = config.scf.find_feature(feature); + Checks::check_exit(VCPKG_LINE_INFO, maybe_feature.has_value()); - return filter_dependencies(it->get()->depends, triplet); + return filter_dependencies(maybe_feature.get()->depends, triplet); }); auto dep_fspecs = FeatureSpec::from_strings_and_triplet(dep_strings, triplet); @@ -423,22 +421,10 @@ namespace vcpkg::Build return result; } - struct AbiEntry - { - std::string key; - std::string value; - }; - - struct AbiTagAndFile - { - std::string tag; - fs::path tag_file; - }; - - static Optional compute_abi_tag(const VcpkgPaths& paths, - const BuildPackageConfig& config, - const PreBuildInfo& pre_build_info, - Span dependency_abis) + Optional compute_abi_tag(const VcpkgPaths& paths, + const BuildPackageConfig& config, + const PreBuildInfo& pre_build_info, + Span dependency_abis) { if (!GlobalState::g_binary_caching) return nullopt; @@ -584,17 +570,17 @@ namespace vcpkg::Build const auto pre_build_info = PreBuildInfo::from_triplet_file(paths, triplet); - auto abi_tag_and_file = compute_abi_tag(paths, config, pre_build_info, dependency_abis); + auto maybe_abi_tag_and_file = compute_abi_tag(paths, config, pre_build_info, dependency_abis); std::unique_ptr bcf; - auto maybe_abi_tag_and_file = abi_tag_and_file.get(); + auto abi_tag_and_file = maybe_abi_tag_and_file.get(); - if (GlobalState::g_binary_caching && maybe_abi_tag_and_file) + if (GlobalState::g_binary_caching && abi_tag_and_file) { auto archives_root_dir = paths.root / "archives"; - auto archive_name = maybe_abi_tag_and_file->tag + ".zip"; - auto archive_subpath = fs::u8path(maybe_abi_tag_and_file->tag.substr(0, 2)) / archive_name; + auto archive_name = abi_tag_and_file->tag + ".zip"; + auto archive_subpath = fs::u8path(abi_tag_and_file->tag.substr(0, 2)) / archive_name; auto archive_path = archives_root_dir / archive_subpath; auto archive_tombstone_path = archives_root_dir / "fail" / archive_subpath; @@ -617,12 +603,12 @@ namespace vcpkg::Build System::println("Could not locate cached archive: %s", archive_path.u8string()); ExtendedBuildResult result = do_build_package_and_clean_buildtrees( - paths, pre_build_info, spec, abi_tag_and_file.value_or(AbiTagAndFile{}).tag, config, status_db); + paths, pre_build_info, spec, maybe_abi_tag_and_file.value_or(AbiTagAndFile{}).tag, config, status_db); std::error_code ec; fs.create_directories(paths.package_dir(spec) / "share" / spec.name(), ec); auto abi_file_in_package = paths.package_dir(spec) / "share" / spec.name() / "vcpkg_abi_info.txt"; - fs.copy_file(maybe_abi_tag_and_file->tag_file, abi_file_in_package, fs::stdfs::copy_options::none, ec); + fs.copy_file(abi_tag_and_file->tag_file, abi_file_in_package, fs::stdfs::copy_options::none, ec); Checks::check_exit(VCPKG_LINE_INFO, !ec, "Could not copy into file: %s", abi_file_in_package.u8string()); if (result.code == BuildResult::SUCCEEDED) @@ -648,7 +634,7 @@ namespace vcpkg::Build else { return do_build_package_and_clean_buildtrees( - paths, pre_build_info, spec, abi_tag_and_file.value_or(AbiTagAndFile{}).tag, config, status_db); + paths, pre_build_info, spec, maybe_abi_tag_and_file.value_or(AbiTagAndFile{}).tag, config, status_db); } } diff --git a/toolsrc/src/vcpkg/commands.ci.cpp b/toolsrc/src/vcpkg/commands.ci.cpp index e01072a0a..45eb1c83e 100644 --- a/toolsrc/src/vcpkg/commands.ci.cpp +++ b/toolsrc/src/vcpkg/commands.ci.cpp @@ -1,5 +1,6 @@ #include "pch.h" +#include #include #include #include @@ -7,6 +8,7 @@ #include #include #include +#include #include #include #include @@ -44,8 +46,120 @@ namespace vcpkg::Commands::CI nullptr, }; + UnknownCIPortsResults find_unknown_ports_for_ci(const VcpkgPaths& paths, + const std::set& exclusions, + const Dependencies::PortFileProvider& provider, + const std::vector& fspecs) + { + UnknownCIPortsResults ret; + + auto& fs = paths.get_filesystem(); + + std::map abi_tag_map; + std::set will_fail; + + const Build::BuildPackageOptions install_plan_options = {Build::UseHeadVersion::NO, + Build::AllowDownloads::YES, + Build::CleanBuildtrees::YES, + Build::CleanPackages::YES}; + + vcpkg::Cache pre_build_info_cache; + + auto action_plan = Dependencies::create_feature_install_plan(provider, fspecs, StatusParagraphs{}); + + for (auto&& action : action_plan) + { + if (auto p = action.install_action.get()) + { + // determine abi tag + std::string abi; + if (auto scf = p->source_control_file.get()) + { + auto triplet = p->spec.triplet(); + + const Build::BuildPackageConfig build_config{p->source_control_file.value_or_exit(VCPKG_LINE_INFO), + triplet, + paths.port_dir(p->spec), + install_plan_options, + p->feature_list}; + + auto dependency_abis = + Util::fmap(p->computed_dependencies, [&](const PackageSpec& spec) -> Build::AbiEntry { + auto it = abi_tag_map.find(spec); + + if (it == abi_tag_map.end()) + return {spec.name(), ""}; + else + return {spec.name(), it->second}; + }); + const auto& pre_build_info = pre_build_info_cache.get_lazy( + triplet, [&]() { return Build::PreBuildInfo::from_triplet_file(paths, triplet); }); + + auto maybe_tag_and_file = + Build::compute_abi_tag(paths, build_config, pre_build_info, dependency_abis); + if (auto tag_and_file = maybe_tag_and_file.get()) + { + abi = tag_and_file->tag; + abi_tag_map.emplace(p->spec, abi); + } + } + else if (auto ipv = p->installed_package.get()) + { + abi = ipv->core->package.abi; + if (!abi.empty()) abi_tag_map.emplace(p->spec, abi); + } + + std::string state; + + auto archives_root_dir = paths.root / "archives"; + auto archive_name = abi + ".zip"; + auto archive_subpath = fs::u8path(abi.substr(0, 2)) / archive_name; + auto archive_path = archives_root_dir / archive_subpath; + auto archive_tombstone_path = archives_root_dir / "fail" / archive_subpath; + + bool b_will_build = false; + + if (Util::Sets::contains(exclusions, p->spec.name())) + { + ret.known.emplace(p->spec, BuildResult::EXCLUDED); + will_fail.emplace(p->spec); + } + else if (std::any_of(p->computed_dependencies.begin(), + p->computed_dependencies.end(), + [&](const PackageSpec& spec) { return Util::Sets::contains(will_fail, spec); })) + { + ret.known.emplace(p->spec, BuildResult::CASCADED_DUE_TO_MISSING_DEPENDENCIES); + will_fail.emplace(p->spec); + } + else if (fs.exists(archive_path)) + { + state += "pass"; + ret.known.emplace(p->spec, BuildResult::SUCCEEDED); + } + else if (fs.exists(archive_tombstone_path)) + { + state += "fail"; + ret.known.emplace(p->spec, BuildResult::BUILD_FAILED); + will_fail.emplace(p->spec); + } + else + { + ret.unknown.push_back(p->spec); + b_will_build = true; + } + + System::println("%40s: %1s %8s: %s", p->spec, (b_will_build ? "*" : " "), state, abi); + } + } + + return ret; + } + void perform_and_exit(const VcpkgCmdArguments& args, const VcpkgPaths& paths, const Triplet& default_triplet) { + Checks::check_exit( + VCPKG_LINE_INFO, GlobalState::g_binary_caching, "The ci command requires binary caching to be enabled."); + const ParsedArguments options = args.parse_arguments(COMMAND_STRUCTURE); std::set exclusions_set; @@ -77,16 +191,21 @@ namespace vcpkg::Commands::CI Build::CleanBuildtrees::YES, Build::CleanPackages::YES}; - std::vector ports = Install::get_all_port_names(paths); + std::vector> all_known_results; + + std::vector all_ports = Install::get_all_port_names(paths); std::vector results; for (const Triplet& triplet : triplets) { Input::check_triplet(triplet, paths); - std::vector specs = PackageSpec::to_package_specs(ports, triplet); + + std::vector specs = PackageSpec::to_package_specs(all_ports, triplet); // Install the default features for every package - const auto featurespecs = Util::fmap(specs, [](auto& spec) { return FeatureSpec(spec, ""); }); + auto all_fspecs = Util::fmap(specs, [](auto& spec) { return FeatureSpec(spec, ""); }); + auto split_specs = find_unknown_ports_for_ci(paths, exclusions_set, paths_port_file, all_fspecs); + auto fspecs = Util::fmap(split_specs.unknown, [](auto& spec) { return FeatureSpec(spec, ""); }); - auto action_plan = Dependencies::create_feature_install_plan(paths_port_file, featurespecs, status_db); + auto action_plan = Dependencies::create_feature_install_plan(paths_port_file, fspecs, status_db); for (auto&& action : action_plan) { @@ -107,7 +226,10 @@ namespace vcpkg::Commands::CI else { auto summary = Install::perform(action_plan, Install::KeepGoing::YES, paths, status_db); + for (auto&& result : summary.results) + split_specs.known.erase(result.spec); results.push_back({triplet, std::move(summary)}); + all_known_results.emplace_back(std::move(split_specs.known)); } } @@ -125,6 +247,14 @@ namespace vcpkg::Commands::CI for (auto&& result : results) xunit_doc += result.summary.xunit_results(); + for (auto&& known_result : all_known_results) + { + for (auto&& result : known_result) + { + xunit_doc += + Install::InstallSummary::xunit_result(result.first, Chrono::ElapsedTime{}, result.second); + } + } xunit_doc += "\n"; paths.get_filesystem().write_contents(fs::u8path(it_xunit->second), xunit_doc); diff --git a/toolsrc/src/vcpkg/dependencies.cpp b/toolsrc/src/vcpkg/dependencies.cpp index 1d017a8d3..f6d81c973 100644 --- a/toolsrc/src/vcpkg/dependencies.cpp +++ b/toolsrc/src/vcpkg/dependencies.cpp @@ -144,12 +144,14 @@ namespace vcpkg::Dependencies InstallPlanAction::InstallPlanAction(const PackageSpec& spec, const SourceControlFile& scf, const std::set& features, - const RequestType& request_type) + const RequestType& request_type, + std::vector&& dependencies) : spec(spec) , source_control_file(scf) , plan_type(InstallPlanType::BUILD_AND_INSTALL) , request_type(request_type) , feature_list(features) + , computed_dependencies(std::move(dependencies)) { } @@ -162,6 +164,7 @@ namespace vcpkg::Dependencies , plan_type(InstallPlanType::ALREADY_INSTALLED) , request_type(request_type) , feature_list(features) + , computed_dependencies(installed_package.get()->dependencies()) { } @@ -683,11 +686,17 @@ namespace vcpkg::Dependencies // If it will be transiently uninstalled, we need to issue a full installation command auto pscf = p_cluster->source_control_file.value_or_exit(VCPKG_LINE_INFO); Checks::check_exit(VCPKG_LINE_INFO, pscf != nullptr); + + auto dep_specs = Util::fmap(m_graph_plan->install_graph.adjacency_list(p_cluster), + [](ClusterPtr const& p) { return p->spec; }); + Util::sort_unique_erase(dep_specs); + plan.emplace_back(InstallPlanAction{ p_cluster->spec, *pscf, p_cluster->to_install_features, p_cluster->request_type, + std::move(dep_specs), }); } else diff --git a/toolsrc/src/vcpkg/install.cpp b/toolsrc/src/vcpkg/install.cpp index 7d36fba82..e30a34c18 100644 --- a/toolsrc/src/vcpkg/install.cpp +++ b/toolsrc/src/vcpkg/install.cpp @@ -668,39 +668,42 @@ namespace vcpkg::Install return nullptr; } + std::string InstallSummary::xunit_result(const PackageSpec& spec, Chrono::ElapsedTime time, BuildResult code) + { + std::string inner_block; + const char* result_string = ""; + switch (code) + { + case BuildResult::POST_BUILD_CHECKS_FAILED: + case BuildResult::FILE_CONFLICTS: + case BuildResult::BUILD_FAILED: + result_string = "Fail"; + inner_block = Strings::format("", to_string(code)); + break; + case BuildResult::EXCLUDED: + case BuildResult::CASCADED_DUE_TO_MISSING_DEPENDENCIES: + result_string = "Skip"; + inner_block = Strings::format("", to_string(code)); + break; + case BuildResult::SUCCEEDED: result_string = "Pass"; break; + default: Checks::exit_fail(VCPKG_LINE_INFO); + } + + return Strings::format(R"(%s)" + "\n", + spec, + spec, + time.as().count(), + result_string, + inner_block); + } + std::string InstallSummary::xunit_results() const { std::string xunit_doc; for (auto&& result : results) { - std::string inner_block; - const char* result_string = ""; - switch (result.build_result.code) - { - case BuildResult::POST_BUILD_CHECKS_FAILED: - case BuildResult::FILE_CONFLICTS: - case BuildResult::BUILD_FAILED: - result_string = "Fail"; - inner_block = Strings::format("", - to_string(result.build_result.code)); - break; - case BuildResult::EXCLUDED: - case BuildResult::CASCADED_DUE_TO_MISSING_DEPENDENCIES: - result_string = "Skip"; - inner_block = - Strings::format("", to_string(result.build_result.code)); - break; - case BuildResult::SUCCEEDED: result_string = "Pass"; break; - default: Checks::exit_fail(VCPKG_LINE_INFO); - } - - xunit_doc += Strings::format(R"(%s)" - "\n", - result.spec, - result.spec, - result.timing.as().count(), - result_string, - inner_block); + xunit_doc += xunit_result(result.spec, result.timing, result.build_result.code); } return xunit_doc; } diff --git a/toolsrc/src/vcpkg/sourceparagraph.cpp b/toolsrc/src/vcpkg/sourceparagraph.cpp index 0b4baf189..ed61cb42a 100644 --- a/toolsrc/src/vcpkg/sourceparagraph.cpp +++ b/toolsrc/src/vcpkg/sourceparagraph.cpp @@ -158,6 +158,16 @@ namespace vcpkg return std::move(control_file); } + Optional SourceControlFile::find_feature(const std::string& featurename) const + { + auto it = Util::find_if(feature_paragraphs, + [&](const std::unique_ptr& p) { return p->name == featurename; }); + if (it != feature_paragraphs.end()) + return **it; + else + return nullopt; + } + Dependency Dependency::parse_dependency(std::string name, std::string qualifier) { Dependency dep; -- cgit v1.2.3 From ab7985a34b8a4de59dc9a6e6c4c40fbb564797b8 Mon Sep 17 00:00:00 2001 From: Alexander Karatarakis Date: Fri, 16 Mar 2018 16:53:48 -0700 Subject: [vcpkg-hash] Use BCrypt on Windows --- toolsrc/include/vcpkg/base/strings.h | 4 +- toolsrc/include/vcpkg/base/util.h | 12 +- toolsrc/src/vcpkg/base/strings.cpp | 13 ++- toolsrc/src/vcpkg/commands.hash.cpp | 124 ++++++++++++++++++--- toolsrc/vcpkg/vcpkg.vcxproj | 8 +- .../vcpkgmetricsuploader.vcxproj | 8 +- toolsrc/vcpkgtest/vcpkgtest.vcxproj | 4 + 7 files changed, 146 insertions(+), 27 deletions(-) diff --git a/toolsrc/include/vcpkg/base/strings.h b/toolsrc/include/vcpkg/base/strings.h index 6294853af..c32e81ac2 100644 --- a/toolsrc/include/vcpkg/base/strings.h +++ b/toolsrc/include/vcpkg/base/strings.h @@ -46,7 +46,9 @@ namespace vcpkg::Strings bool case_insensitive_ascii_equals(const CStringView left, const CStringView right); - std::string ascii_to_lowercase(std::string input); + std::string ascii_to_lowercase(std::string s); + + std::string ascii_to_uppercase(std::string s); bool case_insensitive_ascii_starts_with(const std::string& s, const std::string& pattern); diff --git a/toolsrc/include/vcpkg/base/util.h b/toolsrc/include/vcpkg/base/util.h index b12919951..c73345719 100644 --- a/toolsrc/include/vcpkg/base/util.h +++ b/toolsrc/include/vcpkg/base/util.h @@ -6,8 +6,6 @@ #include #include -#include - namespace vcpkg::Util { template @@ -158,6 +156,8 @@ namespace vcpkg::Util MoveOnlyBase& operator=(const MoveOnlyBase&) = delete; MoveOnlyBase& operator=(MoveOnlyBase&&) = default; + + ~MoveOnlyBase() = default; }; struct ResourceBase @@ -168,6 +168,8 @@ namespace vcpkg::Util ResourceBase& operator=(const ResourceBase&) = delete; ResourceBase& operator=(ResourceBase&&) = delete; + + ~ResourceBase() = default; }; template @@ -214,4 +216,10 @@ namespace vcpkg::Util return e == E::YES; } } + + template + void unused(T&& param) + { + (void)param; + } } diff --git a/toolsrc/src/vcpkg/base/strings.cpp b/toolsrc/src/vcpkg/base/strings.cpp index a08512c9f..5fedf3e1f 100644 --- a/toolsrc/src/vcpkg/base/strings.cpp +++ b/toolsrc/src/vcpkg/base/strings.cpp @@ -7,10 +7,11 @@ namespace vcpkg::Strings::details { // To disambiguate between two overloads - static const auto isspace = [](const char c) { return std::isspace(c); }; + static bool IS_SPACE(const char c) { return std::isspace(c) != 0; }; // Avoids C4244 warnings because of char<->int conversion that occur when using std::tolower() static char tolower_char(const char c) { return static_cast(std::tolower(c)); } + static char toupper_char(const char c) { return static_cast(std::toupper(c)); } #if defined(_WIN32) static _locale_t& c_locale() @@ -114,6 +115,12 @@ namespace vcpkg::Strings return s; } + std::string ascii_to_uppercase(std::string s) + { + std::transform(s.begin(), s.end(), s.begin(), &details::toupper_char); + return s; + } + bool case_insensitive_ascii_starts_with(const std::string& s, const std::string& pattern) { #if defined(_WIN32) @@ -136,8 +143,8 @@ namespace vcpkg::Strings std::string trim(std::string&& s) { - s.erase(std::find_if_not(s.rbegin(), s.rend(), details::isspace).base(), s.end()); - s.erase(s.begin(), std::find_if_not(s.begin(), s.end(), details::isspace)); + s.erase(std::find_if_not(s.rbegin(), s.rend(), details::IS_SPACE).base(), s.end()); + s.erase(s.begin(), std::find_if_not(s.begin(), s.end(), details::IS_SPACE)); return std::move(s); } diff --git a/toolsrc/src/vcpkg/commands.hash.cpp b/toolsrc/src/vcpkg/commands.hash.cpp index cb0a8cc51..9e1b54390 100644 --- a/toolsrc/src/vcpkg/commands.hash.cpp +++ b/toolsrc/src/vcpkg/commands.hash.cpp @@ -1,13 +1,114 @@ #include "pch.h" +#include +#include #include #include #include #include +#if defined(_WIN32) +#include + +#ifndef NT_SUCCESS +#define NT_SUCCESS(Status) (((NTSTATUS)(Status)) >= 0) +#endif + namespace vcpkg::Commands::Hash { - std::string get_file_hash(const VcpkgPaths& paths, fs::path const& path, std::string const& hash_type) + namespace + { + static std::string to_hex(const unsigned char* string, const size_t bytes) + { + static constexpr char HEX_MAP[] = "0123456789abcdef"; + + std::string output; + output.resize(2 * bytes); + + size_t current_char = 0; + for (size_t i = 0; i < bytes; i++) + { + // high + output[current_char] = HEX_MAP[(string[i] & 0xF0) >> 4]; + ++current_char; + // low + output[current_char] = HEX_MAP[(string[i] & 0x0F)]; + ++current_char; + } + + return output; + } + + struct BCryptAlgorithmHandle : Util::ResourceBase + { + BCRYPT_ALG_HANDLE handle = nullptr; + + ~BCryptAlgorithmHandle() + { + if (handle) BCryptCloseAlgorithmProvider(handle, 0); + } + }; + + struct BCryptHashHandle : Util::ResourceBase + { + BCRYPT_HASH_HANDLE handle = nullptr; + + ~BCryptHashHandle() + { + if (handle) BCryptDestroyHash(handle); + } + }; + } + + std::string get_file_hash(const VcpkgPaths&, const fs::path& path, const std::string& hash_type) + { + BCryptAlgorithmHandle algorithm_handle; + + NTSTATUS error_code = BCryptOpenAlgorithmProvider( + &algorithm_handle.handle, Strings::to_utf16(Strings::ascii_to_uppercase(hash_type)).c_str(), nullptr, 0); + Checks::check_exit(VCPKG_LINE_INFO, NT_SUCCESS(error_code), "Failed to open the algorithm provider"); + + DWORD hash_buffer_bytes; + DWORD cb_data; + error_code = BCryptGetProperty(algorithm_handle.handle, + BCRYPT_HASH_LENGTH, + reinterpret_cast(&hash_buffer_bytes), + sizeof(DWORD), + &cb_data, + 0); + Checks::check_exit(VCPKG_LINE_INFO, NT_SUCCESS(error_code), "Failed to get hash length"); + const ULONG length_in_bytes = hash_buffer_bytes; + + BCryptHashHandle hash_handle; + + error_code = BCryptCreateHash(algorithm_handle.handle, &hash_handle.handle, nullptr, 0, nullptr, 0, 0); + Checks::check_exit(VCPKG_LINE_INFO, NT_SUCCESS(error_code), "Failed to initialize the hasher"); + + FILE* file = nullptr; + const auto ec = _wfopen_s(&file, path.c_str(), L"rb"); + Checks::check_exit(VCPKG_LINE_INFO, ec == 0, "Failed to open file: %s", path.u8string()); + unsigned char buffer[4096]; + while (const auto actual_size = fread(buffer, 1, sizeof(buffer), file)) + { + error_code = BCryptHashData(hash_handle.handle, buffer, static_cast(actual_size), 0); + Checks::check_exit(VCPKG_LINE_INFO, NT_SUCCESS(error_code), "Failed to hash data"); + } + + fclose(file); + + std::unique_ptr hash_buffer = std::make_unique(length_in_bytes); + + error_code = BCryptFinishHash(hash_handle.handle, hash_buffer.get(), length_in_bytes, 0); + Checks::check_exit(VCPKG_LINE_INFO, NT_SUCCESS(error_code), "Failed to finalize the hash"); + + return to_hex(hash_buffer.get(), length_in_bytes); + } +} + +#else +namespace vcpkg::Commands::Hash +{ + std::string get_file_hash(const VcpkgPaths& paths, const fs::path& path, const std::string& hash_type) { const std::string cmd_line = Strings::format( R"("%s" -E %ssum "%s")", @@ -32,7 +133,11 @@ namespace vcpkg::Commands::Hash Util::erase_remove_if(hash, isspace); return hash; } +} +#endif +namespace vcpkg::Commands::Hash +{ const CommandStructure COMMAND_STRUCTURE = { Strings::format("The argument should be a file path\n%s", Help::create_example_string("hash boost_1_62_0.tar.bz2")), @@ -44,19 +149,12 @@ namespace vcpkg::Commands::Hash void perform_and_exit(const VcpkgCmdArguments& args, const VcpkgPaths& paths) { - args.parse_arguments(COMMAND_STRUCTURE); - - if (args.command_arguments.size() == 1) - { - auto hash = get_file_hash(paths, args.command_arguments[0], "SHA512"); - System::println(hash); - } - if (args.command_arguments.size() == 2) - { - auto hash = get_file_hash(paths, args.command_arguments[0], args.command_arguments[1]); - System::println(hash); - } + Util::unused(args.parse_arguments(COMMAND_STRUCTURE)); + const fs::path file_to_hash = args.command_arguments[0]; + const std::string algorithm = args.command_arguments.size() == 2 ? args.command_arguments[1] : "SHA512"; + const std::string hash = get_file_hash(paths, file_to_hash, algorithm); + System::println(hash); Checks::exit_success(VCPKG_LINE_INFO); } } diff --git a/toolsrc/vcpkg/vcpkg.vcxproj b/toolsrc/vcpkg/vcpkg.vcxproj index 4def6a74b..2ab94eb0a 100644 --- a/toolsrc/vcpkg/vcpkg.vcxproj +++ b/toolsrc/vcpkg/vcpkg.vcxproj @@ -77,7 +77,7 @@ false - winhttp.lib;version.lib;kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies) + winhttp.lib;version.lib;kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;Bcrypt.lib;%(AdditionalDependencies) @@ -91,7 +91,7 @@ false - winhttp.lib;version.lib;kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies) + winhttp.lib;version.lib;kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;Bcrypt.lib;%(AdditionalDependencies) @@ -109,7 +109,7 @@ true true - winhttp.lib;version.lib;kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies) + winhttp.lib;version.lib;kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;Bcrypt.lib;%(AdditionalDependencies) @@ -127,7 +127,7 @@ true true - winhttp.lib;version.lib;kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies) + winhttp.lib;version.lib;kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;Bcrypt.lib;%(AdditionalDependencies) diff --git a/toolsrc/vcpkgmetricsuploader/vcpkgmetricsuploader.vcxproj b/toolsrc/vcpkgmetricsuploader/vcpkgmetricsuploader.vcxproj index d78e48e13..a2ceef9ce 100644 --- a/toolsrc/vcpkgmetricsuploader/vcpkgmetricsuploader.vcxproj +++ b/toolsrc/vcpkgmetricsuploader/vcpkgmetricsuploader.vcxproj @@ -77,7 +77,7 @@ false - winhttp.lib;version.lib;kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies) + winhttp.lib;version.lib;kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;Bcrypt.lib;%(AdditionalDependencies) @@ -91,7 +91,7 @@ false - winhttp.lib;version.lib;kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies) + winhttp.lib;version.lib;kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;Bcrypt.lib;%(AdditionalDependencies) @@ -109,7 +109,7 @@ true true - winhttp.lib;version.lib;kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies) + winhttp.lib;version.lib;kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;Bcrypt.lib;%(AdditionalDependencies) @@ -127,7 +127,7 @@ true true - winhttp.lib;version.lib;kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies) + winhttp.lib;version.lib;kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;Bcrypt.lib;%(AdditionalDependencies) diff --git a/toolsrc/vcpkgtest/vcpkgtest.vcxproj b/toolsrc/vcpkgtest/vcpkgtest.vcxproj index d61b15a71..a0d44918d 100644 --- a/toolsrc/vcpkgtest/vcpkgtest.vcxproj +++ b/toolsrc/vcpkgtest/vcpkgtest.vcxproj @@ -120,6 +120,7 @@ Windows $(VCInstallDir)UnitTest\lib;$(VsInstallRoot)\VC\Auxiliary\VS\UnitTest\lib;%(AdditionalLibraryDirectories) + kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;Bcrypt.lib;%(AdditionalDependencies) @@ -138,6 +139,7 @@ Windows $(VCInstallDir)UnitTest\lib;$(VsInstallRoot)\VC\Auxiliary\VS\UnitTest\lib;%(AdditionalLibraryDirectories) + kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;Bcrypt.lib;%(AdditionalDependencies) @@ -159,6 +161,7 @@ true true $(VCInstallDir)UnitTest\lib;$(VsInstallRoot)\VC\Auxiliary\VS\UnitTest\lib;%(AdditionalLibraryDirectories) + kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;Bcrypt.lib;%(AdditionalDependencies) @@ -180,6 +183,7 @@ true true $(VCInstallDir)UnitTest\lib;$(VsInstallRoot)\VC\Auxiliary\VS\UnitTest\lib;%(AdditionalLibraryDirectories) + kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;Bcrypt.lib;%(AdditionalDependencies) -- cgit v1.2.3 From d80dd5cbc777ce765c2d6b78d7c485fdf05f284b Mon Sep 17 00:00:00 2001 From: Robert Schumacher Date: Mon, 19 Mar 2018 15:45:35 -0700 Subject: [vcpkg] Handle failure to store archive --- toolsrc/include/vcpkg/base/files.h | 1 + toolsrc/src/vcpkg/base/files.cpp | 4 ++++ toolsrc/src/vcpkg/build.cpp | 9 ++++++--- 3 files changed, 11 insertions(+), 3 deletions(-) diff --git a/toolsrc/include/vcpkg/base/files.h b/toolsrc/include/vcpkg/base/files.h index 09393b9ee..ac1f192ae 100644 --- a/toolsrc/include/vcpkg/base/files.h +++ b/toolsrc/include/vcpkg/base/files.h @@ -36,6 +36,7 @@ namespace vcpkg::Files virtual void write_lines(const fs::path& file_path, const std::vector& lines) = 0; virtual void write_contents(const fs::path& file_path, const std::string& data, std::error_code& ec) = 0; virtual void rename(const fs::path& oldpath, const fs::path& newpath) = 0; + virtual void rename(const fs::path& oldpath, const fs::path& newpath, std::error_code& ec) = 0; virtual bool remove(const fs::path& path) = 0; virtual bool remove(const fs::path& path, std::error_code& ec) = 0; virtual std::uintmax_t remove_all(const fs::path& path, std::error_code& ec) = 0; diff --git a/toolsrc/src/vcpkg/base/files.cpp b/toolsrc/src/vcpkg/base/files.cpp index b59104a59..4e61666b7 100644 --- a/toolsrc/src/vcpkg/base/files.cpp +++ b/toolsrc/src/vcpkg/base/files.cpp @@ -108,6 +108,10 @@ namespace vcpkg::Files output.close(); } + virtual void rename(const fs::path& oldpath, const fs::path& newpath, std::error_code& ec) override + { + fs::stdfs::rename(oldpath, newpath, ec); + } virtual void rename(const fs::path& oldpath, const fs::path& newpath) override { fs::stdfs::rename(oldpath, newpath); diff --git a/toolsrc/src/vcpkg/build.cpp b/toolsrc/src/vcpkg/build.cpp index bc9eca3ba..ebded2736 100644 --- a/toolsrc/src/vcpkg/build.cpp +++ b/toolsrc/src/vcpkg/build.cpp @@ -618,9 +618,12 @@ namespace vcpkg::Build compress_archive(paths, spec, tmp_archive_path); fs.create_directories(archive_path.parent_path(), ec); - fs.rename(tmp_archive_path, archive_path); - - System::println("Stored binary cache: %s", archive_path.u8string()); + fs.rename(tmp_archive_path, archive_path, ec); + if (ec) + System::println( + System::Color::warning, "Failed to store binary cache: %s", archive_path.u8string()); + else + System::println("Stored binary cache: %s", archive_path.u8string()); } else if (result.code == BuildResult::BUILD_FAILED || result.code == BuildResult::POST_BUILD_CHECKS_FAILED) { -- cgit v1.2.3 From 9e54b3792daca1898a1b751d37fa22360721eba5 Mon Sep 17 00:00:00 2001 From: Robert Schumacher Date: Tue, 20 Mar 2018 21:45:01 -0700 Subject: [mpg123] Disable LTCG for static libs to avoid ABI incompatibility --- ports/mpg123/CONTROL | 2 +- scripts/cmake/vcpkg_build_msbuild.cmake | 6 ++++++ 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/ports/mpg123/CONTROL b/ports/mpg123/CONTROL index f72437453..7eba5e9b8 100644 --- a/ports/mpg123/CONTROL +++ b/ports/mpg123/CONTROL @@ -1,3 +1,3 @@ Source: mpg123 -Version: 1.25.8-2 +Version: 1.25.8-3 Description: mpg123 is a real time MPEG 1.0/2.0/2.5 audio player/decoder for layers 1, 2 and 3 (MPEG 1.0 layer 3 also known as MP3). \ No newline at end of file diff --git a/scripts/cmake/vcpkg_build_msbuild.cmake b/scripts/cmake/vcpkg_build_msbuild.cmake index b8403d277..6da8a7369 100644 --- a/scripts/cmake/vcpkg_build_msbuild.cmake +++ b/scripts/cmake/vcpkg_build_msbuild.cmake @@ -87,6 +87,12 @@ function(vcpkg_build_msbuild) /m ) + if(VCPKG_LIBRARY_LINKAGE STREQUAL "static") + # Disable LTCG for static libraries because this setting introduces ABI incompatibility between minor compiler versions + # TODO: Add a way for the user to override this if they want to opt-in to incompatibility + list(APPEND _csc_OPTIONS /p:WholeProgramOptimization=false) + endif() + if(NOT DEFINED VCPKG_BUILD_TYPE OR VCPKG_BUILD_TYPE STREQUAL "release") message(STATUS "Building ${_csc_PROJECT_PATH} for Release") file(MAKE_DIRECTORY ${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-rel) -- cgit v1.2.3 From 0170cdf5abc7719e7819613dfa2263510efd45c3 Mon Sep 17 00:00:00 2001 From: Robert Schumacher Date: Tue, 20 Mar 2018 20:15:27 -0700 Subject: [abseil][eastl][exiv2][nuklear][thrift][unicorn][zeromq] Upgrades --- ports/abseil/CONTROL | 2 +- ports/abseil/portfile.cmake | 4 ++-- ports/eastl/CONTROL | 2 +- ports/eastl/portfile.cmake | 4 ++-- ports/exiv2/CONTROL | 2 +- ports/exiv2/portfile.cmake | 4 ++-- ports/nuklear/CONTROL | 2 +- ports/nuklear/portfile.cmake | 4 ++-- ports/thrift/CONTROL | 2 +- ports/thrift/portfile.cmake | 4 ++-- ports/unicorn/CONTROL | 2 +- ports/unicorn/portfile.cmake | 4 ++-- ports/zeromq/CONTROL | 2 +- ports/zeromq/portfile.cmake | 4 ++-- 14 files changed, 21 insertions(+), 21 deletions(-) diff --git a/ports/abseil/CONTROL b/ports/abseil/CONTROL index 011d38896..b337b7262 100644 --- a/ports/abseil/CONTROL +++ b/ports/abseil/CONTROL @@ -1,5 +1,5 @@ Source: abseil -Version: 2018-03-17 +Version: 2018-03-20 Description: an open-source collection designed to augment the C++ standard library. Abseil is an open-source collection of C++ library code designed to augment the C++ standard library. The Abseil library code is collected from Google's own C++ code base, has been extensively tested and used in production, and is the same code we depend on in our daily coding lives. In some cases, Abseil provides pieces missing from the C++ standard; in others, Abseil provides alternatives to the standard for special needs we've found through usage in the Google code base. We denote those cases clearly within the library code we provide you. diff --git a/ports/abseil/portfile.cmake b/ports/abseil/portfile.cmake index 42052143d..46b665a14 100644 --- a/ports/abseil/portfile.cmake +++ b/ports/abseil/portfile.cmake @@ -7,8 +7,8 @@ endif() vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO abseil/abseil-cpp - REF eed36bfba04dbe8a08ec72e631c3b337e4f2db11 - SHA512 250911ccca6f21fafbd636e1d45bff748c53e31d0867e8f04bd73b1fbb5ecd261aa9d8e6d07ff610d58daed1dbe14e67db48b1f32a4ce41b3ac0abdde4b14146 + REF 506fb4b56a339314fde23802bd749dbc3b3c1c79 + SHA512 a67d51afcf4446d2c5f27258174dd012e4c15ee1f69eb074770d4f5af335e661b1cafa6b46f6b61b9f7ff0379e7822a03c6d55096dc78a13e554688a8872ebf8 HEAD_REF master ) diff --git a/ports/eastl/CONTROL b/ports/eastl/CONTROL index 2e7d0c433..47a111ea1 100644 --- a/ports/eastl/CONTROL +++ b/ports/eastl/CONTROL @@ -1,4 +1,4 @@ Source: eastl -Version: 3.07.02 +Version: 3.08.00 Description: Electronic Arts Standard Template Library. It is a C++ template library of containers, algorithms, and iterators useful for runtime and tool development across multiple platforms. It is a fairly extensive and robust implementation of such a library and has an emphasis on high performance above all other considerations. diff --git a/ports/eastl/portfile.cmake b/ports/eastl/portfile.cmake index f5b877b8c..1e3831913 100644 --- a/ports/eastl/portfile.cmake +++ b/ports/eastl/portfile.cmake @@ -8,8 +8,8 @@ set(SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src/eastl) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO electronicarts/EASTL - REF 3.07.02 - SHA512 332db00b69a5493158daf1b0b89717646f0a31aeb0bfc9bf3415caee928102c3253c47c21eda0789350095811db45f5eae82ca24fb3fe1e9d67072f9fcd21235 + REF 3.08.00 + SHA512 dc9510d1b6021fb275049a45d52d25002ac2e9859047c0ba4881aa478b700645e17b4fdbc7cdb43cee86df9155c545d2a29a6c1c5b06df3b8b6b4e150f010ade HEAD_REF master ) diff --git a/ports/exiv2/CONTROL b/ports/exiv2/CONTROL index 8411f4c86..5fd6dae7f 100644 --- a/ports/exiv2/CONTROL +++ b/ports/exiv2/CONTROL @@ -1,4 +1,4 @@ Source: exiv2 -Version: 2018-03-17 +Version: 2018-03-20 Build-Depends: zlib, expat, libiconv Description: Image metadata library and tools http://www.exiv2.org diff --git a/ports/exiv2/portfile.cmake b/ports/exiv2/portfile.cmake index 57515137b..3f2440356 100644 --- a/ports/exiv2/portfile.cmake +++ b/ports/exiv2/portfile.cmake @@ -3,8 +3,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO Exiv2/exiv2 - REF a4a0516dc4b8b1376a5d9ca339c59c25e8799033 - SHA512 84ebac0e0aafbf610ae27fd00106a531e5ef1e37f8832c5d52070b0d4f8b8ebad367774f3d0ed4177137fab81d76e08937491b62b77aa73eb563cd7439a111cc + REF 59b148aee9402426e4d4cd7db5be6fa5966a68b5 + SHA512 6e7444d26594cd28d0a421b94ce8dc24b8b65cff3112014931a528235578f5cbbb9b945dff61af1d39fed97ab091aa6c5ebab6c662aada93ca5a9b0316f714f0 HEAD_REF master ) diff --git a/ports/nuklear/CONTROL b/ports/nuklear/CONTROL index 9d34a7d77..c9a4c23a5 100644 --- a/ports/nuklear/CONTROL +++ b/ports/nuklear/CONTROL @@ -1,3 +1,3 @@ Source: nuklear -Version: 2018-03-17 +Version: 2018-03-20 Description: This is a minimal state immediate mode graphical user interface toolkit written in ANSI C and licensed under public domain diff --git a/ports/nuklear/portfile.cmake b/ports/nuklear/portfile.cmake index 51b45286f..833a34692 100644 --- a/ports/nuklear/portfile.cmake +++ b/ports/nuklear/portfile.cmake @@ -2,8 +2,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO vurtun/nuklear - REF 20cd35c0fb379df3b8668e6319e87ada5081c99d - SHA512 a5cf3ecca15e6a8b8f7a4f7cf1122265831eac1152c6df6495b5e54654e948b05b2e349c46a581b51f6d94bb9c3d4f843f6acaffacd610f54dd45588b8cd5109 + REF 94c0412a086110dc801d83c20be7cb4e89dbd5d1 + SHA512 882bce080ca15a9b789289ceda987f1154df1800fd1428cf1d14db5704caf9ed3842ec1fe345db9548fe5305aa8f8721ddd53e75294b896c8caad061d29ec95a HEAD_REF master ) file(INSTALL ${SOURCE_PATH}/nuklear.h DESTINATION ${CURRENT_PACKAGES_DIR}/include) diff --git a/ports/thrift/CONTROL b/ports/thrift/CONTROL index 0d8ba8c5a..1e0037736 100644 --- a/ports/thrift/CONTROL +++ b/ports/thrift/CONTROL @@ -1,4 +1,4 @@ Source: thrift -Version: 2018-03-17 +Version: 2018-03-20 Build-Depends: zlib, libevent, openssl, boost-range, boost-smart-ptr, boost-date-time, boost-locale, boost-scope-exit Description: Apache Thrift is a software project spanning a variety of programming languages and use cases. Our goal is to make reliable, performant communication and data serialization across languages as efficient and seamless as possible. Originally developed at Facebook, Thrift was open sourced in April 2007 and entered the Apache Incubator in May, 2008. Thrift became an Apache TLP in October, 2010. diff --git a/ports/thrift/portfile.cmake b/ports/thrift/portfile.cmake index a80b4bb68..968a5b109 100644 --- a/ports/thrift/portfile.cmake +++ b/ports/thrift/portfile.cmake @@ -15,8 +15,8 @@ vcpkg_find_acquire_program(BISON) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO apache/thrift - REF b7084cbc0d377c59e045553add6f61215ed77854 - SHA512 0f3a4ba79b62c4a5f6809fe626adef63b0c0ab0024993146d946aa7de2eeb8e58086220be6a5d6ec41331fc827ce2a9b7ebe9b9b4b59d9d7307ce5f239430005 + REF 22bd3450c6e97e348d64fb6a75171e8ced79d1e4 + SHA512 5774fd332daac80891ac25c6188e415bf5335ffecc636dc120500f03b6ae23f9317c65dbc703cc89946a894f12c6805f396fd42e763d1e0d3ccfe6398357d321 HEAD_REF master ) diff --git a/ports/unicorn/CONTROL b/ports/unicorn/CONTROL index 398df6e27..6d907bd94 100644 --- a/ports/unicorn/CONTROL +++ b/ports/unicorn/CONTROL @@ -1,3 +1,3 @@ Source: unicorn -Version: 2018-03-13 +Version: 2018-03-20 Description: Unicorn is a lightweight multi-platform, multi-architecture CPU emulator framework diff --git a/ports/unicorn/portfile.cmake b/ports/unicorn/portfile.cmake index dd0aad363..bec0088ed 100644 --- a/ports/unicorn/portfile.cmake +++ b/ports/unicorn/portfile.cmake @@ -14,8 +14,8 @@ set(VCPKG_CRT_LINKAGE "static") vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO unicorn-engine/unicorn - REF 1f408ce35917e2dcb2136072eb4db9e1cf3ab70e - SHA512 fb630a391b33f34e1d04eec0daf90427f907c111b3a0a6ed0d50eb3b2fea2777d0edc9f00a01af614cd3d072b800663ae578080ee76af63a2ee8ae21da46396f + REF 9a01ae8379b0a4bc37cf50f7aeba63fddeb523c4 + SHA512 04d5e850bc1ba36856052be5a4e2a433db8d229ae90b2fbf6a5bf32c9dc86829518a8882d331d0bc7d42a23e9f5c43d6609a20dcca388c717940c081ff21b3a4 HEAD_REF master ) diff --git a/ports/zeromq/CONTROL b/ports/zeromq/CONTROL index 6ff7822dd..4ea44046b 100644 --- a/ports/zeromq/CONTROL +++ b/ports/zeromq/CONTROL @@ -1,3 +1,3 @@ Source: zeromq -Version: 2018-03-17 +Version: 2018-03-20 Description: The ZeroMQ lightweight messaging kernel is a library which extends the standard socket interfaces with features traditionally provided by specialised messaging middleware products diff --git a/ports/zeromq/portfile.cmake b/ports/zeromq/portfile.cmake index 78d7f7a12..0f3765c3c 100644 --- a/ports/zeromq/portfile.cmake +++ b/ports/zeromq/portfile.cmake @@ -3,8 +3,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO zeromq/libzmq - REF 4d9fc8066fe75795e8ccd77526b16baa5615b6bf - SHA512 0ba3b52637ee367f78b63c36e8738b1e217dcbc739bf308b386e9269963a3d87f7670f5904bb2cee6702afac6fe05d51645ab3f897ee507e03ca735f22c91b60 + REF 15b3dccf47179a88311c84d6ef250565abd05182 + SHA512 568d315f48c194f7db3df59ecf70a6625e916a4c258a3f5ad1d7b9e5899afd6a7d825f4fb8811cb49dcd752142952a9bd6e4c31af6572373462a4821d6a1a2bd HEAD_REF master ) -- cgit v1.2.3 From d5e433f03bf5220ef075489c18f5d1522fda1a4d Mon Sep 17 00:00:00 2001 From: Robert Schumacher Date: Sat, 17 Feb 2018 04:46:38 -0800 Subject: [vcpkg-build-msbuild] Add option to use vcpkg's integration. Fixes #891. Fixes #828. --- docs/maintainers/vcpkg_build_msbuild.md | 5 +++++ ports/atkmm/portfile.cmake | 3 +-- ports/glibmm/portfile.cmake | 3 +-- ports/gtkmm/portfile.cmake | 3 +-- ports/pangomm/portfile.cmake | 3 +-- ports/xalan-c/portfile.cmake | 8 ++++---- scripts/cmake/vcpkg_build_msbuild.cmake | 17 ++++++++++++++++- 7 files changed, 29 insertions(+), 13 deletions(-) diff --git a/docs/maintainers/vcpkg_build_msbuild.md b/docs/maintainers/vcpkg_build_msbuild.md index 889b07bdc..37f8d8df2 100644 --- a/docs/maintainers/vcpkg_build_msbuild.md +++ b/docs/maintainers/vcpkg_build_msbuild.md @@ -19,6 +19,11 @@ vcpkg_build_msbuild( ``` ## Parameters +### USE_VCPKG_INTEGRATION +Apply the normal `integrate install` integration for building the project. + +By default, projects built with this command will not automatically link libraries or have header paths set. + ### PROJECT_PATH The path to the solution (`.sln`) or project (`.vcxproj`) file. diff --git a/ports/atkmm/portfile.cmake b/ports/atkmm/portfile.cmake index 4cbaee7ad..74cf021c8 100644 --- a/ports/atkmm/portfile.cmake +++ b/ports/atkmm/portfile.cmake @@ -28,8 +28,7 @@ vcpkg_build_msbuild( PROJECT_PATH ${SOURCE_PATH}/MSVC_Net2013/atkmm.sln TARGET atkmm PLATFORM ${VS_PLATFORM} - # Need this for it to pick up xerces-c port: https://github.com/Microsoft/vcpkg/issues/891 - OPTIONS /p:ForceImportBeforeCppTargets=${VCPKG_ROOT_DIR}/scripts/buildsystems/msbuild/vcpkg.targets + USE_VCPKG_INTEGRATION ) # Handle headers diff --git a/ports/glibmm/portfile.cmake b/ports/glibmm/portfile.cmake index fd4853f55..7586c40a3 100644 --- a/ports/glibmm/portfile.cmake +++ b/ports/glibmm/portfile.cmake @@ -34,8 +34,7 @@ vcpkg_build_msbuild( PROJECT_PATH ${SOURCE_PATH}/MSVC_Net2013/glibmm.sln TARGET giomm PLATFORM ${VS_PLATFORM} - # Need this for it to pick up xerces-c port: https://github.com/Microsoft/vcpkg/issues/891 - OPTIONS /p:ForceImportBeforeCppTargets=${VCPKG_ROOT_DIR}/scripts/buildsystems/msbuild/vcpkg.targets + USE_VCPKG_INTEGRATION ) # Handle headers diff --git a/ports/gtkmm/portfile.cmake b/ports/gtkmm/portfile.cmake index c82bc597d..707e64a9b 100644 --- a/ports/gtkmm/portfile.cmake +++ b/ports/gtkmm/portfile.cmake @@ -34,8 +34,7 @@ vcpkg_build_msbuild( PROJECT_PATH ${SOURCE_PATH}/MSVC_Net2013/gtkmm.sln TARGET gtkmm PLATFORM ${VS_PLATFORM} - # Need this for it to pick up xerces-c port: https://github.com/Microsoft/vcpkg/issues/891 - OPTIONS /p:ForceImportBeforeCppTargets=${VCPKG_ROOT_DIR}/scripts/buildsystems/msbuild/vcpkg.targets + USE_VCPKG_INTEGRATION ) # Handle headers diff --git a/ports/pangomm/portfile.cmake b/ports/pangomm/portfile.cmake index ad350f638..e3409fe15 100644 --- a/ports/pangomm/portfile.cmake +++ b/ports/pangomm/portfile.cmake @@ -34,8 +34,7 @@ vcpkg_build_msbuild( PROJECT_PATH ${SOURCE_PATH}/MSVC_Net2013/pangomm.sln TARGET pangomm PLATFORM ${VS_PLATFORM} - # Need this for it to pick up xerces-c port: https://github.com/Microsoft/vcpkg/issues/891 - OPTIONS /p:ForceImportBeforeCppTargets=${VCPKG_ROOT_DIR}/scripts/buildsystems/msbuild/vcpkg.targets + USE_VCPKG_INTEGRATION ) # Handle headers diff --git a/ports/xalan-c/portfile.cmake b/ports/xalan-c/portfile.cmake index 55dd9f143..4f4da9143 100644 --- a/ports/xalan-c/portfile.cmake +++ b/ports/xalan-c/portfile.cmake @@ -45,15 +45,15 @@ endif() vcpkg_build_msbuild( PROJECT_PATH ${SOURCE_PATH}/c/projects/Win32/VC10/AllInOne/AllInOne.vcxproj PLATFORM ${BUILD_ARCH} - # Need this for it to pick up xerces-c port: https://github.com/Microsoft/vcpkg/issues/891 - OPTIONS /p:ForceImportBeforeCppTargets=${VCPKG_ROOT_DIR}/scripts/buildsystems/msbuild/vcpkg.targets) + USE_VCPKG_INTEGRATION +) # This is needed to generate the required LocalMsgIndex.hpp header vcpkg_build_msbuild( PROJECT_PATH ${SOURCE_PATH}/c/projects/Win32/VC10/Utils/XalanMsgLib/XalanMsgLib.vcxproj PLATFORM ${BUILD_ARCH} - # Need this for it to pick up xerces-c port: https://github.com/Microsoft/vcpkg/issues/891 - OPTIONS /p:ForceImportBeforeCppTargets=${VCPKG_ROOT_DIR}/scripts/buildsystems/msbuild/vcpkg.targets) + USE_VCPKG_INTEGRATION +) file(COPY ${SOURCE_PATH}/c/Build/${OUTPUT_DIR}/VC10/Debug/XalanMessages_1_11D.dll DESTINATION ${CURRENT_PACKAGES_DIR}/debug/bin) file(COPY ${SOURCE_PATH}/c/Build/${OUTPUT_DIR}/VC10/Debug/Xalan-C_1_11D.dll DESTINATION ${CURRENT_PACKAGES_DIR}/debug/bin) diff --git a/scripts/cmake/vcpkg_build_msbuild.cmake b/scripts/cmake/vcpkg_build_msbuild.cmake index 6da8a7369..db04530ef 100644 --- a/scripts/cmake/vcpkg_build_msbuild.cmake +++ b/scripts/cmake/vcpkg_build_msbuild.cmake @@ -19,6 +19,11 @@ ## ``` ## ## ## Parameters +## ### USE_VCPKG_INTEGRATION +## Apply the normal `integrate install` integration for building the project. +## +## By default, projects built with this command will not automatically link libraries or have header paths set. +## ## ### PROJECT_PATH ## The path to the solution (`.sln`) or project (`.vcxproj`) file. ## @@ -56,7 +61,13 @@ ## * [cppunit](https://github.com/Microsoft/vcpkg/blob/master/ports/cppunit/portfile.cmake) function(vcpkg_build_msbuild) - cmake_parse_arguments(_csc "" "PROJECT_PATH;RELEASE_CONFIGURATION;DEBUG_CONFIGURATION;PLATFORM;PLATFORM_TOOLSET;TARGET_PLATFORM_VERSION;TARGET" "OPTIONS;OPTIONS_RELEASE;OPTIONS_DEBUG" ${ARGN}) + cmake_parse_arguments( + _csc + "USE_VCPKG_INTEGRATION" + "PROJECT_PATH;RELEASE_CONFIGURATION;DEBUG_CONFIGURATION;PLATFORM;PLATFORM_TOOLSET;TARGET_PLATFORM_VERSION;TARGET" + "OPTIONS;OPTIONS_RELEASE;OPTIONS_DEBUG" + ${ARGN} + ) if(NOT DEFINED _csc_RELEASE_CONFIGURATION) set(_csc_RELEASE_CONFIGURATION Release) @@ -93,6 +104,10 @@ function(vcpkg_build_msbuild) list(APPEND _csc_OPTIONS /p:WholeProgramOptimization=false) endif() + if(_csc_USE_VCPKG_INTEGRATION) + list(APPEND _csc_OPTIONS /p:ForceImportBeforeCppTargets=${VCPKG_ROOT_DIR}/scripts/buildsystems/msbuild/vcpkg.targets) + endif() + if(NOT DEFINED VCPKG_BUILD_TYPE OR VCPKG_BUILD_TYPE STREQUAL "release") message(STATUS "Building ${_csc_PROJECT_PATH} for Release") file(MAKE_DIRECTORY ${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-rel) -- cgit v1.2.3 From b676c460435442250bbecd407f0ff289dbd289a6 Mon Sep 17 00:00:00 2001 From: Robert Schumacher Date: Wed, 21 Mar 2018 00:40:37 -0700 Subject: [nanomsg] Initial commit of 1.1.2 --- ports/nanomsg/CONTROL | 4 ++++ ports/nanomsg/portfile.cmake | 38 ++++++++++++++++++++++++++++++++++++++ 2 files changed, 42 insertions(+) create mode 100644 ports/nanomsg/CONTROL create mode 100644 ports/nanomsg/portfile.cmake diff --git a/ports/nanomsg/CONTROL b/ports/nanomsg/CONTROL new file mode 100644 index 000000000..c39df5e95 --- /dev/null +++ b/ports/nanomsg/CONTROL @@ -0,0 +1,4 @@ +Source: nanomsg +Version: 1.1.2 +Description: a simple high-performance implementation of several "scalability protocols". + These scalability protocols are light-weight messaging protocols which can be used to solve a number of very common messaging patterns, such as request/reply, publish/subscribe, surveyor/respondent, and so forth. These protocols can run over a variety of transports such as TCP, UNIX sockets, and even WebSocket. diff --git a/ports/nanomsg/portfile.cmake b/ports/nanomsg/portfile.cmake new file mode 100644 index 000000000..a869baea4 --- /dev/null +++ b/ports/nanomsg/portfile.cmake @@ -0,0 +1,38 @@ +include(vcpkg_common_functions) + +vcpkg_from_github( + OUT_SOURCE_PATH SOURCE_PATH + REPO nanomsg/nanomsg + REF 1.1.2 + SHA512 f95ce24b34c25d139cf3de46585f6354e0311a9d5e7135ad71df62b8bb5df26f81a58b9773c39c320df2d0e97cd2905a8576f9f00b0a4d33774f1b610271cee5 + HEAD_REF master +) + +string(COMPARE EQUAL "${VCPKG_LIBRARY_LINKAGE}" "static" NN_STATIC_LIB) + +vcpkg_configure_cmake( + SOURCE_PATH ${SOURCE_PATH} + PREFER_NINJA + OPTIONS + -DCMAKE_DISABLE_FIND_PACKAGE_Git=TRUE + -DNN_STATIC_LIB=${NN_STATIC_LIB} + -DNN_TESTS=OFF + -DNN_TOOLS=OFF + -DNN_ENABLE_DOC=OFF +) + +vcpkg_install_cmake() + +file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include) + +if(VCPKG_LIBRARY_LINKAGE STREQUAL "static") + file(READ ${CURRENT_PACKAGES_DIR}/include/nanomsg/nn.h _contents) + string(REPLACE "defined(NN_STATIC_LIB)" "1" _contents "${_contents}") + file(WRITE ${CURRENT_PACKAGES_DIR}/include/nanomsg/nn.h "${_contents}") +endif() + +file(INSTALL + ${SOURCE_PATH}/COPYING + DESTINATION ${CURRENT_PACKAGES_DIR}/share/nanomsg RENAME copyright) + +vcpkg_copy_pdbs() -- cgit v1.2.3 From 7cf6615a0145218f0baec63471b742e3471c1c86 Mon Sep 17 00:00:00 2001 From: Robert Schumacher Date: Wed, 21 Mar 2018 01:13:27 -0700 Subject: [openssl] Use winsock2.h in headers instead of winsock.h --- ports/openssl/CONTROL | 2 +- ports/openssl/portfile.cmake | 4 ++++ 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/ports/openssl/CONTROL b/ports/openssl/CONTROL index e1cea2799..43a6eb660 100644 --- a/ports/openssl/CONTROL +++ b/ports/openssl/CONTROL @@ -1,3 +1,3 @@ Source: openssl -Version: 1.0.2n-2 +Version: 1.0.2n-3 Description: OpenSSL is an open source project that provides a robust, commercial-grade, and full-featured toolkit for the Transport Layer Security (TLS) and Secure Sockets Layer (SSL) protocols. It is also a general-purpose cryptography library. diff --git a/ports/openssl/portfile.cmake b/ports/openssl/portfile.cmake index 3d442ec9e..dd92552f4 100644 --- a/ports/openssl/portfile.cmake +++ b/ports/openssl/portfile.cmake @@ -150,6 +150,10 @@ if(VCPKG_LIBRARY_LINKAGE STREQUAL static) file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/bin/) endif() +file(READ "${CURRENT_PACKAGES_DIR}/include/openssl/dtls1.h" _contents) +string(REPLACE "" "" _contents "${_contents}") +file(WRITE "${CURRENT_PACKAGES_DIR}/include/openssl/dtls1.h" "${_contents}") + vcpkg_copy_pdbs() file(COPY ${CMAKE_CURRENT_LIST_DIR}/usage DESTINATION ${CURRENT_PACKAGES_DIR}/share/${PORT}) -- cgit v1.2.3 From 43c804a59eebd466835d79ce61628668f0f5b7ee Mon Sep 17 00:00:00 2001 From: Robert Schumacher Date: Wed, 21 Mar 2018 09:49:15 -0700 Subject: [boost-modular-build-helper] Improve handling of non-windows --- ports/boost-modular-build-helper/boost-modular-build.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ports/boost-modular-build-helper/boost-modular-build.cmake b/ports/boost-modular-build-helper/boost-modular-build.cmake index 557e089dd..222fc7fe9 100644 --- a/ports/boost-modular-build-helper/boost-modular-build.cmake +++ b/ports/boost-modular-build-helper/boost-modular-build.cmake @@ -79,7 +79,7 @@ function(boost_modular_build) configure_file(${_bm_DIR}/Jamroot.jam ${_bm_SOURCE_PATH}/Jamroot.jam @ONLY) - if(VCPKG_CMAKE_SYSTEM_NAME STREQUAL "Android" OR VCPKG_CMAKE_SYSTEM_NAME STREQUAL "Linux") + if(VCPKG_CMAKE_SYSTEM_NAME AND NOT VCPKG_CMAKE_SYSTEM_NAME STREQUAL "WindowsStore") vcpkg_configure_cmake( SOURCE_PATH ${CURRENT_INSTALLED_DIR}/share/boost-build PREFER_NINJA -- cgit v1.2.3 From da9c2e79a544e341fd9488695f5e369f3356323e Mon Sep 17 00:00:00 2001 From: Robert Schumacher Date: Wed, 21 Mar 2018 02:32:35 -0700 Subject: [openvpn3][tap-windows6] Initial commit --- ports/asio/CONTROL | 3 ++- ports/openvpn3/CMakeLists.txt | 26 ++++++++++++++++++++++++++ ports/openvpn3/CONTROL | 4 ++++ ports/openvpn3/portfile.cmake | 37 +++++++++++++++++++++++++++++++++++++ ports/tap-windows6/CONTROL | 3 +++ ports/tap-windows6/portfile.cmake | 15 +++++++++++++++ 6 files changed, 87 insertions(+), 1 deletion(-) create mode 100644 ports/openvpn3/CMakeLists.txt create mode 100644 ports/openvpn3/CONTROL create mode 100644 ports/openvpn3/portfile.cmake create mode 100644 ports/tap-windows6/CONTROL create mode 100644 ports/tap-windows6/portfile.cmake diff --git a/ports/asio/CONTROL b/ports/asio/CONTROL index d2ed48569..cd9914052 100644 --- a/ports/asio/CONTROL +++ b/ports/asio/CONTROL @@ -1,3 +1,4 @@ Source: asio -Version: 1.12.0 +Version: 1.12.0-1 +Build-Depends: boost-config, boost-throw-exception, boost-utility, boost-date-time Description: Asio is a cross-platform C++ library for network and low-level I/O programming that provides developers with a consistent asynchronous model using a modern C++ approach. diff --git a/ports/openvpn3/CMakeLists.txt b/ports/openvpn3/CMakeLists.txt new file mode 100644 index 000000000..fcbe85794 --- /dev/null +++ b/ports/openvpn3/CMakeLists.txt @@ -0,0 +1,26 @@ +cmake_minimum_required(VERSION 3.0) +project(openvpncli CXX) + +find_path(ASIO_HPP asio.hpp) +find_library(MBEDTLS_LIB mbedtls) +find_library(MBEDCRYPTO_LIB mbedcrypto) +find_library(MBEDX509_LIB mbedx509) + +include_directories(. ${ASIO_HPP}) + +add_definitions(-DNOMINMAX -DUSE_ASIO -DUSE_MBEDTLS) + +add_library(ovpncli client/ovpncli.cpp) +target_link_libraries(ovpncli PRIVATE Iphlpapi.lib ${MBEDTLS_LIB} ${MBEDCRYPTO_LIB} ${MBEDX509_LIB}) + +install( + TARGETS ovpncli + RUNTIME DESTINATION bin + LIBRARY DESTINATION lib + ARCHIVE DESTINATION lib +) + +if(BUILD_TOOL) + add_executable(cli test/ovpncli/cli.cpp) + target_link_libraries(cli PRIVATE ovpncli) +endif() diff --git a/ports/openvpn3/CONTROL b/ports/openvpn3/CONTROL new file mode 100644 index 000000000..09264a192 --- /dev/null +++ b/ports/openvpn3/CONTROL @@ -0,0 +1,4 @@ +Source: openvpn3 +Version: 2018-03-21 +Build-Depends: asio, tap-windows6 (windows), mbedtls +Description: a C++ class library that implements the functionality of an OpenVPN client, and is protocol-compatible with the OpenVPN 2.x branch. diff --git a/ports/openvpn3/portfile.cmake b/ports/openvpn3/portfile.cmake new file mode 100644 index 000000000..aede361dd --- /dev/null +++ b/ports/openvpn3/portfile.cmake @@ -0,0 +1,37 @@ +include(vcpkg_common_functions) + +set(VCPKG_LIBRARY_LINKAGE static) + +vcpkg_from_github( + OUT_SOURCE_PATH SOURCE_PATH + REPO OpenVPN/openvpn3 + REF 3d5dd9ee3b4182032044d775de5401fc6a7a63ae + SHA512 6a8ed20662efa576c57f38fb9579c5808f745d44e8cd6a84055bec10a58ede5d27e207a842f79ac6a2f7d986494fbd2415f9d59e2b23bd38e45c68546a227697 + HEAD_REF master +) + +file(COPY ${CMAKE_CURRENT_LIST_DIR}/CMakeLists.txt DESTINATION ${SOURCE_PATH}) + +vcpkg_configure_cmake( + SOURCE_PATH ${SOURCE_PATH} + PREFER_NINJA +) + +vcpkg_install_cmake() + +file(COPY ${SOURCE_PATH}/openvpn DESTINATION ${CURRENT_PACKAGES_DIR}/include/) +file(COPY ${SOURCE_PATH}/client/ovpncli.hpp DESTINATION ${CURRENT_PACKAGES_DIR}/include/openvpn/) + +file(GLOB_RECURSE HEADERS ${CURRENT_PACKAGES_DIR}/include/openvpn/*) +foreach(HEADER IN LISTS HEADERS) + file(READ "${HEADER}" _contents) + string(REPLACE "defined(USE_ASIO)" "1" _contents "${_contents}") + string(REPLACE "#ifdef USE_ASIO\n" "#if 1\n" _contents "${_contents}") + string(REPLACE "defined(USE_MBEDTLS)" "1" _contents "${_contents}") + string(REPLACE "#ifdef USE_MBEDTLS\n" "#if 1\n" _contents "${_contents}") + file(WRITE "${HEADER}" "${_contents}") +endforeach() + +file(INSTALL + ${SOURCE_PATH}/COPYRIGHT.AGPLV3 + DESTINATION ${CURRENT_PACKAGES_DIR}/share/openvpn3 RENAME copyright) diff --git a/ports/tap-windows6/CONTROL b/ports/tap-windows6/CONTROL new file mode 100644 index 000000000..744247c32 --- /dev/null +++ b/ports/tap-windows6/CONTROL @@ -0,0 +1,3 @@ +Source: tap-windows6 +Version: 9.21.2-0e30f5c +Description: an NDIS 6 implementation of the TAP-Windows driver, used by OpenVPN and other apps. Note: This package only contains the headers for the driver. \ No newline at end of file diff --git a/ports/tap-windows6/portfile.cmake b/ports/tap-windows6/portfile.cmake new file mode 100644 index 000000000..4e2725d1e --- /dev/null +++ b/ports/tap-windows6/portfile.cmake @@ -0,0 +1,15 @@ +include(vcpkg_common_functions) + +vcpkg_from_github( + OUT_SOURCE_PATH SOURCE_PATH + REPO OpenVPN/tap-windows6 + REF 0e30f5c13b3c7b0bdd60da915350f653e4c14d92 + SHA512 88edecccd4818091f7d70b66f3dfa07146f010a064829dc971abdd0c180ce1f72db9d8f3a1c9f5b4fb3f31e7afe3eadbd7d6f7d711f698e723441d30beaf9e30 + HEAD_REF master +) + +file(COPY ${SOURCE_PATH}/src/tap-windows.h DESTINATION ${CURRENT_PACKAGES_DIR}/include/) + +file(INSTALL + ${SOURCE_PATH}/COPYRIGHT.MIT + DESTINATION ${CURRENT_PACKAGES_DIR}/share/tap-windows6 RENAME copyright) -- cgit v1.2.3 From 88931dc94bcb01d66cceb52cf16f30fe19486f36 Mon Sep 17 00:00:00 2001 From: Robert Schumacher Date: Wed, 21 Mar 2018 09:54:13 -0700 Subject: [boost-modular-build-helper] Reformat --- ports/boost-modular-build-helper/portfile.cmake | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/ports/boost-modular-build-helper/portfile.cmake b/ports/boost-modular-build-helper/portfile.cmake index 1c34f2fec..6ed367434 100644 --- a/ports/boost-modular-build-helper/portfile.cmake +++ b/ports/boost-modular-build-helper/portfile.cmake @@ -7,5 +7,6 @@ file( ${CMAKE_CURRENT_LIST_DIR}/nothing.bat ${CMAKE_CURRENT_LIST_DIR}/user-config.jam ${CMAKE_CURRENT_LIST_DIR}/CMakeLists.txt - DESTINATION ${CURRENT_PACKAGES_DIR}/share/boost-build + DESTINATION + ${CURRENT_PACKAGES_DIR}/share/boost-build ) -- cgit v1.2.3 From 5442d35b9164b75101a57ede9c9dd119b92f18ff Mon Sep 17 00:00:00 2001 From: Robert Schumacher Date: Wed, 21 Mar 2018 01:22:29 -0700 Subject: [caf] Initial commit of 0.15.6 --- ports/caf/CONTROL | 4 +++ ports/caf/openssl-version-override.patch | 14 ++++++++++ ports/caf/portfile.cmake | 48 ++++++++++++++++++++++++++++++++ 3 files changed, 66 insertions(+) create mode 100644 ports/caf/CONTROL create mode 100644 ports/caf/openssl-version-override.patch create mode 100644 ports/caf/portfile.cmake diff --git a/ports/caf/CONTROL b/ports/caf/CONTROL new file mode 100644 index 000000000..3053fa95c --- /dev/null +++ b/ports/caf/CONTROL @@ -0,0 +1,4 @@ +Source: caf +Version: 0.15.6 +Build-Depends: openssl +Description: an open source C++11 actor model implementation featuring lightweight & fast actor implementations, pattern matching for messages, network transparent messaging, and more. diff --git a/ports/caf/openssl-version-override.patch b/ports/caf/openssl-version-override.patch new file mode 100644 index 000000000..bccbd6ca4 --- /dev/null +++ b/ports/caf/openssl-version-override.patch @@ -0,0 +1,14 @@ +diff --git a/CMakeLists.txt b/CMakeLists.txt +index a7b75f7..794af1d 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -545,6 +545,9 @@ if(NOT CAF_NO_OPENSSL) + message(STATUS + "Disable OpenSSL. Required >= 1.0.1 due to TLSv1.2 support.") + set(CAF_NO_OPENSSL yes) ++ elseif(CAF_OPENSSL_VERSION_OVERRIDE) ++ include_directories(BEFORE ${OPENSSL_INCLUDE_DIR}) ++ add_optional_caf_lib(openssl) + else() + # Check if openssl headers and library versions match + set(CMAKE_REQUIRED_LIBRARIES ${OPENSSL_LIBRARIES}) diff --git a/ports/caf/portfile.cmake b/ports/caf/portfile.cmake new file mode 100644 index 000000000..5f06c8d8a --- /dev/null +++ b/ports/caf/portfile.cmake @@ -0,0 +1,48 @@ +include(vcpkg_common_functions) + +if(VCPKG_LIBRARY_LINKAGE STREQUAL "dynamic") + set(VCPKG_LIBRARY_LINKAGE "static") + message("CAF only supports static library linkage") +endif() + +vcpkg_from_github( + OUT_SOURCE_PATH SOURCE_PATH + REPO actor-framework/actor-framework + REF 0.15.6 + SHA512 180ef1149fcbbe4532452cbe4509c177ecc3ae3971453505f6600b715be38b3c891ae7f83b8d368fcb20af037e4d6e94f7f750f477bd499d48316fe33fca511e + HEAD_REF master +) + +vcpkg_apply_patches( + SOURCE_PATH ${SOURCE_PATH} + PATCHES ${CMAKE_CURRENT_LIST_DIR}/openssl-version-override.patch +) + +vcpkg_configure_cmake( + SOURCE_PATH ${SOURCE_PATH} + PREFER_NINJA + OPTIONS + -DCMAKE_DISABLE_FIND_PACKAGE_Doxygen=ON + -DCAF_BUILD_STATIC=ON + -DCAF_BUILD_STATIC_ONLY=ON + -DCAF_NO_TOOLS=ON + -DCAF_NO_EXAMPLES=ON + -DCAF_NO_BENCHMARKS=ON + -DCAF_NO_UNIT_TESTS=ON + -DCAF_NO_PROTOBUF_EXAMPLES=ON + -DCAF_NO_QT_EXAMPLES=ON + -DCAF_NO_OPENCL=ON + -DCAF_NO_OPENSSL=OFF + -DCAF_NO_CURL_EXAMPLES=ON + -DCAF_OPENSSL_VERSION_OVERRIDE=ON +) + +vcpkg_install_cmake() + +file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include ${CURRENT_PACKAGES_DIR}/debug/share) + +file(INSTALL + ${SOURCE_PATH}/LICENSE + DESTINATION ${CURRENT_PACKAGES_DIR}/share/caf RENAME copyright) + +vcpkg_copy_pdbs() -- cgit v1.2.3 From 9a0b2d19e32c793a9a1f0310be99af50ba211add Mon Sep 17 00:00:00 2001 From: Robert Schumacher Date: Wed, 21 Mar 2018 05:26:19 -0700 Subject: [openssl] Don't require nasm on non-windows --- ports/openssl/portfile-nonwindows.cmake | 3 +++ ports/openssl/portfile.cmake | 8 +++++--- 2 files changed, 8 insertions(+), 3 deletions(-) diff --git a/ports/openssl/portfile-nonwindows.cmake b/ports/openssl/portfile-nonwindows.cmake index 67e739af1..3a4f69710 100644 --- a/ports/openssl/portfile-nonwindows.cmake +++ b/ports/openssl/portfile-nonwindows.cmake @@ -4,6 +4,9 @@ if(CMAKE_HOST_WIN32) set(MAKE ${MSYS_ROOT}/usr/bin/make.exe) else() find_program(MAKE make) + if(NOT MAKE) + message(FATAL_ERROR "Could not find make. Please install it through your package manager.") + endif() endif() vcpkg_configure_cmake( diff --git a/ports/openssl/portfile.cmake b/ports/openssl/portfile.cmake index dd92552f4..023b3e233 100644 --- a/ports/openssl/portfile.cmake +++ b/ports/openssl/portfile.cmake @@ -8,11 +8,9 @@ set(OPENSSL_VERSION 1.0.2n) set(MASTER_COPY_SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src/openssl-${OPENSSL_VERSION}) vcpkg_find_acquire_program(PERL) -vcpkg_find_acquire_program(NASM) get_filename_component(PERL_EXE_PATH ${PERL} DIRECTORY) -get_filename_component(NASM_EXE_PATH ${NASM} DIRECTORY) -set(ENV{PATH} "${NASM_EXE_PATH};$ENV{PATH};${PERL_EXE_PATH}") +set(ENV{PATH} "$ENV{PATH};${PERL_EXE_PATH}") vcpkg_download_distfile(OPENSSL_SOURCE_ARCHIVE URLS "https://www.openssl.org/source/openssl-${OPENSSL_VERSION}.tar.gz" "https://www.openssl.org/source/old/1.0.2/openssl-${OPENSSL_VERSION}.tar.gz" @@ -34,6 +32,10 @@ if(VCPKG_CMAKE_SYSTEM_NAME) return() endif() +vcpkg_find_acquire_program(NASM) +get_filename_component(NASM_EXE_PATH ${NASM} DIRECTORY) +set(ENV{PATH} "${NASM_EXE_PATH};$ENV{PATH}") + vcpkg_find_acquire_program(JOM) set(CONFIGURE_COMMAND ${PERL} Configure -- cgit v1.2.3 From 1baa7f16420a359328761b330cdaf58b82b6656c Mon Sep 17 00:00:00 2001 From: Alexander Karatarakis Date: Wed, 21 Mar 2018 16:19:06 -0700 Subject: Improve error message when PROGRAMFILES is not found --- toolsrc/src/vcpkg/base/system.cpp | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) diff --git a/toolsrc/src/vcpkg/base/system.cpp b/toolsrc/src/vcpkg/base/system.cpp index a315c7880..60067759a 100644 --- a/toolsrc/src/vcpkg/base/system.cpp +++ b/toolsrc/src/vcpkg/base/system.cpp @@ -533,7 +533,15 @@ namespace vcpkg::System static const fs::path& get_program_files() { - static const fs::path PATH = System::get_environment_variable("PROGRAMFILES").value_or_exit(VCPKG_LINE_INFO); + static const fs::path PATH = []() -> fs::path { + auto value = System::get_environment_variable("PROGRAMFILES"); + if (auto v = value.get()) + { + return *v; + } + Checks::exit_with_message(VCPKG_LINE_INFO, "Could not find PROGRAMFILES environment variable"); + }(); + return PATH; } @@ -543,7 +551,7 @@ namespace vcpkg::System auto value = System::get_environment_variable("ProgramFiles(x86)"); if (auto v = value.get()) { - return std::move(*v); + return *v; } return get_program_files(); }(); @@ -556,7 +564,7 @@ namespace vcpkg::System auto value = System::get_environment_variable("ProgramW6432"); if (auto v = value.get()) { - return std::move(*v); + return *v; } return get_program_files(); }(); -- cgit v1.2.3 From a1a322074972b3adf45d22eb2ba1739d6249e34d Mon Sep 17 00:00:00 2001 From: Alexander Karatarakis Date: Wed, 21 Mar 2018 16:42:06 -0700 Subject: [opengl] Fix error message when WindowsSDK cannot be found --- ports/opengl/portfile.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ports/opengl/portfile.cmake b/ports/opengl/portfile.cmake index 6e9e1d14f..3fcca32da 100644 --- a/ports/opengl/portfile.cmake +++ b/ports/opengl/portfile.cmake @@ -16,7 +16,7 @@ else() endif() if (NOT EXISTS "${LIBGLFILEPATH}") - message(FATAL_ERROR "Cannot find Windows ${WINDOWS_SDK} SDK. File does not exist: ${LIBFILEPATH}") + message(FATAL_ERROR "Cannot find Windows ${WINDOWS_SDK} SDK. File does not exist: ${LIBGLFILEPATH}") endif() if (NOT EXISTS "${LIBGLUFILEPATH}") -- cgit v1.2.3 From d45954a96b625ba1856ac97b429163a1919a3299 Mon Sep 17 00:00:00 2001 From: Alexander Karatarakis Date: Wed, 21 Mar 2018 18:21:30 -0700 Subject: System::get_program_files() now returns Optional --- toolsrc/include/vcpkg/base/system.h | 4 ++-- toolsrc/src/vcpkg/base/system.cpp | 35 ++++++++++++++++---------------- toolsrc/src/vcpkg/commands.edit.cpp | 20 +++++++++++++----- toolsrc/src/vcpkg/commands.integrate.cpp | 6 +++--- toolsrc/src/vcpkg/vcpkgpaths.cpp | 18 ++++++++-------- 5 files changed, 48 insertions(+), 35 deletions(-) diff --git a/toolsrc/include/vcpkg/base/system.h b/toolsrc/include/vcpkg/base/system.h index b2faf69bb..0d089276f 100644 --- a/toolsrc/include/vcpkg/base/system.h +++ b/toolsrc/include/vcpkg/base/system.h @@ -110,9 +110,9 @@ namespace vcpkg::System std::vector get_supported_host_architectures(); - const fs::path& get_program_files_32_bit(); + const Optional& get_program_files_32_bit(); - const fs::path& get_program_files_platform_bitness(); + const Optional& get_program_files_platform_bitness(); } namespace vcpkg::Debug diff --git a/toolsrc/src/vcpkg/base/system.cpp b/toolsrc/src/vcpkg/base/system.cpp index 60067759a..1094777af 100644 --- a/toolsrc/src/vcpkg/base/system.cpp +++ b/toolsrc/src/vcpkg/base/system.cpp @@ -224,21 +224,21 @@ namespace vcpkg::System env_cstr.push_back(L'\0'); } - if (extra_env.find("PATH") != extra_env.end()) - NEW_PATH += Strings::format(";%s", extra_env.find("PATH")->second); + if (extra_env.find("PATH") != extra_env.end()) + NEW_PATH += Strings::format(";%s", extra_env.find("PATH")->second); env_cstr.append(Strings::to_utf16(NEW_PATH)); env_cstr.push_back(L'\0'); env_cstr.append(L"VSLANG=1033"); env_cstr.push_back(L'\0'); - for (auto item : extra_env) - { - if (item.first == "PATH") continue; - env_cstr.append(Strings::to_utf16(item.first)); - env_cstr.push_back(L'='); - env_cstr.append(Strings::to_utf16(item.second)); - env_cstr.push_back(L'\0'); - } + for (auto item : extra_env) + { + if (item.first == "PATH") continue; + env_cstr.append(Strings::to_utf16(item.first)); + env_cstr.push_back(L'='); + env_cstr.append(Strings::to_utf16(item.second)); + env_cstr.push_back(L'\0'); + } STARTUPINFOW startup_info; memset(&startup_info, 0, sizeof(STARTUPINFOW)); @@ -531,23 +531,24 @@ namespace vcpkg::System } #endif - static const fs::path& get_program_files() + static const Optional& get_program_files() { - static const fs::path PATH = []() -> fs::path { + static const auto PATH = []() -> Optional { auto value = System::get_environment_variable("PROGRAMFILES"); if (auto v = value.get()) { return *v; } - Checks::exit_with_message(VCPKG_LINE_INFO, "Could not find PROGRAMFILES environment variable"); + + return nullopt; }(); return PATH; } - const fs::path& get_program_files_32_bit() + const Optional& get_program_files_32_bit() { - static const fs::path PATH = []() -> fs::path { + static const auto PATH = []() -> Optional { auto value = System::get_environment_variable("ProgramFiles(x86)"); if (auto v = value.get()) { @@ -558,9 +559,9 @@ namespace vcpkg::System return PATH; } - const fs::path& get_program_files_platform_bitness() + const Optional& get_program_files_platform_bitness() { - static const fs::path PATH = []() -> fs::path { + static const auto PATH = []() -> Optional { auto value = System::get_environment_variable("ProgramW6432"); if (auto v = value.get()) { diff --git a/toolsrc/src/vcpkg/commands.edit.cpp b/toolsrc/src/vcpkg/commands.edit.cpp index 41f261a53..ac34a6720 100644 --- a/toolsrc/src/vcpkg/commands.edit.cpp +++ b/toolsrc/src/vcpkg/commands.edit.cpp @@ -69,14 +69,24 @@ namespace vcpkg::Commands::Edit std::vector candidate_paths; auto maybe_editor_path = System::get_environment_variable("EDITOR"); - if (auto editor_path = maybe_editor_path.get()) + if (const std::string* editor_path = maybe_editor_path.get()) { candidate_paths.emplace_back(*editor_path); } - candidate_paths.push_back(System::get_program_files_platform_bitness() / VS_CODE_INSIDERS); - candidate_paths.push_back(System::get_program_files_32_bit() / VS_CODE_INSIDERS); - candidate_paths.push_back(System::get_program_files_platform_bitness() / VS_CODE); - candidate_paths.push_back(System::get_program_files_32_bit() / VS_CODE); + + const auto& program_files = System::get_program_files_platform_bitness(); + if (const fs::path* pf = program_files.get()) + { + candidate_paths.push_back(*pf / VS_CODE_INSIDERS); + candidate_paths.push_back(*pf / VS_CODE); + } + + const auto& program_files_32_bit = System::get_program_files_32_bit(); + if (const fs::path* pf = program_files_32_bit.get()) + { + candidate_paths.push_back(*pf / VS_CODE_INSIDERS); + candidate_paths.push_back(*pf / VS_CODE); + } const std::vector from_registry = find_from_registry(); candidate_paths.insert(candidate_paths.end(), from_registry.cbegin(), from_registry.cend()); diff --git a/toolsrc/src/vcpkg/commands.integrate.cpp b/toolsrc/src/vcpkg/commands.integrate.cpp index 460e99b88..36e4e56e7 100644 --- a/toolsrc/src/vcpkg/commands.integrate.cpp +++ b/toolsrc/src/vcpkg/commands.integrate.cpp @@ -148,12 +148,12 @@ namespace vcpkg::Commands::Integrate static void integrate_install(const VcpkgPaths& paths) { static const std::array OLD_SYSTEM_TARGET_FILES = { - System::get_program_files_32_bit() / + System::get_program_files_32_bit().value_or_exit(VCPKG_LINE_INFO) / "MSBuild/14.0/Microsoft.Common.Targets/ImportBefore/vcpkg.nuget.targets", - System::get_program_files_32_bit() / + System::get_program_files_32_bit().value_or_exit(VCPKG_LINE_INFO) / "MSBuild/14.0/Microsoft.Common.Targets/ImportBefore/vcpkg.system.targets"}; static const fs::path SYSTEM_WIDE_TARGETS_FILE = - System::get_program_files_32_bit() / + System::get_program_files_32_bit().value_or_exit(VCPKG_LINE_INFO) / "MSBuild/Microsoft.Cpp/v4.0/V140/ImportBefore/Default/vcpkg.system.props"; auto& fs = paths.get_filesystem(); diff --git a/toolsrc/src/vcpkg/vcpkgpaths.cpp b/toolsrc/src/vcpkg/vcpkgpaths.cpp index 46e80c4a9..63a484a86 100644 --- a/toolsrc/src/vcpkg/vcpkgpaths.cpp +++ b/toolsrc/src/vcpkg/vcpkgpaths.cpp @@ -190,10 +190,11 @@ namespace vcpkg #endif const std::vector from_path = Files::find_from_PATH("cmake"); candidate_paths.insert(candidate_paths.end(), from_path.cbegin(), from_path.cend()); -#if defined(_WIN32) - candidate_paths.push_back(System::get_program_files_platform_bitness() / "CMake" / "bin" / "cmake.exe"); - candidate_paths.push_back(System::get_program_files_32_bit() / "CMake" / "bin"); -#endif + + const auto& program_files = System::get_program_files_platform_bitness(); + if (const auto pf = program_files.get()) candidate_paths.push_back(*pf / "CMake" / "bin" / "cmake.exe"); + const auto& program_files_32_bit = System::get_program_files_32_bit(); + if (const auto pf = program_files_32_bit.get()) candidate_paths.push_back(*pf / "CMake" / "bin" / "cmake.exe"); const Optional path = find_if_has_equal_or_greater_version(candidate_paths, VERSION_CHECK_ARGUMENTS, TOOL_DATA.required_version); @@ -252,10 +253,11 @@ namespace vcpkg #endif const std::vector from_path = Files::find_from_PATH("git"); candidate_paths.insert(candidate_paths.end(), from_path.cbegin(), from_path.cend()); -#if defined(_WIN32) - candidate_paths.push_back(System::get_program_files_platform_bitness() / "git" / "cmd" / "git.exe"); - candidate_paths.push_back(System::get_program_files_32_bit() / "git" / "cmd" / "git.exe"); -#endif + + const auto& program_files = System::get_program_files_platform_bitness(); + if (const auto pf = program_files.get()) candidate_paths.push_back(*pf / "git" / "cmd" / "git.exe"); + const auto& program_files_32_bit = System::get_program_files_32_bit(); + if (const auto pf = program_files_32_bit.get()) candidate_paths.push_back(*pf / "git" / "cmd" / "git.exe"); const Optional path = find_if_has_equal_or_greater_version(candidate_paths, VERSION_CHECK_ARGUMENTS, TOOL_DATA.required_version); -- cgit v1.2.3 From 38c9c97b6b2106304a9602ddf580b17e7bf56311 Mon Sep 17 00:00:00 2001 From: Robert Schumacher Date: Wed, 21 Mar 2018 11:34:24 -0700 Subject: [double-conversion] Fix on non-windows --- ports/double-conversion/portfile.cmake | 7 +++---- scripts/cmake/vcpkg_configure_cmake.cmake | 2 ++ 2 files changed, 5 insertions(+), 4 deletions(-) diff --git a/ports/double-conversion/portfile.cmake b/ports/double-conversion/portfile.cmake index 326d7e1c1..47f3fba4e 100644 --- a/ports/double-conversion/portfile.cmake +++ b/ports/double-conversion/portfile.cmake @@ -23,6 +23,9 @@ vcpkg_configure_cmake( vcpkg_install_cmake() # Rename exported target files into something vcpkg_fixup_cmake_targets expects +if(EXISTS ${CURRENT_PACKAGES_DIR}/lib/cmake/double-conversion) + vcpkg_fixup_cmake_targets(CONFIG_PATH lib/cmake/double-conversion) +endif() if(NOT VCPKG_USE_HEAD_VERSION) if(EXISTS ${CURRENT_PACKAGES_DIR}/CMake) if(NOT DEFINED VCPKG_BUILD_TYPE OR VCPKG_BUILD_TYPE STREQUAL "debug") @@ -51,10 +54,6 @@ if(NOT VCPKG_USE_HEAD_VERSION) vcpkg_fixup_cmake_targets(CONFIG_PATH CMake) endif() file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/share) -else() - if(EXISTS ${CURRENT_PACKAGES_DIR}/lib/cmake/double-conversion) - vcpkg_fixup_cmake_targets(CONFIG_PATH lib/cmake/double-conversion) - endif() endif() vcpkg_copy_pdbs() diff --git a/scripts/cmake/vcpkg_configure_cmake.cmake b/scripts/cmake/vcpkg_configure_cmake.cmake index 951b6443f..5fa42cb11 100644 --- a/scripts/cmake/vcpkg_configure_cmake.cmake +++ b/scripts/cmake/vcpkg_configure_cmake.cmake @@ -180,6 +180,8 @@ function(vcpkg_configure_cmake) "-DVCPKG_C_FLAGS_DEBUG=${VCPKG_C_FLAGS_DEBUG}" "-DVCPKG_CRT_LINKAGE=${VCPKG_CRT_LINKAGE}" "-DVCPKG_LINKER_FLAGS=${VCPKG_LINKER_FLAGS}" + "-DCMAKE_INSTALL_LIBDIR=lib" + "-DCMAKE_INSTALL_BINDIR=bin" ) if(DEFINED ARCH) -- cgit v1.2.3 From 502c4653868efe6512f59400219085efc53f127a Mon Sep 17 00:00:00 2001 From: Robert Schumacher Date: Wed, 21 Mar 2018 12:27:29 -0700 Subject: [yaml-cpp][zeromq][zstd] Fix non-windows --- ports/yaml-cpp/portfile.cmake | 7 ++++++- ports/zeromq/portfile.cmake | 7 ++++++- ports/zstd/portfile.cmake | 2 +- 3 files changed, 13 insertions(+), 3 deletions(-) diff --git a/ports/yaml-cpp/portfile.cmake b/ports/yaml-cpp/portfile.cmake index 096b178ac..071931f64 100644 --- a/ports/yaml-cpp/portfile.cmake +++ b/ports/yaml-cpp/portfile.cmake @@ -17,7 +17,12 @@ vcpkg_configure_cmake( vcpkg_install_cmake() vcpkg_copy_pdbs() -vcpkg_fixup_cmake_targets(CONFIG_PATH CMake) +if(EXISTS ${CURRENT_PACKAGES_DIR}/CMake) + vcpkg_fixup_cmake_targets(CONFIG_PATH CMake) +endif() +if(EXISTS ${CURRENT_PACKAGES_DIR}/lib/cmake/yaml-cpp) + vcpkg_fixup_cmake_targets(CONFIG_PATH lib/cmake/yaml-cpp) +endif() # Adjust paths and remove hardcoded ones from the config files file(READ ${CURRENT_PACKAGES_DIR}/share/yaml-cpp/yaml-cpp-config.cmake YAML_CONFIG) diff --git a/ports/zeromq/portfile.cmake b/ports/zeromq/portfile.cmake index 0f3765c3c..062ed6b48 100644 --- a/ports/zeromq/portfile.cmake +++ b/ports/zeromq/portfile.cmake @@ -31,7 +31,12 @@ vcpkg_install_cmake() vcpkg_copy_pdbs() -vcpkg_fixup_cmake_targets(CONFIG_PATH CMake) +if(EXISTS ${CURRENT_PACKAGES_DIR}/CMake) + vcpkg_fixup_cmake_targets(CONFIG_PATH CMake) +endif() +if(EXISTS ${CURRENT_PACKAGES_DIR}/share/cmake/ZeroMQ) + vcpkg_fixup_cmake_targets(CONFIG_PATH share/cmake/ZeroMQ) +endif() file(READ ${CURRENT_PACKAGES_DIR}/share/zeromq/ZeroMQConfig.cmake _contents) if(VCPKG_LIBRARY_LINKAGE STREQUAL "dynamic") diff --git a/ports/zstd/portfile.cmake b/ports/zstd/portfile.cmake index 874b5ec93..c69ee0cd0 100644 --- a/ports/zstd/portfile.cmake +++ b/ports/zstd/portfile.cmake @@ -32,7 +32,7 @@ vcpkg_configure_cmake( vcpkg_install_cmake() vcpkg_copy_pdbs() -file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include) +file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include ${CURRENT_PACKAGES_DIR}/debug/share) if(VCPKG_LIBRARY_LINKAGE STREQUAL dynamic) foreach(HEADER zdict.h zstd.h zstd_errors.h) -- cgit v1.2.3 From 191fab2e592b9f4163d32980272253bc84648831 Mon Sep 17 00:00:00 2001 From: Robert Schumacher Date: Wed, 21 Mar 2018 12:54:03 -0700 Subject: [caf][gdcm2] Upgrades --- ports/caf/CONTROL | 2 +- ports/caf/portfile.cmake | 4 ++-- ports/gdcm2/CONTROL | 2 +- ports/gdcm2/portfile.cmake | 4 ++-- 4 files changed, 6 insertions(+), 6 deletions(-) diff --git a/ports/caf/CONTROL b/ports/caf/CONTROL index 3053fa95c..e9b8cd0bf 100644 --- a/ports/caf/CONTROL +++ b/ports/caf/CONTROL @@ -1,4 +1,4 @@ Source: caf -Version: 0.15.6 +Version: 0.15.7 Build-Depends: openssl Description: an open source C++11 actor model implementation featuring lightweight & fast actor implementations, pattern matching for messages, network transparent messaging, and more. diff --git a/ports/caf/portfile.cmake b/ports/caf/portfile.cmake index 5f06c8d8a..aecd84116 100644 --- a/ports/caf/portfile.cmake +++ b/ports/caf/portfile.cmake @@ -8,8 +8,8 @@ endif() vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO actor-framework/actor-framework - REF 0.15.6 - SHA512 180ef1149fcbbe4532452cbe4509c177ecc3ae3971453505f6600b715be38b3c891ae7f83b8d368fcb20af037e4d6e94f7f750f477bd499d48316fe33fca511e + REF 0.15.7 + SHA512 ff0fa205ad71677b84fa09a2e6ce6bb6d1bc9b790bbbc3ac51505467402ff61a218528004212efa2063c798cc512972d318a2c9423067ee51cef719de2b6b186 HEAD_REF master ) diff --git a/ports/gdcm2/CONTROL b/ports/gdcm2/CONTROL index 073e6cbeb..6268c788f 100644 --- a/ports/gdcm2/CONTROL +++ b/ports/gdcm2/CONTROL @@ -1,4 +1,4 @@ Source: gdcm2 -Version: 2.8.4 +Version: 2.8.5 Description: Grassroots DICOM library Build-Depends: zlib, expat diff --git a/ports/gdcm2/portfile.cmake b/ports/gdcm2/portfile.cmake index bb0782ba4..7e8c89611 100644 --- a/ports/gdcm2/portfile.cmake +++ b/ports/gdcm2/portfile.cmake @@ -14,8 +14,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO malaterre/GDCM - REF v2.8.4 - SHA512 d58854507bcc477bcf7944c82014ceac4c603bf8f0e75ddda2371052f4972f1535cb782b47d0822a8929131b804ea5c16b9236b414d70cbf96a494741391c534 + REF v2.8.5 + SHA512 644a7ad04746ffb36b7923796b967cc11fd3b71baede7722093d5785eaf869280c67a968f6b32aeb43cc7c88927fba78459e4846e058996a1634311311745510 ) vcpkg_apply_patches( -- cgit v1.2.3 From 5daba0bcbb76d728f584ab6b1c9f38d7fec211e9 Mon Sep 17 00:00:00 2001 From: Krzysztof Czurylo Date: Thu, 22 Mar 2018 09:35:02 +0100 Subject: [nvml] Initial commit for NVM Library (#1477) --- ports/nvml/CONTROL | 3 ++ ports/nvml/portfile.cmake | 74 +++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 77 insertions(+) create mode 100644 ports/nvml/CONTROL create mode 100644 ports/nvml/portfile.cmake diff --git a/ports/nvml/CONTROL b/ports/nvml/CONTROL new file mode 100644 index 000000000..8bf941bd3 --- /dev/null +++ b/ports/nvml/CONTROL @@ -0,0 +1,3 @@ +Source: nvml +Version: 1.3-0 +Description: Non-Volatile Memory Library \ No newline at end of file diff --git a/ports/nvml/portfile.cmake b/ports/nvml/portfile.cmake new file mode 100644 index 000000000..9e51c2bda --- /dev/null +++ b/ports/nvml/portfile.cmake @@ -0,0 +1,74 @@ + +set(NVML_VERSION 1.3) +set(NVML_HASH 59fb552c693d5279ec86eff8eb1c36832c9c5beb6492a64b54b21c09d90ed52cba22d57912a304cf1ec17c4633da641200fd50dbe4a38355f43c674842f991bd) +set(SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src/${NVML_VERSION}) + +include(vcpkg_common_functions) + +if (VCPKG_LIBRARY_LINKAGE STREQUAL static) + message(STATUS "WARNING: Static building not supported. Building dynamic.") + set(VCPKG_LIBRARY_LINKAGE dynamic) +endif() + +if (TRIPLET_SYSTEM_ARCH MATCHES "arm") + message(FATAL_ERROR "ARM is currently not supported") +elseif (TRIPLET_SYSTEM_ARCH MATCHES "x86") + message(FATAL_ERROR "x86 is not supported. Please use nvml:x64-windows or set environment variable VCPKG_DEFAULT_TRIPLET to 'x64-windows'") +else () + set(MSBUILD_PLATFORM ${TRIPLET_SYSTEM_ARCH}) +endif() + +# Download source +vcpkg_from_github( + OUT_SOURCE_PATH SOURCE_PATH + REPO pmem/nvml + REF ${NVML_VERSION} + SHA512 ${NVML_HASH} + HEAD_REF master +) + +# Build only the selected projects +vcpkg_build_msbuild( + PROJECT_PATH ${SOURCE_PATH}/src/NVML.sln + PLATFORM x64 + TARGET "Solution Items\\libpmem,Solution Items\\libpmemlog,Solution Items\\libpmemblk,Solution Items\\libpmemobj,Solution Items\\libpmempool,Solution Items\\libvmem,Solution Items\\Tools\\pmempool" + OPTIONS /p:SRCVERSION=${NVML_VERSION} +) + +set(DEBUG_ARTIFACTS_PATH ${SOURCE_PATH}/src/x64/Debug) +set(RELEASE_ARTIFACTS_PATH ${SOURCE_PATH}/src/x64/Release) + +# Install header files +file(GLOB HEADER_FILES ${SOURCE_PATH}/src/include/*.h) +file(INSTALL ${HEADER_FILES} DESTINATION ${CURRENT_PACKAGES_DIR}/include) +file(GLOB HEADER_FILES ${SOURCE_PATH}/src/include/libpmemobj/*.h) +file(INSTALL ${HEADER_FILES} DESTINATION ${CURRENT_PACKAGES_DIR}/include/libpmemobj) +file(GLOB HEADER_FILES ${SOURCE_PATH}/src/include/libpmemobj++/*.hpp) +file(INSTALL ${HEADER_FILES} DESTINATION ${CURRENT_PACKAGES_DIR}/include/libpmemobj++) +# Remove unneeded header files +file(REMOVE ${CURRENT_PACKAGES_DIR}/include/libvmmalloc.h) +file(REMOVE ${CURRENT_PACKAGES_DIR}/include/librpmem.h) + +# Install libraries (debug) +file(GLOB LIB_DEBUG_FILES ${DEBUG_ARTIFACTS_PATH}/lib[pv]mem*.lib ${DEBUG_ARTIFACTS_PATH}/lib[pv]mem*.exp) +file(INSTALL ${LIB_DEBUG_FILES} DESTINATION ${CURRENT_PACKAGES_DIR}/debug/lib) +file(REMOVE ${CURRENT_PACKAGES_DIR}/debug/lib/libpmemcommon.lib) +file(GLOB LIB_DEBUG_FILES ${DEBUG_ARTIFACTS_PATH}/lib[pv]mem*.dll) +file(INSTALL ${LIB_DEBUG_FILES} DESTINATION ${CURRENT_PACKAGES_DIR}/debug/bin) + +# Install libraries (release) +file(GLOB LIB_RELEASE_FILES ${RELEASE_ARTIFACTS_PATH}/lib[pv]mem*.lib ${RELEASE_ARTIFACTS_PATH}/lib[pv]mem*.exp) +file(INSTALL ${LIB_RELEASE_FILES} DESTINATION ${CURRENT_PACKAGES_DIR}/lib) +file(REMOVE ${CURRENT_PACKAGES_DIR}/lib/libpmemcommon.lib) +file(GLOB LIB_RELEASE_FILES ${RELEASE_ARTIFACTS_PATH}/lib[pv]mem*.dll) +file(INSTALL ${LIB_RELEASE_FILES} DESTINATION ${CURRENT_PACKAGES_DIR}/bin) + +# Install tools (release only) +file(INSTALL ${RELEASE_ARTIFACTS_PATH}/pmempool.exe DESTINATION ${CURRENT_PACKAGES_DIR}/tools/nvml) +vcpkg_copy_tool_dependencies(${CURRENT_PACKAGES_DIR}/tools/nvml) + +vcpkg_copy_pdbs() + +# Handle copyright +file(COPY ${SOURCE_PATH}/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/nvml) +file(RENAME ${CURRENT_PACKAGES_DIR}/share/nvml/LICENSE ${CURRENT_PACKAGES_DIR}/share/nvml/copyright) -- cgit v1.2.3 From 67573ccf2c18704137071b1309ff3b0f7231a547 Mon Sep 17 00:00:00 2001 From: Robert Schumacher Date: Thu, 22 Mar 2018 01:50:38 -0700 Subject: [pdcurses] Use out-of-source builds. Use official github. Fixes #2951. --- ports/pdcurses/portfile.cmake | 23 ++++++++++++++--------- 1 file changed, 14 insertions(+), 9 deletions(-) diff --git a/ports/pdcurses/portfile.cmake b/ports/pdcurses/portfile.cmake index 22268fdc0..f9db020b9 100644 --- a/ports/pdcurses/portfile.cmake +++ b/ports/pdcurses/portfile.cmake @@ -4,20 +4,25 @@ if(NOT VCPKG_CRT_LINKAGE STREQUAL "dynamic") endif() include(vcpkg_common_functions) -set(SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src-${TARGET_TRIPLET}) find_program(NMAKE nmake) -vcpkg_download_distfile(ARCHIVE - URLS "http://downloads.sourceforge.net/project/pdcurses/pdcurses/3.4/pdcurs34.zip" - FILENAME "pdcurs34.zip" - SHA512 0b916bfe37517abb80df7313608cc4e1ed7659a41ce82763000dfdfa5b8311ffd439193c74fc84a591f343147212bf1caf89e7db71f1f7e4fa70f534834cb039 +vcpkg_from_github( + OUT_SOURCE_PATH SOURCE_PATH + REPO wmcbrine/PDCurses + REF PDCurses_3_4 + SHA512 a05065c2e43771bf769f25f229b6058c4dc6add65d993f2e304e98bded8a8af88e674638c7385383451fddc45cf3bd8c9a95febffc7abcbcce0e6384e4f397b3 + HEAD_REF master ) -if(EXISTS ${CURRENT_BUILDTREES_DIR}/src) - file(REMOVE_RECURSE ${CURRENT_BUILDTREES_DIR}/src) -endif() +file(REMOVE_RECURSE + ${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET} +) + +file(GLOB SOURCES ${SOURCE_PATH}/*) + +file(COPY ${SOURCES} DESTINATION ${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}) -vcpkg_extract_source_archive(${ARCHIVE} ${SOURCE_PATH}) +set(SOURCE_PATH "${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}") file(READ ${SOURCE_PATH}/win32/vcwin32.mak PDC_MAK_ORIG) string(REPLACE " -pdb:none" "" PDC_MAK_ORIG ${PDC_MAK_ORIG}) -- cgit v1.2.3 From 19b75faebd135d97a545dc57a51afef6d94cccc7 Mon Sep 17 00:00:00 2001 From: Robert Schumacher Date: Thu, 22 Mar 2018 02:00:56 -0700 Subject: [README] update badge --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 85f8fc922..99075569d 100644 --- a/README.md +++ b/README.md @@ -1,4 +1,4 @@ -# Vcpkg ![](https://devdiv.visualstudio.com/_apis/public/build/definitions/0bdbc590-a062-4c3f-b0f6-9383f67865ee/5261/badge) +# Vcpkg ![](https://devdiv.visualstudio.com/_apis/public/build/definitions/0bdbc590-a062-4c3f-b0f6-9383f67865ee/8476/badge) ## Overview Vcpkg helps you get C and C++ libraries on Windows. This tool and ecosystem are currently in a preview state; your involvement is vital to its success. -- cgit v1.2.3 From c3fb0b169751ec0f25ac3752a7e83e21173073a4 Mon Sep 17 00:00:00 2001 From: Robert Schumacher Date: Thu, 22 Mar 2018 03:08:25 -0700 Subject: [vcpkg] Download cmake on osx and linux --- ports/yaml-cpp/CONTROL | 2 +- scripts/fetchTool.ps1 | 8 ++--- scripts/vcpkgTools.xml | 6 ++++ toolsrc/src/vcpkg/base/system.cpp | 6 ++-- toolsrc/src/vcpkg/vcpkgpaths.cpp | 73 ++++++++++++++++++++++++++++++++------- 5 files changed, 74 insertions(+), 21 deletions(-) diff --git a/ports/yaml-cpp/CONTROL b/ports/yaml-cpp/CONTROL index 1e2d0e5c9..bec9b7e13 100644 --- a/ports/yaml-cpp/CONTROL +++ b/ports/yaml-cpp/CONTROL @@ -1,3 +1,3 @@ Source: yaml-cpp -Version: 0.6.2 +Version: 0.6.2-1 Description: yaml-cpp is a YAML parser and emitter in C++ matching the YAML 1.2 spec. diff --git a/scripts/fetchTool.ps1 b/scripts/fetchTool.ps1 index 2c2f599ef..86174ee19 100644 --- a/scripts/fetchTool.ps1 +++ b/scripts/fetchTool.ps1 @@ -35,14 +35,14 @@ function fetchToolInternal([Parameter(Mandatory=$true)][string]$tool) $isArchive = vcpkgHasProperty -object $toolData -propertyName "archiveRelativePath" if ($isArchive) { - $downloadPath = "$downloadsDir\$($toolData.archiveRelativePath)" + $downloadPath = "$downloadsDir\$(@($toolData.archiveRelativePath)[0])" } else { - $downloadPath = "$downloadsDir\$($toolData.exeRelativePath)" + $downloadPath = "$downloadsDir\$(@($toolData.exeRelativePath)[0])" } - $url = $toolData.url + [String]$url = @($toolData.url)[0] if (!(Test-Path $downloadPath)) { Write-Host "Downloading $tool..." @@ -50,7 +50,7 @@ function fetchToolInternal([Parameter(Mandatory=$true)][string]$tool) Write-Host "Downloading $tool has completed successfully." } - $expectedDownloadedFileHash = $toolData.sha256 + $expectedDownloadedFileHash = @($toolData.sha256)[0] $downloadedFileHash = vcpkgGetSHA256 $downloadPath vcpkgCheckEqualFileHash -filePath $downloadPath -expectedHash $expectedDownloadedFileHash -actualHash $downloadedFileHash diff --git a/scripts/vcpkgTools.xml b/scripts/vcpkgTools.xml index 02fd0b996..9c78e92d9 100644 --- a/scripts/vcpkgTools.xml +++ b/scripts/vcpkgTools.xml @@ -6,6 +6,12 @@ https://cmake.org/files/v3.10/cmake-3.10.2-win32-x86.zip f5f7e41a21d0e9b655aca58498b08e17ecd27796bf82837e2c84435359169dd6 cmake-3.10.2-win32-x86.zip + cmake-3.10.2-Darwin-x86_64/CMake.app/Contents/bin/cmake + https://cmake.org/files/v3.10/cmake-3.10.2-Darwin-x86_64.tar.gz + cmake-3.10.2-Darwin-x86_64.tar.gz + cmake-3.10.2-Linux-x86_64/bin/cmake + https://cmake.org/files/v3.10/cmake-3.10.2-Linux-x86_64.tar.gz + cmake-3.10.2-Linux-x86_64.tar.gz 2.16.2 diff --git a/toolsrc/src/vcpkg/base/system.cpp b/toolsrc/src/vcpkg/base/system.cpp index 1094777af..171dd2bbf 100644 --- a/toolsrc/src/vcpkg/base/system.cpp +++ b/toolsrc/src/vcpkg/base/system.cpp @@ -285,14 +285,14 @@ namespace vcpkg::System fflush(nullptr); // Basically we are wrapping it in quotes - const std::string& actual_cmd_line = Strings::format(R"###("%s")###", cmd_line); #if defined(_WIN32) + const std::string& actual_cmd_line = Strings::format(R"###("%s")###", cmd_line); Debug::println("_wsystem(%s)", actual_cmd_line); const int exit_code = _wsystem(Strings::to_utf16(actual_cmd_line).c_str()); Debug::println("_wsystem() returned %d", exit_code); #else - Debug::println("_system(%s)", actual_cmd_line); - const int exit_code = system(actual_cmd_line.c_str()); + Debug::println("_system(%s)", cmd_line); + const int exit_code = system(cmd_line.c_str()); Debug::println("_system() returned %d", exit_code); #endif return exit_code; diff --git a/toolsrc/src/vcpkg/vcpkgpaths.cpp b/toolsrc/src/vcpkg/vcpkgpaths.cpp index 63a484a86..c36def15d 100644 --- a/toolsrc/src/vcpkg/vcpkgpaths.cpp +++ b/toolsrc/src/vcpkg/vcpkgpaths.cpp @@ -19,6 +19,8 @@ namespace vcpkg { std::array required_version; fs::path downloaded_exe_path; + std::string url; + fs::path downloaded_path; }; static Optional> parse_version_string(const std::string& version_as_string) @@ -41,8 +43,24 @@ namespace vcpkg static ToolData parse_tool_data_from_xml(const VcpkgPaths& paths, const std::string& tool) { +#if defined(_WIN32) + static constexpr StringLiteral OS_STRING = ""; +#elif defined(__APPLE__) + static constexpr StringLiteral OS_STRING = " os=\"osx\""; +#else // assume linux + static constexpr StringLiteral OS_STRING = " os=\"linux\""; +#endif + static const fs::path XML_PATH = paths.scripts / "vcpkgTools.xml"; + const auto maybe_get_string_inside_tags = [](const std::string& input, + const std::regex& regex) -> Optional { + std::smatch match; + const bool has_match = std::regex_search(input.cbegin(), input.cend(), match, regex); + if (!has_match) return nullopt; + return match[1]; + }; + const auto get_string_inside_tags = [](const std::string& input, const std::regex& regex, const std::string& tag_name) -> std::string { std::smatch match; @@ -57,7 +75,10 @@ namespace vcpkg static const std::regex VERSION_REGEX{ Strings::format(R"###(([\s\S]*?))###", tool)}; static const std::regex EXE_RELATIVE_PATH_REGEX{ - Strings::format(R"###(([\s\S]*?))###", tool)}; + Strings::format(R"###(([\s\S]*?))###", OS_STRING)}; + static const std::regex ARCHIVE_RELATIVE_PATH_REGEX{ + Strings::format(R"###(([\s\S]*?))###", OS_STRING)}; + static const std::regex URL_REGEX{Strings::format(R"###(([\s\S]*?))###", OS_STRING)}; const std::regex tool_regex{Strings::format(R"###(([\s\S]*?))###", tool)}; @@ -74,9 +95,13 @@ namespace vcpkg const std::string required_version_as_string = get_string_inside_tags(tool_data_as_string, VERSION_REGEX, "requiredVersion"); + const std::string url = get_string_inside_tags(tool_data_as_string, URL_REGEX, "url"); + const std::string exe_relative_path = get_string_inside_tags(tool_data_as_string, EXE_RELATIVE_PATH_REGEX, "exeRelativePath"); + auto archive_relative_path = maybe_get_string_inside_tags(tool_data_as_string, ARCHIVE_RELATIVE_PATH_REGEX); + const Optional> required_version = parse_version_string(required_version_as_string); Checks::check_exit(VCPKG_LINE_INFO, required_version.has_value(), @@ -85,7 +110,10 @@ namespace vcpkg required_version_as_string); const fs::path exe_path = paths.downloads / exe_relative_path; - return ToolData{*required_version.get(), exe_path}; + return ToolData{*required_version.get(), + exe_path, + url, + paths.downloads / archive_relative_path.value_or(exe_relative_path)}; } static bool exists_and_has_equal_or_greater_version(const std::string& version_cmd, @@ -144,8 +172,10 @@ namespace vcpkg return data_lines; } - static fs::path fetch_tool(const fs::path& scripts_folder, const std::string& tool_name, const ToolData& tool_data) + static fs::path fetch_tool(const VcpkgPaths& paths, const std::string& tool_name, const ToolData& tool_data) { + const auto& fs = paths.get_filesystem(); + const fs::path& scripts_folder = paths.scripts; const std::array& version = tool_data.required_version; const std::string version_as_string = Strings::format("%d.%d.%d", version[0], version[1], version[2]); @@ -154,6 +184,7 @@ namespace vcpkg version_as_string, tool_name, version_as_string); +#if defined(_WIN32) const fs::path script = scripts_folder / "fetchtool.ps1"; const std::string title = Strings::format( "Fetching %s version %s (No sufficient installed version was found)", tool_name, version_as_string); @@ -173,21 +204,37 @@ namespace vcpkg expected_downloaded_path.u8string(), actual_downloaded_path.u8string()); return actual_downloaded_path; +#else + if (!fs.exists(tool_data.downloaded_path)) + { + auto code = System::cmd_execute( + Strings::format(R"(curl '%s' --create-dirs --output '%s')", tool_data.url, tool_data.downloaded_path)); + Checks::check_exit(VCPKG_LINE_INFO, code == 0, "curl failed while downloading %s", tool_data.url); + } + auto code = System::cmd_execute( + Strings::format(R"(cd '%s' && tar xzf '%s')", paths.downloads, tool_data.downloaded_path)); + Checks::check_exit(VCPKG_LINE_INFO, code == 0, "tar failed while extracting %s", tool_data.downloaded_path); + + Checks::check_exit(VCPKG_LINE_INFO, + fs.exists(tool_data.downloaded_exe_path), + "Expected %s to exist after extracting", + tool_data.downloaded_exe_path); + + return tool_data.downloaded_exe_path; +#endif } static fs::path get_cmake_path(const VcpkgPaths& paths) { -#if defined(_WIN32) + std::vector candidate_paths; +#if defined(_WIN32) || defined(__APPLE__) || defined(__linux__) static const ToolData TOOL_DATA = parse_tool_data_from_xml(paths, "cmake"); + candidate_paths.push_back(TOOL_DATA.downloaded_exe_path); #else static const ToolData TOOL_DATA = ToolData{{3, 5, 1}, ""}; #endif static const std::string VERSION_CHECK_ARGUMENTS = "--version"; - std::vector candidate_paths; -#if defined(_WIN32) - candidate_paths.push_back(TOOL_DATA.downloaded_exe_path); -#endif const std::vector from_path = Files::find_from_PATH("cmake"); candidate_paths.insert(candidate_paths.end(), from_path.cbegin(), from_path.cend()); @@ -203,7 +250,7 @@ namespace vcpkg return *p; } - return fetch_tool(paths.scripts, "cmake", TOOL_DATA); + return fetch_tool(paths, "cmake", TOOL_DATA); } static fs::path get_7za_path(const VcpkgPaths& paths) @@ -212,7 +259,7 @@ namespace vcpkg static const ToolData TOOL_DATA = parse_tool_data_from_xml(paths, "7zip"); if (!paths.get_filesystem().exists(TOOL_DATA.downloaded_exe_path)) { - return fetch_tool(paths.scripts, "7zip", TOOL_DATA); + return fetch_tool(paths, "7zip", TOOL_DATA); } return TOOL_DATA.downloaded_exe_path; #else @@ -235,7 +282,7 @@ namespace vcpkg return *p; } - return fetch_tool(paths.scripts, "nuget", TOOL_DATA); + return fetch_tool(paths, "nuget", TOOL_DATA); } static fs::path get_git_path(const VcpkgPaths& paths) @@ -266,7 +313,7 @@ namespace vcpkg return *p; } - return fetch_tool(paths.scripts, "git", TOOL_DATA); + return fetch_tool(paths, "git", TOOL_DATA); } static fs::path get_ifw_installerbase_path(const VcpkgPaths& paths) @@ -292,7 +339,7 @@ namespace vcpkg return *p; } - return fetch_tool(paths.scripts, "installerbase", TOOL_DATA); + return fetch_tool(paths, "installerbase", TOOL_DATA); } Expected VcpkgPaths::create(const fs::path& vcpkg_root_dir, const std::string& default_vs_path) -- cgit v1.2.3 From ccd362f9e8637066d9f07d2a43c563eeabfc554d Mon Sep 17 00:00:00 2001 From: Robert Schumacher Date: Thu, 22 Mar 2018 07:58:55 -0700 Subject: [yaml-cpp] Revert accidental version bump --- ports/yaml-cpp/CONTROL | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ports/yaml-cpp/CONTROL b/ports/yaml-cpp/CONTROL index bec9b7e13..1e2d0e5c9 100644 --- a/ports/yaml-cpp/CONTROL +++ b/ports/yaml-cpp/CONTROL @@ -1,3 +1,3 @@ Source: yaml-cpp -Version: 0.6.2-1 +Version: 0.6.2 Description: yaml-cpp is a YAML parser and emitter in C++ matching the YAML 1.2 spec. -- cgit v1.2.3 From c80650593399fb2dddc9dff74016f3c5f3e29b28 Mon Sep 17 00:00:00 2001 From: pravic Date: Thu, 22 Mar 2018 18:01:42 +0300 Subject: [sciter] Update to 4.1.4.5838 (#3110) --- ports/sciter/CONTROL | 2 +- ports/sciter/portfile.cmake | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/ports/sciter/CONTROL b/ports/sciter/CONTROL index 23a588b37..e81549a8a 100644 --- a/ports/sciter/CONTROL +++ b/ports/sciter/CONTROL @@ -1,4 +1,4 @@ Source: sciter -Version: 4.1.3 +Version: 4.1.4 Description: Sciter is an embeddable HTML/CSS/scripting engine. Maintainer: andrew.fedoniouk@gmail.com, ehysta@gmail.com diff --git a/ports/sciter/portfile.cmake b/ports/sciter/portfile.cmake index b6f1685a1..ca48f53c3 100644 --- a/ports/sciter/portfile.cmake +++ b/ports/sciter/portfile.cmake @@ -12,8 +12,8 @@ include(vcpkg_common_functions) # header-only library set(VCPKG_POLICY_DLLS_WITHOUT_LIBS enabled) -set(SCITER_REVISION 9ba9e27690e9ef4e97f415822fb738e0f36c574e) -set(SCITER_SHA d4e7d204b67e454ba753524fb1d61887fcaeae256abb81297afc0aa7795f1acb21754ef368700dfa919717f23ca1bbb16498de1ad84c94ac7c2fc295f67f91c8) +set(SCITER_REVISION eb0d385af8f426788870cc75522379f67854799c) +set(SCITER_SHA b785f370b27f759e0bec370f413c85b21d82a7cb76b3cbaa50c885b713453a325ff7ace042e263fafec7695c50370bb589597a9877816716bae9a4b4479f54fe) if(VCPKG_TARGET_ARCHITECTURE STREQUAL x64) set(SCITER_ARCH 64) -- cgit v1.2.3 From 1f62b32641045fe377ee80ff1854a785344687d2 Mon Sep 17 00:00:00 2001 From: Robert Schumacher Date: Thu, 22 Mar 2018 10:01:12 -0700 Subject: [vcpkg] Sort abi tags to ensure stability --- toolsrc/include/vcpkg/build.h | 5 +++++ toolsrc/src/vcpkg/build.cpp | 2 ++ 2 files changed, 7 insertions(+) diff --git a/toolsrc/include/vcpkg/build.h b/toolsrc/include/vcpkg/build.h index 8c4d7b575..1c22d39d8 100644 --- a/toolsrc/include/vcpkg/build.h +++ b/toolsrc/include/vcpkg/build.h @@ -209,6 +209,11 @@ namespace vcpkg::Build { std::string key; std::string value; + + bool operator<(const AbiEntry& other) const + { + return key < other.key || (key == other.key && value < other.value); + } }; struct AbiTagAndFile diff --git a/toolsrc/src/vcpkg/build.cpp b/toolsrc/src/vcpkg/build.cpp index ebded2736..953e77460 100644 --- a/toolsrc/src/vcpkg/build.cpp +++ b/toolsrc/src/vcpkg/build.cpp @@ -449,6 +449,8 @@ namespace vcpkg::Build if (config.build_package_options.use_head_version == UseHeadVersion::YES) abi_tag_entries.emplace_back(AbiEntry{"head", ""}); + Util::sort(abi_tag_entries); + std::string full_abi_info = Strings::join("", abi_tag_entries, [](const AbiEntry& p) { return p.key + " " + p.value + "\n"; }); -- cgit v1.2.3 From 637c9bc0f012e402f5cff5e5f9ac1ca993f89ab8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Micha=C5=82=20Janiszewski?= Date: Thu, 22 Mar 2018 22:28:17 +0100 Subject: [vcpkg] Fix setting exePath in fetchTool (#3114) --- scripts/fetchTool.ps1 | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scripts/fetchTool.ps1 b/scripts/fetchTool.ps1 index 86174ee19..ff9b5d9bf 100644 --- a/scripts/fetchTool.ps1 +++ b/scripts/fetchTool.ps1 @@ -25,7 +25,7 @@ function fetchToolInternal([Parameter(Mandatory=$true)][string]$tool) throw "Unkown tool $tool" } - $exePath = "$downloadsDir\$($toolData.exeRelativePath)" + $exePath = "$downloadsDir\$(@($toolData.exeRelativePath)[0])" if (Test-Path $exePath) { -- cgit v1.2.3 From bc4fd2653bba4b22b2a9b94a5f22ee0e253413b5 Mon Sep 17 00:00:00 2001 From: Alexander Karatarakis Date: Thu, 22 Mar 2018 16:46:52 -0700 Subject: Improve warning message about Powershell 5.1 --- scripts/VcpkgPowershellUtils.ps1 | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scripts/VcpkgPowershellUtils.ps1 b/scripts/VcpkgPowershellUtils.ps1 index 82718ecdc..d9c9e3760 100644 --- a/scripts/VcpkgPowershellUtils.ps1 +++ b/scripts/VcpkgPowershellUtils.ps1 @@ -140,7 +140,7 @@ function vcpkgDownloadFile( [Parameter(Mandatory=$true)][string]$url, { Write-Warning "Github has dropped support for TLS versions prior to 1.2, which is not available on your system" Write-Warning "Please manually download $url to $downloadPath" - Write-Warning "To solve this issue for future downloads, you can also install PowerShell 5.1+" + Write-Warning "To solve this issue for future downloads, you can also install Windows Management Framework 5.1+" throw "Download failed" } } -- cgit v1.2.3 From b06e3f3c95a091d434fe799d3a6bb2c684deea52 Mon Sep 17 00:00:00 2001 From: Pavel Kisliak <37534137+PavelKisliak@users.noreply.github.com> Date: Fri, 23 Mar 2018 08:49:42 +0300 Subject: Add new package - BitSerializer (#3111) --- ports/bitserializer/CONTROL | 4 ++++ ports/bitserializer/portfile.cmake | 13 +++++++++++++ 2 files changed, 17 insertions(+) create mode 100644 ports/bitserializer/CONTROL create mode 100644 ports/bitserializer/portfile.cmake diff --git a/ports/bitserializer/CONTROL b/ports/bitserializer/CONTROL new file mode 100644 index 000000000..95e36f5b9 --- /dev/null +++ b/ports/bitserializer/CONTROL @@ -0,0 +1,4 @@ +Source: bitserializer +Version: 0.7 +Build-Depends: cpprestsdk +Description: The library for simple serialization of arbitrary C++ types to various output formats (currently just supported JSON based on CppRestSDK). diff --git a/ports/bitserializer/portfile.cmake b/ports/bitserializer/portfile.cmake new file mode 100644 index 000000000..5e59f0c71 --- /dev/null +++ b/ports/bitserializer/portfile.cmake @@ -0,0 +1,13 @@ +include(vcpkg_common_functions) +vcpkg_from_bitbucket( + OUT_SOURCE_PATH SOURCE_PATH + REPO Pavel_Kisliak/BitSerializer + REF 0.7 + SHA512 3a50b1b3077115f60d298f4257ae6a5a350c1d8b3d575af83b4f0746757ab3393da7c81ac9c7db4e30540fe94f1742b1d39de724b2dec080faf727b885bb19a4 + HEAD_REF master +) + +file(INSTALL ${SOURCE_PATH}/include DESTINATION ${CURRENT_PACKAGES_DIR}) + +# Handle copyright +file(INSTALL ${SOURCE_PATH}/license.txt DESTINATION ${CURRENT_PACKAGES_DIR}/share/bitserializer RENAME copyright) -- cgit v1.2.3 From b00aa49657622862670a9c39a497f8455f57986f Mon Sep 17 00:00:00 2001 From: Robert Schumacher Date: Thu, 22 Mar 2018 23:03:28 -0700 Subject: [catch2] Use upstream github repo, which also generates cmake config targets. --- ports/catch2/CONTROL | 2 +- ports/catch2/portfile.cmake | 36 ++++++++++++++++++++++++------------ 2 files changed, 25 insertions(+), 13 deletions(-) diff --git a/ports/catch2/CONTROL b/ports/catch2/CONTROL index 7300079fc..faa5f0574 100644 --- a/ports/catch2/CONTROL +++ b/ports/catch2/CONTROL @@ -1,4 +1,4 @@ Source: catch2 -Version: 2.2.1 +Version: 2.2.1-1 Description: A modern, header-only test framework for unit testing. Issues, PRs and changelogs can be found at https://github.com/catchorg/Catch2 diff --git a/ports/catch2/portfile.cmake b/ports/catch2/portfile.cmake index ebb26c40d..65a38d8f0 100644 --- a/ports/catch2/portfile.cmake +++ b/ports/catch2/portfile.cmake @@ -1,18 +1,30 @@ include(vcpkg_common_functions) -set(CATCH_VERSION v2.2.1) - -vcpkg_download_distfile(HEADER - URLS "https://github.com/catchorg/Catch2/releases/download/${CATCH_VERSION}/catch.hpp" - FILENAME "catchorg-catch2-${CATCH_VERSION}.hpp" - SHA512 89f707e667fabf1cc2be43b2ccf046a59007c68b8e4b37dde6799a960e57a9cdd1542289b83631ee6e450e22bf46cba477308ec872c1d0261c3bd4c218ab76fc +vcpkg_from_github( + OUT_SOURCE_PATH SOURCE_PATH + REPO catchorg/Catch2 + REF v2.2.1 + SHA512 48d3a0384dcd19fe622c4fda51639be36c904aaff77f5857615010c57e69d8e9f1deb2156e3e4882a592fe260d2bae0efa3cd02c2a2cabe07d9f9db09051a6b0 + HEAD_REF master ) -vcpkg_download_distfile(LICENSE - URLS "https://raw.githubusercontent.com/catchorg/Catch2/${CATCH_VERSION}/LICENSE.txt" - FILENAME "catchorg-catch2-LICENSE-${CATCH_VERSION}.txt" - SHA512 d6078467835dba8932314c1c1e945569a64b065474d7aced27c9a7acc391d52e9f234138ed9f1aa9cd576f25f12f557e0b733c14891d42c16ecdc4a7bd4d60b8 +vcpkg_configure_cmake( + SOURCE_PATH ${SOURCE_PATH} + PREFER_NINJA + OPTIONS + -DBUILD_TESTING=OFF + -DCATCH_BUILD_EXAMPLES=OFF ) -file(INSTALL ${HEADER} DESTINATION ${CURRENT_PACKAGES_DIR}/include RENAME catch.hpp) -file(INSTALL ${LICENSE} DESTINATION ${CURRENT_PACKAGES_DIR}/share/catch2 RENAME copyright) +vcpkg_install_cmake() + +vcpkg_fixup_cmake_targets(CONFIG_PATH lib/cmake/Catch2 TARGET_PATH share/catch2) + +file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug ${CURRENT_PACKAGES_DIR}/lib) + +if(NOT EXISTS ${CURRENT_PACKAGES_DIR}/include/catch/catch.hpp) + message(FATAL_ERROR "Main includes have moved. Please update the forwarder.") +endif() + +file(WRITE ${CURRENT_PACKAGES_DIR}/include/catch.hpp "#include ") +file(INSTALL ${SOURCE_PATH}/LICENSE.txt DESTINATION ${CURRENT_PACKAGES_DIR}/share/catch2 RENAME copyright) -- cgit v1.2.3 From 651fc946512d8a3bbfc992dd2c5a6935a9a7bfeb Mon Sep 17 00:00:00 2001 From: Robert Schumacher Date: Fri, 23 Mar 2018 06:52:20 -0700 Subject: [mpark-variant] Initial commit of v1.3.0 --- ports/mpark-variant/CONTROL | 3 +++ ports/mpark-variant/portfile.cmake | 24 ++++++++++++++++++++++++ 2 files changed, 27 insertions(+) create mode 100644 ports/mpark-variant/CONTROL create mode 100644 ports/mpark-variant/portfile.cmake diff --git a/ports/mpark-variant/CONTROL b/ports/mpark-variant/CONTROL new file mode 100644 index 000000000..d6cbf380e --- /dev/null +++ b/ports/mpark-variant/CONTROL @@ -0,0 +1,3 @@ +Source: mpark-variant +Version: 1.3.0 +Description: an implementation of C++17 std::variant for C++11/14/17. diff --git a/ports/mpark-variant/portfile.cmake b/ports/mpark-variant/portfile.cmake new file mode 100644 index 000000000..b400507ee --- /dev/null +++ b/ports/mpark-variant/portfile.cmake @@ -0,0 +1,24 @@ +include(vcpkg_common_functions) + +vcpkg_from_github( + OUT_SOURCE_PATH SOURCE_PATH + REPO mpark/variant + REF v1.3.0 + SHA512 53735d14a9b241d93191fa3b7ac8ed8fb17a8f8766318b2817c4dd1948088377190ca168027a297bae41bb2cc1f6043fe51752d43b8c33badcc9f2df9fa08ece + HEAD_REF master +) + +vcpkg_configure_cmake( + SOURCE_PATH ${SOURCE_PATH} + PREFER_NINJA +) + +vcpkg_install_cmake() + +vcpkg_fixup_cmake_targets(CONFIG_PATH lib/cmake/mpark_variant TARGET_PATH share/mpark_variant) + +file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug ${CURRENT_PACKAGES_DIR}/lib) + +file(INSTALL + ${SOURCE_PATH}/LICENSE.md + DESTINATION ${CURRENT_PACKAGES_DIR}/share/mpark-variant RENAME copyright) -- cgit v1.2.3 From 8d8e676711d63537dfd1638504798da0786da577 Mon Sep 17 00:00:00 2001 From: Robert Schumacher Date: Fri, 23 Mar 2018 09:42:18 -0700 Subject: [azmq] Initial commit of 1.0.2 --- ports/azmq/CONTROL | 6 ++++++ ports/azmq/portfile.cmake | 15 +++++++++++++++ 2 files changed, 21 insertions(+) create mode 100644 ports/azmq/CONTROL create mode 100644 ports/azmq/portfile.cmake diff --git a/ports/azmq/CONTROL b/ports/azmq/CONTROL new file mode 100644 index 000000000..350bee266 --- /dev/null +++ b/ports/azmq/CONTROL @@ -0,0 +1,6 @@ +Source: azmq +Version: 1.0.2 +Build-Depends: boost-asio, boost-assert, boost-config, boost-container, boost-format, boost-intrusive, boost-iterator, boost-lexical-cast, boost-logic, boost-optional, boost-random, boost-range, boost-regex, boost-system, boost-thread, boost-utility, zeromq +Description: Boost Asio style bindings for ZeroMQ + This library is built on top of ZeroMQ's standard C interface and is intended to work well with C++ applications which use the Boost libraries in general, and Asio in particular. + The main abstraction exposed by the library is azmq::socket which provides an Asio style socket interface to the underlying zeromq socket and interfaces with Asio's io_service(). The socket implementation participates in the io_service's reactor for asynchronous IO and may be freely mixed with other Asio socket types (raw TCP/UDP/Serial/etc.). diff --git a/ports/azmq/portfile.cmake b/ports/azmq/portfile.cmake new file mode 100644 index 000000000..867b688ee --- /dev/null +++ b/ports/azmq/portfile.cmake @@ -0,0 +1,15 @@ +include(vcpkg_common_functions) + +vcpkg_from_github( + OUT_SOURCE_PATH SOURCE_PATH + REPO zeromq/azmq + REF v1.0.2 + SHA512 6e60a670d070ddf84dbd406e88225ff12f84ce39e0e64e9aff4314e174506c286d72cfebb5e2e51eab221f6e163a17cce539d052cea3c18954ec495b096f087b + HEAD_REF master +) + +file(COPY ${SOURCE_PATH}/azmq DESTINATION ${CURRENT_PACKAGES_DIR}/include/) + +file(INSTALL + ${SOURCE_PATH}/LICENSE-BOOST_1_0 + DESTINATION ${CURRENT_PACKAGES_DIR}/share/azmq RENAME copyright) -- cgit v1.2.3 From a6866d477d0970766b985d07ec2771a8b58b385b Mon Sep 17 00:00:00 2001 From: Alexander Karatarakis Date: Thu, 22 Mar 2018 14:05:23 -0700 Subject: [opengl] If-def on Windows vs other --- ports/opengl/portfile.cmake | 78 ++++++++++++++++++++++++--------------------- 1 file changed, 41 insertions(+), 37 deletions(-) diff --git a/ports/opengl/portfile.cmake b/ports/opengl/portfile.cmake index 3fcca32da..80df4ae74 100644 --- a/ports/opengl/portfile.cmake +++ b/ports/opengl/portfile.cmake @@ -1,47 +1,51 @@ include(vcpkg_common_functions) -vcpkg_get_program_files_32_bit(PROGRAM_FILES_32_BIT) -vcpkg_get_windows_sdk(WINDOWS_SDK) +if(NOT VCPKG_CMAKE_SYSTEM_NAME OR VCPKG_CMAKE_SYSTEM_NAME STREQUAL "WindowsStore") + vcpkg_get_program_files_32_bit(PROGRAM_FILES_32_BIT) + vcpkg_get_windows_sdk(WINDOWS_SDK) -if (WINDOWS_SDK MATCHES "10.") - set(LIBGLFILEPATH "${PROGRAM_FILES_32_BIT}\\Windows Kits\\10\\Lib\\${WINDOWS_SDK}\\um\\${TRIPLET_SYSTEM_ARCH}\\OpenGL32.Lib") - set(LIBGLUFILEPATH "${PROGRAM_FILES_32_BIT}\\Windows Kits\\10\\Lib\\${WINDOWS_SDK}\\um\\${TRIPLET_SYSTEM_ARCH}\\GlU32.Lib") - set(HEADERSPATH "${PROGRAM_FILES_32_BIT}\\Windows Kits\\10\\Include\\${WINDOWS_SDK}\\um") -elseif(WINDOWS_SDK MATCHES "8.") - set(LIBGLFILEPATH "${PROGRAM_FILES_32_BIT}\\Windows Kits\\8.1\\Lib\\winv6.3\\um\\${TRIPLET_SYSTEM_ARCH}\\OpenGL32.Lib") - set(LIBGLUFILEPATH "${PROGRAM_FILES_32_BIT}\\Windows Kits\\8.1\\Lib\\winv6.3\\um\\${TRIPLET_SYSTEM_ARCH}\\GlU32.Lib") - set(HEADERSPATH "${PROGRAM_FILES_32_BIT}\\Windows Kits\\8.1\\Include\\um") -else() - message(FATAL_ERROR "Portfile not yet configured for Windows SDK with version: ${WINDOWS_SDK}") -endif() + if (WINDOWS_SDK MATCHES "10.") + set(LIBGLFILEPATH "${PROGRAM_FILES_32_BIT}\\Windows Kits\\10\\Lib\\${WINDOWS_SDK}\\um\\${TRIPLET_SYSTEM_ARCH}\\OpenGL32.Lib") + set(LIBGLUFILEPATH "${PROGRAM_FILES_32_BIT}\\Windows Kits\\10\\Lib\\${WINDOWS_SDK}\\um\\${TRIPLET_SYSTEM_ARCH}\\GlU32.Lib") + set(HEADERSPATH "${PROGRAM_FILES_32_BIT}\\Windows Kits\\10\\Include\\${WINDOWS_SDK}\\um") + elseif(WINDOWS_SDK MATCHES "8.") + set(LIBGLFILEPATH "${PROGRAM_FILES_32_BIT}\\Windows Kits\\8.1\\Lib\\winv6.3\\um\\${TRIPLET_SYSTEM_ARCH}\\OpenGL32.Lib") + set(LIBGLUFILEPATH "${PROGRAM_FILES_32_BIT}\\Windows Kits\\8.1\\Lib\\winv6.3\\um\\${TRIPLET_SYSTEM_ARCH}\\GlU32.Lib") + set(HEADERSPATH "${PROGRAM_FILES_32_BIT}\\Windows Kits\\8.1\\Include\\um") + else() + message(FATAL_ERROR "Portfile not yet configured for Windows SDK with version: ${WINDOWS_SDK}") + endif() -if (NOT EXISTS "${LIBGLFILEPATH}") - message(FATAL_ERROR "Cannot find Windows ${WINDOWS_SDK} SDK. File does not exist: ${LIBGLFILEPATH}") -endif() + if (NOT EXISTS "${LIBGLFILEPATH}") + message(FATAL_ERROR "Cannot find Windows ${WINDOWS_SDK} SDK. File does not exist: ${LIBGLFILEPATH}") + endif() -if (NOT EXISTS "${LIBGLUFILEPATH}") - message(FATAL_ERROR "Cannot find Windows ${WINDOWS_SDK} SDK. File does not exist: ${LIBGLUFILEPATH}") -endif() + if (NOT EXISTS "${LIBGLUFILEPATH}") + message(FATAL_ERROR "Cannot find Windows ${WINDOWS_SDK} SDK. File does not exist: ${LIBGLUFILEPATH}") + endif() -file(MAKE_DIRECTORY - ${CURRENT_PACKAGES_DIR}/include/gl - ${CURRENT_PACKAGES_DIR}/lib - ${CURRENT_PACKAGES_DIR}/debug/lib - ${CURRENT_PACKAGES_DIR}/share/opengl -) + file(MAKE_DIRECTORY + ${CURRENT_PACKAGES_DIR}/include/gl + ${CURRENT_PACKAGES_DIR}/lib + ${CURRENT_PACKAGES_DIR}/debug/lib + ${CURRENT_PACKAGES_DIR}/share/opengl + ) -file(COPY - "${HEADERSPATH}\\gl\\GL.h" - "${HEADERSPATH}\\gl\\GLU.h" - DESTINATION ${CURRENT_PACKAGES_DIR}/include/gl + file(COPY + "${HEADERSPATH}\\gl\\GL.h" + "${HEADERSPATH}\\gl\\GLU.h" + DESTINATION ${CURRENT_PACKAGES_DIR}/include/gl ) -file(COPY ${LIBGLFILEPATH} DESTINATION ${CURRENT_PACKAGES_DIR}/lib) -file(COPY ${LIBGLUFILEPATH} DESTINATION ${CURRENT_PACKAGES_DIR}/lib) -file(COPY ${LIBGLFILEPATH} DESTINATION ${CURRENT_PACKAGES_DIR}/debug/lib) -file(COPY ${LIBGLUFILEPATH} DESTINATION ${CURRENT_PACKAGES_DIR}/debug/lib) + file(COPY ${LIBGLFILEPATH} DESTINATION ${CURRENT_PACKAGES_DIR}/lib) + file(COPY ${LIBGLUFILEPATH} DESTINATION ${CURRENT_PACKAGES_DIR}/lib) + file(COPY ${LIBGLFILEPATH} DESTINATION ${CURRENT_PACKAGES_DIR}/debug/lib) + file(COPY ${LIBGLUFILEPATH} DESTINATION ${CURRENT_PACKAGES_DIR}/debug/lib) -if (WINDOWS_SDK MATCHES "10.") - file(WRITE ${CURRENT_PACKAGES_DIR}/share/opengl/copyright "See https://developer.microsoft.com/windows/downloads/windows-10-sdk for the Windows 10 SDK license") -elseif(WINDOWS_SDK MATCHES "8.") - file(WRITE ${CURRENT_PACKAGES_DIR}/share/opengl/copyright "See https://developer.microsoft.com/windows/downloads/windows-8-1-sdk for the Windows 8.1 SDK license") + if (WINDOWS_SDK MATCHES "10.") + file(WRITE ${CURRENT_PACKAGES_DIR}/share/opengl/copyright "See https://developer.microsoft.com/windows/downloads/windows-10-sdk for the Windows 10 SDK license") + elseif(WINDOWS_SDK MATCHES "8.") + file(WRITE ${CURRENT_PACKAGES_DIR}/share/opengl/copyright "See https://developer.microsoft.com/windows/downloads/windows-8-1-sdk for the Windows 8.1 SDK license") + endif() +else() + set(VCPKG_POLICY_EMPTY_PACKAGE enabled) endif() -- cgit v1.2.3 From 3d634005fb177457278f99619d98e51d958b7fc4 Mon Sep 17 00:00:00 2001 From: Robert Schumacher Date: Thu, 22 Mar 2018 10:14:07 -0700 Subject: [qt5-quickcontrols] Depend on qt5-declarative --- ports/qt5-quickcontrols/CONTROL | 4 ++-- ports/qt5-quickcontrols2/CONTROL | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/ports/qt5-quickcontrols/CONTROL b/ports/qt5-quickcontrols/CONTROL index 64806cdca..1d77861b6 100644 --- a/ports/qt5-quickcontrols/CONTROL +++ b/ports/qt5-quickcontrols/CONTROL @@ -1,4 +1,4 @@ Source: qt5-quickcontrols -Version: 5.9.2-0 +Version: 5.9.2-1 Description: Qt5 QuickControls Module. -Build-Depends: qt5-modularscripts, qt5-base +Build-Depends: qt5-modularscripts, qt5-base, qt5-declarative diff --git a/ports/qt5-quickcontrols2/CONTROL b/ports/qt5-quickcontrols2/CONTROL index c600ed225..b46022a10 100644 --- a/ports/qt5-quickcontrols2/CONTROL +++ b/ports/qt5-quickcontrols2/CONTROL @@ -1,4 +1,4 @@ Source: qt5-quickcontrols2 -Version: 5.9.2-0 +Version: 5.9.2-1 Description: Qt5 QuickControls2 Module. -Build-Depends: qt5-modularscripts, qt5-base +Build-Depends: qt5-modularscripts, qt5-base, qt5-declarative -- cgit v1.2.3 From 0167d4f917c7c49ed2041f499bbab6e28fcc9168 Mon Sep 17 00:00:00 2001 From: Robert Schumacher Date: Thu, 22 Mar 2018 04:38:03 -0700 Subject: [cctz][abseil] Require c++14 internally --- ports/abseil/CMakeLists.txt | 4 +++- ports/abseil/portfile.cmake | 5 ++--- ports/cctz/CMakeLists.txt | 2 ++ ports/cctz/portfile.cmake | 3 +-- 4 files changed, 8 insertions(+), 6 deletions(-) diff --git a/ports/abseil/CMakeLists.txt b/ports/abseil/CMakeLists.txt index c30f75e32..ced5b14ca 100644 --- a/ports/abseil/CMakeLists.txt +++ b/ports/abseil/CMakeLists.txt @@ -3,6 +3,8 @@ project(abseil CXX) add_definitions(-DNOMINMAX -DWIN32_LEAN_AND_MEAN) +set(CMAKE_CXX_STANDARD 14) + set(CMAKE_DEBUG_POSTFIX d) set(CMAKE_WINDOWS_EXPORT_ALL_SYMBOLS ON) @@ -90,4 +92,4 @@ install( FILE unofficial-abseil-config.cmake NAMESPACE unofficial::abseil:: DESTINATION share/unofficial-abseil -) \ No newline at end of file +) diff --git a/ports/abseil/portfile.cmake b/ports/abseil/portfile.cmake index 46b665a14..7f8f28798 100644 --- a/ports/abseil/portfile.cmake +++ b/ports/abseil/portfile.cmake @@ -7,7 +7,7 @@ endif() vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO abseil/abseil-cpp - REF 506fb4b56a339314fde23802bd749dbc3b3c1c79 + REF 506fb4b56a339314fde23802bd749dbc3b3c1c79 SHA512 a67d51afcf4446d2c5f27258174dd012e4c15ee1f69eb074770d4f5af335e661b1cafa6b46f6b61b9f7ff0379e7822a03c6d55096dc78a13e554688a8872ebf8 HEAD_REF master ) @@ -21,8 +21,7 @@ vcpkg_configure_cmake( vcpkg_install_cmake() -vcpkg_fixup_cmake_targets(CONFIG_PATH share/unofficial-abseil) -file(RENAME ${CURRENT_PACKAGES_DIR}/share/abseil ${CURRENT_PACKAGES_DIR}/share/unofficial-abseil) +vcpkg_fixup_cmake_targets(CONFIG_PATH share/unofficial-abseil TARGET_PATH share/unofficial-abseil) file(GLOB_RECURSE HEADERS ${CURRENT_PACKAGES_DIR}/include/*) foreach(FILE ${HEADERS}) diff --git a/ports/cctz/CMakeLists.txt b/ports/cctz/CMakeLists.txt index 99322d05e..af557830c 100644 --- a/ports/cctz/CMakeLists.txt +++ b/ports/cctz/CMakeLists.txt @@ -1,6 +1,8 @@ cmake_minimum_required(VERSION 3.8) project(cctz CXX) +set(CMAKE_CXX_STANDARD 14) + set(CMAKE_DEBUG_POSTFIX d) set(CMAKE_WINDOWS_EXPORT_ALL_SYMBOLS ON) diff --git a/ports/cctz/portfile.cmake b/ports/cctz/portfile.cmake index 5760e7672..d243e1e65 100644 --- a/ports/cctz/portfile.cmake +++ b/ports/cctz/portfile.cmake @@ -20,8 +20,7 @@ vcpkg_configure_cmake( vcpkg_install_cmake() -vcpkg_fixup_cmake_targets(CONFIG_PATH share/unofficial-cctz) -file(RENAME ${CURRENT_PACKAGES_DIR}/share/cctz ${CURRENT_PACKAGES_DIR}/share/unofficial-cctz) +vcpkg_fixup_cmake_targets(CONFIG_PATH share/unofficial-cctz TARGET_PATH share/unofficial-cctz) vcpkg_copy_pdbs() -- cgit v1.2.3 From ca154ffb79b03413f38cac3d24707e0d17262ff5 Mon Sep 17 00:00:00 2001 From: ambroise Date: Thu, 25 Jan 2018 23:14:43 +0100 Subject: Initialize project Rajout de fmem de Ambrou en version 1.0 Mise en place de fmem Use original reposotory Cleanup cmake file Add gherkin-c port in vcpkg Microsoft tool Use original reposotory [fmem][gherkin-c] Fill in version. Remove cucumber-cpp. --- ports/fmem/CONTROL | 3 +++ ports/fmem/portfile.cmake | 25 +++++++++++++++++++++++++ ports/gherkin-c/CONTROL | 3 +++ ports/gherkin-c/portfile.cmake | 23 +++++++++++++++++++++++ 4 files changed, 54 insertions(+) create mode 100644 ports/fmem/CONTROL create mode 100644 ports/fmem/portfile.cmake create mode 100644 ports/gherkin-c/CONTROL create mode 100644 ports/gherkin-c/portfile.cmake diff --git a/ports/fmem/CONTROL b/ports/fmem/CONTROL new file mode 100644 index 000000000..25f24652a --- /dev/null +++ b/ports/fmem/CONTROL @@ -0,0 +1,3 @@ +Source: fmem +Version: c-libs-2ccee3d2fb +Description: A cross-platform library for opening memory-backed libc streams. diff --git a/ports/fmem/portfile.cmake b/ports/fmem/portfile.cmake new file mode 100644 index 000000000..b3b5faa83 --- /dev/null +++ b/ports/fmem/portfile.cmake @@ -0,0 +1,25 @@ +include(vcpkg_common_functions) + +vcpkg_from_github( + OUT_SOURCE_PATH SOURCE_PATH + REPO c-libs/fmem + REF 2ccee3d2fb2fc72370a9bb2131bfc9167e0d9022 + SHA512 4a63332eb5df7f30bdad9e4233171b5c21dd2b092e525e9dcc4f602295ffff50c555c80fd74d964bc3daeffd8001a9b852f1769ef3161259dd8a3cae3ca3a4df + HEAD_REF master +) + +vcpkg_configure_cmake( + SOURCE_PATH ${SOURCE_PATH} + PREFER_NINJA + OPTIONS + -DBUILD_TESTING=OFF +) + +vcpkg_install_cmake() + +file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include) + +vcpkg_copy_pdbs() + +# Handle copyright +file(INSTALL ${SOURCE_PATH}/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/fmem RENAME copyright) diff --git a/ports/gherkin-c/CONTROL b/ports/gherkin-c/CONTROL new file mode 100644 index 000000000..171dedae0 --- /dev/null +++ b/ports/gherkin-c/CONTROL @@ -0,0 +1,3 @@ +Source: gherkin-c +Version: c-libs-e63e83104b +Description: Gherkin parser/compiler in C diff --git a/ports/gherkin-c/portfile.cmake b/ports/gherkin-c/portfile.cmake new file mode 100644 index 000000000..f229ba836 --- /dev/null +++ b/ports/gherkin-c/portfile.cmake @@ -0,0 +1,23 @@ +include(vcpkg_common_functions) + +vcpkg_from_github( + OUT_SOURCE_PATH SOURCE_PATH + REPO c-libs/gherkin-c + REF e63e83104b835e217140e9dc77d9ce2bb50f234e + SHA512 a99b3f695257b45df8ff7b8ec46bff28991cf2b9bc51a25247550471c724bd14ee64340db684f096131f47d7f4ff278d23dda546e7dfe29134bbc1dbccaf0d1e + HEAD_REF master +) + +vcpkg_configure_cmake( + SOURCE_PATH ${SOURCE_PATH} + OPTIONS + -DBUILD_GHERKIN_TESTS=OFF +) +vcpkg_install_cmake() + +file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include) + +vcpkg_copy_pdbs() + +# Handle copyright +file(INSTALL ${SOURCE_PATH}/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/gherkin-c RENAME copyright) -- cgit v1.2.3 From 55e385952df99bed38c5a053999e73aa1113d92a Mon Sep 17 00:00:00 2001 From: Robert Schumacher Date: Fri, 23 Mar 2018 10:47:26 -0700 Subject: [graphite2] Patch out test executable. Fixes #3102. --- ports/graphite2/disable-tests-docs.patch | 19 +++++++++++++++++++ ports/graphite2/portfile.cmake | 12 ++++++++++-- 2 files changed, 29 insertions(+), 2 deletions(-) create mode 100644 ports/graphite2/disable-tests-docs.patch diff --git a/ports/graphite2/disable-tests-docs.patch b/ports/graphite2/disable-tests-docs.patch new file mode 100644 index 000000000..ff92caa16 --- /dev/null +++ b/ports/graphite2/disable-tests-docs.patch @@ -0,0 +1,19 @@ +diff --git a/CMakeLists.txt b/CMakeLists.txt +index 3466c5f..6d5c6bd 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -63,9 +63,13 @@ endif (GRAPHITE2_VM_TYPE STREQUAL "direct" AND NOT (CMAKE_COMPILER_IS_GNUCXX OR + message(STATUS "Using vm machine type: ${GRAPHITE2_VM_TYPE}") + + add_subdirectory(src) ++if(NOT DISABLE_TESTS) + add_subdirectory(tests) ++endif() ++if(NOT DISABLE_DOCS) + add_subdirectory(doc) +-if (NOT (GRAPHITE2_NSEGCACHE OR GRAPHITE2_NFILEFACE)) ++endif() ++if (NOT (GRAPHITE2_NSEGCACHE OR GRAPHITE2_NFILEFACE) AND NOT DISABLE_TESTS) + add_subdirectory(gr2fonttest) + endif (NOT (GRAPHITE2_NSEGCACHE OR GRAPHITE2_NFILEFACE)) + diff --git a/ports/graphite2/portfile.cmake b/ports/graphite2/portfile.cmake index 000817449..eb017e9d8 100644 --- a/ports/graphite2/portfile.cmake +++ b/ports/graphite2/portfile.cmake @@ -9,16 +9,24 @@ vcpkg_from_github( HEAD_REF master ) +vcpkg_apply_patches( + SOURCE_PATH ${SOURCE_PATH} + PATCHES "${CMAKE_CURRENT_LIST_DIR}/disable-tests-docs.patch" +) + vcpkg_configure_cmake( SOURCE_PATH ${SOURCE_PATH} PREFER_NINJA + OPTIONS + -DDISABLE_TESTS=ON + -DDISABLE_DOCS=ON ) vcpkg_install_cmake() vcpkg_copy_pdbs() -# file(REMOVE ${CURRENT_PACKAGES_DIR}/bin/gr2fonttest.exe) -# file(REMOVE ${CURRENT_PACKAGES_DIR}/debug/bin/gr2fonttest.exe) +vcpkg_fixup_cmake_targets(CONFIG_PATH share/graphite2) + file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include) file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/share) -- cgit v1.2.3 From 7a1bc577c53c6c513c03cea6ef582af2055beebd Mon Sep 17 00:00:00 2001 From: Robert Schumacher Date: Fri, 23 Mar 2018 10:55:04 -0700 Subject: [sqlite-orm] Initial commit of 1.1 --- ports/sqlite-orm/CONTROL | 4 ++++ ports/sqlite-orm/portfile.cmake | 15 +++++++++++++++ 2 files changed, 19 insertions(+) create mode 100644 ports/sqlite-orm/CONTROL create mode 100644 ports/sqlite-orm/portfile.cmake diff --git a/ports/sqlite-orm/CONTROL b/ports/sqlite-orm/CONTROL new file mode 100644 index 000000000..893a0dfe9 --- /dev/null +++ b/ports/sqlite-orm/CONTROL @@ -0,0 +1,4 @@ +Source: sqlite-orm +Version: 1.1 +Build-Depends: sqlite3 +Description: SQLite ORM light header only library for modern C++ diff --git a/ports/sqlite-orm/portfile.cmake b/ports/sqlite-orm/portfile.cmake new file mode 100644 index 000000000..876bbd0e3 --- /dev/null +++ b/ports/sqlite-orm/portfile.cmake @@ -0,0 +1,15 @@ +include(vcpkg_common_functions) + +vcpkg_from_github( + OUT_SOURCE_PATH SOURCE_PATH + REPO fnc12/sqlite_orm + REF v1.1 + SHA512 ebd3c956660b90b1ea64420374db009c68cbab1edd3694d15e953c968190c066e084934327dcf674bcea31e23b14d32c54af7e9ba54f7c6036c3e7cb7cdc6c8d + HEAD_REF master +) + +file(COPY ${SOURCE_PATH}/include/sqlite_orm DESTINATION ${CURRENT_PACKAGES_DIR}/include/) + +file(INSTALL + ${SOURCE_PATH}/LICENSE + DESTINATION ${CURRENT_PACKAGES_DIR}/share/sqlite-orm RENAME copyright) -- cgit v1.2.3 From 7c6dc9543d13bd4793cd9051f876666c6bb370c0 Mon Sep 17 00:00:00 2001 From: Alexander Karatarakis Date: Thu, 22 Mar 2018 15:52:11 -0700 Subject: [cpprestsdk] Use new syntax in CONTROL --- ports/cpprestsdk/CONTROL | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/ports/cpprestsdk/CONTROL b/ports/cpprestsdk/CONTROL index 663781d40..7e6dbc0d1 100644 --- a/ports/cpprestsdk/CONTROL +++ b/ports/cpprestsdk/CONTROL @@ -1,5 +1,5 @@ Source: cpprestsdk -Version: 2.10.2 -Build-Depends: zlib, openssl (windows), boost-system (windows), boost-date-time (windows), boost-regex (windows), websocketpp (windows) +Version: 2.10.2-1 +Build-Depends: zlib, openssl (!uwp), boost-system (!uwp), boost-date-time (!uwp), boost-regex (!uwp), websocketpp (!uwp), boost-thread (!uwp&!windows), boost-filesystem (!uwp&!windows), boost-random (!uwp&!windows), boost-chrono (!uwp&!windows) Description: C++11 JSON, REST, and OAuth library The C++ REST SDK is a Microsoft project for cloud-based client-server communication in native code using a modern asynchronous C++ API design. This project aims to help C++ developers connect to and interact with services. -- cgit v1.2.3 From 0595f955cc7bdecb807ab3d04404298a805ec4b6 Mon Sep 17 00:00:00 2001 From: Robert Schumacher Date: Fri, 23 Mar 2018 06:53:43 -0700 Subject: [paho-mqtt][cfitsio][ccfits] Reduce conflicts in headers (unistd.h, etc) --- ports/ccfits/CONTROL | 2 +- ports/ccfits/portfile.cmake | 33 +++++++++++++-------------------- ports/cfitsio/CONTROL | 2 +- ports/cfitsio/portfile.cmake | 17 +++++++++++------ ports/paho-mqtt/CONTROL | 4 ++-- ports/paho-mqtt/portfile.cmake | 3 +-- 6 files changed, 29 insertions(+), 32 deletions(-) diff --git a/ports/ccfits/CONTROL b/ports/ccfits/CONTROL index 16b36bc8a..5cd10f63d 100644 --- a/ports/ccfits/CONTROL +++ b/ports/ccfits/CONTROL @@ -1,4 +1,4 @@ Source: ccfits -Version: 2.5-1 +Version: 2.5-2 Description: CCfits is an object oriented interface to the cfitsio library. It is designed to make the capabilities of cfitsio available to programmers working in C++. Build-Depends: cfitsio diff --git a/ports/ccfits/portfile.cmake b/ports/ccfits/portfile.cmake index 6bd9bd170..6aeecfd62 100644 --- a/ports/ccfits/portfile.cmake +++ b/ports/ccfits/portfile.cmake @@ -1,19 +1,6 @@ -# 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 = -# VCPKG_TARGET_ARCHITECTURE = target architecture (x64, x86, arm) -# - include(vcpkg_common_functions) #removes current source to prevent static builds from using patched source code -file(REMOVE_RECURSE ${CURRENT_BUILDTREES_DIR}/src/CCfits) -file(REMOVE_RECURSE ${CURRENT_BUILDTREES_DIR}/src/CCfits-2.5.tar.gz.extracted) +file(REMOVE_RECURSE ${CURRENT_BUILDTREES_DIR}/src) set(SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src/CCfits) @@ -31,18 +18,16 @@ if(VCPKG_LIBRARY_LINKAGE STREQUAL dynamic) ) endif() - vcpkg_configure_cmake( SOURCE_PATH ${SOURCE_PATH} - PREFER_NINJA # Disable this option if project cannot be built with Ninja - # OPTIONS -DUSE_THIS_IN_ALL_BUILDS=1 -DUSE_THIS_TOO=2 - # OPTIONS_RELEASE -DOPTIMIZE=1 - # OPTIONS_DEBUG -DDEBUGGABLE=1 + PREFER_NINJA + OPTIONS + -DCFITSIO_INCLUDE_DIR=${CURRENT_INSTALLED_DIR}/include/cfitsio ) vcpkg_install_cmake() -if(VCPKG_LIBRARY_LINKAGE STREQUAL dynamic) +if(VCPKG_LIBRARY_LINKAGE STREQUAL "dynamic") file(MAKE_DIRECTORY ${CURRENT_PACKAGES_DIR}/bin) file(MAKE_DIRECTORY ${CURRENT_PACKAGES_DIR}/debug/bin) file(RENAME ${CURRENT_PACKAGES_DIR}/lib/CCfits.dll ${CURRENT_PACKAGES_DIR}/bin/CCfits.dll) @@ -52,5 +37,13 @@ endif() # Remove duplicate include files file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include) +# Patch installed headers to look in the correct subdirectory +file(GLOB HEADERS ${CURRENT_PACKAGES_DIR}/include/CCfits/*) +foreach(HEADER IN LISTS HEADERS) + file(READ "${HEADER}" _contents) + string(REPLACE "\"fitsio.h\"" "\"cfitsio/fitsio.h\"" _contents "${_contents}") + file(WRITE "${HEADER}" "${_contents}") +endforeach() + # Handle copyright file(INSTALL ${SOURCE_PATH}/License.txt DESTINATION ${CURRENT_PACKAGES_DIR}/share/ccfits RENAME copyright) diff --git a/ports/cfitsio/CONTROL b/ports/cfitsio/CONTROL index b25eb8026..7c50b295d 100644 --- a/ports/cfitsio/CONTROL +++ b/ports/cfitsio/CONTROL @@ -1,3 +1,3 @@ Source: cfitsio -Version: 3.410-1 +Version: 3.410-2 Description: Library of C and Fortran subroutines for reading and writing data files in FITS (Flexible Image Transport System) data format diff --git a/ports/cfitsio/portfile.cmake b/ports/cfitsio/portfile.cmake index 2490beb80..e9caf61d1 100644 --- a/ports/cfitsio/portfile.cmake +++ b/ports/cfitsio/portfile.cmake @@ -15,14 +15,19 @@ vcpkg_configure_cmake( vcpkg_install_cmake() # Remove duplicate include files -file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include) +file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include ${CURRENT_PACKAGES_DIR}/include/unistd.h) + +# cfitsio uses very common names for its headers, so they must be moved to a subdirectory +file(RENAME ${CURRENT_PACKAGES_DIR}/include ${CURRENT_PACKAGES_DIR}/cfitsio) +file(MAKE_DIRECTORY ${CURRENT_PACKAGES_DIR}/include) +file(RENAME ${CURRENT_PACKAGES_DIR}/cfitsio ${CURRENT_PACKAGES_DIR}/include/cfitsio) if(VCPKG_LIBRARY_LINKAGE STREQUAL dynamic) - # move DLLs to bin directories for dynamic builds - file(MAKE_DIRECTORY ${CURRENT_PACKAGES_DIR}/bin) - file(RENAME ${CURRENT_PACKAGES_DIR}/lib/cfitsio.dll ${CURRENT_PACKAGES_DIR}/bin/cfitsio.dll) - file(MAKE_DIRECTORY ${CURRENT_PACKAGES_DIR}/debug/bin) - file(RENAME ${CURRENT_PACKAGES_DIR}/debug/lib/cfitsio.dll ${CURRENT_PACKAGES_DIR}/debug/bin/cfitsio.dll) + # move DLLs to bin directories for dynamic builds + file(MAKE_DIRECTORY ${CURRENT_PACKAGES_DIR}/bin) + file(RENAME ${CURRENT_PACKAGES_DIR}/lib/cfitsio.dll ${CURRENT_PACKAGES_DIR}/bin/cfitsio.dll) + file(MAKE_DIRECTORY ${CURRENT_PACKAGES_DIR}/debug/bin) + file(RENAME ${CURRENT_PACKAGES_DIR}/debug/lib/cfitsio.dll ${CURRENT_PACKAGES_DIR}/debug/bin/cfitsio.dll) endif() # Handle copyright diff --git a/ports/paho-mqtt/CONTROL b/ports/paho-mqtt/CONTROL index cefd6bb87..1acf080ff 100644 --- a/ports/paho-mqtt/CONTROL +++ b/ports/paho-mqtt/CONTROL @@ -1,4 +1,4 @@ Source: paho-mqtt -Version: 1.2.0-2 -Description: Paho project provides open-source client implementations of MQTT and MQTT-SN messaging protocols aimed at new, existing, and emerging applications for the Internet of Things +Version: 1.2.0-3 +Description: Paho project provides open-source client implementations of MQTT and MQTT-SN messaging protocols aimed at new, existing, and emerging applications for the Internet of Things Build-Depends: openssl diff --git a/ports/paho-mqtt/portfile.cmake b/ports/paho-mqtt/portfile.cmake index 3d0fc12e9..19629b92c 100644 --- a/ports/paho-mqtt/portfile.cmake +++ b/ports/paho-mqtt/portfile.cmake @@ -48,7 +48,6 @@ file(GLOB DEBUG_LIBS "${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-dbg/Debug/*.lib" "${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-dbg/*/Debug/*.lib" ) -file(GLOB HEADERS "${SOURCE_PATH}/*/*.h") if(DLLS) file(INSTALL ${DLLS} DESTINATION ${CURRENT_PACKAGES_DIR}/bin) endif() @@ -61,7 +60,7 @@ endif() if(DEBUG_LIBS) file(INSTALL ${DEBUG_LIBS} DESTINATION ${CURRENT_PACKAGES_DIR}/debug/lib) endif() -file(INSTALL ${HEADERS} DESTINATION ${CURRENT_PACKAGES_DIR}/include) +file(COPY ${SOURCE_PATH}/src/MQTTAsync.h ${SOURCE_PATH}/src/MQTTClient.h ${SOURCE_PATH}/src/MQTTClientPersistence.h DESTINATION ${CURRENT_PACKAGES_DIR}/include) if(VCPKG_LIBRARY_LINKAGE STREQUAL static) file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/bin ${CURRENT_PACKAGES_DIR}/debug/bin) -- cgit v1.2.3 From 7223ab50c128f2311c8e01d2991c0dab8afbd83a Mon Sep 17 00:00:00 2001 From: Guillaume Truchot Date: Fri, 23 Mar 2018 23:59:43 +0100 Subject: Add librsync port (#3119) * Add librsync port * [librsync] Fix missing close paren --- ports/librsync/CONTROL | 3 +++ ports/librsync/portfile.cmake | 39 +++++++++++++++++++++++++++++++++++++++ 2 files changed, 42 insertions(+) create mode 100644 ports/librsync/CONTROL create mode 100644 ports/librsync/portfile.cmake diff --git a/ports/librsync/CONTROL b/ports/librsync/CONTROL new file mode 100644 index 000000000..b51be6105 --- /dev/null +++ b/ports/librsync/CONTROL @@ -0,0 +1,3 @@ +Source: librsync +Version: 2.0.2 +Description: librsync is a library for calculating and applying network deltas, with an interface designed to ease integration into diverse network applications. diff --git a/ports/librsync/portfile.cmake b/ports/librsync/portfile.cmake new file mode 100644 index 000000000..0f9cfad55 --- /dev/null +++ b/ports/librsync/portfile.cmake @@ -0,0 +1,39 @@ +include(vcpkg_common_functions) + +vcpkg_from_github( + OUT_SOURCE_PATH SOURCE_PATH + REPO librsync/librsync + REF v2.0.2 + SHA512 5d2bc1d62b37e9ed7416203615d0a0e3c05c4c884b5da63eda10dd5c985845b500331bce226e4d45676729382c85b41528282e25d491afda31ba434ac0fefad7 + HEAD_REF master +) + +vcpkg_configure_cmake( + SOURCE_PATH ${SOURCE_PATH} + PREFER_NINJA + OPTIONS -DBUILD_RDIFF:BOOL=OFF + -DENABLE_COMPRESSION:BOOL=OFF + -DENABLE_TRACE:BOOL=OFF + -DCMAKE_WINDOWS_EXPORT_ALL_SYMBOLS:BOOL=ON +) + +vcpkg_install_cmake() + +file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include) +file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/share) + +if(EXISTS ${CURRENT_PACKAGES_DIR}/lib/rsync.dll) + file(MAKE_DIRECTORY ${CURRENT_PACKAGES_DIR}/bin) + file(RENAME ${CURRENT_PACKAGES_DIR}/lib/rsync.dll ${CURRENT_PACKAGES_DIR}/bin/rsync.dll) +endif() +if(EXISTS ${CURRENT_PACKAGES_DIR}/debug/lib/rsync.dll) + file(MAKE_DIRECTORY ${CURRENT_PACKAGES_DIR}/debug/bin) + file(RENAME ${CURRENT_PACKAGES_DIR}/debug/lib/rsync.dll ${CURRENT_PACKAGES_DIR}/debug/bin/rsync.dll) +endif() + +file(INSTALL + ${SOURCE_PATH}/COPYING + DESTINATION ${CURRENT_PACKAGES_DIR}/share/librsync RENAME copyright +) + +vcpkg_copy_pdbs() -- cgit v1.2.3 From 6c690a22837bff0804e7ea4c9b2934cf97cd2211 Mon Sep 17 00:00:00 2001 From: Robert Schumacher Date: Fri, 23 Mar 2018 16:23:37 -0700 Subject: [vcpkg-configure-cmake] Set CMAKE_INSTALL_LIBDIR as type string to avoid CMake forming an absolute path --- scripts/cmake/vcpkg_configure_cmake.cmake | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/scripts/cmake/vcpkg_configure_cmake.cmake b/scripts/cmake/vcpkg_configure_cmake.cmake index 5fa42cb11..4ab02f710 100644 --- a/scripts/cmake/vcpkg_configure_cmake.cmake +++ b/scripts/cmake/vcpkg_configure_cmake.cmake @@ -180,8 +180,8 @@ function(vcpkg_configure_cmake) "-DVCPKG_C_FLAGS_DEBUG=${VCPKG_C_FLAGS_DEBUG}" "-DVCPKG_CRT_LINKAGE=${VCPKG_CRT_LINKAGE}" "-DVCPKG_LINKER_FLAGS=${VCPKG_LINKER_FLAGS}" - "-DCMAKE_INSTALL_LIBDIR=lib" - "-DCMAKE_INSTALL_BINDIR=bin" + "-DCMAKE_INSTALL_LIBDIR:STRING=lib" + "-DCMAKE_INSTALL_BINDIR:STRING=bin" ) if(DEFINED ARCH) -- cgit v1.2.3 From 15cb53b9ddd2d86fa9b7c5cdfc67b04ee87ac884 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Nagy-Egri=20M=C3=A1t=C3=A9=20Ferenc?= Date: Sat, 24 Mar 2018 00:24:04 +0100 Subject: Add port: PLplot (#3117) * Initial commit - added plplot files * Added INTERFACE_INCLUDE_DIRECTORY to libplplot * Fix installation layout * Static linkage of plotting drivers (no need for PATH) * .patch file instead of overwrite * [plplot] Improve handling of cmake scripts. Avoid DLLS_WITHOUT_LIBS. Disable unused dependencies and require some. --- ports/plplot/CONTROL | 8 +++ .../install-interface-include-directories.patch | 13 ++++ ports/plplot/portfile.cmake | 71 ++++++++++++++++++++++ 3 files changed, 92 insertions(+) create mode 100644 ports/plplot/CONTROL create mode 100644 ports/plplot/install-interface-include-directories.patch create mode 100644 ports/plplot/portfile.cmake diff --git a/ports/plplot/CONTROL b/ports/plplot/CONTROL new file mode 100644 index 000000000..c278778b0 --- /dev/null +++ b/ports/plplot/CONTROL @@ -0,0 +1,8 @@ +Source: plplot +Version: 5.13.0-1 +Build-Depends: freetype, zlib, libpng, bzip2 +Description: PLplot is a cross-platform software package for creating scientific plots whose (UTF-8) plot symbols and text are limited in practice only by what Unicode-aware system fonts are installed on a user's computer. + +Feature: wxwidgets +Build-Depends: wxwidgets +Description: plplot wxwidgets module \ No newline at end of file diff --git a/ports/plplot/install-interface-include-directories.patch b/ports/plplot/install-interface-include-directories.patch new file mode 100644 index 000000000..3e124b5d0 --- /dev/null +++ b/ports/plplot/install-interface-include-directories.patch @@ -0,0 +1,13 @@ +diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt +index d81b6a7..6b51809 100644 +--- a/src/CMakeLists.txt ++++ b/src/CMakeLists.txt +@@ -181,6 +181,8 @@ include_directories( + add_library(plplot ${plplot_LIB_SRCS}) + add_dependencies(plplot plhershey-unicode.h_built) + ++target_include_directories(plplot INTERFACE $) ++ + # Deal with external libraries. + set(LIB_INSTALL_RPATH ${LIB_DIR}) + set(libplplot_LINK_LIBRARIES) diff --git a/ports/plplot/portfile.cmake b/ports/plplot/portfile.cmake new file mode 100644 index 000000000..372a59bba --- /dev/null +++ b/ports/plplot/portfile.cmake @@ -0,0 +1,71 @@ +include(vcpkg_common_functions) + +set(PLPLOT_VERSION 5.13.0) +set(PLPLOT_HASH 1d5cb5da17d4bde6d675585bff1f8dcb581719249a0b2687867e767703f8dab0870e7ea44b9549a497f4ac0141a3cabf6761c49520c0e2b26ffe581468512cbb) +set(SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src/plplot-${PLPLOT_VERSION}) + +vcpkg_download_distfile(ARCHIVE + URLS "https://sourceforge.net/projects/plplot/files/plplot/${PLPLOT_VERSION}%20Source/plplot-${PLPLOT_VERSION}.tar.gz/download" + FILENAME "plplot-${PLPLOT_VERSION}.tar.gz" + SHA512 ${PLPLOT_HASH} +) +vcpkg_extract_source_archive(${ARCHIVE}) + +set(BUILD_with_wxwidgets OFF) +if("wxwidgets" IN_LIST FEATURES) + set(BUILD_with_wxwidgets ON) +endif() + +# Patch build scripts +vcpkg_apply_patches( + SOURCE_PATH ${SOURCE_PATH} + PATCHES "${CMAKE_CURRENT_LIST_DIR}/install-interface-include-directories.patch" +) + +vcpkg_configure_cmake( + SOURCE_PATH ${SOURCE_PATH} + PREFER_NINJA + OPTIONS + -DENABLE_tcl=OFF + -DPL_HAVE_QHULL=OFF + -DENABLE_qt=OFF + -DPLPLOT_USE_QT5=OFF + -DENABLE_ocaml=OFF + -DPL_DOUBLE=ON + -DENABLE_wxwidgets=${ENABLE_wxwidgets} + -DPLD_wxpng=${ENABLE_wxwidgets} + -DPLD_wxwidgets=${ENABLE_wxwidgets} + -DENABLE_DYNDRIVERS=OFF + -DDATA_DIR=${CURRENT_PACKAGES_DIR}/share/plplot + OPTIONS_DEBUG + -DDRV_DIR=${CURRENT_PACKAGES_DIR}/debug/bin + OPTIONS_RELEASE + -DDRV_DIR=${CURRENT_PACKAGES_DIR}/bin +) + +vcpkg_install_cmake() + +vcpkg_fixup_cmake_targets(CONFIG_PATH lib/cmake/plplot) + +# Remove unnecessary tool +file(REMOVE + ${CURRENT_PACKAGES_DIR}/debug/bin/pltek.exe + ${CURRENT_PACKAGES_DIR}/bin/pltek.exe +) + +# Remove unwanted and duplicate directories +file(REMOVE_RECURSE + ${CURRENT_PACKAGES_DIR}/debug/include +) + +file(INSTALL + ${SOURCE_PATH}/Copyright + DESTINATION ${CURRENT_PACKAGES_DIR}/share/plplot + RENAME copyright +) + +vcpkg_copy_pdbs() + +file(REMOVE_RECURSE + ${CURRENT_PACKAGES_DIR}/debug/share +) -- cgit v1.2.3 From aa57df6d6ed6d17000522492b66fc93d3f32ab86 Mon Sep 17 00:00:00 2001 From: Alexander Karatarakis Date: Fri, 23 Mar 2018 17:02:23 -0700 Subject: [ffmpeg] Fail-fast if spaces are preset in the path --- ports/ffmpeg/portfile.cmake | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/ports/ffmpeg/portfile.cmake b/ports/ffmpeg/portfile.cmake index 11c24ebc7..994e057b3 100644 --- a/ports/ffmpeg/portfile.cmake +++ b/ports/ffmpeg/portfile.cmake @@ -5,6 +5,11 @@ vcpkg_download_distfile(ARCHIVE FILENAME "ffmpeg-3.3.3.tar.bz2" SHA512 1cc63bf73356f4e618c0d3572a216bdf5689f10deff56b4262f6d740b0bee5a4b3eac234f45fca3d4d2da77903a507b4fba725b76d2d2070f31b6dae9e7a2dab ) + +if (${SOURCE_PATH} MATCHES " ") + message(FATAL_ERROR "Error: ffmpeg will not build with spaces in the path. Please use a directory with no spaces") +endif() + vcpkg_extract_source_archive(${ARCHIVE}) vcpkg_apply_patches( SOURCE_PATH ${SOURCE_PATH} -- cgit v1.2.3 From 69dfad795f4ffb5bec60602ec1116730027ff088 Mon Sep 17 00:00:00 2001 From: Alexander Karatarakis Date: Wed, 14 Mar 2018 16:48:18 -0700 Subject: Introduce Maps::transform_values() --- toolsrc/include/vcpkg/base/util.h | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/toolsrc/include/vcpkg/base/util.h b/toolsrc/include/vcpkg/base/util.h index c73345719..7266fbbc6 100644 --- a/toolsrc/include/vcpkg/base/util.h +++ b/toolsrc/include/vcpkg/base/util.h @@ -3,6 +3,7 @@ #include #include #include +#include #include #include @@ -29,6 +30,17 @@ namespace vcpkg::Util } } + namespace Maps + { + template + void transform_values(const std::unordered_map& container, std::unordered_map& output, Func func) + { + std::for_each(container.cbegin(), container.cend(), [&](const std::pair& p) { + output[p.first] = func(p.second); + }); + } + } + template using FmapOut = decltype(std::declval()(*begin(std::declval()))); -- cgit v1.2.3 From d5580dd330bac4d473f146e6efe3756e83a35066 Mon Sep 17 00:00:00 2001 From: Alexander Karatarakis Date: Sat, 24 Mar 2018 01:24:07 -0700 Subject: Join declaration and assignment --- toolsrc/src/vcpkg/install.cpp | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/toolsrc/src/vcpkg/install.cpp b/toolsrc/src/vcpkg/install.cpp index e30a34c18..7a963c82f 100644 --- a/toolsrc/src/vcpkg/install.cpp +++ b/toolsrc/src/vcpkg/install.cpp @@ -558,16 +558,15 @@ namespace vcpkg::Install Build::CleanBuildtrees::NO, Build::CleanPackages::NO}; - // Note: action_plan will hold raw pointers to SourceControlFiles from this map - std::vector action_plan; - auto all_ports = Paragraphs::load_all_ports(paths.get_filesystem(), paths.ports); std::unordered_map scf_map; for (auto&& port : all_ports) scf_map[port->core_paragraph->name] = std::move(*port); MapPortFileProvider provider(scf_map); - action_plan = create_feature_install_plan(provider, FullPackageSpec::to_feature_specs(specs), status_db); + // Note: action_plan will hold raw pointers to SourceControlFiles from this map + std::vector action_plan = + create_feature_install_plan(provider, FullPackageSpec::to_feature_specs(specs), status_db); if (!GlobalState::feature_packages) { -- cgit v1.2.3 From 3a91b0072d7500f2be84fe4d6520e8469ba5b5ad Mon Sep 17 00:00:00 2001 From: Alexander Karatarakis Date: Sat, 24 Mar 2018 01:04:48 -0700 Subject: Fix name --- toolsrc/include/vcpkg/dependencies.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/toolsrc/include/vcpkg/dependencies.h b/toolsrc/include/vcpkg/dependencies.h index 33af6c4f5..fea0d88a9 100644 --- a/toolsrc/include/vcpkg/dependencies.h +++ b/toolsrc/include/vcpkg/dependencies.h @@ -175,7 +175,7 @@ namespace vcpkg::Dependencies const std::vector& specs, const StatusParagraphs& status_db); - std::vector create_feature_install_plan(const PortFileProvider& port_file_provider, + std::vector create_feature_install_plan(const PortFileProvider& provider, const std::vector& specs, const StatusParagraphs& status_db); -- cgit v1.2.3 From 0778f2ef8ec87152cc75721cb1d25b7d7db63fe4 Mon Sep 17 00:00:00 2001 From: Robert Schumacher Date: Fri, 23 Mar 2018 15:04:01 -0700 Subject: [parson][azure-uamqp-c][azure-umqtt-c][azure-c-shared-utility][azure-iot-sdk-c] Initial commits --- ports/azure-c-shared-utility/CONTROL | 3 + ports/azure-c-shared-utility/portfile.cmake | 40 +++++++ ports/azure-iot-sdk-c/CONTROL | 4 + ports/azure-iot-sdk-c/improve-external-deps.patch | 136 ++++++++++++++++++++++ ports/azure-iot-sdk-c/portfile.cmake | 46 ++++++++ ports/azure-uamqp-c/CONTROL | 4 + ports/azure-uamqp-c/glob-headers.patch | 14 +++ ports/azure-uamqp-c/portfile.cmake | 41 +++++++ ports/azure-uhttp-c/CONTROL | 4 + ports/azure-uhttp-c/portfile.cmake | 40 +++++++ ports/azure-umqtt-c/CONTROL | 4 + ports/azure-umqtt-c/portfile.cmake | 39 +++++++ ports/parson/CMakeLists.txt | 19 +++ ports/parson/CONTROL | 3 + ports/parson/portfile.cmake | 33 ++++++ 15 files changed, 430 insertions(+) create mode 100644 ports/azure-c-shared-utility/CONTROL create mode 100644 ports/azure-c-shared-utility/portfile.cmake create mode 100644 ports/azure-iot-sdk-c/CONTROL create mode 100644 ports/azure-iot-sdk-c/improve-external-deps.patch create mode 100644 ports/azure-iot-sdk-c/portfile.cmake create mode 100644 ports/azure-uamqp-c/CONTROL create mode 100644 ports/azure-uamqp-c/glob-headers.patch create mode 100644 ports/azure-uamqp-c/portfile.cmake create mode 100644 ports/azure-uhttp-c/CONTROL create mode 100644 ports/azure-uhttp-c/portfile.cmake create mode 100644 ports/azure-umqtt-c/CONTROL create mode 100644 ports/azure-umqtt-c/portfile.cmake create mode 100644 ports/parson/CMakeLists.txt create mode 100644 ports/parson/CONTROL create mode 100644 ports/parson/portfile.cmake diff --git a/ports/azure-c-shared-utility/CONTROL b/ports/azure-c-shared-utility/CONTROL new file mode 100644 index 000000000..efc7592c1 --- /dev/null +++ b/ports/azure-c-shared-utility/CONTROL @@ -0,0 +1,3 @@ +Source: azure-c-shared-utility +Version: 1.1.1 +Description: Azure C SDKs common code diff --git a/ports/azure-c-shared-utility/portfile.cmake b/ports/azure-c-shared-utility/portfile.cmake new file mode 100644 index 000000000..40eacaa4b --- /dev/null +++ b/ports/azure-c-shared-utility/portfile.cmake @@ -0,0 +1,40 @@ +include(vcpkg_common_functions) + +if(VCPKG_LIBRARY_LINKAGE STREQUAL "dynamic") + message("azure-c-shared-utility only supports static linkage") + set(VCPKG_LIBRARY_LINKAGE "static") +endif() + +vcpkg_from_github( + OUT_SOURCE_PATH SOURCE_PATH + REPO Azure/azure-c-shared-utility + REF 1.1.1 + SHA512 859513c3bebc3cb5a9e6c0840d2b5bdb5b21b753ed846dced6f4e88f8f937bae89264da57c1bf430660417b10449914b29000b930520e5834140f63df2109b5f + HEAD_REF master +) + +string(COMPARE EQUAL "${VCPKG_LIBRARY_LINKAGE}" "dynamic" BUILD_AS_DYNAMIC) + +vcpkg_configure_cmake( + SOURCE_PATH ${SOURCE_PATH} + PREFER_NINJA + OPTIONS + -Dskip_samples=ON + -Duse_installed_dependencies=ON + -Duse_default_uuid=ON + -Dbuild_as_dynamic=${BUILD_AS_DYNAMIC} +) + +vcpkg_install_cmake() + +vcpkg_fixup_cmake_targets(CONFIG_PATH cmake TARGET_PATH share/azure_c_shared_utility) + +file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include ${CURRENT_PACKAGES_DIR}/debug/share) + +file(COPY ${SOURCE_PATH}/configs/azure_iot_build_rules.cmake DESTINATION ${CURRENT_PACKAGES_DIR}/share/azure-c-shared-utility) + +file(INSTALL + ${SOURCE_PATH}/LICENSE + DESTINATION ${CURRENT_PACKAGES_DIR}/share/azure-c-shared-utility RENAME copyright) + +vcpkg_copy_pdbs() diff --git a/ports/azure-iot-sdk-c/CONTROL b/ports/azure-iot-sdk-c/CONTROL new file mode 100644 index 000000000..9e65dcb26 --- /dev/null +++ b/ports/azure-iot-sdk-c/CONTROL @@ -0,0 +1,4 @@ +Source: azure-iot-sdk-c +Version: 1.2.1 +Build-Depends: azure-uamqp-c, azure-umqtt-c, azure-c-shared-utility, parson +Description: A C99 SDK for connecting devices to Microsoft Azure IoT services diff --git a/ports/azure-iot-sdk-c/improve-external-deps.patch b/ports/azure-iot-sdk-c/improve-external-deps.patch new file mode 100644 index 000000000..5af7ef29e --- /dev/null +++ b/ports/azure-iot-sdk-c/improve-external-deps.patch @@ -0,0 +1,136 @@ +diff --git a/configs/azure_iot_sdksConfig.cmake b/configs/azure_iot_sdksConfig.cmake +index b9c62e8..edf5847 100644 +--- a/configs/azure_iot_sdksConfig.cmake ++++ b/configs/azure_iot_sdksConfig.cmake +@@ -1,5 +1,10 @@ + #Copyright (c) Microsoft. All rights reserved. + #Licensed under the MIT license. See LICENSE file in the project root for full license information. ++include(CMakeFindDependencyMacro) ++find_dependency(unofficial-parson) ++find_dependency(uamqp) ++find_dependency(umqtt) ++find_dependency(azure_c_shared_utility) + + include("${CMAKE_CURRENT_LIST_DIR}/azure_iot_sdksTargets.cmake") + +diff --git a/dependencies.cmake b/dependencies.cmake +index 063733a..71bfc7d 100644 +--- a/dependencies.cmake ++++ b/dependencies.cmake +@@ -18,6 +18,8 @@ if(${use_installed_dependencies}) + endif() + endif() + ++ find_package(unofficial-parson REQUIRED) ++ link_libraries(unofficial::parson::parson) + else() + add_subdirectory(c-utility) + +diff --git a/iothub_client/CMakeLists.txt b/iothub_client/CMakeLists.txt +index e6d000a..70ade26 100644 +--- a/iothub_client/CMakeLists.txt ++++ b/iothub_client/CMakeLists.txt +@@ -24,22 +24,6 @@ set(install_staticlibs + iothub_client + ) + +-add_library(parson +- ../deps/parson/parson.c +-) +- +-if(MSVC) +- set_source_files_properties(../deps/parson/parson.c PROPERTIES COMPILE_FLAGS "/wd4244 /wd4232") +-endif() +- +-set(install_staticlibs ${install_staticlibs} +- parson +-) +- +-set(iothub_client_libs ${iothub_client_libs} +- parson +-) +- + if(NOT dont_use_uploadtoblob) + set(iothub_client_ll_transport_c_files + ${iothub_client_ll_transport_c_files} +diff --git a/iothub_client/tests/iothubclient_amqp_dt_e2e/CMakeLists.txt b/iothub_client/tests/iothubclient_amqp_dt_e2e/CMakeLists.txt +index 161872a..d53e111 100644 +--- a/iothub_client/tests/iothubclient_amqp_dt_e2e/CMakeLists.txt ++++ b/iothub_client/tests/iothubclient_amqp_dt_e2e/CMakeLists.txt +@@ -31,12 +31,10 @@ set(${theseTestsName}_nuget_c_files + + set(${theseTestsName}_c_files + ../../../certs/certs.c +- ../../../deps/parson/parson.c + ) + + set(${theseTestsName}_h_files + ../../../certs/certs.h +- ../../../deps/parson/parson.h + ../common_dt_e2e/iothubclient_common_dt_e2e.h + ) + +diff --git a/iothub_client/tests/iothubclient_mqtt_dt_e2e/CMakeLists.txt b/iothub_client/tests/iothubclient_mqtt_dt_e2e/CMakeLists.txt +index d472161..b0291e8 100644 +--- a/iothub_client/tests/iothubclient_mqtt_dt_e2e/CMakeLists.txt ++++ b/iothub_client/tests/iothubclient_mqtt_dt_e2e/CMakeLists.txt +@@ -31,12 +31,10 @@ set(${theseTestsName}_nuget_c_files + + set(${theseTestsName}_c_files + ../../../certs/certs.c +- ../../../deps/parson/parson.c + ) + + set(${theseTestsName}_h_files + ../../../certs/certs.h +- ../../../deps/parson/parson.h + ../common_dt_e2e/iothubclient_common_dt_e2e.h + ) + +diff --git a/iothub_client/tests/iothubclient_mqtt_dt_e2e_sfc/CMakeLists.txt b/iothub_client/tests/iothubclient_mqtt_dt_e2e_sfc/CMakeLists.txt +index d05d654..5872c8d 100644 +--- a/iothub_client/tests/iothubclient_mqtt_dt_e2e_sfc/CMakeLists.txt ++++ b/iothub_client/tests/iothubclient_mqtt_dt_e2e_sfc/CMakeLists.txt +@@ -31,12 +31,10 @@ set(${theseTestsName}_nuget_c_files + + set(${theseTestsName}_c_files + ../../../certs/certs.c +- ../../../deps/parson/parson.c + ) + + set(${theseTestsName}_h_files + ../../../certs/certs.h +- ../../../deps/parson/parson.h + ../common_dt_e2e/iothubclient_common_dt_e2e.h + ) + +diff --git a/iothub_service_client/CMakeLists.txt b/iothub_service_client/CMakeLists.txt +index 11a9a9a..4097293 100644 +--- a/iothub_service_client/CMakeLists.txt ++++ b/iothub_service_client/CMakeLists.txt +@@ -72,9 +72,7 @@ endif() + setSdkTargetBuildProperties(iothub_service_client) + + if(NOT ${nuget_e2e_tests}) +- target_link_libraries(iothub_service_client uamqp parson) +-else() +- target_link_libraries(iothub_service_client parson) ++ target_link_libraries(iothub_service_client uamqp) + endif() + + if (NOT ${ARCHITECTURE} STREQUAL "ARM") +diff --git a/serializer/CMakeLists.txt b/serializer/CMakeLists.txt +index 0f6dc74..b4f784c 100644 +--- a/serializer/CMakeLists.txt ++++ b/serializer/CMakeLists.txt +@@ -87,10 +87,6 @@ else() + endif() + setSdkTargetBuildProperties(serializer) + +-target_link_libraries(serializer +- parson +-) +- + if (NOT ${skip_samples}) + if(WIN32) + if (NOT ${ARCHITECTURE} STREQUAL "ARM") diff --git a/ports/azure-iot-sdk-c/portfile.cmake b/ports/azure-iot-sdk-c/portfile.cmake new file mode 100644 index 000000000..b60a03286 --- /dev/null +++ b/ports/azure-iot-sdk-c/portfile.cmake @@ -0,0 +1,46 @@ +include(vcpkg_common_functions) + +if(VCPKG_LIBRARY_LINKAGE STREQUAL "dynamic") + message("azure-iot-sdk-c only supports static linkage") + set(VCPKG_LIBRARY_LINKAGE "static") +endif() + +vcpkg_from_github( + OUT_SOURCE_PATH SOURCE_PATH + REPO Azure/azure-iot-sdk-c + REF 1.2.1 + SHA512 fd97283adf958d6928eda68fb76d9e5a12ef56440fb349d4feb948516150968bf34f3d1bde3341cc1116beb9ea219b0158462a9e6b89c5f7ccd56eb38d8ed2ab + HEAD_REF master +) + +vcpkg_apply_patches( + SOURCE_PATH ${SOURCE_PATH} + PATCHES + ${CMAKE_CURRENT_LIST_DIR}/improve-external-deps.patch +) + +file(COPY ${CURRENT_INSTALLED_DIR}/share/azure-c-shared-utility/azure_iot_build_rules.cmake DESTINATION ${SOURCE_PATH}/deps/azure-c-shared-utility/configs/) + +string(COMPARE EQUAL "${VCPKG_LIBRARY_LINKAGE}" "dynamic" BUILD_AS_DYNAMIC) + +vcpkg_configure_cmake( + SOURCE_PATH ${SOURCE_PATH} + PREFER_NINJA + OPTIONS + -Dskip_samples=ON + -Duse_installed_dependencies=ON + -Duse_default_uuid=ON + -Dbuild_as_dynamic=${BUILD_AS_DYNAMIC} +) + +vcpkg_install_cmake() + +vcpkg_fixup_cmake_targets(CONFIG_PATH cmake TARGET_PATH share/azure_iot_sdks) + +file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include ${CURRENT_PACKAGES_DIR}/debug/share) + +file(INSTALL + ${SOURCE_PATH}/LICENSE + DESTINATION ${CURRENT_PACKAGES_DIR}/share/azure-iot-sdk-c RENAME copyright) + +vcpkg_copy_pdbs() diff --git a/ports/azure-uamqp-c/CONTROL b/ports/azure-uamqp-c/CONTROL new file mode 100644 index 000000000..03b4a2402 --- /dev/null +++ b/ports/azure-uamqp-c/CONTROL @@ -0,0 +1,4 @@ +Source: azure-uamqp-c +Version: 1.0.0-pre-release-1.0.9 +Build-Depends: azure-c-shared-utility +Description: AMQP library for C diff --git a/ports/azure-uamqp-c/glob-headers.patch b/ports/azure-uamqp-c/glob-headers.patch new file mode 100644 index 000000000..245744f2b --- /dev/null +++ b/ports/azure-uamqp-c/glob-headers.patch @@ -0,0 +1,14 @@ +diff --git a/CMakeLists.txt b/CMakeLists.txt +index dbf79e5..aec44e5 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -74,7 +74,8 @@ if(WIN32) + include_directories($ENV{OpenSSLDir}/include) + endif() + +-set(uamqp_h_files ++file(GLOB uamqp_h_files ++ ./inc/azure_uamqp_c/* + ./inc/azure_uamqp_c/amqp_definitions.h + ./inc/azure_uamqp_c/amqp_frame_codec.h + ./inc/azure_uamqp_c/amqp_management.h diff --git a/ports/azure-uamqp-c/portfile.cmake b/ports/azure-uamqp-c/portfile.cmake new file mode 100644 index 000000000..a4407963c --- /dev/null +++ b/ports/azure-uamqp-c/portfile.cmake @@ -0,0 +1,41 @@ +include(vcpkg_common_functions) + +if(VCPKG_LIBRARY_LINKAGE STREQUAL "dynamic") + message("azure-uamqp-c only supports static linkage") + set(VCPKG_LIBRARY_LINKAGE "static") +endif() + +vcpkg_from_github( + OUT_SOURCE_PATH SOURCE_PATH + REPO Azure/azure-uamqp-c + REF 1.0.0-pre-release-1.0.9 + SHA512 8c7142e0f28779847501941effc8baa0d3411e76bec00a3af0a32f5e25c0ded200d1345fcea58d922d7b0e2b736bc2a57ecaaac23d4de7f97c75a22793cd3750 + HEAD_REF master +) + +vcpkg_apply_patches(SOURCE_PATH ${SOURCE_PATH} PATCHES ${CMAKE_CURRENT_LIST_DIR}/glob-headers.patch) + +file(COPY ${CURRENT_INSTALLED_DIR}/share/azure-c-shared-utility/azure_iot_build_rules.cmake DESTINATION ${SOURCE_PATH}/deps/azure-c-shared-utility/configs/) + +string(COMPARE EQUAL "${VCPKG_LIBRARY_LINKAGE}" "dynamic" BUILD_AS_DYNAMIC) + +vcpkg_configure_cmake( + SOURCE_PATH ${SOURCE_PATH} + PREFER_NINJA + OPTIONS + -Dskip_samples=ON + -Duse_installed_dependencies=ON + -Dbuild_as_dynamic=${BUILD_AS_DYNAMIC} +) + +vcpkg_install_cmake() + +vcpkg_fixup_cmake_targets(CONFIG_PATH cmake TARGET_PATH share/uamqp) + +file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include ${CURRENT_PACKAGES_DIR}/debug/share) + +file(INSTALL + ${SOURCE_PATH}/LICENSE + DESTINATION ${CURRENT_PACKAGES_DIR}/share/azure-uamqp-c RENAME copyright) + +vcpkg_copy_pdbs() diff --git a/ports/azure-uhttp-c/CONTROL b/ports/azure-uhttp-c/CONTROL new file mode 100644 index 000000000..3711a7dfe --- /dev/null +++ b/ports/azure-uhttp-c/CONTROL @@ -0,0 +1,4 @@ +Source: azure-uhttp-c +Version: 2018-02-09 +Build-Depends: azure-c-shared-utility +Description: Azure HTTP Library written in C diff --git a/ports/azure-uhttp-c/portfile.cmake b/ports/azure-uhttp-c/portfile.cmake new file mode 100644 index 000000000..a04290ec1 --- /dev/null +++ b/ports/azure-uhttp-c/portfile.cmake @@ -0,0 +1,40 @@ +include(vcpkg_common_functions) + +if(VCPKG_LIBRARY_LINKAGE STREQUAL "dynamic") + message("azure-uhttp-c only supports static linkage") + set(VCPKG_LIBRARY_LINKAGE "static") +endif() + +vcpkg_from_github( + OUT_SOURCE_PATH SOURCE_PATH + REPO Azure/azure-uhttp-c + REF 2018-02-09 + SHA512 0668be0f7624d021b6d24e81c21c606ab4a59990eb3d83fea6d2c6cf9ea3f2c6904ad021afcf9645c3c5f2238e9b83146f36522c662b0a2626d928cb4a0218ba + HEAD_REF master +) + +file(COPY ${CURRENT_INSTALLED_DIR}/share/azure-c-shared-utility/azure_iot_build_rules.cmake DESTINATION ${SOURCE_PATH}/deps/c-utility/configs/) + +string(COMPARE EQUAL "${VCPKG_LIBRARY_LINKAGE}" "dynamic" BUILD_AS_DYNAMIC) + +vcpkg_configure_cmake( + SOURCE_PATH ${SOURCE_PATH} + PREFER_NINJA + OPTIONS + -Dskip_samples=ON + -Duse_installed_dependencies=ON + -Dbuild_as_dynamic=${BUILD_AS_DYNAMIC} + -DCMAKE_INSTALL_INCLUDEDIR=include +) + +vcpkg_install_cmake() + +vcpkg_fixup_cmake_targets(CONFIG_PATH cmake TARGET_PATH share/uhttp) + +file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include ${CURRENT_PACKAGES_DIR}/debug/share) + +file(INSTALL + ${SOURCE_PATH}/LICENSE + DESTINATION ${CURRENT_PACKAGES_DIR}/share/azure-uhttp-c RENAME copyright) + +vcpkg_copy_pdbs() diff --git a/ports/azure-umqtt-c/CONTROL b/ports/azure-umqtt-c/CONTROL new file mode 100644 index 000000000..79bd87b79 --- /dev/null +++ b/ports/azure-umqtt-c/CONTROL @@ -0,0 +1,4 @@ +Source: azure-umqtt-c +Version: 1.0.0-pre-release-1.0.9 +Build-Depends: azure-c-shared-utility +Description: General purpose library for communication over the mqtt protocol diff --git a/ports/azure-umqtt-c/portfile.cmake b/ports/azure-umqtt-c/portfile.cmake new file mode 100644 index 000000000..9a9002166 --- /dev/null +++ b/ports/azure-umqtt-c/portfile.cmake @@ -0,0 +1,39 @@ +include(vcpkg_common_functions) + +if(VCPKG_LIBRARY_LINKAGE STREQUAL "dynamic") + message("azure-umqtt-c only supports static linkage") + set(VCPKG_LIBRARY_LINKAGE "static") +endif() + +vcpkg_from_github( + OUT_SOURCE_PATH SOURCE_PATH + REPO Azure/azure-umqtt-c + REF 1.0.0-pre-release-1.0.9 + SHA512 8cabeb431e1b8db64551c0374e80157d9db39011f38db8d3a3dfb77ddf3d6ffed4d6ee0ab697a0af3ce93571fc8a83bb2f3efa52387afe301583151e75f55658 + HEAD_REF master +) + +file(COPY ${CURRENT_INSTALLED_DIR}/share/azure-c-shared-utility/azure_iot_build_rules.cmake DESTINATION ${SOURCE_PATH}/deps/c-utility/configs/) + +string(COMPARE EQUAL "${VCPKG_LIBRARY_LINKAGE}" "dynamic" BUILD_AS_DYNAMIC) + +vcpkg_configure_cmake( + SOURCE_PATH ${SOURCE_PATH} + PREFER_NINJA + OPTIONS + -Dskip_samples=ON + -Duse_installed_dependencies=ON + -Dbuild_as_dynamic=${BUILD_AS_DYNAMIC} +) + +vcpkg_install_cmake() + +vcpkg_fixup_cmake_targets(CONFIG_PATH cmake TARGET_PATH share/umqtt) + +file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include ${CURRENT_PACKAGES_DIR}/debug/share) + +file(INSTALL + ${SOURCE_PATH}/LICENSE + DESTINATION ${CURRENT_PACKAGES_DIR}/share/azure-umqtt-c RENAME copyright) + +vcpkg_copy_pdbs() diff --git a/ports/parson/CMakeLists.txt b/ports/parson/CMakeLists.txt new file mode 100644 index 000000000..f96ed427c --- /dev/null +++ b/ports/parson/CMakeLists.txt @@ -0,0 +1,19 @@ +cmake_minimum_required(VERSION 3.5) +project(parson C) + +add_library(parson parson.c) +target_include_directories(parson PUBLIC $) + +install(TARGETS parson + EXPORT unofficial-parson-targets + RUNTIME DESTINATION bin + LIBRARY DESTINATION lib + ARCHIVE DESTINATION lib +) + +install( + EXPORT unofficial-parson-targets + FILE unofficial-parson-config.cmake + NAMESPACE unofficial::parson:: + DESTINATION share/unofficial-parson +) diff --git a/ports/parson/CONTROL b/ports/parson/CONTROL new file mode 100644 index 000000000..47d1167a2 --- /dev/null +++ b/ports/parson/CONTROL @@ -0,0 +1,3 @@ +Source: parson +Version: 2018-03-23 +Description: a lighweight json library written in C diff --git a/ports/parson/portfile.cmake b/ports/parson/portfile.cmake new file mode 100644 index 000000000..f1028d9ee --- /dev/null +++ b/ports/parson/portfile.cmake @@ -0,0 +1,33 @@ +include(vcpkg_common_functions) + +if(VCPKG_LIBRARY_LINKAGE STREQUAL "dynamic") + message("parson only supports static linkage") + set(VCPKG_LIBRARY_LINKAGE "static") +endif() + +vcpkg_from_github( + OUT_SOURCE_PATH SOURCE_PATH + REPO kgabis/parson + REF 387c5665f6b20faa535a7f782dcaa49390963366 + SHA512 755d1351c2176ac75bb865e83cbbd3b8f6b3a5797cccd96e512e474100fbdaacb7d00eb857ebc4478aad40672baeafdecb5d87c26eaa16f43ef5559a0a56f431 + HEAD_REF master +) + +file(COPY ${CMAKE_CURRENT_LIST_DIR}/CMakeLists.txt DESTINATION ${SOURCE_PATH}) + +vcpkg_configure_cmake( + SOURCE_PATH ${SOURCE_PATH} + PREFER_NINJA +) + +vcpkg_install_cmake() + +file(COPY ${SOURCE_PATH}/parson.h DESTINATION ${CURRENT_PACKAGES_DIR}/include) + +vcpkg_fixup_cmake_targets(CONFIG_PATH share/unofficial-parson TARGET_PATH share/unofficial-parson) + +file(INSTALL + ${SOURCE_PATH}/LICENSE + DESTINATION ${CURRENT_PACKAGES_DIR}/share/parson RENAME copyright) + +vcpkg_copy_pdbs() -- cgit v1.2.3 From 608456b3252abd688f557e85de3a8697f51d228c Mon Sep 17 00:00:00 2001 From: Robert Schumacher Date: Fri, 23 Mar 2018 15:09:07 -0700 Subject: Upgrades --- ports/abseil/CONTROL | 2 +- ports/abseil/portfile.cmake | 4 ++-- ports/azure-c-shared-utility/CONTROL | 2 +- ports/azure-c-shared-utility/portfile.cmake | 4 ++-- ports/azure-iot-sdk-c/CONTROL | 2 +- ports/azure-iot-sdk-c/portfile.cmake | 4 ++-- ports/clara/CONTROL | 2 +- ports/clara/portfile.cmake | 4 ++-- ports/discord-rpc/CONTROL | 2 +- ports/discord-rpc/portfile.cmake | 4 ++-- ports/exiv2/CONTROL | 2 +- ports/exiv2/portfile.cmake | 4 ++-- ports/nuklear/CONTROL | 2 +- ports/nuklear/portfile.cmake | 4 ++-- ports/thrift/CONTROL | 2 +- ports/thrift/portfile.cmake | 4 ++-- ports/zeromq/CONTROL | 2 +- ports/zeromq/portfile.cmake | 4 ++-- 18 files changed, 27 insertions(+), 27 deletions(-) diff --git a/ports/abseil/CONTROL b/ports/abseil/CONTROL index b337b7262..0c28ff456 100644 --- a/ports/abseil/CONTROL +++ b/ports/abseil/CONTROL @@ -1,5 +1,5 @@ Source: abseil -Version: 2018-03-20 +Version: 2018-03-23 Description: an open-source collection designed to augment the C++ standard library. Abseil is an open-source collection of C++ library code designed to augment the C++ standard library. The Abseil library code is collected from Google's own C++ code base, has been extensively tested and used in production, and is the same code we depend on in our daily coding lives. In some cases, Abseil provides pieces missing from the C++ standard; in others, Abseil provides alternatives to the standard for special needs we've found through usage in the Google code base. We denote those cases clearly within the library code we provide you. diff --git a/ports/abseil/portfile.cmake b/ports/abseil/portfile.cmake index 7f8f28798..48a506710 100644 --- a/ports/abseil/portfile.cmake +++ b/ports/abseil/portfile.cmake @@ -7,8 +7,8 @@ endif() vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO abseil/abseil-cpp - REF 506fb4b56a339314fde23802bd749dbc3b3c1c79 - SHA512 a67d51afcf4446d2c5f27258174dd012e4c15ee1f69eb074770d4f5af335e661b1cafa6b46f6b61b9f7ff0379e7822a03c6d55096dc78a13e554688a8872ebf8 + REF 4e2e6c5c0071e6430056a8ef0a6c8a1fe584d8ff + SHA512 f1daa9f7afb8727f2fd3097683bd7192b9f54536d575ce655a7440281463a3eae1bb0072f3010e74a03693b5dbca2e80e220099ae8557171055efcad70767ef1 HEAD_REF master ) diff --git a/ports/azure-c-shared-utility/CONTROL b/ports/azure-c-shared-utility/CONTROL index efc7592c1..99cbcd38d 100644 --- a/ports/azure-c-shared-utility/CONTROL +++ b/ports/azure-c-shared-utility/CONTROL @@ -1,3 +1,3 @@ Source: azure-c-shared-utility -Version: 1.1.1 +Version: 1.0.0-pre-release-1.0.9 Description: Azure C SDKs common code diff --git a/ports/azure-c-shared-utility/portfile.cmake b/ports/azure-c-shared-utility/portfile.cmake index 40eacaa4b..4635f0d97 100644 --- a/ports/azure-c-shared-utility/portfile.cmake +++ b/ports/azure-c-shared-utility/portfile.cmake @@ -8,8 +8,8 @@ endif() vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO Azure/azure-c-shared-utility - REF 1.1.1 - SHA512 859513c3bebc3cb5a9e6c0840d2b5bdb5b21b753ed846dced6f4e88f8f937bae89264da57c1bf430660417b10449914b29000b930520e5834140f63df2109b5f + REF 1.0.0-pre-release-1.0.9 + SHA512 df28d0bb01961943d86febd7b54bafd7037b8461b4025e1db26ba0b76c4cadfa722c4cb5695ac0d4f57e16576eb23f3da02703bcc363af54a0476bccec95ce45 HEAD_REF master ) diff --git a/ports/azure-iot-sdk-c/CONTROL b/ports/azure-iot-sdk-c/CONTROL index 9e65dcb26..8c9bdb956 100644 --- a/ports/azure-iot-sdk-c/CONTROL +++ b/ports/azure-iot-sdk-c/CONTROL @@ -1,4 +1,4 @@ Source: azure-iot-sdk-c -Version: 1.2.1 +Version: 1.0.0-pre-release-1.0.9 Build-Depends: azure-uamqp-c, azure-umqtt-c, azure-c-shared-utility, parson Description: A C99 SDK for connecting devices to Microsoft Azure IoT services diff --git a/ports/azure-iot-sdk-c/portfile.cmake b/ports/azure-iot-sdk-c/portfile.cmake index b60a03286..e4f0d8758 100644 --- a/ports/azure-iot-sdk-c/portfile.cmake +++ b/ports/azure-iot-sdk-c/portfile.cmake @@ -8,8 +8,8 @@ endif() vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO Azure/azure-iot-sdk-c - REF 1.2.1 - SHA512 fd97283adf958d6928eda68fb76d9e5a12ef56440fb349d4feb948516150968bf34f3d1bde3341cc1116beb9ea219b0158462a9e6b89c5f7ccd56eb38d8ed2ab + REF 1.0.0-pre-release-1.0.9 + SHA512 972b5da73399805963031dfacc436665c1a7aaecf4a0035af369d9cf184cb4e7be608b4ca5768902dcfb04f18324c399d095f6543ff3d1da835c40da6e18934e HEAD_REF master ) diff --git a/ports/clara/CONTROL b/ports/clara/CONTROL index 0825f74e0..878313563 100644 --- a/ports/clara/CONTROL +++ b/ports/clara/CONTROL @@ -1,3 +1,3 @@ Source: clara -Version: 2018-03-11 +Version: 2018-03-23 Description: A simple to use command line parser for C++ \ No newline at end of file diff --git a/ports/clara/portfile.cmake b/ports/clara/portfile.cmake index 377eb932a..3c5108b19 100644 --- a/ports/clara/portfile.cmake +++ b/ports/clara/portfile.cmake @@ -2,8 +2,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO philsquared/Clara - REF 008c2ae0a52aaa485d6cb830ad54bc6466733298 - SHA512 270c5d8cdc9c833d1a95f1a2737b3db0f537ab92569b5cc1007184b9f7e59f66bbf9ba95313332826814c0b670919b31e27fe797bb3083ac5e55bad6a6051d51 + REF 3ba13ad04a3eebc002320f187475ddcd267288a3 + SHA512 d2e73d2ac70f9ad6428f434b101d413453648708d545a1a71f2363b5847e710412b69fdb9ab100eb437f9419cc4c250ce7ca56cfa9132096be9aa471dcb677d0 HEAD_REF master ) file(INSTALL ${SOURCE_PATH}/single_include/clara.hpp DESTINATION ${CURRENT_PACKAGES_DIR}/include) diff --git a/ports/discord-rpc/CONTROL b/ports/discord-rpc/CONTROL index 218257e6a..609460036 100644 --- a/ports/discord-rpc/CONTROL +++ b/ports/discord-rpc/CONTROL @@ -1,3 +1,3 @@ Source: discord-rpc -Version: 3.0.0 +Version: 3.1.0 Description: Rich Presence allows you to leverage the totally overhauled "Now Playing" section in a Discord user's profile to help people play your game together. diff --git a/ports/discord-rpc/portfile.cmake b/ports/discord-rpc/portfile.cmake index 88a5fc976..72709ed7c 100644 --- a/ports/discord-rpc/portfile.cmake +++ b/ports/discord-rpc/portfile.cmake @@ -3,8 +3,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO discordapp/discord-rpc - REF v3.0.0 - SHA512 d14ae2b33d832c456621fd0abb137450ae9d7eedf2a3d343a82f2b609da3946e501a9d8016f62b3dd0219a0eaf3c47f82d6023960608d670632939e0b35e8167 + REF v3.1.0 + SHA512 f467ac6428588b45a90eaec0786b7f0d799b5ee9e97528dd69cd1890fb4dd9c887807e845a0a1d75e19e6e1f6cb2d21c8a77d09e95f24d8df0aae04eae17a216 HEAD_REF master ) diff --git a/ports/exiv2/CONTROL b/ports/exiv2/CONTROL index 5fd6dae7f..36c7220e5 100644 --- a/ports/exiv2/CONTROL +++ b/ports/exiv2/CONTROL @@ -1,4 +1,4 @@ Source: exiv2 -Version: 2018-03-20 +Version: 2018-03-23 Build-Depends: zlib, expat, libiconv Description: Image metadata library and tools http://www.exiv2.org diff --git a/ports/exiv2/portfile.cmake b/ports/exiv2/portfile.cmake index 3f2440356..80e0b1a6f 100644 --- a/ports/exiv2/portfile.cmake +++ b/ports/exiv2/portfile.cmake @@ -3,8 +3,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO Exiv2/exiv2 - REF 59b148aee9402426e4d4cd7db5be6fa5966a68b5 - SHA512 6e7444d26594cd28d0a421b94ce8dc24b8b65cff3112014931a528235578f5cbbb9b945dff61af1d39fed97ab091aa6c5ebab6c662aada93ca5a9b0316f714f0 + REF eb61e57de031ffd8713306cae6ad431d0b84a9b5 + SHA512 078e161de8ffe1953c3215ff745954f00ef4bd5ccef4c7fb079ad67d5350a31bb8f692cb664adba889433c4e79e446dc1f31edfd9ecc8b9471faeba82ae425e6 HEAD_REF master ) diff --git a/ports/nuklear/CONTROL b/ports/nuklear/CONTROL index c9a4c23a5..ba4340611 100644 --- a/ports/nuklear/CONTROL +++ b/ports/nuklear/CONTROL @@ -1,3 +1,3 @@ Source: nuklear -Version: 2018-03-20 +Version: 2018-03-23 Description: This is a minimal state immediate mode graphical user interface toolkit written in ANSI C and licensed under public domain diff --git a/ports/nuklear/portfile.cmake b/ports/nuklear/portfile.cmake index 833a34692..9c240f411 100644 --- a/ports/nuklear/portfile.cmake +++ b/ports/nuklear/portfile.cmake @@ -2,8 +2,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO vurtun/nuklear - REF 94c0412a086110dc801d83c20be7cb4e89dbd5d1 - SHA512 882bce080ca15a9b789289ceda987f1154df1800fd1428cf1d14db5704caf9ed3842ec1fe345db9548fe5305aa8f8721ddd53e75294b896c8caad061d29ec95a + REF 1acb673af13e72d8ac07522a22127ffd33af65a9 + SHA512 8ee7c45d0a6c64062adec3575ea94cf0d5c8d60d9f30cf8c72051c6e9fcf030562379074f37c1f5da256cce8537078694673ed3b947a603982cdbf26c393fa4b HEAD_REF master ) file(INSTALL ${SOURCE_PATH}/nuklear.h DESTINATION ${CURRENT_PACKAGES_DIR}/include) diff --git a/ports/thrift/CONTROL b/ports/thrift/CONTROL index 1e0037736..7e21ecce6 100644 --- a/ports/thrift/CONTROL +++ b/ports/thrift/CONTROL @@ -1,4 +1,4 @@ Source: thrift -Version: 2018-03-20 +Version: 2018-03-23 Build-Depends: zlib, libevent, openssl, boost-range, boost-smart-ptr, boost-date-time, boost-locale, boost-scope-exit Description: Apache Thrift is a software project spanning a variety of programming languages and use cases. Our goal is to make reliable, performant communication and data serialization across languages as efficient and seamless as possible. Originally developed at Facebook, Thrift was open sourced in April 2007 and entered the Apache Incubator in May, 2008. Thrift became an Apache TLP in October, 2010. diff --git a/ports/thrift/portfile.cmake b/ports/thrift/portfile.cmake index 968a5b109..eae7f5c73 100644 --- a/ports/thrift/portfile.cmake +++ b/ports/thrift/portfile.cmake @@ -15,8 +15,8 @@ vcpkg_find_acquire_program(BISON) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO apache/thrift - REF 22bd3450c6e97e348d64fb6a75171e8ced79d1e4 - SHA512 5774fd332daac80891ac25c6188e415bf5335ffecc636dc120500f03b6ae23f9317c65dbc703cc89946a894f12c6805f396fd42e763d1e0d3ccfe6398357d321 + REF 272470790ad6db791bd6f9db399b2cd2d5879f74 + SHA512 9f9ae5d72adf1b46970f7527fe3841349c5652e4721a16967f1d9edbe4b1ecc83f146ece492234da16ed7c033b172aa49dc7f5431bcdea37286a2dc21835691e HEAD_REF master ) diff --git a/ports/zeromq/CONTROL b/ports/zeromq/CONTROL index 4ea44046b..b3ec200db 100644 --- a/ports/zeromq/CONTROL +++ b/ports/zeromq/CONTROL @@ -1,3 +1,3 @@ Source: zeromq -Version: 2018-03-20 +Version: 2018-03-23 Description: The ZeroMQ lightweight messaging kernel is a library which extends the standard socket interfaces with features traditionally provided by specialised messaging middleware products diff --git a/ports/zeromq/portfile.cmake b/ports/zeromq/portfile.cmake index 062ed6b48..72165adaa 100644 --- a/ports/zeromq/portfile.cmake +++ b/ports/zeromq/portfile.cmake @@ -3,8 +3,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO zeromq/libzmq - REF 15b3dccf47179a88311c84d6ef250565abd05182 - SHA512 568d315f48c194f7db3df59ecf70a6625e916a4c258a3f5ad1d7b9e5899afd6a7d825f4fb8811cb49dcd752142952a9bd6e4c31af6572373462a4821d6a1a2bd + REF c8a1c4542d13b6492949e7525f4fe8da266cac2b + SHA512 600bb2a43afb4f6e2d9a7ce8470841bcb03fc9737f17d276f52b0cf78c6f17d1cf08e2b0046ff746efa8738f33128cb51cbe63cb215937a892222f2e4895a659 HEAD_REF master ) -- cgit v1.2.3 From 7029daa36df7040e420b3722f345b6923ce93ef0 Mon Sep 17 00:00:00 2001 From: Robert Schumacher Date: Fri, 23 Mar 2018 09:59:42 -0700 Subject: [vcpkg] Handle non-sorted output from std::filesystem --- toolsrc/src/vcpkg/install.cpp | 4 ++-- toolsrc/src/vcpkg/paragraphs.cpp | 4 +++- toolsrc/src/vcpkg/vcpkglib.cpp | 1 + toolsrc/src/vcpkg/vcpkgpaths.cpp | 1 + 4 files changed, 7 insertions(+), 3 deletions(-) diff --git a/toolsrc/src/vcpkg/install.cpp b/toolsrc/src/vcpkg/install.cpp index 7a963c82f..1fbf6d97e 100644 --- a/toolsrc/src/vcpkg/install.cpp +++ b/toolsrc/src/vcpkg/install.cpp @@ -70,8 +70,8 @@ namespace vcpkg::Install } const std::string filename = file.filename().u8string(); - if (fs::is_regular_file(status) && (Strings::case_insensitive_ascii_equals(filename.c_str(), "CONTROL") || - Strings::case_insensitive_ascii_equals(filename.c_str(), "BUILD_INFO"))) + if (fs::is_regular_file(status) && (Strings::case_insensitive_ascii_equals(filename, "CONTROL") || + Strings::case_insensitive_ascii_equals(filename, "BUILD_INFO"))) { // Do not copy the control file continue; diff --git a/toolsrc/src/vcpkg/paragraphs.cpp b/toolsrc/src/vcpkg/paragraphs.cpp index d0b0c0abf..41ffceec7 100644 --- a/toolsrc/src/vcpkg/paragraphs.cpp +++ b/toolsrc/src/vcpkg/paragraphs.cpp @@ -251,7 +251,9 @@ namespace vcpkg::Paragraphs LoadResults try_load_all_ports(const Files::Filesystem& fs, const fs::path& ports_dir) { LoadResults ret; - for (auto&& path : fs.get_files_non_recursive(ports_dir)) + auto port_dirs = fs.get_files_non_recursive(ports_dir); + Util::sort(port_dirs); + for (auto&& path : port_dirs) { auto maybe_spgh = try_load_port(fs, path); if (const auto spgh = maybe_spgh.get()) diff --git a/toolsrc/src/vcpkg/vcpkglib.cpp b/toolsrc/src/vcpkg/vcpkglib.cpp index 220c29720..7979fd9a5 100644 --- a/toolsrc/src/vcpkg/vcpkglib.cpp +++ b/toolsrc/src/vcpkg/vcpkglib.cpp @@ -54,6 +54,7 @@ namespace vcpkg StatusParagraphs current_status_db = load_current_database(fs, status_file, status_file_old); auto update_files = fs.get_files_non_recursive(updates_dir); + Util::sort(update_files); if (update_files.empty()) { // updates directory is empty, control file is up-to-date. diff --git a/toolsrc/src/vcpkg/vcpkgpaths.cpp b/toolsrc/src/vcpkg/vcpkgpaths.cpp index c36def15d..9b331d7fc 100644 --- a/toolsrc/src/vcpkg/vcpkgpaths.cpp +++ b/toolsrc/src/vcpkg/vcpkgpaths.cpp @@ -405,6 +405,7 @@ namespace vcpkg { output.push_back(path.stem().filename().string()); } + Util::sort(output); return output; }); -- cgit v1.2.3 From b14c1ba9088bd5b2ec88ebead50677cc6cc1a576 Mon Sep 17 00:00:00 2001 From: Robert Schumacher Date: Fri, 23 Mar 2018 10:01:07 -0700 Subject: [libpq][harfbuzz][qt5-base] Fix non-Windows --- ports/harfbuzz/CONTROL | 2 +- ports/harfbuzz/find-package-freetype-2.patch | 13 ++ ports/harfbuzz/find-package-freetype.patch | 13 -- ports/harfbuzz/portfile.cmake | 4 +- ports/libpq/CMakeLists.txt | 95 ++++++++++--- ports/libpq/CONTROL | 4 +- ports/libpq/pg_config.darwin.h | 191 +++++++++++++++++++++++++++ ports/libpq/pg_config.linux.h | 173 ++++++++++++++++++++++++ ports/libpq/portfile.cmake | 5 +- ports/qt5-base/configure_qt.cmake | 33 ++--- ports/qt5-base/install_qt.cmake | 29 +++- ports/qt5-base/portfile.cmake | 158 ++++++++++++++-------- 12 files changed, 611 insertions(+), 109 deletions(-) create mode 100644 ports/harfbuzz/find-package-freetype-2.patch delete mode 100644 ports/harfbuzz/find-package-freetype.patch create mode 100644 ports/libpq/pg_config.darwin.h create mode 100644 ports/libpq/pg_config.linux.h diff --git a/ports/harfbuzz/CONTROL b/ports/harfbuzz/CONTROL index f03f52187..e6cf6a8e5 100644 --- a/ports/harfbuzz/CONTROL +++ b/ports/harfbuzz/CONTROL @@ -1,4 +1,4 @@ Source: harfbuzz -Version: 1.7.6 +Version: 1.7.6-1 Description: HarfBuzz OpenType text shaping engine Build-Depends: freetype, ragel, glib (windows) diff --git a/ports/harfbuzz/find-package-freetype-2.patch b/ports/harfbuzz/find-package-freetype-2.patch new file mode 100644 index 000000000..85dbbdeec --- /dev/null +++ b/ports/harfbuzz/find-package-freetype-2.patch @@ -0,0 +1,13 @@ +diff --git a/CMakeLists.txt b/CMakeLists.txt +index defd5d6..03f9d4e 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -267,7 +267,7 @@ set (subset_project_headers + + ## Find and include needed header folders and libraries + if (HB_HAVE_FREETYPE) +- include (FindFreetype) ++ find_package(Freetype REQUIRED) + if (NOT FREETYPE_FOUND) + message(FATAL_ERROR "HB_HAVE_FREETYPE was set, but we failed to find it. Maybe add a CMAKE_PREFIX_PATH= to your Freetype2 install prefix") + endif () diff --git a/ports/harfbuzz/find-package-freetype.patch b/ports/harfbuzz/find-package-freetype.patch deleted file mode 100644 index a556d1377..000000000 --- a/ports/harfbuzz/find-package-freetype.patch +++ /dev/null @@ -1,13 +0,0 @@ -diff --git a/CMakeLists.txt b/CMakeLists.txt -index 24ccb6f..21df836 100644 ---- a/CMakeLists.txt -+++ b/CMakeLists.txt -@@ -201,7 +201,7 @@ set(project_headers - ## Find and include needed header folders and libraries - if (HB_HAVE_FREETYPE) - -- include(FindFreetype) -+ find_package(Freetype REQUIRED) - if (NOT FREETYPE_FOUND) - message(FATAL_ERROR "HB_HAVE_FREETYPE was set, but we failed to find it. Maybe add a CMAKE_PREFIX_PATH= to your Freetype2 install prefix") - endif() diff --git a/ports/harfbuzz/portfile.cmake b/ports/harfbuzz/portfile.cmake index b1c91aa91..906e42d95 100644 --- a/ports/harfbuzz/portfile.cmake +++ b/ports/harfbuzz/portfile.cmake @@ -12,10 +12,10 @@ vcpkg_apply_patches( SOURCE_PATH ${SOURCE_PATH} PATCHES "${CMAKE_CURRENT_LIST_DIR}/0001-fix-uwp-build.patch" - "${CMAKE_CURRENT_LIST_DIR}/find-package-freetype.patch" + "${CMAKE_CURRENT_LIST_DIR}/find-package-freetype-2.patch" ) -if(VCPKG_TARGET_ARCHITECTURE STREQUAL "arm" OR VCPKG_CMAKE_SYSTEM_NAME STREQUAL "WindowsStore") +if(VCPKG_TARGET_ARCHITECTURE STREQUAL "arm" OR VCPKG_CMAKE_SYSTEM_NAME) SET(HAVE_GLIB "OFF") SET(BUILTIN_UCDN "ON") else() diff --git a/ports/libpq/CMakeLists.txt b/ports/libpq/CMakeLists.txt index 35a67118a..57b86e255 100644 --- a/ports/libpq/CMakeLists.txt +++ b/ports/libpq/CMakeLists.txt @@ -1,41 +1,98 @@ cmake_minimum_required(VERSION 3.5) project(libpq VERSION 9.6.1 LANGUAGES C) +if(NOT CMAKE_SYSTEM_PROCESSOR) + set(CMAKE_SYSTEM_PROCESSOR ${CMAKE_HOST_SYSTEM_PROCESSOR}) +endif() + find_package(OpenSSL REQUIRED) +find_program(PERL NAMES perl) + +set(CMAKE_STATIC_LIBRARY_PREFIX) +set(CMAKE_SHARED_LIBRARY_PREFIX) set(CMAKE_DEBUG_POSTFIX "d") -configure_file(${CMAKE_CURRENT_LIST_DIR}/src/include/pg_config.h.win32 ${CMAKE_CURRENT_BINARY_DIR}/include/pg_config.h) -configure_file(${CMAKE_CURRENT_LIST_DIR}/src/include/pg_config_ext.h.win32 ${CMAKE_CURRENT_BINARY_DIR}/include/pg_config_ext.h) -configure_file(${CMAKE_CURRENT_LIST_DIR}/src/include/port/win32.h ${CMAKE_CURRENT_BINARY_DIR}/include/pg_config_os.h) + +file(REMOVE + ${CMAKE_CURRENT_SOURCE_DIR}/src/include/pg_config.h + ${CMAKE_CURRENT_SOURCE_DIR}/src/include/pg_config_ext.h + ${CMAKE_CURRENT_SOURCE_DIR}/src/include/pg_config_os.h +) + +if(WIN32) + configure_file(src/include/pg_config.h.win32 include/pg_config.h) + configure_file(src/include/pg_config_ext.h.win32 include/pg_config_ext.h) + configure_file(src/include/port/win32.h include/pg_config_os.h) +elseif(CMAKE_SYSTEM_NAME STREQUAL "Darwin" AND CMAKE_SYSTEM_PROCESSOR STREQUAL "x86_64") + file(WRITE "${CMAKE_CURRENT_BINARY_DIR}/include/pg_config_ext.h" "#include \n#define PG_INT64_TYPE int64_t") + configure_file("${PORT_DIR}/pg_config.darwin.h" include/pg_config.h COPYONLY) + configure_file(src/include/port/darwin.h include/pg_config_os.h COPYONLY) + configure_file(src/backend/port/dynloader/darwin.h include/dynloader.h COPYONLY) +elseif(CMAKE_SYSTEM_NAME STREQUAL "Linux" AND CMAKE_SYSTEM_PROCESSOR STREQUAL "x86_64") + file(WRITE "${CMAKE_CURRENT_BINARY_DIR}/include/pg_config_ext.h" "#include \n#define PG_INT64_TYPE int64_t") + configure_file(src/include/port/linux.h include/pg_config_os.h COPYONLY) + configure_file("${PORT_DIR}/pg_config.linux.h" include/pg_config.h COPYONLY) + configure_file(src/backend/port/dynloader/linux.h include/dynloader.h COPYONLY) +else() + message(FATAL_ERROR "Unknown system: ${CMAKE_SYSTEM_NAME}-${CMAKE_SYSTEM_PROCESSOR}") +endif() file(WRITE ${CMAKE_CURRENT_BINARY_DIR}/include/pg_config_paths.h "#define SYSCONFDIR \"\"") set(INSTALL_INCLUDES ON CACHE BOOL "Install include files") set(pg_port_src - src/port/getaddrinfo.c src/port/pgstrcasecmp.c src/port/pqsignal.c src/port/thread.c - src/port/inet_aton.c src/port/crypt.c src/port/noblock.c src/port/chklocale.c - src/port/inet_net_ntop.c src/port/snprintf.c - src/port/strlcpy.c - src/port/dirent.c src/port/dirmod.c src/port/pgsleep.c src/port/open.c src/port/system.c - src/port/win32error.c - src/port/win32setlocale.c ) +if(WIN32) + list(APPEND pg_port_src + src/port/dirent.c + src/port/inet_aton.c + src/port/inet_net_ntop.c + src/port/win32error.c + src/port/win32setlocale.c + src/port/getaddrinfo.c + src/port/strlcpy.c + ) + include_directories(src/include/port/win32 src/include/port/win32_msvc) +elseif(CMAKE_SYSTEM_NAME STREQUAL "Linux") + list(APPEND pg_port_src + src/port/strlcpy.c + ) +endif() + set(pg_backend_src src/backend/libpq/md5.c src/backend/libpq/ip.c src/backend/utils/mb/wchar.c src/backend/utils/mb/encnames.c ) +if(CMAKE_SYSTEM_NAME STREQUAL "Linux") + list(APPEND pg_backend_src + src/backend/port/dynloader/linux.c + src/backend/port/sysv_sema.c + src/backend/port/sysv_shmem.c + ) +endif() +if(NOT WIN32) + add_custom_command( + OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/include/utils/errcodes.h + COMMAND "${PERL}" "${CMAKE_CURRENT_SOURCE_DIR}/src/backend/utils/generate-errcodes.pl" "${CMAKE_CURRENT_SOURCE_DIR}/src/backend/utils/errcodes.txt" > "${CMAKE_CURRENT_BINARY_DIR}/include/utils/errcodes.h" + VERBATIM + ) + list(APPEND pg_backend_src + ${CMAKE_CURRENT_BINARY_DIR}/include/utils/errcodes.h + ) +endif() + set(pg_libpq_src src/interfaces/libpq/fe-auth.c src/interfaces/libpq/fe-connect.c @@ -49,16 +106,21 @@ set(pg_libpq_src src/interfaces/libpq/fe-secure.c src/interfaces/libpq/libpq-events.c src/interfaces/libpq/pqexpbuffer.c - src/interfaces/libpq/pthread-win32.c - src/interfaces/libpq/win32.c src/interfaces/libpq/libpq-dist.rc ) + +if(WIN32) + list(APPEND pg_libpq_src + src/interfaces/libpq/pthread-win32.c + src/interfaces/libpq/win32.c + ) +endif() set(pg_libpq_interface src/include/postgres_ext.h ${CMAKE_CURRENT_BINARY_DIR}/include/pg_config_ext.h ${CMAKE_CURRENT_BINARY_DIR}/include/pg_config.h src/interfaces/libpq/libpq-fe.h - ) +) set(pg_libpq_catalog_interface src/include/catalog/pg_type.h src/include/catalog/genbki.h @@ -68,8 +130,11 @@ set(CMAKE_DEBUG_POSTFIX "d") set(CMAKE_INCLUDE_CURRENT_DIR ON) add_library(libpq ${pg_port_src} ${pg_backend_src} ${pg_libpq_src}) target_compile_definitions(libpq PRIVATE -DFRONTEND -DENABLE_THREAD_SAFETY -DUSE_OPENSSL -D_CRT_SECURE_NO_WARNINGS) -target_link_libraries(libpq PRIVATE OpenSSL::SSL ws2_32 secur32 advapi32 shell32) -target_include_directories(libpq PRIVATE src/include src/include/port/win32 src/include/port/win32_msvc src/port ${CMAKE_CURRENT_BINARY_DIR}/include) +target_link_libraries(libpq PRIVATE OpenSSL::SSL) +if(WIN32) + target_link_libraries(libpq PRIVATE ws2_32 secur32 advapi32 shell32) +endif() +target_include_directories(libpq PRIVATE src/include src/port ${CMAKE_CURRENT_BINARY_DIR}/include) set_target_properties(libpq PROPERTIES WINDOWS_EXPORT_ALL_SYMBOLS ON) install(TARGETS libpq diff --git a/ports/libpq/CONTROL b/ports/libpq/CONTROL index b91e08526..225d886de 100644 --- a/ports/libpq/CONTROL +++ b/ports/libpq/CONTROL @@ -1,4 +1,4 @@ Source: libpq -Version: 9.6.1-1 +Version: 9.6.1-4 Description: The official database access API of postgresql -Build-Depends: openssl +Build-Depends: openssl, zlib (linux) diff --git a/ports/libpq/pg_config.darwin.h b/ports/libpq/pg_config.darwin.h new file mode 100644 index 000000000..5db9f84d2 --- /dev/null +++ b/ports/libpq/pg_config.darwin.h @@ -0,0 +1,191 @@ +#define ACCEPT_TYPE_ARG1 int +#define ACCEPT_TYPE_ARG2 struct sockaddr * +#define ACCEPT_TYPE_ARG3 socklen_t +#define ACCEPT_TYPE_RETURN int +#define ALIGNOF_DOUBLE 8 +#define ALIGNOF_INT 4 +#define ALIGNOF_LONG 8 +#define ALIGNOF_SHORT 2 +#define BLCKSZ 8192 +#define DEF_PGPORT 5432 +#define DEF_PGPORT_STR "5432" +#define ENABLE_THREAD_SAFETY 1 +#define FLEXIBLE_ARRAY_MEMBER /**/ +#define FLOAT4PASSBYVAL true +#define FLOAT8PASSBYVAL true +#ifdef GETTIMEOFDAY_1ARG +# define gettimeofday(a,b) gettimeofday(a) +#endif +#define HAVE_ATOMICS 1 +#define HAVE_CBRT 1 +#define HAVE_CRYPT 1 +#define HAVE_DECL_FDATASYNC 0 +#define HAVE_DECL_F_FULLFSYNC 1 +#define HAVE_DECL_POSIX_FADVISE 0 +#define HAVE_DECL_SNPRINTF 1 +#define HAVE_DECL_STRLCAT 1 +#define HAVE_DECL_STRLCPY 1 +#define HAVE_DECL_SYS_SIGLIST 1 +#define HAVE_DECL_VSNPRINTF 1 +#define HAVE_DLOPEN 1 +#define HAVE_FDATASYNC 1 +#define HAVE_FLS 1 +#define HAVE_FSEEKO 1 +#define HAVE_FUNCNAME__FUNC 1 +#define HAVE_GCC__ATOMIC_INT32_CAS 1 +#define HAVE_GCC__ATOMIC_INT64_CAS 1 +#define HAVE_GCC__SYNC_CHAR_TAS 1 +#define HAVE_GCC__SYNC_INT32_CAS 1 +#define HAVE_GCC__SYNC_INT32_TAS 1 +#define HAVE_GCC__SYNC_INT64_CAS 1 +#define HAVE_GETADDRINFO 1 +#define HAVE_GETIFADDRS 1 +#define HAVE_GETOPT 1 +#define HAVE_GETOPT_H 1 +#define HAVE_GETOPT_LONG 1 +#define HAVE_GETPEEREID 1 +#define HAVE_GETPWUID_R 1 +#define HAVE_GETRLIMIT 1 +#define HAVE_GETRUSAGE 1 +#define HAVE_HISTORY_TRUNCATE_FILE 1 +#define HAVE_IFADDRS_H 1 +#define HAVE_INET_ATON 1 +#define HAVE_INTPTR_T 1 +#define HAVE_INTTYPES_H 1 +#define HAVE_INT_OPTERR 1 +#define HAVE_INT_OPTRESET 1 +#define HAVE_INT_TIMEZONE 1 +#define HAVE_IPV6 1 +#define HAVE_ISINF 1 +#define HAVE_LANGINFO_H 1 +#define HAVE_LIBM 1 +#define HAVE_LIBREADLINE 1 +#define HAVE_LIBZ 1 +#define HAVE_LOCALE_T 1 +#define HAVE_LONG_INT_64 1 +#define HAVE_LONG_LONG_INT 1 +#define HAVE_MBSTOWCS_L 1 +#define HAVE_MEMMOVE 1 +#define HAVE_MEMORY_H 1 +#define HAVE_MKDTEMP 1 +#define HAVE_NETINET_IN_H 1 +#define HAVE_NETINET_TCP_H 1 +#define HAVE_NET_IF_H 1 +#define HAVE_POLL 1 +#define HAVE_POLL_H 1 +#define HAVE_PTHREAD 1 +#define HAVE_PTHREAD_IS_THREADED_NP 1 +#define HAVE_PTHREAD_PRIO_INHERIT 1 +#define HAVE_PWD_H 1 +#define HAVE_RANDOM 1 +#define HAVE_READLINE_HISTORY_H 1 +#define HAVE_READLINE_READLINE_H 1 +#define HAVE_READLINK 1 +#define HAVE_RINT 1 +#define HAVE_RL_COMPLETION_APPEND_CHARACTER 1 +#define HAVE_RL_COMPLETION_MATCHES 1 +#define HAVE_RL_FILENAME_COMPLETION_FUNCTION 1 +#define HAVE_SETSID 1 +#define HAVE_SHM_OPEN 1 +#define HAVE_SNPRINTF 1 +#define HAVE_SPINLOCKS 1 +#define HAVE_SRANDOM 1 +#define HAVE_SSL_GET_CURRENT_COMPRESSION 1 +#define HAVE_STDINT_H 1 +#define HAVE_STDLIB_H 1 +#define HAVE_STRERROR 1 +#define HAVE_STRERROR_R 1 +#define HAVE_STRINGS_H 1 +#define HAVE_STRING_H 1 +#define HAVE_STRLCAT 1 +#define HAVE_STRLCPY 1 +#define HAVE_STRTOLL 1 +#define HAVE_STRTOULL 1 +#define HAVE_STRUCT_ADDRINFO 1 +#define HAVE_STRUCT_OPTION 1 +#define HAVE_STRUCT_SOCKADDR_SA_LEN 1 +#define HAVE_STRUCT_SOCKADDR_STORAGE 1 +#define HAVE_STRUCT_SOCKADDR_STORAGE_SS_FAMILY 1 +#define HAVE_STRUCT_SOCKADDR_STORAGE_SS_LEN 1 +#define HAVE_STRUCT_TM_TM_ZONE 1 +#define HAVE_SYMLINK 1 +#define HAVE_SYSLOG 1 +#define HAVE_SYS_IOCTL_H 1 +#define HAVE_SYS_IPC_H 1 +#define HAVE_SYS_POLL_H 1 +#define HAVE_SYS_RESOURCE_H 1 +#define HAVE_SYS_SELECT_H 1 +#define HAVE_SYS_SEM_H 1 +#define HAVE_SYS_SHM_H 1 +#define HAVE_SYS_SOCKET_H 1 +#define HAVE_SYS_SOCKIO_H 1 +#define HAVE_SYS_STAT_H 1 +#define HAVE_SYS_TIME_H 1 +#define HAVE_SYS_TYPES_H 1 +#define HAVE_SYS_UCRED_H 1 +#define HAVE_SYS_UN_H 1 +#define HAVE_TERMIOS_H 1 +#define HAVE_TM_ZONE 1 +#define HAVE_TOWLOWER 1 +#define HAVE_TZNAME 1 +#define HAVE_UINTPTR_T 1 +#define HAVE_UNION_SEMUN 1 +#define HAVE_UNISTD_H 1 +#define HAVE_UNIX_SOCKETS 1 +#define HAVE_UNSETENV 1 +#define HAVE_UNSIGNED_LONG_LONG_INT 1 +#define HAVE_UTIME 1 +#define HAVE_UTIMES 1 +#define HAVE_UTIME_H 1 +#define HAVE_VSNPRINTF 1 +#define HAVE_WCHAR_H 1 +#define HAVE_WCSTOMBS 1 +#define HAVE_WCSTOMBS_L 1 +#define HAVE_WCTYPE_H 1 +#define HAVE__BUILTIN_BSWAP32 1 +#define HAVE__BUILTIN_BSWAP64 1 +#define HAVE__BUILTIN_CONSTANT_P 1 +#define HAVE__BUILTIN_TYPES_COMPATIBLE_P 1 +#define HAVE__BUILTIN_UNREACHABLE 1 +#define HAVE__GET_CPUID 1 +#define HAVE__STATIC_ASSERT 1 +#define HAVE__VA_ARGS 1 +#define INT64_MODIFIER "l" +#define LOCALE_T_IN_XLOCALE 1 +#define MAXIMUM_ALIGNOF 8 +#define MEMSET_LOOP_LIMIT 1024 +#define PACKAGE_BUGREPORT "pgsql-bugs@postgresql.org" +#define PACKAGE_NAME "PostgreSQL" +#define PACKAGE_STRING "PostgreSQL 9.6.3" +#define PACKAGE_TARNAME "postgresql" +#define PACKAGE_URL "" +#define PACKAGE_VERSION "9.6.3" +#define PG_INT128_TYPE __int128 +#define PG_INT64_TYPE long int +#define PG_KRB_SRVNAM "postgres" +#define PG_MAJORVERSION "9.6" +#define PG_PRINTF_ATTRIBUTE printf +#define PG_VERSION "9.6.3" +#define PG_VERSION_NUM 90603 +#define PG_VERSION_STR "PostgreSQL 9.6.3 on x86_64-apple-darwin15.6.0, compiled by Apple LLVM version 7.0.2 (clang-700.1.81), 64-bit" +#define RELSEG_SIZE 131072 +#define SIZEOF_LONG 8 +#define SIZEOF_OFF_T 8 +#define SIZEOF_SIZE_T 8 +#define SIZEOF_VOID_P 8 +#define STDC_HEADERS 1 +#define STRERROR_R_INT 1 +#define USE_FLOAT4_BYVAL 1 +#define USE_FLOAT8_BYVAL 1 +#define USE_INTEGER_DATETIMES 1 +#define USE_SSE42_CRC32C_WITH_RUNTIME_CHECK 1 +#define USE_SYSV_SEMAPHORES 1 +#define USE_SYSV_SHARED_MEMORY 1 +#define WCSTOMBS_L_IN_XLOCALE 1 +#if defined AC_APPLE_UNIVERSAL_BUILD +# if defined __BIG_ENDIAN__ +# define WORDS_BIGENDIAN 1 +# endif +#endif +#define XLOG_BLCKSZ 8192 +#define XLOG_SEG_SIZE (16 * 1024 * 1024) diff --git a/ports/libpq/pg_config.linux.h b/ports/libpq/pg_config.linux.h new file mode 100644 index 000000000..d3758bb95 --- /dev/null +++ b/ports/libpq/pg_config.linux.h @@ -0,0 +1,173 @@ +#define ACCEPT_TYPE_ARG1 int +#define ACCEPT_TYPE_ARG2 struct sockaddr * +#define ACCEPT_TYPE_ARG3 socklen_t +#define ACCEPT_TYPE_RETURN int +#define ALIGNOF_DOUBLE 8 +#define ALIGNOF_INT 4 +#define ALIGNOF_LONG 8 +#define ALIGNOF_SHORT 2 +#define BLCKSZ 8192 +#define DEF_PGPORT 5432 +#define DEF_PGPORT_STR "5432" +#define ENABLE_THREAD_SAFETY 1 +#define FLEXIBLE_ARRAY_MEMBER /**/ +#define FLOAT4PASSBYVAL true +#define FLOAT8PASSBYVAL true +#ifdef GETTIMEOFDAY_1ARG +# define gettimeofday(a,b) gettimeofday(a) +#endif +#define HAVE_ATOMICS 1 +#define HAVE_CBRT 1 +#define HAVE_CRYPT 1 +#define HAVE_CRYPT_H 1 +#define HAVE_DECL_FDATASYNC 1 +#define HAVE_DECL_F_FULLFSYNC 0 +#define HAVE_DECL_POSIX_FADVISE 1 +#define HAVE_DECL_SNPRINTF 1 +#define HAVE_DECL_STRLCAT 0 +#define HAVE_DECL_STRLCPY 0 +#define HAVE_DECL_SYS_SIGLIST 1 +#define HAVE_DECL_VSNPRINTF 1 +#define HAVE_DLOPEN 1 +#define HAVE_FDATASYNC 1 +#define HAVE_FSEEKO 1 +#define HAVE_FUNCNAME__FUNC 1 +#define HAVE_GCC__ATOMIC_INT32_CAS 1 +#define HAVE_GCC__ATOMIC_INT64_CAS 1 +#define HAVE_GCC__SYNC_CHAR_TAS 1 +#define HAVE_GCC__SYNC_INT32_CAS 1 +#define HAVE_GCC__SYNC_INT32_TAS 1 +#define HAVE_GCC__SYNC_INT64_CAS 1 +#define HAVE_GETADDRINFO 1 +#define HAVE_GETHOSTBYNAME_R 1 +#define HAVE_GETIFADDRS 1 +#define HAVE_GETOPT 1 +#define HAVE_GETOPT_H 1 +#define HAVE_GETOPT_LONG 1 +#define HAVE_GETPWUID_R 1 +#define HAVE_GETRLIMIT 1 +#define HAVE_GETRUSAGE 1 +#define HAVE_IFADDRS_H 1 +#define HAVE_INET_ATON 1 +#define HAVE_INTPTR_T 1 +#define HAVE_INTTYPES_H 1 +#define HAVE_INT_OPTERR 1 +#define HAVE_INT_TIMEZONE 1 +#define HAVE_IPV6 1 +#define HAVE_ISINF 1 +#define HAVE_LANGINFO_H 1 +#define HAVE_LIBM 1 +#define HAVE_LIBZ 1 +#define HAVE_LOCALE_T 1 +#define HAVE_LONG_INT_64 1 +#define HAVE_LONG_LONG_INT 1 +#define HAVE_MEMMOVE 1 +#define HAVE_MEMORY_H 1 +#define HAVE_MKDTEMP 1 +#define HAVE_NETINET_IN_H 1 +#define HAVE_NETINET_TCP_H 1 +#define HAVE_NET_IF_H 1 +#define HAVE_POLL 1 +#define HAVE_POLL_H 1 +#define HAVE_POSIX_FADVISE 1 +#define HAVE_PTHREAD 1 +#define HAVE_PTHREAD_PRIO_INHERIT 1 +#define HAVE_PWD_H 1 +#define HAVE_RANDOM 1 +#define HAVE_READLINK 1 +#define HAVE_RINT 1 +#define HAVE_SETSID 1 +#define HAVE_SHM_OPEN 1 +#define HAVE_SNPRINTF 1 +#define HAVE_SPINLOCKS 1 +#define HAVE_SRANDOM 1 +#define HAVE_SSL_GET_CURRENT_COMPRESSION 1 +#define HAVE_STDINT_H 1 +#define HAVE_STDLIB_H 1 +#define HAVE_STRERROR 1 +#define HAVE_STRERROR_R 1 +#define HAVE_STRINGS_H 1 +#define HAVE_STRING_H 1 +#define HAVE_STRTOLL 1 +#define HAVE_STRTOULL 1 +#define HAVE_STRUCT_ADDRINFO 1 +#define HAVE_STRUCT_OPTION 1 +#define HAVE_STRUCT_SOCKADDR_STORAGE 1 +#define HAVE_STRUCT_SOCKADDR_STORAGE_SS_FAMILY 1 +#define HAVE_STRUCT_TM_TM_ZONE 1 +#define HAVE_SYMLINK 1 +#define HAVE_SYNC_FILE_RANGE 1 +#define HAVE_SYSLOG 1 +#define HAVE_SYS_EPOLL_H 1 +#define HAVE_SYS_IOCTL_H 1 +#define HAVE_SYS_IPC_H 1 +#define HAVE_SYS_POLL_H 1 +#define HAVE_SYS_RESOURCE_H 1 +#define HAVE_SYS_SELECT_H 1 +#define HAVE_SYS_SEM_H 1 +#define HAVE_SYS_SHM_H 1 +#define HAVE_SYS_SOCKET_H 1 +#define HAVE_SYS_STAT_H 1 +#define HAVE_SYS_TIME_H 1 +#define HAVE_SYS_TYPES_H 1 +#define HAVE_SYS_UN_H 1 +#define HAVE_TERMIOS_H 1 +#define HAVE_TM_ZONE 1 +#define HAVE_TOWLOWER 1 +#define HAVE_TZNAME 1 +#define HAVE_UINTPTR_T 1 +#define HAVE_UNISTD_H 1 +#define HAVE_UNIX_SOCKETS 1 +#define HAVE_UNSETENV 1 +#define HAVE_UNSIGNED_LONG_LONG_INT 1 +#define HAVE_UTIME 1 +#define HAVE_UTIMES 1 +#define HAVE_UTIME_H 1 +#define HAVE_VSNPRINTF 1 +#define HAVE_WCHAR_H 1 +#define HAVE_WCSTOMBS 1 +#define HAVE_WCTYPE_H 1 +#define HAVE__BUILTIN_BSWAP32 1 +#define HAVE__BUILTIN_BSWAP64 1 +#define HAVE__BUILTIN_CONSTANT_P 1 +#define HAVE__BUILTIN_TYPES_COMPATIBLE_P 1 +#define HAVE__BUILTIN_UNREACHABLE 1 +#define HAVE__GET_CPUID 1 +#define HAVE__STATIC_ASSERT 1 +#define HAVE__VA_ARGS 1 +#define INT64_MODIFIER "l" +#define MAXIMUM_ALIGNOF 8 +#define MEMSET_LOOP_LIMIT 1024 +#define PACKAGE_BUGREPORT "pgsql-bugs@postgresql.org" +#define PACKAGE_NAME "PostgreSQL" +#define PACKAGE_STRING "PostgreSQL 9.6.3" +#define PACKAGE_TARNAME "postgresql" +#define PACKAGE_URL "" +#define PACKAGE_VERSION "9.6.3" +#define PG_INT128_TYPE __int128 +#define PG_INT64_TYPE long int +#define PG_KRB_SRVNAM "postgres" +#define PG_MAJORVERSION "9.6" +#define PG_PRINTF_ATTRIBUTE gnu_printf +#define PG_VERSION "9.6.3" +#define PG_VERSION_NUM 90603 +#define PG_VERSION_STR "PostgreSQL 9.6.3 on x86_64-pc-linux-gnu, compiled by gcc (Ubuntu 5.4.1-2ubuntu1~16.04) 5.4.1 20160904, 64-bit" +#define RELSEG_SIZE 131072 +#define SIZEOF_LONG 8 +#define SIZEOF_OFF_T 8 +#define SIZEOF_SIZE_T 8 +#define SIZEOF_VOID_P 8 +#define STDC_HEADERS 1 +#define USE_FLOAT4_BYVAL 1 +#define USE_FLOAT8_BYVAL 1 +#define USE_INTEGER_DATETIMES 1 +#define USE_SSE42_CRC32C_WITH_RUNTIME_CHECK 1 +#define USE_SYSV_SEMAPHORES 1 +#define USE_SYSV_SHARED_MEMORY 1 +#if defined AC_APPLE_UNIVERSAL_BUILD +# if defined __BIG_ENDIAN__ +# define WORDS_BIGENDIAN 1 +# endif +#endif +#define XLOG_BLCKSZ 8192 +#define XLOG_SEG_SIZE (16 * 1024 * 1024) diff --git a/ports/libpq/portfile.cmake b/ports/libpq/portfile.cmake index 2d14204fa..7b23aed32 100644 --- a/ports/libpq/portfile.cmake +++ b/ports/libpq/portfile.cmake @@ -12,7 +12,10 @@ file(COPY ${CMAKE_CURRENT_LIST_DIR}/CMakeLists.txt DESTINATION ${SOURCE_PATH}) vcpkg_configure_cmake( SOURCE_PATH ${SOURCE_PATH} PREFER_NINJA - OPTIONS_DEBUG -DINSTALL_INCLUDES=OFF + OPTIONS + "-DPORT_DIR=${CMAKE_CURRENT_LIST_DIR}" + OPTIONS_DEBUG + -DINSTALL_INCLUDES=OFF ) vcpkg_install_cmake() diff --git a/ports/qt5-base/configure_qt.cmake b/ports/qt5-base/configure_qt.cmake index 1d4f1e570..356361a9b 100644 --- a/ports/qt5-base/configure_qt.cmake +++ b/ports/qt5-base/configure_qt.cmake @@ -1,12 +1,8 @@ function(configure_qt) cmake_parse_arguments(_csc "" "SOURCE_PATH;PLATFORM" "OPTIONS;OPTIONS_DEBUG;OPTIONS_RELEASE" ${ARGN}) - if (_csc_PLATFORM) - set(PLATFORM ${_csc_PLATFORM}) - elseif(VCPKG_PLATFORM_TOOLSET MATCHES "v140") - set(PLATFORM "win32-msvc2015") - elseif(VCPKG_PLATFORM_TOOLSET MATCHES "v141") - set(PLATFORM "win32-msvc2017") + if(NOT _csc_PLATFORM) + message(FATAL_ERROR "configure_qt requires a PLATFORM argument.") endif() vcpkg_find_acquire_program(PERL) @@ -15,17 +11,24 @@ function(configure_qt) file(REMOVE_RECURSE ${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-rel ${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-dbg) set(ENV{PATH} "$ENV{PATH};${PERL_EXE_PATH}") - if(DEFINED VCPKG_CRT_LINKAGE AND VCPKG_CRT_LINKAGE STREQUAL static) - list(APPEND _csc_OPTIONS - "-static" - "-static-runtime" - ) + if(VCPKG_LIBRARY_LINKAGE STREQUAL static) + list(APPEND _csc_OPTIONS "-static") + endif() + + if(VCPKG_CRT_LINKAGE STREQUAL "static") + list(APPEND _csc_OPTIONS "-static-runtime") + endif() + + if(CMAKE_HOST_WIN32) + set(CONFIGURE_BAT "configure.bat") + else() + set(CONFIGURE_BAT "configure") endif() message(STATUS "Configuring ${TARGET_TRIPLET}-dbg") file(MAKE_DIRECTORY ${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-dbg) vcpkg_execute_required_process( - COMMAND "${_csc_SOURCE_PATH}/configure.bat" ${_csc_OPTIONS} ${_csc_OPTIONS_DEBUG} + COMMAND "${_csc_SOURCE_PATH}/${CONFIGURE_BAT}" ${_csc_OPTIONS} ${_csc_OPTIONS_DEBUG} -debug -prefix ${CURRENT_PACKAGES_DIR}/debug -hostbindir ${CURRENT_PACKAGES_DIR}/debug/tools/qt5 @@ -36,7 +39,7 @@ function(configure_qt) -headerdir ${CURRENT_PACKAGES_DIR}/include -I ${CURRENT_INSTALLED_DIR}/include -L ${CURRENT_INSTALLED_DIR}/debug/lib - -platform ${PLATFORM} + -platform ${_csc_PLATFORM} WORKING_DIRECTORY ${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-dbg LOGNAME config-${TARGET_TRIPLET}-dbg ) @@ -45,7 +48,7 @@ function(configure_qt) message(STATUS "Configuring ${TARGET_TRIPLET}-rel") file(MAKE_DIRECTORY ${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-rel) vcpkg_execute_required_process( - COMMAND "${_csc_SOURCE_PATH}/configure.bat" ${_csc_OPTIONS} ${_csc_OPTIONS_RELEASE} + COMMAND "${_csc_SOURCE_PATH}/${CONFIGURE_BAT}" ${_csc_OPTIONS} ${_csc_OPTIONS_RELEASE} -release -prefix ${CURRENT_PACKAGES_DIR} -hostbindir ${CURRENT_PACKAGES_DIR}/tools/qt5 @@ -55,7 +58,7 @@ function(configure_qt) -qmldir ${CURRENT_PACKAGES_DIR}/qml -I ${CURRENT_INSTALLED_DIR}/include -L ${CURRENT_INSTALLED_DIR}/lib - -platform ${PLATFORM} + -platform ${_csc_PLATFORM} WORKING_DIRECTORY ${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-rel LOGNAME config-${TARGET_TRIPLET}-rel ) diff --git a/ports/qt5-base/install_qt.cmake b/ports/qt5-base/install_qt.cmake index 37528e4e6..482802f38 100644 --- a/ports/qt5-base/install_qt.cmake +++ b/ports/qt5-base/install_qt.cmake @@ -2,12 +2,27 @@ function(install_qt) cmake_parse_arguments(_bc "DISABLE_PARALLEL" "" "" ${ARGN}) if (_bc_DISABLE_PARALLEL) - set(JOBS "1") + set(NUMBER_OF_PROCESSORS "1") else() - set(JOBS "$ENV{NUMBER_OF_PROCESSORS}") + if(DEFINED ENV{NUMBER_OF_PROCESSORS}) + set(NUMBER_OF_PROCESSORS $ENV{NUMBER_OF_PROCESSORS}) + else() + execute_process( + COMMAND nproc + OUTPUT_VARIABLE NUMBER_OF_PROCESSORS + ) + string(REPLACE "\n" "" NUMBER_OF_PROCESSORS "${NUMBER_OF_PROCESSORS}") + string(REPLACE " " "" NUMBER_OF_PROCESSORS "${NUMBER_OF_PROCESSORS}") + endif() endif() - vcpkg_find_acquire_program(JOM) + if(CMAKE_HOST_WIN32) + vcpkg_find_acquire_program(JOM) + set(INVOKE "${JOM}" /J ${NUMBER_OF_PROCESSORS}) + else() + find_program(MAKE make) + set(INVOKE "${MAKE}" -j${NUMBER_OF_PROCESSORS}) + endif() vcpkg_find_acquire_program(PYTHON3) get_filename_component(PYTHON3_EXE_PATH ${PYTHON3} DIRECTORY) set(ENV{PATH} "${PYTHON3_EXE_PATH};$ENV{PATH}") @@ -16,12 +31,12 @@ function(install_qt) message(STATUS "Package ${TARGET_TRIPLET}-dbg") set(ENV{PATH} "${CURRENT_INSTALLED_DIR}/debug/bin;${_path}") vcpkg_execute_required_process( - COMMAND ${JOM} /J ${JOBS} + COMMAND ${INVOKE} WORKING_DIRECTORY ${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-dbg LOGNAME build-${TARGET_TRIPLET}-dbg ) vcpkg_execute_required_process( - COMMAND ${JOM} /J ${JOBS} install + COMMAND ${INVOKE} install WORKING_DIRECTORY ${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-dbg LOGNAME package-${TARGET_TRIPLET}-dbg ) @@ -30,12 +45,12 @@ function(install_qt) message(STATUS "Package ${TARGET_TRIPLET}-rel") set(ENV{PATH} "${CURRENT_INSTALLED_DIR}/bin;${_path}") vcpkg_execute_required_process( - COMMAND ${JOM} /J ${JOBS} + COMMAND ${INVOKE} WORKING_DIRECTORY ${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-rel LOGNAME build-${TARGET_TRIPLET}-rel ) vcpkg_execute_required_process( - COMMAND ${JOM} /J ${JOBS} install + COMMAND ${INVOKE} install WORKING_DIRECTORY ${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-rel LOGNAME package-${TARGET_TRIPLET}-rel ) diff --git a/ports/qt5-base/portfile.cmake b/ports/qt5-base/portfile.cmake index 9e9d7779a..39498b4a3 100644 --- a/ports/qt5-base/portfile.cmake +++ b/ports/qt5-base/portfile.cmake @@ -1,13 +1,13 @@ include(vcpkg_common_functions) string(LENGTH "${CURRENT_BUILDTREES_DIR}" BUILDTREES_PATH_LENGTH) -if(BUILDTREES_PATH_LENGTH GREATER 37) +if(BUILDTREES_PATH_LENGTH GREATER 37 AND CMAKE_HOST_WIN32) message(WARNING "Qt5's buildsystem uses very long paths and may fail on your system.\n" "We recommend moving vcpkg to a short path such as 'C:\\src\\vcpkg' or using the subst command." ) endif() -if(VCPKG_LIBRARY_LINKAGE STREQUAL static) +if((NOT VCPKG_CMAKE_SYSTEM_NAME OR VCPKG_CMAKE_SYSTEM_NAME STREQUAL "WindowsStore") AND VCPKG_LIBRARY_LINKAGE STREQUAL static) message(FATAL_ERROR "Qt5 doesn't currently support static builds. Please use a dynamic triplet instead.") endif() @@ -30,58 +30,108 @@ if (EXISTS ${CURRENT_BUILDTREES_DIR}/src/${ARCHIVE_NAME}) file(RENAME ${CURRENT_BUILDTREES_DIR}/src/${ARCHIVE_NAME} ${CURRENT_BUILDTREES_DIR}/src/${SRCDIR_NAME}) endif() +# Remove vendored dependencies to ensure they are not picked up by the build +foreach(DEPENDENCY freetype zlib harfbuzzng libjpeg libpng double-conversion) + if(EXISTS ${SOURCE_PATH}/src/3rdparty/${DEPENDENCY}) + file(REMOVE_RECURSE ${SOURCE_PATH}/src/3rdparty/${DEPENDENCY}) + endif() +endforeach() + +file(REMOVE_RECURSE ${SOURCE_PATH}/include/QtZlib) + vcpkg_apply_patches( SOURCE_PATH ${SOURCE_PATH} PATCHES - "${CMAKE_CURRENT_LIST_DIR}/fix-system-pcre2.patch" +# "${CMAKE_CURRENT_LIST_DIR}/fix-system-pcre2.patch" "${CMAKE_CURRENT_LIST_DIR}/fix-system-freetype.patch" ) # This fixes issues on machines with default codepages that are not ASCII compatible, such as some CJK encodings set(ENV{_CL_} "/utf-8") -configure_qt( - SOURCE_PATH ${SOURCE_PATH} - OPTIONS - -confirm-license - -opensource - -system-zlib - -system-libjpeg - -system-libpng - -system-freetype - -system-pcre - -system-harfbuzz - -system-doubleconversion - -system-sqlite - -no-fontconfig - -sql-sqlite - -sql-psql - -nomake examples -nomake tests - -opengl desktop # other options are "-no-opengl" and "-opengl angle" - -mp - LIBJPEG_LIBS="-ljpeg" - OPTIONS_RELEASE - ZLIB_LIBS="-lzlib" - LIBPNG_LIBS="-llibpng16" - FREETYPE_LIBS="-lfreetype" - OPTIONS_DEBUG - ZLIB_LIBS="-lzlibd" - LIBPNG_LIBS="-llibpng16d" - PSQL_LIBS="-llibpqd" - FREETYPE_LIBS="-lfreetyped" +set(CORE_OPTIONS + -confirm-license + -opensource + -system-zlib + -system-libjpeg + -system-libpng + -system-freetype + -system-pcre + -system-harfbuzz + -system-doubleconversion + -no-fontconfig + -nomake examples -nomake tests ) +if(NOT VCPKG_CMAKE_SYSTEM_NAME OR VCPKG_CMAKE_SYSTEM_NAME STREQUAL "WindowsStore") + if(VCPKG_PLATFORM_TOOLSET MATCHES "v140") + set(PLATFORM "win32-msvc2015") + elseif(VCPKG_PLATFORM_TOOLSET MATCHES "v141") + set(PLATFORM "win32-msvc2017") + endif() + configure_qt( + SOURCE_PATH ${SOURCE_PATH} + PLATFORM ${PLATFORM} + OPTIONS + ${CORE_OPTIONS} + -sql-sqlite + -sql-psql + -system-sqlite + -mp + -opengl desktop # other options are "-no-opengl", "-opengl angle", and "-opengl desktop" + LIBJPEG_LIBS="-ljpeg" + OPTIONS_RELEASE + ZLIB_LIBS="-lzlib" + LIBPNG_LIBS="-llibpng16" + FREETYPE_LIBS="-lfreetype" + OPTIONS_DEBUG + ZLIB_LIBS="-lzlibd" + LIBPNG_LIBS="-llibpng16d" + PSQL_LIBS="-llibpqd" + FREETYPE_LIBS="-lfreetyped" + ) +elseif(VCPKG_CMAKE_SYSTEM_NAME STREQUAL "Linux") + configure_qt( + SOURCE_PATH ${SOURCE_PATH} + PLATFORM "linux-g++" + OPTIONS + ${CORE_OPTIONS} + -no-sqlite + -no-opengl # other options are "-no-opengl", "-opengl angle", and "-opengl desktop" + LIBJPEG_LIBS="-ljpeg" + OPTIONS_RELEASE + "QMAKE_LIBS_PRIVATE+=${CURRENT_INSTALLED_DIR}/lib/libpng16.a" + "QMAKE_LIBS_PRIVATE+=${CURRENT_INSTALLED_DIR}/lib/libz.a" + "ZLIB_LIBS=${CURRENT_INSTALLED_DIR}/lib/libz.a" + "LIBPNG_LIBS=${CURRENT_INSTALLED_DIR}/lib/libpng16.a" + "FREETYPE_LIBS=${CURRENT_INSTALLED_DIR}/lib/libfreetype.a" + "PSQL_LIBS=${CURRENT_INSTALLED_DIR}/lib/libpq.a ${CURRENT_INSTALLED_DIR}/lib/libssl.a ${CURRENT_INSTALLED_DIR}/lib/libcrypto.a" + OPTIONS_DEBUG + "QMAKE_LIBS_PRIVATE+=${CURRENT_INSTALLED_DIR}/debug/lib/libpng16d.a" + "QMAKE_LIBS_PRIVATE+=${CURRENT_INSTALLED_DIR}/debug/lib/libz.a" + "ZLIB_LIBS=${CURRENT_INSTALLED_DIR}/debug/lib/libz.a" + "LIBPNG_LIBS=${CURRENT_INSTALLED_DIR}/debug/lib/libpng16d.a" + "FREETYPE_LIBS=${CURRENT_INSTALLED_DIR}/debug/lib/libfreetyped.a" + "PSQL_LIBS=${CURRENT_INSTALLED_DIR}/debug/lib/libpqd.a ${CURRENT_INSTALLED_DIR}/debug/lib/libssl.a ${CURRENT_INSTALLED_DIR}/debug/lib/libcrypto.a" + ) +endif() + install_qt() file(RENAME ${CURRENT_PACKAGES_DIR}/lib/cmake ${CURRENT_PACKAGES_DIR}/share/cmake) file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/lib/cmake) -file(GLOB BINARY_TOOLS "${CURRENT_PACKAGES_DIR}/bin/*.exe") +file(GLOB BINARY_TOOLS "${CURRENT_PACKAGES_DIR}/bin/*") +list(FILTER BINARY_TOOLS EXCLUDE REGEX "\\.dll\$") file(INSTALL ${BINARY_TOOLS} DESTINATION ${CURRENT_PACKAGES_DIR}/tools/qt5) file(REMOVE ${BINARY_TOOLS}) -file(GLOB BINARY_TOOLS "${CURRENT_PACKAGES_DIR}/debug/bin/*.exe") +file(GLOB BINARY_TOOLS "${CURRENT_PACKAGES_DIR}/debug/bin/*") +list(FILTER BINARY_TOOLS EXCLUDE REGEX "\\.dll\$") file(REMOVE ${BINARY_TOOLS}) file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/tools") +if(VCPKG_LIBRARY_LINKAGE STREQUAL "static") + file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/bin" "${CURRENT_PACKAGES_DIR}/debug/bin") +endif() file(COPY ${CMAKE_CURRENT_LIST_DIR}/qt_debug.conf ${CMAKE_CURRENT_LIST_DIR}/qt_release.conf DESTINATION ${CURRENT_PACKAGES_DIR}/tools/qt5) @@ -94,25 +144,27 @@ vcpkg_execute_required_process( vcpkg_copy_tool_dependencies(${CURRENT_PACKAGES_DIR}/tools/${PORT}) vcpkg_copy_tool_dependencies(${CURRENT_PACKAGES_DIR}/tools/qt5) -#--------------------------------------------------------------------------- -# qtmain(d) vs. Qt5AxServer(d) -#--------------------------------------------------------------------------- -# Qt applications have to either link to qtmain(d) or to Qt5AxServer(d), -# never both. See http://doc.qt.io/qt-5/activeqt-server.html for more info. -# -# Create manual-link folders: -file(MAKE_DIRECTORY ${CURRENT_PACKAGES_DIR}/lib/manual-link) -file(MAKE_DIRECTORY ${CURRENT_PACKAGES_DIR}/debug/lib/manual-link) -# -# Either have users explicitly link against qtmain.lib, qtmaind.lib: -file(COPY ${CURRENT_PACKAGES_DIR}/lib/qtmain.lib DESTINATION ${CURRENT_PACKAGES_DIR}/lib/manual-link) -file(COPY ${CURRENT_PACKAGES_DIR}/lib/qtmain.prl DESTINATION ${CURRENT_PACKAGES_DIR}/lib/manual-link) -file(REMOVE ${CURRENT_PACKAGES_DIR}/lib/qtmain.lib) -file(REMOVE ${CURRENT_PACKAGES_DIR}/lib/qtmain.prl) -file(COPY ${CURRENT_PACKAGES_DIR}/debug/lib/qtmaind.lib DESTINATION ${CURRENT_PACKAGES_DIR}/debug/lib/manual-link) -file(COPY ${CURRENT_PACKAGES_DIR}/debug/lib/qtmaind.prl DESTINATION ${CURRENT_PACKAGES_DIR}/debug/lib/manual-link) -file(REMOVE ${CURRENT_PACKAGES_DIR}/debug/lib/qtmaind.lib) -file(REMOVE ${CURRENT_PACKAGES_DIR}/debug/lib/qtmaind.prl) +if(EXISTS ${CURRENT_PACKAGES_DIR}/lib/qtmain.lib) + #--------------------------------------------------------------------------- + # qtmain(d) vs. Qt5AxServer(d) + #--------------------------------------------------------------------------- + # Qt applications have to either link to qtmain(d) or to Qt5AxServer(d), + # never both. See http://doc.qt.io/qt-5/activeqt-server.html for more info. + # + # Create manual-link folders: + file(MAKE_DIRECTORY ${CURRENT_PACKAGES_DIR}/lib/manual-link) + file(MAKE_DIRECTORY ${CURRENT_PACKAGES_DIR}/debug/lib/manual-link) + # + # Either have users explicitly link against qtmain.lib, qtmaind.lib: + file(COPY ${CURRENT_PACKAGES_DIR}/lib/qtmain.lib DESTINATION ${CURRENT_PACKAGES_DIR}/lib/manual-link) + file(COPY ${CURRENT_PACKAGES_DIR}/lib/qtmain.prl DESTINATION ${CURRENT_PACKAGES_DIR}/lib/manual-link) + file(REMOVE ${CURRENT_PACKAGES_DIR}/lib/qtmain.lib) + file(REMOVE ${CURRENT_PACKAGES_DIR}/lib/qtmain.prl) + file(COPY ${CURRENT_PACKAGES_DIR}/debug/lib/qtmaind.lib DESTINATION ${CURRENT_PACKAGES_DIR}/debug/lib/manual-link) + file(COPY ${CURRENT_PACKAGES_DIR}/debug/lib/qtmaind.prl DESTINATION ${CURRENT_PACKAGES_DIR}/debug/lib/manual-link) + file(REMOVE ${CURRENT_PACKAGES_DIR}/debug/lib/qtmaind.lib) + file(REMOVE ${CURRENT_PACKAGES_DIR}/debug/lib/qtmaind.prl) +endif() file(COPY ${CMAKE_CURRENT_LIST_DIR}/qtdeploy.ps1 DESTINATION ${CURRENT_PACKAGES_DIR}/plugins) file(COPY ${CMAKE_CURRENT_LIST_DIR}/qtdeploy.ps1 DESTINATION ${CURRENT_PACKAGES_DIR}/debug/plugins) -- cgit v1.2.3 From 8f4ce4fab638b70ff890f0e7c09b92f866b1493d Mon Sep 17 00:00:00 2001 From: Robert Schumacher Date: Sat, 24 Mar 2018 09:33:40 -0700 Subject: [magnum-extras] Fix empty build --- ports/magnum-extras/portfile.cmake | 12 ++++-------- 1 file changed, 4 insertions(+), 8 deletions(-) diff --git a/ports/magnum-extras/portfile.cmake b/ports/magnum-extras/portfile.cmake index 402c1aa1f..d97508497 100644 --- a/ports/magnum-extras/portfile.cmake +++ b/ports/magnum-extras/portfile.cmake @@ -7,11 +7,7 @@ vcpkg_from_github( HEAD_REF master ) -if(VCPKG_LIBRARY_LINKAGE STREQUAL static) - set(BUILD_STATIC 1) -else() - set(BUILD_STATIC 0) -endif() +string(COMPARE EQUAL "${VCPKG_LIBRARY_LINKAGE}" "static" BUILD_STATIC) # Handle features set(_COMPONENT_FLAGS "") @@ -48,14 +44,14 @@ if("ui" IN_LIST FEATURES) message(WARNING "It is recommended to install one of magnum-plugins[freetypefont,harfbuzzfont,stbtruetypefont] to have the UI library working out of the box") endif() - # Debug includes and share are the same as release file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include - ${CURRENT_PACKAGES_DIR}/debug/share) + ${CURRENT_PACKAGES_DIR}/debug/share +) # Clean up empty directories -if("${FEATURES}" STREQUAL "") +if("${FEATURES}" STREQUAL "core") file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/bin ${CURRENT_PACKAGES_DIR}/lib -- cgit v1.2.3 From e47f165146535e3c6cc21d62a3b7832ce029e02b Mon Sep 17 00:00:00 2001 From: Robert Schumacher Date: Sat, 24 Mar 2018 09:35:49 -0700 Subject: [magnum-integration] Fix empty build --- ports/magnum-integration/portfile.cmake | 14 ++++++-------- 1 file changed, 6 insertions(+), 8 deletions(-) diff --git a/ports/magnum-integration/portfile.cmake b/ports/magnum-integration/portfile.cmake index 8ef1899fd..da9c393b7 100644 --- a/ports/magnum-integration/portfile.cmake +++ b/ports/magnum-integration/portfile.cmake @@ -7,11 +7,7 @@ vcpkg_from_github( HEAD_REF master ) -if(VCPKG_LIBRARY_LINKAGE STREQUAL static) - set(BUILD_STATIC 1) -else() - set(BUILD_STATIC 0) -endif() +string(COMPARE EQUAL "${VCPKG_LIBRARY_LINKAGE}" "static" BUILD_STATIC) # Handle features set(_COMPONENT_FLAGS "") @@ -44,14 +40,16 @@ vcpkg_install_cmake() # Debug includes and share are the same as release file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include - ${CURRENT_PACKAGES_DIR}/debug/share) + ${CURRENT_PACKAGES_DIR}/debug/share +) # Clean up empty directories -if(NOT FEATURES) +if("${FEATURES}" STREQUAL "core") file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/bin ${CURRENT_PACKAGES_DIR}/lib - ${CURRENT_PACKAGES_DIR}/debug) + ${CURRENT_PACKAGES_DIR}/debug + ) set(VCPKG_POLICY_EMPTY_INCLUDE_FOLDER enabled) endif() -- cgit v1.2.3 From 5ba45ffd9bb450da020e3694f38c78387d5270ec Mon Sep 17 00:00:00 2001 From: Robert Schumacher Date: Sat, 24 Mar 2018 13:26:48 -0700 Subject: [shapelib] Add option to disable tests --- ports/shapelib/CONTROL | 2 +- ports/shapelib/option-build-test.patch | 13 +++++++++++++ ports/shapelib/portfile.cmake | 25 ++++++++++++++++++------- 3 files changed, 32 insertions(+), 8 deletions(-) create mode 100644 ports/shapelib/option-build-test.patch diff --git a/ports/shapelib/CONTROL b/ports/shapelib/CONTROL index 7d37eb8aa..57fbecb53 100644 --- a/ports/shapelib/CONTROL +++ b/ports/shapelib/CONTROL @@ -1,3 +1,3 @@ Source: shapelib -Version: 1.4.1 +Version: 1.4.1-1 Description: Shapefile C Library is simple C API for reading and writing ESRI Shapefiles diff --git a/ports/shapelib/option-build-test.patch b/ports/shapelib/option-build-test.patch new file mode 100644 index 000000000..c91410f38 --- /dev/null +++ b/ports/shapelib/option-build-test.patch @@ -0,0 +1,13 @@ +diff --git a/CMakeLists.txt b/CMakeLists.txt +index c3ef935..845ec06 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -148,7 +148,7 @@ set(executables + find_program(BASH_EXECUTABLE bash) + find_program(SED_EXECUTABLE sed) + if(BASH_EXECUTABLE AND SED_EXECUTABLE) +- set(BUILD_TEST ON) ++ option(BUILD_TEST "" ON) + else(BASH_EXECUTABLE AND SED_EXECUTABLE) + message(STATUS "WARNING: sed or bash not available so disabling testing") + endif(BASH_EXECUTABLE AND SED_EXECUTABLE) diff --git a/ports/shapelib/portfile.cmake b/ports/shapelib/portfile.cmake index 0f2787689..eed76736f 100644 --- a/ports/shapelib/portfile.cmake +++ b/ports/shapelib/portfile.cmake @@ -11,10 +11,17 @@ vcpkg_download_distfile(ARCHIVE ) vcpkg_extract_source_archive(${ARCHIVE}) +vcpkg_apply_patches( + SOURCE_PATH ${SOURCE_PATH} + PATCHES ${CMAKE_CURRENT_LIST_DIR}/option-build-test.patch +) + vcpkg_configure_cmake( SOURCE_PATH ${SOURCE_PATH} PREFER_NINJA - OPTIONS -DBUILD_TEST=OFF) + OPTIONS + -DBUILD_TEST=OFF +) vcpkg_install_cmake() @@ -22,15 +29,19 @@ file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include) file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/share) file(GLOB EXES "${CURRENT_PACKAGES_DIR}/bin/*.exe") -file(COPY ${EXES} DESTINATION ${CURRENT_PACKAGES_DIR}/tools/shapelib) -file(REMOVE ${EXES}) +if(EXES) + file(COPY ${EXES} DESTINATION ${CURRENT_PACKAGES_DIR}/tools/shapelib) + file(REMOVE ${EXES}) +endif() file(GLOB DEBUG_EXES "${CURRENT_PACKAGES_DIR}/debug/bin/*.exe") -file(REMOVE ${DEBUG_EXES}) +if(DEBUG_EXES) + file(REMOVE ${DEBUG_EXES}) +endif() -if(VCPKG_LIBRARY_LINKAGE STREQUAL static) - file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/bin) - file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/bin) +if(VCPKG_LIBRARY_LINKAGE STREQUAL "static") + file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/bin) + file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/bin) endif() file(COPY ${SOURCE_PATH}/COPYING DESTINATION ${CURRENT_PACKAGES_DIR}/share/shapelib) -- cgit v1.2.3 From e8d1666d9c88ff1ccce3b388ea09f500735f17b7 Mon Sep 17 00:00:00 2001 From: Robert Schumacher Date: Sat, 24 Mar 2018 13:08:06 -0700 Subject: [aws-sdk-cpp] Update and fix cmake files --- ports/aws-sdk-cpp/CONTROL | 421 ++++++++++++++++++++++- ports/aws-sdk-cpp/CONTROL.in | 4 + ports/aws-sdk-cpp/compute_build_only.cmake | 418 ++++++++++++++++++++++ ports/aws-sdk-cpp/disable_warning_as_error.patch | 13 - ports/aws-sdk-cpp/drop_git.patch | 13 - ports/aws-sdk-cpp/generateFeatures.ps1 | 50 +++ ports/aws-sdk-cpp/portfile.cmake | 100 +++--- scripts/cmake/vcpkg_fixup_cmake_targets.cmake | 22 +- 8 files changed, 952 insertions(+), 89 deletions(-) create mode 100644 ports/aws-sdk-cpp/CONTROL.in create mode 100644 ports/aws-sdk-cpp/compute_build_only.cmake delete mode 100644 ports/aws-sdk-cpp/disable_warning_as_error.patch delete mode 100644 ports/aws-sdk-cpp/drop_git.patch create mode 100644 ports/aws-sdk-cpp/generateFeatures.ps1 diff --git a/ports/aws-sdk-cpp/CONTROL b/ports/aws-sdk-cpp/CONTROL index 3c784db00..09b1c1a7f 100644 --- a/ports/aws-sdk-cpp/CONTROL +++ b/ports/aws-sdk-cpp/CONTROL @@ -1,3 +1,422 @@ Source: aws-sdk-cpp -Version: 1.3.58 +Version: 1.4.21 Description: AWS SDK for C++ +Default-Features: dynamodb, ec2, kms, rds, s3, sns, sqs +# Automatically generated by generateFeatures.ps1 + +Feature: access-management +Description: C++ SDK for the AWS access-management service + +Feature: acm +Description: C++ SDK for the AWS acm service + +Feature: alexaforbusiness +Description: C++ SDK for the AWS alexaforbusiness service + +Feature: apigateway +Description: C++ SDK for the AWS apigateway service + +Feature: application-autoscaling +Description: C++ SDK for the AWS application-autoscaling service + +Feature: appstream +Description: C++ SDK for the AWS appstream service + +Feature: appsync +Description: C++ SDK for the AWS appsync service + +Feature: athena +Description: C++ SDK for the AWS athena service + +Feature: autoscaling +Description: C++ SDK for the AWS autoscaling service + +Feature: autoscaling-plans +Description: C++ SDK for the AWS autoscaling-plans service + +Feature: AWSMigrationHub +Description: C++ SDK for the AWS AWSMigrationHub service + +Feature: batch +Description: C++ SDK for the AWS batch service + +Feature: budgets +Description: C++ SDK for the AWS budgets service + +Feature: ce +Description: C++ SDK for the AWS ce service + +Feature: cloud9 +Description: C++ SDK for the AWS cloud9 service + +Feature: clouddirectory +Description: C++ SDK for the AWS clouddirectory service + +Feature: cloudformation +Description: C++ SDK for the AWS cloudformation service + +Feature: cloudfront +Description: C++ SDK for the AWS cloudfront service + +Feature: cloudhsm +Description: C++ SDK for the AWS cloudhsm service + +Feature: cloudhsmv2 +Description: C++ SDK for the AWS cloudhsmv2 service + +Feature: cloudsearch +Description: C++ SDK for the AWS cloudsearch service + +Feature: cloudsearchdomain +Description: C++ SDK for the AWS cloudsearchdomain service + +Feature: cloudtrail +Description: C++ SDK for the AWS cloudtrail service + +Feature: codebuild +Description: C++ SDK for the AWS codebuild service + +Feature: codecommit +Description: C++ SDK for the AWS codecommit service + +Feature: codedeploy +Description: C++ SDK for the AWS codedeploy service + +Feature: codepipeline +Description: C++ SDK for the AWS codepipeline service + +Feature: codestar +Description: C++ SDK for the AWS codestar service + +Feature: cognito-identity +Description: C++ SDK for the AWS cognito-identity service + +Feature: cognito-idp +Description: C++ SDK for the AWS cognito-idp service + +Feature: cognito-sync +Description: C++ SDK for the AWS cognito-sync service + +Feature: comprehend +Description: C++ SDK for the AWS comprehend service + +Feature: config +Description: C++ SDK for the AWS config service + +Feature: cur +Description: C++ SDK for the AWS cur service + +Feature: datapipeline +Description: C++ SDK for the AWS datapipeline service + +Feature: dax +Description: C++ SDK for the AWS dax service + +Feature: devicefarm +Description: C++ SDK for the AWS devicefarm service + +Feature: directconnect +Description: C++ SDK for the AWS directconnect service + +Feature: discovery +Description: C++ SDK for the AWS discovery service + +Feature: dms +Description: C++ SDK for the AWS dms service + +Feature: ds +Description: C++ SDK for the AWS ds service + +Feature: dynamodb +Description: C++ SDK for the AWS dynamodb service + +Feature: dynamodbstreams +Description: C++ SDK for the AWS dynamodbstreams service + +Feature: ec2 +Description: C++ SDK for the AWS ec2 service + +Feature: ecr +Description: C++ SDK for the AWS ecr service + +Feature: ecs +Description: C++ SDK for the AWS ecs service + +Feature: elasticache +Description: C++ SDK for the AWS elasticache service + +Feature: elasticbeanstalk +Description: C++ SDK for the AWS elasticbeanstalk service + +Feature: elasticfilesystem +Description: C++ SDK for the AWS elasticfilesystem service + +Feature: elasticloadbalancing +Description: C++ SDK for the AWS elasticloadbalancing service + +Feature: elasticloadbalancingv2 +Description: C++ SDK for the AWS elasticloadbalancingv2 service + +Feature: elasticmapreduce +Description: C++ SDK for the AWS elasticmapreduce service + +Feature: elastictranscoder +Description: C++ SDK for the AWS elastictranscoder service + +Feature: email +Description: C++ SDK for the AWS email service + +Feature: es +Description: C++ SDK for the AWS es service + +Feature: events +Description: C++ SDK for the AWS events service + +Feature: firehose +Description: C++ SDK for the AWS firehose service + +Feature: gamelift +Description: C++ SDK for the AWS gamelift service + +Feature: glacier +Description: C++ SDK for the AWS glacier service + +Feature: glue +Description: C++ SDK for the AWS glue service + +Feature: greengrass +Description: C++ SDK for the AWS greengrass service + +Feature: guardduty +Description: C++ SDK for the AWS guardduty service + +Feature: health +Description: C++ SDK for the AWS health service + +Feature: iam +Description: C++ SDK for the AWS iam service + +Feature: identity-management +Description: C++ SDK for the AWS identity-management service + +Feature: importexport +Description: C++ SDK for the AWS importexport service + +Feature: inspector +Description: C++ SDK for the AWS inspector service + +Feature: iot +Description: C++ SDK for the AWS iot service + +Feature: iot-data +Description: C++ SDK for the AWS iot-data service + +Feature: iot-jobs-data +Description: C++ SDK for the AWS iot-jobs-data service + +Feature: kinesis +Description: C++ SDK for the AWS kinesis service + +Feature: kinesis-video-archived-media +Description: C++ SDK for the AWS kinesis-video-archived-media service + +Feature: kinesis-video-media +Description: C++ SDK for the AWS kinesis-video-media service + +Feature: kinesisanalytics +Description: C++ SDK for the AWS kinesisanalytics service + +Feature: kinesisvideo +Description: C++ SDK for the AWS kinesisvideo service + +Feature: kms +Description: C++ SDK for the AWS kms service + +Feature: lambda +Description: C++ SDK for the AWS lambda service + +Feature: lex +Description: C++ SDK for the AWS lex service + +Feature: lex-models +Description: C++ SDK for the AWS lex-models service + +Feature: lightsail +Description: C++ SDK for the AWS lightsail service + +Feature: logs +Description: C++ SDK for the AWS logs service + +Feature: machinelearning +Description: C++ SDK for the AWS machinelearning service + +Feature: marketplace-entitlement +Description: C++ SDK for the AWS marketplace-entitlement service + +Feature: marketplacecommerceanalytics +Description: C++ SDK for the AWS marketplacecommerceanalytics service + +Feature: mediaconvert +Description: C++ SDK for the AWS mediaconvert service + +Feature: medialive +Description: C++ SDK for the AWS medialive service + +Feature: mediapackage +Description: C++ SDK for the AWS mediapackage service + +Feature: mediastore +Description: C++ SDK for the AWS mediastore service + +Feature: mediastore-data +Description: C++ SDK for the AWS mediastore-data service + +Feature: meteringmarketplace +Description: C++ SDK for the AWS meteringmarketplace service + +Feature: mobile +Description: C++ SDK for the AWS mobile service + +Feature: mobileanalytics +Description: C++ SDK for the AWS mobileanalytics service + +Feature: monitoring +Description: C++ SDK for the AWS monitoring service + +Feature: mq +Description: C++ SDK for the AWS mq service + +Feature: mturk-requester +Description: C++ SDK for the AWS mturk-requester service + +Feature: opsworks +Description: C++ SDK for the AWS opsworks service + +Feature: opsworkscm +Description: C++ SDK for the AWS opsworkscm service + +Feature: organizations +Description: C++ SDK for the AWS organizations service + +Feature: pinpoint +Description: C++ SDK for the AWS pinpoint service + +Feature: polly +Description: C++ SDK for the AWS polly service + +Feature: polly-sample +Description: C++ SDK for the AWS polly-sample service + +Feature: pricing +Description: C++ SDK for the AWS pricing service + +Feature: queues +Description: C++ SDK for the AWS queues service + +Feature: rds +Description: C++ SDK for the AWS rds service + +Feature: redshift +Description: C++ SDK for the AWS redshift service + +Feature: rekognition +Description: C++ SDK for the AWS rekognition service + +Feature: resource-groups +Description: C++ SDK for the AWS resource-groups service + +Feature: resourcegroupstaggingapi +Description: C++ SDK for the AWS resourcegroupstaggingapi service + +Feature: route53 +Description: C++ SDK for the AWS route53 service + +Feature: route53domains +Description: C++ SDK for the AWS route53domains service + +Feature: s3 +Description: C++ SDK for the AWS s3 service + +Feature: s3-encryption +Description: C++ SDK for the AWS s3-encryption service + +Feature: sagemaker +Description: C++ SDK for the AWS sagemaker service + +Feature: sagemaker-runtime +Description: C++ SDK for the AWS sagemaker-runtime service + +Feature: sdb +Description: C++ SDK for the AWS sdb service + +Feature: serverlessrepo +Description: C++ SDK for the AWS serverlessrepo service + +Feature: servicecatalog +Description: C++ SDK for the AWS servicecatalog service + +Feature: servicediscovery +Description: C++ SDK for the AWS servicediscovery service + +Feature: shield +Description: C++ SDK for the AWS shield service + +Feature: sms +Description: C++ SDK for the AWS sms service + +Feature: snowball +Description: C++ SDK for the AWS snowball service + +Feature: sns +Description: C++ SDK for the AWS sns service + +Feature: sqs +Description: C++ SDK for the AWS sqs service + +Feature: ssm +Description: C++ SDK for the AWS ssm service + +Feature: states +Description: C++ SDK for the AWS states service + +Feature: storagegateway +Description: C++ SDK for the AWS storagegateway service + +Feature: sts +Description: C++ SDK for the AWS sts service + +Feature: support +Description: C++ SDK for the AWS support service + +Feature: swf +Description: C++ SDK for the AWS swf service + +Feature: text-to-speech +Description: C++ SDK for the AWS text-to-speech service + +Feature: transcribe +Description: C++ SDK for the AWS transcribe service + +Feature: transfer +Description: C++ SDK for the AWS transfer service + +Feature: translate +Description: C++ SDK for the AWS translate service + +Feature: waf +Description: C++ SDK for the AWS waf service + +Feature: waf-regional +Description: C++ SDK for the AWS waf-regional service + +Feature: workdocs +Description: C++ SDK for the AWS workdocs service + +Feature: workmail +Description: C++ SDK for the AWS workmail service + +Feature: workspaces +Description: C++ SDK for the AWS workspaces service + +Feature: xray +Description: C++ SDK for the AWS xray service diff --git a/ports/aws-sdk-cpp/CONTROL.in b/ports/aws-sdk-cpp/CONTROL.in new file mode 100644 index 000000000..5cf05fdff --- /dev/null +++ b/ports/aws-sdk-cpp/CONTROL.in @@ -0,0 +1,4 @@ +Source: aws-sdk-cpp +Version: 1.4.21 +Description: AWS SDK for C++ +Default-Features: dynamodb, ec2, kms, rds, s3, sns, sqs diff --git a/ports/aws-sdk-cpp/compute_build_only.cmake b/ports/aws-sdk-cpp/compute_build_only.cmake new file mode 100644 index 000000000..de24a203a --- /dev/null +++ b/ports/aws-sdk-cpp/compute_build_only.cmake @@ -0,0 +1,418 @@ +# Automatically generated by generateFeatures.ps1 +if("access-management" IN_LIST FEATURES) + list(APPEND BUILD_ONLY access-management) +endif() +if("acm" IN_LIST FEATURES) + list(APPEND BUILD_ONLY acm) +endif() +if("alexaforbusiness" IN_LIST FEATURES) + list(APPEND BUILD_ONLY alexaforbusiness) +endif() +if("apigateway" IN_LIST FEATURES) + list(APPEND BUILD_ONLY apigateway) +endif() +if("application-autoscaling" IN_LIST FEATURES) + list(APPEND BUILD_ONLY application-autoscaling) +endif() +if("appstream" IN_LIST FEATURES) + list(APPEND BUILD_ONLY appstream) +endif() +if("appsync" IN_LIST FEATURES) + list(APPEND BUILD_ONLY appsync) +endif() +if("athena" IN_LIST FEATURES) + list(APPEND BUILD_ONLY athena) +endif() +if("autoscaling" IN_LIST FEATURES) + list(APPEND BUILD_ONLY autoscaling) +endif() +if("autoscaling-plans" IN_LIST FEATURES) + list(APPEND BUILD_ONLY autoscaling-plans) +endif() +if("AWSMigrationHub" IN_LIST FEATURES) + list(APPEND BUILD_ONLY AWSMigrationHub) +endif() +if("batch" IN_LIST FEATURES) + list(APPEND BUILD_ONLY batch) +endif() +if("budgets" IN_LIST FEATURES) + list(APPEND BUILD_ONLY budgets) +endif() +if("ce" IN_LIST FEATURES) + list(APPEND BUILD_ONLY ce) +endif() +if("cloud9" IN_LIST FEATURES) + list(APPEND BUILD_ONLY cloud9) +endif() +if("clouddirectory" IN_LIST FEATURES) + list(APPEND BUILD_ONLY clouddirectory) +endif() +if("cloudformation" IN_LIST FEATURES) + list(APPEND BUILD_ONLY cloudformation) +endif() +if("cloudfront" IN_LIST FEATURES) + list(APPEND BUILD_ONLY cloudfront) +endif() +if("cloudhsm" IN_LIST FEATURES) + list(APPEND BUILD_ONLY cloudhsm) +endif() +if("cloudhsmv2" IN_LIST FEATURES) + list(APPEND BUILD_ONLY cloudhsmv2) +endif() +if("cloudsearch" IN_LIST FEATURES) + list(APPEND BUILD_ONLY cloudsearch) +endif() +if("cloudsearchdomain" IN_LIST FEATURES) + list(APPEND BUILD_ONLY cloudsearchdomain) +endif() +if("cloudtrail" IN_LIST FEATURES) + list(APPEND BUILD_ONLY cloudtrail) +endif() +if("codebuild" IN_LIST FEATURES) + list(APPEND BUILD_ONLY codebuild) +endif() +if("codecommit" IN_LIST FEATURES) + list(APPEND BUILD_ONLY codecommit) +endif() +if("codedeploy" IN_LIST FEATURES) + list(APPEND BUILD_ONLY codedeploy) +endif() +if("codepipeline" IN_LIST FEATURES) + list(APPEND BUILD_ONLY codepipeline) +endif() +if("codestar" IN_LIST FEATURES) + list(APPEND BUILD_ONLY codestar) +endif() +if("cognito-identity" IN_LIST FEATURES) + list(APPEND BUILD_ONLY cognito-identity) +endif() +if("cognito-idp" IN_LIST FEATURES) + list(APPEND BUILD_ONLY cognito-idp) +endif() +if("cognito-sync" IN_LIST FEATURES) + list(APPEND BUILD_ONLY cognito-sync) +endif() +if("comprehend" IN_LIST FEATURES) + list(APPEND BUILD_ONLY comprehend) +endif() +if("config" IN_LIST FEATURES) + list(APPEND BUILD_ONLY config) +endif() +if("cur" IN_LIST FEATURES) + list(APPEND BUILD_ONLY cur) +endif() +if("datapipeline" IN_LIST FEATURES) + list(APPEND BUILD_ONLY datapipeline) +endif() +if("dax" IN_LIST FEATURES) + list(APPEND BUILD_ONLY dax) +endif() +if("devicefarm" IN_LIST FEATURES) + list(APPEND BUILD_ONLY devicefarm) +endif() +if("directconnect" IN_LIST FEATURES) + list(APPEND BUILD_ONLY directconnect) +endif() +if("discovery" IN_LIST FEATURES) + list(APPEND BUILD_ONLY discovery) +endif() +if("dms" IN_LIST FEATURES) + list(APPEND BUILD_ONLY dms) +endif() +if("ds" IN_LIST FEATURES) + list(APPEND BUILD_ONLY ds) +endif() +if("dynamodb" IN_LIST FEATURES) + list(APPEND BUILD_ONLY dynamodb) +endif() +if("dynamodbstreams" IN_LIST FEATURES) + list(APPEND BUILD_ONLY dynamodbstreams) +endif() +if("ec2" IN_LIST FEATURES) + list(APPEND BUILD_ONLY ec2) +endif() +if("ecr" IN_LIST FEATURES) + list(APPEND BUILD_ONLY ecr) +endif() +if("ecs" IN_LIST FEATURES) + list(APPEND BUILD_ONLY ecs) +endif() +if("elasticache" IN_LIST FEATURES) + list(APPEND BUILD_ONLY elasticache) +endif() +if("elasticbeanstalk" IN_LIST FEATURES) + list(APPEND BUILD_ONLY elasticbeanstalk) +endif() +if("elasticfilesystem" IN_LIST FEATURES) + list(APPEND BUILD_ONLY elasticfilesystem) +endif() +if("elasticloadbalancing" IN_LIST FEATURES) + list(APPEND BUILD_ONLY elasticloadbalancing) +endif() +if("elasticloadbalancingv2" IN_LIST FEATURES) + list(APPEND BUILD_ONLY elasticloadbalancingv2) +endif() +if("elasticmapreduce" IN_LIST FEATURES) + list(APPEND BUILD_ONLY elasticmapreduce) +endif() +if("elastictranscoder" IN_LIST FEATURES) + list(APPEND BUILD_ONLY elastictranscoder) +endif() +if("email" IN_LIST FEATURES) + list(APPEND BUILD_ONLY email) +endif() +if("es" IN_LIST FEATURES) + list(APPEND BUILD_ONLY es) +endif() +if("events" IN_LIST FEATURES) + list(APPEND BUILD_ONLY events) +endif() +if("firehose" IN_LIST FEATURES) + list(APPEND BUILD_ONLY firehose) +endif() +if("gamelift" IN_LIST FEATURES) + list(APPEND BUILD_ONLY gamelift) +endif() +if("glacier" IN_LIST FEATURES) + list(APPEND BUILD_ONLY glacier) +endif() +if("glue" IN_LIST FEATURES) + list(APPEND BUILD_ONLY glue) +endif() +if("greengrass" IN_LIST FEATURES) + list(APPEND BUILD_ONLY greengrass) +endif() +if("guardduty" IN_LIST FEATURES) + list(APPEND BUILD_ONLY guardduty) +endif() +if("health" IN_LIST FEATURES) + list(APPEND BUILD_ONLY health) +endif() +if("iam" IN_LIST FEATURES) + list(APPEND BUILD_ONLY iam) +endif() +if("identity-management" IN_LIST FEATURES) + list(APPEND BUILD_ONLY identity-management) +endif() +if("importexport" IN_LIST FEATURES) + list(APPEND BUILD_ONLY importexport) +endif() +if("inspector" IN_LIST FEATURES) + list(APPEND BUILD_ONLY inspector) +endif() +if("iot" IN_LIST FEATURES) + list(APPEND BUILD_ONLY iot) +endif() +if("iot-data" IN_LIST FEATURES) + list(APPEND BUILD_ONLY iot-data) +endif() +if("iot-jobs-data" IN_LIST FEATURES) + list(APPEND BUILD_ONLY iot-jobs-data) +endif() +if("kinesis" IN_LIST FEATURES) + list(APPEND BUILD_ONLY kinesis) +endif() +if("kinesis-video-archived-media" IN_LIST FEATURES) + list(APPEND BUILD_ONLY kinesis-video-archived-media) +endif() +if("kinesis-video-media" IN_LIST FEATURES) + list(APPEND BUILD_ONLY kinesis-video-media) +endif() +if("kinesisanalytics" IN_LIST FEATURES) + list(APPEND BUILD_ONLY kinesisanalytics) +endif() +if("kinesisvideo" IN_LIST FEATURES) + list(APPEND BUILD_ONLY kinesisvideo) +endif() +if("kms" IN_LIST FEATURES) + list(APPEND BUILD_ONLY kms) +endif() +if("lambda" IN_LIST FEATURES) + list(APPEND BUILD_ONLY lambda) +endif() +if("lex" IN_LIST FEATURES) + list(APPEND BUILD_ONLY lex) +endif() +if("lex-models" IN_LIST FEATURES) + list(APPEND BUILD_ONLY lex-models) +endif() +if("lightsail" IN_LIST FEATURES) + list(APPEND BUILD_ONLY lightsail) +endif() +if("logs" IN_LIST FEATURES) + list(APPEND BUILD_ONLY logs) +endif() +if("machinelearning" IN_LIST FEATURES) + list(APPEND BUILD_ONLY machinelearning) +endif() +if("marketplace-entitlement" IN_LIST FEATURES) + list(APPEND BUILD_ONLY marketplace-entitlement) +endif() +if("marketplacecommerceanalytics" IN_LIST FEATURES) + list(APPEND BUILD_ONLY marketplacecommerceanalytics) +endif() +if("mediaconvert" IN_LIST FEATURES) + list(APPEND BUILD_ONLY mediaconvert) +endif() +if("medialive" IN_LIST FEATURES) + list(APPEND BUILD_ONLY medialive) +endif() +if("mediapackage" IN_LIST FEATURES) + list(APPEND BUILD_ONLY mediapackage) +endif() +if("mediastore" IN_LIST FEATURES) + list(APPEND BUILD_ONLY mediastore) +endif() +if("mediastore-data" IN_LIST FEATURES) + list(APPEND BUILD_ONLY mediastore-data) +endif() +if("meteringmarketplace" IN_LIST FEATURES) + list(APPEND BUILD_ONLY meteringmarketplace) +endif() +if("mobile" IN_LIST FEATURES) + list(APPEND BUILD_ONLY mobile) +endif() +if("mobileanalytics" IN_LIST FEATURES) + list(APPEND BUILD_ONLY mobileanalytics) +endif() +if("monitoring" IN_LIST FEATURES) + list(APPEND BUILD_ONLY monitoring) +endif() +if("mq" IN_LIST FEATURES) + list(APPEND BUILD_ONLY mq) +endif() +if("mturk-requester" IN_LIST FEATURES) + list(APPEND BUILD_ONLY mturk-requester) +endif() +if("opsworks" IN_LIST FEATURES) + list(APPEND BUILD_ONLY opsworks) +endif() +if("opsworkscm" IN_LIST FEATURES) + list(APPEND BUILD_ONLY opsworkscm) +endif() +if("organizations" IN_LIST FEATURES) + list(APPEND BUILD_ONLY organizations) +endif() +if("pinpoint" IN_LIST FEATURES) + list(APPEND BUILD_ONLY pinpoint) +endif() +if("polly" IN_LIST FEATURES) + list(APPEND BUILD_ONLY polly) +endif() +if("polly-sample" IN_LIST FEATURES) + list(APPEND BUILD_ONLY polly-sample) +endif() +if("pricing" IN_LIST FEATURES) + list(APPEND BUILD_ONLY pricing) +endif() +if("queues" IN_LIST FEATURES) + list(APPEND BUILD_ONLY queues) +endif() +if("rds" IN_LIST FEATURES) + list(APPEND BUILD_ONLY rds) +endif() +if("redshift" IN_LIST FEATURES) + list(APPEND BUILD_ONLY redshift) +endif() +if("rekognition" IN_LIST FEATURES) + list(APPEND BUILD_ONLY rekognition) +endif() +if("resource-groups" IN_LIST FEATURES) + list(APPEND BUILD_ONLY resource-groups) +endif() +if("resourcegroupstaggingapi" IN_LIST FEATURES) + list(APPEND BUILD_ONLY resourcegroupstaggingapi) +endif() +if("route53" IN_LIST FEATURES) + list(APPEND BUILD_ONLY route53) +endif() +if("route53domains" IN_LIST FEATURES) + list(APPEND BUILD_ONLY route53domains) +endif() +if("s3" IN_LIST FEATURES) + list(APPEND BUILD_ONLY s3) +endif() +if("s3-encryption" IN_LIST FEATURES) + list(APPEND BUILD_ONLY s3-encryption) +endif() +if("sagemaker" IN_LIST FEATURES) + list(APPEND BUILD_ONLY sagemaker) +endif() +if("sagemaker-runtime" IN_LIST FEATURES) + list(APPEND BUILD_ONLY sagemaker-runtime) +endif() +if("sdb" IN_LIST FEATURES) + list(APPEND BUILD_ONLY sdb) +endif() +if("serverlessrepo" IN_LIST FEATURES) + list(APPEND BUILD_ONLY serverlessrepo) +endif() +if("servicecatalog" IN_LIST FEATURES) + list(APPEND BUILD_ONLY servicecatalog) +endif() +if("servicediscovery" IN_LIST FEATURES) + list(APPEND BUILD_ONLY servicediscovery) +endif() +if("shield" IN_LIST FEATURES) + list(APPEND BUILD_ONLY shield) +endif() +if("sms" IN_LIST FEATURES) + list(APPEND BUILD_ONLY sms) +endif() +if("snowball" IN_LIST FEATURES) + list(APPEND BUILD_ONLY snowball) +endif() +if("sns" IN_LIST FEATURES) + list(APPEND BUILD_ONLY sns) +endif() +if("sqs" IN_LIST FEATURES) + list(APPEND BUILD_ONLY sqs) +endif() +if("ssm" IN_LIST FEATURES) + list(APPEND BUILD_ONLY ssm) +endif() +if("states" IN_LIST FEATURES) + list(APPEND BUILD_ONLY states) +endif() +if("storagegateway" IN_LIST FEATURES) + list(APPEND BUILD_ONLY storagegateway) +endif() +if("sts" IN_LIST FEATURES) + list(APPEND BUILD_ONLY sts) +endif() +if("support" IN_LIST FEATURES) + list(APPEND BUILD_ONLY support) +endif() +if("swf" IN_LIST FEATURES) + list(APPEND BUILD_ONLY swf) +endif() +if("text-to-speech" IN_LIST FEATURES) + list(APPEND BUILD_ONLY text-to-speech) +endif() +if("transcribe" IN_LIST FEATURES) + list(APPEND BUILD_ONLY transcribe) +endif() +if("transfer" IN_LIST FEATURES) + list(APPEND BUILD_ONLY transfer) +endif() +if("translate" IN_LIST FEATURES) + list(APPEND BUILD_ONLY translate) +endif() +if("waf" IN_LIST FEATURES) + list(APPEND BUILD_ONLY waf) +endif() +if("waf-regional" IN_LIST FEATURES) + list(APPEND BUILD_ONLY waf-regional) +endif() +if("workdocs" IN_LIST FEATURES) + list(APPEND BUILD_ONLY workdocs) +endif() +if("workmail" IN_LIST FEATURES) + list(APPEND BUILD_ONLY workmail) +endif() +if("workspaces" IN_LIST FEATURES) + list(APPEND BUILD_ONLY workspaces) +endif() +if("xray" IN_LIST FEATURES) + list(APPEND BUILD_ONLY xray) +endif() diff --git a/ports/aws-sdk-cpp/disable_warning_as_error.patch b/ports/aws-sdk-cpp/disable_warning_as_error.patch deleted file mode 100644 index ec5587eb8..000000000 --- a/ports/aws-sdk-cpp/disable_warning_as_error.patch +++ /dev/null @@ -1,13 +0,0 @@ -diff --git a/cmake/compiler_settings.cmake b/cmake/compiler_settings.cmake -index 36795a2..77334ee 100644 ---- a/cmake/compiler_settings.cmake -+++ b/cmake/compiler_settings.cmake -@@ -57,7 +57,7 @@ endif() - if(MSVC) - # warnings as errors, max warning level (4) - if(NOT CMAKE_CXX_FLAGS MATCHES "/WX") -- set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /WX") -+ #set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /WX") - endif() - - # taken from http://stackoverflow.com/questions/2368811/how-to-set-warning-level-in-cmake diff --git a/ports/aws-sdk-cpp/drop_git.patch b/ports/aws-sdk-cpp/drop_git.patch deleted file mode 100644 index 491831bd7..000000000 --- a/ports/aws-sdk-cpp/drop_git.patch +++ /dev/null @@ -1,13 +0,0 @@ -diff --git a/CMakeLists.txt b/CMakeLists.txt -index 9d2a98a..ce58b68 100644 ---- a/CMakeLists.txt -+++ b/CMakeLists.txt -@@ -22,7 +22,7 @@ if(CMAKE_MAJOR_VERSION LESS 3) - endif() - - # git is required for Android builds and optional for all other platforms --find_package(Git) -+#find_package(Git) - - # Cmake invocation variables: - # CUSTOM_MEMORY_MANAGEMENT - if set to 1, generates the sdk project files with custom memory management enabled, otherwise disables it diff --git a/ports/aws-sdk-cpp/generateFeatures.ps1 b/ports/aws-sdk-cpp/generateFeatures.ps1 new file mode 100644 index 000000000..cd61a794f --- /dev/null +++ b/ports/aws-sdk-cpp/generateFeatures.ps1 @@ -0,0 +1,50 @@ +[CmdletBinding()] +param( + [Parameter(Mandatory=$true)][string]$ExtractedSources, + [Parameter(Mandatory=$true)][string]$ControlFileIn, + [Parameter(Mandatory=$true)][string]$ControlFile, + [Parameter(Mandatory=$true)][string]$CMakeFragmentFile +) + +$subfolders = Get-Item $ExtractedSources\aws-cpp-sdk-* + +$controltext = gc $ControlFileIn +$controltext += @("# Automatically generated by generateFeatures.ps1") + +$cmakefragmenttext = @("# Automatically generated by generateFeatures.ps1") + +function GetDescription($dir, $modulename) +{ + if (Test-Path "$dir\CMakeLists.txt") + { + $descs = @(Select-String -Path "$dir\CMakeLists.txt" -Pattern "`"C\+\+ SDK for the AWS [^`"]*`"") + if ($descs.count -eq 1) { + $desc = $descs[0].Matches.Value -replace "`"","" + "Description: $desc" + } + else { "Description: C++ SDK for the AWS $modulename service" } + } + else { "Description: C++ SDK for the AWS $modulename service" } +} + +$subfolders | % { + $modulename = $_.name -replace "^aws-cpp-sdk-","" + if ($modulename -match "-tests`$") { return } + if ($modulename -eq "core") { return } + + $controltext += @("") + $controltext += @("Feature: $modulename") + $controltext += @(GetDescription $_ $modulename) + + $cmakefragmenttext += @( + "if(`"$modulename`" IN_LIST FEATURES)", + " list(APPEND BUILD_ONLY $modulename)", + "endif()" + ) +} + +Write-Verbose ($controltext -join "`n") +$controltext | out-file -enc ascii $ControlFile + +Write-Verbose ($cmakefragmenttext -join "`n") +$cmakefragmenttext | out-file -enc ascii $CMakeFragmentFile diff --git a/ports/aws-sdk-cpp/portfile.cmake b/ports/aws-sdk-cpp/portfile.cmake index d21932496..3adfa15d0 100644 --- a/ports/aws-sdk-cpp/portfile.cmake +++ b/ports/aws-sdk-cpp/portfile.cmake @@ -3,79 +3,77 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO aws/aws-sdk-cpp - REF 1.3.58 - SHA512 755fe3fd9d507a43fb03c1530a979f5a5a2848588ccab39509987043b3d274f27a7b163bf078a006123450ee881fd4a092cd703246f6f669810f47c186c2b0b8 + REF 1.4.21 + SHA512 b8d063048b9d879603ace5210b671497336e8160cb3b7d10772465db538d95176458446faa9dccd5cc2d7a2c3242239fc3b80a8aa3a5878a0e2b4fc6673b4a35 HEAD_REF master ) -vcpkg_apply_patches( - SOURCE_PATH ${SOURCE_PATH} - PATCHES - ${CMAKE_CURRENT_LIST_DIR}/drop_git.patch - ${CMAKE_CURRENT_LIST_DIR}/disable_warning_as_error.patch -) +string(COMPARE EQUAL "${VCPKG_CRT_LINKAGE}" "dynamic" FORCE_SHARED_CRT) -if(VCPKG_CRT_LINKAGE STREQUAL static) - set(FORCE_SHARED_CRT OFF) -else() - set(FORCE_SHARED_CRT ON) -endif() +set(BUILD_ONLY core) + +include(${CMAKE_CURRENT_LIST_DIR}/compute_build_only.cmake) + +# This handles escaping the list +string(REPLACE ";" "\\\\\\;" BUILD_ONLY "${BUILD_ONLY}") vcpkg_configure_cmake( SOURCE_PATH ${SOURCE_PATH} - PREFER_NINJA - OPTIONS - -DENABLE_TESTING=OFF - -DFORCE_SHARED_CRT=${FORCE_SHARED_CRT} + PREFER_NINJA + OPTIONS + -DENABLE_UNITY_BUILD=ON + -DENABLE_TESTING=OFF + -DFORCE_SHARED_CRT=${FORCE_SHARED_CRT} + -DCMAKE_DISABLE_FIND_PACKAGE_Git=TRUE + "-DBUILD_ONLY=${BUILD_ONLY}" ) vcpkg_install_cmake() -file(GLOB CMAKE_FILES ${CURRENT_PACKAGES_DIR}/lib/cmake/*) - -file(MAKE_DIRECTORY ${CURRENT_PACKAGES_DIR}/share) - -file(COPY ${CMAKE_FILES} DESTINATION ${CURRENT_PACKAGES_DIR}/share) +vcpkg_fixup_cmake_targets(CONFIG_PATH lib/cmake TARGET_PATH share) vcpkg_copy_pdbs() -file(GLOB AWS_TARGETS "${CURRENT_PACKAGES_DIR}/share/aws-cpp-sdk-*/aws-cpp-sdk-*targets.cmake") -foreach(AWS_TARGETS ${AWS_TARGETS}) - file(READ ${AWS_TARGETS} _contents) +file(GLOB_RECURSE AWS_TARGETS "${CURRENT_PACKAGES_DIR}/share/*/*-targets-*.cmake") +foreach(AWS_TARGET IN LISTS AWS_TARGETS) + file(READ ${AWS_TARGET} _contents) string(REGEX REPLACE - "get_filename_component\\(_IMPORT_PREFIX \"\\\${CMAKE_CURRENT_LIST_FILE}\" PATH\\)(\nget_filename_component\\(_IMPORT_PREFIX \"\\\${_IMPORT_PREFIX}\" PATH\\))*" - "get_filename_component(_IMPORT_PREFIX \"\${CMAKE_CURRENT_LIST_FILE}\" PATH)\nget_filename_component(_IMPORT_PREFIX \"\${_IMPORT_PREFIX}\" PATH)\nget_filename_component(_IMPORT_PREFIX \"\${_IMPORT_PREFIX}\" PATH)" + "bin\\/([A-Za-z0-9_.-]+\\.lib)" + "lib/\\1" _contents "${_contents}") - file(WRITE ${AWS_TARGETS} "${_contents}") + file(WRITE ${AWS_TARGET} "${_contents}") endforeach() -file(GLOB AWS_TARGETS_RELEASE "${CURRENT_PACKAGES_DIR}/share/aws-cpp-sdk-*/aws-cpp-sdk-*targets-release.cmake") -foreach(AWS_TARGETS_RELEASE ${AWS_TARGETS_RELEASE}) - file(READ ${AWS_TARGETS_RELEASE} _contents) - string(REGEX REPLACE - "bin\\/([A-Za-z0-9_.-]+lib)" - "lib/\\1" - _contents "${_contents}") - file(WRITE ${AWS_TARGETS_RELEASE} "${_contents}") +file(GLOB AWS_CONFIGS "${CURRENT_PACKAGES_DIR}/share/*/aws-cpp-sdk-*-config.cmake") +list(FILTER AWS_CONFIGS EXCLUDE REGEX "aws-cpp-sdk-core-config\\.cmake\$") +foreach(AWS_CONFIG IN LISTS AWS_CONFIGS) + file(READ "${AWS_CONFIG}" _contents) + file(WRITE "${AWS_CONFIG}" "include(CMakeFindDependencyMacro)\nfind_dependency(aws-cpp-sdk-core)\n${_contents}") endforeach() -file(REMOVE_RECURSE - ${CURRENT_PACKAGES_DIR}/debug/include - ${CURRENT_PACKAGES_DIR}/lib/cmake - ${CURRENT_PACKAGES_DIR}/lib/pkgconfig - ${CURRENT_PACKAGES_DIR}/debug/lib/cmake - ${CURRENT_PACKAGES_DIR}/debug/lib/pkgconfig - ${CURRENT_PACKAGES_DIR}/nuget - ${CURRENT_PACKAGES_DIR}/debug/nuget) +file(REMOVE_RECURSE + ${CURRENT_PACKAGES_DIR}/debug/include + ${CURRENT_PACKAGES_DIR}/debug/share + ${CURRENT_PACKAGES_DIR}/share/AWSSDK + ${CURRENT_PACKAGES_DIR}/lib/pkgconfig + ${CURRENT_PACKAGES_DIR}/debug/lib/pkgconfig + ${CURRENT_PACKAGES_DIR}/nuget + ${CURRENT_PACKAGES_DIR}/debug/nuget +) if(VCPKG_LIBRARY_LINKAGE STREQUAL dynamic) - file(GLOB LIB_FILES ${CURRENT_PACKAGES_DIR}/bin/*.lib) - file(GLOB DEBUG_LIB_FILES ${CURRENT_PACKAGES_DIR}/debug/bin/*.lib) - file(COPY ${LIB_FILES} DESTINATION ${CURRENT_PACKAGES_DIR}/lib) - file(COPY ${DEBUG_LIB_FILES} DESTINATION ${CURRENT_PACKAGES_DIR}/debug/lib) - file(REMOVE ${LIB_FILES} ${DEBUG_LIB_FILES}) - - file(APPEND ${CURRENT_PACKAGES_DIR}/include/aws/core/SDKConfig.h "#define USE_IMPORT_EXPORT") + file(GLOB LIB_FILES ${CURRENT_PACKAGES_DIR}/bin/*.lib) + if(LIB_FILES) + file(COPY ${LIB_FILES} DESTINATION ${CURRENT_PACKAGES_DIR}/lib) + file(REMOVE ${LIB_FILES}) + endif() + file(GLOB DEBUG_LIB_FILES ${CURRENT_PACKAGES_DIR}/debug/bin/*.lib) + if(DEBUG_LIB_FILES) + file(COPY ${DEBUG_LIB_FILES} DESTINATION ${CURRENT_PACKAGES_DIR}/debug/lib) + file(REMOVE ${DEBUG_LIB_FILES}) + endif() + + file(APPEND ${CURRENT_PACKAGES_DIR}/include/aws/core/SDKConfig.h "#ifndef USE_IMPORT_EXPORT\n#define USE_IMPORT_EXPORT\n#endif") endif() # Handle copyright diff --git a/scripts/cmake/vcpkg_fixup_cmake_targets.cmake b/scripts/cmake/vcpkg_fixup_cmake_targets.cmake index 7f1f827c2..475047737 100644 --- a/scripts/cmake/vcpkg_fixup_cmake_targets.cmake +++ b/scripts/cmake/vcpkg_fixup_cmake_targets.cmake @@ -81,7 +81,7 @@ function(vcpkg_fixup_cmake_targets) endif() endif() - file(GLOB UNUSED_FILES + file(GLOB_RECURSE UNUSED_FILES "${DEBUG_SHARE}/*[Tt]argets.cmake" "${DEBUG_SHARE}/*[Cc]onfig.cmake" "${DEBUG_SHARE}/*[Cc]onfigVersion.cmake" @@ -91,10 +91,10 @@ function(vcpkg_fixup_cmake_targets) file(REMOVE ${UNUSED_FILES}) endif() - file(GLOB RELEASE_TARGETS + file(GLOB_RECURSE RELEASE_TARGETS "${RELEASE_SHARE}/*-release.cmake" ) - foreach(RELEASE_TARGET ${RELEASE_TARGETS}) + foreach(RELEASE_TARGET IN LISTS RELEASE_TARGETS) file(READ ${RELEASE_TARGET} _contents) string(REPLACE "${CURRENT_INSTALLED_DIR}" "\${_IMPORT_PREFIX}" _contents "${_contents}") string(REGEX REPLACE "\\\${_IMPORT_PREFIX}/bin/([^ \"]+\\.exe)" "\${_IMPORT_PREFIX}/tools/${PORT}/\\1" _contents "${_contents}") @@ -102,25 +102,25 @@ function(vcpkg_fixup_cmake_targets) endforeach() if(NOT DEFINED VCPKG_BUILD_TYPE OR VCPKG_BUILD_TYPE STREQUAL "debug") - file(GLOB DEBUG_TARGETS + file(GLOB_RECURSE DEBUG_TARGETS "${DEBUG_SHARE}/*-debug.cmake" ) - foreach(DEBUG_TARGET ${DEBUG_TARGETS}) - get_filename_component(DEBUG_TARGET_NAME ${DEBUG_TARGET} NAME) + foreach(DEBUG_TARGET IN LISTS DEBUG_TARGETS) + file(RELATIVE_PATH DEBUG_TARGET_REL "${DEBUG_SHARE}" "${DEBUG_TARGET}") file(READ ${DEBUG_TARGET} _contents) string(REPLACE "${CURRENT_INSTALLED_DIR}" "\${_IMPORT_PREFIX}" _contents "${_contents}") string(REGEX REPLACE "\\\${_IMPORT_PREFIX}/bin/([^ \"]+\\.exe)" "\${_IMPORT_PREFIX}/tools/${PORT}/\\1" _contents "${_contents}") string(REPLACE "\${_IMPORT_PREFIX}/lib" "\${_IMPORT_PREFIX}/debug/lib" _contents "${_contents}") string(REPLACE "\${_IMPORT_PREFIX}/bin" "\${_IMPORT_PREFIX}/debug/bin" _contents "${_contents}") - file(WRITE ${CURRENT_PACKAGES_DIR}/${_vfct_TARGET_PATH}/${DEBUG_TARGET_NAME} "${_contents}") + file(WRITE ${RELEASE_SHARE}/${DEBUG_TARGET_REL} "${_contents}") file(REMOVE ${DEBUG_TARGET}) endforeach() endif() - file(GLOB MAIN_TARGETS "${RELEASE_SHARE}/*[Tt]argets.cmake") - foreach(MAIN_TARGET ${MAIN_TARGETS}) + file(GLOB_RECURSE MAIN_TARGETS "${RELEASE_SHARE}/*[Tt]argets.cmake") + foreach(MAIN_TARGET IN LISTS MAIN_TARGETS) file(READ ${MAIN_TARGET} _contents) string(REGEX REPLACE "get_filename_component\\(_IMPORT_PREFIX \"\\\${CMAKE_CURRENT_LIST_FILE}\" PATH\\)(\nget_filename_component\\(_IMPORT_PREFIX \"\\\${_IMPORT_PREFIX}\" PATH\\))*" @@ -133,8 +133,8 @@ function(vcpkg_fixup_cmake_targets) file(WRITE ${MAIN_TARGET} "${_contents}") endforeach() - file(GLOB MAIN_CONFIGS "${RELEASE_SHARE}/*[Cc]onfig.cmake") - foreach(MAIN_CONFIG ${MAIN_CONFIGS}) + file(GLOB_RECURSE MAIN_CONFIGS "${RELEASE_SHARE}/*[Cc]onfig.cmake") + foreach(MAIN_CONFIG IN LISTS MAIN_CONFIGS) file(READ ${MAIN_CONFIG} _contents) string(REGEX REPLACE "get_filename_component\\(_IMPORT_PREFIX \"\\\${CMAKE_CURRENT_LIST_FILE}\" PATH\\)(\nget_filename_component\\(_IMPORT_PREFIX \"\\\${_IMPORT_PREFIX}\" PATH\\))*" -- cgit v1.2.3 From 21909157e28363480a02d2e30697e8c3d5f36e53 Mon Sep 17 00:00:00 2001 From: Robert Schumacher Date: Sat, 24 Mar 2018 15:00:47 -0700 Subject: [soundtouch] Use CMake --- ports/soundtouch/CMakeLists.txt | 32 +++++++++++++++++++++++ ports/soundtouch/CONTROL | 2 +- ports/soundtouch/portfile.cmake | 56 ++++++++--------------------------------- 3 files changed, 44 insertions(+), 46 deletions(-) create mode 100644 ports/soundtouch/CMakeLists.txt diff --git a/ports/soundtouch/CMakeLists.txt b/ports/soundtouch/CMakeLists.txt new file mode 100644 index 000000000..a15daefe4 --- /dev/null +++ b/ports/soundtouch/CMakeLists.txt @@ -0,0 +1,32 @@ +cmake_minimum_required(VERSION 3.5) +project(soundtouch CXX) + +if(CMAKE_SIZEOF_VOID_P EQUAL 8) + set(ARCH_SUFFIX _x64) +else() + set(ARCH_SUFFIX) +endif() + +if(BUILD_SHARED_LIBS) + set(TYPE_SUFFIX Dll) +else() + set(TYPE_SUFFIX $<$:D>) +endif() + +file(GLOB SOUNDTOUCH_SOURCES source/SoundTouch/*.cpp) +add_library(libsoundtouch ${SOUNDTOUCH_SOURCES}) +target_include_directories(libsoundtouch PUBLIC include) +set_target_properties(libsoundtouch PROPERTIES OUTPUT_NAME SoundTouch${TYPE_SUFFIX}${ARCH_SUFFIX}) +if(BUILD_SHARED_LIBS) + target_compile_definitions(libsoundtouch PRIVATE -DDLL_EXPORTS) + target_sources(libsoundtouch PRIVATE + source/SoundTouchDLL/SoundTouchDLL.cpp + source/SoundTouchDLL/SoundTouchDLL.rc + ) +endif() + +install(TARGETS libsoundtouch + RUNTIME DESTINATION bin + LIBRARY DESTINATION lib + ARCHIVE DESTINATION lib +) diff --git a/ports/soundtouch/CONTROL b/ports/soundtouch/CONTROL index cc37ea89f..7ae158b88 100644 --- a/ports/soundtouch/CONTROL +++ b/ports/soundtouch/CONTROL @@ -1,4 +1,4 @@ Source: soundtouch -Version: 2.0.0 +Version: 2.0.0-1 Description: SoundTouch is an open-source audio processing library for changing the Tempo, Pitch and Playback Rates of audio streams or audio files. Build-Depends: atlmfc diff --git a/ports/soundtouch/portfile.cmake b/ports/soundtouch/portfile.cmake index cadf5e705..b7fb1fb45 100644 --- a/ports/soundtouch/portfile.cmake +++ b/ports/soundtouch/portfile.cmake @@ -1,11 +1,15 @@ include(vcpkg_common_functions) # NOTE: SoundTouch has a static c++ version too, but entirely different headers, api, etc -if (VCPKG_LIBRARY_LINKAGE STREQUAL static) +if(VCPKG_LIBRARY_LINKAGE STREQUAL "static") message(STATUS "Warning: Static building not supported. Building dynamic.") set(VCPKG_LIBRARY_LINKAGE dynamic) endif() +if(VCPKG_CRT_LINKAGE STREQUAL "static") + message(FATAL_ERROR "Refusing to build DLL with static CRT linkage.") +endif() + if(VCPKG_CMAKE_SYSTEM_NAME STREQUAL "WindowsStore") message(FATAL_ERROR "WindowsStore not supported") endif() @@ -18,56 +22,18 @@ vcpkg_download_distfile(ARCHIVE FILENAME "soundtouch-${VERSION}.zip" SHA512 50ef36b6cd21c16e235b908c5518e29b159b11f658a014c47fe767d3d8acebaefefec0ce253b4ed322cbd26387c69c0ed464ddace0c098e61d56d55c198117a5 ) - -# MSBuild performs in-source builds, so to ensure reliability we must clear them each time -file(REMOVE_RECURSE ${CURRENT_BUILDTREES_DIR}/src) - vcpkg_extract_source_archive(${ARCHIVE}) -vcpkg_execute_required_process( - COMMAND "devenv.exe" - "SoundTouchDLL.sln" - /Upgrade - WORKING_DIRECTORY ${SOURCE_PATH}/source/SoundTouchDLL - LOGNAME upgrade-Packet-${TARGET_TRIPLET} -) - -IF (TRIPLET_SYSTEM_ARCH MATCHES "x64") - # There is no x64 Debug target - SET(BUILD_RELEASE_CONFIGURATION "ReleaseX64") - SET(BUILD_DEBUG_CONFIGURATION "ReleaseX64") -ELSE() - SET(BUILD_RELEASE_CONFIGURATION "Release") - SET(BUILD_DEBUG_CONFIGURATION "Debug") -ENDIF() - -SET(BUILD_ARCH "Win32") +file(COPY ${CMAKE_CURRENT_LIST_DIR}/CMakeLists.txt DESTINATION ${SOURCE_PATH}) -vcpkg_build_msbuild( - PROJECT_PATH ${SOURCE_PATH}/source/SoundTouchDLL/SoundTouchDLL.sln - PLATFORM ${BUILD_ARCH} - RELEASE_CONFIGURATION ${BUILD_RELEASE_CONFIGURATION} - DEBUG_CONFIGURATION ${BUILD_DEBUG_CONFIGURATION} +vcpkg_configure_cmake( + SOURCE_PATH ${SOURCE_PATH} + PREFER_NINJA ) -file(INSTALL ${SOURCE_PATH}/source/SoundTouchDLL/SoundTouchDLL.h DESTINATION ${CURRENT_PACKAGES_DIR}/include) +vcpkg_install_cmake() -# Handle libraries -IF (BUILD_RELEASE_CONFIGURATION STREQUAL ReleaseX64) - file(INSTALL ${SOURCE_PATH}/lib/SoundTouch_x64.dll DESTINATION ${CURRENT_PACKAGES_DIR}/bin) - file(INSTALL ${SOURCE_PATH}/lib/SoundTouchDll_x64.lib DESTINATION ${CURRENT_PACKAGES_DIR}/lib) -ELSE() - file(INSTALL ${SOURCE_PATH}/lib/SoundTouch.dll DESTINATION ${CURRENT_PACKAGES_DIR}/bin) - file(INSTALL ${SOURCE_PATH}/lib/SoundTouchDll.lib DESTINATION ${CURRENT_PACKAGES_DIR}/lib) -ENDIF() - -IF (BUILD_DEBUG_CONFIGURATION STREQUAL ReleaseX64) - file(INSTALL ${SOURCE_PATH}/lib/SoundTouch_x64.dll DESTINATION ${CURRENT_PACKAGES_DIR}/debug/bin) - file(INSTALL ${SOURCE_PATH}/lib/SoundTouchDll_x64.lib DESTINATION ${CURRENT_PACKAGES_DIR}/debug/lib) -ELSE() - file(INSTALL ${SOURCE_PATH}/lib/SoundTouchD.dll DESTINATION ${CURRENT_PACKAGES_DIR}/debug/bin) - file(INSTALL ${SOURCE_PATH}/lib/SoundTouchDllD.lib DESTINATION ${CURRENT_PACKAGES_DIR}/debug/lib) -ENDIF() +file(INSTALL ${SOURCE_PATH}/source/SoundTouchDLL/SoundTouchDLL.h DESTINATION ${CURRENT_PACKAGES_DIR}/include) file(COPY ${SOURCE_PATH}/COPYING.TXT DESTINATION ${CURRENT_PACKAGES_DIR}/share/soundtouch) file(RENAME ${CURRENT_PACKAGES_DIR}/share/soundtouch/COPYING.TXT ${CURRENT_PACKAGES_DIR}/share/soundtouch/copyright) -- cgit v1.2.3 From 21ef72d02a7ea840b3427bda2ea2705aeaef2f00 Mon Sep 17 00:00:00 2001 From: Hartmut Kaiser Date: Sun, 25 Mar 2018 08:33:34 +0900 Subject: Updating HPX to V1.1 (#3120) * Updating HPX to V1.1 * [hpx] Use vcpkg_fixup_cmake_targets --- ports/hpx/CONTROL | 10 +-- ports/hpx/boost-1-66.patch | 38 -------- ports/hpx/portfile.cmake | 213 ++++++++++++++++++++------------------------- 3 files changed, 99 insertions(+), 162 deletions(-) delete mode 100644 ports/hpx/boost-1-66.patch diff --git a/ports/hpx/CONTROL b/ports/hpx/CONTROL index 471b64986..ff6801a42 100644 --- a/ports/hpx/CONTROL +++ b/ports/hpx/CONTROL @@ -1,5 +1,5 @@ -Source: hpx -Version: 1.0.0-8 -Build-Depends: hwloc, boost-chrono, boost-date-time, boost-filesystem, boost-program-options, boost-regex, boost-system, boost-thread, boost-context, boost-iostreams, boost-random, boost-atomic, boost-asio, boost-dynamic-bitset, boost-assign, boost-format, boost-signals2, boost-parameter, boost-bimap, boost-accumulators, boost-lockfree, boost-icl -Description: The C++ Standards Library for Concurrency and Parallelism - HPX is a C++ Standards Library for Concurrency and Parallelism. It implements all of the corresponding facilities as defined by the C++ Standard. Additionally, in HPX we implement functionalities proposed as part of the ongoing C++ standardization process. We also extend the C++ Standard APIs to the distributed case. +Source: hpx +Version: 1.1.0-1 +Build-Depends: hwloc, boost-accumulators, boost-algorithm, boost-asio, boost-assign, boost-atomic, boost-bimap, boost-chrono, boost-config, boost-context, boost-date-time, boost-dynamic-bitset, boost-exception, boost-filesystem, boost-format, boost-iostreams, boost-lockfree, boost-parameter, boost-program-options, boost-range, boost-regex, boost-signals2, boost-smart-ptr, boost-spirit, boost-system, boost-thread, boost-throw-exception, boost-variant, boost-winapi +Description: The C++ Standards Library for Concurrency and Parallelism + HPX is a C++ Standards Library for Concurrency and Parallelism. It implements all of the corresponding facilities as defined by the C++ Standard. Additionally, in HPX we implement functionalities proposed as part of the ongoing C++ standardization process. We also extend the C++ Standard APIs to the distributed case. diff --git a/ports/hpx/boost-1-66.patch b/ports/hpx/boost-1-66.patch deleted file mode 100644 index 6f98a48aa..000000000 --- a/ports/hpx/boost-1-66.patch +++ /dev/null @@ -1,38 +0,0 @@ -diff --git a/src/util/asio_util.cpp b/src/util/asio_util.cpp -index e2207de..48a35b9 100644 ---- a/src/util/asio_util.cpp -+++ b/src/util/asio_util.cpp -@@ -231,7 +231,7 @@ namespace hpx { namespace util - tcp::endpoint ep; - if (util::get_endpoint(address, port, ep)) - { -- return endpoint_iterator_type(tcp::resolver::iterator::create( -+ return endpoint_iterator_type(tcp::resolver::results_type::create( - ep, address, port_str)); - } - } -@@ -283,7 +283,7 @@ namespace hpx { namespace util - if (util::get_endpoint(address, port, ep)) - { - return endpoint_iterator_type( -- tcp::resolver::iterator::create(ep, address, port_str)); -+ tcp::resolver::results_type::create(ep, address, port_str)); - } - } - catch (boost::system::system_error const&) { -diff --git a/src/util/serialize_exception.cpp b/src/util/serialize_exception.cpp -index 935e575..22bcf37 100644 ---- a/src/util/serialize_exception.cpp -+++ b/src/util/serialize_exception.cpp -@@ -341,11 +341,7 @@ namespace hpx { namespace serialization - case hpx::util::boost_system_error: - e = hpx::detail::construct_exception( - boost::system::system_error(err_value, --#ifndef BOOST_SYSTEM_NO_DEPRECATED -- boost::system::get_system_category() --#else - boost::system::system_category() --#endif - , err_message - ) - , throw_function_, throw_file_, throw_line_, throw_back_trace_, diff --git a/ports/hpx/portfile.cmake b/ports/hpx/portfile.cmake index e03d566e8..c200a6278 100644 --- a/ports/hpx/portfile.cmake +++ b/ports/hpx/portfile.cmake @@ -1,119 +1,94 @@ -include(vcpkg_common_functions) - -if (VCPKG_LIBRARY_LINKAGE STREQUAL static) - message(STATUS "Warning: Static building of HPX not supported yet. Building dynamic.") - set(VCPKG_LIBRARY_LINKAGE dynamic) -endif() - -vcpkg_from_github( - OUT_SOURCE_PATH SOURCE_PATH - REPO STEllAR-GROUP/hpx - REF 1.0.0 - SHA512 1bb985ad8ab031a7ac034d4597a8bd26eae83fba5aed207c444211954079e10e2d5d83965a1f4ce52d1b29ecc72586c561b984c2c628673a262c07214fd1abb5 - HEAD_REF master -) - -if(NOT VCPKG_USE_HEAD_VERSION) - # apply hotfix to enable building with vcpkg - vcpkg_download_distfile(DIFF1 - URLS "http://stellar-group.org/files/hpx-Build-system-changes-to-make-HPX-compile-when-built-with-vcpkg.diff" - FILENAME "hpx-Build-system-changes-to-make-HPX-compile-when-built-with-vcpkg.diff" - SHA512 86df311a120686139955e1c0fdca55379594be3fa8d46d69ee59d83da351ce3bed487ab946c80f7127aab9699e470e24e545b112f92be9f971f41d95c429d01d - ) - - # apply hotfix to fix issues with building 32bit version - vcpkg_download_distfile(DIFF2 - URLS "http://stellar-group.org/files/hpx-Fixing-32bit-MSVC-compilation.diff" - FILENAME "hpx-Fixing-32bit-MSVC-compilation.diff" - SHA512 31c904d317b4c24eddd819e4856f8326ff3850a5a196c7648c46a11dbb85f35e972e077957b3c4aec67c8b043816fe1cebc92cfe28ed815f682537dfc3421b8b - ) - - # apply hotfix to fix issues when building with UNICODE enabled - vcpkg_download_distfile(DIFF3 - URLS "http://stellar-group.org/files/hpx-Making-sure-UNICODE-on-Windows-does-not-break-by-default.diff" - FILENAME "hpx-Making-sure-UNICODE-on-Windows-does-not-break-by-default.diff" - SHA512 8fcdb36307702d64b9d2b26920374a6c5a29a50d125305dc95926c4cbc91215cb0c72ede83b06d0fc007fe7b2283845e08351bd45f11f3677f0d3db4ac8f9424 - ) - - vcpkg_apply_patches( - SOURCE_PATH ${SOURCE_PATH} - PATCHES - ${DIFF1} - ${DIFF2} - ${DIFF3} - ${CMAKE_CURRENT_LIST_DIR}/boost-1-66.patch - ) -endif() - -SET(BOOST_PATH "${CURRENT_INSTALLED_DIR}/share/boost") -SET(HWLOC_PATH "${CURRENT_INSTALLED_DIR}/share/hwloc") - -vcpkg_configure_cmake( - SOURCE_PATH ${SOURCE_PATH} - PREFER_NINJA - OPTIONS - -DBOOST_ROOT=${BOOST_PATH} - -DHWLOC_ROOT=${HWLOC_ROOT} - -DHPX_WITH_VCPKG=ON - -DHPX_WITH_HWLOC=ON - -DHPX_WITH_TESTS=OFF - -DHPX_WITH_EXAMPLES=OFF - -DHPX_WITH_TOOLS=OFF - -DHPX_WITH_RUNTIME=OFF -) - -vcpkg_install_cmake() - -# post build cleanup -if(NOT VCPKG_USE_HEAD_VERSION) - file(RENAME ${CURRENT_PACKAGES_DIR}/share/hpx-1.0.0 ${CURRENT_PACKAGES_DIR}/share/hpx) -else() - file(RENAME ${CURRENT_PACKAGES_DIR}/share/hpx-1.1.0 ${CURRENT_PACKAGES_DIR}/share/hpx) -endif() - -file(INSTALL - ${SOURCE_PATH}/LICENSE_1_0.txt - DESTINATION ${CURRENT_PACKAGES_DIR}/share/hpx RENAME copyright) - -file(GLOB __hpx_cmakes ${CURRENT_PACKAGES_DIR}/lib/cmake/HPX/*.*) -foreach(__hpx_cmake ${__hpx_cmakes}) - file(COPY ${__hpx_cmake} DESTINATION ${CURRENT_PACKAGES_DIR}/share/hpx/cmake) - file(REMOVE ${__hpx_cmake}) -endforeach() - -file(GLOB __hpx_dlls ${CURRENT_PACKAGES_DIR}/lib/*.dll) -foreach(__hpx_dll ${__hpx_dlls}) - file(COPY ${__hpx_dll} DESTINATION ${CURRENT_PACKAGES_DIR}/bin) - file(REMOVE ${__hpx_dll}) -endforeach() - -file(GLOB __hpx_dlls ${CURRENT_PACKAGES_DIR}/lib/hpx/*.dll) -foreach(__hpx_dll ${__hpx_dlls}) - file(COPY ${__hpx_dll} DESTINATION ${CURRENT_PACKAGES_DIR}/bin/hpx) - file(REMOVE ${__hpx_dll}) -endforeach() - -file(GLOB __hpx_dlls ${CURRENT_PACKAGES_DIR}/debug/lib/*.dll) -foreach(__hpx_dll ${__hpx_dlls}) - file(COPY ${__hpx_dll} DESTINATION ${CURRENT_PACKAGES_DIR}/debug/bin) - file(REMOVE ${__hpx_dll}) -endforeach() - -file(GLOB __hpx_dlls ${CURRENT_PACKAGES_DIR}/debug/lib/hpx/*.dll) -foreach(__hpx_dll ${__hpx_dlls}) - file(COPY ${__hpx_dll} DESTINATION ${CURRENT_PACKAGES_DIR}/debug/bin/hpx) - file(REMOVE ${__hpx_dll}) -endforeach() - -file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/lib/bazel) -file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/lib/cmake) -file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/lib/pkgconfig) - -file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include) -file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/share) -file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/lib/bazel) -file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/lib/cmake) -file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/lib/pkgconfig) - -vcpkg_copy_pdbs() - +include(vcpkg_common_functions) + +if (VCPKG_LIBRARY_LINKAGE STREQUAL static) + message(STATUS "Warning: Static building of HPX not supported yet. Building dynamic.") + set(VCPKG_LIBRARY_LINKAGE dynamic) +endif() + +vcpkg_from_github( + OUT_SOURCE_PATH SOURCE_PATH + REPO STEllAR-GROUP/hpx + REF 1.1.0 + SHA512 435250143ddbd2608995fe3dc5c229a096312d7ac930925ae56d0abd2d5689886126f6e81bc7e37b84ca9bc99f951ef1f39580168a359c48788ac8d008bc7078 + HEAD_REF master +) + +vcpkg_configure_cmake( + SOURCE_PATH ${SOURCE_PATH} + PREFER_NINJA + OPTIONS + "-DBOOST_ROOT=${CURRENT_INSTALLED_DIR}/share/boost" + "-DHWLOC_ROOT=${CURRENT_INSTALLED_DIR}/share/hwloc" + -DHPX_WITH_VCPKG=ON + -DHPX_WITH_HWLOC=ON + -DHPX_WITH_TESTS=OFF + -DHPX_WITH_EXAMPLES=OFF + -DHPX_WITH_TOOLS=OFF + -DHPX_WITH_RUNTIME=OFF +) + +vcpkg_install_cmake() + +# post build cleanup +file(GLOB SHARE_DIR ${CURRENT_PACKAGES_DIR}/share/hpx-*) +file(RENAME ${SHARE_DIR} ${CURRENT_PACKAGES_DIR}/share/hpx) + +vcpkg_fixup_cmake_targets(CONFIG_PATH lib/cmake/HPX) + +file(GLOB_RECURSE CMAKE_FILES "${CURRENT_PACKAGES_DIR}/share/hpx/*.cmake") +foreach(CMAKE_FILE IN LISTS CMAKE_FILES) + file(READ ${CMAKE_FILE} _contents) + string(REGEX REPLACE + "lib/([A-Za-z0-9_.-]+\\.dll)" + "bin/\\1" + _contents "${_contents}") + string(REGEX REPLACE + "lib/hpx/([A-Za-z0-9_.-]+\\.dll)" + "bin/\\1" + _contents "${_contents}") + file(WRITE ${CMAKE_FILE} "${_contents}") +endforeach() + +file(READ "${CURRENT_PACKAGES_DIR}/share/hpx/HPXMacros.cmake" _contents) +string(REPLACE "set(CMAKE_MODULE_PATH \${CMAKE_MODULE_PATH} \"\${CMAKE_CURRENT_LIST_DIR}/../../lib/cmake/HPX\")" "list(APPEND CMAKE_MODULE_PATH \"\${CMAKE_CURRENT_LIST_DIR}\")" _contents "${_contents}") +file(WRITE "${CURRENT_PACKAGES_DIR}/share/hpx/HPXMacros.cmake" "${_contents}") + +file(INSTALL + ${SOURCE_PATH}/LICENSE_1_0.txt + DESTINATION ${CURRENT_PACKAGES_DIR}/share/hpx RENAME copyright) + +file(GLOB DLLS ${CURRENT_PACKAGES_DIR}/lib/*.dll) +if(DLLS) + file(COPY ${DLLS} DESTINATION ${CURRENT_PACKAGES_DIR}/bin) + file(REMOVE ${DLLS}) +endif() + +file(GLOB DLLS ${CURRENT_PACKAGES_DIR}/lib/hpx/*.dll) +if(DLLS) + file(COPY ${DLLS} DESTINATION ${CURRENT_PACKAGES_DIR}/bin) + file(REMOVE ${DLLS}) +endif() + +file(GLOB DLLS ${CURRENT_PACKAGES_DIR}/debug/lib/*.dll) +if(DLLS) + file(COPY ${DLLS} DESTINATION ${CURRENT_PACKAGES_DIR}/debug/bin) + file(REMOVE ${DLLS}) +endif() + +file(GLOB DLLS ${CURRENT_PACKAGES_DIR}/debug/lib/hpx/*.dll) +if(DLLS) + file(COPY ${DLLS} DESTINATION ${CURRENT_PACKAGES_DIR}/debug/bin) + file(REMOVE ${DLLS}) +endif() + +file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/lib/bazel) +file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/lib/cmake) +file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/lib/pkgconfig) + +file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include) +file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/share) +file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/lib/bazel) +file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/lib/cmake) +file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/lib/pkgconfig) + +vcpkg_copy_pdbs() -- cgit v1.2.3 From 368c85f9ef80b0af1a4a81663683bc4f4fbf0e7e Mon Sep 17 00:00:00 2001 From: jasjuang Date: Sat, 24 Mar 2018 23:53:08 -0700 Subject: [alembic] update to 1.7.7 --- ports/alembic/CONTROL | 2 +- ports/alembic/portfile.cmake | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/ports/alembic/CONTROL b/ports/alembic/CONTROL index a1c8f7b4b..4e24aab9b 100644 --- a/ports/alembic/CONTROL +++ b/ports/alembic/CONTROL @@ -1,4 +1,4 @@ Source: alembic -Version: 1.7.6 +Version: 1.7.7 Build-Depends: ilmbase, hdf5 Description: Alembic is an open framework for storing and sharing scene data that includes a C++ library, a file format, and client plugins and applications. http://alembic.io/ diff --git a/ports/alembic/portfile.cmake b/ports/alembic/portfile.cmake index 8bc4d98ec..a44771ab2 100644 --- a/ports/alembic/portfile.cmake +++ b/ports/alembic/portfile.cmake @@ -8,8 +8,8 @@ endif() vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO alembic/alembic - REF 1.7.6 - SHA512 d77aab41cec66b0565b20ec54604754ed6ef83c97d6d27e161b1cdc28af96d624db438cf70d449166c07b8f9f281f14aeb29f9de91ccc06fb6d2934e4c46ef3a + REF 1.7.7 + SHA512 0ebcf6b9304e84bc60f1c146d0b5e5c5b1de43974ec0725293c444b48b22640945f5883eb9afd46c1ac9f0c260d6f22ff29b4866d6525c416339877be984b149 HEAD_REF master ) -- cgit v1.2.3 From 9c6698ab3446d7aed55103f785f0c00919a949fe Mon Sep 17 00:00:00 2001 From: Robert Schumacher Date: Sun, 25 Mar 2018 10:29:20 -0700 Subject: [lcm] Disable unexpected components. Only install one flavor. Don't delete DLL. --- ports/lcm/CONTROL | 2 +- ports/lcm/only-install-one-flavor.patch | 19 +++++++++++++++++++ ports/lcm/portfile.cmake | 30 ++++++++++++++++++++++++++---- 3 files changed, 46 insertions(+), 5 deletions(-) create mode 100644 ports/lcm/only-install-one-flavor.patch diff --git a/ports/lcm/CONTROL b/ports/lcm/CONTROL index e6b9803fe..0cca68404 100644 --- a/ports/lcm/CONTROL +++ b/ports/lcm/CONTROL @@ -1,5 +1,5 @@ Source: lcm -Version: 1.3.95 +Version: 1.3.95-1 Build-Depends: glib Description: Lightweight Communications and Marshalling (LCM) LCM is a set of libraries and tools for message passing and data marshalling, targeted at real-time systems where high-bandwidth and low latency are critical. It provides a publish/subscribe message passing model and automatic marshalling/unmarshalling code generation with bindings for applications in a variety of programming languages. diff --git a/ports/lcm/only-install-one-flavor.patch b/ports/lcm/only-install-one-flavor.patch new file mode 100644 index 000000000..d22b83c23 --- /dev/null +++ b/ports/lcm/only-install-one-flavor.patch @@ -0,0 +1,19 @@ +diff --git a/lcm/CMakeLists.txt b/lcm/CMakeLists.txt +index a706a85..639ec12 100644 +--- a/lcm/CMakeLists.txt ++++ b/lcm/CMakeLists.txt +@@ -76,8 +76,12 @@ endif() + target_include_directories(lcm-coretypes INTERFACE + $ + ) +- +-install(TARGETS lcm-coretypes lcm-static lcm ++if(BUILD_SHARED_LIBS) ++ set(INSTALL_TARGETS lcm) ++else() ++ set(INSTALL_TARGETS lcm-static) ++endif() ++install(TARGETS lcm-coretypes ${INSTALL_TARGETS} + EXPORT lcmTargets + RUNTIME DESTINATION bin + LIBRARY DESTINATION lib${LIB_SUFFIX} diff --git a/ports/lcm/portfile.cmake b/ports/lcm/portfile.cmake index 98f34e2ca..b50139f62 100644 --- a/ports/lcm/portfile.cmake +++ b/ports/lcm/portfile.cmake @@ -8,15 +8,24 @@ vcpkg_from_github( HEAD_REF master ) +vcpkg_apply_patches( + SOURCE_PATH ${SOURCE_PATH} + PATCHES ${CMAKE_CURRENT_LIST_DIR}/only-install-one-flavor.patch +) + vcpkg_configure_cmake( SOURCE_PATH ${SOURCE_PATH} PREFER_NINJA OPTIONS + -DLCM_ENABLE_JAVA=OFF + -DLCM_ENABLE_LUA=OFF + -DLCM_ENABLE_PYTHON=OFF -DLCM_ENABLE_TESTS=OFF + -DLCM_INSTALL_M4MACROS=OFF + -DLCM_INSTALL_PKGCONFIG=OFF ) vcpkg_install_cmake() -vcpkg_copy_pdbs() vcpkg_fixup_cmake_targets(CONFIG_PATH cmake) file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include) @@ -25,9 +34,22 @@ file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/share/aclocal) file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/share/java) file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/share/man) -file(COPY ${CURRENT_PACKAGES_DIR}/bin/lcm-gen.exe DESTINATION ${CURRENT_PACKAGES_DIR}/tools/lcm) +file(GLOB EXES ${CURRENT_PACKAGES_DIR}/bin/*.exe) +if(EXES) + file(COPY ${EXES} DESTINATION ${CURRENT_PACKAGES_DIR}/tools/lcm) + file(REMOVE ${EXES}) +endif() +file(GLOB DEBUG_EXES ${CURRENT_PACKAGES_DIR}/debug/bin/*.exe) +if(DEBUG_EXES) + file(REMOVE ${DEBUG_EXES}) +endif() + +if(VCPKG_LIBRARY_LINKAGE STREQUAL "static") + file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/bin ${CURRENT_PACKAGES_DIR}/debug/bin) +endif() + vcpkg_copy_tool_dependencies(${CURRENT_PACKAGES_DIR}/tools/lcm) -file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/bin) -file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/bin) file(INSTALL ${SOURCE_PATH}/COPYING DESTINATION ${CURRENT_PACKAGES_DIR}/share/lcm RENAME copyright) + +vcpkg_copy_pdbs() -- cgit v1.2.3 From dc193dd9e50d19f5e3272298d7990f288f702486 Mon Sep 17 00:00:00 2001 From: Robert Schumacher Date: Sun, 25 Mar 2018 10:49:35 -0700 Subject: [libuuid] Initial commit of 1.0.3 --- ports/libuuid/CMakeLists.txt | 35 +++++++++++++++++++++++++++++++++++ ports/libuuid/CONTROL | 3 +++ ports/libuuid/config.linux.h | 13 +++++++++++++ ports/libuuid/portfile.cmake | 29 +++++++++++++++++++++++++++++ 4 files changed, 80 insertions(+) create mode 100644 ports/libuuid/CMakeLists.txt create mode 100644 ports/libuuid/CONTROL create mode 100644 ports/libuuid/config.linux.h create mode 100644 ports/libuuid/portfile.cmake diff --git a/ports/libuuid/CMakeLists.txt b/ports/libuuid/CMakeLists.txt new file mode 100644 index 000000000..a4335f1a8 --- /dev/null +++ b/ports/libuuid/CMakeLists.txt @@ -0,0 +1,35 @@ +cmake_minimum_required(VERSION 3.0) +project(libuuid C) + +configure_file(config.linux.h config.h COPYONLY) + +include_directories(${CMAKE_CURRENT_BINARY_DIR}) + +add_library(uuid STATIC + clear.c + compare.c + copy.c + gen_uuid.c + isnull.c + pack.c + parse.c + randutils.c + unpack.c + unparse.c + uuid_time.c +) +target_compile_options(uuid PRIVATE -include "${CMAKE_CURRENT_BINARY_DIR}/config.h") + +add_executable(test_uuid test_uuid.c) +target_link_libraries(test_uuid uuid) + +if(CMAKE_BUILD_TYPE STREQUAL "Release") + install(FILES uuid.h DESTINATION include) +endif() + +install( + TARGETS uuid + RUNTIME DESTINATION bin + LIBRARY DESTINATION lib + ARCHIVE DESTINATION lib +) diff --git a/ports/libuuid/CONTROL b/ports/libuuid/CONTROL new file mode 100644 index 000000000..bfec975dd --- /dev/null +++ b/ports/libuuid/CONTROL @@ -0,0 +1,3 @@ +Source: libuuid +Version: 1.0.3 +Description: Universally unique id library diff --git a/ports/libuuid/config.linux.h b/ports/libuuid/config.linux.h new file mode 100644 index 000000000..38b53cac1 --- /dev/null +++ b/ports/libuuid/config.linux.h @@ -0,0 +1,13 @@ +#define HAVE_DECL__SC_HOST_NAME_MAX 1 +#define HAVE_INTTYPES_H 1 +#define HAVE_NETINET_IN_H 1 +#define HAVE_SRANDOM 1 +#define HAVE_STDINT_H 1 +#define HAVE_STDLIB_H 1 +#define HAVE_SYS_FILE_H 1 +#define HAVE_SYS_IOCTL_H 1 +#define HAVE_SYS_SOCKET_H 1 +#define HAVE_SYS_TIME_H 1 +#define HAVE_UNISTD_H 1 +#define HAVE_USLEEP 1 +#define PACKAGE_STRING "libuuid 1.0.3" diff --git a/ports/libuuid/portfile.cmake b/ports/libuuid/portfile.cmake new file mode 100644 index 000000000..7989e830d --- /dev/null +++ b/ports/libuuid/portfile.cmake @@ -0,0 +1,29 @@ +include(vcpkg_common_functions) + +set(SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src/libuuid-1.0.3) +vcpkg_download_distfile(ARCHIVE + URLS "http://sourceforge.net/projects/libuuid/files/libuuid-1.0.3.tar.gz" + FILENAME libuuid-1.0.3.tar.gz + SHA512 77488caccc66503f6f2ded7bdfc4d3bc2c20b24a8dc95b2051633c695e99ec27876ffbafe38269b939826e1fdb06eea328f07b796c9e0aaca12331a787175507 +) + +vcpkg_extract_source_archive(${ARCHIVE}) + +file(COPY + ${CMAKE_CURRENT_LIST_DIR}/CMakeLists.txt + ${CMAKE_CURRENT_LIST_DIR}/config.linux.h + DESTINATION ${SOURCE_PATH} +) + +vcpkg_configure_cmake( + SOURCE_PATH ${SOURCE_PATH} + PREFER_NINJA +) + +vcpkg_install_cmake() + +file(INSTALL + ${SOURCE_PATH}/COPYING + DESTINATION ${CURRENT_PACKAGES_DIR}/share/libuuid RENAME copyright) + +vcpkg_copy_pdbs() -- cgit v1.2.3 From afe6d4f3bba8eec5d3acc644cba61fa192bd37d2 Mon Sep 17 00:00:00 2001 From: jasjuang Date: Sun, 25 Mar 2018 18:54:19 -0700 Subject: [ceres] update to 1.14 --- ports/ceres/CONTROL | 2 +- ports/ceres/portfile.cmake | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/ports/ceres/CONTROL b/ports/ceres/CONTROL index f2b20f8d3..3f60a3312 100644 --- a/ports/ceres/CONTROL +++ b/ports/ceres/CONTROL @@ -1,5 +1,5 @@ Source: ceres -Version: 1.13.0-4 +Version: 1.14.0 # eigen is always required by CMake, even if it isn't used. Build-Depends: glog, eigen3 Description: non-linear optimization package diff --git a/ports/ceres/portfile.cmake b/ports/ceres/portfile.cmake index 8a2b88a35..b6dfacf9f 100644 --- a/ports/ceres/portfile.cmake +++ b/ports/ceres/portfile.cmake @@ -11,8 +11,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO ceres-solver/ceres-solver - REF 1.13.0 - SHA512 b548a303d1d4eeb75545551c381624879e363a2eba13cdd998fb3bea9bd51f6b9215b579d59d6133117b70d8bf35e18b983400c3d6200403210c18fcb1886ebb + REF 1.14.0 + SHA512 6dddddf5bd5834332a69add468578ad527e4d94fe85c9751ddf5fe9ad11a34918bdd9c994c49dd6ffc398333d0ac9752ac89aaef1293e2fe0a55524e303d415d HEAD_REF master ) -- cgit v1.2.3 From 568d9e727ec8a45c5c445130d1f9a55c651a1431 Mon Sep 17 00:00:00 2001 From: jasjuang Date: Sun, 25 Mar 2018 19:15:43 -0700 Subject: [dlib] update to 19.10 --- ports/dlib/CONTROL | 2 +- ports/dlib/portfile.cmake | 5 +++-- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/ports/dlib/CONTROL b/ports/dlib/CONTROL index d711849f0..6863fa130 100644 --- a/ports/dlib/CONTROL +++ b/ports/dlib/CONTROL @@ -1,5 +1,5 @@ Source: dlib -Version: 19.9-1 +Version: 19.10 Build-Depends: libjpeg-turbo, libpng, sqlite3, fftw3, openblas, clapack Description: Modern C++ toolkit containing machine learning algorithms and tools for creating complex software in C++ diff --git a/ports/dlib/portfile.cmake b/ports/dlib/portfile.cmake index cf3ae4079..ba3cb3ec4 100644 --- a/ports/dlib/portfile.cmake +++ b/ports/dlib/portfile.cmake @@ -3,8 +3,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO davisking/dlib - REF v19.9 - SHA512 1e2123c22e1b13cc84108fa627bfa92eadc9dee63f93a9f45676bbf2b752c8728117d915ac327f5223b0cdbce87dd3bef2f4d8d5ed3f8f5a314ffa9e8962a246 + REF v19.10 + SHA512 88c5b41c12219e6166c6621b654b3869ca4a2af777a8fa55429b833b90b048e3e74ea7ad752d7440809b8171bbd38090cb24a29770391fc3a9d53f9a5fba3341 HEAD_REF master ) @@ -35,6 +35,7 @@ vcpkg_configure_cmake( -DDLIB_USE_CUDA=${WITH_CUDA} -DDLIB_GIF_SUPPORT=OFF -DDLIB_USE_MKL_FFT=OFF + -DCMAKE_WINDOWS_EXPORT_ALL_SYMBOLS=TRUE OPTIONS_DEBUG -DDLIB_ENABLE_ASSERTS=ON #-DDLIB_ENABLE_STACK_TRACE=ON -- cgit v1.2.3 From 4a675d467f68b7b6db950f39e21d509c3e3cd20c Mon Sep 17 00:00:00 2001 From: Robert Schumacher Date: Mon, 26 Mar 2018 08:13:29 -0700 Subject: [qt5-base] Fix regression. Fixes #3133. --- ports/qt5-base/portfile.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ports/qt5-base/portfile.cmake b/ports/qt5-base/portfile.cmake index 39498b4a3..c398b4370 100644 --- a/ports/qt5-base/portfile.cmake +++ b/ports/qt5-base/portfile.cmake @@ -42,7 +42,7 @@ file(REMOVE_RECURSE ${SOURCE_PATH}/include/QtZlib) vcpkg_apply_patches( SOURCE_PATH ${SOURCE_PATH} PATCHES -# "${CMAKE_CURRENT_LIST_DIR}/fix-system-pcre2.patch" + "${CMAKE_CURRENT_LIST_DIR}/fix-system-pcre2.patch" "${CMAKE_CURRENT_LIST_DIR}/fix-system-freetype.patch" ) -- cgit v1.2.3 From 3e33a7751e4d09fd5d5b9aead9b4ad8d7d9bd3e7 Mon Sep 17 00:00:00 2001 From: Sergey Podobry Date: Mon, 26 Mar 2018 18:14:06 +0300 Subject: [plog] Update to 1.1.4 (#3129) --- ports/plog/CONTROL | 6 +++--- ports/plog/portfile.cmake | 34 +++++++++++++++++----------------- 2 files changed, 20 insertions(+), 20 deletions(-) diff --git a/ports/plog/CONTROL b/ports/plog/CONTROL index 091778688..d1abd52a6 100644 --- a/ports/plog/CONTROL +++ b/ports/plog/CONTROL @@ -1,3 +1,3 @@ -Source: plog -Version: 1.1.3 -Description: Portable, simple and extensible C++ logging library. +Source: plog +Version: 1.1.4 +Description: Portable, simple and extensible C++ logging library. diff --git a/ports/plog/portfile.cmake b/ports/plog/portfile.cmake index 5cc0dfbd4..847f2bd37 100644 --- a/ports/plog/portfile.cmake +++ b/ports/plog/portfile.cmake @@ -1,17 +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") +# Header-only library +include(vcpkg_common_functions) + +vcpkg_from_github( + OUT_SOURCE_PATH SOURCE_PATH + REPO SergiusTheBest/plog + REF 1.1.4 + SHA512 7af75af8343460d62e04cc0c27d4cf86373b136df73d2312d19a2e57fa309e916cef8625b8eed1b7270b93aa5d1ff27aee6edb74beb138e3a21c06a3c3debb41 + 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") -- cgit v1.2.3 From 6dc98bbcee6a00269dd93d61950d8ab4c55c3d0b Mon Sep 17 00:00:00 2001 From: Robert Schumacher Date: Mon, 26 Mar 2018 08:37:41 -0700 Subject: [aws-sdk-cpp] Remove polly-sample feature. Fixes #3123. --- ports/aws-sdk-cpp/CONTROL | 3 --- ports/aws-sdk-cpp/compute_build_only.cmake | 3 --- ports/aws-sdk-cpp/generateFeatures.ps1 | 5 +++-- 3 files changed, 3 insertions(+), 8 deletions(-) diff --git a/ports/aws-sdk-cpp/CONTROL b/ports/aws-sdk-cpp/CONTROL index 09b1c1a7f..44d263676 100644 --- a/ports/aws-sdk-cpp/CONTROL +++ b/ports/aws-sdk-cpp/CONTROL @@ -304,9 +304,6 @@ Description: C++ SDK for the AWS pinpoint service Feature: polly Description: C++ SDK for the AWS polly service -Feature: polly-sample -Description: C++ SDK for the AWS polly-sample service - Feature: pricing Description: C++ SDK for the AWS pricing service diff --git a/ports/aws-sdk-cpp/compute_build_only.cmake b/ports/aws-sdk-cpp/compute_build_only.cmake index de24a203a..a50ed2128 100644 --- a/ports/aws-sdk-cpp/compute_build_only.cmake +++ b/ports/aws-sdk-cpp/compute_build_only.cmake @@ -299,9 +299,6 @@ endif() if("polly" IN_LIST FEATURES) list(APPEND BUILD_ONLY polly) endif() -if("polly-sample" IN_LIST FEATURES) - list(APPEND BUILD_ONLY polly-sample) -endif() if("pricing" IN_LIST FEATURES) list(APPEND BUILD_ONLY pricing) endif() diff --git a/ports/aws-sdk-cpp/generateFeatures.ps1 b/ports/aws-sdk-cpp/generateFeatures.ps1 index cd61a794f..8c8b1a342 100644 --- a/ports/aws-sdk-cpp/generateFeatures.ps1 +++ b/ports/aws-sdk-cpp/generateFeatures.ps1 @@ -30,6 +30,7 @@ function GetDescription($dir, $modulename) $subfolders | % { $modulename = $_.name -replace "^aws-cpp-sdk-","" if ($modulename -match "-tests`$") { return } + if ($modulename -match "-sample`$") { return } if ($modulename -eq "core") { return } $controltext += @("") @@ -44,7 +45,7 @@ $subfolders | % { } Write-Verbose ($controltext -join "`n") -$controltext | out-file -enc ascii $ControlFile +[IO.File]::WriteAllText($ControlFile, ($controltext -join "`n")+"`n") Write-Verbose ($cmakefragmenttext -join "`n") -$cmakefragmenttext | out-file -enc ascii $CMakeFragmentFile +[IO.File]::WriteAllText($CMakeFragmentFile, ($cmakefragmenttext -join "`n") +"`n") -- cgit v1.2.3 From 64ab9dc274c352f9999f2cc4e8f7f6830cc56c42 Mon Sep 17 00:00:00 2001 From: Robert Schumacher Date: Mon, 26 Mar 2018 11:58:37 -0700 Subject: [ceres] Use gflags config file + ninja. Fixes #3116. --- ports/ceres/CONTROL | 2 +- ports/ceres/portfile.cmake | 3 ++- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/ports/ceres/CONTROL b/ports/ceres/CONTROL index 3f60a3312..208082de7 100644 --- a/ports/ceres/CONTROL +++ b/ports/ceres/CONTROL @@ -1,5 +1,5 @@ Source: ceres -Version: 1.14.0 +Version: 1.14.0-1 # eigen is always required by CMake, even if it isn't used. Build-Depends: glog, eigen3 Description: non-linear optimization package diff --git a/ports/ceres/portfile.cmake b/ports/ceres/portfile.cmake index b6dfacf9f..7267be402 100644 --- a/ports/ceres/portfile.cmake +++ b/ports/ceres/portfile.cmake @@ -46,6 +46,7 @@ endif() vcpkg_configure_cmake( SOURCE_PATH ${SOURCE_PATH} + PREFER_NINJA OPTIONS -DEXPORT_BUILD_DIR=ON -DBUILD_EXAMPLES=OFF @@ -55,7 +56,7 @@ vcpkg_configure_cmake( -DEIGENSPARSE=${EIGENSPARSE} -DLAPACK=${LAPACK} -DSUITESPARSE=${SUITESPARSE} - -DGFLAGS_PREFER_EXPORTED_GFLAGS_CMAKE_CONFIGURATION=OFF # TheiaSfm doesn't work well with this + -DGFLAGS_PREFER_EXPORTED_GFLAGS_CMAKE_CONFIGURATION=ON -DGLOG_PREFER_EXPORTED_GLOG_CMAKE_CONFIGURATION=OFF # TheiaSfm doesn't work well with this -DMSVC_USE_STATIC_CRT=${MSVC_USE_STATIC_CRT_VALUE} ) -- cgit v1.2.3 From 4596c6436168c9ff80ef971d75853752c7462479 Mon Sep 17 00:00:00 2001 From: Alisayyy-Yang Date: Mon, 26 Mar 2018 23:43:48 -0700 Subject: force static build when dynamic for the yoga --- ports/yoga/portfile.cmake | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/ports/yoga/portfile.cmake b/ports/yoga/portfile.cmake index e6dc1c709..d61017d63 100644 --- a/ports/yoga/portfile.cmake +++ b/ports/yoga/portfile.cmake @@ -12,7 +12,8 @@ include(vcpkg_common_functions) if (VCPKG_LIBRARY_LINKAGE STREQUAL dynamic) - message(FATAL_ERROR "Error: Dynamic building not supported yet.") + message(WARNING "Dynamic not supported building static") + set(VCPKG_LIBRARY_LINKAGE static) elseif (VCPKG_CMAKE_SYSTEM_NAME STREQUAL WindowsStore) message(FATAL_ERROR "Error: UWP builds not supported yet.") endif() -- cgit v1.2.3 From 930b1984afdc209746715dc4becaad7f27e68089 Mon Sep 17 00:00:00 2001 From: Alisa Yang Date: Tue, 27 Mar 2018 00:10:48 -0700 Subject: force static build when dynamic --- ports/recast/portfile.cmake | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/ports/recast/portfile.cmake b/ports/recast/portfile.cmake index 9c26131da..8543fe5c3 100644 --- a/ports/recast/portfile.cmake +++ b/ports/recast/portfile.cmake @@ -1,5 +1,10 @@ include(vcpkg_common_functions) +if (VCPKG_LIBRARY_LINKAGE STREQUAL dynamic) + message(WARNING "Dynamic not supported .") + set(VCPKG_LIBRARY_LINKAGE static) +endif() + vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO recastnavigation/recastnavigation -- cgit v1.2.3 From 6e6f90c2731aa3f53ba0919b876e2c60a5931a38 Mon Sep 17 00:00:00 2001 From: Alisa Yang Date: Tue, 27 Mar 2018 00:27:43 -0700 Subject: force static build when dynamic --- ports/recast/portfile.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ports/recast/portfile.cmake b/ports/recast/portfile.cmake index 8543fe5c3..e0670dbae 100644 --- a/ports/recast/portfile.cmake +++ b/ports/recast/portfile.cmake @@ -1,7 +1,7 @@ include(vcpkg_common_functions) if (VCPKG_LIBRARY_LINKAGE STREQUAL dynamic) - message(WARNING "Dynamic not supported .") + message(WARNING "Dynamic not supported building static") set(VCPKG_LIBRARY_LINKAGE static) endif() -- cgit v1.2.3 From 72758773321476dcbb7b9d18f11bf57134bb4545 Mon Sep 17 00:00:00 2001 From: Alexander Karatarakis Date: Tue, 27 Mar 2018 03:04:05 -0700 Subject: [ps1] Fixes/tweaks --- scripts/VcpkgPowershellUtils.ps1 | 13 ++++++------- scripts/fetchTool.ps1 | 2 +- 2 files changed, 7 insertions(+), 8 deletions(-) diff --git a/scripts/VcpkgPowershellUtils.ps1 b/scripts/VcpkgPowershellUtils.ps1 index d9c9e3760..bc84afa7f 100644 --- a/scripts/VcpkgPowershellUtils.ps1 +++ b/scripts/VcpkgPowershellUtils.ps1 @@ -110,9 +110,9 @@ function vcpkgGetSHA256([Parameter(Mandatory=$true)][string]$filePath) function vcpkgCheckEqualFileHash( [Parameter(Mandatory=$true)][string]$filePath, [Parameter(Mandatory=$true)][string]$expectedHash, - [Parameter(Mandatory=$true)][string]$actualHash ) + [Parameter(Mandatory=$true)][string]$actualHash) { - if ($expectedDownloadedFileHash -ne $downloadedFileHash) + if ($expectedHash -ne $actualHash) { Write-Host ("`nFile does not have expected hash:`n" + " File path: [ $filePath ]`n" + @@ -150,7 +150,6 @@ function vcpkgDownloadFile( [Parameter(Mandatory=$true)][string]$url, $downloadPartPath = "$downloadPath.part" vcpkgRemoveItem $downloadPartPath - $wc = New-Object System.Net.WebClient if (!$wc.Proxy.IsBypassed($url)) { @@ -161,7 +160,7 @@ function vcpkgDownloadFile( [Parameter(Mandatory=$true)][string]$url, Move-Item -Path $downloadPartPath -Destination $downloadPath } -function vcpkgExtractFile( [Parameter(Mandatory=$true)][string]$file, +function vcpkgExtractFile( [Parameter(Mandatory=$true)][string]$archivePath, [Parameter(Mandatory=$true)][string]$destinationDir, [Parameter(Mandatory=$true)][string]$outFilename) { @@ -176,18 +175,18 @@ function vcpkgExtractFile( [Parameter(Mandatory=$true)][string]$file, if (vcpkgHasCommand -commandName 'Microsoft.PowerShell.Archive\Expand-Archive') { Write-Verbose("Extracting with Microsoft.PowerShell.Archive\Expand-Archive") - Microsoft.PowerShell.Archive\Expand-Archive -path $file -destinationpath $destinationPartial + Microsoft.PowerShell.Archive\Expand-Archive -path $archivePath -destinationpath $destinationPartial } elseif (vcpkgHasCommand -commandName 'Pscx\Expand-Archive') { Write-Verbose("Extracting with Pscx\Expand-Archive") - Pscx\Expand-Archive -path $file -OutputPath $destinationPartial + Pscx\Expand-Archive -path $archivePath -OutputPath $destinationPartial } else { Write-Verbose("Extracting via shell") $shell = new-object -com shell.application - $zip = $shell.NameSpace($(Get-Item $file).fullname) + $zip = $shell.NameSpace($(Get-Item $archivePath).fullname) foreach($item in $zip.items()) { # Piping to Out-Null is used to block until finished diff --git a/scripts/fetchTool.ps1 b/scripts/fetchTool.ps1 index ff9b5d9bf..a52986553 100644 --- a/scripts/fetchTool.ps1 +++ b/scripts/fetchTool.ps1 @@ -47,7 +47,7 @@ function fetchToolInternal([Parameter(Mandatory=$true)][string]$tool) { Write-Host "Downloading $tool..." vcpkgDownloadFile $url $downloadPath - Write-Host "Downloading $tool has completed successfully." + Write-Host "Downloading $tool... done." } $expectedDownloadedFileHash = @($toolData.sha256)[0] -- cgit v1.2.3 From 72194ae8a0e435aee63b8e40f585646247672e3b Mon Sep 17 00:00:00 2001 From: Alexander Karatarakis Date: Tue, 27 Mar 2018 04:08:57 -0700 Subject: [ps1] More fixes/tweaks --- scripts/VcpkgPowershellUtils.ps1 | 7 +++++-- scripts/fetchTool.ps1 | 7 ++++--- 2 files changed, 9 insertions(+), 5 deletions(-) diff --git a/scripts/VcpkgPowershellUtils.ps1 b/scripts/VcpkgPowershellUtils.ps1 index bc84afa7f..92e0f21d0 100644 --- a/scripts/VcpkgPowershellUtils.ps1 +++ b/scripts/VcpkgPowershellUtils.ps1 @@ -194,11 +194,14 @@ function vcpkgExtractFile( [Parameter(Mandatory=$true)][string]$archivePath, } } - $itemCount = @(Get-ChildItem "$destinationPartial").Count + $items = @(Get-ChildItem "$destinationPartial") + $itemCount = $items.Count if ($itemCount -eq 1) { - Move-Item -Path "$destinationPartial\*" -Destination $output + $item = $items | Select-Object -first 1 + Write-Host "$item" + Move-Item -Path "$destinationPartial\$item" -Destination $output vcpkgRemoveItem $destinationPartial } else diff --git a/scripts/fetchTool.ps1 b/scripts/fetchTool.ps1 index a52986553..af6d4d1d9 100644 --- a/scripts/fetchTool.ps1 +++ b/scripts/fetchTool.ps1 @@ -58,13 +58,14 @@ function fetchToolInternal([Parameter(Mandatory=$true)][string]$tool) { $outFilename = (Get-ChildItem $downloadPath).BaseName Write-Host "Extracting $tool..." - vcpkgExtractFile -File $downloadPath -DestinationDir $downloadsDir -outFilename $outFilename - Write-Host "Extracting $tool has completed successfully." + vcpkgExtractFile -ArchivePath $downloadPath -DestinationDir $downloadsDir -outFilename $outFilename + Write-Host "Extracting $tool... done." } if (-not (Test-Path $exePath)) { - throw ("Could not detect or download " + $tool) + Write-Error "Could not detect or download $tool" + throw } return $exePath -- cgit v1.2.3 From cfd0d9c0e2e90227532f36343907f95908a1864d Mon Sep 17 00:00:00 2001 From: Robert Schumacher Date: Mon, 26 Mar 2018 17:21:46 -0700 Subject: [vcpkg-find-acquire-program] Update version of YASM --- ports/ffmpeg/CONTROL | 2 +- ports/libvpx/CONTROL | 2 +- ports/mpg123/CONTROL | 2 +- scripts/cmake/vcpkg_find_acquire_program.cmake | 17 ++++++++++++----- 4 files changed, 15 insertions(+), 8 deletions(-) diff --git a/ports/ffmpeg/CONTROL b/ports/ffmpeg/CONTROL index 2f635cc10..7688f67f9 100644 --- a/ports/ffmpeg/CONTROL +++ b/ports/ffmpeg/CONTROL @@ -1,5 +1,5 @@ Source: ffmpeg -Version: 3.3.3-4 +Version: 3.3.3-5 Description: a library to decode, encode, transcode, mux, demux, stream, filter and play pretty much anything that humans and machines have created. FFmpeg is the leading multimedia framework, able to decode, encode, transcode, mux, demux, stream, filter and play pretty much anything that humans and machines have created. It supports the most obscure ancient formats up to the cutting edge. No matter if they were designed by some standards committee, the community or a corporation. It is also highly portable: FFmpeg compiles, runs, and passes our testing infrastructure FATE across Linux, Mac OS X, Microsoft Windows, the BSDs, Solaris, etc. under a wide variety of build environments, machine architectures, and configurations. diff --git a/ports/libvpx/CONTROL b/ports/libvpx/CONTROL index b4cfa55f4..6095c6de6 100644 --- a/ports/libvpx/CONTROL +++ b/ports/libvpx/CONTROL @@ -1,3 +1,3 @@ Source: libvpx -Version: 1.6.1-1 +Version: 1.6.1-2 Description: The reference software implementation for the video coding formats VP8 and VP9. diff --git a/ports/mpg123/CONTROL b/ports/mpg123/CONTROL index 7eba5e9b8..488ca7a90 100644 --- a/ports/mpg123/CONTROL +++ b/ports/mpg123/CONTROL @@ -1,3 +1,3 @@ Source: mpg123 -Version: 1.25.8-3 +Version: 1.25.8-4 Description: mpg123 is a real time MPEG 1.0/2.0/2.5 audio player/decoder for layers 1, 2 and 3 (MPEG 1.0 layer 3 also known as MP3). \ No newline at end of file diff --git a/scripts/cmake/vcpkg_find_acquire_program.cmake b/scripts/cmake/vcpkg_find_acquire_program.cmake index 083b86fc2..64d0c7599 100644 --- a/scripts/cmake/vcpkg_find_acquire_program.cmake +++ b/scripts/cmake/vcpkg_find_acquire_program.cmake @@ -40,6 +40,7 @@ function(vcpkg_find_acquire_program VAR) endif() unset(NOEXTRACT) + unset(_vfa_RENAME) unset(SUBDIR) unset(REQUIRED_INTERPRETER) @@ -67,11 +68,13 @@ function(vcpkg_find_acquire_program VAR) set(HASH df7aaba094e17832688c88993997612a2e2c96cc3dc14ca3e8347b44c7762115f5a7fc6d7f20be402553aaa4c9e43ddfcf6228f581cfe89289bae550de151b36) elseif(VAR MATCHES "YASM") set(PROGNAME yasm) - set(PATHS ${DOWNLOADS}/tools/yasm) - set(URL "http://www.tortall.net/projects/yasm/releases/yasm-1.3.0-win32.exe") - set(ARCHIVE "yasm.exe") + set(SUBDIR 1.3.0.6) + set(PATHS ${DOWNLOADS}/tools/yasm/${SUBDIR}) + set(URL "https://www.tortall.net/projects/yasm/snapshots/v1.3.0.6.g1962/yasm-1.3.0.6.g1962.exe") + set(ARCHIVE "yasm-1.3.0.6.g1962.exe") + set(_vfa_RENAME "yasm.exe") set(NOEXTRACT ON) - set(HASH 850b26be5bbbdaeaf45ac39dd27f69f1a85e600c35afbd16b9f621396b3c7a19863ea3ff316b025b578fce0a8280eef2203306a2b3e46ee1389abb65313fb720) + set(HASH c1945669d983b632a10c5ff31e86d6ecbff143c3d8b2c433c0d3d18f84356d2b351f71ac05fd44e5403651b00c31db0d14615d7f9a6ecce5750438d37105c55b) elseif(VAR MATCHES "PYTHON3") set(PROGNAME python) set(SUBDIR "python3") @@ -205,7 +208,11 @@ function(vcpkg_find_acquire_program VAR) file(MAKE_DIRECTORY ${DOWNLOADS}/tools/${PROGNAME}/${SUBDIR}) if(DEFINED NOEXTRACT) - file(COPY ${ARCHIVE_PATH} DESTINATION ${DOWNLOADS}/tools/${PROGNAME}/${SUBDIR}) + if(DEFINED _vfa_RENAME) + file(INSTALL ${ARCHIVE_PATH} DESTINATION ${DOWNLOADS}/tools/${PROGNAME}/${SUBDIR} RENAME ${_vfa_RENAME}) + else() + file(COPY ${ARCHIVE_PATH} DESTINATION ${DOWNLOADS}/tools/${PROGNAME}/${SUBDIR}) + endif() else() get_filename_component(ARCHIVE_EXTENSION ${ARCHIVE} EXT) string(TOLOWER "${ARCHIVE_EXTENSION}" ARCHIVE_EXTENSION) -- cgit v1.2.3 From 02185b60828ded3f89f2a7f2cf75402d00dde123 Mon Sep 17 00:00:00 2001 From: Robert Schumacher Date: Tue, 27 Mar 2018 08:47:57 -0700 Subject: [aubio] Fix missing required dependencies --- ports/aubio/CONTROL | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/ports/aubio/CONTROL b/ports/aubio/CONTROL index 945157c7e..6f5daa30a 100644 --- a/ports/aubio/CONTROL +++ b/ports/aubio/CONTROL @@ -1,4 +1,4 @@ Source: aubio -Version: 0.4.6-1 +Version: 0.4.6-2 Description: Aubio is a tool designed for the extraction of annotations from audio signals. Its features include segmenting a sound file before each of its attacks, performing pitch detection, tapping the beat and producing midi streams from live audio. -Build-Depends: ffmpeg, libsndfile, libogg, libflac, libvorbis +Build-Depends: ffmpeg, libsndfile, libogg, libflac, libvorbis, bzip2, liblzma -- cgit v1.2.3 From 26187d1bed865f472caa2dcd2f154a72f7f6d045 Mon Sep 17 00:00:00 2001 From: Robert Schumacher Date: Tue, 27 Mar 2018 09:09:38 -0700 Subject: [qt5-base] Fix pcre2 reference on non-Windows --- ports/qt5-base/fix-system-pcre2-linux.patch | 17 +++++++++++++++++ ports/qt5-base/portfile.cmake | 1 + 2 files changed, 18 insertions(+) create mode 100644 ports/qt5-base/fix-system-pcre2-linux.patch diff --git a/ports/qt5-base/fix-system-pcre2-linux.patch b/ports/qt5-base/fix-system-pcre2-linux.patch new file mode 100644 index 000000000..c5669a4c9 --- /dev/null +++ b/ports/qt5-base/fix-system-pcre2-linux.patch @@ -0,0 +1,17 @@ +diff --git a/src/corelib/configure.json b/src/corelib/configure.json +index a5a1b66..5a48a05 100644 +--- a/src/corelib/configure.json ++++ b/src/corelib/configure.json +@@ -163,8 +163,10 @@ + "builds": { + "debug": "-lpcre2-16d", + "release": "-lpcre2-16" +- } +- } ++ }, ++ "condition": "config.win32" ++ }, ++ { "libs": "-lpcre2-16", "condition": "!config.win32" } + ] + }, + "pps": { diff --git a/ports/qt5-base/portfile.cmake b/ports/qt5-base/portfile.cmake index c398b4370..e01365fe9 100644 --- a/ports/qt5-base/portfile.cmake +++ b/ports/qt5-base/portfile.cmake @@ -44,6 +44,7 @@ vcpkg_apply_patches( PATCHES "${CMAKE_CURRENT_LIST_DIR}/fix-system-pcre2.patch" "${CMAKE_CURRENT_LIST_DIR}/fix-system-freetype.patch" + "${CMAKE_CURRENT_LIST_DIR}/fix-system-pcre2-linux.patch" ) # This fixes issues on machines with default codepages that are not ASCII compatible, such as some CJK encodings -- cgit v1.2.3 From 45d31162c25e168c46d9dd0f3f00e49edf625f21 Mon Sep 17 00:00:00 2001 From: Alexander Karatarakis Date: Tue, 27 Mar 2018 17:48:33 -0700 Subject: [ps1] Remove extraneous function --- scripts/fetchTool.ps1 | 93 ++++++++++++++++++++++++--------------------------- 1 file changed, 43 insertions(+), 50 deletions(-) diff --git a/scripts/fetchTool.ps1 b/scripts/fetchTool.ps1 index af6d4d1d9..8cf8002bc 100644 --- a/scripts/fetchTool.ps1 +++ b/scripts/fetchTool.ps1 @@ -13,64 +13,57 @@ $vcpkgRootDir = vcpkgFindFileRecursivelyUp $scriptsDir .vcpkg-root $downloadsDir = "$vcpkgRootDir\downloads" vcpkgCreateDirectoryIfNotExists $downloadsDir -function fetchToolInternal([Parameter(Mandatory=$true)][string]$tool) -{ - $tool = $tool.toLower() - - [xml]$asXml = Get-Content "$scriptsDir\vcpkgTools.xml" - $toolData = $asXml.SelectSingleNode("//tools/tool[@name=`"$tool`"]") # Case-sensitive! +$tool = $tool.toLower() - if ($toolData -eq $null) - { - throw "Unkown tool $tool" - } +[xml]$asXml = Get-Content "$scriptsDir\vcpkgTools.xml" +$toolData = $asXml.SelectSingleNode("//tools/tool[@name=`"$tool`"]") # Case-sensitive! - $exePath = "$downloadsDir\$(@($toolData.exeRelativePath)[0])" +if ($toolData -eq $null) +{ + throw "Unkown tool $tool" +} - if (Test-Path $exePath) - { - return $exePath - } +$exePath = "$downloadsDir\$($toolData.exeRelativePath)" - $isArchive = vcpkgHasProperty -object $toolData -propertyName "archiveRelativePath" - if ($isArchive) - { - $downloadPath = "$downloadsDir\$(@($toolData.archiveRelativePath)[0])" - } - else - { - $downloadPath = "$downloadsDir\$(@($toolData.exeRelativePath)[0])" - } +if (Test-Path $exePath) +{ + return $exePath +} - [String]$url = @($toolData.url)[0] - if (!(Test-Path $downloadPath)) - { - Write-Host "Downloading $tool..." - vcpkgDownloadFile $url $downloadPath - Write-Host "Downloading $tool... done." - } +$isArchive = vcpkgHasProperty -object $toolData -propertyName "archiveRelativePath" +if ($isArchive) +{ + $downloadPath = "$downloadsDir\$($toolData.archiveRelativePath)" +} +else +{ + $downloadPath = "$downloadsDir\$($toolData.exeRelativePath)" +} - $expectedDownloadedFileHash = @($toolData.sha256)[0] - $downloadedFileHash = vcpkgGetSHA256 $downloadPath - vcpkgCheckEqualFileHash -filePath $downloadPath -expectedHash $expectedDownloadedFileHash -actualHash $downloadedFileHash +[String]$url = $toolData.url +if (!(Test-Path $downloadPath)) +{ + Write-Host "Downloading $tool..." + vcpkgDownloadFile $url $downloadPath + Write-Host "Downloading $tool... done." +} - if ($isArchive) - { - $outFilename = (Get-ChildItem $downloadPath).BaseName - Write-Host "Extracting $tool..." - vcpkgExtractFile -ArchivePath $downloadPath -DestinationDir $downloadsDir -outFilename $outFilename - Write-Host "Extracting $tool... done." - } +$expectedDownloadedFileHash = $toolData.sha256 +$downloadedFileHash = vcpkgGetSHA256 $downloadPath +vcpkgCheckEqualFileHash -filePath $downloadPath -expectedHash $expectedDownloadedFileHash -actualHash $downloadedFileHash - if (-not (Test-Path $exePath)) - { - Write-Error "Could not detect or download $tool" - throw - } +if ($isArchive) +{ + $outFilename = (Get-ChildItem $downloadPath).BaseName + Write-Host "Extracting $tool..." + vcpkgExtractFile -ArchivePath $downloadPath -DestinationDir $downloadsDir -outFilename $outFilename + Write-Host "Extracting $tool... done." +} - return $exePath +if (-not (Test-Path $exePath)) +{ + Write-Error "Could not detect or download $tool" + throw } -$path = fetchToolInternal $tool -Write-Verbose "Fetching tool: $tool. Done." -return "::$path::" +return "::$exePath::" -- cgit v1.2.3 From c814c9b8ac883aa42930e1f48660145fd4234fe6 Mon Sep 17 00:00:00 2001 From: Alexander Karatarakis Date: Tue, 27 Mar 2018 13:23:30 -0700 Subject: [vcpkgTools.xml] Restructre os-specific info --- scripts/vcpkgTools.xml | 20 ++++++++++++++------ toolsrc/src/vcpkg/vcpkgpaths.cpp | 16 ++++++++-------- 2 files changed, 22 insertions(+), 14 deletions(-) diff --git a/scripts/vcpkgTools.xml b/scripts/vcpkgTools.xml index 9c78e92d9..5df2de7ad 100644 --- a/scripts/vcpkgTools.xml +++ b/scripts/vcpkgTools.xml @@ -6,12 +6,20 @@ https://cmake.org/files/v3.10/cmake-3.10.2-win32-x86.zip f5f7e41a21d0e9b655aca58498b08e17ecd27796bf82837e2c84435359169dd6 cmake-3.10.2-win32-x86.zip - cmake-3.10.2-Darwin-x86_64/CMake.app/Contents/bin/cmake - https://cmake.org/files/v3.10/cmake-3.10.2-Darwin-x86_64.tar.gz - cmake-3.10.2-Darwin-x86_64.tar.gz - cmake-3.10.2-Linux-x86_64/bin/cmake - https://cmake.org/files/v3.10/cmake-3.10.2-Linux-x86_64.tar.gz - cmake-3.10.2-Linux-x86_64.tar.gz + + + 3.10.2 + cmake-3.10.2-Darwin-x86_64/CMake.app/Contents/bin/cmake + https://cmake.org/files/v3.10/cmake-3.10.2-Darwin-x86_64.tar.gz + e748eb7698f8e2783c2eea9ab81eebf66da0238bbf8e8fa722a67a38f2110718 + cmake-3.10.2-Darwin-x86_64.tar.gz + + + 3.10.2 + cmake-3.10.2-Linux-x86_64/bin/cmake + https://cmake.org/files/v3.10/cmake-3.10.2-Linux-x86_64.tar.gz + 7a82b46c35f4e68a0807e8dc04e779dee3f36cd42c6387fd13b5c29fe62a69ea + cmake-3.10.2-Linux-x86_64.tar.gz 2.16.2 diff --git a/toolsrc/src/vcpkg/vcpkgpaths.cpp b/toolsrc/src/vcpkg/vcpkgpaths.cpp index 9b331d7fc..feacda026 100644 --- a/toolsrc/src/vcpkg/vcpkgpaths.cpp +++ b/toolsrc/src/vcpkg/vcpkgpaths.cpp @@ -46,9 +46,9 @@ namespace vcpkg #if defined(_WIN32) static constexpr StringLiteral OS_STRING = ""; #elif defined(__APPLE__) - static constexpr StringLiteral OS_STRING = " os=\"osx\""; + static constexpr StringLiteral OS_STRING = R"(os="osx")"; #else // assume linux - static constexpr StringLiteral OS_STRING = " os=\"linux\""; + static constexpr StringLiteral OS_STRING = R"(os="linux")"; #endif static const fs::path XML_PATH = paths.scripts / "vcpkgTools.xml"; @@ -72,15 +72,15 @@ namespace vcpkg }; static const std::string XML = paths.get_filesystem().read_contents(XML_PATH).value_or_exit(VCPKG_LINE_INFO); - static const std::regex VERSION_REGEX{ - Strings::format(R"###(([\s\S]*?))###", tool)}; + static const std::regex VERSION_REGEX{R"###(([\s\S]*?))###"}; static const std::regex EXE_RELATIVE_PATH_REGEX{ - Strings::format(R"###(([\s\S]*?))###", OS_STRING)}; + Strings::format(R"###(([\s\S]*?))###")}; static const std::regex ARCHIVE_RELATIVE_PATH_REGEX{ - Strings::format(R"###(([\s\S]*?))###", OS_STRING)}; - static const std::regex URL_REGEX{Strings::format(R"###(([\s\S]*?))###", OS_STRING)}; + Strings::format(R"###(([\s\S]*?))###")}; + static const std::regex URL_REGEX{Strings::format(R"###(([\s\S]*?))###")}; - const std::regex tool_regex{Strings::format(R"###(([\s\S]*?))###", tool)}; + const std::regex tool_regex{ + Strings::format(R"###(([\s\S]*?))###", tool, OS_STRING)}; std::smatch match_tool; const bool has_match_tool = std::regex_search(XML.cbegin(), XML.cend(), match_tool, tool_regex); -- cgit v1.2.3 From 12d862ab2b6e387b596e680d334daa212b77fb32 Mon Sep 17 00:00:00 2001 From: Alexander Karatarakis Date: Tue, 27 Mar 2018 18:06:02 -0700 Subject: [ps1] Revert function removal --- scripts/fetchTool.ps1 | 93 +++++++++++++++++++++++++++------------------------ 1 file changed, 50 insertions(+), 43 deletions(-) diff --git a/scripts/fetchTool.ps1 b/scripts/fetchTool.ps1 index 8cf8002bc..26eedac3b 100644 --- a/scripts/fetchTool.ps1 +++ b/scripts/fetchTool.ps1 @@ -13,57 +13,64 @@ $vcpkgRootDir = vcpkgFindFileRecursivelyUp $scriptsDir .vcpkg-root $downloadsDir = "$vcpkgRootDir\downloads" vcpkgCreateDirectoryIfNotExists $downloadsDir -$tool = $tool.toLower() +function fetchToolInternal([Parameter(Mandatory=$true)][string]$tool) +{ + $tool = $tool.toLower() -[xml]$asXml = Get-Content "$scriptsDir\vcpkgTools.xml" -$toolData = $asXml.SelectSingleNode("//tools/tool[@name=`"$tool`"]") # Case-sensitive! + [xml]$asXml = Get-Content "$scriptsDir\vcpkgTools.xml" + $toolData = $asXml.SelectSingleNode("//tools/tool[@name=`"$tool`"]") # Case-sensitive! -if ($toolData -eq $null) -{ - throw "Unkown tool $tool" -} + if ($toolData -eq $null) + { + throw "Unkown tool $tool" + } -$exePath = "$downloadsDir\$($toolData.exeRelativePath)" + $exePath = "$downloadsDir\$($toolData.exeRelativePath)" -if (Test-Path $exePath) -{ - return $exePath -} + if (Test-Path $exePath) + { + return $exePath + } -$isArchive = vcpkgHasProperty -object $toolData -propertyName "archiveRelativePath" -if ($isArchive) -{ - $downloadPath = "$downloadsDir\$($toolData.archiveRelativePath)" -} -else -{ - $downloadPath = "$downloadsDir\$($toolData.exeRelativePath)" -} + $isArchive = vcpkgHasProperty -object $toolData -propertyName "archiveRelativePath" + if ($isArchive) + { + $downloadPath = "$downloadsDir\$($toolData.archiveRelativePath)" + } + else + { + $downloadPath = "$downloadsDir\$($toolData.exeRelativePath)" + } -[String]$url = $toolData.url -if (!(Test-Path $downloadPath)) -{ - Write-Host "Downloading $tool..." - vcpkgDownloadFile $url $downloadPath - Write-Host "Downloading $tool... done." -} + [String]$url = $toolData.url + if (!(Test-Path $downloadPath)) + { + Write-Host "Downloading $tool..." + vcpkgDownloadFile $url $downloadPath + Write-Host "Downloading $tool... done." + } -$expectedDownloadedFileHash = $toolData.sha256 -$downloadedFileHash = vcpkgGetSHA256 $downloadPath -vcpkgCheckEqualFileHash -filePath $downloadPath -expectedHash $expectedDownloadedFileHash -actualHash $downloadedFileHash + $expectedDownloadedFileHash = $toolData.sha256 + $downloadedFileHash = vcpkgGetSHA256 $downloadPath + vcpkgCheckEqualFileHash -filePath $downloadPath -expectedHash $expectedDownloadedFileHash -actualHash $downloadedFileHash -if ($isArchive) -{ - $outFilename = (Get-ChildItem $downloadPath).BaseName - Write-Host "Extracting $tool..." - vcpkgExtractFile -ArchivePath $downloadPath -DestinationDir $downloadsDir -outFilename $outFilename - Write-Host "Extracting $tool... done." -} + if ($isArchive) + { + $outFilename = (Get-ChildItem $downloadPath).BaseName + Write-Host "Extracting $tool..." + vcpkgExtractFile -ArchivePath $downloadPath -DestinationDir $downloadsDir -outFilename $outFilename + Write-Host "Extracting $tool... done." + } -if (-not (Test-Path $exePath)) -{ - Write-Error "Could not detect or download $tool" - throw + if (-not (Test-Path $exePath)) + { + Write-Error "Could not detect or download $tool" + throw + } + + return $exePath } -return "::$exePath::" +$path = fetchToolInternal $tool +Write-Verbose "Fetching tool: $tool. Done." +return "::$path::" -- cgit v1.2.3 From ee1409f432711e59b58bd170f021949e8e12aedd Mon Sep 17 00:00:00 2001 From: Alexander Karatarakis Date: Tue, 27 Mar 2018 21:39:23 -0700 Subject: Hotfix #3144 --- toolsrc/src/vcpkg/vcpkgpaths.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/toolsrc/src/vcpkg/vcpkgpaths.cpp b/toolsrc/src/vcpkg/vcpkgpaths.cpp index feacda026..a17ffeb05 100644 --- a/toolsrc/src/vcpkg/vcpkgpaths.cpp +++ b/toolsrc/src/vcpkg/vcpkgpaths.cpp @@ -80,7 +80,7 @@ namespace vcpkg static const std::regex URL_REGEX{Strings::format(R"###(([\s\S]*?))###")}; const std::regex tool_regex{ - Strings::format(R"###(([\s\S]*?))###", tool, OS_STRING)}; + Strings::format(R"###(([\s\S]*?))###", tool, OS_STRING)}; std::smatch match_tool; const bool has_match_tool = std::regex_search(XML.cbegin(), XML.cend(), match_tool, tool_regex); -- cgit v1.2.3 From 398a972357d059a8d27adb657a33da6cf2a52450 Mon Sep 17 00:00:00 2001 From: Alexander Karatarakis Date: Tue, 27 Mar 2018 21:48:48 -0700 Subject: Update CHANGELOG and bump version to v0.0.107 --- CHANGELOG.md | 65 +++++++++++++++++++++++++++++++++++++++++++++++++++++ toolsrc/VERSION.txt | 2 +- 2 files changed, 66 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index f41efaf10..36c40f6e8 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,68 @@ +vcpkg (0.0.107) +-------------- + * Add ports: + - azmq 1.0.2 + - azure-c-shared-utility 1.0.0-pre-release-1.0.9 + - azure-iot-sdk-c 1.0.0-pre-release-1.0.9 + - azure-uamqp-c 1.0.0-pre-release-1.0.9 + - azure-uhttp-c 2018-02-09 + - azure-umqtt-c 1.0.0-pre-release-1.0.9 + - bitserializer 0.7 + - caf 0.15.7 + - fmem c-libs-2ccee3d2fb + - gherkin-c c-libs-e63e83104b + - librsync 2.0.2 + - libuuid 1.0.3 + - mpark-variant 1.3.0 + - nanomsg 1.1.2 + - nvml 1.3-0 + - nvtt 2.1.0 + - openvpn3 2018-03-21 + - parson 2018-03-23 + - plplot 5.13.0-1 + - sqlite-orm 1.1 + - tap-windows6 9.21.2-0e30f5c + * Update ports: + - abseil 2018-03-17 -> 2018-03-23 + - alembic 1.7.6 -> 1.7.7 + - asio 1.12.0 -> 1.12.0-1 + - aubio 0.4.6-1 -> 0.4.6-2 + - aws-sdk-cpp 1.3.58 -> 1.4.21 + - catch2 2.2.1 -> 2.2.1-1 + - ccfits 2.5-1 -> 2.5-2 + - ceres 1.13.0-4 -> 1.14.0-1 + - cfitsio 3.410-1 -> 3.410-2 + - clara 2018-03-11 -> 2018-03-23 + - cpprestsdk 2.10.2 -> 2.10.2-1 + - discord-rpc 3.0.0 -> 3.1.0 + - dlib 19.9-1 -> 19.10 + - eastl 3.07.02 -> 3.08.00 + - exiv2 2018-03-17 -> 2018-03-23 + - ffmpeg 3.3.3-4 -> 3.3.3-5 + - gdcm2 2.8.4 -> 2.8.5 + - harfbuzz 1.7.6 -> 1.7.6-1 + - hpx 1.0.0-8 -> 1.1.0-1 + - lcm 1.3.95 -> 1.3.95-1 + - libpq 9.6.1-1 -> 9.6.1-4 + - libvpx 1.6.1-1 -> 1.6.1-2 + - mpg123 1.25.8-2 -> 1.25.8-4 + - nuklear 2018-03-17 -> 2018-03-23 + - openssl 1.0.2n-2 -> 1.0.2n-3 + - paho-mqtt 1.2.0-2 -> 1.2.0-3 + - plog 1.1.3 -> 1.1.4 + - qt5-quickcontrols 5.9.2-0 -> 5.9.2-1 + - qt5-quickcontrols2 5.9.2-0 -> 5.9.2-1 + - sciter 4.1.3 -> 4.1.4 + - shapelib 1.4.1 -> 1.4.1-1 + - signalrclient 1.0.0-beta1-2 -> 1.0.0-beta1-3 + - soundtouch 2.0.0 -> 2.0.0-1 + - thrift 2018-03-17 -> 2018-03-23 + - unicorn 2018-03-13 -> 2018-03-20 + - zeromq 2018-03-17 -> 2018-03-23 + +-- vcpkg team TUE, 27 Mar 2018 22:00:00 -0800 + + vcpkg (0.0.106) -------------- * Add ports: diff --git a/toolsrc/VERSION.txt b/toolsrc/VERSION.txt index 1305e8f43..daa1cd86e 100644 --- a/toolsrc/VERSION.txt +++ b/toolsrc/VERSION.txt @@ -1 +1 @@ -"0.0.106" \ No newline at end of file +"0.0.107" \ No newline at end of file -- cgit v1.2.3 From db2694fb2384e85d54def1d4164f1cb763cd2eb6 Mon Sep 17 00:00:00 2001 From: AlISA Yang Date: Wed, 28 Mar 2018 00:39:45 -0700 Subject: Unrar buildsystem doesn't support static building. Building dynamic instead --- ports/unrar/portfile.cmake | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/ports/unrar/portfile.cmake b/ports/unrar/portfile.cmake index 0528c8b97..19c7c9d7a 100644 --- a/ports/unrar/portfile.cmake +++ b/ports/unrar/portfile.cmake @@ -6,7 +6,8 @@ set(UNRAR_URL http://www.rarlab.com/rar/${UNRAR_FILENAME}) set(SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src/unrar) if (VCPKG_LIBRARY_LINKAGE STREQUAL "static") - message(FATAL_ERROR "Unrar does not currently support building statically") + message(STATUS "Unrar buildsystem doesn't support static building. Building dynamic instead.") + set(VCPKG_LIBRARY_LINKAGE dynamic) endif() #SRC -- cgit v1.2.3 From 0e8481c1dff484f2be1149a4911b8425c0d2e956 Mon Sep 17 00:00:00 2001 From: Robert Schumacher Date: Wed, 28 Mar 2018 08:55:47 -0700 Subject: [dlib] Disable shared linkage --- ports/dlib/CONTROL | 2 +- ports/dlib/portfile.cmake | 6 +++++- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/ports/dlib/CONTROL b/ports/dlib/CONTROL index 6863fa130..c4d5fe905 100644 --- a/ports/dlib/CONTROL +++ b/ports/dlib/CONTROL @@ -1,5 +1,5 @@ Source: dlib -Version: 19.10 +Version: 19.10-1 Build-Depends: libjpeg-turbo, libpng, sqlite3, fftw3, openblas, clapack Description: Modern C++ toolkit containing machine learning algorithms and tools for creating complex software in C++ diff --git a/ports/dlib/portfile.cmake b/ports/dlib/portfile.cmake index ba3cb3ec4..da77c9374 100644 --- a/ports/dlib/portfile.cmake +++ b/ports/dlib/portfile.cmake @@ -1,5 +1,10 @@ include(vcpkg_common_functions) +if(VCPKG_LIBRARY_LINKAGE STREQUAL "dynamic") + message("dlib only supports static linkage") + set(VCPKG_LIBRARY_LINKAGE "static") +endif() + vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO davisking/dlib @@ -35,7 +40,6 @@ vcpkg_configure_cmake( -DDLIB_USE_CUDA=${WITH_CUDA} -DDLIB_GIF_SUPPORT=OFF -DDLIB_USE_MKL_FFT=OFF - -DCMAKE_WINDOWS_EXPORT_ALL_SYMBOLS=TRUE OPTIONS_DEBUG -DDLIB_ENABLE_ASSERTS=ON #-DDLIB_ENABLE_STACK_TRACE=ON -- cgit v1.2.3 From 1bec90d155e788cd77d19ec2bdaefe53b5cb39b4 Mon Sep 17 00:00:00 2001 From: Robert Schumacher Date: Wed, 28 Mar 2018 09:07:37 -0700 Subject: [openssl] Update to 1.0.2o --- ports/openssl/CONTROL | 2 +- ports/openssl/RemoveNonASCIIChar.patch | 13 ------------- ports/openssl/portfile.cmake | 9 ++++----- 3 files changed, 5 insertions(+), 19 deletions(-) delete mode 100644 ports/openssl/RemoveNonASCIIChar.patch diff --git a/ports/openssl/CONTROL b/ports/openssl/CONTROL index 43a6eb660..9266dd10d 100644 --- a/ports/openssl/CONTROL +++ b/ports/openssl/CONTROL @@ -1,3 +1,3 @@ Source: openssl -Version: 1.0.2n-3 +Version: 1.0.2o Description: OpenSSL is an open source project that provides a robust, commercial-grade, and full-featured toolkit for the Transport Layer Security (TLS) and Secure Sockets Layer (SSL) protocols. It is also a general-purpose cryptography library. diff --git a/ports/openssl/RemoveNonASCIIChar.patch b/ports/openssl/RemoveNonASCIIChar.patch deleted file mode 100644 index 5c4553b0a..000000000 --- a/ports/openssl/RemoveNonASCIIChar.patch +++ /dev/null @@ -1,13 +0,0 @@ -diff --git a/ssl/bad_dtls_test.c b/ssl/bad_dtls_test.c -index 34af37d..ff754e1 100644 ---- a/ssl/bad_dtls_test.c -+++ b/ssl/bad_dtls_test.c -@@ -19,7 +19,7 @@ - * Note that unlike other SSL tests, we don't test against our own SSL - * server method. Firstly because we don't have one; we *only* support - * DTLS1_BAD_VER as a client. And secondly because even if that were -- * fixed up it's the wrong thing to test against — because if changes -+ * fixed up it's the wrong thing to test against - because if changes - * are made in generic DTLS code which don't take DTLS1_BAD_VER into - * account, there's plenty of scope for making those changes such that - * they break *both* the client and the server in the same way. diff --git a/ports/openssl/portfile.cmake b/ports/openssl/portfile.cmake index 023b3e233..458aa07b6 100644 --- a/ports/openssl/portfile.cmake +++ b/ports/openssl/portfile.cmake @@ -4,7 +4,7 @@ if(VCPKG_CMAKE_SYSTEM_NAME STREQUAL "WindowsStore") endif() include(vcpkg_common_functions) -set(OPENSSL_VERSION 1.0.2n) +set(OPENSSL_VERSION 1.0.2o) set(MASTER_COPY_SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src/openssl-${OPENSSL_VERSION}) vcpkg_find_acquire_program(PERL) @@ -15,7 +15,7 @@ set(ENV{PATH} "$ENV{PATH};${PERL_EXE_PATH}") vcpkg_download_distfile(OPENSSL_SOURCE_ARCHIVE URLS "https://www.openssl.org/source/openssl-${OPENSSL_VERSION}.tar.gz" "https://www.openssl.org/source/old/1.0.2/openssl-${OPENSSL_VERSION}.tar.gz" FILENAME "openssl-${OPENSSL_VERSION}.tar.gz" - SHA512 144bf0d6aa27b4af01df0b7b734c39962649e1711554247d42e05e14d8945742b18745aefdba162e2dfc762b941fd7d3b2d5dc6a781ae4ba10a6f5a3cadb0687 + SHA512 8a2c93657c85143e76785bb32ee836908c31a6f5f8db993fa9777acba6079e630cdddd03edbad65d1587199fc13a1507789eacf038b56eb99139c2091d9df7fd ) vcpkg_extract_source_archive(${OPENSSL_SOURCE_ARCHIVE}) @@ -24,7 +24,6 @@ vcpkg_apply_patches( PATCHES ${CMAKE_CURRENT_LIST_DIR}/ConfigureIncludeQuotesFix.patch ${CMAKE_CURRENT_LIST_DIR}/STRINGIFYPatch.patch ${CMAKE_CURRENT_LIST_DIR}/EmbedSymbolsInStaticLibsZ7.patch - ${CMAKE_CURRENT_LIST_DIR}/RemoveNonASCIIChar.patch ) if(VCPKG_CMAKE_SYSTEM_NAME) @@ -92,7 +91,7 @@ execute_process( ERROR_FILE ${CURRENT_BUILDTREES_DIR}/build-${TARGET_TRIPLET}-rel-0-err.log ) vcpkg_execute_required_process( - COMMAND ${JOM} -j 1 -f ${OPENSSL_MAKEFILE} install + COMMAND nmake -f ${OPENSSL_MAKEFILE} install WORKING_DIRECTORY ${SOURCE_PATH_RELEASE} LOGNAME build-${TARGET_TRIPLET}-rel-1) @@ -125,7 +124,7 @@ execute_process( ERROR_FILE ${CURRENT_BUILDTREES_DIR}/build-${TARGET_TRIPLET}-dbg-0-err.log ) vcpkg_execute_required_process( - COMMAND ${JOM} -j 1 -f ${OPENSSL_MAKEFILE} install + COMMAND nmake -f ${OPENSSL_MAKEFILE} install WORKING_DIRECTORY ${SOURCE_PATH_DEBUG} LOGNAME build-${TARGET_TRIPLET}-dbg-1) -- cgit v1.2.3 From ba47c71551ae123aa513af45eca4ae21f66d4af3 Mon Sep 17 00:00:00 2001 From: Robert Schumacher Date: Wed, 28 Mar 2018 07:36:51 -0700 Subject: [qt5] Remove absolute paths from .prl files --- ports/qt5-base/CONTROL | 2 +- ports/qt5-base/portfile.cmake | 10 ++++++++++ ports/qt5-modularscripts/CONTROL | 2 +- ports/qt5-modularscripts/qt_modular_library.cmake | 10 ++++++++++ 4 files changed, 22 insertions(+), 2 deletions(-) diff --git a/ports/qt5-base/CONTROL b/ports/qt5-base/CONTROL index 1e10239b3..e0b9e0e15 100644 --- a/ports/qt5-base/CONTROL +++ b/ports/qt5-base/CONTROL @@ -1,4 +1,4 @@ Source: qt5-base -Version: 5.9.2-5 +Version: 5.9.2-6 Description: Qt5 Application Framework Base Module. Includes Core, GUI, Widgets, Networking, SQL, Concurrent and other essential qt components. Build-Depends: zlib, libjpeg-turbo, libpng, freetype, pcre2, harfbuzz, sqlite3, libpq, double-conversion, openssl diff --git a/ports/qt5-base/portfile.cmake b/ports/qt5-base/portfile.cmake index e01365fe9..e5bdba8a5 100644 --- a/ports/qt5-base/portfile.cmake +++ b/ports/qt5-base/portfile.cmake @@ -167,6 +167,16 @@ if(EXISTS ${CURRENT_PACKAGES_DIR}/lib/qtmain.lib) file(REMOVE ${CURRENT_PACKAGES_DIR}/debug/lib/qtmaind.prl) endif() +file(GLOB_RECURSE PRL_FILES "${CURRENT_PACKAGES_DIR}/lib/*.prl" "${CURRENT_PACKAGES_DIR}/debug/lib/*.prl") +file(TO_CMAKE_PATH "${CURRENT_INSTALLED_DIR}/lib" CMAKE_RELEASE_LIB_PATH) +file(TO_CMAKE_PATH "${CURRENT_INSTALLED_DIR}/debug/lib" CMAKE_DEBUG_LIB_PATH) +foreach(PRL_FILE IN LISTS PRL_FILES) + file(READ "${PRL_FILE}" _contents) + string(REPLACE "${CMAKE_RELEASE_LIB_PATH}" "\$\$[QT_INSTALL_LIBS]" _contents "${_contents}") + string(REPLACE "${CMAKE_DEBUG_LIB_PATH}" "\$\$[QT_INSTALL_LIBS]" _contents "${_contents}") + file(WRITE "${PRL_FILE}" "${_contents}") +endforeach() + file(COPY ${CMAKE_CURRENT_LIST_DIR}/qtdeploy.ps1 DESTINATION ${CURRENT_PACKAGES_DIR}/plugins) file(COPY ${CMAKE_CURRENT_LIST_DIR}/qtdeploy.ps1 DESTINATION ${CURRENT_PACKAGES_DIR}/debug/plugins) diff --git a/ports/qt5-modularscripts/CONTROL b/ports/qt5-modularscripts/CONTROL index 502887c52..fd3f72392 100644 --- a/ports/qt5-modularscripts/CONTROL +++ b/ports/qt5-modularscripts/CONTROL @@ -1,3 +1,3 @@ Source: qt5-modularscripts -Version: 2 +Version: 3 Description: Vcpkg helpers to package qt5 modules diff --git a/ports/qt5-modularscripts/qt_modular_library.cmake b/ports/qt5-modularscripts/qt_modular_library.cmake index e733e02a5..1ead66d83 100644 --- a/ports/qt5-modularscripts/qt_modular_library.cmake +++ b/ports/qt5-modularscripts/qt_modular_library.cmake @@ -78,6 +78,16 @@ function(qt_modular_library NAME HASH) file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/lib/cmake) endif() + file(GLOB_RECURSE PRL_FILES "${CURRENT_PACKAGES_DIR}/lib/*.prl" "${CURRENT_PACKAGES_DIR}/debug/lib/*.prl") + file(TO_CMAKE_PATH "${CURRENT_INSTALLED_DIR}/lib" CMAKE_RELEASE_LIB_PATH) + file(TO_CMAKE_PATH "${CURRENT_INSTALLED_DIR}/debug/lib" CMAKE_DEBUG_LIB_PATH) + foreach(PRL_FILE IN LISTS PRL_FILES) + file(READ "${PRL_FILE}" _contents) + string(REPLACE "${CMAKE_RELEASE_LIB_PATH}" "\$\$[QT_INSTALL_LIBS]" _contents "${_contents}") + string(REPLACE "${CMAKE_DEBUG_LIB_PATH}" "\$\$[QT_INSTALL_LIBS]" _contents "${_contents}") + file(WRITE "${PRL_FILE}" "${_contents}") + endforeach() + file(GLOB RELEASE_LIBS "${CURRENT_PACKAGES_DIR}/lib/*") if(NOT RELEASE_LIBS) file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/lib) -- cgit v1.2.3 From 6a3921c85a2c47391e503a11ee77cd1b9f2535af Mon Sep 17 00:00:00 2001 From: Arkady Shapkin Date: Thu, 29 Mar 2018 02:47:49 +0300 Subject: [folly] Update to version 2018.03.19.00 (#3094) * [folly] Update to version 2018.03.19.00 * [folly] Add zlib default feature. Disable unexpected packages and handle features. --- ports/folly/CONTROL | 29 ++++++++++++++++++++-- ports/folly/cmake-link-boost-fix.patch | 35 -------------------------- ports/folly/portfile.cmake | 45 +++++++++++++++++++++++++--------- 3 files changed, 60 insertions(+), 49 deletions(-) delete mode 100644 ports/folly/cmake-link-boost-fix.patch diff --git a/ports/folly/CONTROL b/ports/folly/CONTROL index 8f0bb7656..457874906 100644 --- a/ports/folly/CONTROL +++ b/ports/folly/CONTROL @@ -1,4 +1,29 @@ Source: folly -Version: 2017.11.27.00-3 +Version: 2018.03.19.00-1 Description: An open-source C++ library developed and used at Facebook. The library is UNSTABLE on Windows -Build-Depends: zlib, openssl, libevent, double-conversion, glog, gflags, lz4, liblzma, snappy, boost-context, boost-chrono, boost-date-time, boost-filesystem, boost-program-options, boost-regex, boost-system, boost-thread, boost-conversion, boost-multi-index, boost-crc +Build-Depends: openssl, libevent, double-conversion, glog, gflags, boost-chrono, boost-context, boost-conversion, boost-crc, boost-date-time, boost-filesystem, boost-multi-index, boost-program-options, boost-regex, boost-system, boost-thread +Default-Features: zlib + +Feature: zlib +Build-Depends: zlib +Description: Support zlib for compression + +Feature: bzip2 +Build-Depends: bzip2 +Description: Support bzip2 for compression + +Feature: lzma +Build-Depends: liblzma +Description: Support LZMA for compression + +Feature: zstd +Build-Depends: zstd +Description: Support zstd for compression + +Feature: snappy +Build-Depends: snappy +Description: Support Snappy for compression + +Feature: lz4 +Build-Depends: lz4 +Description: Support lz4 for compression diff --git a/ports/folly/cmake-link-boost-fix.patch b/ports/folly/cmake-link-boost-fix.patch deleted file mode 100644 index d3baf13a3..000000000 --- a/ports/folly/cmake-link-boost-fix.patch +++ /dev/null @@ -1,35 +0,0 @@ -diff --git a/CMakeLists.txt b/CMakeLists.txt -index ec5a985c..36564534 100644 ---- a/CMakeLists.txt -+++ b/CMakeLists.txt -@@ -136,13 +136,6 @@ source_group("folly\\build" FILES - ) - - set(FOLLY_SHINY_DEPENDENCIES -- Boost::chrono -- Boost::context -- Boost::date_time -- Boost::filesystem -- Boost::program_options -- Boost::regex -- Boost::system - OpenSSL::SSL - OpenSSL::Crypto - ) -@@ -179,6 +172,7 @@ endif() - - set(FOLLY_LINK_LIBRARIES - ${FOLLY_LINK_LIBRARIES} -+ ${Boost_LIBRARIES} - Iphlpapi.lib - Ws2_32.lib - -@@ -320,7 +314,7 @@ if (BUILD_TESTS) - ) - target_link_libraries(folly_test_support - PUBLIC -- Boost::thread -+ ${Boost_LIBRARIES} - folly - ${LIBGMOCK_LIBRARY} - ) diff --git a/ports/folly/portfile.cmake b/ports/folly/portfile.cmake index 00c1093da..ce101d918 100644 --- a/ports/folly/portfile.cmake +++ b/ports/folly/portfile.cmake @@ -17,45 +17,66 @@ set(ENV{PATH} "$ENV{PATH};${PYTHON3_DIR}") vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO facebook/folly - REF v2017.11.27.00 - SHA512 738bb00047a7cbd807f2dccd64031763df80bbebca73f1ae9500b750dcad156dde84e47f4eda7af1bcd7abfae10c973da47515f2e111929979d1637869cf06ee + REF v2018.03.19.00 + SHA512 72df8768753bf9f1109ad3f16645d811906b633833c91c7d9fe856a06c16b5e398876cf6cae415401eff96b568c99ffa1dc0c44d81cd40219bafb0f4c72fc2ca HEAD_REF master ) vcpkg_apply_patches( SOURCE_PATH ${SOURCE_PATH} PATCHES - ${CMAKE_CURRENT_LIST_DIR}/cmake-link-boost-fix.patch ${CMAKE_CURRENT_LIST_DIR}/msvc-15.6-workaround.patch ) +file(COPY + ${CMAKE_CURRENT_LIST_DIR}/FindLZ4.cmake + ${CMAKE_CURRENT_LIST_DIR}/FindSnappy.cmake + DESTINATION ${SOURCE_PATH}/CMake/ +) + if(VCPKG_CRT_LINKAGE STREQUAL static) set(MSVC_USE_STATIC_RUNTIME ON) else() set(MSVC_USE_STATIC_RUNTIME OFF) endif() +set(FEATURE_OPTIONS) + +macro(feature FEATURENAME PACKAGENAME) + if("${FEATURENAME}" IN_LIST FEATURES) + list(APPEND FEATURE_OPTIONS -DCMAKE_DISABLE_FIND_PACKAGE_${PACKAGENAME}=OFF) + else() + list(APPEND FEATURE_OPTIONS -DCMAKE_DISABLE_FIND_PACKAGE_${PACKAGENAME}=ON) + endif() +endmacro() + +feature(zlib ZLIB) +feature(bzip2 BZip2) +feature(lzma LibLZMA) +feature(lz4 LZ4) +feature(zstd Zstd) +feature(snappy Snappy) + vcpkg_configure_cmake( SOURCE_PATH ${SOURCE_PATH} PREFER_NINJA OPTIONS -DMSVC_USE_STATIC_RUNTIME=${MSVC_USE_STATIC_RUNTIME} + -DCMAKE_DISABLE_FIND_PACKAGE_LibDwarf=ON + -DCMAKE_DISABLE_FIND_PACKAGE_Libiberty=ON + -DCMAKE_DISABLE_FIND_PACKAGE_LibAIO=ON + -DLIBAIO_FOUND=OFF + -DLIBURCU_FOUND=OFF + -DCMAKE_DISABLE_FIND_PACKAGE_LibURCU=ON + ${FEATURE_OPTIONS} ) -# Folly runs built executables during the build, so they need access to the installed DLLs. -set(ENV{PATH} "$ENV{PATH};${CURRENT_INSTALLED_DIR}/bin;${CURRENT_INSTALLED_DIR}/debug/bin") - -vcpkg_install_cmake() +vcpkg_install_cmake(ADD_BIN_TO_PATH) vcpkg_copy_pdbs() vcpkg_fixup_cmake_targets() -# changes target search path -file(READ ${CURRENT_PACKAGES_DIR}/share/folly/folly-targets.cmake FOLLY_MODULE) -string(REPLACE "${CURRENT_INSTALLED_DIR}/lib/" "" FOLLY_MODULE "${FOLLY_MODULE}") -file(WRITE ${CURRENT_PACKAGES_DIR}/share/folly/folly-targets.cmake "${FOLLY_MODULE}") - file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include) # Handle copyright -- cgit v1.2.3 From b955609dda3a7aa1d0a363ee3e309d8902d63b90 Mon Sep 17 00:00:00 2001 From: Robert Schumacher Date: Wed, 28 Mar 2018 17:41:17 -0700 Subject: [qwt] Requires qt5-tools for designer --- ports/qwt/CONTROL | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/ports/qwt/CONTROL b/ports/qwt/CONTROL index 9dcf19f5b..383ac11ce 100644 --- a/ports/qwt/CONTROL +++ b/ports/qwt/CONTROL @@ -1,4 +1,4 @@ Source: qwt -Version: 6.1.3-4 +Version: 6.1.3-5 Description: Qt widgets library for technical applications -Build-Depends: qt5-base, qt5-svg +Build-Depends: qt5-base, qt5-svg, qt5-tools -- cgit v1.2.3 From 36dddad940037e0d7b6ce83a5751fee402a8c0d0 Mon Sep 17 00:00:00 2001 From: Robert Schumacher Date: Tue, 27 Mar 2018 23:05:14 -0700 Subject: [abseil][aws-sdk-cpp][breakpad][exiv2][nuklear][zeromq] Upgrades --- ports/abseil/CONTROL | 2 +- ports/abseil/portfile.cmake | 4 ++-- ports/aws-sdk-cpp/CONTROL | 2 +- ports/aws-sdk-cpp/portfile.cmake | 4 ++-- ports/breakpad/CONTROL | 2 +- ports/breakpad/portfile.cmake | 4 ++-- ports/exiv2/CONTROL | 2 +- ports/exiv2/portfile.cmake | 4 ++-- ports/nuklear/CONTROL | 2 +- ports/nuklear/portfile.cmake | 4 ++-- ports/zeromq/CONTROL | 2 +- ports/zeromq/portfile.cmake | 4 ++-- 12 files changed, 18 insertions(+), 18 deletions(-) diff --git a/ports/abseil/CONTROL b/ports/abseil/CONTROL index 0c28ff456..03462a816 100644 --- a/ports/abseil/CONTROL +++ b/ports/abseil/CONTROL @@ -1,5 +1,5 @@ Source: abseil -Version: 2018-03-23 +Version: 2018-03-27 Description: an open-source collection designed to augment the C++ standard library. Abseil is an open-source collection of C++ library code designed to augment the C++ standard library. The Abseil library code is collected from Google's own C++ code base, has been extensively tested and used in production, and is the same code we depend on in our daily coding lives. In some cases, Abseil provides pieces missing from the C++ standard; in others, Abseil provides alternatives to the standard for special needs we've found through usage in the Google code base. We denote those cases clearly within the library code we provide you. diff --git a/ports/abseil/portfile.cmake b/ports/abseil/portfile.cmake index 48a506710..817ac004a 100644 --- a/ports/abseil/portfile.cmake +++ b/ports/abseil/portfile.cmake @@ -7,8 +7,8 @@ endif() vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO abseil/abseil-cpp - REF 4e2e6c5c0071e6430056a8ef0a6c8a1fe584d8ff - SHA512 f1daa9f7afb8727f2fd3097683bd7192b9f54536d575ce655a7440281463a3eae1bb0072f3010e74a03693b5dbca2e80e220099ae8557171055efcad70767ef1 + REF 70b5fa948d920ccca86d143057497132f63a44f3 + SHA512 5964f4b082d183a3d8227c51617e7ac348b6c7b80264c0e96cdeba40a69979a0954f1792da20f760502d62771ac464400b820e4fe2b0b4ed55f8c6f81b17cc1e HEAD_REF master ) diff --git a/ports/aws-sdk-cpp/CONTROL b/ports/aws-sdk-cpp/CONTROL index 44d263676..bd1ccbec5 100644 --- a/ports/aws-sdk-cpp/CONTROL +++ b/ports/aws-sdk-cpp/CONTROL @@ -1,5 +1,5 @@ Source: aws-sdk-cpp -Version: 1.4.21 +Version: 1.4.23 Description: AWS SDK for C++ Default-Features: dynamodb, ec2, kms, rds, s3, sns, sqs # Automatically generated by generateFeatures.ps1 diff --git a/ports/aws-sdk-cpp/portfile.cmake b/ports/aws-sdk-cpp/portfile.cmake index 3adfa15d0..7d98781aa 100644 --- a/ports/aws-sdk-cpp/portfile.cmake +++ b/ports/aws-sdk-cpp/portfile.cmake @@ -3,8 +3,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO aws/aws-sdk-cpp - REF 1.4.21 - SHA512 b8d063048b9d879603ace5210b671497336e8160cb3b7d10772465db538d95176458446faa9dccd5cc2d7a2c3242239fc3b80a8aa3a5878a0e2b4fc6673b4a35 + REF 1.4.23 + SHA512 5d77650c6468c5ab57eab2c5a5b647a5f4d56dc31cec0bca051e3e79554b386be5f6ed4b41cd7ca907e9e657c7dbef024fac2b9e505eb44204cf998ac1ee102c HEAD_REF master ) diff --git a/ports/breakpad/CONTROL b/ports/breakpad/CONTROL index 6b016d29a..76e76668b 100644 --- a/ports/breakpad/CONTROL +++ b/ports/breakpad/CONTROL @@ -1,4 +1,4 @@ Source: breakpad -Version: 2018-03-13 +Version: 2018-03-27 Build-Depends: libdisasm Description: a set of client and server components which implement a crash-reporting system. diff --git a/ports/breakpad/portfile.cmake b/ports/breakpad/portfile.cmake index b8bac3f6a..29cf87498 100644 --- a/ports/breakpad/portfile.cmake +++ b/ports/breakpad/portfile.cmake @@ -3,8 +3,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO google/breakpad - REF 2d80611fedf1e6bce4459f179dafaac844e9fc7f - SHA512 8c4eabb1e2d071ed67d178c1ee8c3679a24bff39439ee360a079fa926e276247ee18d0d88e420407e08c99cac0d1e9a8b4c7f554bf2d07f125eaa1df2f973e38 + REF e93f852a3c316ad767381d5e5bc839eba5c6225b + SHA512 8139472f4f9ce01770cf2922a52cc63fa009cfff93db893d297f61a1b44198b10bba73c92977e84c18a90ef7e71f0911e4fe9d27e8978fc38f231e499e23fc4d HEAD_REF master ) diff --git a/ports/exiv2/CONTROL b/ports/exiv2/CONTROL index 36c7220e5..06862802c 100644 --- a/ports/exiv2/CONTROL +++ b/ports/exiv2/CONTROL @@ -1,4 +1,4 @@ Source: exiv2 -Version: 2018-03-23 +Version: 2018-03-27 Build-Depends: zlib, expat, libiconv Description: Image metadata library and tools http://www.exiv2.org diff --git a/ports/exiv2/portfile.cmake b/ports/exiv2/portfile.cmake index 80e0b1a6f..046d0eabc 100644 --- a/ports/exiv2/portfile.cmake +++ b/ports/exiv2/portfile.cmake @@ -3,8 +3,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO Exiv2/exiv2 - REF eb61e57de031ffd8713306cae6ad431d0b84a9b5 - SHA512 078e161de8ffe1953c3215ff745954f00ef4bd5ccef4c7fb079ad67d5350a31bb8f692cb664adba889433c4e79e446dc1f31edfd9ecc8b9471faeba82ae425e6 + REF be992520b1570c2696d6ca1302fd49f1cb0164d8 + SHA512 fe4e2907268a8e5fe0b3a03fc39a5ba7d72daaf304b32c37ae8b0c0773711edc9ce0d194cd4f583b430ebf65ebcc58980a2a4e858c893c0bb1adb1886f6c0e6d HEAD_REF master ) diff --git a/ports/nuklear/CONTROL b/ports/nuklear/CONTROL index ba4340611..694ddd5b7 100644 --- a/ports/nuklear/CONTROL +++ b/ports/nuklear/CONTROL @@ -1,3 +1,3 @@ Source: nuklear -Version: 2018-03-23 +Version: 2018-03-27 Description: This is a minimal state immediate mode graphical user interface toolkit written in ANSI C and licensed under public domain diff --git a/ports/nuklear/portfile.cmake b/ports/nuklear/portfile.cmake index 9c240f411..9baefc9a4 100644 --- a/ports/nuklear/portfile.cmake +++ b/ports/nuklear/portfile.cmake @@ -2,8 +2,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO vurtun/nuklear - REF 1acb673af13e72d8ac07522a22127ffd33af65a9 - SHA512 8ee7c45d0a6c64062adec3575ea94cf0d5c8d60d9f30cf8c72051c6e9fcf030562379074f37c1f5da256cce8537078694673ed3b947a603982cdbf26c393fa4b + REF 7e710ff4fb0186c0e462d43b30c82cab12ea1277 + SHA512 9f65e2fe2e89521002f7d86e8c5f0947a76724b7e7eb87463832732f38561b0415da98a8411e474467a9e5e1b33189c98f6506cc1baf97dbced66cfe05f2a290 HEAD_REF master ) file(INSTALL ${SOURCE_PATH}/nuklear.h DESTINATION ${CURRENT_PACKAGES_DIR}/include) diff --git a/ports/zeromq/CONTROL b/ports/zeromq/CONTROL index b3ec200db..64f2a6507 100644 --- a/ports/zeromq/CONTROL +++ b/ports/zeromq/CONTROL @@ -1,3 +1,3 @@ Source: zeromq -Version: 2018-03-23 +Version: 2018-03-27 Description: The ZeroMQ lightweight messaging kernel is a library which extends the standard socket interfaces with features traditionally provided by specialised messaging middleware products diff --git a/ports/zeromq/portfile.cmake b/ports/zeromq/portfile.cmake index 72165adaa..45e10bf3d 100644 --- a/ports/zeromq/portfile.cmake +++ b/ports/zeromq/portfile.cmake @@ -3,8 +3,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO zeromq/libzmq - REF c8a1c4542d13b6492949e7525f4fe8da266cac2b - SHA512 600bb2a43afb4f6e2d9a7ce8470841bcb03fc9737f17d276f52b0cf78c6f17d1cf08e2b0046ff746efa8738f33128cb51cbe63cb215937a892222f2e4895a659 + REF 8fb5b10d8a60e06b9adebd22ecc118f13580375c + SHA512 5839410cf1842c0ac684f42ed52c4ed117104dce5b31106eff3c7e799e1d3d57f72413b4381ebb36e1835bf2aa44fcdc0e36140871141edb96ab50b4d8b23a8d HEAD_REF master ) -- cgit v1.2.3 From 3e1104465eb4e40e3b4dce1a212d90a68928d442 Mon Sep 17 00:00:00 2001 From: Alexander Karatarakis Date: Wed, 28 Mar 2018 18:35:27 -0700 Subject: Add ninja to vcpkgTools.xml --- scripts/vcpkgTools.xml | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/scripts/vcpkgTools.xml b/scripts/vcpkgTools.xml index 5df2de7ad..477584c5a 100644 --- a/scripts/vcpkgTools.xml +++ b/scripts/vcpkgTools.xml @@ -54,4 +54,18 @@ 2a3afe19c180f8373fa02ff00254d5394fec0349f5804e0ad2f6067854ff28ac 7za920.zip + + 1.8.2 + ninja + https://github.com/ninja-build/ninja/releases/download/v1.8.2/ninja-linux.zip + d2fea9ff33b3ef353161ed906f260d565ca55b8ca0568fa07b1d2cab90a84a07 + ninja-linux.zip + + + 1.8.2 + ninja + https://github.com/ninja-build/ninja/releases/download/v1.8.2/ninja-mac.zip + 0347d55c66061652b26f48769d566761630ffde3143793b29064a57f356542cc + ninja-mac.zip + -- cgit v1.2.3 From 10e77be9fa5a4d6bb132c8d56ee8426de36ab449 Mon Sep 17 00:00:00 2001 From: Robert Schumacher Date: Wed, 28 Mar 2018 19:28:42 -0700 Subject: [folly] Add missing files. --- ports/folly/FindLZ4.cmake | 12 ++++++++++++ ports/folly/FindSnappy.cmake | 12 ++++++++++++ 2 files changed, 24 insertions(+) create mode 100644 ports/folly/FindLZ4.cmake create mode 100644 ports/folly/FindSnappy.cmake diff --git a/ports/folly/FindLZ4.cmake b/ports/folly/FindLZ4.cmake new file mode 100644 index 000000000..bf3140e15 --- /dev/null +++ b/ports/folly/FindLZ4.cmake @@ -0,0 +1,12 @@ +find_path(LZ4_INCLUDE_DIR lz4.h) + +find_package(LZ4_LIBRARY_DEBUG NAMES lz4d) +find_package(LZ4_LIBRARY_RELEASE NAMES lz4) + +select_library_configurations(LZ4_LIBRARY) + +include(FindPackageHandleStandardArgs) +FIND_PACKAGE_HANDLE_STANDARD_ARGS( + LZ4 DEFAULT_MSG + LZ4_LIBRARY LZ4_INCLUDE_DIR +) diff --git a/ports/folly/FindSnappy.cmake b/ports/folly/FindSnappy.cmake new file mode 100644 index 000000000..e8916d6e0 --- /dev/null +++ b/ports/folly/FindSnappy.cmake @@ -0,0 +1,12 @@ +find_path(SNAPPY_INCLUDE_DIR snappy.h) + +find_package(SNAPPY_LIBRARY_DEBUG NAMES snappyd) +find_package(SNAPPY_LIBRARY_RELEASE NAMES snappy) + +select_library_configurations(SNAPPY_LIBRARY) + +include(FindPackageHandleStandardArgs) +FIND_PACKAGE_HANDLE_STANDARD_ARGS( + SNAPPY DEFAULT_MSG + SNAPPY_LIBRARY SNAPPY_INCLUDE_DIR +) -- cgit v1.2.3 From 2e4d839dc5270137f9ff4f1df03c3d60d69d633e Mon Sep 17 00:00:00 2001 From: Koby Kahane Date: Thu, 29 Mar 2018 20:57:32 +0300 Subject: [cryptopp] Update to 6.1.0 (#3171) * [cryptopp] Update to 6.1.0 The CMake files for CryptoPP that were previously built into the project are now available separately in cryptopp-cmake, so we pick them up from there. * [cryptopp] USe ninja, fixup_cmake_targets --- ports/cryptopp/CONTROL | 2 +- ports/cryptopp/portfile.cmake | 35 ++++++++++++++++++++--------------- 2 files changed, 21 insertions(+), 16 deletions(-) diff --git a/ports/cryptopp/CONTROL b/ports/cryptopp/CONTROL index 00d14756a..ef8e6fd75 100644 --- a/ports/cryptopp/CONTROL +++ b/ports/cryptopp/CONTROL @@ -1,3 +1,3 @@ Source: cryptopp -Version: 5.6.5-1 +Version: 6.1.0-1 Description: Crypto++ is a free C++ class library of cryptographic schemes. diff --git a/ports/cryptopp/portfile.cmake b/ports/cryptopp/portfile.cmake index 4847c208b..b0b59d29c 100644 --- a/ports/cryptopp/portfile.cmake +++ b/ports/cryptopp/portfile.cmake @@ -3,13 +3,25 @@ if (VCPKG_LIBRARY_LINKAGE STREQUAL dynamic) set(VCPKG_LIBRARY_LINKAGE static) endif() include(vcpkg_common_functions) -set(SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src/cryptopp-CRYPTOPP_5_6_5) -vcpkg_download_distfile(ARCHIVE - URLS "https://github.com/weidai11/cryptopp/archive/CRYPTOPP_5_6_5.zip" - FILENAME "CRYPTOPP_5_6_5.zip" - SHA512 abca8089e2d587f59c503d2d6412b3128d061784349c735f3ee46be1cb9e3d0d0fed9a9173765fa033eb2dc744e03810de45b8cc2f8ca1672a36e4123648ea44 + +vcpkg_from_github( + OUT_SOURCE_PATH CMAKE_SOURCE_PATH + REPO noloader/cryptopp-cmake + REF aab149932675e4bb777a9d3d6b3f8b8182583fd7 + SHA512 748c77e936888d042bf4a72cc7ee3b7b2ecf16c003cb23296c1af413c9a0cba00cc942ecace26274fc8ac8bd4d848946beb9d7bf2253c5eab3315a4419ef5f1f + HEAD_REF master +) + +vcpkg_from_github( + OUT_SOURCE_PATH SOURCE_PATH + REPO weidai11/cryptopp + REF CRYPTOPP_6_1_0 + SHA512 4bc02fef33f1859a07434a4752c2575afd781056e9a91eed99a13cebe2c91d66cbc7173e34d362da63dad6d38f9594ff291accd27e111232996ccd536bba0f39 + HEAD_REF master ) -vcpkg_extract_source_archive(${ARCHIVE}) + +file(COPY ${CMAKE_SOURCE_PATH}/cryptopp-config.cmake DESTINATION ${SOURCE_PATH}) +file(COPY ${CMAKE_SOURCE_PATH}/CMakeLists.txt DESTINATION ${SOURCE_PATH}) # Dynamic linking should be avoided for Crypto++ to reduce the attack surface, # so generate a static lib for both dynamic and static vcpkg targets. @@ -19,6 +31,7 @@ vcpkg_extract_source_archive(${ARCHIVE}) vcpkg_configure_cmake( SOURCE_PATH ${SOURCE_PATH} + PREFER_NINJA OPTIONS -DBUILD_SHARED=OFF -DBUILD_STATIC=ON @@ -27,18 +40,10 @@ vcpkg_configure_cmake( ) vcpkg_install_cmake() +vcpkg_fixup_cmake_targets(CONFIG_PATH lib/cmake/cryptopp) # There is no way to suppress installation of the headers and resource files in debug build. file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include) -file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/share) - -# Remove executables -file(REMOVE ${CURRENT_PACKAGES_DIR}/bin/cryptest.exe) -file(REMOVE ${CURRENT_PACKAGES_DIR}/debug/bin/cryptest.exe) - -# Remove other files not required in package -file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/lib/cmake) -file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/lib/cmake) # Handle copyright file(COPY ${SOURCE_PATH}/License.txt DESTINATION ${CURRENT_PACKAGES_DIR}/share/cryptopp) -- cgit v1.2.3 From 3d87445cb0e42e67fa7321059bed0b20d171c605 Mon Sep 17 00:00:00 2001 From: Robert Schumacher Date: Thu, 29 Mar 2018 11:14:48 -0700 Subject: [abseil][aws-sdk-cpp][exiv2][rs-core-lib][tbb][thrift][zeromq] Upgrades --- ports/abseil/CONTROL | 2 +- ports/abseil/portfile.cmake | 4 ++-- ports/aws-sdk-cpp/CONTROL | 2 +- ports/aws-sdk-cpp/portfile.cmake | 4 ++-- ports/exiv2/CONTROL | 2 +- ports/exiv2/portfile.cmake | 4 ++-- ports/rs-core-lib/CONTROL | 2 +- ports/rs-core-lib/portfile.cmake | 4 ++-- ports/tbb/CONTROL | 2 +- ports/tbb/portfile.cmake | 4 ++-- ports/thrift/CONTROL | 2 +- ports/thrift/portfile.cmake | 4 ++-- ports/zeromq/CONTROL | 2 +- ports/zeromq/portfile.cmake | 4 ++-- 14 files changed, 21 insertions(+), 21 deletions(-) diff --git a/ports/abseil/CONTROL b/ports/abseil/CONTROL index 03462a816..a07f78c76 100644 --- a/ports/abseil/CONTROL +++ b/ports/abseil/CONTROL @@ -1,5 +1,5 @@ Source: abseil -Version: 2018-03-27 +Version: 2018-03-29 Description: an open-source collection designed to augment the C++ standard library. Abseil is an open-source collection of C++ library code designed to augment the C++ standard library. The Abseil library code is collected from Google's own C++ code base, has been extensively tested and used in production, and is the same code we depend on in our daily coding lives. In some cases, Abseil provides pieces missing from the C++ standard; in others, Abseil provides alternatives to the standard for special needs we've found through usage in the Google code base. We denote those cases clearly within the library code we provide you. diff --git a/ports/abseil/portfile.cmake b/ports/abseil/portfile.cmake index 817ac004a..bd1d799a2 100644 --- a/ports/abseil/portfile.cmake +++ b/ports/abseil/portfile.cmake @@ -7,8 +7,8 @@ endif() vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO abseil/abseil-cpp - REF 70b5fa948d920ccca86d143057497132f63a44f3 - SHA512 5964f4b082d183a3d8227c51617e7ac348b6c7b80264c0e96cdeba40a69979a0954f1792da20f760502d62771ac464400b820e4fe2b0b4ed55f8c6f81b17cc1e + REF d9b47d7888b39cd113bacacb9edd5023a71cbb3a + SHA512 d5aac7bbe7cdb1419f19eff80487a1d8fa03cde82db760bf9fab464a62ae66251c62f69ff13940db41af1bb287ea9680782773bf1cb19c15d489f711b390d734 HEAD_REF master ) diff --git a/ports/aws-sdk-cpp/CONTROL b/ports/aws-sdk-cpp/CONTROL index bd1ccbec5..d2f5c186b 100644 --- a/ports/aws-sdk-cpp/CONTROL +++ b/ports/aws-sdk-cpp/CONTROL @@ -1,5 +1,5 @@ Source: aws-sdk-cpp -Version: 1.4.23 +Version: 1.4.24 Description: AWS SDK for C++ Default-Features: dynamodb, ec2, kms, rds, s3, sns, sqs # Automatically generated by generateFeatures.ps1 diff --git a/ports/aws-sdk-cpp/portfile.cmake b/ports/aws-sdk-cpp/portfile.cmake index 7d98781aa..28097ee1a 100644 --- a/ports/aws-sdk-cpp/portfile.cmake +++ b/ports/aws-sdk-cpp/portfile.cmake @@ -3,8 +3,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO aws/aws-sdk-cpp - REF 1.4.23 - SHA512 5d77650c6468c5ab57eab2c5a5b647a5f4d56dc31cec0bca051e3e79554b386be5f6ed4b41cd7ca907e9e657c7dbef024fac2b9e505eb44204cf998ac1ee102c + REF 1.4.24 + SHA512 bda259caeeb909884128268f0dfe3ca58ce665be2a0304302f1fd09c4217cbcd34c20119009123aeb80377dfe5144b72cbd98d2acbdc9ffa729c09e380751bf2 HEAD_REF master ) diff --git a/ports/exiv2/CONTROL b/ports/exiv2/CONTROL index 06862802c..0f4ddb750 100644 --- a/ports/exiv2/CONTROL +++ b/ports/exiv2/CONTROL @@ -1,4 +1,4 @@ Source: exiv2 -Version: 2018-03-27 +Version: 2018-03-29 Build-Depends: zlib, expat, libiconv Description: Image metadata library and tools http://www.exiv2.org diff --git a/ports/exiv2/portfile.cmake b/ports/exiv2/portfile.cmake index 046d0eabc..f68070eea 100644 --- a/ports/exiv2/portfile.cmake +++ b/ports/exiv2/portfile.cmake @@ -3,8 +3,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO Exiv2/exiv2 - REF be992520b1570c2696d6ca1302fd49f1cb0164d8 - SHA512 fe4e2907268a8e5fe0b3a03fc39a5ba7d72daaf304b32c37ae8b0c0773711edc9ce0d194cd4f583b430ebf65ebcc58980a2a4e858c893c0bb1adb1886f6c0e6d + REF 8b7941b7332a3299b3b6061e93f352ef66440666 + SHA512 743a9792753915334e86c55112ef876bf0353924b85b0bf33ffb8217606ecb57954eec2d0e904f6e9fd9ea435b96f035bea793cb5040f54169eea0ba0c2fd7e3 HEAD_REF master ) diff --git a/ports/rs-core-lib/CONTROL b/ports/rs-core-lib/CONTROL index 03e5f4955..a6f837d0a 100644 --- a/ports/rs-core-lib/CONTROL +++ b/ports/rs-core-lib/CONTROL @@ -1,4 +1,4 @@ Source: rs-core-lib -Version: 2018-03-17 +Version: 2018-03-29 Description: Minimal common utilities by Ross Smith diff --git a/ports/rs-core-lib/portfile.cmake b/ports/rs-core-lib/portfile.cmake index 47e31c9bf..cca3be0a3 100644 --- a/ports/rs-core-lib/portfile.cmake +++ b/ports/rs-core-lib/portfile.cmake @@ -3,8 +3,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO CaptainCrowbar/rs-core-lib - REF c5b4522c336cd2348c9b65b01802ef1c4865fca2 - SHA512 a720d2f4cf6ef9dda1ce3e6bccf1495a8d29d3765d7456a5e8b79342ddc13f68428d17ea1e2993cb181450b0c2dca4c377735eef0f2f2e8a6bd66e6f2b78fd6a + REF 3300d39fef567adf90f59d07223e55ca44ed4f98 + SHA512 0e696a94ab71ca29c61075d917a26b01057f657537c5516cb3bf2fd046d5c61f7e74d83a7c2eba2d4d923f3bd8b125f61c6732d09ade59b0995f42eb3df22a17 HEAD_REF master ) diff --git a/ports/tbb/CONTROL b/ports/tbb/CONTROL index 1de2e57a5..0e19d650b 100644 --- a/ports/tbb/CONTROL +++ b/ports/tbb/CONTROL @@ -1,3 +1,3 @@ Source: tbb -Version: 2018_U2 +Version: 2018_U3 Description: Intel's Threading Building Blocks. diff --git a/ports/tbb/portfile.cmake b/ports/tbb/portfile.cmake index 12e07ba78..f74d096de 100644 --- a/ports/tbb/portfile.cmake +++ b/ports/tbb/portfile.cmake @@ -10,8 +10,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO 01org/tbb - REF 2018_U2 - SHA512 a94b55bcabec47424be1c2d4b7bf3502a545bc714250a260e152b00431420094dbab64c0355bd0004ee9ad10d85c7b920969bf4b6d9a30b3697c7c5202518841 + REF 2018_U3 + SHA512 e92a2aabcdd456c1676eb9ce20653908a867ea18ff118f5f039823f5a10a0da3de61d0044774ad38b137e636fa8602af009dfeb59c84005fe90c6206aa3306ab HEAD_REF tbb_2018) if(TRIPLET_SYSTEM_ARCH STREQUAL x86) diff --git a/ports/thrift/CONTROL b/ports/thrift/CONTROL index 7e21ecce6..82524e78d 100644 --- a/ports/thrift/CONTROL +++ b/ports/thrift/CONTROL @@ -1,4 +1,4 @@ Source: thrift -Version: 2018-03-23 +Version: 2018-03-29 Build-Depends: zlib, libevent, openssl, boost-range, boost-smart-ptr, boost-date-time, boost-locale, boost-scope-exit Description: Apache Thrift is a software project spanning a variety of programming languages and use cases. Our goal is to make reliable, performant communication and data serialization across languages as efficient and seamless as possible. Originally developed at Facebook, Thrift was open sourced in April 2007 and entered the Apache Incubator in May, 2008. Thrift became an Apache TLP in October, 2010. diff --git a/ports/thrift/portfile.cmake b/ports/thrift/portfile.cmake index eae7f5c73..0293cca6f 100644 --- a/ports/thrift/portfile.cmake +++ b/ports/thrift/portfile.cmake @@ -15,8 +15,8 @@ vcpkg_find_acquire_program(BISON) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO apache/thrift - REF 272470790ad6db791bd6f9db399b2cd2d5879f74 - SHA512 9f9ae5d72adf1b46970f7527fe3841349c5652e4721a16967f1d9edbe4b1ecc83f146ece492234da16ed7c033b172aa49dc7f5431bcdea37286a2dc21835691e + REF 930428438c0b6c8f60560cbb7dcad79042badacb + SHA512 b446126a8f697903abbdafcd8cd9a348fc97d34b2a207592cae1801e481b5159f92b7b0296a3531cd8f2a9e223e051f71ea63ce5da2dd2f67364db9bfd84dcf3 HEAD_REF master ) diff --git a/ports/zeromq/CONTROL b/ports/zeromq/CONTROL index 64f2a6507..a7f21a9b8 100644 --- a/ports/zeromq/CONTROL +++ b/ports/zeromq/CONTROL @@ -1,3 +1,3 @@ Source: zeromq -Version: 2018-03-27 +Version: 2018-03-29 Description: The ZeroMQ lightweight messaging kernel is a library which extends the standard socket interfaces with features traditionally provided by specialised messaging middleware products diff --git a/ports/zeromq/portfile.cmake b/ports/zeromq/portfile.cmake index 45e10bf3d..3220d8f3a 100644 --- a/ports/zeromq/portfile.cmake +++ b/ports/zeromq/portfile.cmake @@ -3,8 +3,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO zeromq/libzmq - REF 8fb5b10d8a60e06b9adebd22ecc118f13580375c - SHA512 5839410cf1842c0ac684f42ed52c4ed117104dce5b31106eff3c7e799e1d3d57f72413b4381ebb36e1835bf2aa44fcdc0e36140871141edb96ab50b4d8b23a8d + REF 2aa54d662048f420ac0dbd5d9b46559963a675f2 + SHA512 48abea6fdac733ff7c2da7b3f45f129dc904d5d5a59f41f4f47419f5c2483a5227aec1a605d76422071045ea82c76ceb55a521bb80fe5d7f77d5d01c43acb3e6 HEAD_REF master ) -- cgit v1.2.3 From e90c5e61eabe12d93486d17dde89b7de979da7d6 Mon Sep 17 00:00:00 2001 From: Krzysztof Czurylo Date: Thu, 29 Mar 2018 22:52:58 +0200 Subject: [pmdk] Rename and update to version 1.4 (#3173) * [pmdk] Rename and update to version 1.4 The NVML project has been renamed to PMDK (Persistent Memory Development Kit). PMDK version 1.4 is the first official release with the new name. * [pmdk] Use vcpkg_from_github more -- avoid separate variable declarations --- ports/nvml/CONTROL | 3 -- ports/nvml/portfile.cmake | 74 --------------------------------------------- ports/pmdk/CONTROL | 3 ++ ports/pmdk/portfile.cmake | 77 +++++++++++++++++++++++++++++++++++++++++++++++ 4 files changed, 80 insertions(+), 77 deletions(-) delete mode 100644 ports/nvml/CONTROL delete mode 100644 ports/nvml/portfile.cmake create mode 100644 ports/pmdk/CONTROL create mode 100644 ports/pmdk/portfile.cmake diff --git a/ports/nvml/CONTROL b/ports/nvml/CONTROL deleted file mode 100644 index 8bf941bd3..000000000 --- a/ports/nvml/CONTROL +++ /dev/null @@ -1,3 +0,0 @@ -Source: nvml -Version: 1.3-0 -Description: Non-Volatile Memory Library \ No newline at end of file diff --git a/ports/nvml/portfile.cmake b/ports/nvml/portfile.cmake deleted file mode 100644 index 9e51c2bda..000000000 --- a/ports/nvml/portfile.cmake +++ /dev/null @@ -1,74 +0,0 @@ - -set(NVML_VERSION 1.3) -set(NVML_HASH 59fb552c693d5279ec86eff8eb1c36832c9c5beb6492a64b54b21c09d90ed52cba22d57912a304cf1ec17c4633da641200fd50dbe4a38355f43c674842f991bd) -set(SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src/${NVML_VERSION}) - -include(vcpkg_common_functions) - -if (VCPKG_LIBRARY_LINKAGE STREQUAL static) - message(STATUS "WARNING: Static building not supported. Building dynamic.") - set(VCPKG_LIBRARY_LINKAGE dynamic) -endif() - -if (TRIPLET_SYSTEM_ARCH MATCHES "arm") - message(FATAL_ERROR "ARM is currently not supported") -elseif (TRIPLET_SYSTEM_ARCH MATCHES "x86") - message(FATAL_ERROR "x86 is not supported. Please use nvml:x64-windows or set environment variable VCPKG_DEFAULT_TRIPLET to 'x64-windows'") -else () - set(MSBUILD_PLATFORM ${TRIPLET_SYSTEM_ARCH}) -endif() - -# Download source -vcpkg_from_github( - OUT_SOURCE_PATH SOURCE_PATH - REPO pmem/nvml - REF ${NVML_VERSION} - SHA512 ${NVML_HASH} - HEAD_REF master -) - -# Build only the selected projects -vcpkg_build_msbuild( - PROJECT_PATH ${SOURCE_PATH}/src/NVML.sln - PLATFORM x64 - TARGET "Solution Items\\libpmem,Solution Items\\libpmemlog,Solution Items\\libpmemblk,Solution Items\\libpmemobj,Solution Items\\libpmempool,Solution Items\\libvmem,Solution Items\\Tools\\pmempool" - OPTIONS /p:SRCVERSION=${NVML_VERSION} -) - -set(DEBUG_ARTIFACTS_PATH ${SOURCE_PATH}/src/x64/Debug) -set(RELEASE_ARTIFACTS_PATH ${SOURCE_PATH}/src/x64/Release) - -# Install header files -file(GLOB HEADER_FILES ${SOURCE_PATH}/src/include/*.h) -file(INSTALL ${HEADER_FILES} DESTINATION ${CURRENT_PACKAGES_DIR}/include) -file(GLOB HEADER_FILES ${SOURCE_PATH}/src/include/libpmemobj/*.h) -file(INSTALL ${HEADER_FILES} DESTINATION ${CURRENT_PACKAGES_DIR}/include/libpmemobj) -file(GLOB HEADER_FILES ${SOURCE_PATH}/src/include/libpmemobj++/*.hpp) -file(INSTALL ${HEADER_FILES} DESTINATION ${CURRENT_PACKAGES_DIR}/include/libpmemobj++) -# Remove unneeded header files -file(REMOVE ${CURRENT_PACKAGES_DIR}/include/libvmmalloc.h) -file(REMOVE ${CURRENT_PACKAGES_DIR}/include/librpmem.h) - -# Install libraries (debug) -file(GLOB LIB_DEBUG_FILES ${DEBUG_ARTIFACTS_PATH}/lib[pv]mem*.lib ${DEBUG_ARTIFACTS_PATH}/lib[pv]mem*.exp) -file(INSTALL ${LIB_DEBUG_FILES} DESTINATION ${CURRENT_PACKAGES_DIR}/debug/lib) -file(REMOVE ${CURRENT_PACKAGES_DIR}/debug/lib/libpmemcommon.lib) -file(GLOB LIB_DEBUG_FILES ${DEBUG_ARTIFACTS_PATH}/lib[pv]mem*.dll) -file(INSTALL ${LIB_DEBUG_FILES} DESTINATION ${CURRENT_PACKAGES_DIR}/debug/bin) - -# Install libraries (release) -file(GLOB LIB_RELEASE_FILES ${RELEASE_ARTIFACTS_PATH}/lib[pv]mem*.lib ${RELEASE_ARTIFACTS_PATH}/lib[pv]mem*.exp) -file(INSTALL ${LIB_RELEASE_FILES} DESTINATION ${CURRENT_PACKAGES_DIR}/lib) -file(REMOVE ${CURRENT_PACKAGES_DIR}/lib/libpmemcommon.lib) -file(GLOB LIB_RELEASE_FILES ${RELEASE_ARTIFACTS_PATH}/lib[pv]mem*.dll) -file(INSTALL ${LIB_RELEASE_FILES} DESTINATION ${CURRENT_PACKAGES_DIR}/bin) - -# Install tools (release only) -file(INSTALL ${RELEASE_ARTIFACTS_PATH}/pmempool.exe DESTINATION ${CURRENT_PACKAGES_DIR}/tools/nvml) -vcpkg_copy_tool_dependencies(${CURRENT_PACKAGES_DIR}/tools/nvml) - -vcpkg_copy_pdbs() - -# Handle copyright -file(COPY ${SOURCE_PATH}/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/nvml) -file(RENAME ${CURRENT_PACKAGES_DIR}/share/nvml/LICENSE ${CURRENT_PACKAGES_DIR}/share/nvml/copyright) diff --git a/ports/pmdk/CONTROL b/ports/pmdk/CONTROL new file mode 100644 index 000000000..f440b68bc --- /dev/null +++ b/ports/pmdk/CONTROL @@ -0,0 +1,3 @@ +Source: pmdk +Version: 1.4-1 +Description: Persistent Memory Development Kit \ No newline at end of file diff --git a/ports/pmdk/portfile.cmake b/ports/pmdk/portfile.cmake new file mode 100644 index 000000000..89c48a8fb --- /dev/null +++ b/ports/pmdk/portfile.cmake @@ -0,0 +1,77 @@ +include(vcpkg_common_functions) + +if (VCPKG_LIBRARY_LINKAGE STREQUAL static) + message(STATUS "Static building not supported. Building dynamic.") + set(VCPKG_LIBRARY_LINKAGE dynamic) +endif() +if(VCPKG_CRT_LINKAGE STREQUAL "static") + message(FATAL_ERROR "Static CRT linkage is not supported") +endif() + +if (TRIPLET_SYSTEM_ARCH MATCHES "arm") + message(FATAL_ERROR "ARM is currently not supported") +elseif (TRIPLET_SYSTEM_ARCH MATCHES "x86") + message(FATAL_ERROR "x86 is not supported. Please use pmdk:x64-windows instead.") +endif() + +# Download source +vcpkg_from_github( + OUT_SOURCE_PATH SOURCE_PATH + REPO pmem/pmdk + REF 1.4 + SHA512 95dbea9acfea4a6cb433a25f56f7484946a93fbce1c5e0e1d6ff36e0824e3e0e9f28f37024918998358f8ff12e69d0902fcf88357b9ad12695f32e06e86ffac8 + HEAD_REF master +) + +get_filename_component(PMDK_VERSION "${SOURCE_PATH}" NAME) +string(REPLACE "pmdk-" "" PMDK_VERSION "${PMDK_VERSION}") + +# Build only the selected projects +vcpkg_build_msbuild( + PROJECT_PATH ${SOURCE_PATH}/src/PMDK.sln + PLATFORM x64 + PLATFORM_TOOLSET v140 + TARGET_PLATFORM_VERSION 10.0.16299.0 + TARGET "Solution Items\\libpmem,Solution Items\\libpmemlog,Solution Items\\libpmemblk,Solution Items\\libpmemobj,Solution Items\\libpmemcto,Solution Items\\libpmempool,Solution Items\\libvmem,Solution Items\\Tools\\pmempool" + OPTIONS /p:SRCVERSION=${PMDK_VERSION} +) + +set(DEBUG_ARTIFACTS_PATH ${SOURCE_PATH}/src/x64/Debug) +set(RELEASE_ARTIFACTS_PATH ${SOURCE_PATH}/src/x64/Release) + +# Install header files +file(GLOB HEADER_FILES ${SOURCE_PATH}/src/include/*.h) +file(INSTALL ${HEADER_FILES} DESTINATION ${CURRENT_PACKAGES_DIR}/include) +file(GLOB HEADER_FILES ${SOURCE_PATH}/src/include/libpmemobj/*.h) +file(INSTALL ${HEADER_FILES} DESTINATION ${CURRENT_PACKAGES_DIR}/include/libpmemobj) +file(GLOB HEADER_FILES ${SOURCE_PATH}/src/include/libpmemobj++/*.hpp) +file(INSTALL ${HEADER_FILES} DESTINATION ${CURRENT_PACKAGES_DIR}/include/libpmemobj++) + +# Remove unneeded header files +file(REMOVE ${CURRENT_PACKAGES_DIR}/include/libvmmalloc.h) +file(REMOVE ${CURRENT_PACKAGES_DIR}/include/librpmem.h) + +# Install libraries (debug) +file(GLOB LIB_DEBUG_FILES ${DEBUG_ARTIFACTS_PATH}/lib[pv]mem*.lib ${DEBUG_ARTIFACTS_PATH}/lib[pv]mem*.exp) +file(INSTALL ${LIB_DEBUG_FILES} DESTINATION ${CURRENT_PACKAGES_DIR}/debug/lib) +file(REMOVE ${CURRENT_PACKAGES_DIR}/debug/lib/libpmemcommon.lib) +file(GLOB LIB_DEBUG_FILES ${DEBUG_ARTIFACTS_PATH}/lib[pv]mem*.dll) +file(INSTALL ${LIB_DEBUG_FILES} DESTINATION ${CURRENT_PACKAGES_DIR}/debug/bin) + +# Install libraries (release) +file(GLOB LIB_RELEASE_FILES ${RELEASE_ARTIFACTS_PATH}/lib[pv]mem*.lib ${RELEASE_ARTIFACTS_PATH}/lib[pv]mem*.exp) +file(INSTALL ${LIB_RELEASE_FILES} DESTINATION ${CURRENT_PACKAGES_DIR}/lib) +file(REMOVE ${CURRENT_PACKAGES_DIR}/lib/libpmemcommon.lib) +file(GLOB LIB_RELEASE_FILES ${RELEASE_ARTIFACTS_PATH}/lib[pv]mem*.dll) +file(INSTALL ${LIB_RELEASE_FILES} DESTINATION ${CURRENT_PACKAGES_DIR}/bin) + +# Install tools (release only) +file(INSTALL ${RELEASE_ARTIFACTS_PATH}/pmempool.exe DESTINATION ${CURRENT_PACKAGES_DIR}/tools/pmdk) + +vcpkg_copy_tool_dependencies(${CURRENT_PACKAGES_DIR}/tools/pmdk) + +vcpkg_copy_pdbs() + +# Handle copyright +file(COPY ${SOURCE_PATH}/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/pmdk) +file(RENAME ${CURRENT_PACKAGES_DIR}/share/pmdk/LICENSE ${CURRENT_PACKAGES_DIR}/share/pmdk/copyright) -- cgit v1.2.3 From 6c118ba7714a98dd37ae55dc891eadb226f5242f Mon Sep 17 00:00:00 2001 From: Alexander Karatarakis Date: Thu, 29 Mar 2018 13:57:38 -0700 Subject: [unrar/recast/yoga] Bump version, fix whitespace --- ports/recast/CONTROL | 2 +- ports/recast/portfile.cmake | 4 ++-- ports/unrar/CONTROL | 2 +- ports/unrar/portfile.cmake | 2 +- ports/yoga/CONTROL | 2 +- ports/yoga/portfile.cmake | 2 +- 6 files changed, 7 insertions(+), 7 deletions(-) diff --git a/ports/recast/CONTROL b/ports/recast/CONTROL index 34bb2b34a..4cc61e30d 100644 --- a/ports/recast/CONTROL +++ b/ports/recast/CONTROL @@ -1,3 +1,3 @@ Source: recast -Version: 1.5.1 +Version: 1.5.1-1 Description: Navigation-mesh Toolset for Games diff --git a/ports/recast/portfile.cmake b/ports/recast/portfile.cmake index e0670dbae..7d9f08f93 100644 --- a/ports/recast/portfile.cmake +++ b/ports/recast/portfile.cmake @@ -1,8 +1,8 @@ include(vcpkg_common_functions) if (VCPKG_LIBRARY_LINKAGE STREQUAL dynamic) - message(WARNING "Dynamic not supported building static") - set(VCPKG_LIBRARY_LINKAGE static) + message(WARNING "Dynamic not supported, building static") + set(VCPKG_LIBRARY_LINKAGE static) endif() vcpkg_from_github( diff --git a/ports/unrar/CONTROL b/ports/unrar/CONTROL index ce6d4dab8..d9c586c6a 100644 --- a/ports/unrar/CONTROL +++ b/ports/unrar/CONTROL @@ -1,3 +1,3 @@ Source: unrar -Version: 5.5.8 +Version: 5.5.8-1 Description: rarlab's unrar libary diff --git a/ports/unrar/portfile.cmake b/ports/unrar/portfile.cmake index 19c7c9d7a..4ad834d15 100644 --- a/ports/unrar/portfile.cmake +++ b/ports/unrar/portfile.cmake @@ -6,7 +6,7 @@ set(UNRAR_URL http://www.rarlab.com/rar/${UNRAR_FILENAME}) set(SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src/unrar) if (VCPKG_LIBRARY_LINKAGE STREQUAL "static") - message(STATUS "Unrar buildsystem doesn't support static building. Building dynamic instead.") + message(STATUS "Unrar buildsystem doesn't support static building. Building dynamic instead.") set(VCPKG_LIBRARY_LINKAGE dynamic) endif() diff --git a/ports/yoga/CONTROL b/ports/yoga/CONTROL index c8ff36c24..c4bbe1a69 100644 --- a/ports/yoga/CONTROL +++ b/ports/yoga/CONTROL @@ -1,3 +1,3 @@ Source: yoga -Version: 1.7.0 +Version: 1.7.0-1 Description: Yoga is a cross-platform layout engine which implements Flexbox diff --git a/ports/yoga/portfile.cmake b/ports/yoga/portfile.cmake index d61017d63..a261d5106 100644 --- a/ports/yoga/portfile.cmake +++ b/ports/yoga/portfile.cmake @@ -12,7 +12,7 @@ include(vcpkg_common_functions) if (VCPKG_LIBRARY_LINKAGE STREQUAL dynamic) - message(WARNING "Dynamic not supported building static") + message(WARNING "Dynamic not supported, building static") set(VCPKG_LIBRARY_LINKAGE static) elseif (VCPKG_CMAKE_SYSTEM_NAME STREQUAL WindowsStore) message(FATAL_ERROR "Error: UWP builds not supported yet.") -- cgit v1.2.3 From ba7b8e6d7336fd4529cfe1de50b224a98d6ff496 Mon Sep 17 00:00:00 2001 From: Alexander Karatarakis Date: Thu, 29 Mar 2018 15:29:16 -0700 Subject: Add message for appleclang versions that don't support std::filesystem --- toolsrc/CMakeLists.txt | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/toolsrc/CMakeLists.txt b/toolsrc/CMakeLists.txt index da0f41631..2a1304526 100644 --- a/toolsrc/CMakeLists.txt +++ b/toolsrc/CMakeLists.txt @@ -3,6 +3,12 @@ project(vcpkg C CXX) if(CMAKE_COMPILER_IS_GNUXX OR CMAKE_CXX_COMPILER_ID MATCHES "GNU") set(GCC 1) +elseif(CMAKE_CXX_COMPILER_ID MATCHES "AppleClang") + if(CMAKE_CXX_COMPILER_VERSION VERSION_LESS_EQUAL 9.0.0) + message(FATAL_ERROR "Apple clang versions 9 and below do not have support for the C++ Filesystem TS. Please install gcc6 or newer from homebrew (brew install gcc6).") + else() + set(CLANG 1) + endif() elseif(CMAKE_CXX_COMPILER_ID MATCHES "[Cc]lang") set(CLANG 1) elseif(MSVC) -- cgit v1.2.3 From ca58367c9ae70739eb55fa46ed2b339e3aaf50df Mon Sep 17 00:00:00 2001 From: Robert Schumacher Date: Thu, 29 Mar 2018 18:34:38 -0700 Subject: [cryptopp] Fix UWP builds --- ports/cryptopp/CONTROL | 2 +- ports/cryptopp/cmake.patch | 15 +++++++++++++++ ports/cryptopp/patch.patch | 12 ++++++++++++ ports/cryptopp/portfile.cmake | 7 +++++++ 4 files changed, 35 insertions(+), 1 deletion(-) create mode 100644 ports/cryptopp/cmake.patch create mode 100644 ports/cryptopp/patch.patch diff --git a/ports/cryptopp/CONTROL b/ports/cryptopp/CONTROL index ef8e6fd75..6fea020bd 100644 --- a/ports/cryptopp/CONTROL +++ b/ports/cryptopp/CONTROL @@ -1,3 +1,3 @@ Source: cryptopp -Version: 6.1.0-1 +Version: 6.1.0-2 Description: Crypto++ is a free C++ class library of cryptographic schemes. diff --git a/ports/cryptopp/cmake.patch b/ports/cryptopp/cmake.patch new file mode 100644 index 000000000..fbe725eb9 --- /dev/null +++ b/ports/cryptopp/cmake.patch @@ -0,0 +1,15 @@ +diff --git a/CMakeLists.txt b/CMakeLists.txt +index 5b6e1e6..a0adcf6 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -329,6 +329,10 @@ if (CMAKE_CXX_COMPILER_ID STREQUAL "MSVC") + SET( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /FI\"winapifamily.h\"" ) + endif () + ++if(WINDOWS_STORE) ++ add_definitions(-DCRYPTOPP_DISABLE_NACL=1) ++endif() ++ + # Enable PIC for all target machines except 32-bit i386 due to register pressures. + if (NOT CRYPTOPP_I386) + SET(CMAKE_POSITION_INDEPENDENT_CODE 1) diff --git a/ports/cryptopp/patch.patch b/ports/cryptopp/patch.patch new file mode 100644 index 000000000..5c49d2757 --- /dev/null +++ b/ports/cryptopp/patch.patch @@ -0,0 +1,12 @@ +diff --git a/config.h b/config.h +index b96b7aa..3f004ac 100644 +--- a/config.h ++++ b/config.h +@@ -795,6 +795,7 @@ NAMESPACE_END + #endif + + #ifdef CRYPTOPP_WIN32_AVAILABLE ++#include + # if !defined(WINAPI_FAMILY) + # define THREAD_TIMER_AVAILABLE + # elif defined(WINAPI_FAMILY) diff --git a/ports/cryptopp/portfile.cmake b/ports/cryptopp/portfile.cmake index b0b59d29c..6b4b844c4 100644 --- a/ports/cryptopp/portfile.cmake +++ b/ports/cryptopp/portfile.cmake @@ -23,6 +23,13 @@ vcpkg_from_github( file(COPY ${CMAKE_SOURCE_PATH}/cryptopp-config.cmake DESTINATION ${SOURCE_PATH}) file(COPY ${CMAKE_SOURCE_PATH}/CMakeLists.txt DESTINATION ${SOURCE_PATH}) +vcpkg_apply_patches( + SOURCE_PATH "${SOURCE_PATH}" + PATCHES + "${CMAKE_CURRENT_LIST_DIR}/patch.patch" + "${CMAKE_CURRENT_LIST_DIR}/cmake.patch" +) + # Dynamic linking should be avoided for Crypto++ to reduce the attack surface, # so generate a static lib for both dynamic and static vcpkg targets. # See also: -- cgit v1.2.3 From f9d4692749ad68340a07453add49a8ef029fa155 Mon Sep 17 00:00:00 2001 From: Alexander Karatarakis Date: Thu, 29 Mar 2018 21:14:06 -0700 Subject: [vcpkg.cmake] Remove Windows SDK detection. Let cmake detect it --- scripts/buildsystems/vcpkg.cmake | 12 +----------- 1 file changed, 1 insertion(+), 11 deletions(-) diff --git a/scripts/buildsystems/vcpkg.cmake b/scripts/buildsystems/vcpkg.cmake index 10e3c3f13..0c32b22fb 100644 --- a/scripts/buildsystems/vcpkg.cmake +++ b/scripts/buildsystems/vcpkg.cmake @@ -44,7 +44,7 @@ else() elseif(_VCPKG_CL MATCHES "arm/cl.exe$") set(_VCPKG_TARGET_TRIPLET_ARCH arm) elseif(_VCPKG_CL MATCHES "arm64/cl.exe$") - set(_VCPKG_TARGET_TRIPLET_ARCH arm64) + set(_VCPKG_TARGET_TRIPLET_ARCH arm64) elseif(_VCPKG_CL MATCHES "bin/cl.exe$" OR _VCPKG_CL MATCHES "x86/cl.exe$") set(_VCPKG_TARGET_TRIPLET_ARCH x86) elseif(CMAKE_HOST_SYSTEM_PROCESSOR STREQUAL "x86_64") @@ -110,16 +110,6 @@ list(APPEND CMAKE_LIBRARY_PATH ${_VCPKG_INSTALLED_DIR}/${VCPKG_TARGET_TRIPLET}/lib/manual-link ) -if (NOT DEFINED CMAKE_SYSTEM_VERSION AND _VCPKG_TARGET_TRIPLET_PLAT MATCHES "windows|uwp") - include(${_VCPKG_ROOT_DIR}/scripts/cmake/vcpkg_get_windows_sdk.cmake) - # This is used as an implicit parameter for vcpkg_get_windows_sdk - set(VCPKG_ROOT_DIR ${_VCPKG_ROOT_DIR}) - vcpkg_get_windows_sdk(WINDOWS_SDK_VERSION) - unset(VCPKG_ROOT_DIR) - set(CMAKE_SYSTEM_VERSION ${WINDOWS_SDK_VERSION} CACHE STRING "Windows SDK version") - message(STATUS "Found Windows SDK ${WINDOWS_SDK_VERSION}") -endif() - file(TO_CMAKE_PATH "$ENV{PROGRAMFILES}" _programfiles) set(CMAKE_SYSTEM_IGNORE_PATH "${_programfiles}/OpenSSL" -- cgit v1.2.3 From 0842b6c327f19df6ec6f7bff3909bcf904a5c5c9 Mon Sep 17 00:00:00 2001 From: Robert Schumacher Date: Fri, 30 Mar 2018 14:43:42 -0700 Subject: [tesseract] Automatically link ws2_32 to prevent missing symbol issues in clients. --- ports/tesseract/CONTROL | 2 +- ports/tesseract/portfile.cmake | 1 + ports/tesseract/ws2-32.patch | 12 ++++++++++++ 3 files changed, 14 insertions(+), 1 deletion(-) create mode 100644 ports/tesseract/ws2-32.patch diff --git a/ports/tesseract/CONTROL b/ports/tesseract/CONTROL index 6e0b0428d..264a09584 100644 --- a/ports/tesseract/CONTROL +++ b/ports/tesseract/CONTROL @@ -1,4 +1,4 @@ Source: tesseract -Version: 3.05.01-2 +Version: 3.05.01-3 Description: An OCR Engine that was developed at HP Labs between 1985 and 1995... and now at Google. Build-Depends: leptonica, icu diff --git a/ports/tesseract/portfile.cmake b/ports/tesseract/portfile.cmake index 5c37f51b3..cebf4316b 100644 --- a/ports/tesseract/portfile.cmake +++ b/ports/tesseract/portfile.cmake @@ -17,6 +17,7 @@ vcpkg_apply_patches( SOURCE_PATH ${SOURCE_PATH} PATCHES ${CMAKE_CURRENT_LIST_DIR}/use-vcpkg-icu.patch + ${CMAKE_CURRENT_LIST_DIR}/ws2-32.patch ) # The built-in cmake FindICU is better diff --git a/ports/tesseract/ws2-32.patch b/ports/tesseract/ws2-32.patch new file mode 100644 index 000000000..1d3be8189 --- /dev/null +++ b/ports/tesseract/ws2-32.patch @@ -0,0 +1,12 @@ +diff --git a/viewer/svutil.cpp b/viewer/svutil.cpp +index 34a2286..bc2a7e1 100644 +--- a/viewer/svutil.cpp ++++ b/viewer/svutil.cpp +@@ -23,6 +23,7 @@ + #include + #ifdef _WIN32 + #include ++#pragma comment(lib, "Ws2_32.lib") + struct addrinfo { + struct sockaddr* ai_addr; + int ai_addrlen; -- cgit v1.2.3 From 35bbd4015a906c92b394698779e57fc2945505cc Mon Sep 17 00:00:00 2001 From: Alexander Karatarakis Date: Fri, 30 Mar 2018 14:46:22 -0700 Subject: Improve message for appleclang --- toolsrc/CMakeLists.txt | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/toolsrc/CMakeLists.txt b/toolsrc/CMakeLists.txt index 2a1304526..acc12f2b3 100644 --- a/toolsrc/CMakeLists.txt +++ b/toolsrc/CMakeLists.txt @@ -4,8 +4,12 @@ project(vcpkg C CXX) if(CMAKE_COMPILER_IS_GNUXX OR CMAKE_CXX_COMPILER_ID MATCHES "GNU") set(GCC 1) elseif(CMAKE_CXX_COMPILER_ID MATCHES "AppleClang") - if(CMAKE_CXX_COMPILER_VERSION VERSION_LESS_EQUAL 9.0.0) - message(FATAL_ERROR "Apple clang versions 9 and below do not have support for the C++ Filesystem TS. Please install gcc6 or newer from homebrew (brew install gcc6).") + if(NOT VCPKG_ALLOW_APPLE_CLANG) + message(FATAL_ERROR +"Building the vcpkg tool requires support for the C++ Filesystem TS. +Apple clang versions 9 and below do not have support for it. +Please install gcc6 or newer from homebrew (brew install gcc6). +If you would like to try anyway, set VCPKG_ALLOW_APPLE_CLANG.") else() set(CLANG 1) endif() -- cgit v1.2.3 From cf9987e21aee94cd4b4c991c6eb788ec87177923 Mon Sep 17 00:00:00 2001 From: Robert Schumacher Date: Fri, 30 Mar 2018 15:21:22 -0700 Subject: [openssl] Do not pull in winsock.h from rand.h --- ports/openssl/CONTROL | 2 +- ports/openssl/portfile.cmake | 4 ++++ 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/ports/openssl/CONTROL b/ports/openssl/CONTROL index 9266dd10d..d5ac7c890 100644 --- a/ports/openssl/CONTROL +++ b/ports/openssl/CONTROL @@ -1,3 +1,3 @@ Source: openssl -Version: 1.0.2o +Version: 1.0.2o-1 Description: OpenSSL is an open source project that provides a robust, commercial-grade, and full-featured toolkit for the Transport Layer Security (TLS) and Secure Sockets Layer (SSL) protocols. It is also a general-purpose cryptography library. diff --git a/ports/openssl/portfile.cmake b/ports/openssl/portfile.cmake index 458aa07b6..a6e5fd110 100644 --- a/ports/openssl/portfile.cmake +++ b/ports/openssl/portfile.cmake @@ -155,6 +155,10 @@ file(READ "${CURRENT_PACKAGES_DIR}/include/openssl/dtls1.h" _contents) string(REPLACE "" "" _contents "${_contents}") file(WRITE "${CURRENT_PACKAGES_DIR}/include/openssl/dtls1.h" "${_contents}") +file(READ "${CURRENT_PACKAGES_DIR}/include/openssl/rand.h" _contents) +string(REPLACE "# include " "#ifndef _WINSOCKAPI_\n#define _WINSOCKAPI_\n#endif\n# include " _contents "${_contents}") +file(WRITE "${CURRENT_PACKAGES_DIR}/include/openssl/rand.h" "${_contents}") + vcpkg_copy_pdbs() file(COPY ${CMAKE_CURRENT_LIST_DIR}/usage DESTINATION ${CURRENT_PACKAGES_DIR}/share/${PORT}) -- cgit v1.2.3 From eea766d2d0ea285541bfd753b68eaa8c3455304a Mon Sep 17 00:00:00 2001 From: Robert Schumacher Date: Thu, 29 Mar 2018 18:53:22 -0700 Subject: [folly][rocksdb] Fix lz4+snappy support --- ports/folly/CONTROL | 2 +- ports/folly/FindLZ4.cmake | 7 ++++--- ports/folly/FindSnappy.cmake | 7 ++++--- ports/rocksdb/CONTROL | 10 +++++++++- ports/rocksdb/Findlz4.cmake | 13 +++++++++++++ ports/rocksdb/Findsnappy.cmake | 13 +++++++++++++ ports/rocksdb/portfile.cmake | 28 +++++++++++++++++++++++----- 7 files changed, 67 insertions(+), 13 deletions(-) create mode 100644 ports/rocksdb/Findlz4.cmake create mode 100644 ports/rocksdb/Findsnappy.cmake diff --git a/ports/folly/CONTROL b/ports/folly/CONTROL index 457874906..cb3a464af 100644 --- a/ports/folly/CONTROL +++ b/ports/folly/CONTROL @@ -1,5 +1,5 @@ Source: folly -Version: 2018.03.19.00-1 +Version: 2018.03.19.00-2 Description: An open-source C++ library developed and used at Facebook. The library is UNSTABLE on Windows Build-Depends: openssl, libevent, double-conversion, glog, gflags, boost-chrono, boost-context, boost-conversion, boost-crc, boost-date-time, boost-filesystem, boost-multi-index, boost-program-options, boost-regex, boost-system, boost-thread Default-Features: zlib diff --git a/ports/folly/FindLZ4.cmake b/ports/folly/FindLZ4.cmake index bf3140e15..f80962c66 100644 --- a/ports/folly/FindLZ4.cmake +++ b/ports/folly/FindLZ4.cmake @@ -1,9 +1,10 @@ find_path(LZ4_INCLUDE_DIR lz4.h) -find_package(LZ4_LIBRARY_DEBUG NAMES lz4d) -find_package(LZ4_LIBRARY_RELEASE NAMES lz4) +find_library(LZ4_LIBRARY_DEBUG NAMES lz4d) +find_library(LZ4_LIBRARY_RELEASE NAMES lz4) -select_library_configurations(LZ4_LIBRARY) +include(SelectLibraryConfigurations) +select_library_configurations(LZ4) include(FindPackageHandleStandardArgs) FIND_PACKAGE_HANDLE_STANDARD_ARGS( diff --git a/ports/folly/FindSnappy.cmake b/ports/folly/FindSnappy.cmake index e8916d6e0..253d0d84c 100644 --- a/ports/folly/FindSnappy.cmake +++ b/ports/folly/FindSnappy.cmake @@ -1,9 +1,10 @@ find_path(SNAPPY_INCLUDE_DIR snappy.h) -find_package(SNAPPY_LIBRARY_DEBUG NAMES snappyd) -find_package(SNAPPY_LIBRARY_RELEASE NAMES snappy) +find_library(SNAPPY_LIBRARY_DEBUG NAMES snappyd) +find_library(SNAPPY_LIBRARY_RELEASE NAMES snappy) -select_library_configurations(SNAPPY_LIBRARY) +include(SelectLibraryConfigurations) +select_library_configurations(SNAPPY) include(FindPackageHandleStandardArgs) FIND_PACKAGE_HANDLE_STANDARD_ARGS( diff --git a/ports/rocksdb/CONTROL b/ports/rocksdb/CONTROL index 90511f0b2..5e6851f83 100644 --- a/ports/rocksdb/CONTROL +++ b/ports/rocksdb/CONTROL @@ -1,4 +1,12 @@ Source: rocksdb -Version: 5.11.3 +Version: 5.11.3-1 Description: A library that provides an embeddable, persistent key-value store for fast storage Build-Depends: zlib + +Feature: lz4 +Build-Depends: lz4 +Description: lz4 support in rocksdb + +Feature: snappy +Build-Depends: snappy +Description: snappy support in rocksdb diff --git a/ports/rocksdb/Findlz4.cmake b/ports/rocksdb/Findlz4.cmake new file mode 100644 index 000000000..f80962c66 --- /dev/null +++ b/ports/rocksdb/Findlz4.cmake @@ -0,0 +1,13 @@ +find_path(LZ4_INCLUDE_DIR lz4.h) + +find_library(LZ4_LIBRARY_DEBUG NAMES lz4d) +find_library(LZ4_LIBRARY_RELEASE NAMES lz4) + +include(SelectLibraryConfigurations) +select_library_configurations(LZ4) + +include(FindPackageHandleStandardArgs) +FIND_PACKAGE_HANDLE_STANDARD_ARGS( + LZ4 DEFAULT_MSG + LZ4_LIBRARY LZ4_INCLUDE_DIR +) diff --git a/ports/rocksdb/Findsnappy.cmake b/ports/rocksdb/Findsnappy.cmake new file mode 100644 index 000000000..253d0d84c --- /dev/null +++ b/ports/rocksdb/Findsnappy.cmake @@ -0,0 +1,13 @@ +find_path(SNAPPY_INCLUDE_DIR snappy.h) + +find_library(SNAPPY_LIBRARY_DEBUG NAMES snappyd) +find_library(SNAPPY_LIBRARY_RELEASE NAMES snappy) + +include(SelectLibraryConfigurations) +select_library_configurations(SNAPPY) + +include(FindPackageHandleStandardArgs) +FIND_PACKAGE_HANDLE_STANDARD_ARGS( + SNAPPY DEFAULT_MSG + SNAPPY_LIBRARY SNAPPY_INCLUDE_DIR +) diff --git a/ports/rocksdb/portfile.cmake b/ports/rocksdb/portfile.cmake index e37b79633..0278a3b84 100644 --- a/ports/rocksdb/portfile.cmake +++ b/ports/rocksdb/portfile.cmake @@ -9,14 +9,19 @@ vcpkg_from_github( ) vcpkg_apply_patches( - SOURCE_PATH ${SOURCE_PATH} - PATCHES + SOURCE_PATH ${SOURCE_PATH} + PATCHES "${CMAKE_CURRENT_LIST_DIR}/0002-disable-gtest.patch" "${CMAKE_CURRENT_LIST_DIR}/0003-only-build-one-flavor.patch" "${CMAKE_CURRENT_LIST_DIR}/use-find-package.patch" ) file(REMOVE "${SOURCE_PATH}/cmake/modules/Findzlib.cmake") +file(COPY + "${CMAKE_CURRENT_LIST_DIR}/Findlz4.cmake" + "${CMAKE_CURRENT_LIST_DIR}/Findsnappy.cmake" + DESTINATION "${SOURCE_PATH}/cmake/modules" +) if(VCPKG_CRT_LINKAGE STREQUAL "static") set(WITH_MD_LIBRARY OFF) @@ -27,13 +32,26 @@ endif() string(COMPARE EQUAL "${VCPKG_LIBRARY_LINKAGE}" "static" ROCKSDB_DISABLE_INSTALL_SHARED_LIB) string(COMPARE EQUAL "${VCPKG_LIBRARY_LINKAGE}" "dynamic" ROCKSDB_DISABLE_INSTALL_STATIC_LIB) +set(WITH_LZ4 OFF) +if("lz4" IN_LIST FEATURES) + set(WITH_LZ4 ON) +endif() + +set(WITH_SNAPPY OFF) +if("snappy" IN_LIST FEATURES) + set(WITH_SNAPPY ON) +endif() + +get_filename_component(ROCKSDB_VERSION "${SOURCE_PATH}" NAME) +string(REPLACE "rocksdb-rocksdb-" "" ROCKSDB_VERSION "${ROCKSDB_VERSION}") + vcpkg_configure_cmake( SOURCE_PATH ${SOURCE_PATH} PREFER_NINJA OPTIONS -DWITH_GFLAGS=0 - -DWITH_SNAPPY=0 - -DWITH_LZ4=0 + -DWITH_SNAPPY=${WITH_SNAPPY} + -DWITH_LZ4=${WITH_LZ4} -DWITH_ZLIB=1 -DWITH_TESTS=OFF -DROCKSDB_INSTALL_ON_WINDOWS=ON @@ -43,7 +61,7 @@ vcpkg_configure_cmake( -DCMAKE_DEBUG_POSTFIX=d -DROCKSDB_DISABLE_INSTALL_SHARED_LIB=${ROCKSDB_DISABLE_INSTALL_SHARED_LIB} -DROCKSDB_DISABLE_INSTALL_STATIC_LIB=${ROCKSDB_DISABLE_INSTALL_STATIC_LIB} - -DROCKSDB_VERSION=5.11.3 + -DROCKSDB_VERSION=${ROCKSDB_VERSION} -DCURRENT_INSTALLED_DIR=${CURRENT_INSTALLED_DIR} -DCMAKE_DISABLE_FIND_PACKAGE_TBB=TRUE -DCMAKE_DISABLE_FIND_PACKAGE_NUMA=TRUE -- cgit v1.2.3 From 8d0764cca8915ee08701eb0d2416154abfb1e5ab Mon Sep 17 00:00:00 2001 From: weiqiang <819064774@qq.com> Date: Sat, 31 Mar 2018 06:27:40 +0800 Subject: update libvpx 1.7.0 (#3172) --- ports/libvpx/CONTROL | 2 +- ports/libvpx/portfile.cmake | 11 +++++++---- 2 files changed, 8 insertions(+), 5 deletions(-) diff --git a/ports/libvpx/CONTROL b/ports/libvpx/CONTROL index 6095c6de6..fa1522629 100644 --- a/ports/libvpx/CONTROL +++ b/ports/libvpx/CONTROL @@ -1,3 +1,3 @@ Source: libvpx -Version: 1.6.1-2 +Version: 1.7.0 Description: The reference software implementation for the video coding formats VP8 and VP9. diff --git a/ports/libvpx/portfile.cmake b/ports/libvpx/portfile.cmake index 31630332a..d253008e7 100644 --- a/ports/libvpx/portfile.cmake +++ b/ports/libvpx/portfile.cmake @@ -5,8 +5,8 @@ endif() include(vcpkg_common_functions) -set(LIBVPX_VERSION 1.6.1) -set(LIBVPX_HASH 13b7eb515d026b302b8c484d6f06df067feb5aed4ceac953d85fe84fd684dab07e89ddbf80b4f395c6d9127709422156287e5754f49246050b2e18930adb3970) +set(LIBVPX_VERSION 1.7.0) +set(LIBVPX_HASH 8b3b766b550f8d86907628d7ed88035f9a2612aac21542e0fd5ad35b905eb82cbe1be02a1a24afce7a3bcc4766f62611971f72724761996b392136c40a1e7ff0) set(SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src/libvpx-${LIBVPX_VERSION}) @@ -14,7 +14,7 @@ string(REGEX REPLACE "\\\\" "/" SOURCE_PATH_UNIX ${SOURCE_PATH}) string(REGEX REPLACE "\\\\" "/" CURRENT_PACKAGES_DIR_UNIX ${CURRENT_PACKAGES_DIR}) vcpkg_download_distfile(ARCHIVE - URLS "https://github.com/webmproject/libvpx/archive/v${LIBVPX_VERSION}.tar.gz" + URLS "https://github.com/webmproject/libvpx/archive/v${LIBVPX_VERSION}/libvpx-${LIBVPX_VERSION}.tar.gz" FILENAME "libvpx-${LIBVPX_VERSION}.tar.gz" SHA512 ${LIBVPX_HASH} ) @@ -23,8 +23,11 @@ vcpkg_extract_source_archive(${ARCHIVE}) vcpkg_find_acquire_program(YASM) vcpkg_find_acquire_program(PERL) vcpkg_acquire_msys(MSYS_ROOT PACKAGES make) +vcpkg_acquire_msys(MSYS_ROOT PACKAGES diffutils) get_filename_component(YASM_EXE_PATH ${YASM} DIRECTORY) get_filename_component(PERL_EXE_PATH ${PERL} DIRECTORY) + +message(STATUS "PERL_EXE_PATH ; ${PERL_EXE_PATH}") set(ENV{PATH} "${YASM_EXE_PATH};${MSYS_ROOT}/usr/bin;$ENV{PATH};${PERL_EXE_PATH}") set(BASH ${MSYS_ROOT}/usr/bin/bash.exe) @@ -48,7 +51,7 @@ elseif(VCPKG_TARGET_ARCHITECTURE STREQUAL arm) set(LIBVPX_ARCH_DIR "ARM") endif() -set(LIBVPX_TARGET_VS "vs14") +set(LIBVPX_TARGET_VS "vs15") message(STATUS "Generating makefile") file(MAKE_DIRECTORY ${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}) -- cgit v1.2.3 From a8ae8773c5943c0c6a123e1c49c73cbb69e3add6 Mon Sep 17 00:00:00 2001 From: Youngho Kim Date: Sat, 31 Mar 2018 08:34:51 +0900 Subject: add Mosquitto library for IoT (#3127) * initial commit of 1.4.15 for mosquitto lib. initial commit of 1.4.15 for mosquitto lib. * bug fixed for win64 on mosquitto and install error bug fixed for win64 on mosquitto and install error * [mosquitto] Use patches to simplify portfile. --- ports/mosquitto/0001-win64-cmake.patch | 40 ++++++++++++++++++++ ports/mosquitto/CONTROL | 8 ++++ ports/mosquitto/cmake-2.patch | 68 ++++++++++++++++++++++++++++++++++ ports/mosquitto/cmake.patch | 13 +++++++ ports/mosquitto/portfile.cmake | 56 ++++++++++++++++++++++++++++ 5 files changed, 185 insertions(+) create mode 100644 ports/mosquitto/0001-win64-cmake.patch create mode 100644 ports/mosquitto/CONTROL create mode 100644 ports/mosquitto/cmake-2.patch create mode 100644 ports/mosquitto/cmake.patch create mode 100644 ports/mosquitto/portfile.cmake diff --git a/ports/mosquitto/0001-win64-cmake.patch b/ports/mosquitto/0001-win64-cmake.patch new file mode 100644 index 000000000..70888b637 --- /dev/null +++ b/ports/mosquitto/0001-win64-cmake.patch @@ -0,0 +1,40 @@ +--- a/config.h ++++ b/config.h +@@ -16,7 +16,7 @@ + # define EPROTO ECONNABORTED + #endif + +-#ifdef WIN32 ++#ifdef WIN32 || WIN64 + # ifndef strcasecmp + # define strcasecmp strcmpi + # endif +--- a/lib/CMakeLists.txt ++++ b/lib/CMakeLists.txt +@@ -4,8 +4,8 @@ + if (${WITH_THREADING} STREQUAL ON) + add_definitions("-DWITH_THREADING") + if (WIN32) +- set (PTHREAD_LIBRARIES C:\\pthreads\\Pre-built.2\\lib\\x86\\pthreadVC2.lib) +- set (PTHREAD_INCLUDE_DIR C:\\pthreads\\Pre-built.2\\include) ++ set (PTHREAD_LIBRARIES ${VCPKG_ROOT_DIR}/installed/${TARGET_TRIPLET}/lib/pthreadsVC2.lib) ++ set (PTHREAD_INCLUDE_DIR ${VCPKG_ROOT_DIR}/installed/${TARGET_TRIPLET}/include) + else (WIN32) + find_library(LIBPTHREAD pthread) + if (LIBPTHREAD) +--- a/lib/net_mosq.h ++++ b/lib/net_mosq.h +@@ -20,7 +20,12 @@ + #include + #else + #include ++#if defined(_MSC_VER) && _MSC_VER > 1900 ++#undef ssize_t + typedef int ssize_t; ++#else ++typedef int ssize_t; ++#endif + #endif + + #include + diff --git a/ports/mosquitto/CONTROL b/ports/mosquitto/CONTROL new file mode 100644 index 000000000..81d12dc23 --- /dev/null +++ b/ports/mosquitto/CONTROL @@ -0,0 +1,8 @@ +Source: mosquitto +Version: 1.4.15 +Build-Depends: c-ares, libwebsockets, openssl, pthreads +Description: Mosquitto is an open source message broker that implements the MQ Telemetry Transport protocol versions 3.1 and + 3.1.1. MQTT provides a lightweight method of carrying out messaging using a publish/subscribe model. This makes it + suitable for "machine to machine" messaging such as with low power sensors or mobile devices such as phones, embedded + computers or microcontrollers like the Arduino. you can see more information from this url + https://mosquitto.org/download/ diff --git a/ports/mosquitto/cmake-2.patch b/ports/mosquitto/cmake-2.patch new file mode 100644 index 000000000..bd5121c72 --- /dev/null +++ b/ports/mosquitto/cmake-2.patch @@ -0,0 +1,68 @@ +diff --git a/CMakeLists.txt b/CMakeLists.txt +index 3a68061..e4197fd 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -24,10 +24,10 @@ endif (WIN32) + add_definitions (-DCMAKE -DVERSION=\"${VERSION}\" -DTIMESTAMP=\"${TIMESTAMP}\") + + if (WIN32) +- set (BINDIR .) +- set (SBINDIR .) ++ set (BINDIR bin) ++ set (SBINDIR bin) + set (SYSCONFDIR .) +- set (LIBDIR .) ++ set (LIBDIR lib) + set (INCLUDEDIR include) + set (DATAROOTDIR share) + set (MANDIR man) +@@ -86,10 +86,10 @@ option(WITH_SRV "Include SRV lookup support?" ON) + add_subdirectory(lib) + add_subdirectory(client) + add_subdirectory(src) +-add_subdirectory(man) ++#add_subdirectory(man) + + # ======================================== + # Install config file + # ======================================== + +-install(FILES mosquitto.conf aclfile.example pskfile.example pwfile.example DESTINATION "${SYSCONFDIR}") ++#install(FILES mosquitto.conf aclfile.example pskfile.example pwfile.example DESTINATION "${SYSCONFDIR}") +diff --git a/lib/CMakeLists.txt b/lib/CMakeLists.txt +index 1260761..aebd580 100644 +--- a/lib/CMakeLists.txt ++++ b/lib/CMakeLists.txt +@@ -4,8 +4,8 @@ option(WITH_THREADING "Include client library threading support?" ON) + if (${WITH_THREADING} STREQUAL ON) + add_definitions("-DWITH_THREADING") + if (WIN32) +- set (PTHREAD_LIBRARIES ${VCPKG_ROOT_DIR}/installed/${TARGET_TRIPLET}/lib/pthreadsVC2.lib) +- set (PTHREAD_INCLUDE_DIR ${VCPKG_ROOT_DIR}/installed/${TARGET_TRIPLET}/include) ++ find_library(PTHREAD_LIBRARIES NAMES pthreadsVC2) ++ find_path(PTHREAD_INCLUDE_DIR pthread.h) + else (WIN32) + find_library(LIBPTHREAD pthread) + if (LIBPTHREAD) +@@ -78,7 +78,7 @@ set_target_properties(libmosquitto PROPERTIES + SOVERSION 1 + ) + +-install(TARGETS libmosquitto RUNTIME DESTINATION "${BINDIR}" LIBRARY DESTINATION "${LIBDIR}") ++install(TARGETS libmosquitto RUNTIME DESTINATION "${BINDIR}" LIBRARY DESTINATION "${LIBDIR}" ARCHIVE DESTINATION "${LIBDIR}") + install(FILES mosquitto.h DESTINATION "${INCLUDEDIR}") + + if (UNIX) +diff --git a/lib/cpp/CMakeLists.txt b/lib/cpp/CMakeLists.txt +index b80dc18..e91ec77 100644 +--- a/lib/cpp/CMakeLists.txt ++++ b/lib/cpp/CMakeLists.txt +@@ -10,7 +10,7 @@ set_target_properties(mosquittopp PROPERTIES + VERSION ${VERSION} + SOVERSION 1 + ) +-install(TARGETS mosquittopp RUNTIME DESTINATION "${BINDIR}" LIBRARY DESTINATION "${LIBDIR}") ++install(TARGETS mosquittopp RUNTIME DESTINATION "${BINDIR}" LIBRARY DESTINATION "${LIBDIR}" ARCHIVE DESTINATION "${LIBDIR}") + install(FILES mosquittopp.h DESTINATION "${INCLUDEDIR}") + + if (UNIX) diff --git a/ports/mosquitto/cmake.patch b/ports/mosquitto/cmake.patch new file mode 100644 index 000000000..e20d3986e --- /dev/null +++ b/ports/mosquitto/cmake.patch @@ -0,0 +1,13 @@ +--- a/lib/CMakeLists.txt ++++ b/lib/CMakeLists.txt +@@ -4,8 +4,8 @@ + if (${WITH_THREADING} STREQUAL ON) + add_definitions("-DWITH_THREADING") + if (WIN32) +- set (PTHREAD_LIBRARIES C:\\pthreads\\Pre-built.2\\lib\\x86\\pthreadVC2.lib) +- set (PTHREAD_INCLUDE_DIR C:\\pthreads\\Pre-built.2\\include) ++ set (PTHREAD_LIBRARIES ${VCPKG_ROOT_DIR}/installed/${TARGET_TRIPLET}/lib/pthreadsVC2.lib) ++ set (PTHREAD_INCLUDE_DIR ${VCPKG_ROOT_DIR}/installed/${TARGET_TRIPLET}/include) + else (WIN32) + find_library(LIBPTHREAD pthread) + if (LIBPTHREAD) diff --git a/ports/mosquitto/portfile.cmake b/ports/mosquitto/portfile.cmake new file mode 100644 index 000000000..a9c70f853 --- /dev/null +++ b/ports/mosquitto/portfile.cmake @@ -0,0 +1,56 @@ +include(vcpkg_common_functions) + +if(VCPKG_LIBRARY_LINKAGE STREQUAL "static") + message("mosquitto only supports dynamic linkage") + set(VCPKG_LIBRARY_LINKAGE dynamic) +endif() + +if(VCPKG_CRT_LINKAGE STREQUAL "static") + message(FATAL_ERROR "mosquitto does not support static CRT linkage") +endif() + +vcpkg_from_github( + OUT_SOURCE_PATH SOURCE_PATH + REPO eclipse/mosquitto + REF v1.4.15 + SHA512 428ef9434d3fe022232dcde415fe8cd948d237507d512871803a116230f9e011c10fa01313111ced0946f906e8cc7e26d9eee5de6caa7f82590753a4d087f6fd + HEAD_REF master +) + +vcpkg_apply_patches( + SOURCE_PATH ${SOURCE_PATH} + PATCHES + "${CMAKE_CURRENT_LIST_DIR}/0001-win64-cmake.patch" + "${CMAKE_CURRENT_LIST_DIR}/cmake.patch" + "${CMAKE_CURRENT_LIST_DIR}/cmake-2.patch" +) + +vcpkg_configure_cmake( + SOURCE_PATH ${SOURCE_PATH} + PREFER_NINJA + OPTIONS + -DWITH_SRV=OFF + -DWITH_WEBSOCKETS=ON + -DWITH_TLS=ON + -DWITH_TLS_PSK=ON + -DWITH_THREADING=ON + OPTIONS_RELEASE + -DENABLE_DEBUG=OFF + OPTIONS_DEBUG + -DENABLE_DEBUG=ON +) + +vcpkg_install_cmake() + +# Remove debug/include +file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include) + +file(GLOB EXE ${CURRENT_PACKAGES_DIR}/bin/*.exe) +file(GLOB DEBUG_EXE ${CURRENT_PACKAGES_DIR}/debug/bin/*.exe) +file(REMOVE ${EXE}) +file(REMOVE ${DEBUG_EXE}) + +file(INSTALL ${SOURCE_PATH}/LICENSE.txt DESTINATION ${CURRENT_PACKAGES_DIR}/share/mosquitto RENAME copyright) + +# Copy pdb +vcpkg_copy_pdbs() -- cgit v1.2.3 From c8f164fd91a1a0a2c62bd219c6583f3c0c5003d6 Mon Sep 17 00:00:00 2001 From: Oleksandr Date: Sat, 31 Mar 2018 03:02:41 +0300 Subject: Add mhook library. (#3178) * Add mhook library. * [mhook] Prefer ninja --- ports/mhook/CONTROL | 3 +++ ports/mhook/portfile.cmake | 21 +++++++++++++++++++++ 2 files changed, 24 insertions(+) create mode 100644 ports/mhook/CONTROL create mode 100644 ports/mhook/portfile.cmake diff --git a/ports/mhook/CONTROL b/ports/mhook/CONTROL new file mode 100644 index 000000000..24fae14df --- /dev/null +++ b/ports/mhook/CONTROL @@ -0,0 +1,3 @@ +Source: mhook +Version: 2.5.1-1 +Description: A Windows API hooking library. diff --git a/ports/mhook/portfile.cmake b/ports/mhook/portfile.cmake new file mode 100644 index 000000000..e9faeccae --- /dev/null +++ b/ports/mhook/portfile.cmake @@ -0,0 +1,21 @@ +include(vcpkg_common_functions) + +vcpkg_from_github( + OUT_SOURCE_PATH SOURCE_PATH + REPO apriorit/mhook + REF 2.5.1 + SHA512 914f198417b1e30301a42463af5cfbf9269dc64bcf1be87d3d6d2943fd72b3536f48eb4bfb25a51dd0bbe0f8f099777b2d49c9d58cb2e2eeb517d998917ae976 + HEAD_REF master +) + +vcpkg_configure_cmake( + SOURCE_PATH ${SOURCE_PATH} + PREFER_NINJA +) + +vcpkg_install_cmake() + +file(INSTALL ${SOURCE_PATH}/COPYING DESTINATION ${CURRENT_PACKAGES_DIR}/share/mhook RENAME copyright) + +vcpkg_copy_pdbs() +file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include) -- cgit v1.2.3 From 800f8b0e1dca9cfdb90a9e74c01060bc0440d2a6 Mon Sep 17 00:00:00 2001 From: Alexander Karatarakis Date: Fri, 30 Mar 2018 16:59:59 -0700 Subject: Specify ninja exe --- scripts/cmake/vcpkg_configure_cmake.cmake | 1 + scripts/cmake/vcpkg_find_acquire_program.cmake | 8 ++++++-- 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/scripts/cmake/vcpkg_configure_cmake.cmake b/scripts/cmake/vcpkg_configure_cmake.cmake index 4ab02f710..3a3a88515 100644 --- a/scripts/cmake/vcpkg_configure_cmake.cmake +++ b/scripts/cmake/vcpkg_configure_cmake.cmake @@ -115,6 +115,7 @@ function(vcpkg_configure_cmake) vcpkg_find_acquire_program(NINJA) get_filename_component(NINJA_PATH ${NINJA} DIRECTORY) set(ENV{PATH} "$ENV{PATH};${NINJA_PATH}") + list(APPEND _csc_OPTIONS "-DCMAKE_MAKE_PROGRAM=${NINJA}") endif() file(REMOVE_RECURSE ${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-rel ${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-dbg) diff --git a/scripts/cmake/vcpkg_find_acquire_program.cmake b/scripts/cmake/vcpkg_find_acquire_program.cmake index 64d0c7599..0352b1890 100644 --- a/scripts/cmake/vcpkg_find_acquire_program.cmake +++ b/scripts/cmake/vcpkg_find_acquire_program.cmake @@ -105,14 +105,18 @@ function(vcpkg_find_acquire_program VAR) set(HASH 830cd94ed6518fbe4604a0f5a3322671b4674b87d25a71349c745500d38e85c0fac4f6995242fc5521eb048e3966bb5ec2a96a06b041343ed8da9bba78124f34) elseif(VAR MATCHES "7Z") set(PROGNAME 7z) - set(PATHS "${PROGRAM_FILES_PLATFORM_BITNESS}/7-Zip" "${PROGRAM_FILES_32_BIT}/7-Zip" ${DOWNLOADS}/tools/7z/Files/7-Zip) + set(PATHS "${PROGRAM_FILES_PLATFORM_BITNESS}/7-Zip" "${PROGRAM_FILES_32_BIT}/7-Zip" "${DOWNLOADS}/tools/7z/Files/7-Zip") set(URL "http://7-zip.org/a/7z1604.msi") set(ARCHIVE "7z1604.msi") set(HASH 556f95f7566fe23704d136239e4cf5e2a26f939ab43b44145c91b70d031a088d553e5c21301f1242a2295dcde3143b356211f0108c68e65eef8572407618326d) elseif(VAR MATCHES "NINJA") set(PROGNAME ninja) set(SUBDIR "ninja-1.8.2") - set(PATHS ${DOWNLOADS}/tools/ninja/${SUBDIR}) + if(CMAKE_HOST_WIN32) + set(PATHS "${DOWNLOADS}/tools/ninja/${SUBDIR}") + else() + set(PATHS "${DOWNLOADS}/tools/${SUBDIR}") + endif() set(BREW_PACKAGE_NAME "ninja") set(APT_PACKAGE_NAME "ninja-build") set(URL "https://github.com/ninja-build/ninja/releases/download/v1.8.2/ninja-win.zip") -- cgit v1.2.3 From 4a9feaa2403e59b3267f8bd02ef2fd687ea5661d Mon Sep 17 00:00:00 2001 From: Alexander Karatarakis Date: Fri, 30 Mar 2018 18:44:13 -0700 Subject: Allow usage of os="windows" in vcpkgTools.xml from vcpkg.exe (use-cases in powershell still need to be modified) --- toolsrc/src/vcpkg/vcpkgpaths.cpp | 17 +++++++++++------ 1 file changed, 11 insertions(+), 6 deletions(-) diff --git a/toolsrc/src/vcpkg/vcpkgpaths.cpp b/toolsrc/src/vcpkg/vcpkgpaths.cpp index a17ffeb05..7ab4c1c98 100644 --- a/toolsrc/src/vcpkg/vcpkgpaths.cpp +++ b/toolsrc/src/vcpkg/vcpkgpaths.cpp @@ -44,11 +44,11 @@ namespace vcpkg static ToolData parse_tool_data_from_xml(const VcpkgPaths& paths, const std::string& tool) { #if defined(_WIN32) - static constexpr StringLiteral OS_STRING = ""; + static constexpr StringLiteral OS_STRING = "windows"; #elif defined(__APPLE__) - static constexpr StringLiteral OS_STRING = R"(os="osx")"; + static constexpr StringLiteral OS_STRING = "osx"; #else // assume linux - static constexpr StringLiteral OS_STRING = R"(os="linux")"; + static constexpr StringLiteral OS_STRING = "linux"; #endif static const fs::path XML_PATH = paths.scripts / "vcpkgTools.xml"; @@ -79,11 +79,16 @@ namespace vcpkg Strings::format(R"###(([\s\S]*?))###")}; static const std::regex URL_REGEX{Strings::format(R"###(([\s\S]*?))###")}; - const std::regex tool_regex{ - Strings::format(R"###(([\s\S]*?))###", tool, OS_STRING)}; + std::regex tool_regex{ + Strings::format(R"###(([\s\S]*?)<\/tool>)###", tool, OS_STRING)}; std::smatch match_tool; - const bool has_match_tool = std::regex_search(XML.cbegin(), XML.cend(), match_tool, tool_regex); + bool has_match_tool = std::regex_search(XML.cbegin(), XML.cend(), match_tool, tool_regex); + if (!has_match_tool && OS_STRING == "windows") // Legacy support. Change introduced in vcpkg v0.0.107. + { + tool_regex = Strings::format(R"###(([\s\S]*?)<\/tool>)###", tool); + has_match_tool = std::regex_search(XML.cbegin(), XML.cend(), match_tool, tool_regex); + } Checks::check_exit(VCPKG_LINE_INFO, has_match_tool, "Could not find entry for tool [%s] in %s", -- cgit v1.2.3 From 55d79020c4a99d658e46b3a88b065712b9e828c8 Mon Sep 17 00:00:00 2001 From: pravic Date: Tue, 3 Apr 2018 02:21:40 +0300 Subject: [sciter] Update to 4.1.5.5856 (#3186) --- ports/sciter/CONTROL | 2 +- ports/sciter/portfile.cmake | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/ports/sciter/CONTROL b/ports/sciter/CONTROL index e81549a8a..b2f19fdf0 100644 --- a/ports/sciter/CONTROL +++ b/ports/sciter/CONTROL @@ -1,4 +1,4 @@ Source: sciter -Version: 4.1.4 +Version: 4.1.5 Description: Sciter is an embeddable HTML/CSS/scripting engine. Maintainer: andrew.fedoniouk@gmail.com, ehysta@gmail.com diff --git a/ports/sciter/portfile.cmake b/ports/sciter/portfile.cmake index ca48f53c3..7aeb87eee 100644 --- a/ports/sciter/portfile.cmake +++ b/ports/sciter/portfile.cmake @@ -12,8 +12,8 @@ include(vcpkg_common_functions) # header-only library set(VCPKG_POLICY_DLLS_WITHOUT_LIBS enabled) -set(SCITER_REVISION eb0d385af8f426788870cc75522379f67854799c) -set(SCITER_SHA b785f370b27f759e0bec370f413c85b21d82a7cb76b3cbaa50c885b713453a325ff7ace042e263fafec7695c50370bb589597a9877816716bae9a4b4479f54fe) +set(SCITER_REVISION 331bf886a39c1a003f61bb0c1a75037ec4c1e9e4) +set(SCITER_SHA b05b7c694fb75a3308a2684ad78587453d70d41dc0609dfec0a40b465bb8982c79867a63a898a09ed54f6fc516d0b014942824da7a642682b86710ffb23c7366) if(VCPKG_TARGET_ARCHITECTURE STREQUAL x64) set(SCITER_ARCH 64) -- cgit v1.2.3 From c4aaab17b4447597dbd72b2fc36d669c5b806a9c Mon Sep 17 00:00:00 2001 From: Koby Kahane Date: Tue, 3 Apr 2018 02:32:41 +0300 Subject: [rocksdb] Make zlib support an optional feature (#3189) * [rocksdb] Make zlib support an optional feature. * [rocksdb] Add zlib as a default feature --- ports/rocksdb/CONTROL | 8 ++++++-- ports/rocksdb/portfile.cmake | 7 ++++++- 2 files changed, 12 insertions(+), 3 deletions(-) diff --git a/ports/rocksdb/CONTROL b/ports/rocksdb/CONTROL index 5e6851f83..6e3f6a4c5 100644 --- a/ports/rocksdb/CONTROL +++ b/ports/rocksdb/CONTROL @@ -1,7 +1,7 @@ Source: rocksdb -Version: 5.11.3-1 +Version: 5.11.3-3 Description: A library that provides an embeddable, persistent key-value store for fast storage -Build-Depends: zlib +Default-Features: zlib Feature: lz4 Build-Depends: lz4 @@ -10,3 +10,7 @@ Description: lz4 support in rocksdb Feature: snappy Build-Depends: snappy Description: snappy support in rocksdb + +Feature: zlib +Build-Depends: zlib +Description: zlib support in rocksdb diff --git a/ports/rocksdb/portfile.cmake b/ports/rocksdb/portfile.cmake index 0278a3b84..169573cf3 100644 --- a/ports/rocksdb/portfile.cmake +++ b/ports/rocksdb/portfile.cmake @@ -42,6 +42,11 @@ if("snappy" IN_LIST FEATURES) set(WITH_SNAPPY ON) endif() +set(WITH_ZLIB OFF) +if("zlib" IN_LIST FEATURES) + set(WITH_ZLIB ON) +endif() + get_filename_component(ROCKSDB_VERSION "${SOURCE_PATH}" NAME) string(REPLACE "rocksdb-rocksdb-" "" ROCKSDB_VERSION "${ROCKSDB_VERSION}") @@ -52,7 +57,7 @@ vcpkg_configure_cmake( -DWITH_GFLAGS=0 -DWITH_SNAPPY=${WITH_SNAPPY} -DWITH_LZ4=${WITH_LZ4} - -DWITH_ZLIB=1 + -DWITH_ZLIB=${WITH_ZLIB} -DWITH_TESTS=OFF -DROCKSDB_INSTALL_ON_WINDOWS=ON -DFAIL_ON_WARNINGS=OFF -- cgit v1.2.3 From 0c792e4b394eb4a3921468c5ec03283f8084630d Mon Sep 17 00:00:00 2001 From: Robert Schumacher Date: Fri, 30 Mar 2018 16:38:59 -0700 Subject: [aws-sdk-cpp][discord-rpc][thrift] Upgrades --- ports/aws-sdk-cpp/CONTROL | 2 +- ports/aws-sdk-cpp/portfile.cmake | 4 ++-- ports/discord-rpc/CONTROL | 2 +- ports/discord-rpc/portfile.cmake | 4 ++-- ports/thrift/CONTROL | 2 +- ports/thrift/portfile.cmake | 4 ++-- 6 files changed, 9 insertions(+), 9 deletions(-) diff --git a/ports/aws-sdk-cpp/CONTROL b/ports/aws-sdk-cpp/CONTROL index d2f5c186b..eb69e3b10 100644 --- a/ports/aws-sdk-cpp/CONTROL +++ b/ports/aws-sdk-cpp/CONTROL @@ -1,5 +1,5 @@ Source: aws-sdk-cpp -Version: 1.4.24 +Version: 1.4.26 Description: AWS SDK for C++ Default-Features: dynamodb, ec2, kms, rds, s3, sns, sqs # Automatically generated by generateFeatures.ps1 diff --git a/ports/aws-sdk-cpp/portfile.cmake b/ports/aws-sdk-cpp/portfile.cmake index 28097ee1a..4728ab259 100644 --- a/ports/aws-sdk-cpp/portfile.cmake +++ b/ports/aws-sdk-cpp/portfile.cmake @@ -3,8 +3,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO aws/aws-sdk-cpp - REF 1.4.24 - SHA512 bda259caeeb909884128268f0dfe3ca58ce665be2a0304302f1fd09c4217cbcd34c20119009123aeb80377dfe5144b72cbd98d2acbdc9ffa729c09e380751bf2 + REF 1.4.26 + SHA512 44ba566b82e4e3b0be3250bc02693a2128986eb0f7214b7a2bb4dc716d23afe7e699de89cc4483ab176b07159cf3ecf4821b16e5033b75db39ef410165d4f08b HEAD_REF master ) diff --git a/ports/discord-rpc/CONTROL b/ports/discord-rpc/CONTROL index 609460036..2e6f44688 100644 --- a/ports/discord-rpc/CONTROL +++ b/ports/discord-rpc/CONTROL @@ -1,3 +1,3 @@ Source: discord-rpc -Version: 3.1.0 +Version: 3.2.0 Description: Rich Presence allows you to leverage the totally overhauled "Now Playing" section in a Discord user's profile to help people play your game together. diff --git a/ports/discord-rpc/portfile.cmake b/ports/discord-rpc/portfile.cmake index 72709ed7c..8e4e090b1 100644 --- a/ports/discord-rpc/portfile.cmake +++ b/ports/discord-rpc/portfile.cmake @@ -3,8 +3,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO discordapp/discord-rpc - REF v3.1.0 - SHA512 f467ac6428588b45a90eaec0786b7f0d799b5ee9e97528dd69cd1890fb4dd9c887807e845a0a1d75e19e6e1f6cb2d21c8a77d09e95f24d8df0aae04eae17a216 + REF v3.2.0 + SHA512 83a32db240f30f4429c145dd400eba5b9985ea779e492ffa2be2ba2664d97e4dec1f4416ad0f3e6fc908c3c9b30aebe4a8e293e0ef3c60e01fc6f16b5f9a7c16 HEAD_REF master ) diff --git a/ports/thrift/CONTROL b/ports/thrift/CONTROL index 82524e78d..8707974d0 100644 --- a/ports/thrift/CONTROL +++ b/ports/thrift/CONTROL @@ -1,4 +1,4 @@ Source: thrift -Version: 2018-03-29 +Version: 2018-03-30 Build-Depends: zlib, libevent, openssl, boost-range, boost-smart-ptr, boost-date-time, boost-locale, boost-scope-exit Description: Apache Thrift is a software project spanning a variety of programming languages and use cases. Our goal is to make reliable, performant communication and data serialization across languages as efficient and seamless as possible. Originally developed at Facebook, Thrift was open sourced in April 2007 and entered the Apache Incubator in May, 2008. Thrift became an Apache TLP in October, 2010. diff --git a/ports/thrift/portfile.cmake b/ports/thrift/portfile.cmake index 0293cca6f..574be4dab 100644 --- a/ports/thrift/portfile.cmake +++ b/ports/thrift/portfile.cmake @@ -15,8 +15,8 @@ vcpkg_find_acquire_program(BISON) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO apache/thrift - REF 930428438c0b6c8f60560cbb7dcad79042badacb - SHA512 b446126a8f697903abbdafcd8cd9a348fc97d34b2a207592cae1801e481b5159f92b7b0296a3531cd8f2a9e223e051f71ea63ce5da2dd2f67364db9bfd84dcf3 + REF 8a83b041d20671c3fae9528d5ac1f5413cad7c5a + SHA512 9f0a2fdb92e33aea960342a88134e4ce4f5f86277abb235ae13dd2f5b4e28f82e72e16d7cf18a1a13f5a9368420b01b3b51a8d3b3d3c06fade00978565b93b7d HEAD_REF master ) -- cgit v1.2.3 From adccba04db25b3e3bd44c58a9d2cbc1366e53fde Mon Sep 17 00:00:00 2001 From: Alexander Karatarakis Date: Mon, 2 Apr 2018 17:12:12 -0700 Subject: [vcpkg.exe] Look for vcpkgTools in downloads/tools/$toolname-$toolversion (only non-windows currently) --- toolsrc/include/vcpkg/vcpkgpaths.h | 2 + toolsrc/src/vcpkg/build.cpp | 6 +++ toolsrc/src/vcpkg/vcpkgpaths.cpp | 94 ++++++++++++++++++++++++++++++++------ 3 files changed, 87 insertions(+), 15 deletions(-) diff --git a/toolsrc/include/vcpkg/vcpkgpaths.h b/toolsrc/include/vcpkg/vcpkgpaths.h index 71f1bbba9..b3f24fb89 100644 --- a/toolsrc/include/vcpkg/vcpkgpaths.h +++ b/toolsrc/include/vcpkg/vcpkgpaths.h @@ -66,6 +66,7 @@ namespace vcpkg const fs::path& get_7za_exe() const; const fs::path& get_cmake_exe() const; const fs::path& get_git_exe() const; + const fs::path& get_ninja_exe() const; const fs::path& get_nuget_exe() const; const fs::path& get_ifw_installerbase_exe() const; const fs::path& get_ifw_binarycreator_exe() const; @@ -84,6 +85,7 @@ namespace vcpkg Lazy _7za_exe; Lazy cmake_exe; Lazy git_exe; + Lazy ninja_exe; Lazy nuget_exe; Lazy ifw_installerbase_exe; Lazy ifw_binarycreator_exe; diff --git a/toolsrc/src/vcpkg/build.cpp b/toolsrc/src/vcpkg/build.cpp index 953e77460..ab2e46aa7 100644 --- a/toolsrc/src/vcpkg/build.cpp +++ b/toolsrc/src/vcpkg/build.cpp @@ -322,6 +322,12 @@ namespace vcpkg::Build auto& fs = paths.get_filesystem(); const Triplet& triplet = spec.triplet(); +#if !defined(_WIN32) + // TODO: remove when vcpkg.exe is in charge for acquiring tools. Change introduced in vcpkg v0.0.107. + // bootstrap should have already downloaded ninja, but making sure it is present in case it was deleted. + vcpkg::Util::unused(paths.get_ninja_exe()); +#endif + const fs::path& cmake_exe_path = paths.get_cmake_exe(); const fs::path& git_exe_path = paths.get_git_exe(); diff --git a/toolsrc/src/vcpkg/vcpkgpaths.cpp b/toolsrc/src/vcpkg/vcpkgpaths.cpp index 7ab4c1c98..d4bcea5af 100644 --- a/toolsrc/src/vcpkg/vcpkgpaths.cpp +++ b/toolsrc/src/vcpkg/vcpkgpaths.cpp @@ -18,9 +18,10 @@ namespace vcpkg struct ToolData { std::array required_version; - fs::path downloaded_exe_path; + fs::path exe_path; std::string url; fs::path downloaded_path; + fs::path tool_dir_path; }; static Optional> parse_version_string(const std::string& version_as_string) @@ -114,11 +115,20 @@ namespace vcpkg tool, required_version_as_string); +// Legacy support. Change introduced in vcpkg v0.0.107. +#if !defined(_WIN32) + const std::string tool_dir_name = Strings::format("%s-%s", tool, required_version_as_string); + const fs::path tool_dir_path = paths.downloads / "tools" / tool_dir_name; + const fs::path exe_path = tool_dir_path / exe_relative_path; +#else + const fs::path tool_dir_path; const fs::path exe_path = paths.downloads / exe_relative_path; +#endif return ToolData{*required_version.get(), exe_path, url, - paths.downloads / archive_relative_path.value_or(exe_relative_path)}; + paths.downloads / archive_relative_path.value_or(exe_relative_path), + tool_dir_path}; } static bool exists_and_has_equal_or_greater_version(const std::string& version_cmd, @@ -177,6 +187,36 @@ namespace vcpkg return data_lines; } + static void extract_archive(const VcpkgPaths& paths, const fs::path& archive, const fs::path& to_path) + { + Files::Filesystem& fs = paths.get_filesystem(); + const fs::path to_path_partial = to_path.u8string() + ".partial"; + + std::error_code ec; + fs.remove_all(to_path_partial, ec); + fs.create_directories(to_path_partial, ec); + + const auto ext = archive.extension(); + if (ext == ".gz" && ext.extension() != ".tar") + { + const auto code = System::cmd_execute( + Strings::format(R"(cd '%s' && tar xzf '%s')", to_path_partial.u8string(), archive.u8string())); + Checks::check_exit(VCPKG_LINE_INFO, code == 0, "tar failed while extracting %s", archive.u8string()); + } + else if (ext == ".zip") + { + const auto code = System::cmd_execute( + Strings::format(R"(cd '%s' && unzip -qqo '%s')", to_path_partial.u8string(), archive.u8string())); + Checks::check_exit(VCPKG_LINE_INFO, code == 0, "unzip failed while extracting %s", archive.u8string()); + } + else + { + Checks::exit_with_message(VCPKG_LINE_INFO, "Unexpected archive extension: %s", ext.u8string()); + } + + fs.rename(to_path_partial, to_path); + } + static fs::path fetch_tool(const VcpkgPaths& paths, const std::string& tool_name, const ToolData& tool_data) { const auto& fs = paths.get_filesystem(); @@ -200,7 +240,7 @@ namespace vcpkg Checks::check_exit(VCPKG_LINE_INFO, tool_path.size() == 1, "Expected tool path, but got %s", output); const fs::path actual_downloaded_path = Strings::trim(std::string{tool_path.at(0)}); - const fs::path& expected_downloaded_path = tool_data.downloaded_exe_path; + const fs::path& expected_downloaded_path = tool_data.exe_path; std::error_code ec; const auto eq = fs::stdfs::equivalent(expected_downloaded_path, actual_downloaded_path, ec); Checks::check_exit(VCPKG_LINE_INFO, @@ -216,16 +256,17 @@ namespace vcpkg Strings::format(R"(curl '%s' --create-dirs --output '%s')", tool_data.url, tool_data.downloaded_path)); Checks::check_exit(VCPKG_LINE_INFO, code == 0, "curl failed while downloading %s", tool_data.url); } - auto code = System::cmd_execute( - Strings::format(R"(cd '%s' && tar xzf '%s')", paths.downloads, tool_data.downloaded_path)); - Checks::check_exit(VCPKG_LINE_INFO, code == 0, "tar failed while extracting %s", tool_data.downloaded_path); + + System::println("Extracting %s...", tool_name); + extract_archive(paths, tool_data.downloaded_path, tool_data.tool_dir_path); + System::println("Extracting %s... done.", tool_name); Checks::check_exit(VCPKG_LINE_INFO, - fs.exists(tool_data.downloaded_exe_path), + fs.exists(tool_data.exe_path), "Expected %s to exist after extracting", - tool_data.downloaded_exe_path); + tool_data.exe_path); - return tool_data.downloaded_exe_path; + return tool_data.exe_path; #endif } @@ -234,7 +275,7 @@ namespace vcpkg std::vector candidate_paths; #if defined(_WIN32) || defined(__APPLE__) || defined(__linux__) static const ToolData TOOL_DATA = parse_tool_data_from_xml(paths, "cmake"); - candidate_paths.push_back(TOOL_DATA.downloaded_exe_path); + candidate_paths.push_back(TOOL_DATA.exe_path); #else static const ToolData TOOL_DATA = ToolData{{3, 5, 1}, ""}; #endif @@ -262,22 +303,40 @@ namespace vcpkg { #if defined(_WIN32) static const ToolData TOOL_DATA = parse_tool_data_from_xml(paths, "7zip"); - if (!paths.get_filesystem().exists(TOOL_DATA.downloaded_exe_path)) + if (!paths.get_filesystem().exists(TOOL_DATA.exe_path)) { return fetch_tool(paths, "7zip", TOOL_DATA); } - return TOOL_DATA.downloaded_exe_path; + return TOOL_DATA.exe_path; #else Checks::exit_with_message(VCPKG_LINE_INFO, "Cannot download 7zip for non-Windows platforms."); #endif } + static fs::path get_ninja_path(const VcpkgPaths& paths) + { + static const ToolData TOOL_DATA = parse_tool_data_from_xml(paths, "ninja"); + + std::vector candidate_paths; + candidate_paths.push_back(TOOL_DATA.exe_path); + const std::vector from_path = Files::find_from_PATH("ninja"); + candidate_paths.insert(candidate_paths.end(), from_path.cbegin(), from_path.cend()); + + auto path = find_if_has_equal_or_greater_version(candidate_paths, "--version", TOOL_DATA.required_version); + if (const auto p = path.get()) + { + return *p; + } + + return fetch_tool(paths, "ninja", TOOL_DATA); + } + static fs::path get_nuget_path(const VcpkgPaths& paths) { static const ToolData TOOL_DATA = parse_tool_data_from_xml(paths, "nuget"); std::vector candidate_paths; - candidate_paths.push_back(TOOL_DATA.downloaded_exe_path); + candidate_paths.push_back(TOOL_DATA.exe_path); const std::vector from_path = Files::find_from_PATH("nuget"); candidate_paths.insert(candidate_paths.end(), from_path.cbegin(), from_path.cend()); @@ -301,7 +360,7 @@ namespace vcpkg std::vector candidate_paths; #if defined(_WIN32) - candidate_paths.push_back(TOOL_DATA.downloaded_exe_path); + candidate_paths.push_back(TOOL_DATA.exe_path); #endif const std::vector from_path = Files::find_from_PATH("git"); candidate_paths.insert(candidate_paths.end(), from_path.cbegin(), from_path.cend()); @@ -328,7 +387,7 @@ namespace vcpkg static const std::string VERSION_CHECK_ARGUMENTS = "--framework-version"; std::vector candidate_paths; - candidate_paths.push_back(TOOL_DATA.downloaded_exe_path); + candidate_paths.push_back(TOOL_DATA.exe_path); // TODO: Uncomment later // const std::vector from_path = Files::find_from_PATH("installerbase"); // candidate_paths.insert(candidate_paths.end(), from_path.cbegin(), from_path.cend()); @@ -438,6 +497,11 @@ namespace vcpkg return this->git_exe.get_lazy([this]() { return get_git_path(*this); }); } + const fs::path& VcpkgPaths::get_ninja_exe() const + { + return this->ninja_exe.get_lazy([this]() { return get_ninja_path(*this); }); + } + const fs::path& VcpkgPaths::get_nuget_exe() const { return this->nuget_exe.get_lazy([this]() { return get_nuget_path(*this); }); -- cgit v1.2.3 From 892f7052f943570eb5d8da991ace01725323c695 Mon Sep 17 00:00:00 2001 From: Jacob Zhong Date: Wed, 7 Mar 2018 17:57:16 +0800 Subject: [vcpkg] Add support of external downloader aria2 --- scripts/cmake/vcpkg_download_distfile.cmake | 47 +++++++++++++++++++++----- scripts/cmake/vcpkg_find_acquire_program.cmake | 8 +++++ toolsrc/include/vcpkg/build.h | 8 +++++ toolsrc/src/vcpkg/build.cpp | 19 +++++++++-- toolsrc/src/vcpkg/install.cpp | 12 +++++-- 5 files changed, 81 insertions(+), 13 deletions(-) diff --git a/scripts/cmake/vcpkg_download_distfile.cmake b/scripts/cmake/vcpkg_download_distfile.cmake index 4b111f3f0..fc6199146 100644 --- a/scripts/cmake/vcpkg_download_distfile.cmake +++ b/scripts/cmake/vcpkg_download_distfile.cmake @@ -103,19 +103,48 @@ function(vcpkg_download_distfile VAR) endif() # Tries to download the file. - foreach(url IN LISTS vcpkg_download_distfile_URLS) - message(STATUS "Downloading ${url}...") - file(DOWNLOAD ${url} "${download_file_path_part}" STATUS download_status) - list(GET download_status 0 status_code) - if (NOT "${status_code}" STREQUAL "0") - message(STATUS "Downloading ${url}... Failed. Status: ${download_status}") + list(GET vcpkg_download_distfile_URLS 0 SAMPLE_URL) + if(${_VCPKG_DOWNLOAD_TOOL} MATCHES "ARIA2" AND NOT ${SAMPLE_URL} MATCHES "aria2") + vcpkg_find_acquire_program("ARIA2") + message(STATUS "Downloading ${vcpkg_download_distfile_FILENAME}...") + execute_process( + COMMAND ${ARIA2} ${vcpkg_download_distfile_URLS} + -o temp/${vcpkg_download_distfile_FILENAME} + -l download-${vcpkg_download_distfile_FILENAME}-detailed.log + OUTPUT_FILE download-${vcpkg_download_distfile_FILENAME}-out.log + ERROR_FILE download-${vcpkg_download_distfile_FILENAME}-err.log + RESULT_VARIABLE error_code + WORKING_DIRECTORY ${DOWNLOADS} + ) + if (NOT "${error_code}" STREQUAL "0") + message(STATUS + "Downloading ${vcpkg_download_distfile_FILENAME}... Failed.\n" + " Exit Code: ${error_code}\n" + " See logs for more information:\n" + " ${DOWNLOADS}/download-${vcpkg_download_distfile_FILENAME}-out.log\n" + " ${DOWNLOADS}/download-${vcpkg_download_distfile_FILENAME}-err.log\n" + " ${DOWNLOADS}/download-${vcpkg_download_distfile_FILENAME}-detailed.log\n" + ) set(download_success 0) else() - message(STATUS "Downloading ${url}... OK") + message(STATUS "Downloading ${vcpkg_download_distfile_FILENAME}... OK") set(download_success 1) - break() endif() - endforeach(url) + else() + foreach(url IN LISTS vcpkg_download_distfile_URLS) + message(STATUS "Downloading ${url}...") + file(DOWNLOAD ${url} "${download_file_path_part}" STATUS download_status) + list(GET download_status 0 status_code) + if (NOT "${status_code}" STREQUAL "0") + message(STATUS "Downloading ${url}... Failed. Status: ${download_status}") + set(download_success 0) + else() + message(STATUS "Downloading ${url}... OK") + set(download_success 1) + break() + endif() + endforeach(url) + endif() if (NOT download_success) message(FATAL_ERROR diff --git a/scripts/cmake/vcpkg_find_acquire_program.cmake b/scripts/cmake/vcpkg_find_acquire_program.cmake index 0352b1890..ef0e1584f 100644 --- a/scripts/cmake/vcpkg_find_acquire_program.cmake +++ b/scripts/cmake/vcpkg_find_acquire_program.cmake @@ -25,6 +25,7 @@ ## - NASM ## - NINJA ## - YASM +## - ARIA2 (Downloader) ## ## Note that msys2 has a dedicated helper function: [`vcpkg_acquire_msys`](vcpkg_acquire_msys.md). ## @@ -178,6 +179,13 @@ function(vcpkg_find_acquire_program VAR) set(URL "http://ftp.stack.nl/pub/users/dimitri/doxygen-1.8.14.windows.bin.zip") set(ARCHIVE "doxygen-1.8.14.windows.bin.zip") set(HASH d0d706501e7112045b1f401f22d12a2c8d9b7728edee9ad1975a17dff914c16494ae48a70beab6f6304643779935843f268c7afed3b9da7d403b5cb11cac0c50) + # Download Tools + elseif(VAR MATCHES "ARIA2") + set(PROGNAME aria2c) + set(PATHS ${DOWNLOADS}/tools/aria2c/aria2-1.33.1-win-32bit-build1) + set(URL "https://github.com/aria2/aria2/releases/download/release-1.33.1/aria2-1.33.1-win-32bit-build1.zip") + set(ARCHIVE "aria2-1.33.1-win-32bit-build1.zip") + set(HASH 2456176ba3d506a07cf0cc4f61f080e1ff8cb4106426d66f354c5bb67a9a8720b5ddb26904275e61b1f623c932355f7dcde4cd17556cc895f11293c23c3a9bf3) else() message(FATAL "unknown tool ${VAR} -- unable to acquire.") endif() diff --git a/toolsrc/include/vcpkg/build.h b/toolsrc/include/vcpkg/build.h index 1c22d39d8..a86245ccf 100644 --- a/toolsrc/include/vcpkg/build.h +++ b/toolsrc/include/vcpkg/build.h @@ -57,12 +57,20 @@ namespace vcpkg::Build RELEASE, }; + enum class DownloadTool + { + BUILT_IN, + ARIA2, + }; + const std::string& to_string(DownloadTool tool); + struct BuildPackageOptions { UseHeadVersion use_head_version; AllowDownloads allow_downloads; CleanBuildtrees clean_buildtrees; CleanPackages clean_packages; + DownloadTool download_tool; }; enum class BuildResult diff --git a/toolsrc/src/vcpkg/build.cpp b/toolsrc/src/vcpkg/build.cpp index ab2e46aa7..79a55bd36 100644 --- a/toolsrc/src/vcpkg/build.cpp +++ b/toolsrc/src/vcpkg/build.cpp @@ -165,6 +165,19 @@ namespace vcpkg::Build } } + static const std::string NAME_BUILD_IN_DOWNLOAD = "BUILT_IN"; + static const std::string NAME_ARIA2_DOWNLOAD = "ARIA2"; + + const std::string& to_string(DownloadTool tool) + { + switch (tool) + { + case DownloadTool::BUILT_IN: return NAME_BUILD_IN_DOWNLOAD; + case DownloadTool::ARIA2: return NAME_ARIA2_DOWNLOAD; + default: Checks::unreachable(VCPKG_LINE_INFO); + } + } + Optional to_linkage_type(const std::string& str) { if (str == "dynamic") return LinkageType::DYNAMIC; @@ -348,8 +361,10 @@ namespace vcpkg::Build {"TARGET_TRIPLET", spec.triplet().canonical_name()}, {"VCPKG_PLATFORM_TOOLSET", toolset.version.c_str()}, {"VCPKG_USE_HEAD_VERSION", - Util::Enum::to_bool(config.build_package_options.use_head_version) ? "1" : "0"}, - {"_VCPKG_NO_DOWNLOADS", !Util::Enum::to_bool(config.build_package_options.allow_downloads) ? "1" : "0"}, + Util::Enum::to_bool(config.build_package_options.use_head_version) ? "1" : "0"}, + {"_VCPKG_NO_DOWNLOADS", + !Util::Enum::to_bool(config.build_package_options.allow_downloads) ? "1" : "0"}, + {"_VCPKG_DOWNLOAD_TOOL", to_string(config.build_package_options.download_tool)}, {"GIT", git_exe_path}, {"FEATURES", Strings::join(";", config.feature_list)}, {"ALL_FEATURES", all_features}, diff --git a/toolsrc/src/vcpkg/install.cpp b/toolsrc/src/vcpkg/install.cpp index 1fbf6d97e..b998d19ab 100644 --- a/toolsrc/src/vcpkg/install.cpp +++ b/toolsrc/src/vcpkg/install.cpp @@ -412,13 +412,15 @@ namespace vcpkg::Install static constexpr StringLiteral OPTION_RECURSE = "--recurse"; static constexpr StringLiteral OPTION_KEEP_GOING = "--keep-going"; static constexpr StringLiteral OPTION_XUNIT = "--x-xunit"; + static constexpr StringLiteral OPTION_USE_ARIA2 = "--use-aria2"; - static constexpr std::array INSTALL_SWITCHES = {{ + static constexpr std::array INSTALL_SWITCHES = {{ {OPTION_DRY_RUN, "Do not actually build or install"}, {OPTION_USE_HEAD_VERSION, "Install the libraries on the command line using the latest upstream sources"}, {OPTION_NO_DOWNLOADS, "Do not download new sources"}, {OPTION_RECURSE, "Allow removal of packages as part of installation"}, {OPTION_KEEP_GOING, "Continue installing packages on failure"}, + {OPTION_USE_ARIA2, "Use aria2 to perform download tasks"}, }}; static constexpr std::array INSTALL_SETTINGS = {{ {OPTION_XUNIT, "File to output results in XUnit format (Internal use)"}, @@ -547,16 +549,22 @@ namespace vcpkg::Install const bool use_head_version = Util::Sets::contains(options.switches, (OPTION_USE_HEAD_VERSION)); const bool no_downloads = Util::Sets::contains(options.switches, (OPTION_NO_DOWNLOADS)); const bool is_recursive = Util::Sets::contains(options.switches, (OPTION_RECURSE)); + const bool use_aria2 = Util::Sets::contains(options.switches, (OPTION_USE_ARIA2)); const KeepGoing keep_going = to_keep_going(Util::Sets::contains(options.switches, OPTION_KEEP_GOING)); // create the plan StatusParagraphs status_db = database_load_check(paths); + Build::DownloadTool download_tool = Build::DownloadTool::BUILT_IN; + if (use_aria2) + download_tool = Build::DownloadTool::ARIA2; + const Build::BuildPackageOptions install_plan_options = { Util::Enum::to_enum(use_head_version), Util::Enum::to_enum(!no_downloads), Build::CleanBuildtrees::NO, - Build::CleanPackages::NO}; + Build::CleanPackages::NO, + download_tool}; auto all_ports = Paragraphs::load_all_ports(paths.get_filesystem(), paths.ports); std::unordered_map scf_map; -- cgit v1.2.3 From 875410599151252b475234c162c3a9babb8be73f Mon Sep 17 00:00:00 2001 From: Jacob Zhong Date: Thu, 15 Mar 2018 13:17:54 +0800 Subject: [vcpkg] Remove log files when downloading succeeds. --- scripts/cmake/vcpkg_download_distfile.cmake | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/scripts/cmake/vcpkg_download_distfile.cmake b/scripts/cmake/vcpkg_download_distfile.cmake index fc6199146..9fc0a0c9a 100644 --- a/scripts/cmake/vcpkg_download_distfile.cmake +++ b/scripts/cmake/vcpkg_download_distfile.cmake @@ -128,6 +128,11 @@ function(vcpkg_download_distfile VAR) set(download_success 0) else() message(STATUS "Downloading ${vcpkg_download_distfile_FILENAME}... OK") + file(REMOVE + ${DOWNLOADS}/download-${vcpkg_download_distfile_FILENAME}-out.log + ${DOWNLOADS}/download-${vcpkg_download_distfile_FILENAME}-err.log + ${DOWNLOADS}/download-${vcpkg_download_distfile_FILENAME}-detailed.log + ) set(download_success 1) endif() else() -- cgit v1.2.3 From 7849f5da1e72977745f9fd69365f70df98eb028e Mon Sep 17 00:00:00 2001 From: Alexander Karatarakis Date: Mon, 2 Apr 2018 18:37:16 -0700 Subject: [aria2] Use --x-use-aria2 instead of --use-aria2 for now --- toolsrc/src/vcpkg/install.cpp | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/toolsrc/src/vcpkg/install.cpp b/toolsrc/src/vcpkg/install.cpp index b998d19ab..fc336d6c7 100644 --- a/toolsrc/src/vcpkg/install.cpp +++ b/toolsrc/src/vcpkg/install.cpp @@ -412,7 +412,7 @@ namespace vcpkg::Install static constexpr StringLiteral OPTION_RECURSE = "--recurse"; static constexpr StringLiteral OPTION_KEEP_GOING = "--keep-going"; static constexpr StringLiteral OPTION_XUNIT = "--x-xunit"; - static constexpr StringLiteral OPTION_USE_ARIA2 = "--use-aria2"; + static constexpr StringLiteral OPTION_USE_ARIA2 = "--x-use-aria2"; static constexpr std::array INSTALL_SWITCHES = {{ {OPTION_DRY_RUN, "Do not actually build or install"}, @@ -556,8 +556,7 @@ namespace vcpkg::Install StatusParagraphs status_db = database_load_check(paths); Build::DownloadTool download_tool = Build::DownloadTool::BUILT_IN; - if (use_aria2) - download_tool = Build::DownloadTool::ARIA2; + if (use_aria2) download_tool = Build::DownloadTool::ARIA2; const Build::BuildPackageOptions install_plan_options = { Util::Enum::to_enum(use_head_version), -- cgit v1.2.3 From 5715b6023b98028d505aee99946864f1b4ddc417 Mon Sep 17 00:00:00 2001 From: Arkady Shapkin Date: Tue, 3 Apr 2018 05:32:08 +0300 Subject: [theia] Fix build (#3141) --- ports/theia/CONTROL | 8 +- ports/theia/fix-oiio.patch | 391 +++++++++++++++++++++++++++++++++++++++++++++ ports/theia/portfile.cmake | 1 + 3 files changed, 396 insertions(+), 4 deletions(-) create mode 100644 ports/theia/fix-oiio.patch diff --git a/ports/theia/CONTROL b/ports/theia/CONTROL index 56e2181a3..06dcc80c8 100644 --- a/ports/theia/CONTROL +++ b/ports/theia/CONTROL @@ -1,4 +1,4 @@ -Source: theia -Version: 0.7-d15154a-1 -Build-Depends: flann, cereal, ceres, openimageio, glew, freeglut -Description: An open source library for multiview geometry and structure from motion +Source: theia +Version: 0.7-d15154a-2 +Build-Depends: flann, cereal, ceres[suitesparse], openimageio, glew, freeglut +Description: An open source library for multiview geometry and structure from motion diff --git a/ports/theia/fix-oiio.patch b/ports/theia/fix-oiio.patch new file mode 100644 index 000000000..7cba45db7 --- /dev/null +++ b/ports/theia/fix-oiio.patch @@ -0,0 +1,391 @@ +diff --git a/src/theia/image/image.cc b/src/theia/image/image.cc +index df6aba4..5e2b8dc 100644 +--- a/src/theia/image/image.cc ++++ b/src/theia/image/image.cc +@@ -60,18 +60,18 @@ FloatImage::FloatImage(const FloatImage& image_to_copy) { + } + + FloatImage::FloatImage(const int width, const int height, const int channels) { +- OpenImageIO::ImageSpec image_spec(width, height, channels, +- OpenImageIO::TypeDesc::FLOAT); ++ OIIO_NAMESPACE::ImageSpec image_spec(width, height, channels, ++ OIIO_NAMESPACE::TypeDesc::FLOAT); + image_.reset(image_spec); + } + + FloatImage::FloatImage(const int width, const int height, const int channels, + float* buffer) +- : image_(OpenImageIO::ImageSpec(width, height, channels, +- OpenImageIO::TypeDesc::FLOAT), ++ : image_(OIIO_NAMESPACE::ImageSpec(width, height, channels, ++ OIIO_NAMESPACE::TypeDesc::FLOAT), + reinterpret_cast(buffer)) {} + +-FloatImage::FloatImage(const OpenImageIO::ImageBuf& image) { ++FloatImage::FloatImage(const OIIO_NAMESPACE::ImageBuf& image) { + image_.copy(image); + } + +@@ -80,11 +80,11 @@ FloatImage& FloatImage::operator=(const FloatImage& image2) { + return *this; + } + +-OpenImageIO::ImageBuf& FloatImage::GetOpenImageIOImageBuf() { ++OIIO_NAMESPACE::ImageBuf& FloatImage::GetOpenImageIOImageBuf() { + return image_; + } + +-const OpenImageIO::ImageBuf& FloatImage::GetOpenImageIOImageBuf() const { ++const OIIO_NAMESPACE::ImageBuf& FloatImage::GetOpenImageIOImageBuf() const { + return image_; + } + +@@ -110,7 +110,7 @@ void FloatImage::SetXY(const int x, + DCHECK_LT(c, Channels()); + + // Set the ROI to be the precise pixel location in the correct channel. +- OpenImageIO::ImageBuf::Iterator it(image_, x, y, 0); ++ OIIO_NAMESPACE::ImageBuf::Iterator it(image_, x, y, 0); + it[c] = value; + } + +@@ -195,9 +195,9 @@ void FloatImage::ConvertToGrayscaleImage() { + // Compute luminance via a weighted sum of R,G,B (assuming Rec709 primaries + // and a linear scale) + const float luma_weights[3] = {.2126, .7152, .0722}; +- OpenImageIO::ImageBuf source = image_; ++ OIIO_NAMESPACE::ImageBuf source = image_; + image_.clear(); +- OpenImageIO::ImageBufAlgo::channel_sum(image_, source, luma_weights); ++ OIIO_NAMESPACE::ImageBufAlgo::channel_sum(image_, source, luma_weights); + } + + void FloatImage::ConvertToRGBImage() { +@@ -207,13 +207,13 @@ void FloatImage::ConvertToRGBImage() { + } + + // Copy the single grayscale channel into r, g, and b. +- const OpenImageIO::ImageBuf source(image_); +- OpenImageIO::ImageSpec image_spec(Width(), Height(), 3, +- OpenImageIO::TypeDesc::FLOAT); ++ const OIIO_NAMESPACE::ImageBuf source(image_); ++ OIIO_NAMESPACE::ImageSpec image_spec(Width(), Height(), 3, ++ OIIO_NAMESPACE::TypeDesc::FLOAT); + image_.reset(image_spec); +- OpenImageIO::ImageBufAlgo::paste(image_, 0, 0, 0, 0, source); +- OpenImageIO::ImageBufAlgo::paste(image_, 0, 0, 0, 1, source); +- OpenImageIO::ImageBufAlgo::paste(image_, 0, 0, 0, 2, source); ++ OIIO_NAMESPACE::ImageBufAlgo::paste(image_, 0, 0, 0, 0, source); ++ OIIO_NAMESPACE::ImageBufAlgo::paste(image_, 0, 0, 0, 1, source); ++ OIIO_NAMESPACE::ImageBufAlgo::paste(image_, 0, 0, 0, 2, source); + } + + FloatImage FloatImage::AsGrayscaleImage() const { +@@ -238,12 +238,12 @@ FloatImage FloatImage::AsRGBImage() const { + } + + void FloatImage::ScalePixels(float scale) { +- OpenImageIO::ImageBufAlgo::mul(image_, image_, scale); ++ OIIO_NAMESPACE::ImageBufAlgo::mul(image_, image_, scale); + } + + void FloatImage::Read(const std::string& filename) { + image_.reset(filename); +- image_.read(0, 0, true, OpenImageIO::TypeDesc::FLOAT); ++ image_.read(0, 0, true, OIIO_NAMESPACE::TypeDesc::FLOAT); + } + + void FloatImage::Write(const std::string& filename) const { +@@ -259,19 +259,19 @@ const float* FloatImage::Data() const { + + FloatImage FloatImage::ComputeGradientX() const { + float sobel_filter_x[9] = {-.125, 0, .125, -.25, 0, .25, -.125, 0, .125}; +- OpenImageIO::ImageSpec spec(3, 3, 1, OpenImageIO::TypeDesc::FLOAT); +- OpenImageIO::ImageBuf kernel_x(spec, sobel_filter_x); +- OpenImageIO::ImageBuf gradient_x; +- OpenImageIO::ImageBufAlgo::convolve(gradient_x, image_, kernel_x, false); ++ OIIO_NAMESPACE::ImageSpec spec(3, 3, 1, OIIO_NAMESPACE::TypeDesc::FLOAT); ++ OIIO_NAMESPACE::ImageBuf kernel_x(spec, sobel_filter_x); ++ OIIO_NAMESPACE::ImageBuf gradient_x; ++ OIIO_NAMESPACE::ImageBufAlgo::convolve(gradient_x, image_, kernel_x, false); + return FloatImage(gradient_x); + } + + FloatImage FloatImage::ComputeGradientY() const { + float sobel_filter_y[9] = {-.125, -.25, -.125, 0, 0, 0, .125, .25, .125}; +- OpenImageIO::ImageSpec spec(3, 3, 1, OpenImageIO::TypeDesc::FLOAT); +- OpenImageIO::ImageBuf kernel_y(spec, sobel_filter_y); +- OpenImageIO::ImageBuf gradient_y; +- OpenImageIO::ImageBufAlgo::convolve(gradient_y, image_, kernel_y, false); ++ OIIO_NAMESPACE::ImageSpec spec(3, 3, 1, OIIO_NAMESPACE::TypeDesc::FLOAT); ++ OIIO_NAMESPACE::ImageBuf kernel_y(spec, sobel_filter_y); ++ OIIO_NAMESPACE::ImageBuf gradient_y; ++ OIIO_NAMESPACE::ImageBufAlgo::convolve(gradient_y, image_, kernel_y, false); + return FloatImage(gradient_y); + } + +@@ -280,28 +280,28 @@ FloatImage FloatImage::ComputeGradient() const { + float sobel_filter_x[9] = {-.125, 0, .125, -.25, 0, .25, -.125, 0, .125}; + float sobel_filter_y[9] = {-.125, -.25, -.125, 0, 0, 0, .125, .25, .125}; + +- OpenImageIO::ImageSpec spec(3, 3, 1, OpenImageIO::TypeDesc::FLOAT); +- OpenImageIO::ImageBuf kernel_x(spec, sobel_filter_x); +- OpenImageIO::ImageBuf kernel_y(spec, sobel_filter_y); ++ OIIO_NAMESPACE::ImageSpec spec(3, 3, 1, OIIO_NAMESPACE::TypeDesc::FLOAT); ++ OIIO_NAMESPACE::ImageBuf kernel_x(spec, sobel_filter_x); ++ OIIO_NAMESPACE::ImageBuf kernel_y(spec, sobel_filter_y); + +- OpenImageIO::ImageBuf gradient, gradient_x, gradient_y; +- OpenImageIO::ImageBufAlgo::convolve(gradient_x, image_, kernel_x, false); +- OpenImageIO::ImageBufAlgo::abs(gradient_x, gradient_x); +- OpenImageIO::ImageBufAlgo::convolve(gradient_y, image_, kernel_y, false); +- OpenImageIO::ImageBufAlgo::abs(gradient_y, gradient_y); +- OpenImageIO::ImageBufAlgo::add(gradient, gradient_x, gradient_y); ++ OIIO_NAMESPACE::ImageBuf gradient, gradient_x, gradient_y; ++ OIIO_NAMESPACE::ImageBufAlgo::convolve(gradient_x, image_, kernel_x, false); ++ OIIO_NAMESPACE::ImageBufAlgo::abs(gradient_x, gradient_x); ++ OIIO_NAMESPACE::ImageBufAlgo::convolve(gradient_y, image_, kernel_y, false); ++ OIIO_NAMESPACE::ImageBufAlgo::abs(gradient_y, gradient_y); ++ OIIO_NAMESPACE::ImageBufAlgo::add(gradient, gradient_x, gradient_y); + + return FloatImage(gradient); + } + + void FloatImage::ApproximateGaussianBlur(const double sigma) { +- OpenImageIO::ImageBuf kernel; +- OpenImageIO::ImageBufAlgo::make_kernel(kernel, "gaussian", 5.0f, 5.0f); +- OpenImageIO::ImageBufAlgo::convolve(image_, image_, kernel); ++ OIIO_NAMESPACE::ImageBuf kernel; ++ OIIO_NAMESPACE::ImageBufAlgo::make_kernel(kernel, "gaussian", 5.0f, 5.0f); ++ OIIO_NAMESPACE::ImageBufAlgo::convolve(image_, image_, kernel); + } + + void FloatImage::MedianFilter(const int patch_width) { +- CHECK(OpenImageIO::ImageBufAlgo::median_filter(image_, image_, patch_width)); ++ CHECK(OIIO_NAMESPACE::ImageBufAlgo::median_filter(image_, image_, patch_width)); + } + + void FloatImage::Integrate(FloatImage* integral) const { +@@ -327,14 +327,14 @@ void FloatImage::Resize(int new_width, int new_height) { + // If the image has not been initialized then initialize it with the image + // spec. Otherwise resize the image and interpolate pixels accordingly. + if (!image_.initialized()) { +- OpenImageIO::ImageSpec image_spec(new_width, new_height, Channels(), +- OpenImageIO::TypeDesc::FLOAT); ++ OIIO_NAMESPACE::ImageSpec image_spec(new_width, new_height, Channels(), ++ OIIO_NAMESPACE::TypeDesc::FLOAT); + image_.reset(image_spec); + } else { +- OpenImageIO::ROI roi(0, new_width, 0, new_height, 0, 1, 0, Channels()); +- OpenImageIO::ImageBuf dst; +- CHECK(OpenImageIO::ImageBufAlgo::resize(dst, image_, nullptr, roi)) +- << OpenImageIO::geterror(); ++ OIIO_NAMESPACE::ROI roi(0, new_width, 0, new_height, 0, 1, 0, Channels()); ++ OIIO_NAMESPACE::ImageBuf dst; ++ CHECK(OIIO_NAMESPACE::ImageBufAlgo::resize(dst, image_, nullptr, roi)) ++ << OIIO_NAMESPACE::geterror(); + image_.copy(dst); + } + } +diff --git a/src/theia/image/image.h b/src/theia/image/image.h +index e4f22cc..29122d2 100644 +--- a/src/theia/image/image.h ++++ b/src/theia/image/image.h +@@ -64,7 +64,7 @@ class FloatImage { + + // Copy function. This is a deep copy of the image. + FloatImage(const FloatImage& image_to_copy); +- explicit FloatImage(const OpenImageIO::ImageBuf& image); ++ explicit FloatImage(const OIIO_NAMESPACE::ImageBuf& image); + FloatImage& operator=(const FloatImage& image2); + ~FloatImage() {} + +@@ -74,8 +74,8 @@ class FloatImage { + // wrapper for all algorithms. Getting a reference to the ImageBuf provides + // efficient access to the image data so that the image processing algorithms + // or other manipulations may be executed on the pixels. +- OpenImageIO::ImageBuf& GetOpenImageIOImageBuf(); +- const OpenImageIO::ImageBuf& GetOpenImageIOImageBuf() const; ++ OIIO_NAMESPACE::ImageBuf& GetOpenImageIOImageBuf(); ++ const OIIO_NAMESPACE::ImageBuf& GetOpenImageIOImageBuf() const; + + // Image information + int Rows() const; +@@ -171,7 +171,7 @@ class FloatImage { + void Resize(double scale); + + protected: +- OpenImageIO::ImageBuf image_; ++ OIIO_NAMESPACE::ImageBuf image_; + }; + } // namespace theia + +diff --git a/src/theia/image/image_test.cc b/src/theia/image/image_test.cc +index 894dc30..340488d 100644 +--- a/src/theia/image/image_test.cc ++++ b/src/theia/image/image_test.cc +@@ -53,11 +53,11 @@ RandomNumberGenerator rng(51); + std::string img_filename = THEIA_DATA_DIR + std::string("/") + FLAGS_test_img; + + #define ASSERT_IMG_EQ(oiio_img, theia_img, rows, cols) \ +- oiio_img.read(0, 0, true, OpenImageIO::TypeDesc::FLOAT); \ ++ oiio_img.read(0, 0, true, OIIO_NAMESPACE::TypeDesc::FLOAT); \ + ASSERT_EQ(oiio_img.oriented_width(), theia_img.Cols()); \ + ASSERT_EQ(oiio_img.oriented_height(), theia_img.Rows()); \ + ASSERT_EQ(oiio_img.nchannels(), theia_img.Channels()); \ +- OpenImageIO::ImageBuf::ConstIterator it(oiio_img); \ ++ OIIO_NAMESPACE::ImageBuf::ConstIterator it(oiio_img); \ + for (; !it.done(); ++it) { \ + for (int c = 0; c < oiio_img.nchannels(); c++) { \ + ASSERT_EQ(it[c], theia_img.GetXY(it.x(), it.y(), c)); \ +@@ -89,7 +89,7 @@ float Interpolate(const FloatImage& image, + + // Test that inputting the old fashioned way is the same as through our class. + TEST(Image, RGBInput) { +- OpenImageIO::ImageBuf oiio_img(img_filename.c_str()); ++ OIIO_NAMESPACE::ImageBuf oiio_img(img_filename.c_str()); + oiio_img.read(); + FloatImage theia_img(img_filename); + +@@ -102,7 +102,7 @@ TEST(Image, RGBInput) { + + // Test that width and height methods work. + TEST(Image, RGBColsRows) { +- OpenImageIO::ImageBuf oiio_img(img_filename.c_str()); ++ OIIO_NAMESPACE::ImageBuf oiio_img(img_filename.c_str()); + FloatImage theia_img(img_filename); + + int true_height = oiio_img.oriented_height(); +@@ -114,10 +114,10 @@ TEST(Image, RGBColsRows) { + + // Test that inputting the old fashioned way is the same as through our class. + TEST(Image, ConvertToGrayscaleImage) { +- OpenImageIO::ImageBuf oiio_img(img_filename.c_str()); +- OpenImageIO::ImageBuf gray_img; ++ OIIO_NAMESPACE::ImageBuf oiio_img(img_filename.c_str()); ++ OIIO_NAMESPACE::ImageBuf gray_img; + const float luma_weights[3] = {.2126, .7152, .0722}; +- OpenImageIO::ImageBufAlgo::channel_sum(gray_img, oiio_img, luma_weights); ++ OIIO_NAMESPACE::ImageBufAlgo::channel_sum(gray_img, oiio_img, luma_weights); + + FloatImage theia_img(img_filename); + theia_img.ConvertToGrayscaleImage(); +@@ -131,10 +131,10 @@ TEST(Image, ConvertToGrayscaleImage) { + } + + TEST(Image, ConvertToRGBImage) { +- OpenImageIO::ImageBuf oiio_img(img_filename.c_str()); +- OpenImageIO::ImageBuf gray_img; ++ OIIO_NAMESPACE::ImageBuf oiio_img(img_filename.c_str()); ++ OIIO_NAMESPACE::ImageBuf gray_img; + const float luma_weights[3] = {.2126, .7152, .0722}; +- OpenImageIO::ImageBufAlgo::channel_sum(gray_img, oiio_img, luma_weights); ++ OIIO_NAMESPACE::ImageBufAlgo::channel_sum(gray_img, oiio_img, luma_weights); + + // This should result in an image with the grayscale image copied in each + // channel. +@@ -148,7 +148,7 @@ TEST(Image, ConvertToRGBImage) { + + // Check that all channels have equal value and that the value is equal to the + // grayscale image. +- for (OpenImageIO::ImageBuf::ConstIterator it(gray_img); ++ for (OIIO_NAMESPACE::ImageBuf::ConstIterator it(gray_img); + !it.done(); + ++it) { + ASSERT_EQ(it[0], rgb_img.GetXY(it.x(), it.y(), 0)); +diff --git a/src/theia/sfm/exif_reader.cc b/src/theia/sfm/exif_reader.cc +index 48c049a..fea884d 100644 +--- a/src/theia/sfm/exif_reader.cc ++++ b/src/theia/sfm/exif_reader.cc +@@ -127,8 +127,8 @@ bool ExifReader::ExtractEXIFMetadata( + CameraIntrinsicsPrior* camera_intrinsics_prior) const { + CHECK_NOTNULL(camera_intrinsics_prior); + +- OpenImageIO::ImageBuf image(image_file); +- OpenImageIO::ImageSpec image_spec = image.spec(); ++ OIIO_NAMESPACE::ImageBuf image(image_file); ++ OIIO_NAMESPACE::ImageSpec image_spec = image.spec(); + + // Set the image dimensions. + camera_intrinsics_prior->image_width = image_spec.width; +@@ -154,7 +154,7 @@ bool ExifReader::ExtractEXIFMetadata( + camera_intrinsics_prior->focal_length.is_set = true; + + // Set GPS latitude. +- const OpenImageIO::ImageIOParameter* latitude = ++ const OIIO_NAMESPACE::ImageIOParameter* latitude = + image_spec.find_attribute("GPS:Latitude"); + if (latitude != nullptr) { + camera_intrinsics_prior->latitude.is_set = true; +@@ -173,7 +173,7 @@ bool ExifReader::ExtractEXIFMetadata( + } + + // Set GPS longitude. +- const OpenImageIO::ImageIOParameter* longitude = ++ const OIIO_NAMESPACE::ImageIOParameter* longitude = + image_spec.find_attribute("GPS:Longitude"); + if (longitude != nullptr) { + camera_intrinsics_prior->longitude.is_set = true; +@@ -193,7 +193,7 @@ bool ExifReader::ExtractEXIFMetadata( + + + // Set GSP altitude. +- const OpenImageIO::ImageIOParameter* altitude = ++ const OIIO_NAMESPACE::ImageIOParameter* altitude = + image_spec.find_attribute("GPS:Altitude"); + if (altitude != nullptr) { + camera_intrinsics_prior->altitude.is_set = true; +@@ -205,7 +205,7 @@ bool ExifReader::ExtractEXIFMetadata( + } + + bool ExifReader::SetFocalLengthFromExif( +- const OpenImageIO::ImageSpec& image_spec, ++ const OIIO_NAMESPACE::ImageSpec& image_spec, + CameraIntrinsicsPrior* camera_intrinsics_prior) const { + static const float kMinFocalLength = 1e-2; + +@@ -268,7 +268,7 @@ bool ExifReader::SetFocalLengthFromExif( + } + + bool ExifReader::SetFocalLengthFromSensorDatabase( +- const OpenImageIO::ImageSpec& image_spec, ++ const OIIO_NAMESPACE::ImageSpec& image_spec, + CameraIntrinsicsPrior* camera_intrinsics_prior) const { + const int max_image_dimension = std::max(image_spec.width, image_spec.height); + const float exif_focal_length = +diff --git a/src/theia/sfm/exif_reader.h b/src/theia/sfm/exif_reader.h +index 3049cf4..d9d3108 100644 +--- a/src/theia/sfm/exif_reader.h ++++ b/src/theia/sfm/exif_reader.h +@@ -74,13 +74,13 @@ class ExifReader { + // Sets the focal length from the focal plane resolution. Returns true if a + // valid focal length is found and false otherwise. + bool SetFocalLengthFromExif( +- const OpenImageIO::ImageSpec& image_spec, ++ const OIIO_NAMESPACE::ImageSpec& image_spec, + CameraIntrinsicsPrior* camera_intrinsics_prior) const; + + // Sets the focal length from a look up in the sensor width database. Returns + // true if a valid focal length is found and false otherwise. + bool SetFocalLengthFromSensorDatabase( +- const OpenImageIO::ImageSpec& image_spec, ++ const OIIO_NAMESPACE::ImageSpec& image_spec, + CameraIntrinsicsPrior* camera_intrinsics_prior) const; + + std::unordered_map sensor_width_database_; +diff --git a/src/theia/sfm/undistort_image.cc b/src/theia/sfm/undistort_image.cc +index 95a061d..ae0690e 100644 +--- a/src/theia/sfm/undistort_image.cc ++++ b/src/theia/sfm/undistort_image.cc +@@ -160,9 +160,9 @@ void RemoveImageLensDistortion(const Camera& distorted_camera, + // For each pixel in the undistorted image, find the coordinate in the + // distorted image and set the pixel color accordingly. + const int num_channels = distorted_image.Channels(); +- OpenImageIO::ImageBuf& undistorted_img = ++ OIIO_NAMESPACE::ImageBuf& undistorted_img = + undistorted_image->GetOpenImageIOImageBuf(); +- OpenImageIO::ImageBuf::Iterator undistorted_it(undistorted_img); ++ OIIO_NAMESPACE::ImageBuf::Iterator undistorted_it(undistorted_img); + for (; !undistorted_it.done(); ++undistorted_it) { + Eigen::Vector2d image_point(undistorted_it.x() + 0.5, + undistorted_it.y() + 0.5); diff --git a/ports/theia/portfile.cmake b/ports/theia/portfile.cmake index 8ac920d57..d2e4c6699 100644 --- a/ports/theia/portfile.cmake +++ b/ports/theia/portfile.cmake @@ -20,6 +20,7 @@ vcpkg_apply_patches( ${CMAKE_CURRENT_LIST_DIR}/fix-vlfeat-static.patch ${CMAKE_CURRENT_LIST_DIR}/fix-glog-error.patch ${CMAKE_CURRENT_LIST_DIR}/fix-find-suitesparse.patch + ${CMAKE_CURRENT_LIST_DIR}/fix-oiio.patch ) vcpkg_configure_cmake( -- cgit v1.2.3 From a143d1a7fc817ba877b90e8fb0c0865325997885 Mon Sep 17 00:00:00 2001 From: Koby Kahane Date: Tue, 3 Apr 2018 05:34:51 +0300 Subject: [gtest] Fix missing debug information (#3148) * [gtest] Fix missing debug information Patch a CMake file in gtest not to override the /Z7 compiler option that embeds debug info in the .lib with /Zi that places it in a .pdb. This fixes linker warning LNK4099 when linking with gmock.lib. * [gtest] Bump version to include Zi change --- ports/gtest/0002-Fix-z7-override.patch | 13 +++++++++++++ ports/gtest/CONTROL | 2 +- ports/gtest/portfile.cmake | 1 + 3 files changed, 15 insertions(+), 1 deletion(-) create mode 100644 ports/gtest/0002-Fix-z7-override.patch diff --git a/ports/gtest/0002-Fix-z7-override.patch b/ports/gtest/0002-Fix-z7-override.patch new file mode 100644 index 000000000..c8de56d09 --- /dev/null +++ b/ports/gtest/0002-Fix-z7-override.patch @@ -0,0 +1,13 @@ +diff --git a/googletest/cmake/internal_utils.cmake b/googletest/cmake/internal_utils.cmake +index 777b91e..75a13c9 100644 +--- a/googletest/cmake/internal_utils.cmake ++++ b/googletest/cmake/internal_utils.cmake +@@ -55,7 +55,7 @@ macro(config_compiler_and_linker) + if (MSVC) + # Newlines inside flags variables break CMake's NMake generator. + # TODO(vladl@google.com): Add -RTCs and -RTCu to debug builds. +- set(cxx_base_flags "-GS -W4 -WX -wd4251 -wd4275 -nologo -J -Zi") ++ set(cxx_base_flags "-GS -W4 -WX -wd4251 -wd4275 -nologo -J") + if (MSVC_VERSION LESS 1400) # 1400 is Visual Studio 2005 + # Suppress spurious warnings MSVC 7.1 sometimes issues. + # Forcing value to bool. diff --git a/ports/gtest/CONTROL b/ports/gtest/CONTROL index e76e815c4..2fa32ae3c 100644 --- a/ports/gtest/CONTROL +++ b/ports/gtest/CONTROL @@ -1,3 +1,3 @@ Source: gtest -Version: 1.8.0-7 +Version: 1.8.0-8 Description: GoogleTest and GoogleMock testing frameworks. diff --git a/ports/gtest/portfile.cmake b/ports/gtest/portfile.cmake index b5f3e58c8..72fe5813e 100644 --- a/ports/gtest/portfile.cmake +++ b/ports/gtest/portfile.cmake @@ -15,6 +15,7 @@ vcpkg_from_github( vcpkg_apply_patches( SOURCE_PATH ${SOURCE_PATH} PATCHES ${CMAKE_CURRENT_LIST_DIR}/0001-Enable-C-11-features-for-VS2015-fix-appveyor-fail.patch + ${CMAKE_CURRENT_LIST_DIR}/0002-Fix-z7-override.patch ) string(COMPARE EQUAL "${VCPKG_CRT_LINKAGE}" "dynamic" GTEST_FORCE_SHARED_CRT) -- cgit v1.2.3 From 79a77a0bb761168b24ad3d1e897200f443b6287b Mon Sep 17 00:00:00 2001 From: Carlos O'Ryan Date: Mon, 2 Apr 2018 23:29:14 -0400 Subject: Add google-cloud-cpp package (#3099) * Initial port for google-cloud-cpp * Use pre-release tag instead of commit sha1. * Fix version. * [google-cloud-cpp] Portfile improvements * [google-cloud-cpp] Update to 0.1.0 --- ports/google-cloud-cpp/CONTROL | 4 ++++ ports/google-cloud-cpp/portfile.cmake | 44 +++++++++++++++++++++++++++++++++++ 2 files changed, 48 insertions(+) create mode 100644 ports/google-cloud-cpp/CONTROL create mode 100644 ports/google-cloud-cpp/portfile.cmake diff --git a/ports/google-cloud-cpp/CONTROL b/ports/google-cloud-cpp/CONTROL new file mode 100644 index 000000000..e44b2e5e6 --- /dev/null +++ b/ports/google-cloud-cpp/CONTROL @@ -0,0 +1,4 @@ +Source: google-cloud-cpp +Version: 0.1.0 +Build-Depends: grpc, gtest +Description: C++ Client Libraries for Google Cloud Platform APIs. diff --git a/ports/google-cloud-cpp/portfile.cmake b/ports/google-cloud-cpp/portfile.cmake new file mode 100644 index 000000000..701d94ae5 --- /dev/null +++ b/ports/google-cloud-cpp/portfile.cmake @@ -0,0 +1,44 @@ +if (VCPKG_LIBRARY_LINKAGE STREQUAL dynamic) + message(STATUS "Warning: Dynamic building not supported yet. Building static.") + set(VCPKG_LIBRARY_LINKAGE static) +endif() + +include(vcpkg_common_functions) + +vcpkg_from_github( + OUT_SOURCE_PATH SOURCE_PATH + REPO GoogleCloudPlatform/google-cloud-cpp + REF v0.1.0 + SHA512 3947cc24ca1ed97309f055f17945afe2d6b22ae8f54f86d3395f8c491b7409d4b7bb12206889d04d07f51236e9fd5afd65b904c8c80521a3313588d8069545c2 + HEAD_REF master +) + +set(GOOGLEAPIS_VERSION 92f10d7033c6fa36e1a5a369ab5aa8bafd564009) +vcpkg_download_distfile(GOOGLEAPIS + URLS "https://github.com/google/googleapis/archive/92f10d7033c6fa36e1a5a369ab5aa8bafd564009.zip" + FILENAME "googleapis-${GOOGLEAPIS_VERSION}.zip" + SHA512 4280ece965a231f6a0bb3ea38a961d15babd9eac517f9b0d57e12f186481bbab6a27e4f0ee03ba3c587c9aa93d3c2e6c95f67f50365c65bb10594f0229279287 +) + +file(REMOVE_RECURSE ${SOURCE_PATH}/third_party) +vcpkg_extract_source_archive(${GOOGLEAPIS} ${SOURCE_PATH}/third_party) +file(RENAME ${SOURCE_PATH}/third_party/googleapis-${GOOGLEAPIS_VERSION} ${SOURCE_PATH}/third_party/googleapis) + +vcpkg_configure_cmake( + SOURCE_PATH ${SOURCE_PATH} + PREFER_NINJA + OPTIONS + -DGOOGLE_CLOUD_CPP_GRPC_PROVIDER=vcpkg + -DGOOGLE_CLOUD_CPP_GMOCK_PROVIDER=vcpkg +) + +vcpkg_install_cmake(ADD_BIN_TO_PATH) + +file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/include/bigtable/client/testing) +file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include) + +vcpkg_fixup_cmake_targets(CONFIG_PATH share/cmake TARGET_PATH share/bigtable_client) + +file(INSTALL ${SOURCE_PATH}/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/google-cloud-cpp RENAME copyright) + +vcpkg_copy_pdbs() -- cgit v1.2.3 From 182450ab6434cd2b790780e45f6a6cd060874761 Mon Sep 17 00:00:00 2001 From: pravic Date: Tue, 3 Apr 2018 15:38:05 +0300 Subject: [sqlite3] update to 3.23.0 --- ports/sqlite3/CONTROL | 2 +- ports/sqlite3/portfile.cmake | 6 +++--- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/ports/sqlite3/CONTROL b/ports/sqlite3/CONTROL index 7e39794dd..a5d76d43b 100644 --- a/ports/sqlite3/CONTROL +++ b/ports/sqlite3/CONTROL @@ -1,5 +1,5 @@ Source: sqlite3 -Version: 3.21.0-1 +Version: 3.23.0 Description: SQLite is a software library that implements a self-contained, serverless, zero-configuration, transactional SQL database engine. Feature: tool diff --git a/ports/sqlite3/portfile.cmake b/ports/sqlite3/portfile.cmake index d6596e7b2..d016660ab 100644 --- a/ports/sqlite3/portfile.cmake +++ b/ports/sqlite3/portfile.cmake @@ -1,11 +1,11 @@ include(vcpkg_common_functions) -set(SQLITE_VERSION 3210000) -set(SQLITE_HASH 0a272b00825d07528c3842ccd483d81e5e719ab56737eec0972f7f8191dfbe92e35777ab8d1b37c95fde9320bbfa3c365a4b30253af876340f55517ea96bf665) +set(SQLITE_VERSION 3230000) +set(SQLITE_HASH bfca2ec16d926c11c9ec052eae41549f1de392582227ca08eb8a01cc36e58ac528c7677fdab253250ba3e0cf6e5cd9d3d0012e5b558be7db91740ac901dae0fe) set(SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src/sqlite-amalgamation-${SQLITE_VERSION}) vcpkg_download_distfile(ARCHIVE - URLS "https://sqlite.org/2017/sqlite-amalgamation-${SQLITE_VERSION}.zip" + URLS "https://sqlite.org/2018/sqlite-amalgamation-${SQLITE_VERSION}.zip" FILENAME "sqlite-amalgamation-${SQLITE_VERSION}.zip" SHA512 ${SQLITE_HASH}) vcpkg_extract_source_archive(${ARCHIVE}) -- cgit v1.2.3 From d1ecca1c7d225d4300ee82d6e915cbe7d6bac244 Mon Sep 17 00:00:00 2001 From: Robert Schumacher Date: Mon, 2 Apr 2018 16:45:58 -0700 Subject: [abseil][aws-sdk-cpp][clara][eastl][exiv2][libuv][nuklear][openimageio][thrift] Upgrades --- ports/abseil/CONTROL | 2 +- ports/abseil/portfile.cmake | 4 ++-- ports/aws-sdk-cpp/CONTROL | 2 +- ports/aws-sdk-cpp/portfile.cmake | 4 ++-- ports/clara/CONTROL | 2 +- ports/clara/portfile.cmake | 4 ++-- ports/eastl/CONTROL | 2 +- ports/eastl/portfile.cmake | 4 ++-- ports/exiv2/CONTROL | 2 +- ports/exiv2/portfile.cmake | 4 ++-- ports/libuv/CONTROL | 2 +- ports/libuv/portfile.cmake | 4 ++-- ports/nuklear/CONTROL | 2 +- ports/nuklear/portfile.cmake | 4 ++-- ports/openimageio/CONTROL | 2 +- ports/openimageio/portfile.cmake | 4 ++-- ports/thrift/CONTROL | 2 +- ports/thrift/portfile.cmake | 4 ++-- 18 files changed, 27 insertions(+), 27 deletions(-) diff --git a/ports/abseil/CONTROL b/ports/abseil/CONTROL index a07f78c76..b7ef25750 100644 --- a/ports/abseil/CONTROL +++ b/ports/abseil/CONTROL @@ -1,5 +1,5 @@ Source: abseil -Version: 2018-03-29 +Version: 2018-04-02 Description: an open-source collection designed to augment the C++ standard library. Abseil is an open-source collection of C++ library code designed to augment the C++ standard library. The Abseil library code is collected from Google's own C++ code base, has been extensively tested and used in production, and is the same code we depend on in our daily coding lives. In some cases, Abseil provides pieces missing from the C++ standard; in others, Abseil provides alternatives to the standard for special needs we've found through usage in the Google code base. We denote those cases clearly within the library code we provide you. diff --git a/ports/abseil/portfile.cmake b/ports/abseil/portfile.cmake index bd1d799a2..4ccdb27a6 100644 --- a/ports/abseil/portfile.cmake +++ b/ports/abseil/portfile.cmake @@ -7,8 +7,8 @@ endif() vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO abseil/abseil-cpp - REF d9b47d7888b39cd113bacacb9edd5023a71cbb3a - SHA512 d5aac7bbe7cdb1419f19eff80487a1d8fa03cde82db760bf9fab464a62ae66251c62f69ff13940db41af1bb287ea9680782773bf1cb19c15d489f711b390d734 + REF 7b3c38a0628b9201ce92a6893b96890b64e5daa8 + SHA512 6e23d98adabbefcf8054a0ff03fdbc5438efbd957cd4864ab870496468f9891eeb8f73796a37faba7412a4b88b96771fc23f3f0bb89ab6023800beb99e6660d3 HEAD_REF master ) diff --git a/ports/aws-sdk-cpp/CONTROL b/ports/aws-sdk-cpp/CONTROL index eb69e3b10..b4004cdc0 100644 --- a/ports/aws-sdk-cpp/CONTROL +++ b/ports/aws-sdk-cpp/CONTROL @@ -1,5 +1,5 @@ Source: aws-sdk-cpp -Version: 1.4.26 +Version: 1.4.27 Description: AWS SDK for C++ Default-Features: dynamodb, ec2, kms, rds, s3, sns, sqs # Automatically generated by generateFeatures.ps1 diff --git a/ports/aws-sdk-cpp/portfile.cmake b/ports/aws-sdk-cpp/portfile.cmake index 4728ab259..26129db5c 100644 --- a/ports/aws-sdk-cpp/portfile.cmake +++ b/ports/aws-sdk-cpp/portfile.cmake @@ -3,8 +3,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO aws/aws-sdk-cpp - REF 1.4.26 - SHA512 44ba566b82e4e3b0be3250bc02693a2128986eb0f7214b7a2bb4dc716d23afe7e699de89cc4483ab176b07159cf3ecf4821b16e5033b75db39ef410165d4f08b + REF 1.4.27 + SHA512 d714fe12d3701461b897256d824b169ff3242bb412d386a2c1455c0dc1dcedf3add444eab556551fbb69e0339b49c3133c1f820710b5681d25a23237e919ddd0 HEAD_REF master ) diff --git a/ports/clara/CONTROL b/ports/clara/CONTROL index 878313563..815db6e52 100644 --- a/ports/clara/CONTROL +++ b/ports/clara/CONTROL @@ -1,3 +1,3 @@ Source: clara -Version: 2018-03-23 +Version: 2018-04-02 Description: A simple to use command line parser for C++ \ No newline at end of file diff --git a/ports/clara/portfile.cmake b/ports/clara/portfile.cmake index 3c5108b19..b4f7a7b20 100644 --- a/ports/clara/portfile.cmake +++ b/ports/clara/portfile.cmake @@ -2,8 +2,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO philsquared/Clara - REF 3ba13ad04a3eebc002320f187475ddcd267288a3 - SHA512 d2e73d2ac70f9ad6428f434b101d413453648708d545a1a71f2363b5847e710412b69fdb9ab100eb437f9419cc4c250ce7ca56cfa9132096be9aa471dcb677d0 + REF ba5485cb56329db3ea3f5402ef596d3b512b903a + SHA512 8aa66e3e1a2b7c544d9d105ad9f803119791b971cce4dff63ae47b63a08fd422fc75108aeb69300fa9982568d689f506456c6f8ed7287a19b9ed84649fad9315 HEAD_REF master ) file(INSTALL ${SOURCE_PATH}/single_include/clara.hpp DESTINATION ${CURRENT_PACKAGES_DIR}/include) diff --git a/ports/eastl/CONTROL b/ports/eastl/CONTROL index 47a111ea1..dbf5fb0f4 100644 --- a/ports/eastl/CONTROL +++ b/ports/eastl/CONTROL @@ -1,4 +1,4 @@ Source: eastl -Version: 3.08.00 +Version: 3.09.00 Description: Electronic Arts Standard Template Library. It is a C++ template library of containers, algorithms, and iterators useful for runtime and tool development across multiple platforms. It is a fairly extensive and robust implementation of such a library and has an emphasis on high performance above all other considerations. diff --git a/ports/eastl/portfile.cmake b/ports/eastl/portfile.cmake index 1e3831913..afe9ed4cf 100644 --- a/ports/eastl/portfile.cmake +++ b/ports/eastl/portfile.cmake @@ -8,8 +8,8 @@ set(SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src/eastl) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO electronicarts/EASTL - REF 3.08.00 - SHA512 dc9510d1b6021fb275049a45d52d25002ac2e9859047c0ba4881aa478b700645e17b4fdbc7cdb43cee86df9155c545d2a29a6c1c5b06df3b8b6b4e150f010ade + REF 3.09.00 + SHA512 73b1b6ce0eba65fca049571a44595ff581f0dda01dcaaf3e0deb2d22e62b9b694a321339038c5cc2e6802ba3270675b814b73b59a8cfc8d71e645c60b17bebb6 HEAD_REF master ) diff --git a/ports/exiv2/CONTROL b/ports/exiv2/CONTROL index 0f4ddb750..3e7d58c9a 100644 --- a/ports/exiv2/CONTROL +++ b/ports/exiv2/CONTROL @@ -1,4 +1,4 @@ Source: exiv2 -Version: 2018-03-29 +Version: 2018-04-02 Build-Depends: zlib, expat, libiconv Description: Image metadata library and tools http://www.exiv2.org diff --git a/ports/exiv2/portfile.cmake b/ports/exiv2/portfile.cmake index f68070eea..99a72304f 100644 --- a/ports/exiv2/portfile.cmake +++ b/ports/exiv2/portfile.cmake @@ -3,8 +3,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO Exiv2/exiv2 - REF 8b7941b7332a3299b3b6061e93f352ef66440666 - SHA512 743a9792753915334e86c55112ef876bf0353924b85b0bf33ffb8217606ecb57954eec2d0e904f6e9fd9ea435b96f035bea793cb5040f54169eea0ba0c2fd7e3 + REF 07d75cd0e833286ce9e301ea83229f3e283c6191 + SHA512 8cf5cb919c12e719d70f2ea71c84835f09f2962095eeb56bb27ef3cd22ad4ea032dfbf9704f9c7393de0a969d3ae0609dafeb619b6c28dca598c8f34a3810b4d HEAD_REF master ) diff --git a/ports/libuv/CONTROL b/ports/libuv/CONTROL index 2f7647489..e861df239 100644 --- a/ports/libuv/CONTROL +++ b/ports/libuv/CONTROL @@ -1,3 +1,3 @@ Source: libuv -Version: 1.19.2 +Version: 1.20.0 Description: libuv is a multi-platform support library with a focus on asynchronous I/O. diff --git a/ports/libuv/portfile.cmake b/ports/libuv/portfile.cmake index 4a79096c2..46ce33d8d 100644 --- a/ports/libuv/portfile.cmake +++ b/ports/libuv/portfile.cmake @@ -2,8 +2,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO libuv/libuv - REF v1.19.2 - SHA512 4fa879e34c51ae428ebf72ce80873b8d12994ae1560f9d3577a693653bfd5bd4b4fda7ff457b98b5e60fc82546658300401d6545d677f31d2cd66be3d82e02da + REF v1.20.0 + SHA512 382309cb6e54765b956b03357cb754f49d93505ba0e0122a77f33efca07d7b87966c993a5fd9f9503edd1bcd0f49ca42bd9cd9264cce94c847aebca77d237ba0 HEAD_REF v1.x) file(COPY ${CMAKE_CURRENT_LIST_DIR}/CMakeLists.txt DESTINATION ${SOURCE_PATH}) diff --git a/ports/nuklear/CONTROL b/ports/nuklear/CONTROL index 694ddd5b7..51aaf9ac2 100644 --- a/ports/nuklear/CONTROL +++ b/ports/nuklear/CONTROL @@ -1,3 +1,3 @@ Source: nuklear -Version: 2018-03-27 +Version: 2018-04-02 Description: This is a minimal state immediate mode graphical user interface toolkit written in ANSI C and licensed under public domain diff --git a/ports/nuklear/portfile.cmake b/ports/nuklear/portfile.cmake index 9baefc9a4..1e820cc07 100644 --- a/ports/nuklear/portfile.cmake +++ b/ports/nuklear/portfile.cmake @@ -2,8 +2,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO vurtun/nuklear - REF 7e710ff4fb0186c0e462d43b30c82cab12ea1277 - SHA512 9f65e2fe2e89521002f7d86e8c5f0947a76724b7e7eb87463832732f38561b0415da98a8411e474467a9e5e1b33189c98f6506cc1baf97dbced66cfe05f2a290 + REF 60bd95c926f73b143ec91e66b2fe315ad2a316e1 + SHA512 45cf7c5cab105241aec6c2a56a34abf9701eded52bf06d3092e0079949757a6cbb0d684b45952a054451384cd07a77b1763526470ec84835da3d514c614c65ba HEAD_REF master ) file(INSTALL ${SOURCE_PATH}/nuklear.h DESTINATION ${CURRENT_PACKAGES_DIR}/include) diff --git a/ports/openimageio/CONTROL b/ports/openimageio/CONTROL index 88a66b315..7da61fcb7 100644 --- a/ports/openimageio/CONTROL +++ b/ports/openimageio/CONTROL @@ -1,4 +1,4 @@ Source: openimageio -Version: 1.8.9 +Version: 1.8.10 Description: A library for reading and writing images, and a bunch of related classes, utilities, and application Build-Depends: libjpeg-turbo, tiff, libpng, openexr, boost-thread, boost-smart-ptr, boost-foreach, boost-regex, boost-type-traits, boost-static-assert, boost-unordered, boost-config, boost-algorithm, boost-filesystem, boost-system, boost-thread, boost-asio, boost-random diff --git a/ports/openimageio/portfile.cmake b/ports/openimageio/portfile.cmake index 21a5899c1..a9bc35608 100644 --- a/ports/openimageio/portfile.cmake +++ b/ports/openimageio/portfile.cmake @@ -3,8 +3,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO OpenImageIO/oiio - REF Release-1.8.9 - SHA512 300eab0d2e7277c46550339d72af59b3ab2232d296b4d46808575015075cdbb9dd911e9b335c0d10bf6d95ebde907240af0f4828d422aca091f82491693dfef3 + REF Release-1.8.10 + SHA512 8b80019feb6bffd63bdd64e4ddad5a85b42f0ed7c27f7d82475b60b0b4db3945bd70d8d75921dd9ae8830b941d7eef6b89364ee1ab418558b75397a784314949 HEAD_REF master ) diff --git a/ports/thrift/CONTROL b/ports/thrift/CONTROL index 8707974d0..da43bce3d 100644 --- a/ports/thrift/CONTROL +++ b/ports/thrift/CONTROL @@ -1,4 +1,4 @@ Source: thrift -Version: 2018-03-30 +Version: 2018-04-02 Build-Depends: zlib, libevent, openssl, boost-range, boost-smart-ptr, boost-date-time, boost-locale, boost-scope-exit Description: Apache Thrift is a software project spanning a variety of programming languages and use cases. Our goal is to make reliable, performant communication and data serialization across languages as efficient and seamless as possible. Originally developed at Facebook, Thrift was open sourced in April 2007 and entered the Apache Incubator in May, 2008. Thrift became an Apache TLP in October, 2010. diff --git a/ports/thrift/portfile.cmake b/ports/thrift/portfile.cmake index 574be4dab..80a6f036d 100644 --- a/ports/thrift/portfile.cmake +++ b/ports/thrift/portfile.cmake @@ -15,8 +15,8 @@ vcpkg_find_acquire_program(BISON) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO apache/thrift - REF 8a83b041d20671c3fae9528d5ac1f5413cad7c5a - SHA512 9f0a2fdb92e33aea960342a88134e4ce4f5f86277abb235ae13dd2f5b4e28f82e72e16d7cf18a1a13f5a9368420b01b3b51a8d3b3d3c06fade00978565b93b7d + REF 3c0edfa875218bd83f6b79a7823380e2adc08ae6 + SHA512 8499ae6adf0db725f847f25f1c0b0ccf0abd8b142dd410a8a3c544dfd2fae8bdf1dec86e74eee3b4f78288f53ed5a162214d963513456d9b3be794e157c00a38 HEAD_REF master ) -- cgit v1.2.3 From 410c547fa14ba6197833f19f2180ba2c532c1722 Mon Sep 17 00:00:00 2001 From: Alexander Karatarakis Date: Tue, 3 Apr 2018 15:19:16 -0700 Subject: Use -L on curl --- toolsrc/src/vcpkg/vcpkgpaths.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/toolsrc/src/vcpkg/vcpkgpaths.cpp b/toolsrc/src/vcpkg/vcpkgpaths.cpp index d4bcea5af..bda2c4174 100644 --- a/toolsrc/src/vcpkg/vcpkgpaths.cpp +++ b/toolsrc/src/vcpkg/vcpkgpaths.cpp @@ -252,8 +252,8 @@ namespace vcpkg #else if (!fs.exists(tool_data.downloaded_path)) { - auto code = System::cmd_execute( - Strings::format(R"(curl '%s' --create-dirs --output '%s')", tool_data.url, tool_data.downloaded_path)); + auto code = System::cmd_execute(Strings::format( + R"(curl -L '%s' --create-dirs --output '%s')", tool_data.url, tool_data.downloaded_path)); Checks::check_exit(VCPKG_LINE_INFO, code == 0, "curl failed while downloading %s", tool_data.url); } -- cgit v1.2.3 From 385df0b02b204e01fbe49c8e3d24c093b22db4b2 Mon Sep 17 00:00:00 2001 From: Alexander Karatarakis Date: Tue, 3 Apr 2018 15:28:47 -0700 Subject: Add vcpkg edit --all --- toolsrc/src/vcpkg/commands.edit.cpp | 17 ++++++++++++++--- 1 file changed, 14 insertions(+), 3 deletions(-) diff --git a/toolsrc/src/vcpkg/commands.edit.cpp b/toolsrc/src/vcpkg/commands.edit.cpp index ac34a6720..94df9f9af 100644 --- a/toolsrc/src/vcpkg/commands.edit.cpp +++ b/toolsrc/src/vcpkg/commands.edit.cpp @@ -34,6 +34,8 @@ namespace vcpkg::Commands::Edit static constexpr StringLiteral OPTION_BUILDTREES = "--buildtrees"; + static constexpr StringLiteral OPTION_ALL = "--all"; + static std::vector valid_arguments(const VcpkgPaths& paths) { auto sources_and_errors = Paragraphs::try_load_all_ports(paths.get_filesystem(), paths.ports); @@ -42,9 +44,9 @@ namespace vcpkg::Commands::Edit [](auto&& pgh) -> std::string { return pgh->core_paragraph->name; }); } - static constexpr std::array EDIT_SWITCHES = {{ - {OPTION_BUILDTREES, "Open editor into the port-specific buildtree subfolder"}, - }}; + static constexpr std::array EDIT_SWITCHES = { + {{OPTION_BUILDTREES, "Open editor into the port-specific buildtree subfolder"}, + {OPTION_ALL, "Open editor into the port as well as the port-specific buildtree subfolder"}}}; const CommandStructure COMMAND_STRUCTURE = { Help::create_example_string("edit zlib"), @@ -113,6 +115,15 @@ namespace vcpkg::Commands::Edit Checks::exit_with_code(VCPKG_LINE_INFO, System::cmd_execute(cmd_line)); } + if (Util::Sets::contains(options.switches, OPTION_ALL)) + { + const auto buildtrees_current_dir = paths.buildtrees / port_name; + + const auto cmd_line = Strings::format( + R"("%s" "%s" %s -n)", env_editor.u8string(), portpath.u8string(), buildtrees_current_dir.u8string()); + Checks::exit_with_code(VCPKG_LINE_INFO, System::cmd_execute(cmd_line)); + } + const auto cmd_line = Strings::format( R"("%s" "%s" "%s" -n)", env_editor.u8string(), -- cgit v1.2.3 From 599aea98c9a2ef587fd9deacdfcf64dfa2e3c4db Mon Sep 17 00:00:00 2001 From: Alexander Karatarakis Date: Tue, 3 Apr 2018 15:30:24 -0700 Subject: Add missing quotes --- toolsrc/src/vcpkg/commands.edit.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/toolsrc/src/vcpkg/commands.edit.cpp b/toolsrc/src/vcpkg/commands.edit.cpp index 94df9f9af..6c696018e 100644 --- a/toolsrc/src/vcpkg/commands.edit.cpp +++ b/toolsrc/src/vcpkg/commands.edit.cpp @@ -120,7 +120,7 @@ namespace vcpkg::Commands::Edit const auto buildtrees_current_dir = paths.buildtrees / port_name; const auto cmd_line = Strings::format( - R"("%s" "%s" %s -n)", env_editor.u8string(), portpath.u8string(), buildtrees_current_dir.u8string()); + R"("%s" "%s" "%s" -n)", env_editor.u8string(), portpath.u8string(), buildtrees_current_dir.u8string()); Checks::exit_with_code(VCPKG_LINE_INFO, System::cmd_execute(cmd_line)); } -- cgit v1.2.3 From 8825e659a62a4d1360c09173882bdf5476d67fc0 Mon Sep 17 00:00:00 2001 From: Josue Andrade Gomes Date: Wed, 4 Apr 2018 09:56:32 -0300 Subject: GraphicsMagick 1.3.28 --- ports/graphicsmagick/CMakeLists.txt | 2 +- ports/graphicsmagick/CONTROL | 2 +- ports/graphicsmagick/portfile.cmake | 4 ++-- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/ports/graphicsmagick/CMakeLists.txt b/ports/graphicsmagick/CMakeLists.txt index 035a193cc..27f9fb109 100644 --- a/ports/graphicsmagick/CMakeLists.txt +++ b/ports/graphicsmagick/CMakeLists.txt @@ -77,7 +77,7 @@ add_library(graphicsmagick coders/art.c coders/avs.c coders/tiff.c coders/tile.c coders/tim.c coders/topol.c coders/ttf.c coders/txt.c coders/uil.c coders/url.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/wbmp.c coders/wmf.c coders/wpg.c coders/x.c coders/xbm.c coders/xc.c coders/xcf.c coders/xpm.c coders/xtrn.c coders/xwd.c coders/yuv.c filters/analyze.c diff --git a/ports/graphicsmagick/CONTROL b/ports/graphicsmagick/CONTROL index 17f2a635d..275bae92f 100644 --- a/ports/graphicsmagick/CONTROL +++ b/ports/graphicsmagick/CONTROL @@ -1,4 +1,4 @@ Source: graphicsmagick -Version: 1.3.26-2 +Version: 1.3.28 Build-Depends: zlib, bzip2, freetype, libjpeg-turbo, libpng, tiff Description: Image processing library diff --git a/ports/graphicsmagick/portfile.cmake b/ports/graphicsmagick/portfile.cmake index 6636802cf..12630d346 100644 --- a/ports/graphicsmagick/portfile.cmake +++ b/ports/graphicsmagick/portfile.cmake @@ -1,12 +1,12 @@ include(vcpkg_common_functions) -set(GM_VERSION 1.3.26) +set(GM_VERSION 1.3.28) set(SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src/graphicsmagick-${GM_VERSION}-windows-source) vcpkg_download_distfile(ARCHIVE 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 + SHA512 0271c187634580204dcc3173553bae9e3cd799203d621ad9e2ba64be778760ac307f25af54859b10e60f8e2589287ad98062548f1c3c94f229e68e7c83878419 ) vcpkg_extract_source_archive(${ARCHIVE}) -- cgit v1.2.3 From 1a296f33e6f1b2857f9916cfb5577ef8b805857b Mon Sep 17 00:00:00 2001 From: Robert Schumacher Date: Tue, 3 Apr 2018 12:49:43 -0700 Subject: [theia] Avoid injecting ceres[suitesparse] into 32-bit ci builds --- ports/theia/CONTROL | 4 ++-- ports/theia/portfile.cmake | 4 ++++ 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/ports/theia/CONTROL b/ports/theia/CONTROL index 06dcc80c8..83d6c2c53 100644 --- a/ports/theia/CONTROL +++ b/ports/theia/CONTROL @@ -1,4 +1,4 @@ Source: theia -Version: 0.7-d15154a-2 -Build-Depends: flann, cereal, ceres[suitesparse], openimageio, glew, freeglut +Version: 0.7-d15154a-3 +Build-Depends: flann, cereal, ceres[suitesparse] (!x86&!uwp&!arm&!linux&!osx), openimageio, glew, freeglut Description: An open source library for multiview geometry and structure from motion diff --git a/ports/theia/portfile.cmake b/ports/theia/portfile.cmake index d2e4c6699..b2e61fae1 100644 --- a/ports/theia/portfile.cmake +++ b/ports/theia/portfile.cmake @@ -3,6 +3,10 @@ if (VCPKG_LIBRARY_LINKAGE STREQUAL dynamic) set(VCPKG_LIBRARY_LINKAGE static) endif() +if(VCPKG_TARGET_ARCHIECTURE STREQUAL "x86") + message(FATAL_ERROR "theia requires ceres[suitesparse] which depends on suitesparse which depends on openblas which is unavailable on x86.") +endif() + include(vcpkg_common_functions) vcpkg_from_github( -- cgit v1.2.3 From 1f7d155b5fec22b7a04fa49de5672f8557c15cc7 Mon Sep 17 00:00:00 2001 From: Robert Schumacher Date: Tue, 3 Apr 2018 15:59:54 -0700 Subject: [libiconv][libxml2] Fix libxml2 on Linux and OSX --- ports/libiconv/CONTROL | 2 +- ports/libiconv/portfile.cmake | 2 +- ports/libiconv/unofficial-iconv-config.cmake | 2 + ports/libiconv/vcpkg-iconv-config.cmake | 2 - ports/libxml2/CMakeLists.txt | 84 ++++++++-------------------- ports/libxml2/CONTROL | 2 +- ports/libxml2/config.linux.h | 56 +++++++++++++++++++ ports/libxml2/config.osx.h | 54 ++++++++++++++++++ ports/libxml2/portfile.cmake | 1 + ports/libxml2/vcpkg-cmake-wrapper.cmake | 18 +++--- 10 files changed, 150 insertions(+), 73 deletions(-) create mode 100644 ports/libiconv/unofficial-iconv-config.cmake delete mode 100644 ports/libiconv/vcpkg-iconv-config.cmake create mode 100644 ports/libxml2/config.linux.h create mode 100644 ports/libxml2/config.osx.h diff --git a/ports/libiconv/CONTROL b/ports/libiconv/CONTROL index 8bb9625b9..37c1a0f0d 100644 --- a/ports/libiconv/CONTROL +++ b/ports/libiconv/CONTROL @@ -1,3 +1,3 @@ Source: libiconv -Version: 1.15-2 +Version: 1.15-3 Description: GNU Unicode text conversion diff --git a/ports/libiconv/portfile.cmake b/ports/libiconv/portfile.cmake index bded180db..5cc48da91 100644 --- a/ports/libiconv/portfile.cmake +++ b/ports/libiconv/portfile.cmake @@ -1,7 +1,7 @@ if(VCPKG_CMAKE_SYSTEM_NAME AND NOT VCPKG_CMAKE_SYSTEM_NAME STREQUAL "WindowsStore") set(VCPKG_POLICY_EMPTY_PACKAGE enabled) file(MAKE_DIRECTORY ${CURRENT_PACKAGES_DIR}/share/libiconv) - file(COPY ${CMAKE_CURRENT_LIST_DIR}/vcpkg-iconv-config.cmake DESTINATION ${CURRENT_PACKAGES_DIR}/share/libiconv) + file(COPY ${CMAKE_CURRENT_LIST_DIR}/unofficial-iconv-config.cmake DESTINATION ${CURRENT_PACKAGES_DIR}/share/unofficial-iconv) return() endif() diff --git a/ports/libiconv/unofficial-iconv-config.cmake b/ports/libiconv/unofficial-iconv-config.cmake new file mode 100644 index 000000000..e272ce09e --- /dev/null +++ b/ports/libiconv/unofficial-iconv-config.cmake @@ -0,0 +1,2 @@ +add_library(unofficial::iconv::libcharset UNKNOWN IMPORTED) +add_library(unofficial::iconv::libiconv UNKNOWN IMPORTED) diff --git a/ports/libiconv/vcpkg-iconv-config.cmake b/ports/libiconv/vcpkg-iconv-config.cmake deleted file mode 100644 index 4befd4d15..000000000 --- a/ports/libiconv/vcpkg-iconv-config.cmake +++ /dev/null @@ -1,2 +0,0 @@ -add_library(unofficial::vcpkg::libcharset UNKNOWN IMPORTED) -add_library(unofficial::vcpkg::libiconv UNKNOWN IMPORTED) diff --git a/ports/libxml2/CMakeLists.txt b/ports/libxml2/CMakeLists.txt index 96ecb901d..3d49985ee 100644 --- a/ports/libxml2/CMakeLists.txt +++ b/ports/libxml2/CMakeLists.txt @@ -3,60 +3,16 @@ project(libxml2 C) option(INSTALL_HEADERS "Install public header files" ON) +set(CMAKE_SHARED_LIBRARY_PREFIX) +set(CMAKE_STATIC_LIBRARY_PREFIX) + find_package(ZLIB REQUIRED) find_package(LibLZMA REQUIRED) -if(WIN32) - find_library(ICONV NAMES libiconv) - find_library(ICONV_CHARSET NAMES libcharset) -endif() +find_package(unofficial-iconv REQUIRED) -set(SOURCES - buf.c - c14n.c - catalog.c - chvalid.c - debugXML.c - dict.c - DOCBparser.c - encoding.c - entities.c - error.c - globals.c - hash.c - HTMLparser.c - HTMLtree.c - legacy.c - list.c - nanoftp.c - nanohttp.c - parser.c - parserInternals.c - pattern.c - relaxng.c - SAX.c - SAX2.c - schematron.c - threads.c - tree.c - uri.c - valid.c - xinclude.c - xlink.c - xmlIO.c - xmlmemory.c - xmlreader.c - xmlregexp.c - xmlmodule.c - xmlsave.c - xmlschemas.c - xmlschemastypes.c - xmlstring.c - xmlunicode.c - xmlwriter.c - xpath.c - xpointer.c - xzlib.c -) +file(GLOB SOURCES *.c) +list(FILTER SOURCES EXCLUDE REGEX "/(run|test|trio)[^/]*$") +list(FILTER SOURCES EXCLUDE REGEX "xml(lint|catalog).c$") # Generate xmlexports with fixed definition of LIBXML_STATIC file(READ include/libxml/xmlexports.h XMLEXPORTS_H) @@ -67,25 +23,33 @@ else() endif() file(WRITE ${CMAKE_CURRENT_BINARY_DIR}/xmlexports.h "${XMLEXPORTS_H}") -file(GLOB PUBLIC_HEADERS include/libxml/*.h) -list(FILTER PUBLIC_HEADERS EXCLUDE REGEX "xmlexports\\.h$") -list(APPEND PUBLIC_HEADERS ${CMAKE_CURRENT_BINARY_DIR}/xmlexports.h) - -configure_file(include/win32config.h config.h COPYONLY) +if(CMAKE_SYSTEM_NAME STREQUAL "Windows") + configure_file(include/win32config.h config.h COPYONLY) +elseif(CMAKE_SYSTEM_NAME STREQUAL "Darwin") + configure_file("${PORT_DIR}/config.osx.h" config.h COPYONLY) +elseif(CMAKE_SYSTEM_NAME STREQUAL "Linux") + configure_file("${PORT_DIR}/config.linux.h" config.h COPYONLY) +else() + message(FATAL_ERROR "No config.h checked in for the target platform. Please run ./configure for libxml2 and add the resulting config.h into this port.") +endif() add_library(libxml2 ${SOURCES}) if(INSTALL_HEADERS) + file(GLOB PUBLIC_HEADERS include/libxml/*.h) + list(FILTER PUBLIC_HEADERS EXCLUDE REGEX "xmlexports\\.h$") + list(APPEND PUBLIC_HEADERS ${CMAKE_CURRENT_BINARY_DIR}/xmlexports.h) + set_target_properties(libxml2 PROPERTIES PUBLIC_HEADER "${PUBLIC_HEADERS}") endif() -target_include_directories(libxml2 PRIVATE ${CMAKE_CURRENT_BINARY_DIR} win32/vc10 include ${LIBLZMA_INCLUDE_DIRS}) +target_include_directories(libxml2 PRIVATE ${CMAKE_CURRENT_BINARY_DIR} include ${LIBLZMA_INCLUDE_DIRS}) target_link_libraries(libxml2 PRIVATE + unofficial::iconv::libcharset unofficial::iconv::libiconv ZLIB::ZLIB ${LIBLZMA_LIBRARIES} ) -if(WIN32) +if(CMAKE_SYSTEM_NAME STREQUAL "Windows") + target_include_directories(libxml2 PRIVATE win32/vc10) target_link_libraries(libxml2 PRIVATE - ${ICONV} - ${ICONV_CHARSET} wsock32.lib ws2_32.lib ) diff --git a/ports/libxml2/CONTROL b/ports/libxml2/CONTROL index b8552e48e..f005d2367 100644 --- a/ports/libxml2/CONTROL +++ b/ports/libxml2/CONTROL @@ -1,4 +1,4 @@ Source: libxml2 -Version: 2.9.4-4 +Version: 2.9.4-5 Description: Libxml2 is the XML C parser and toolkit developed for the Gnome project (but usable outside of the Gnome platform) Build-Depends: zlib, libiconv, liblzma diff --git a/ports/libxml2/config.linux.h b/ports/libxml2/config.linux.h new file mode 100644 index 000000000..d029e95cf --- /dev/null +++ b/ports/libxml2/config.linux.h @@ -0,0 +1,56 @@ +#define GETHOSTBYNAME_ARG_CAST /**/ +#define HAVE_ANSIDECL_H 1 +#define HAVE_ARPA_INET_H 1 +#define HAVE_ARPA_NAMESER_H 1 +#define HAVE_CTYPE_H 1 +#define HAVE_DIRENT_H 1 +#define HAVE_DLFCN_H 1 +#define HAVE_DLOPEN /**/ +#define HAVE_ERRNO_H 1 +#define HAVE_FCNTL_H 1 +#define HAVE_FLOAT_H 1 +#define HAVE_FTIME 1 +#define HAVE_GETADDRINFO /**/ +#define HAVE_GETTIMEOFDAY 1 +#define HAVE_INTTYPES_H 1 +#define HAVE_ISASCII 1 +#define HAVE_LIMITS_H 1 +#define HAVE_LOCALTIME 1 +#define HAVE_LZMA_H 1 +#define HAVE_MALLOC_H 1 +#define HAVE_MATH_H 1 +#define HAVE_MMAP 1 +#define HAVE_NETDB_H 1 +#define HAVE_NETINET_IN_H 1 +#define HAVE_POLL_H 1 +#define HAVE_PTHREAD_H /**/ +#define HAVE_PUTENV 1 +#define HAVE_RAND 1 +#define HAVE_RAND_R 1 +#define HAVE_RESOLV_H 1 +#define HAVE_SIGNAL_H 1 +#define HAVE_SRAND 1 +#define HAVE_STAT 1 +#define HAVE_STDARG_H 1 +#define HAVE_STDINT_H 1 +#define HAVE_STDLIB_H 1 +#define HAVE_STRFTIME 1 +#define HAVE_STRINGS_H 1 +#define HAVE_STRING_H 1 +#define HAVE_SYS_MMAN_H 1 +#define HAVE_SYS_SELECT_H 1 +#define HAVE_SYS_SOCKET_H 1 +#define HAVE_SYS_STAT_H 1 +#define HAVE_SYS_TIMEB_H 1 +#define HAVE_SYS_TIME_H 1 +#define HAVE_SYS_TYPES_H 1 +#define HAVE_TIME 1 +#define HAVE_TIME_H 1 +#define HAVE_UNISTD_H 1 +#define HAVE_VA_COPY 1 +#define HAVE_ZLIB_H 1 +#define ICONV_CONST +#define SEND_ARG2_CAST /**/ +#define SUPPORT_IP6 /**/ +#define VA_LIST_IS_ARRAY 1 +#define XML_SOCKLEN_T socklen_t diff --git a/ports/libxml2/config.osx.h b/ports/libxml2/config.osx.h new file mode 100644 index 000000000..95d83edc1 --- /dev/null +++ b/ports/libxml2/config.osx.h @@ -0,0 +1,54 @@ +#define GETHOSTBYNAME_ARG_CAST /**/ +#define HAVE_ARPA_INET_H 1 +#define HAVE_ARPA_NAMESER_H 1 +#define HAVE_CTYPE_H 1 +#define HAVE_DIRENT_H 1 +#define HAVE_DLFCN_H 1 +#define HAVE_DLOPEN /**/ +#define HAVE_ERRNO_H 1 +#define HAVE_FCNTL_H 1 +#define HAVE_FLOAT_H 1 +#define HAVE_FTIME 1 +#define HAVE_GETADDRINFO /**/ +#define HAVE_GETTIMEOFDAY 1 +#define HAVE_INTTYPES_H 1 +#define HAVE_ISASCII 1 +#define HAVE_LIMITS_H 1 +#define HAVE_LOCALTIME 1 +#define HAVE_LZMA_H 1 +#define HAVE_MATH_H 1 +#define HAVE_MMAP 1 +#define HAVE_NETDB_H 1 +#define HAVE_NETINET_IN_H 1 +#define HAVE_POLL_H 1 +#define HAVE_PTHREAD_H /**/ +#define HAVE_PUTENV 1 +#define HAVE_RAND 1 +#define HAVE_RAND_R 1 +#define HAVE_RESOLV_H 1 +#define HAVE_SIGNAL_H 1 +#define HAVE_SRAND 1 +#define HAVE_STAT 1 +#define HAVE_STDARG_H 1 +#define HAVE_STDINT_H 1 +#define HAVE_STDLIB_H 1 +#define HAVE_STRFTIME 1 +#define HAVE_STRINGS_H 1 +#define HAVE_STRING_H 1 +#define HAVE_SYS_MMAN_H 1 +#define HAVE_SYS_SELECT_H 1 +#define HAVE_SYS_SOCKET_H 1 +#define HAVE_SYS_STAT_H 1 +#define HAVE_SYS_TIMEB_H 1 +#define HAVE_SYS_TIME_H 1 +#define HAVE_SYS_TYPES_H 1 +#define HAVE_TIME 1 +#define HAVE_TIME_H 1 +#define HAVE_UNISTD_H 1 +#define HAVE_VA_COPY 1 +#define HAVE_ZLIB_H 1 +#define ICONV_CONST +#define SEND_ARG2_CAST /**/ +#define SUPPORT_IP6 /**/ +#define VA_LIST_IS_ARRAY 1 +#define XML_SOCKLEN_T socklen_t diff --git a/ports/libxml2/portfile.cmake b/ports/libxml2/portfile.cmake index a300fcaf5..cdf10496e 100644 --- a/ports/libxml2/portfile.cmake +++ b/ports/libxml2/portfile.cmake @@ -12,6 +12,7 @@ file(COPY ${CMAKE_CURRENT_LIST_DIR}/CMakeLists.txt DESTINATION ${SOURCE_PATH}) vcpkg_configure_cmake( SOURCE_PATH ${SOURCE_PATH} PREFER_NINJA + OPTIONS -DPORT_DIR=${CMAKE_CURRENT_LIST_DIR} OPTIONS_DEBUG -DINSTALL_HEADERS=OFF ) diff --git a/ports/libxml2/vcpkg-cmake-wrapper.cmake b/ports/libxml2/vcpkg-cmake-wrapper.cmake index 6452af426..68bed6547 100644 --- a/ports/libxml2/vcpkg-cmake-wrapper.cmake +++ b/ports/libxml2/vcpkg-cmake-wrapper.cmake @@ -1,11 +1,13 @@ _find_package(${ARGS}) -if(LibXml2_FOUND AND (CMAKE_SYSTEM_NAME STREQUAL "Windows" OR CMAKE_SYSTEM_NAME STREQUAL "WindowsStore")) +if(LibXml2_FOUND) find_package(LibLZMA) - list(APPEND LIBXML2_LIBRARIES - ${LIBLZMA_LIBRARIES} - debug ${_VCPKG_INSTALLED_DIR}/${VCPKG_TARGET_TRIPLET}/debug/lib/libiconv.lib - optimized ${_VCPKG_INSTALLED_DIR}/${VCPKG_TARGET_TRIPLET}/lib/libiconv.lib - debug ${_VCPKG_INSTALLED_DIR}/${VCPKG_TARGET_TRIPLET}/debug/lib/libcharset.lib - optimized ${_VCPKG_INSTALLED_DIR}/${VCPKG_TARGET_TRIPLET}/lib/libcharset.lib - ws2_32) + list(APPEND LIBXML2_LIBRARIES ${LIBLZMA_LIBRARIES}) + if(CMAKE_SYSTEM_NAME STREQUAL "Windows" OR CMAKE_SYSTEM_NAME STREQUAL "WindowsStore") + list(APPEND LIBXML2_LIBRARIES + debug ${_VCPKG_INSTALLED_DIR}/${VCPKG_TARGET_TRIPLET}/debug/lib/libiconv.lib + optimized ${_VCPKG_INSTALLED_DIR}/${VCPKG_TARGET_TRIPLET}/lib/libiconv.lib + debug ${_VCPKG_INSTALLED_DIR}/${VCPKG_TARGET_TRIPLET}/debug/lib/libcharset.lib + optimized ${_VCPKG_INSTALLED_DIR}/${VCPKG_TARGET_TRIPLET}/lib/libcharset.lib + ws2_32) + endif() endif() -- cgit v1.2.3 From 3baf583934f3077070e9ed4e7684f743ecced577 Mon Sep 17 00:00:00 2001 From: Robert Schumacher Date: Tue, 3 Apr 2018 17:02:40 -0700 Subject: [openal-soft] Fix cmake 3.11 issue --- ports/openal-soft/cmake-3-11.patch | 14 ++++++++++++++ ports/openal-soft/portfile.cmake | 8 ++++++-- 2 files changed, 20 insertions(+), 2 deletions(-) create mode 100644 ports/openal-soft/cmake-3-11.patch diff --git a/ports/openal-soft/cmake-3-11.patch b/ports/openal-soft/cmake-3-11.patch new file mode 100644 index 000000000..07f7e6936 --- /dev/null +++ b/ports/openal-soft/cmake-3-11.patch @@ -0,0 +1,14 @@ +diff --git a/CMakeLists.txt b/CMakeLists.txt +index a871f4c..f9f6b34 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -965,7 +965,8 @@ OPTION(ALSOFT_REQUIRE_DSOUND "Require DirectSound backend" OFF) + OPTION(ALSOFT_REQUIRE_MMDEVAPI "Require MMDevApi backend" OFF) + IF(HAVE_WINDOWS_H) + # Check MMSystem backend +- CHECK_INCLUDE_FILES("windows.h;mmsystem.h" HAVE_MMSYSTEM_H -D_WIN32_WINNT=0x0502) ++ set(CMAKE_REQUIRED_DEFINITIONS -D_WIN32_WINNT=0x0502) ++ CHECK_INCLUDE_FILES("windows.h;mmsystem.h" HAVE_MMSYSTEM_H) + IF(HAVE_MMSYSTEM_H) + CHECK_SHARED_FUNCTION_EXISTS(waveOutOpen "windows.h;mmsystem.h" winmm "" HAVE_LIBWINMM) + IF(HAVE_LIBWINMM) diff --git a/ports/openal-soft/portfile.cmake b/ports/openal-soft/portfile.cmake index b1421f1f5..527b4ba60 100644 --- a/ports/openal-soft/portfile.cmake +++ b/ports/openal-soft/portfile.cmake @@ -11,8 +11,12 @@ vcpkg_from_github( HEAD_REF master ) -vcpkg_apply_patches(SOURCE_PATH ${SOURCE_PATH} - PATCHES ${CMAKE_CURRENT_LIST_DIR}/dont-export-symbols-in-static-build.patch) +vcpkg_apply_patches( + SOURCE_PATH ${SOURCE_PATH} + PATCHES + ${CMAKE_CURRENT_LIST_DIR}/dont-export-symbols-in-static-build.patch + ${CMAKE_CURRENT_LIST_DIR}/cmake-3-11.patch +) if(VCPKG_LIBRARY_LINKAGE STREQUAL "dynamic") set(OPENAL_LIBTYPE "SHARED") -- cgit v1.2.3 From e37137b5bab670f2776748b1c043c69f883c4dd5 Mon Sep 17 00:00:00 2001 From: RT222 Date: Fri, 6 Apr 2018 02:43:11 +0200 Subject: [sol] Update to version 2.19.5 --- ports/sol/CONTROL | 2 +- ports/sol/portfile.cmake | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/ports/sol/CONTROL b/ports/sol/CONTROL index f1bd57fa3..42b1be455 100644 --- a/ports/sol/CONTROL +++ b/ports/sol/CONTROL @@ -1,3 +1,3 @@ Source: sol -Version: 2.18.7 +Version: 2.19.5 Description: Sol v2.0 - a C++ <-> Lua API wrapper with advanced features and top notch performance - is here, and it's great diff --git a/ports/sol/portfile.cmake b/ports/sol/portfile.cmake index 83d59becc..c65202380 100644 --- a/ports/sol/portfile.cmake +++ b/ports/sol/portfile.cmake @@ -14,8 +14,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO ThePhD/sol2 - REF v2.18.7 - SHA512 747dbcba2da4e44bfb365c0fd0c8df916d0e5d0ddbaa9df514838d84a8fd4261c87db7d14d9683b708b874cd6a73586e7854d9a784743a737858b73acdd78f1c + REF v2.19.5 + SHA512 c004c2331e2eb0aae4467c10609f73879246c3ab5b7421e5b6fcb91b0c6595d999e5fd4c70b1859af1febb374631640d6727bf236a0cd176e40f631813e243a9 HEAD_REF develop ) -- cgit v1.2.3 From e80db08066638efca8ee661f8428bb5aa78dcff9 Mon Sep 17 00:00:00 2001 From: RT222 Date: Fri, 6 Apr 2018 02:43:49 +0200 Subject: [pugixml] Update to version 1.9 --- ports/pugixml/CONTROL | 2 +- ports/pugixml/portfile.cmake | 45 ++++++++++++++++++++++---------------------- 2 files changed, 24 insertions(+), 23 deletions(-) diff --git a/ports/pugixml/CONTROL b/ports/pugixml/CONTROL index eb1f4e634..5e2dad599 100644 --- a/ports/pugixml/CONTROL +++ b/ports/pugixml/CONTROL @@ -1,3 +1,3 @@ Source: pugixml -Version: 1.8.1-3 +Version: 1.9-1 Description: C++ XML processing library diff --git a/ports/pugixml/portfile.cmake b/ports/pugixml/portfile.cmake index 889063223..b0ec2cc58 100644 --- a/ports/pugixml/portfile.cmake +++ b/ports/pugixml/portfile.cmake @@ -1,32 +1,33 @@ +# 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 = +# VCPKG_TARGET_ARCHITECTURE = target architecture (x64, x86, arm) +# include(vcpkg_common_functions) -set(SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src/pugixml-1.8) -vcpkg_download_distfile(ARCHIVE - URLS "https://github.com/zeux/pugixml/releases/download/v1.8.1/pugixml-1.8.1.zip" - FILENAME "pugixml-1.8.1.zip" - SHA512 683fe224a9bcac032d78cb44d03915a3766d2faa588f3a8486b5719f26eeba3e17d447edf70e1907f51f8649ffb4607b6badd1365e4c15cf24279bf577dc853e + +vcpkg_from_github( + OUT_SOURCE_PATH SOURCE_PATH + REPO zeux/pugixml + REF v1.9 + SHA512 f97941941d98a1a056087edc0dde6376bf2cc12ce4523b67a2f2ec5ae0895c2a2e55da32fcca6a997f1a0d918c5f39564167da0a07ce0d7da92880ad8631c31e + HEAD_REF master ) -vcpkg_extract_source_archive(${ARCHIVE}) -if(VCPKG_LIBRARY_LINKAGE STREQUAL static) - vcpkg_configure_cmake( - SOURCE_PATH ${SOURCE_PATH} - ) -else() - vcpkg_apply_patches( - SOURCE_PATH ${SOURCE_PATH} - PATCHES - ${CMAKE_CURRENT_LIST_DIR}/pugixmlapi.patch - ) - vcpkg_configure_cmake( - SOURCE_PATH ${SOURCE_PATH} - OPTIONS - -DBUILD_DEFINES="PUGIXML_API=__declspec\(dllexport\)" - ) -endif() +vcpkg_configure_cmake( + SOURCE_PATH ${SOURCE_PATH} +) vcpkg_install_cmake() vcpkg_copy_pdbs() vcpkg_fixup_cmake_targets(CONFIG_PATH "lib/cmake/pugixml") file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include) + +# Handle copyright file(INSTALL ${SOURCE_PATH}/readme.txt DESTINATION ${CURRENT_PACKAGES_DIR}/share/pugixml RENAME copyright) -- cgit v1.2.3 From 497b8fc91cdfa514e86acdb4f2f516b73c1b760f Mon Sep 17 00:00:00 2001 From: Robert Schumacher Date: Thu, 5 Apr 2018 17:49:15 -0700 Subject: [shogun] Disable openblas in x86 to enable builds --- ports/shogun/CONTROL | 2 +- ports/shogun/portfile.cmake | 8 ++++++++ 2 files changed, 9 insertions(+), 1 deletion(-) diff --git a/ports/shogun/CONTROL b/ports/shogun/CONTROL index 6a05a331e..56b6250d6 100644 --- a/ports/shogun/CONTROL +++ b/ports/shogun/CONTROL @@ -1,4 +1,4 @@ Source: shogun Version: 6.1.3 -Build-Depends: bzip2, eigen3, liblzma, libxml2, openblas, nlopt, rxcpp, snappy, zlib, protobuf, curl, lzo, dirent +Build-Depends: bzip2, eigen3, liblzma, libxml2, openblas (x64), nlopt, rxcpp, snappy, zlib, protobuf, curl, lzo, dirent Description: Unified and efficient Machine Learning diff --git a/ports/shogun/portfile.cmake b/ports/shogun/portfile.cmake index 24e258539..94ed18797 100644 --- a/ports/shogun/portfile.cmake +++ b/ports/shogun/portfile.cmake @@ -22,10 +22,17 @@ file(REMOVE_RECURSE ${SOURCE_PATH}/cmake/external) file(MAKE_DIRECTORY ${SOURCE_PATH}/cmake/external) file(COPY ${CMAKE_CURRENT_LIST_DIR}/MSDirent.cmake DESTINATION ${SOURCE_PATH}/cmake/external) +if(VCPKG_TARGET_ARCHITECTURE STREQUAL "x64") + set(CMAKE_DISABLE_FIND_PACKAGE_BLAS 0) +else() + set(CMAKE_DISABLE_FIND_PACKAGE_BLAS 1) +endif() + vcpkg_configure_cmake( SOURCE_PATH ${SOURCE_PATH} PREFER_NINJA OPTIONS + --trace -DBUILD_META_EXAMPLES=OFF -DBUILD_EXAMPLES=OFF -DUSE_SVMLIGHT=OFF @@ -47,6 +54,7 @@ vcpkg_configure_cmake( -DCMAKE_DISABLE_FIND_PACKAGE_Ctags=TRUE -DCMAKE_DISABLE_FIND_PACKAGE_CCache=TRUE -DCMAKE_DISABLE_FIND_PACKAGE_Doxygen=TRUE + -DCMAKE_DISABLE_FIND_PACKAGE_BLAS=${CMAKE_DISABLE_FIND_PACKAGE_BLAS} -DINSTALL_TARGETS=shogun-static ) -- cgit v1.2.3 From 9ec84ff4b9c86c44b2f8a12a0fe707ce970ad6dc Mon Sep 17 00:00:00 2001 From: Robert Schumacher Date: Thu, 5 Apr 2018 17:49:37 -0700 Subject: [shogun] Remove --trace --- ports/shogun/portfile.cmake | 1 - 1 file changed, 1 deletion(-) diff --git a/ports/shogun/portfile.cmake b/ports/shogun/portfile.cmake index 94ed18797..4860c5f6b 100644 --- a/ports/shogun/portfile.cmake +++ b/ports/shogun/portfile.cmake @@ -32,7 +32,6 @@ vcpkg_configure_cmake( SOURCE_PATH ${SOURCE_PATH} PREFER_NINJA OPTIONS - --trace -DBUILD_META_EXAMPLES=OFF -DBUILD_EXAMPLES=OFF -DUSE_SVMLIGHT=OFF -- cgit v1.2.3 From d953c7869d5a7feac938aef14bcb5ceb8cd4b175 Mon Sep 17 00:00:00 2001 From: Robert Schumacher Date: Thu, 5 Apr 2018 15:14:37 -0700 Subject: [asio] Avoid boost dependency by always specifying ASIO_STANDALONE --- ports/asio/CONTROL | 3 +-- ports/asio/portfile.cmake | 5 +++++ 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/ports/asio/CONTROL b/ports/asio/CONTROL index cd9914052..ec8ab41a8 100644 --- a/ports/asio/CONTROL +++ b/ports/asio/CONTROL @@ -1,4 +1,3 @@ Source: asio -Version: 1.12.0-1 -Build-Depends: boost-config, boost-throw-exception, boost-utility, boost-date-time +Version: 1.12.0-2 Description: Asio is a cross-platform C++ library for network and low-level I/O programming that provides developers with a consistent asynchronous model using a modern C++ approach. diff --git a/ports/asio/portfile.cmake b/ports/asio/portfile.cmake index f6980f14e..284e25300 100644 --- a/ports/asio/portfile.cmake +++ b/ports/asio/portfile.cmake @@ -15,3 +15,8 @@ file(RENAME ${CURRENT_PACKAGES_DIR}/share/${PORT}/COPYING ${CURRENT_PACKAGES_DIR # Copy the asio header files file(INSTALL ${SOURCE_PATH}/asio/include DESTINATION ${CURRENT_PACKAGES_DIR} FILES_MATCHING PATTERN "*.hpp" PATTERN "*.ipp") + +# Always use "ASIO_STANDALONE" to avoid boost dependency +file(READ "${CURRENT_PACKAGES_DIR}/include/asio/detail/config.hpp" _contents) +string(REPLACE "defined(ASIO_STANDALONE)" "!defined(VCPKG_DISABLE_ASIO_STANDALONE)" _contents "${_contents}") +file(WRITE "${CURRENT_PACKAGES_DIR}/include/asio/detail/config.hpp" "${_contents}") -- cgit v1.2.3 From be4f6f3ffc91795c0ae6d5641d370277c447408a Mon Sep 17 00:00:00 2001 From: RT222 Date: Fri, 6 Apr 2018 02:57:39 +0200 Subject: Delete pugixmlapi.patch --- ports/pugixml/pugixmlapi.patch | 13 ------------- 1 file changed, 13 deletions(-) delete mode 100644 ports/pugixml/pugixmlapi.patch diff --git a/ports/pugixml/pugixmlapi.patch b/ports/pugixml/pugixmlapi.patch deleted file mode 100644 index 177664dbe..000000000 --- a/ports/pugixml/pugixmlapi.patch +++ /dev/null @@ -1,13 +0,0 @@ -diff --git a/src/pugixml.hpp b/src/pugixml.hpp -index 4d76bfa..75a4f8a 100644 ---- a/src/pugixml.hpp -+++ b/src/pugixml.hpp -@@ -50,7 +50,7 @@ - - // If no API is defined, assume default - #ifndef PUGIXML_API --# define PUGIXML_API -+# define PUGIXML_API __declspec(dllimport) - #endif - - // If no API for classes is defined, assume default -- cgit v1.2.3 From 708f7c66c840662acb9d7d484ea06aa5cd2e65b5 Mon Sep 17 00:00:00 2001 From: RT222 Date: Fri, 6 Apr 2018 03:08:01 +0200 Subject: [icu] Update to version 61.1 --- ports/icu/CONTROL | 2 +- ports/icu/portfile.cmake | 35 ++++++++++++++++++++++++++--------- 2 files changed, 27 insertions(+), 10 deletions(-) diff --git a/ports/icu/CONTROL b/ports/icu/CONTROL index 3553238f9..9d8320762 100644 --- a/ports/icu/CONTROL +++ b/ports/icu/CONTROL @@ -1,3 +1,3 @@ Source: icu -Version: 59.1-1 +Version: 61.1-1 Description: Mature and widely used Unicode and localization library. diff --git a/ports/icu/portfile.cmake b/ports/icu/portfile.cmake index dcf9efda5..afacc076c 100644 --- a/ports/icu/portfile.cmake +++ b/ports/icu/portfile.cmake @@ -1,15 +1,31 @@ +# 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 = +# VCPKG_TARGET_ARCHITECTURE = target architecture (x64, x86, arm) +# if (VCPKG_CMAKE_SYSTEM_NAME STREQUAL WindowsStore) message(FATAL_ERROR "Error: UWP builds are currently not supported.") endif() include(vcpkg_common_functions) -set(SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src/icu-59.1/icu) -set(ICU_VERSION 59) -vcpkg_download_distfile(ARCHIVE - URLS "http://download.icu-project.org/files/icu4c/59.1/icu4c-59_1-src.zip" - FILENAME "icu4c-59_1-src.zip" - SHA512 1d3b39678e7cc4e9794e724982886a4918642231048eb76b9f683aad5a19e0b7c52b3b9c7107cb1a3879464682c4a3a97b58ab012d082bd9e5a80c67adf8ce8b) -vcpkg_extract_source_archive(${ARCHIVE} ${CURRENT_BUILDTREES_DIR}/src/icu-59.1) +set(VERSION 61.1) +set(VERSION2 61_1) +set(ICU_VERSION_MAJOR 61) + +set(SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src/icu-${VERSION}/icu) +vcpkg_download_distfile( + ARCHIVE + URLS "http://download.icu-project.org/files/icu4c/${VERSION}/icu4c-${VERSION2}-src.zip" + FILENAME "icu4c-${VERSION2}-src.zip" + SHA512 60fed25976b8c2fe2df0b0ab745ded24da237711ec8c1e1dbdfe6eaf2014fb6b3a4bcaa488174cf770737a1c159a2d3f48a86a139cbb277163f064e607b8928f + ) +vcpkg_extract_source_archive(${ARCHIVE} ${CURRENT_BUILDTREES_DIR}/src/icu-${VERSION}) vcpkg_apply_patches(SOURCE_PATH ${SOURCE_PATH} PATCHES ${CMAKE_CURRENT_LIST_DIR}/disable-escapestr-tool.patch) @@ -109,8 +125,8 @@ file(REMOVE ${TEST_LIBS}) if(VCPKG_LIBRARY_LINKAGE STREQUAL dynamic) # copy icu dlls from lib to bin - file(GLOB RELEASE_DLLS ${CURRENT_PACKAGES_DIR}/lib/icu*${ICU_VERSION}.dll) - file(GLOB DEBUG_DLLS ${CURRENT_PACKAGES_DIR}/debug/lib/icu*d${ICU_VERSION}.dll) + file(GLOB RELEASE_DLLS ${CURRENT_PACKAGES_DIR}/lib/icu*${ICU_VERSION_MAJOR}.dll) + file(GLOB DEBUG_DLLS ${CURRENT_PACKAGES_DIR}/debug/lib/icu*d${ICU_VERSION_MAJOR}.dll) file(COPY ${RELEASE_DLLS} DESTINATION ${CURRENT_PACKAGES_DIR}/bin) file(COPY ${DEBUG_DLLS} DESTINATION ${CURRENT_PACKAGES_DIR}/debug/bin) else() @@ -139,5 +155,6 @@ endif() # This is expected because ICU database contains no executable code vcpkg_copy_pdbs() +# Handle copyright file(COPY ${SOURCE_PATH}/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/icu) file(RENAME ${CURRENT_PACKAGES_DIR}/share/icu/LICENSE ${CURRENT_PACKAGES_DIR}/share/icu/copyright) -- cgit v1.2.3 From 47ee755807d1e5af114465c54afa865668d075fc Mon Sep 17 00:00:00 2001 From: Robert Schumacher Date: Thu, 5 Apr 2018 21:25:55 -0700 Subject: [tbb] Use exact hash to avoid tag changes --- ports/tbb/portfile.cmake | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/ports/tbb/portfile.cmake b/ports/tbb/portfile.cmake index f74d096de..4a0b80ec4 100644 --- a/ports/tbb/portfile.cmake +++ b/ports/tbb/portfile.cmake @@ -10,8 +10,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO 01org/tbb - REF 2018_U3 - SHA512 e92a2aabcdd456c1676eb9ce20653908a867ea18ff118f5f039823f5a10a0da3de61d0044774ad38b137e636fa8602af009dfeb59c84005fe90c6206aa3306ab + REF 633b01ad27e012e1dc4e392c3230250d1f4967a4 + SHA512 5576b5e1efa0c7938dc08a1a9503ea19234b20f6a742f3d13a8de19b47f5bdafa1bb855e4de022a4b096a429e66739599a198fdf687c167c659f7556235fa01f HEAD_REF tbb_2018) if(TRIPLET_SYSTEM_ARCH STREQUAL x86) -- cgit v1.2.3 From 35f5a0de5327efdea1e9aea7979a2c828daacc0d Mon Sep 17 00:00:00 2001 From: Robert Schumacher Date: Thu, 5 Apr 2018 21:39:47 -0700 Subject: [vcpkg-cmake-toolchain] Remove some hardcoded find_package helpers and guard all remaining ones --- scripts/buildsystems/vcpkg.cmake | 37 +++++-------------------------------- 1 file changed, 5 insertions(+), 32 deletions(-) diff --git a/scripts/buildsystems/vcpkg.cmake b/scripts/buildsystems/vcpkg.cmake index 0c32b22fb..a9f8190f7 100644 --- a/scripts/buildsystems/vcpkg.cmake +++ b/scripts/buildsystems/vcpkg.cmake @@ -187,7 +187,7 @@ macro(find_package name) unset(Boost_USE_STATIC_RUNTIME) set(Boost_COMPILER "-vc140") _find_package(${ARGV}) - elseif("${name}" STREQUAL "ICU") + elseif("${name}" STREQUAL "ICU" AND EXISTS "${_VCPKG_INSTALLED_DIR}/${VCPKG_TARGET_TRIPLET}/include/unicode/utf.h") function(_vcpkg_find_in_list) list(FIND ARGV "COMPONENTS" COMPONENTS_IDX) set(COMPONENTS_IDX ${COMPONENTS_IDX} PARENT_SCOPE) @@ -198,7 +198,7 @@ macro(find_package name) else() _find_package(${ARGV}) endif() - elseif("${name}" STREQUAL "TIFF") + elseif("${name}" STREQUAL "TIFF" AND EXISTS "${_VCPKG_INSTALLED_DIR}/${VCPKG_TARGET_TRIPLET}/include/tiff.h") _find_package(${ARGV}) find_package(LibLZMA) if(TARGET TIFF::TIFF) @@ -207,24 +207,7 @@ macro(find_package name) if(TIFF_LIBRARIES) list(APPEND TIFF_LIBRARIES ${LIBLZMA_LIBRARIES}) endif() - elseif("${name}" STREQUAL "Freetype") - _find_package(${ARGV}) - find_package(ZLIB) - find_package(PNG) - find_package(BZip2) - if(TARGET Freetype::Freetype) - set_property(TARGET Freetype::Freetype APPEND PROPERTY INTERFACE_LINK_LIBRARIES BZip2::BZip2 PNG::PNG ZLIB::ZLIB) - endif() - if(FREETYPE_LIBRARIES) - list(APPEND FREETYPE_LIBRARIES ${BZIP2_LIBRARIES} ${PNG_LIBRARIES} ${ZLIB_LIBRARIES}) - endif() - elseif("${name}" STREQUAL "tinyxml2") - _find_package(${ARGV}) - if(TARGET tinyxml2_static AND NOT TARGET tinyxml2) - _add_library(tinyxml2 INTERFACE IMPORTED) - set_target_properties(tinyxml2 PROPERTIES INTERFACE_LINK_LIBRARIES "tinyxml2_static") - endif() - elseif(("${name}" STREQUAL "HDF5" OR "${name}" STREQUAL "hdf5") AND NOT PROJECT_NAME STREQUAL "VTK") + elseif(("${name}" STREQUAL "HDF5" OR "${name}" STREQUAL "hdf5") AND NOT PROJECT_NAME STREQUAL "VTK" AND EXISTS "${_VCPKG_INSTALLED_DIR}/${VCPKG_TARGET_TRIPLET}/include/hdf5.h") # This is a hack to make VTK work. TODO: find another way to suppress the built-in find module. _find_package(${ARGV} CONFIG) # Fill in missing static/shared targets @@ -237,7 +220,7 @@ macro(find_package name) set_target_properties(hdf5::${HDF5TARGET}-static PROPERTIES INTERFACE_LINK_LIBRARIES "hdf5::${HDF5TARGET}-shared") endif() endforeach() - elseif("${name}" STREQUAL "GSL") + elseif("${name}" STREQUAL "GSL" AND EXISTS "${_VCPKG_INSTALLED_DIR}/${VCPKG_TARGET_TRIPLET}/include/gsl") _find_package(${ARGV}) if(GSL_FOUND AND TARGET GSL::gsl) set_property( TARGET GSL::gslcblas APPEND PROPERTY IMPORTED_CONFIGURATIONS Release ) @@ -249,7 +232,7 @@ macro(find_package name) set_target_properties( GSL::gslcblas PROPERTIES IMPORTED_LOCATION_DEBUG "${GSL_CBLAS_LIBRARY_DEBUG}" ) endif() endif() - elseif("${name}" STREQUAL "CURL") + elseif("${name}" STREQUAL "CURL" AND EXISTS "${_VCPKG_INSTALLED_DIR}/${VCPKG_TARGET_TRIPLET}/include/curl") _find_package(${ARGV}) if(CURL_FOUND) if(EXISTS "${_VCPKG_INSTALLED_DIR}/${VCPKG_TARGET_TRIPLET}/lib/nghttp2.lib") @@ -258,16 +241,6 @@ macro(find_package name) "optimized" "${_VCPKG_INSTALLED_DIR}/${VCPKG_TARGET_TRIPLET}/lib/nghttp2.lib") endif() endif() - elseif("${name}" STREQUAL "LibXml2") - _find_package(${ARGV}) - if(LibXml2_FOUND AND (CMAKE_SYSTEM_NAME STREQUAL "Windows" OR CMAKE_SYSTEM_NAME STREQUAL "WindowsStore")) - list(APPEND LIBXML2_LIBRARIES - debug ${_VCPKG_INSTALLED_DIR}/${VCPKG_TARGET_TRIPLET}/debug/lib/libiconv.lib - optimized ${_VCPKG_INSTALLED_DIR}/${VCPKG_TARGET_TRIPLET}/lib/libiconv.lib - debug ${_VCPKG_INSTALLED_DIR}/${VCPKG_TARGET_TRIPLET}/debug/lib/libcharset.lib - optimized ${_VCPKG_INSTALLED_DIR}/${VCPKG_TARGET_TRIPLET}/lib/libcharset.lib - ws2_32) - endif() else() _find_package(${ARGV}) endif() -- cgit v1.2.3 From 09c9d1b75db3182c2d9fcfd6e0c73175eea652ce Mon Sep 17 00:00:00 2001 From: George Fotopoulos Date: Fri, 6 Apr 2018 07:43:26 +0300 Subject: [forest] Update to version 7.0.1 (#3208) * Update portfile.cmake * [forest] Update to version 7.0.1 * [forest] Use vcpkg_from_github --- ports/forest/CONTROL | 2 +- ports/forest/portfile.cmake | 15 +++++++-------- 2 files changed, 8 insertions(+), 9 deletions(-) diff --git a/ports/forest/CONTROL b/ports/forest/CONTROL index 522668d9d..e22089dab 100644 --- a/ports/forest/CONTROL +++ b/ports/forest/CONTROL @@ -1,3 +1,3 @@ Source: forest -Version: 4.5.0 +Version: 7.0.1 Description: Forest is an open-source, template library of tree data structures written in C++11. diff --git a/ports/forest/portfile.cmake b/ports/forest/portfile.cmake index 6f076a0db..78e85a5fe 100644 --- a/ports/forest/portfile.cmake +++ b/ports/forest/portfile.cmake @@ -1,13 +1,12 @@ -# Ηeader-only library - include(vcpkg_common_functions) -set(SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src/forest-4.5.0) -vcpkg_download_distfile(ARCHIVE - URLS "https://github.com/xorz57/forest/archive/4.5.0.zip" - FILENAME "forest-4.5.0.zip" - SHA512 ae256ad38802d0827cfcd45ffae35ddb95cf74e38cf3e5d806f6e2215f701abfb8159f82e2bb6362788fe96a9f9008429d366e7abbc7980b29b3528052cfe43e + +vcpkg_from_github( + OUT_SOURCE_PATH SOURCE_PATH + REPO xorz57/forest + REF 7.0.1 + SHA512 75f5f643ec20bab3298e5983f2ab1672dc304102059cf454341fe37495f1e18ac6a6fcce927b49f441a586ec788d4be44e1ceab8e1947565c2ab3ff519daded8 + HEAD_REF master ) -vcpkg_extract_source_archive(${ARCHIVE}) # Handle headers file(INSTALL ${SOURCE_PATH}/include DESTINATION ${CURRENT_PACKAGES_DIR} FILES_MATCHING PATTERN "*.h") -- cgit v1.2.3 From 2e354dd23357af7e0ec23798ee2448ee196a1eef Mon Sep 17 00:00:00 2001 From: Robert Schumacher Date: Thu, 5 Apr 2018 21:54:45 -0700 Subject: [shogun] Require python3 --- ports/shogun/portfile.cmake | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/ports/shogun/portfile.cmake b/ports/shogun/portfile.cmake index 4860c5f6b..e002ead4a 100644 --- a/ports/shogun/portfile.cmake +++ b/ports/shogun/portfile.cmake @@ -28,6 +28,10 @@ else() set(CMAKE_DISABLE_FIND_PACKAGE_BLAS 1) endif() +vcpkg_find_acquire_program(PYTHON3) +get_filename_component(PYTHON3_DIR "${PYTHON3}" DIRECTORY) +set(ENV{PATH} "$ENV{PATH};${PYTHON3_DIR}") + vcpkg_configure_cmake( SOURCE_PATH ${SOURCE_PATH} PREFER_NINJA -- cgit v1.2.3 From 89201f4aecdfefb2cc456b4f71e9dcf63c1d93c9 Mon Sep 17 00:00:00 2001 From: Robert Schumacher Date: Thu, 5 Apr 2018 15:28:05 -0700 Subject: [abseil][aws-sdk-cpp][azure-c-shared-utility][azure-iot-sdk-c][azure-uamqp-c][azure-umqtt-c][breakpad][exiv2][gdcm2][grpc][nuklear][rocksdb][rs-core-lib][thrift][zeromq] Upgrades --- ports/abseil/CONTROL | 2 +- ports/abseil/portfile.cmake | 4 ++-- ports/aws-sdk-cpp/CONTROL | 2 +- ports/aws-sdk-cpp/portfile.cmake | 4 ++-- ports/azure-c-shared-utility/CONTROL | 2 +- ports/azure-c-shared-utility/portfile.cmake | 4 ++-- ports/azure-iot-sdk-c/CONTROL | 2 +- ports/azure-iot-sdk-c/portfile.cmake | 4 ++-- ports/azure-uamqp-c/CONTROL | 2 +- ports/azure-uamqp-c/portfile.cmake | 4 ++-- ports/azure-umqtt-c/CONTROL | 2 +- ports/azure-umqtt-c/portfile.cmake | 4 ++-- ports/breakpad/CONTROL | 2 +- ports/breakpad/portfile.cmake | 4 ++-- ports/exiv2/CONTROL | 2 +- ports/exiv2/portfile.cmake | 4 ++-- ports/gdcm2/CONTROL | 2 +- ports/gdcm2/portfile.cmake | 4 ++-- ports/grpc/CONTROL | 2 +- ports/grpc/portfile.cmake | 4 ++-- ports/nuklear/CONTROL | 2 +- ports/nuklear/portfile.cmake | 4 ++-- ports/rocksdb/CONTROL | 2 +- ports/rocksdb/pass-major-version.patch | 20 ++++++++++++++++++++ ports/rocksdb/portfile.cmake | 10 ++++++---- ports/rs-core-lib/CONTROL | 2 +- ports/rs-core-lib/portfile.cmake | 4 ++-- ports/thrift/CONTROL | 2 +- ports/thrift/portfile.cmake | 4 ++-- ports/zeromq/CONTROL | 2 +- ports/zeromq/portfile.cmake | 6 ++++-- 31 files changed, 71 insertions(+), 47 deletions(-) create mode 100644 ports/rocksdb/pass-major-version.patch diff --git a/ports/abseil/CONTROL b/ports/abseil/CONTROL index b7ef25750..dddbdd2b2 100644 --- a/ports/abseil/CONTROL +++ b/ports/abseil/CONTROL @@ -1,5 +1,5 @@ Source: abseil -Version: 2018-04-02 +Version: 2018-04-05 Description: an open-source collection designed to augment the C++ standard library. Abseil is an open-source collection of C++ library code designed to augment the C++ standard library. The Abseil library code is collected from Google's own C++ code base, has been extensively tested and used in production, and is the same code we depend on in our daily coding lives. In some cases, Abseil provides pieces missing from the C++ standard; in others, Abseil provides alternatives to the standard for special needs we've found through usage in the Google code base. We denote those cases clearly within the library code we provide you. diff --git a/ports/abseil/portfile.cmake b/ports/abseil/portfile.cmake index 4ccdb27a6..8abf42dc4 100644 --- a/ports/abseil/portfile.cmake +++ b/ports/abseil/portfile.cmake @@ -7,8 +7,8 @@ endif() vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO abseil/abseil-cpp - REF 7b3c38a0628b9201ce92a6893b96890b64e5daa8 - SHA512 6e23d98adabbefcf8054a0ff03fdbc5438efbd957cd4864ab870496468f9891eeb8f73796a37faba7412a4b88b96771fc23f3f0bb89ab6023800beb99e6660d3 + REF abd0824ba64094e860803730c44d985334ad8770 + SHA512 2ba077b82a526612d8339d0f89cd82b57d510de2056ae12a07903ae39e536c2c0a8a7ccf37cf7228a372dd3e3db50a441afe76f448ce3483de86b49c495fcc06 HEAD_REF master ) diff --git a/ports/aws-sdk-cpp/CONTROL b/ports/aws-sdk-cpp/CONTROL index b4004cdc0..b6a7785f2 100644 --- a/ports/aws-sdk-cpp/CONTROL +++ b/ports/aws-sdk-cpp/CONTROL @@ -1,5 +1,5 @@ Source: aws-sdk-cpp -Version: 1.4.27 +Version: 1.4.30 Description: AWS SDK for C++ Default-Features: dynamodb, ec2, kms, rds, s3, sns, sqs # Automatically generated by generateFeatures.ps1 diff --git a/ports/aws-sdk-cpp/portfile.cmake b/ports/aws-sdk-cpp/portfile.cmake index 26129db5c..ac63ac850 100644 --- a/ports/aws-sdk-cpp/portfile.cmake +++ b/ports/aws-sdk-cpp/portfile.cmake @@ -3,8 +3,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO aws/aws-sdk-cpp - REF 1.4.27 - SHA512 d714fe12d3701461b897256d824b169ff3242bb412d386a2c1455c0dc1dcedf3add444eab556551fbb69e0339b49c3133c1f820710b5681d25a23237e919ddd0 + REF 1.4.30 + SHA512 309e700d1c351f6cb44036d3f2caf9c0fc8d96c7decdb403cff066c9927f1134a26dd50ba92af3b1b8c93a89e4bacf3a505cca3684136460e220df4309e467ba HEAD_REF master ) diff --git a/ports/azure-c-shared-utility/CONTROL b/ports/azure-c-shared-utility/CONTROL index 99cbcd38d..97d0a9a64 100644 --- a/ports/azure-c-shared-utility/CONTROL +++ b/ports/azure-c-shared-utility/CONTROL @@ -1,3 +1,3 @@ Source: azure-c-shared-utility -Version: 1.0.0-pre-release-1.0.9 +Version: 1.1.2 Description: Azure C SDKs common code diff --git a/ports/azure-c-shared-utility/portfile.cmake b/ports/azure-c-shared-utility/portfile.cmake index 4635f0d97..6aea93dad 100644 --- a/ports/azure-c-shared-utility/portfile.cmake +++ b/ports/azure-c-shared-utility/portfile.cmake @@ -8,8 +8,8 @@ endif() vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO Azure/azure-c-shared-utility - REF 1.0.0-pre-release-1.0.9 - SHA512 df28d0bb01961943d86febd7b54bafd7037b8461b4025e1db26ba0b76c4cadfa722c4cb5695ac0d4f57e16576eb23f3da02703bcc363af54a0476bccec95ce45 + REF 1.1.2 + SHA512 23c576efe0cc6c4a47d356f1e0be9e23d2b4e22692d35efa7d0d627a05fad245c55a81d26e60e1f7f7676d547a0e28c357846d2854b31f3f6ae7c39a934cf3d4 HEAD_REF master ) diff --git a/ports/azure-iot-sdk-c/CONTROL b/ports/azure-iot-sdk-c/CONTROL index 8c9bdb956..72ecadfca 100644 --- a/ports/azure-iot-sdk-c/CONTROL +++ b/ports/azure-iot-sdk-c/CONTROL @@ -1,4 +1,4 @@ Source: azure-iot-sdk-c -Version: 1.0.0-pre-release-1.0.9 +Version: 1.2.2 Build-Depends: azure-uamqp-c, azure-umqtt-c, azure-c-shared-utility, parson Description: A C99 SDK for connecting devices to Microsoft Azure IoT services diff --git a/ports/azure-iot-sdk-c/portfile.cmake b/ports/azure-iot-sdk-c/portfile.cmake index e4f0d8758..a1e864ab2 100644 --- a/ports/azure-iot-sdk-c/portfile.cmake +++ b/ports/azure-iot-sdk-c/portfile.cmake @@ -8,8 +8,8 @@ endif() vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO Azure/azure-iot-sdk-c - REF 1.0.0-pre-release-1.0.9 - SHA512 972b5da73399805963031dfacc436665c1a7aaecf4a0035af369d9cf184cb4e7be608b4ca5768902dcfb04f18324c399d095f6543ff3d1da835c40da6e18934e + REF 1.2.2 + SHA512 1542f8347e5efc3104eacf1696b84739299bedb4f50dce3869b3a53072b5c016aadf34223658c18fe28e87eab775a0687b5bf18b5629a7a87b8709b123b3599a HEAD_REF master ) diff --git a/ports/azure-uamqp-c/CONTROL b/ports/azure-uamqp-c/CONTROL index 03b4a2402..832675f10 100644 --- a/ports/azure-uamqp-c/CONTROL +++ b/ports/azure-uamqp-c/CONTROL @@ -1,4 +1,4 @@ Source: azure-uamqp-c -Version: 1.0.0-pre-release-1.0.9 +Version: 1.2.2 Build-Depends: azure-c-shared-utility Description: AMQP library for C diff --git a/ports/azure-uamqp-c/portfile.cmake b/ports/azure-uamqp-c/portfile.cmake index a4407963c..e912c30fd 100644 --- a/ports/azure-uamqp-c/portfile.cmake +++ b/ports/azure-uamqp-c/portfile.cmake @@ -8,8 +8,8 @@ endif() vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO Azure/azure-uamqp-c - REF 1.0.0-pre-release-1.0.9 - SHA512 8c7142e0f28779847501941effc8baa0d3411e76bec00a3af0a32f5e25c0ded200d1345fcea58d922d7b0e2b736bc2a57ecaaac23d4de7f97c75a22793cd3750 + REF 1.2.2 + SHA512 66d4169ecfa1f0bc37c1b61de34908703d1f2d49d5b6edf5aa0c208795117b614a3c0afbba95df3ffc5364f4fd45debe2c95ac7a5be86fbd42d997b4db2aaf9c HEAD_REF master ) diff --git a/ports/azure-umqtt-c/CONTROL b/ports/azure-umqtt-c/CONTROL index 79bd87b79..d8aff61a8 100644 --- a/ports/azure-umqtt-c/CONTROL +++ b/ports/azure-umqtt-c/CONTROL @@ -1,4 +1,4 @@ Source: azure-umqtt-c -Version: 1.0.0-pre-release-1.0.9 +Version: 1.1.2 Build-Depends: azure-c-shared-utility Description: General purpose library for communication over the mqtt protocol diff --git a/ports/azure-umqtt-c/portfile.cmake b/ports/azure-umqtt-c/portfile.cmake index 9a9002166..b66ab4f2e 100644 --- a/ports/azure-umqtt-c/portfile.cmake +++ b/ports/azure-umqtt-c/portfile.cmake @@ -8,8 +8,8 @@ endif() vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO Azure/azure-umqtt-c - REF 1.0.0-pre-release-1.0.9 - SHA512 8cabeb431e1b8db64551c0374e80157d9db39011f38db8d3a3dfb77ddf3d6ffed4d6ee0ab697a0af3ce93571fc8a83bb2f3efa52387afe301583151e75f55658 + REF 1.1.2 + SHA512 e99b1292d6acdefef43b13cb2ad5b5972ed9e65fb3b2b3eacf06486e88f65fdb1e119fd0cf7dadddb1b1dffaef1aa30edda68fa5dc8aa2b22bcdad2d56e1de63 HEAD_REF master ) diff --git a/ports/breakpad/CONTROL b/ports/breakpad/CONTROL index 76e76668b..80789a41d 100644 --- a/ports/breakpad/CONTROL +++ b/ports/breakpad/CONTROL @@ -1,4 +1,4 @@ Source: breakpad -Version: 2018-03-27 +Version: 2018-04-05 Build-Depends: libdisasm Description: a set of client and server components which implement a crash-reporting system. diff --git a/ports/breakpad/portfile.cmake b/ports/breakpad/portfile.cmake index 29cf87498..5030bb936 100644 --- a/ports/breakpad/portfile.cmake +++ b/ports/breakpad/portfile.cmake @@ -3,8 +3,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO google/breakpad - REF e93f852a3c316ad767381d5e5bc839eba5c6225b - SHA512 8139472f4f9ce01770cf2922a52cc63fa009cfff93db893d297f61a1b44198b10bba73c92977e84c18a90ef7e71f0911e4fe9d27e8978fc38f231e499e23fc4d + REF adcc90ddb8c9ebc13a4312116ad92d8628b691c3 + SHA512 f6dbdad54dcd778a2ece7de28b60b95c2c276d386f672ab5990c6de41f17fa526f6d1092e38163647ed2feed07c91826ec3f4c21a219ca5f5fac203a7a21eeec HEAD_REF master ) diff --git a/ports/exiv2/CONTROL b/ports/exiv2/CONTROL index 3e7d58c9a..b66823aa0 100644 --- a/ports/exiv2/CONTROL +++ b/ports/exiv2/CONTROL @@ -1,4 +1,4 @@ Source: exiv2 -Version: 2018-04-02 +Version: 2018-04-05 Build-Depends: zlib, expat, libiconv Description: Image metadata library and tools http://www.exiv2.org diff --git a/ports/exiv2/portfile.cmake b/ports/exiv2/portfile.cmake index 99a72304f..5423bfdd8 100644 --- a/ports/exiv2/portfile.cmake +++ b/ports/exiv2/portfile.cmake @@ -3,8 +3,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO Exiv2/exiv2 - REF 07d75cd0e833286ce9e301ea83229f3e283c6191 - SHA512 8cf5cb919c12e719d70f2ea71c84835f09f2962095eeb56bb27ef3cd22ad4ea032dfbf9704f9c7393de0a969d3ae0609dafeb619b6c28dca598c8f34a3810b4d + REF db5bb66d0697572eacaf0c2aa3b8e7ac2a0c4e54 + SHA512 afc82f79073ace4d567a9db4ee8991c013d12b2939930e12fe5adf0f7d398b87bce127689f3ca9b1c234cc1321ed3f6bee8335590958616a03af9de58e12c24b HEAD_REF master ) diff --git a/ports/gdcm2/CONTROL b/ports/gdcm2/CONTROL index 6268c788f..45900dbab 100644 --- a/ports/gdcm2/CONTROL +++ b/ports/gdcm2/CONTROL @@ -1,4 +1,4 @@ Source: gdcm2 -Version: 2.8.5 +Version: 2.8.6 Description: Grassroots DICOM library Build-Depends: zlib, expat diff --git a/ports/gdcm2/portfile.cmake b/ports/gdcm2/portfile.cmake index 7e8c89611..65fa7a6e1 100644 --- a/ports/gdcm2/portfile.cmake +++ b/ports/gdcm2/portfile.cmake @@ -14,8 +14,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO malaterre/GDCM - REF v2.8.5 - SHA512 644a7ad04746ffb36b7923796b967cc11fd3b71baede7722093d5785eaf869280c67a968f6b32aeb43cc7c88927fba78459e4846e058996a1634311311745510 + REF v2.8.6 + SHA512 c04c131afae6a326978d82ea7c6f42eaa5d8e0f9d9dc3b6ad531a2d6ef7261e603cef32f364609ae99ff33f144373fe7bdd62056e535b6d487b0a4b13919062e ) vcpkg_apply_patches( diff --git a/ports/grpc/CONTROL b/ports/grpc/CONTROL index 707c8cb8b..088d9336e 100644 --- a/ports/grpc/CONTROL +++ b/ports/grpc/CONTROL @@ -1,4 +1,4 @@ Source: grpc -Version: 1.10.0 +Version: 1.10.1 Build-Depends: zlib, openssl, protobuf, c-ares Description: An RPC library and framework diff --git a/ports/grpc/portfile.cmake b/ports/grpc/portfile.cmake index abab22925..f68f67e64 100644 --- a/ports/grpc/portfile.cmake +++ b/ports/grpc/portfile.cmake @@ -12,8 +12,8 @@ endif() vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO grpc/grpc - REF v1.10.0 - SHA512 52a3e2710fd51b92fb6345cddb9fd64a9b826bcb85dba86075b5e8465abf6dbc26a9245c9f79dd68b0c11a4fa3b983513091000991b61d77761b7debcdac3703 + REF v1.10.1 + SHA512 2221d902c60eada6dd1547a63d26bd3b30cb6710247b5e48523bacde498a3691cc177f1dbe9db8a007b8ae341a5b0c8ec999539e26a9bcff480a8d0b02140997 HEAD_REF master ) diff --git a/ports/nuklear/CONTROL b/ports/nuklear/CONTROL index 51aaf9ac2..dff07255c 100644 --- a/ports/nuklear/CONTROL +++ b/ports/nuklear/CONTROL @@ -1,3 +1,3 @@ Source: nuklear -Version: 2018-04-02 +Version: 2018-04-05 Description: This is a minimal state immediate mode graphical user interface toolkit written in ANSI C and licensed under public domain diff --git a/ports/nuklear/portfile.cmake b/ports/nuklear/portfile.cmake index 1e820cc07..9ab405ed0 100644 --- a/ports/nuklear/portfile.cmake +++ b/ports/nuklear/portfile.cmake @@ -2,8 +2,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO vurtun/nuklear - REF 60bd95c926f73b143ec91e66b2fe315ad2a316e1 - SHA512 45cf7c5cab105241aec6c2a56a34abf9701eded52bf06d3092e0079949757a6cbb0d684b45952a054451384cd07a77b1763526470ec84835da3d514c614c65ba + REF d374953d274131f9f295e5fdada9b9f83e208072 + SHA512 bc7d6f4d8ec8993450f415560a5f3b603f310416f54ff1f58b51554e9de7c1d8e8ed7552abfb3e51a2e711863e2e3b75169a3fd2ae7f4f79ae429797858a9faf HEAD_REF master ) file(INSTALL ${SOURCE_PATH}/nuklear.h DESTINATION ${CURRENT_PACKAGES_DIR}/include) diff --git a/ports/rocksdb/CONTROL b/ports/rocksdb/CONTROL index 6e3f6a4c5..852281924 100644 --- a/ports/rocksdb/CONTROL +++ b/ports/rocksdb/CONTROL @@ -1,5 +1,5 @@ Source: rocksdb -Version: 5.11.3-3 +Version: 5.12.2 Description: A library that provides an embeddable, persistent key-value store for fast storage Default-Features: zlib diff --git a/ports/rocksdb/pass-major-version.patch b/ports/rocksdb/pass-major-version.patch new file mode 100644 index 000000000..1cc3f2d13 --- /dev/null +++ b/ports/rocksdb/pass-major-version.patch @@ -0,0 +1,20 @@ +diff --git a/CMakeLists.txt b/CMakeLists.txt +index d6bfbf2..ea6a884 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -132,6 +132,7 @@ endif() + + string(REGEX REPLACE "[^0-9a-f]+" "" GIT_SHA "${GIT_SHA}") + ++if(NOT DEFINED ROCKSDB_VERSION OR NOT DEFINED ROCKSDB_VERSION_MAJOR) + set(SH_CMD "sh") + execute_process(COMMAND + ${SH_CMD} -c "build_tools/version.sh full" +@@ -145,6 +146,7 @@ execute_process(COMMAND + OUTPUT_VARIABLE ROCKSDB_VERSION_MAJOR + ) + string(STRIP "${ROCKSDB_VERSION_MAJOR}" ROCKSDB_VERSION_MAJOR) ++endif() + + option(WITH_MD_LIBRARY "build with MD" ON) + if(WIN32 AND MSVC) diff --git a/ports/rocksdb/portfile.cmake b/ports/rocksdb/portfile.cmake index 169573cf3..92ca0c2fa 100644 --- a/ports/rocksdb/portfile.cmake +++ b/ports/rocksdb/portfile.cmake @@ -3,8 +3,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO facebook/rocksdb - REF rocksdb-5.11.3 - SHA512 a4c771e36056ee0da497202b25092d89799db43573a442568b4392b8478ac20320dabf4c904e93bd0641a32f249e9c8dcad0d67577acaee6902cd4d30f29ce57 + REF v5.12.2 + SHA512 53e81e87e84f0500cd09d754c39e86265a16a52d4b84f9044f8d9759c224881eb7ef4bf89f9b01fdff25f123ed4dfa7b5cb272d2311f27b322c15fe2e893bbe3 HEAD_REF master ) @@ -14,6 +14,7 @@ vcpkg_apply_patches( "${CMAKE_CURRENT_LIST_DIR}/0002-disable-gtest.patch" "${CMAKE_CURRENT_LIST_DIR}/0003-only-build-one-flavor.patch" "${CMAKE_CURRENT_LIST_DIR}/use-find-package.patch" + "${CMAKE_CURRENT_LIST_DIR}/pass-major-version.patch" ) file(REMOVE "${SOURCE_PATH}/cmake/modules/Findzlib.cmake") @@ -48,7 +49,8 @@ if("zlib" IN_LIST FEATURES) endif() get_filename_component(ROCKSDB_VERSION "${SOURCE_PATH}" NAME) -string(REPLACE "rocksdb-rocksdb-" "" ROCKSDB_VERSION "${ROCKSDB_VERSION}") +string(REPLACE "rocksdb-" "" ROCKSDB_VERSION "${ROCKSDB_VERSION}") +string(REGEX REPLACE "^([0-9]+)." "\\1" ROCKSDB_MAJOR_VERSION "${ROCKSDB_VERSION}") vcpkg_configure_cmake( SOURCE_PATH ${SOURCE_PATH} @@ -67,7 +69,7 @@ vcpkg_configure_cmake( -DROCKSDB_DISABLE_INSTALL_SHARED_LIB=${ROCKSDB_DISABLE_INSTALL_SHARED_LIB} -DROCKSDB_DISABLE_INSTALL_STATIC_LIB=${ROCKSDB_DISABLE_INSTALL_STATIC_LIB} -DROCKSDB_VERSION=${ROCKSDB_VERSION} - -DCURRENT_INSTALLED_DIR=${CURRENT_INSTALLED_DIR} + -DROCKSDB_VERSION_MAJOR=${ROCKSDB_MAJOR_VERSION} -DCMAKE_DISABLE_FIND_PACKAGE_TBB=TRUE -DCMAKE_DISABLE_FIND_PACKAGE_NUMA=TRUE -DCMAKE_DISABLE_FIND_PACKAGE_gtest=TRUE diff --git a/ports/rs-core-lib/CONTROL b/ports/rs-core-lib/CONTROL index a6f837d0a..a26371439 100644 --- a/ports/rs-core-lib/CONTROL +++ b/ports/rs-core-lib/CONTROL @@ -1,4 +1,4 @@ Source: rs-core-lib -Version: 2018-03-29 +Version: 2018-04-05 Description: Minimal common utilities by Ross Smith diff --git a/ports/rs-core-lib/portfile.cmake b/ports/rs-core-lib/portfile.cmake index cca3be0a3..7392e5843 100644 --- a/ports/rs-core-lib/portfile.cmake +++ b/ports/rs-core-lib/portfile.cmake @@ -3,8 +3,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO CaptainCrowbar/rs-core-lib - REF 3300d39fef567adf90f59d07223e55ca44ed4f98 - SHA512 0e696a94ab71ca29c61075d917a26b01057f657537c5516cb3bf2fd046d5c61f7e74d83a7c2eba2d4d923f3bd8b125f61c6732d09ade59b0995f42eb3df22a17 + REF c49c44a14567719e927c942aec7d8e4971aad5bf + SHA512 17f5cb5d1c60fa832d32f65fce2a1fd00b108d5c1594240543bb6f889c8ddae6dbe83215b63ff15927921bcc9352348340e036c5118278867498216f63e9fef4 HEAD_REF master ) diff --git a/ports/thrift/CONTROL b/ports/thrift/CONTROL index da43bce3d..eec5fd732 100644 --- a/ports/thrift/CONTROL +++ b/ports/thrift/CONTROL @@ -1,4 +1,4 @@ Source: thrift -Version: 2018-04-02 +Version: 2018-04-05 Build-Depends: zlib, libevent, openssl, boost-range, boost-smart-ptr, boost-date-time, boost-locale, boost-scope-exit Description: Apache Thrift is a software project spanning a variety of programming languages and use cases. Our goal is to make reliable, performant communication and data serialization across languages as efficient and seamless as possible. Originally developed at Facebook, Thrift was open sourced in April 2007 and entered the Apache Incubator in May, 2008. Thrift became an Apache TLP in October, 2010. diff --git a/ports/thrift/portfile.cmake b/ports/thrift/portfile.cmake index 80a6f036d..4002a0cfd 100644 --- a/ports/thrift/portfile.cmake +++ b/ports/thrift/portfile.cmake @@ -15,8 +15,8 @@ vcpkg_find_acquire_program(BISON) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO apache/thrift - REF 3c0edfa875218bd83f6b79a7823380e2adc08ae6 - SHA512 8499ae6adf0db725f847f25f1c0b0ccf0abd8b142dd410a8a3c544dfd2fae8bdf1dec86e74eee3b4f78288f53ed5a162214d963513456d9b3be794e157c00a38 + REF a0cf38ed312a5342eb05574719485b725fa52eee + SHA512 518142e3b98ae79e622b3b5989c7754e4d6e32e1ffd1b39915932afdb40c0e1fa6ef1d182de6dfebcfc69a20eae9635f6ae8e8532b3a7e8acb5e7c3ee980c2b7 HEAD_REF master ) diff --git a/ports/zeromq/CONTROL b/ports/zeromq/CONTROL index a7f21a9b8..b333f7440 100644 --- a/ports/zeromq/CONTROL +++ b/ports/zeromq/CONTROL @@ -1,3 +1,3 @@ Source: zeromq -Version: 2018-03-29 +Version: 2018-04-05 Description: The ZeroMQ lightweight messaging kernel is a library which extends the standard socket interfaces with features traditionally provided by specialised messaging middleware products diff --git a/ports/zeromq/portfile.cmake b/ports/zeromq/portfile.cmake index 3220d8f3a..8019053f9 100644 --- a/ports/zeromq/portfile.cmake +++ b/ports/zeromq/portfile.cmake @@ -3,8 +3,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO zeromq/libzmq - REF 2aa54d662048f420ac0dbd5d9b46559963a675f2 - SHA512 48abea6fdac733ff7c2da7b3f45f129dc904d5d5a59f41f4f47419f5c2483a5227aec1a605d76422071045ea82c76ceb55a521bb80fe5d7f77d5d01c43acb3e6 + REF bb4fb32925c6465fd0f8e8cc89e5347bc79bc4bf + SHA512 73101b68d93fdf1eca1f83373fe4c946865978d32ca11692e9015a63af8d42ff2d2ff93c88c812f75c2d80596c986df59e62f8de3dc1a016ab24f91f518c24eb HEAD_REF master ) @@ -45,6 +45,8 @@ if(VCPKG_LIBRARY_LINKAGE STREQUAL "dynamic") else() string(REPLACE "get_target_property(ZeroMQ_LIBRARY libzmq LOCATION)" "add_library(libzmq INTERFACE IMPORTED)\nset_target_properties(libzmq PROPERTIES INTERFACE_LINK_LIBRARIES libzmq-static)" _contents "${_contents}") set(_contents "${_contents}\nset(ZeroMQ_LIBRARY \${ZeroMQ_STATIC_LIBRARY})\n") + + file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/bin ${CURRENT_PACKAGES_DIR}/debug/bin) endif() file(WRITE ${CURRENT_PACKAGES_DIR}/share/zeromq/ZeroMQConfig.cmake "${_contents}") -- cgit v1.2.3 From 997fddb3c1a3acb7579e1fe0ab82436b227a0dc4 Mon Sep 17 00:00:00 2001 From: Alexander Karatarakis Date: Thu, 5 Apr 2018 18:46:09 -0700 Subject: [aws-sdk-cpp] Fix linux --- ports/aws-sdk-cpp/CONTROL | 6 +++++- ports/aws-sdk-cpp/CONTROL.in | 3 ++- ports/aws-sdk-cpp/compute_build_only.cmake | 3 +++ ports/aws-sdk-cpp/portfile.cmake | 7 +++++-- 4 files changed, 15 insertions(+), 4 deletions(-) diff --git a/ports/aws-sdk-cpp/CONTROL b/ports/aws-sdk-cpp/CONTROL index b6a7785f2..2d6642faa 100644 --- a/ports/aws-sdk-cpp/CONTROL +++ b/ports/aws-sdk-cpp/CONTROL @@ -1,6 +1,7 @@ Source: aws-sdk-cpp -Version: 1.4.30 +Version: 1.4.30-1 Description: AWS SDK for C++ +Build-Depends: openssl (!uwp&!windows), curl (!uwp&!windows) Default-Features: dynamodb, ec2, kms, rds, s3, sns, sqs # Automatically generated by generateFeatures.ps1 @@ -103,6 +104,9 @@ Description: C++ SDK for the AWS comprehend service Feature: config Description: C++ SDK for the AWS config service +Feature: connect +Description: C++ SDK for the AWS connect service + Feature: cur Description: C++ SDK for the AWS cur service diff --git a/ports/aws-sdk-cpp/CONTROL.in b/ports/aws-sdk-cpp/CONTROL.in index 5cf05fdff..184374de6 100644 --- a/ports/aws-sdk-cpp/CONTROL.in +++ b/ports/aws-sdk-cpp/CONTROL.in @@ -1,4 +1,5 @@ Source: aws-sdk-cpp -Version: 1.4.21 +Version: 1.4.30-1 Description: AWS SDK for C++ +Build-Depends: openssl (!uwp&!windows), curl (!uwp&!windows) Default-Features: dynamodb, ec2, kms, rds, s3, sns, sqs diff --git a/ports/aws-sdk-cpp/compute_build_only.cmake b/ports/aws-sdk-cpp/compute_build_only.cmake index a50ed2128..f4a139153 100644 --- a/ports/aws-sdk-cpp/compute_build_only.cmake +++ b/ports/aws-sdk-cpp/compute_build_only.cmake @@ -98,6 +98,9 @@ endif() if("config" IN_LIST FEATURES) list(APPEND BUILD_ONLY config) endif() +if("connect" IN_LIST FEATURES) + list(APPEND BUILD_ONLY connect) +endif() if("cur" IN_LIST FEATURES) list(APPEND BUILD_ONLY cur) endif() diff --git a/ports/aws-sdk-cpp/portfile.cmake b/ports/aws-sdk-cpp/portfile.cmake index ac63ac850..6263b2b45 100644 --- a/ports/aws-sdk-cpp/portfile.cmake +++ b/ports/aws-sdk-cpp/portfile.cmake @@ -14,8 +14,11 @@ set(BUILD_ONLY core) include(${CMAKE_CURRENT_LIST_DIR}/compute_build_only.cmake) -# This handles escaping the list -string(REPLACE ";" "\\\\\\;" BUILD_ONLY "${BUILD_ONLY}") +if(CMAKE_HOST_WIN32) + string(REPLACE ";" "\\\\\\;" BUILD_ONLY "${BUILD_ONLY}") +else() + string(REPLACE ";" "\\\\\\\\\\\;" BUILD_ONLY "${BUILD_ONLY}") +endif() vcpkg_configure_cmake( SOURCE_PATH ${SOURCE_PATH} -- cgit v1.2.3 From 31377dee20dad9b95357934732996e2448f2eaf5 Mon Sep 17 00:00:00 2001 From: Alexander Karatarakis Date: Tue, 3 Apr 2018 21:05:31 -0700 Subject: Use 7z for extracting. Extract tools in downloads/tools --- scripts/VcpkgPowershellUtils.ps1 | 58 +++++++--------------------------------- scripts/fetchTool.ps1 | 22 ++++++++++++--- scripts/vcpkgTools.xml | 20 +++++++++----- toolsrc/src/vcpkg/vcpkgpaths.cpp | 8 +----- 4 files changed, 42 insertions(+), 66 deletions(-) diff --git a/scripts/VcpkgPowershellUtils.ps1 b/scripts/VcpkgPowershellUtils.ps1 index 92e0f21d0..988c6dbf0 100644 --- a/scripts/VcpkgPowershellUtils.ps1 +++ b/scripts/VcpkgPowershellUtils.ps1 @@ -1,8 +1,3 @@ -function vcpkgHasModule([Parameter(Mandatory=$true)][string]$moduleName) -{ - return [bool](Get-Module -ListAvailable -Name $moduleName) -} - function vcpkgHasProperty([Parameter(Mandatory=$true)][AllowNull()]$object, [Parameter(Mandatory=$true)]$propertyName) { if ($object -eq $null) @@ -160,54 +155,21 @@ function vcpkgDownloadFile( [Parameter(Mandatory=$true)][string]$url, Move-Item -Path $downloadPartPath -Destination $downloadPath } -function vcpkgExtractFile( [Parameter(Mandatory=$true)][string]$archivePath, - [Parameter(Mandatory=$true)][string]$destinationDir, - [Parameter(Mandatory=$true)][string]$outFilename) +function vcpkgExtractFile( [Parameter(Mandatory=$true)][string]$sevenZipExe, + [Parameter(Mandatory=$true)][string]$archivePath, + [Parameter(Mandatory=$true)][string]$destinationDir) { - vcpkgCreateDirectoryIfNotExists $destinationDir - $output = "$destinationDir\$outFilename" - vcpkgRemoveItem $output - $destinationPartial = "$destinationDir\partially-extracted" - + vcpkgRemoveItem $destinationDir + $destinationPartial = "$destinationDir.partial" vcpkgRemoveItem $destinationPartial vcpkgCreateDirectoryIfNotExists $destinationPartial - - if (vcpkgHasCommand -commandName 'Microsoft.PowerShell.Archive\Expand-Archive') - { - Write-Verbose("Extracting with Microsoft.PowerShell.Archive\Expand-Archive") - Microsoft.PowerShell.Archive\Expand-Archive -path $archivePath -destinationpath $destinationPartial - } - elseif (vcpkgHasCommand -commandName 'Pscx\Expand-Archive') - { - Write-Verbose("Extracting with Pscx\Expand-Archive") - Pscx\Expand-Archive -path $archivePath -OutputPath $destinationPartial - } - else - { - Write-Verbose("Extracting via shell") - $shell = new-object -com shell.application - $zip = $shell.NameSpace($(Get-Item $archivePath).fullname) - foreach($item in $zip.items()) - { - # Piping to Out-Null is used to block until finished - $shell.Namespace($destinationPartial).copyhere($item) | Out-Null - } - } - - $items = @(Get-ChildItem "$destinationPartial") - $itemCount = $items.Count - - if ($itemCount -eq 1) - { - $item = $items | Select-Object -first 1 - Write-Host "$item" - Move-Item -Path "$destinationPartial\$item" -Destination $output - vcpkgRemoveItem $destinationPartial - } - else + $ec = vcpkgInvokeCommand "$sevenZipExe" "x `"$archivePath`" -o`"$destinationPartial`" -y" + if ($ec -ne 0) { - Move-Item -Path "$destinationPartial" -Destination $output + Write-Host "Could not extract $archivePath" + throw } + Rename-Item -Path "$destinationPartial" -NewName $destinationDir } function vcpkgInvokeCommand() diff --git a/scripts/fetchTool.ps1 b/scripts/fetchTool.ps1 index 26eedac3b..315983841 100644 --- a/scripts/fetchTool.ps1 +++ b/scripts/fetchTool.ps1 @@ -25,7 +25,8 @@ function fetchToolInternal([Parameter(Mandatory=$true)][string]$tool) throw "Unkown tool $tool" } - $exePath = "$downloadsDir\$($toolData.exeRelativePath)" + $toolPath="$downloadsDir\tools\$tool-$($toolData.requiredVersion)-windows" + $exePath = "$toolPath\$($toolData.exeRelativePath)" if (Test-Path $exePath) { @@ -39,7 +40,7 @@ function fetchToolInternal([Parameter(Mandatory=$true)][string]$tool) } else { - $downloadPath = "$downloadsDir\$($toolData.exeRelativePath)" + $downloadPath = "$toolPath\$($toolData.exeRelativePath)" } [String]$url = $toolData.url @@ -56,9 +57,22 @@ function fetchToolInternal([Parameter(Mandatory=$true)][string]$tool) if ($isArchive) { - $outFilename = (Get-ChildItem $downloadPath).BaseName Write-Host "Extracting $tool..." - vcpkgExtractFile -ArchivePath $downloadPath -DestinationDir $downloadsDir -outFilename $outFilename + if ($tool -eq "7zip") + { + $sevenZipR = fetchToolInternal "7zr" + $ec = vcpkgInvokeCommand "$sevenZipR" "x `"$downloadPath`" -o`"$toolPath`" -y" + if ($ec -ne 0) + { + Write-Host "Could not extract $downloadPath" + throw + } + } + else + { + $sevenZipExe = fetchToolInternal "7zip" + vcpkgExtractFile -sevenZipExe "$sevenZipExe" -ArchivePath $downloadPath -DestinationDir $toolPath + } Write-Host "Extracting $tool... done." } diff --git a/scripts/vcpkgTools.xml b/scripts/vcpkgTools.xml index 477584c5a..6ef1e4d35 100644 --- a/scripts/vcpkgTools.xml +++ b/scripts/vcpkgTools.xml @@ -23,20 +23,20 @@ 2.16.2 - MinGit-2.16.2-32-bit\cmd\git.exe + cmd\git.exe https://github.com/git-for-windows/git/releases/download/v2.16.2.windows.1/MinGit-2.16.2-32-bit.zip 322c727e482aa97522c64a5ac68bdda3780111e8670bcfb532beac8e11ece5da MinGit-2.16.2-32-bit.zip 2.3.2 - vswhere-2.3.2\vswhere.exe + vswhere.exe https://github.com/Microsoft/vswhere/releases/download/2.3.2/vswhere.exe 103f2784c4b2c8e70c7c1c03687abbf22bce052aae30639406e4e13ffa29ee04 4.4.0 - nuget-4.4.0\nuget.exe + nuget.exe https://dist.nuget.org/win-x86-commandline/v4.4.0/nuget.exe 2cf9b118937eef825464e548f0c44f7f64090047746de295d75ac3dcffa3e1f6 @@ -49,10 +49,16 @@ 18.01.0 - 7za920\7za.exe - http://www.7-zip.org/a/7za920.zip - 2a3afe19c180f8373fa02ff00254d5394fec0349f5804e0ad2f6067854ff28ac - 7za920.zip + 7za.exe + https://www.7-zip.org/a/7z1801-extra.7z + 9371df22bcd0e1aff9eaa52aa3292350eecd011f11494e709314ae3f3eb279e2 + 7z1801-extra.7z + + + 18.01.0 + 7zr.exe + https://www.7-zip.org/a/7zr.exe + 2c7a8709260e0295a2a3cfd5a8ad0459f37490ed1794ea68bf85a6fab362553b 1.8.2 diff --git a/toolsrc/src/vcpkg/vcpkgpaths.cpp b/toolsrc/src/vcpkg/vcpkgpaths.cpp index bda2c4174..f2086257e 100644 --- a/toolsrc/src/vcpkg/vcpkgpaths.cpp +++ b/toolsrc/src/vcpkg/vcpkgpaths.cpp @@ -115,15 +115,9 @@ namespace vcpkg tool, required_version_as_string); -// Legacy support. Change introduced in vcpkg v0.0.107. -#if !defined(_WIN32) - const std::string tool_dir_name = Strings::format("%s-%s", tool, required_version_as_string); + const std::string tool_dir_name = Strings::format("%s-%s-%s", tool, required_version_as_string, OS_STRING); const fs::path tool_dir_path = paths.downloads / "tools" / tool_dir_name; const fs::path exe_path = tool_dir_path / exe_relative_path; -#else - const fs::path tool_dir_path; - const fs::path exe_path = paths.downloads / exe_relative_path; -#endif return ToolData{*required_version.get(), exe_path, url, -- cgit v1.2.3 From 54c68da907e4881d29e8017e085e6786e1c34ace Mon Sep 17 00:00:00 2001 From: Alexander Karatarakis Date: Tue, 3 Apr 2018 22:15:17 -0700 Subject: Use aria2 to do downloads (other than aria2 itself, 7za and 7zr) --- scripts/VcpkgPowershellUtils.ps1 | 26 ++++++++++++++++++++++++++ scripts/fetchTool.ps1 | 13 ++++++++++++- scripts/vcpkgTools.xml | 7 +++++++ 3 files changed, 45 insertions(+), 1 deletion(-) diff --git a/scripts/VcpkgPowershellUtils.ps1 b/scripts/VcpkgPowershellUtils.ps1 index 988c6dbf0..7082ca747 100644 --- a/scripts/VcpkgPowershellUtils.ps1 +++ b/scripts/VcpkgPowershellUtils.ps1 @@ -155,6 +155,32 @@ function vcpkgDownloadFile( [Parameter(Mandatory=$true)][string]$url, Move-Item -Path $downloadPartPath -Destination $downloadPath } +function vcpkgDownloadFileWithAria2( [Parameter(Mandatory=$true)][string]$aria2exe, + [Parameter(Mandatory=$true)][string]$url, + [Parameter(Mandatory=$true)][string]$downloadPath) +{ + if (Test-Path $downloadPath) + { + return + } + + vcpkgCreateParentDirectoryIfNotExists $downloadPath + $downloadPartPath = "$downloadPath.part" + vcpkgRemoveItem $downloadPartPath + + $parentDir = split-path -parent $downloadPath + $filename = split-path -leaf $downloadPath + + $ec = vcpkgInvokeCommand "$aria2exe" "--dir `"$parentDir`" --out `"$filename.part`" $url" + if ($ec -ne 0) + { + Write-Host "Could not download $url" + throw + } + + Move-Item -Path $downloadPartPath -Destination $downloadPath +} + function vcpkgExtractFile( [Parameter(Mandatory=$true)][string]$sevenZipExe, [Parameter(Mandatory=$true)][string]$archivePath, [Parameter(Mandatory=$true)][string]$destinationDir) diff --git a/scripts/fetchTool.ps1 b/scripts/fetchTool.ps1 index 315983841..05335c724 100644 --- a/scripts/fetchTool.ps1 +++ b/scripts/fetchTool.ps1 @@ -47,7 +47,18 @@ function fetchToolInternal([Parameter(Mandatory=$true)][string]$tool) if (!(Test-Path $downloadPath)) { Write-Host "Downloading $tool..." - vcpkgDownloadFile $url $downloadPath + + # aria2 needs 7zip & 7zr to extract. So, we need to download those trough powershell + if ($tool -eq "aria2" -or $tool -eq "7zip" -or $tool -eq "7zr") + { + vcpkgDownloadFile $url $downloadPath + } + else + { + $aria2exe = fetchToolInternal "aria2" + vcpkgDownloadFileWithAria2 $aria2exe $url $downloadPath + } + Write-Host "Downloading $tool... done." } diff --git a/scripts/vcpkgTools.xml b/scripts/vcpkgTools.xml index 6ef1e4d35..fe1cc12a9 100644 --- a/scripts/vcpkgTools.xml +++ b/scripts/vcpkgTools.xml @@ -60,6 +60,13 @@ https://www.7-zip.org/a/7zr.exe 2c7a8709260e0295a2a3cfd5a8ad0459f37490ed1794ea68bf85a6fab362553b + + 18.01.0 + aria2-1.33.1-win-32bit-build1\aria2c.exe + https://github.com/aria2/aria2/releases/download/release-1.33.1/aria2-1.33.1-win-32bit-build1.zip + 04bf07c0449c703db17fbcd586365aebba00201ca513ca4808b543f1f9208f1f + aria2-1.33.1-win-32bit-build1.zip + 1.8.2 ninja -- cgit v1.2.3 From 0c0f68939e0d8367e55793f80f0000f2a43a812a Mon Sep 17 00:00:00 2001 From: Alexander Karatarakis Date: Wed, 4 Apr 2018 01:45:45 -0700 Subject: Introduce "vcpkg fetch" --- toolsrc/include/vcpkg/commands.h | 7 + toolsrc/include/vcpkg/vcpkgpaths.h | 32 +- toolsrc/src/vcpkg/build.cpp | 15 +- toolsrc/src/vcpkg/commands.cpp | 9 +- toolsrc/src/vcpkg/commands.create.cpp | 2 +- toolsrc/src/vcpkg/commands.exportifw.cpp | 6 +- toolsrc/src/vcpkg/commands.fetch.cpp | 656 ++++++++++++++++++++++++++++++ toolsrc/src/vcpkg/commands.integrate.cpp | 2 +- toolsrc/src/vcpkg/commands.portsdiff.cpp | 4 +- toolsrc/src/vcpkg/export.cpp | 4 +- toolsrc/src/vcpkg/vcpkgpaths.cpp | 654 +---------------------------- toolsrc/vcpkglib/vcpkglib.vcxproj | 1 + toolsrc/vcpkglib/vcpkglib.vcxproj.filters | 3 + 13 files changed, 714 insertions(+), 681 deletions(-) create mode 100644 toolsrc/src/vcpkg/commands.fetch.cpp diff --git a/toolsrc/include/vcpkg/commands.h b/toolsrc/include/vcpkg/commands.h index 7369b8206..f6f1de626 100644 --- a/toolsrc/include/vcpkg/commands.h +++ b/toolsrc/include/vcpkg/commands.h @@ -135,6 +135,13 @@ namespace vcpkg::Commands std::string get_file_hash(const VcpkgPaths& paths, fs::path const& path, std::string const& hash_type); } + namespace Fetch + { + std::vector find_toolset_instances(const VcpkgPaths& paths); + fs::path get_tool_path(const VcpkgPaths& paths, const std::string& tool); + void perform_and_exit(const VcpkgCmdArguments& args, const VcpkgPaths& paths); + } + template struct PackageNameAndFunction { diff --git a/toolsrc/include/vcpkg/vcpkgpaths.h b/toolsrc/include/vcpkg/vcpkgpaths.h index b3f24fb89..090414de3 100644 --- a/toolsrc/include/vcpkg/vcpkgpaths.h +++ b/toolsrc/include/vcpkg/vcpkgpaths.h @@ -7,8 +7,22 @@ #include #include +#include + namespace vcpkg { + namespace Tools + { + static const std::string SEVEN_ZIP = "7zip"; + static const std::string CMAKE = "cmake"; + static const std::string GIT = "git"; + static const std::string NINJA = "ninja"; + static const std::string NUGET = "nuget"; + static const std::string IFW_INSTALLER_BASE = "ifw_installerbase"; + static const std::string IFW_BINARYCREATOR = "ifw_binarycreator"; + static const std::string IFW_REPOGEN = "ifw_repogen"; + } + struct ToolsetArchOption { CStringView name; @@ -63,14 +77,7 @@ namespace vcpkg fs::path ports_cmake; - const fs::path& get_7za_exe() const; - const fs::path& get_cmake_exe() const; - const fs::path& get_git_exe() const; - const fs::path& get_ninja_exe() const; - const fs::path& get_nuget_exe() const; - const fs::path& get_ifw_installerbase_exe() const; - const fs::path& get_ifw_binarycreator_exe() const; - const fs::path& get_ifw_repogen_exe() const; + const fs::path& get_tool_exe(const std::string& tool) const; /// Retrieve a toolset matching a VS version /// @@ -82,14 +89,7 @@ namespace vcpkg private: Lazy> available_triplets; - Lazy _7za_exe; - Lazy cmake_exe; - Lazy git_exe; - Lazy ninja_exe; - Lazy nuget_exe; - Lazy ifw_installerbase_exe; - Lazy ifw_binarycreator_exe; - Lazy ifw_repogen_exe; + mutable std::map tool_paths; Lazy> toolsets; Lazy> toolsets_vs2013; diff --git a/toolsrc/src/vcpkg/build.cpp b/toolsrc/src/vcpkg/build.cpp index 79a55bd36..86d171534 100644 --- a/toolsrc/src/vcpkg/build.cpp +++ b/toolsrc/src/vcpkg/build.cpp @@ -341,8 +341,8 @@ namespace vcpkg::Build vcpkg::Util::unused(paths.get_ninja_exe()); #endif - const fs::path& cmake_exe_path = paths.get_cmake_exe(); - const fs::path& git_exe_path = paths.get_git_exe(); + const fs::path& cmake_exe_path = paths.get_tool_exe(Tools::CMAKE); + const fs::path& git_exe_path = paths.get_tool_exe(Tools::GIT); std::string all_features; for (auto& feature : config.scf.feature_paragraphs) @@ -361,9 +361,8 @@ namespace vcpkg::Build {"TARGET_TRIPLET", spec.triplet().canonical_name()}, {"VCPKG_PLATFORM_TOOLSET", toolset.version.c_str()}, {"VCPKG_USE_HEAD_VERSION", - Util::Enum::to_bool(config.build_package_options.use_head_version) ? "1" : "0"}, - {"_VCPKG_NO_DOWNLOADS", - !Util::Enum::to_bool(config.build_package_options.allow_downloads) ? "1" : "0"}, + Util::Enum::to_bool(config.build_package_options.use_head_version) ? "1" : "0"}, + {"_VCPKG_NO_DOWNLOADS", !Util::Enum::to_bool(config.build_package_options.allow_downloads) ? "1" : "0"}, {"_VCPKG_DOWNLOAD_TOOL", to_string(config.build_package_options.download_tool)}, {"GIT", git_exe_path}, {"FEATURES", Strings::join(";", config.feature_list)}, @@ -519,7 +518,7 @@ namespace vcpkg::Build Checks::check_exit(VCPKG_LINE_INFO, files.empty(), "unable to clear path: %s", pkg_path.u8string()); #if defined(_WIN32) - auto&& _7za = paths.get_7za_exe(); + auto&& _7za = paths.get_tool_exe(Tools::SEVEN_ZIP); System::cmd_execute_clean(Strings::format( R"("%s" x "%s" -o"%s" -y >nul)", _7za.u8string(), archive_path.u8string(), pkg_path.u8string())); @@ -539,7 +538,7 @@ namespace vcpkg::Build Checks::check_exit( VCPKG_LINE_INFO, !fs.exists(tmp_archive_path), "Could not remove file: %s", tmp_archive_path.u8string()); #if defined(_WIN32) - auto&& _7za = paths.get_7za_exe(); + auto&& _7za = paths.get_tool_exe(Tools::SEVEN_ZIP); System::cmd_execute_clean(Strings::format( R"("%s" a "%s" "%s\*" >nul)", @@ -771,7 +770,7 @@ namespace vcpkg::Build { static constexpr CStringView FLAG_GUID = "c35112b6-d1ba-415b-aa5d-81de856ef8eb"; - const fs::path& cmake_exe_path = paths.get_cmake_exe(); + const fs::path& cmake_exe_path = paths.get_tool_exe(Tools::CMAKE); const fs::path ports_cmake_script_path = paths.scripts / "get_triplet_environment.cmake"; const fs::path triplet_file_path = paths.triplets / (triplet.canonical_name() + ".cmake"); diff --git a/toolsrc/src/vcpkg/commands.cpp b/toolsrc/src/vcpkg/commands.cpp index d9c0e54cd..e98ff711a 100644 --- a/toolsrc/src/vcpkg/commands.cpp +++ b/toolsrc/src/vcpkg/commands.cpp @@ -43,16 +43,15 @@ namespace vcpkg::Commands {"portsdiff", &PortsDiff::perform_and_exit}, {"autocomplete", &Autocomplete::perform_and_exit}, {"hash", &Hash::perform_and_exit}, - }; + {"fetch", &Fetch::perform_and_exit}, + }; return t; } Span> get_available_commands_type_c() { - static std::vector> t = { - {"version", &Version::perform_and_exit}, - {"contact", &Contact::perform_and_exit} - }; + static std::vector> t = {{"version", &Version::perform_and_exit}, + {"contact", &Contact::perform_and_exit}}; return t; } } diff --git a/toolsrc/src/vcpkg/commands.create.cpp b/toolsrc/src/vcpkg/commands.create.cpp index 25c34cf09..60769c9ef 100644 --- a/toolsrc/src/vcpkg/commands.create.cpp +++ b/toolsrc/src/vcpkg/commands.create.cpp @@ -22,7 +22,7 @@ namespace vcpkg::Commands::Create const std::string port_name = args.command_arguments.at(0); const std::string url = args.command_arguments.at(1); - const fs::path& cmake_exe = paths.get_cmake_exe(); + const fs::path& cmake_exe = paths.get_tool_exe(Tools::CMAKE); std::vector cmake_args{{"CMD", "CREATE"}, {"PORT", port_name}, {"URL", url}}; diff --git a/toolsrc/src/vcpkg/commands.exportifw.cpp b/toolsrc/src/vcpkg/commands.exportifw.cpp index 58d9aa0be..ae106196a 100644 --- a/toolsrc/src/vcpkg/commands.exportifw.cpp +++ b/toolsrc/src/vcpkg/commands.exportifw.cpp @@ -291,7 +291,7 @@ namespace vcpkg::Export::IFW std::error_code ec; Files::Filesystem& fs = paths.get_filesystem(); - const fs::path& installerbase_exe = paths.get_ifw_installerbase_exe(); + const fs::path& installerbase_exe = paths.get_tool_exe(Tools::IFW_INSTALLER_BASE); fs::path tempmaintenancetool = ifw_packages_dir_path / "maintenance" / "data" / "tempmaintenancetool.exe"; fs.create_directories(tempmaintenancetool.parent_path(), ec); Checks::check_exit(VCPKG_LINE_INFO, @@ -335,7 +335,7 @@ namespace vcpkg::Export::IFW void do_repository(const std::string& export_id, const Options& ifw_options, const VcpkgPaths& paths) { - const fs::path& repogen_exe = paths.get_ifw_repogen_exe(); + const fs::path& repogen_exe = paths.get_tool_exe(Tools::IFW_REPOGEN); const fs::path packages_dir = get_packages_dir_path(export_id, ifw_options, paths); const fs::path repository_dir = get_repository_dir_path(export_id, ifw_options, paths); @@ -361,7 +361,7 @@ namespace vcpkg::Export::IFW void do_installer(const std::string& export_id, const Options& ifw_options, const VcpkgPaths& paths) { - const fs::path& binarycreator_exe = paths.get_ifw_binarycreator_exe(); + const fs::path& binarycreator_exe = paths.get_tool_exe(Tools::IFW_BINARYCREATOR); const fs::path config_file = get_config_file_path(export_id, ifw_options, paths); const fs::path packages_dir = get_packages_dir_path(export_id, ifw_options, paths); const fs::path repository_dir = get_repository_dir_path(export_id, ifw_options, paths); diff --git a/toolsrc/src/vcpkg/commands.fetch.cpp b/toolsrc/src/vcpkg/commands.fetch.cpp new file mode 100644 index 000000000..95c47e2db --- /dev/null +++ b/toolsrc/src/vcpkg/commands.fetch.cpp @@ -0,0 +1,656 @@ +#include "pch.h" + +#include +#include +#include +#include +#include +#include + +namespace vcpkg::Commands::Fetch +{ + static constexpr CStringView V_120 = "v120"; + static constexpr CStringView V_140 = "v140"; + static constexpr CStringView V_141 = "v141"; + + struct ToolData + { + std::array required_version; + fs::path exe_path; + std::string url; + fs::path downloaded_path; + fs::path tool_dir_path; + }; + + static Optional> parse_version_string(const std::string& version_as_string) + { + static const std::regex RE(R"###((\d+)\.(\d+)\.(\d+))###"); + + std::match_results match; + const auto found = std::regex_search(version_as_string, match, RE); + if (!found) + { + return {}; + } + + const int d1 = atoi(match[1].str().c_str()); + const int d2 = atoi(match[2].str().c_str()); + const int d3 = atoi(match[3].str().c_str()); + const std::array result = {d1, d2, d3}; + return result; + } + + static ToolData parse_tool_data_from_xml(const VcpkgPaths& paths, const std::string& tool) + { +#if defined(_WIN32) + static constexpr StringLiteral OS_STRING = "windows"; +#elif defined(__APPLE__) + static constexpr StringLiteral OS_STRING = "osx"; +#else // assume linux + static constexpr StringLiteral OS_STRING = "linux"; +#endif + + static const fs::path XML_PATH = paths.scripts / "vcpkgTools.xml"; + + const auto maybe_get_string_inside_tags = [](const std::string& input, + const std::regex& regex) -> Optional { + std::smatch match; + const bool has_match = std::regex_search(input.cbegin(), input.cend(), match, regex); + if (!has_match) return nullopt; + return match[1]; + }; + + const auto get_string_inside_tags = + [](const std::string& input, const std::regex& regex, const std::string& tag_name) -> std::string { + std::smatch match; + const bool has_match = std::regex_search(input.cbegin(), input.cend(), match, regex); + Checks::check_exit( + VCPKG_LINE_INFO, has_match, "Could not find tag <%s> in %s", tag_name, XML_PATH.generic_string()); + + return match[1]; + }; + + static const std::string XML = paths.get_filesystem().read_contents(XML_PATH).value_or_exit(VCPKG_LINE_INFO); + static const std::regex VERSION_REGEX{R"###(([\s\S]*?))###"}; + static const std::regex EXE_RELATIVE_PATH_REGEX{ + Strings::format(R"###(([\s\S]*?))###")}; + static const std::regex ARCHIVE_RELATIVE_PATH_REGEX{ + Strings::format(R"###(([\s\S]*?))###")}; + static const std::regex URL_REGEX{Strings::format(R"###(([\s\S]*?))###")}; + + std::regex tool_regex{ + Strings::format(R"###(([\s\S]*?)<\/tool>)###", tool, OS_STRING)}; + + std::smatch match_tool; + bool has_match_tool = std::regex_search(XML.cbegin(), XML.cend(), match_tool, tool_regex); + if (!has_match_tool && OS_STRING == "windows") // Legacy support. Change introduced in vcpkg v0.0.107. + { + tool_regex = Strings::format(R"###(([\s\S]*?)<\/tool>)###", tool); + has_match_tool = std::regex_search(XML.cbegin(), XML.cend(), match_tool, tool_regex); + } + Checks::check_exit(VCPKG_LINE_INFO, + has_match_tool, + "Could not find entry for tool [%s] in %s", + tool, + XML_PATH.generic_string()); + + const std::string tool_data_as_string = get_string_inside_tags(XML, tool_regex, tool); + + const std::string required_version_as_string = + get_string_inside_tags(tool_data_as_string, VERSION_REGEX, "requiredVersion"); + + const std::string url = get_string_inside_tags(tool_data_as_string, URL_REGEX, "url"); + + const std::string exe_relative_path = + get_string_inside_tags(tool_data_as_string, EXE_RELATIVE_PATH_REGEX, "exeRelativePath"); + + auto archive_relative_path = maybe_get_string_inside_tags(tool_data_as_string, ARCHIVE_RELATIVE_PATH_REGEX); + + const Optional> required_version = parse_version_string(required_version_as_string); + Checks::check_exit(VCPKG_LINE_INFO, + required_version.has_value(), + "Could not parse version for tool %s. Version string was: %s", + tool, + required_version_as_string); + + const std::string tool_dir_name = Strings::format("%s-%s-%s", tool, required_version_as_string, OS_STRING); + const fs::path tool_dir_path = paths.downloads / "tools" / tool_dir_name; + const fs::path exe_path = tool_dir_path / exe_relative_path; + return ToolData{*required_version.get(), + exe_path, + url, + paths.downloads / archive_relative_path.value_or(exe_relative_path), + tool_dir_path}; + } + + static bool exists_and_has_equal_or_greater_version(const std::string& version_cmd, + const std::array& expected_version) + { + const auto rc = System::cmd_execute_and_capture_output(Strings::format(R"(%s)", version_cmd)); + if (rc.exit_code != 0) + { + return false; + } + + const Optional> v = parse_version_string(rc.output); + if (!v.has_value()) + { + return false; + } + + const std::array actual_version = *v.get(); + return (actual_version[0] > expected_version[0] || + (actual_version[0] == expected_version[0] && actual_version[1] > expected_version[1]) || + (actual_version[0] == expected_version[0] && actual_version[1] == expected_version[1] && + actual_version[2] >= expected_version[2])); + } + + static Optional find_if_has_equal_or_greater_version(const std::vector& candidate_paths, + const std::string& version_check_arguments, + const std::array& expected_version) + { + auto it = Util::find_if(candidate_paths, [&](const fs::path& p) { + const std::string cmd = Strings::format(R"("%s" %s)", p.u8string(), version_check_arguments); + return exists_and_has_equal_or_greater_version(cmd, expected_version); + }); + + if (it != candidate_paths.cend()) + { + return std::move(*it); + } + + return nullopt; + } + + static std::vector keep_data_lines(const std::string& data_blob) + { + static const std::regex DATA_LINE_REGEX(R"(::(.+?)(?=::))"); + + std::vector data_lines; + + const std::sregex_iterator it(data_blob.cbegin(), data_blob.cend(), DATA_LINE_REGEX); + const std::sregex_iterator end; + for (std::sregex_iterator i = it; i != end; ++i) + { + const std::smatch match = *i; + data_lines.push_back(match[1].str()); + } + + return data_lines; + } + + static void extract_archive(const VcpkgPaths& paths, const fs::path& archive, const fs::path& to_path) + { + Files::Filesystem& fs = paths.get_filesystem(); + const fs::path to_path_partial = to_path.u8string() + ".partial"; + + std::error_code ec; + fs.remove_all(to_path_partial, ec); + fs.create_directories(to_path_partial, ec); + + const auto ext = archive.extension(); + if (ext == ".gz" && ext.extension() != ".tar") + { + const auto code = System::cmd_execute( + Strings::format(R"(cd '%s' && tar xzf '%s')", to_path_partial.u8string(), archive.u8string())); + Checks::check_exit(VCPKG_LINE_INFO, code == 0, "tar failed while extracting %s", archive.u8string()); + } + else if (ext == ".zip") + { + const auto code = System::cmd_execute( + Strings::format(R"(cd '%s' && unzip -qqo '%s')", to_path_partial.u8string(), archive.u8string())); + Checks::check_exit(VCPKG_LINE_INFO, code == 0, "unzip failed while extracting %s", archive.u8string()); + } + else + { + Checks::exit_with_message(VCPKG_LINE_INFO, "Unexpected archive extension: %s", ext.u8string()); + } + + fs.rename(to_path_partial, to_path); + } + + static fs::path fetch_tool(const VcpkgPaths& paths, const std::string& tool_name, const ToolData& tool_data) + { + const auto& fs = paths.get_filesystem(); + const fs::path& scripts_folder = paths.scripts; + const std::array& version = tool_data.required_version; + + const std::string version_as_string = Strings::format("%d.%d.%d", version[0], version[1], version[2]); + System::println("A suitable version of %s was not found (required v%s). Downloading portable %s v%s...", + tool_name, + version_as_string, + tool_name, + version_as_string); +#if defined(_WIN32) + const fs::path script = scripts_folder / "fetchtool.ps1"; + const std::string title = Strings::format( + "Fetching %s version %s (No sufficient installed version was found)", tool_name, version_as_string); + const System::PowershellParameter tool_param("tool", tool_name); + const std::string output = System::powershell_execute_and_capture_output(title, script, {tool_param}); + + const std::vector tool_path = keep_data_lines(output); + Checks::check_exit(VCPKG_LINE_INFO, tool_path.size() == 1, "Expected tool path, but got %s", output); + + const fs::path actual_downloaded_path = Strings::trim(std::string{tool_path.at(0)}); + const fs::path& expected_downloaded_path = tool_data.exe_path; + std::error_code ec; + const auto eq = fs::stdfs::equivalent(expected_downloaded_path, actual_downloaded_path, ec); + Checks::check_exit(VCPKG_LINE_INFO, + eq && !ec, + "Expected tool downloaded path to be %s, but was %s", + expected_downloaded_path.u8string(), + actual_downloaded_path.u8string()); + return actual_downloaded_path; +#else + if (!fs.exists(tool_data.downloaded_path)) + { + auto code = System::cmd_execute(Strings::format( + R"(curl -L '%s' --create-dirs --output '%s')", tool_data.url, tool_data.downloaded_path)); + Checks::check_exit(VCPKG_LINE_INFO, code == 0, "curl failed while downloading %s", tool_data.url); + } + + System::println("Extracting %s...", tool_name); + extract_archive(paths, tool_data.downloaded_path, tool_data.tool_dir_path); + System::println("Extracting %s... done.", tool_name); + + Checks::check_exit(VCPKG_LINE_INFO, + fs.exists(tool_data.exe_path), + "Expected %s to exist after extracting", + tool_data.exe_path); + + return tool_data.exe_path; +#endif + } + + static fs::path get_cmake_path(const VcpkgPaths& paths) + { + std::vector candidate_paths; +#if defined(_WIN32) || defined(__APPLE__) || defined(__linux__) + static const ToolData TOOL_DATA = parse_tool_data_from_xml(paths, "cmake"); + candidate_paths.push_back(TOOL_DATA.exe_path); +#else + static const ToolData TOOL_DATA = ToolData{{3, 5, 1}, ""}; +#endif + static const std::string VERSION_CHECK_ARGUMENTS = "--version"; + + const std::vector from_path = Files::find_from_PATH("cmake"); + candidate_paths.insert(candidate_paths.end(), from_path.cbegin(), from_path.cend()); + + const auto& program_files = System::get_program_files_platform_bitness(); + if (const auto pf = program_files.get()) candidate_paths.push_back(*pf / "CMake" / "bin" / "cmake.exe"); + const auto& program_files_32_bit = System::get_program_files_32_bit(); + if (const auto pf = program_files_32_bit.get()) candidate_paths.push_back(*pf / "CMake" / "bin" / "cmake.exe"); + + const Optional path = + find_if_has_equal_or_greater_version(candidate_paths, VERSION_CHECK_ARGUMENTS, TOOL_DATA.required_version); + if (const auto p = path.get()) + { + return *p; + } + + return fetch_tool(paths, "cmake", TOOL_DATA); + } + + static fs::path get_7za_path(const VcpkgPaths& paths) + { +#if defined(_WIN32) + static const ToolData TOOL_DATA = parse_tool_data_from_xml(paths, "7zip"); + if (!paths.get_filesystem().exists(TOOL_DATA.exe_path)) + { + return fetch_tool(paths, "7zip", TOOL_DATA); + } + return TOOL_DATA.exe_path; +#else + Checks::exit_with_message(VCPKG_LINE_INFO, "Cannot download 7zip for non-Windows platforms."); +#endif + } + + static fs::path get_ninja_path(const VcpkgPaths& paths) + { + static const ToolData TOOL_DATA = parse_tool_data_from_xml(paths, "ninja"); + + std::vector candidate_paths; + candidate_paths.push_back(TOOL_DATA.exe_path); + const std::vector from_path = Files::find_from_PATH("ninja"); + candidate_paths.insert(candidate_paths.end(), from_path.cbegin(), from_path.cend()); + + auto path = find_if_has_equal_or_greater_version(candidate_paths, "--version", TOOL_DATA.required_version); + if (const auto p = path.get()) + { + return *p; + } + + return fetch_tool(paths, "ninja", TOOL_DATA); + } + + static fs::path get_nuget_path(const VcpkgPaths& paths) + { + static const ToolData TOOL_DATA = parse_tool_data_from_xml(paths, "nuget"); + + std::vector candidate_paths; + candidate_paths.push_back(TOOL_DATA.exe_path); + const std::vector from_path = Files::find_from_PATH("nuget"); + candidate_paths.insert(candidate_paths.end(), from_path.cbegin(), from_path.cend()); + + auto path = find_if_has_equal_or_greater_version(candidate_paths, "", TOOL_DATA.required_version); + if (const auto p = path.get()) + { + return *p; + } + + return fetch_tool(paths, "nuget", TOOL_DATA); + } + + static fs::path get_git_path(const VcpkgPaths& paths) + { +#if defined(_WIN32) + static const ToolData TOOL_DATA = parse_tool_data_from_xml(paths, "git"); +#else + static const ToolData TOOL_DATA = ToolData{{2, 7, 4}, ""}; +#endif + static const std::string VERSION_CHECK_ARGUMENTS = "--version"; + + std::vector candidate_paths; +#if defined(_WIN32) + candidate_paths.push_back(TOOL_DATA.exe_path); +#endif + const std::vector from_path = Files::find_from_PATH("git"); + candidate_paths.insert(candidate_paths.end(), from_path.cbegin(), from_path.cend()); + + const auto& program_files = System::get_program_files_platform_bitness(); + if (const auto pf = program_files.get()) candidate_paths.push_back(*pf / "git" / "cmd" / "git.exe"); + const auto& program_files_32_bit = System::get_program_files_32_bit(); + if (const auto pf = program_files_32_bit.get()) candidate_paths.push_back(*pf / "git" / "cmd" / "git.exe"); + + const Optional path = + find_if_has_equal_or_greater_version(candidate_paths, VERSION_CHECK_ARGUMENTS, TOOL_DATA.required_version); + if (const auto p = path.get()) + { + return *p; + } + + return fetch_tool(paths, "git", TOOL_DATA); + } + + static fs::path get_ifw_installerbase_path(const VcpkgPaths& paths) + { + static const ToolData TOOL_DATA = parse_tool_data_from_xml(paths, "installerbase"); + + static const std::string VERSION_CHECK_ARGUMENTS = "--framework-version"; + + std::vector candidate_paths; + candidate_paths.push_back(TOOL_DATA.exe_path); + // TODO: Uncomment later + // const std::vector from_path = Files::find_from_PATH("installerbase"); + // candidate_paths.insert(candidate_paths.end(), from_path.cbegin(), from_path.cend()); + // candidate_paths.push_back(fs::path(System::get_environment_variable("HOMEDRIVE").value_or("C:")) / "Qt" / + // "Tools" / "QtInstallerFramework" / "3.1" / "bin" / "installerbase.exe"); + // candidate_paths.push_back(fs::path(System::get_environment_variable("HOMEDRIVE").value_or("C:")) / "Qt" / + // "QtIFW-3.1.0" / "bin" / "installerbase.exe"); + + const Optional path = + find_if_has_equal_or_greater_version(candidate_paths, VERSION_CHECK_ARGUMENTS, TOOL_DATA.required_version); + if (const auto p = path.get()) + { + return *p; + } + + return fetch_tool(paths, "installerbase", TOOL_DATA); + } + + struct VisualStudioInstance + { + fs::path root_path; + std::string version; + std::string release_type; + std::string preference_weight; // Mostly unused, just for verification that order is as intended + + std::string major_version() const { return version.substr(0, 2); } + }; + + static std::vector get_visual_studio_instances(const VcpkgPaths& paths) + { + const fs::path script = paths.scripts / "findVisualStudioInstallationInstances.ps1"; + const std::string output = + System::powershell_execute_and_capture_output("Detecting Visual Studio instances", script); + + const std::vector instances_as_strings = keep_data_lines(output); + Checks::check_exit(VCPKG_LINE_INFO, + !instances_as_strings.empty(), + "Could not detect any Visual Studio instances.\n" + "Powershell script:\n" + " %s\n" + "returned:\n" + "%s", + script.generic_string(), + output); + + std::vector instances; + for (const std::string& instance_as_string : instances_as_strings) + { + const std::vector split = Strings::split(instance_as_string, "::"); + Checks::check_exit(VCPKG_LINE_INFO, + split.size() == 4, + "Invalid Visual Studio instance format.\n" + "Expected: PreferenceWeight::ReleaseType::Version::PathToVisualStudio\n" + "Actual : %s\n", + instance_as_string); + instances.push_back({split.at(3), split.at(2), split.at(1), split.at(0)}); + } + + return instances; + } + + std::vector find_toolset_instances(const VcpkgPaths& paths) + { + using CPU = System::CPUArchitecture; + + const auto& fs = paths.get_filesystem(); + + // Note: this will contain a mix of vcvarsall.bat locations and dumpbin.exe locations. + std::vector paths_examined; + + std::vector found_toolsets; + std::vector excluded_toolsets; + + const std::vector vs_instances = get_visual_studio_instances(paths); + const bool v140_is_available = Util::find_if(vs_instances, [&](const VisualStudioInstance& vs_instance) { + return vs_instance.major_version() == "14"; + }) != vs_instances.cend(); + + for (const VisualStudioInstance& vs_instance : vs_instances) + { + const std::string major_version = vs_instance.major_version(); + if (major_version == "15") + { + const fs::path vc_dir = vs_instance.root_path / "VC"; + + // Skip any instances that do not have vcvarsall. + const fs::path vcvarsall_dir = vc_dir / "Auxiliary" / "Build"; + const fs::path vcvarsall_bat = vcvarsall_dir / "vcvarsall.bat"; + paths_examined.push_back(vcvarsall_bat); + if (!fs.exists(vcvarsall_bat)) continue; + + // Get all supported architectures + std::vector supported_architectures; + if (fs.exists(vcvarsall_dir / "vcvars32.bat")) + supported_architectures.push_back({"x86", CPU::X86, CPU::X86}); + if (fs.exists(vcvarsall_dir / "vcvars64.bat")) + supported_architectures.push_back({"amd64", CPU::X64, CPU::X64}); + if (fs.exists(vcvarsall_dir / "vcvarsx86_amd64.bat")) + supported_architectures.push_back({"x86_amd64", CPU::X86, CPU::X64}); + if (fs.exists(vcvarsall_dir / "vcvarsx86_arm.bat")) + supported_architectures.push_back({"x86_arm", CPU::X86, CPU::ARM}); + if (fs.exists(vcvarsall_dir / "vcvarsx86_arm64.bat")) + supported_architectures.push_back({"x86_arm64", CPU::X86, CPU::ARM64}); + if (fs.exists(vcvarsall_dir / "vcvarsamd64_x86.bat")) + supported_architectures.push_back({"amd64_x86", CPU::X64, CPU::X86}); + if (fs.exists(vcvarsall_dir / "vcvarsamd64_arm.bat")) + supported_architectures.push_back({"amd64_arm", CPU::X64, CPU::ARM}); + if (fs.exists(vcvarsall_dir / "vcvarsamd64_arm64.bat")) + supported_architectures.push_back({"amd64_arm64", CPU::X64, CPU::ARM64}); + + // Locate the "best" MSVC toolchain version + const fs::path msvc_path = vc_dir / "Tools" / "MSVC"; + std::vector msvc_subdirectories = fs.get_files_non_recursive(msvc_path); + Util::unstable_keep_if(msvc_subdirectories, + [&fs](const fs::path& path) { return fs.is_directory(path); }); + + // Sort them so that latest comes first + std::sort( + msvc_subdirectories.begin(), + msvc_subdirectories.end(), + [](const fs::path& left, const fs::path& right) { return left.filename() > right.filename(); }); + + for (const fs::path& subdir : msvc_subdirectories) + { + const fs::path dumpbin_path = subdir / "bin" / "HostX86" / "x86" / "dumpbin.exe"; + paths_examined.push_back(dumpbin_path); + if (fs.exists(dumpbin_path)) + { + const Toolset v141toolset = Toolset{ + vs_instance.root_path, dumpbin_path, vcvarsall_bat, {}, V_141, supported_architectures}; + + auto english_language_pack = dumpbin_path.parent_path() / "1033"; + + if (!fs.exists(english_language_pack)) + { + excluded_toolsets.push_back(v141toolset); + break; + } + + found_toolsets.push_back(v141toolset); + + if (v140_is_available) + { + const Toolset v140toolset = Toolset{vs_instance.root_path, + dumpbin_path, + vcvarsall_bat, + {"-vcvars_ver=14.0"}, + V_140, + supported_architectures}; + found_toolsets.push_back(v140toolset); + } + + break; + } + } + + continue; + } + + if (major_version == "14" || major_version == "12") + { + const fs::path vcvarsall_bat = vs_instance.root_path / "VC" / "vcvarsall.bat"; + + paths_examined.push_back(vcvarsall_bat); + if (fs.exists(vcvarsall_bat)) + { + const fs::path vs_dumpbin_exe = vs_instance.root_path / "VC" / "bin" / "dumpbin.exe"; + paths_examined.push_back(vs_dumpbin_exe); + + const fs::path vs_bin_dir = vcvarsall_bat.parent_path() / "bin"; + std::vector supported_architectures; + if (fs.exists(vs_bin_dir / "vcvars32.bat")) + supported_architectures.push_back({"x86", CPU::X86, CPU::X86}); + if (fs.exists(vs_bin_dir / "amd64\\vcvars64.bat")) + supported_architectures.push_back({"x64", CPU::X64, CPU::X64}); + if (fs.exists(vs_bin_dir / "x86_amd64\\vcvarsx86_amd64.bat")) + supported_architectures.push_back({"x86_amd64", CPU::X86, CPU::X64}); + if (fs.exists(vs_bin_dir / "x86_arm\\vcvarsx86_arm.bat")) + supported_architectures.push_back({"x86_arm", CPU::X86, CPU::ARM}); + if (fs.exists(vs_bin_dir / "amd64_x86\\vcvarsamd64_x86.bat")) + supported_architectures.push_back({"amd64_x86", CPU::X64, CPU::X86}); + if (fs.exists(vs_bin_dir / "amd64_arm\\vcvarsamd64_arm.bat")) + supported_architectures.push_back({"amd64_arm", CPU::X64, CPU::ARM}); + + if (fs.exists(vs_dumpbin_exe)) + { + const Toolset toolset = {vs_instance.root_path, + vs_dumpbin_exe, + vcvarsall_bat, + {}, + major_version == "14" ? V_140 : V_120, + supported_architectures}; + + auto english_language_pack = vs_dumpbin_exe.parent_path() / "1033"; + + if (!fs.exists(english_language_pack)) + { + excluded_toolsets.push_back(toolset); + break; + } + + found_toolsets.push_back(toolset); + } + } + } + } + + if (!excluded_toolsets.empty()) + { + System::println( + System::Color::warning, + "Warning: The following VS instances are excluded because the English language pack is unavailable."); + for (const Toolset& toolset : excluded_toolsets) + { + System::println(" %s", toolset.visual_studio_root_path.u8string()); + } + System::println(System::Color::warning, "Please install the English language pack."); + } + + if (found_toolsets.empty()) + { + System::println(System::Color::error, "Could not locate a complete toolset."); + System::println("The following paths were examined:"); + for (const fs::path& path : paths_examined) + { + System::println(" %s", path.u8string()); + } + Checks::exit_fail(VCPKG_LINE_INFO); + } + + return found_toolsets; + } + + fs::path get_tool_path(const VcpkgPaths& paths, const std::string& tool) + { + // First deal with specially handled tools. + // For these we may look in locations like Program Files, the PATH etc as well as the auto-downloaded location. + if (tool == Tools::SEVEN_ZIP) return get_7za_path(paths); + if (tool == Tools::CMAKE) return get_cmake_path(paths); + if (tool == Tools::GIT) return get_git_path(paths); + if (tool == Tools::NINJA) return get_ninja_path(paths); + if (tool == Tools::NUGET) return get_nuget_path(paths); + if (tool == Tools::IFW_INSTALLER_BASE) return get_ifw_installerbase_path(paths); + if (tool == Tools::IFW_BINARYCREATOR) + return get_ifw_installerbase_path(paths).parent_path() / "binarycreator.exe"; + if (tool == Tools::IFW_REPOGEN) return get_ifw_installerbase_path(paths).parent_path() / "repogen.exe"; + + // For other tools, we simply always auto-download them. + const ToolData tool_data = parse_tool_data_from_xml(paths, tool); + if (paths.get_filesystem().exists(tool_data.exe_path)) + { + return tool_data.exe_path; + } + return fetch_tool(paths, tool, tool_data); + } + + const CommandStructure COMMAND_STRUCTURE = { + Strings::format("The argument should be tool name\n%s", Help::create_example_string("fetch cmake")), + 1, + 1, + {}, + nullptr, + }; + + void perform_and_exit(const VcpkgCmdArguments& args, const VcpkgPaths& paths) + { + Util::unused(args.parse_arguments(COMMAND_STRUCTURE)); + + const std::string tool = args.command_arguments[0]; + const fs::path tool_path = get_tool_path(paths, tool); + System::println(tool_path.u8string()); + Checks::exit_success(VCPKG_LINE_INFO); + } +} diff --git a/toolsrc/src/vcpkg/commands.integrate.cpp b/toolsrc/src/vcpkg/commands.integrate.cpp index 36e4e56e7..d6ae27181 100644 --- a/toolsrc/src/vcpkg/commands.integrate.cpp +++ b/toolsrc/src/vcpkg/commands.integrate.cpp @@ -276,7 +276,7 @@ CMake projects should use: "-DCMAKE_TOOLCHAIN_FILE=%s")", { auto& fs = paths.get_filesystem(); - const fs::path& nuget_exe = paths.get_nuget_exe(); + const fs::path& nuget_exe = paths.get_tool_exe(Tools::NUGET); const fs::path& buildsystems_dir = paths.buildsystems; const fs::path tmp_dir = buildsystems_dir / "tmp"; diff --git a/toolsrc/src/vcpkg/commands.portsdiff.cpp b/toolsrc/src/vcpkg/commands.portsdiff.cpp index dba04ce5b..c6b02582f 100644 --- a/toolsrc/src/vcpkg/commands.portsdiff.cpp +++ b/toolsrc/src/vcpkg/commands.portsdiff.cpp @@ -79,7 +79,7 @@ namespace vcpkg::Commands::PortsDiff { std::error_code ec; auto& fs = paths.get_filesystem(); - const fs::path& git_exe = paths.get_git_exe(); + const fs::path& git_exe = paths.get_tool_exe(Tools::GIT); const fs::path dot_git_dir = paths.root / ".git"; const std::string ports_dir_name_as_string = paths.ports.filename().u8string(); const fs::path temp_checkout_path = @@ -130,7 +130,7 @@ namespace vcpkg::Commands::PortsDiff { args.parse_arguments(COMMAND_STRUCTURE); - const fs::path& git_exe = paths.get_git_exe(); + const fs::path& git_exe = paths.get_tool_exe(Tools::GIT); const std::string git_commit_id_for_previous_snapshot = args.command_arguments.at(0); const std::string git_commit_id_for_current_snapshot = diff --git a/toolsrc/src/vcpkg/export.cpp b/toolsrc/src/vcpkg/export.cpp index 16c84f99d..32151c791 100644 --- a/toolsrc/src/vcpkg/export.cpp +++ b/toolsrc/src/vcpkg/export.cpp @@ -123,7 +123,7 @@ namespace vcpkg::Export const fs::path& output_dir) { Files::Filesystem& fs = paths.get_filesystem(); - const fs::path& nuget_exe = paths.get_nuget_exe(); + const fs::path& nuget_exe = paths.get_tool_exe(Tools::NUGET); // This file will be placed in "build\native" in the nuget package. Therefore, go up two dirs. const std::string targets_redirect_content = @@ -189,7 +189,7 @@ namespace vcpkg::Export const fs::path& output_dir, const ArchiveFormat& format) { - const fs::path& cmake_exe = paths.get_cmake_exe(); + const fs::path& cmake_exe = paths.get_tool_exe(Tools::CMAKE); const std::string exported_dir_filename = raw_exported_dir.filename().u8string(); const std::string exported_archive_filename = diff --git a/toolsrc/src/vcpkg/vcpkgpaths.cpp b/toolsrc/src/vcpkg/vcpkgpaths.cpp index f2086257e..4f998d579 100644 --- a/toolsrc/src/vcpkg/vcpkgpaths.cpp +++ b/toolsrc/src/vcpkg/vcpkgpaths.cpp @@ -5,401 +5,13 @@ #include #include #include +#include #include #include #include namespace vcpkg { - static constexpr CStringView V_120 = "v120"; - static constexpr CStringView V_140 = "v140"; - static constexpr CStringView V_141 = "v141"; - - struct ToolData - { - std::array required_version; - fs::path exe_path; - std::string url; - fs::path downloaded_path; - fs::path tool_dir_path; - }; - - static Optional> parse_version_string(const std::string& version_as_string) - { - static const std::regex RE(R"###((\d+)\.(\d+)\.(\d+))###"); - - std::match_results match; - const auto found = std::regex_search(version_as_string, match, RE); - if (!found) - { - return {}; - } - - const int d1 = atoi(match[1].str().c_str()); - const int d2 = atoi(match[2].str().c_str()); - const int d3 = atoi(match[3].str().c_str()); - const std::array result = {d1, d2, d3}; - return result; - } - - static ToolData parse_tool_data_from_xml(const VcpkgPaths& paths, const std::string& tool) - { -#if defined(_WIN32) - static constexpr StringLiteral OS_STRING = "windows"; -#elif defined(__APPLE__) - static constexpr StringLiteral OS_STRING = "osx"; -#else // assume linux - static constexpr StringLiteral OS_STRING = "linux"; -#endif - - static const fs::path XML_PATH = paths.scripts / "vcpkgTools.xml"; - - const auto maybe_get_string_inside_tags = [](const std::string& input, - const std::regex& regex) -> Optional { - std::smatch match; - const bool has_match = std::regex_search(input.cbegin(), input.cend(), match, regex); - if (!has_match) return nullopt; - return match[1]; - }; - - const auto get_string_inside_tags = - [](const std::string& input, const std::regex& regex, const std::string& tag_name) -> std::string { - std::smatch match; - const bool has_match = std::regex_search(input.cbegin(), input.cend(), match, regex); - Checks::check_exit( - VCPKG_LINE_INFO, has_match, "Could not find tag <%s> in %s", tag_name, XML_PATH.generic_string()); - - return match[1]; - }; - - static const std::string XML = paths.get_filesystem().read_contents(XML_PATH).value_or_exit(VCPKG_LINE_INFO); - static const std::regex VERSION_REGEX{R"###(([\s\S]*?))###"}; - static const std::regex EXE_RELATIVE_PATH_REGEX{ - Strings::format(R"###(([\s\S]*?))###")}; - static const std::regex ARCHIVE_RELATIVE_PATH_REGEX{ - Strings::format(R"###(([\s\S]*?))###")}; - static const std::regex URL_REGEX{Strings::format(R"###(([\s\S]*?))###")}; - - std::regex tool_regex{ - Strings::format(R"###(([\s\S]*?)<\/tool>)###", tool, OS_STRING)}; - - std::smatch match_tool; - bool has_match_tool = std::regex_search(XML.cbegin(), XML.cend(), match_tool, tool_regex); - if (!has_match_tool && OS_STRING == "windows") // Legacy support. Change introduced in vcpkg v0.0.107. - { - tool_regex = Strings::format(R"###(([\s\S]*?)<\/tool>)###", tool); - has_match_tool = std::regex_search(XML.cbegin(), XML.cend(), match_tool, tool_regex); - } - Checks::check_exit(VCPKG_LINE_INFO, - has_match_tool, - "Could not find entry for tool [%s] in %s", - tool, - XML_PATH.generic_string()); - - const std::string tool_data_as_string = get_string_inside_tags(XML, tool_regex, tool); - - const std::string required_version_as_string = - get_string_inside_tags(tool_data_as_string, VERSION_REGEX, "requiredVersion"); - - const std::string url = get_string_inside_tags(tool_data_as_string, URL_REGEX, "url"); - - const std::string exe_relative_path = - get_string_inside_tags(tool_data_as_string, EXE_RELATIVE_PATH_REGEX, "exeRelativePath"); - - auto archive_relative_path = maybe_get_string_inside_tags(tool_data_as_string, ARCHIVE_RELATIVE_PATH_REGEX); - - const Optional> required_version = parse_version_string(required_version_as_string); - Checks::check_exit(VCPKG_LINE_INFO, - required_version.has_value(), - "Could not parse version for tool %s. Version string was: %s", - tool, - required_version_as_string); - - const std::string tool_dir_name = Strings::format("%s-%s-%s", tool, required_version_as_string, OS_STRING); - const fs::path tool_dir_path = paths.downloads / "tools" / tool_dir_name; - const fs::path exe_path = tool_dir_path / exe_relative_path; - return ToolData{*required_version.get(), - exe_path, - url, - paths.downloads / archive_relative_path.value_or(exe_relative_path), - tool_dir_path}; - } - - static bool exists_and_has_equal_or_greater_version(const std::string& version_cmd, - const std::array& expected_version) - { - const auto rc = System::cmd_execute_and_capture_output(Strings::format(R"(%s)", version_cmd)); - if (rc.exit_code != 0) - { - return false; - } - - const Optional> v = parse_version_string(rc.output); - if (!v.has_value()) - { - return false; - } - - const std::array actual_version = *v.get(); - return (actual_version[0] > expected_version[0] || - (actual_version[0] == expected_version[0] && actual_version[1] > expected_version[1]) || - (actual_version[0] == expected_version[0] && actual_version[1] == expected_version[1] && - actual_version[2] >= expected_version[2])); - } - - static Optional find_if_has_equal_or_greater_version(const std::vector& candidate_paths, - const std::string& version_check_arguments, - const std::array& expected_version) - { - auto it = Util::find_if(candidate_paths, [&](const fs::path& p) { - const std::string cmd = Strings::format(R"("%s" %s)", p.u8string(), version_check_arguments); - return exists_and_has_equal_or_greater_version(cmd, expected_version); - }); - - if (it != candidate_paths.cend()) - { - return std::move(*it); - } - - return nullopt; - } - - static std::vector keep_data_lines(const std::string& data_blob) - { - static const std::regex DATA_LINE_REGEX(R"(::(.+?)(?=::))"); - - std::vector data_lines; - - const std::sregex_iterator it(data_blob.cbegin(), data_blob.cend(), DATA_LINE_REGEX); - const std::sregex_iterator end; - for (std::sregex_iterator i = it; i != end; ++i) - { - const std::smatch match = *i; - data_lines.push_back(match[1].str()); - } - - return data_lines; - } - - static void extract_archive(const VcpkgPaths& paths, const fs::path& archive, const fs::path& to_path) - { - Files::Filesystem& fs = paths.get_filesystem(); - const fs::path to_path_partial = to_path.u8string() + ".partial"; - - std::error_code ec; - fs.remove_all(to_path_partial, ec); - fs.create_directories(to_path_partial, ec); - - const auto ext = archive.extension(); - if (ext == ".gz" && ext.extension() != ".tar") - { - const auto code = System::cmd_execute( - Strings::format(R"(cd '%s' && tar xzf '%s')", to_path_partial.u8string(), archive.u8string())); - Checks::check_exit(VCPKG_LINE_INFO, code == 0, "tar failed while extracting %s", archive.u8string()); - } - else if (ext == ".zip") - { - const auto code = System::cmd_execute( - Strings::format(R"(cd '%s' && unzip -qqo '%s')", to_path_partial.u8string(), archive.u8string())); - Checks::check_exit(VCPKG_LINE_INFO, code == 0, "unzip failed while extracting %s", archive.u8string()); - } - else - { - Checks::exit_with_message(VCPKG_LINE_INFO, "Unexpected archive extension: %s", ext.u8string()); - } - - fs.rename(to_path_partial, to_path); - } - - static fs::path fetch_tool(const VcpkgPaths& paths, const std::string& tool_name, const ToolData& tool_data) - { - const auto& fs = paths.get_filesystem(); - const fs::path& scripts_folder = paths.scripts; - const std::array& version = tool_data.required_version; - - const std::string version_as_string = Strings::format("%d.%d.%d", version[0], version[1], version[2]); - System::println("A suitable version of %s was not found (required v%s). Downloading portable %s v%s...", - tool_name, - version_as_string, - tool_name, - version_as_string); -#if defined(_WIN32) - const fs::path script = scripts_folder / "fetchtool.ps1"; - const std::string title = Strings::format( - "Fetching %s version %s (No sufficient installed version was found)", tool_name, version_as_string); - const System::PowershellParameter tool_param("tool", tool_name); - const std::string output = System::powershell_execute_and_capture_output(title, script, {tool_param}); - - const std::vector tool_path = keep_data_lines(output); - Checks::check_exit(VCPKG_LINE_INFO, tool_path.size() == 1, "Expected tool path, but got %s", output); - - const fs::path actual_downloaded_path = Strings::trim(std::string{tool_path.at(0)}); - const fs::path& expected_downloaded_path = tool_data.exe_path; - std::error_code ec; - const auto eq = fs::stdfs::equivalent(expected_downloaded_path, actual_downloaded_path, ec); - Checks::check_exit(VCPKG_LINE_INFO, - eq && !ec, - "Expected tool downloaded path to be %s, but was %s", - expected_downloaded_path.u8string(), - actual_downloaded_path.u8string()); - return actual_downloaded_path; -#else - if (!fs.exists(tool_data.downloaded_path)) - { - auto code = System::cmd_execute(Strings::format( - R"(curl -L '%s' --create-dirs --output '%s')", tool_data.url, tool_data.downloaded_path)); - Checks::check_exit(VCPKG_LINE_INFO, code == 0, "curl failed while downloading %s", tool_data.url); - } - - System::println("Extracting %s...", tool_name); - extract_archive(paths, tool_data.downloaded_path, tool_data.tool_dir_path); - System::println("Extracting %s... done.", tool_name); - - Checks::check_exit(VCPKG_LINE_INFO, - fs.exists(tool_data.exe_path), - "Expected %s to exist after extracting", - tool_data.exe_path); - - return tool_data.exe_path; -#endif - } - - static fs::path get_cmake_path(const VcpkgPaths& paths) - { - std::vector candidate_paths; -#if defined(_WIN32) || defined(__APPLE__) || defined(__linux__) - static const ToolData TOOL_DATA = parse_tool_data_from_xml(paths, "cmake"); - candidate_paths.push_back(TOOL_DATA.exe_path); -#else - static const ToolData TOOL_DATA = ToolData{{3, 5, 1}, ""}; -#endif - static const std::string VERSION_CHECK_ARGUMENTS = "--version"; - - const std::vector from_path = Files::find_from_PATH("cmake"); - candidate_paths.insert(candidate_paths.end(), from_path.cbegin(), from_path.cend()); - - const auto& program_files = System::get_program_files_platform_bitness(); - if (const auto pf = program_files.get()) candidate_paths.push_back(*pf / "CMake" / "bin" / "cmake.exe"); - const auto& program_files_32_bit = System::get_program_files_32_bit(); - if (const auto pf = program_files_32_bit.get()) candidate_paths.push_back(*pf / "CMake" / "bin" / "cmake.exe"); - - const Optional path = - find_if_has_equal_or_greater_version(candidate_paths, VERSION_CHECK_ARGUMENTS, TOOL_DATA.required_version); - if (const auto p = path.get()) - { - return *p; - } - - return fetch_tool(paths, "cmake", TOOL_DATA); - } - - static fs::path get_7za_path(const VcpkgPaths& paths) - { -#if defined(_WIN32) - static const ToolData TOOL_DATA = parse_tool_data_from_xml(paths, "7zip"); - if (!paths.get_filesystem().exists(TOOL_DATA.exe_path)) - { - return fetch_tool(paths, "7zip", TOOL_DATA); - } - return TOOL_DATA.exe_path; -#else - Checks::exit_with_message(VCPKG_LINE_INFO, "Cannot download 7zip for non-Windows platforms."); -#endif - } - - static fs::path get_ninja_path(const VcpkgPaths& paths) - { - static const ToolData TOOL_DATA = parse_tool_data_from_xml(paths, "ninja"); - - std::vector candidate_paths; - candidate_paths.push_back(TOOL_DATA.exe_path); - const std::vector from_path = Files::find_from_PATH("ninja"); - candidate_paths.insert(candidate_paths.end(), from_path.cbegin(), from_path.cend()); - - auto path = find_if_has_equal_or_greater_version(candidate_paths, "--version", TOOL_DATA.required_version); - if (const auto p = path.get()) - { - return *p; - } - - return fetch_tool(paths, "ninja", TOOL_DATA); - } - - static fs::path get_nuget_path(const VcpkgPaths& paths) - { - static const ToolData TOOL_DATA = parse_tool_data_from_xml(paths, "nuget"); - - std::vector candidate_paths; - candidate_paths.push_back(TOOL_DATA.exe_path); - const std::vector from_path = Files::find_from_PATH("nuget"); - candidate_paths.insert(candidate_paths.end(), from_path.cbegin(), from_path.cend()); - - auto path = find_if_has_equal_or_greater_version(candidate_paths, "", TOOL_DATA.required_version); - if (const auto p = path.get()) - { - return *p; - } - - return fetch_tool(paths, "nuget", TOOL_DATA); - } - - static fs::path get_git_path(const VcpkgPaths& paths) - { -#if defined(_WIN32) - static const ToolData TOOL_DATA = parse_tool_data_from_xml(paths, "git"); -#else - static const ToolData TOOL_DATA = ToolData{{2, 7, 4}, ""}; -#endif - static const std::string VERSION_CHECK_ARGUMENTS = "--version"; - - std::vector candidate_paths; -#if defined(_WIN32) - candidate_paths.push_back(TOOL_DATA.exe_path); -#endif - const std::vector from_path = Files::find_from_PATH("git"); - candidate_paths.insert(candidate_paths.end(), from_path.cbegin(), from_path.cend()); - - const auto& program_files = System::get_program_files_platform_bitness(); - if (const auto pf = program_files.get()) candidate_paths.push_back(*pf / "git" / "cmd" / "git.exe"); - const auto& program_files_32_bit = System::get_program_files_32_bit(); - if (const auto pf = program_files_32_bit.get()) candidate_paths.push_back(*pf / "git" / "cmd" / "git.exe"); - - const Optional path = - find_if_has_equal_or_greater_version(candidate_paths, VERSION_CHECK_ARGUMENTS, TOOL_DATA.required_version); - if (const auto p = path.get()) - { - return *p; - } - - return fetch_tool(paths, "git", TOOL_DATA); - } - - static fs::path get_ifw_installerbase_path(const VcpkgPaths& paths) - { - static const ToolData TOOL_DATA = parse_tool_data_from_xml(paths, "installerbase"); - - static const std::string VERSION_CHECK_ARGUMENTS = "--framework-version"; - - std::vector candidate_paths; - candidate_paths.push_back(TOOL_DATA.exe_path); - // TODO: Uncomment later - // const std::vector from_path = Files::find_from_PATH("installerbase"); - // candidate_paths.insert(candidate_paths.end(), from_path.cbegin(), from_path.cend()); - // candidate_paths.push_back(fs::path(System::get_environment_variable("HOMEDRIVE").value_or("C:")) / "Qt" / - // "Tools" / "QtInstallerFramework" / "3.1" / "bin" / "installerbase.exe"); - // candidate_paths.push_back(fs::path(System::get_environment_variable("HOMEDRIVE").value_or("C:")) / "Qt" / - // "QtIFW-3.1.0" / "bin" / "installerbase.exe"); - - const Optional path = - find_if_has_equal_or_greater_version(candidate_paths, VERSION_CHECK_ARGUMENTS, TOOL_DATA.required_version); - if (const auto p = path.get()) - { - return *p; - } - - return fetch_tool(paths, "installerbase", TOOL_DATA); - } - Expected VcpkgPaths::create(const fs::path& vcpkg_root_dir, const std::string& default_vs_path) { std::error_code ec; @@ -471,266 +83,22 @@ namespace vcpkg bool VcpkgPaths::is_valid_triplet(const Triplet& t) const { - auto it = Util::find_if(this->get_available_triplets(), - [&](auto&& available_triplet) { return t.canonical_name() == available_triplet; }); + const auto it = Util::find_if(this->get_available_triplets(), [&](auto&& available_triplet) { + return t.canonical_name() == available_triplet; + }); return it != this->get_available_triplets().cend(); } - const fs::path& VcpkgPaths::get_7za_exe() const + const fs::path& VcpkgPaths::get_tool_exe(const std::string& tool) const { - return this->_7za_exe.get_lazy([this]() { return get_7za_path(*this); }); - } - - const fs::path& VcpkgPaths::get_cmake_exe() const - { - return this->cmake_exe.get_lazy([this]() { return get_cmake_path(*this); }); - } - - const fs::path& VcpkgPaths::get_git_exe() const - { - return this->git_exe.get_lazy([this]() { return get_git_path(*this); }); - } - - const fs::path& VcpkgPaths::get_ninja_exe() const - { - return this->ninja_exe.get_lazy([this]() { return get_ninja_path(*this); }); - } - - const fs::path& VcpkgPaths::get_nuget_exe() const - { - return this->nuget_exe.get_lazy([this]() { return get_nuget_path(*this); }); - } - - const fs::path& VcpkgPaths::get_ifw_installerbase_exe() const - { - return this->ifw_installerbase_exe.get_lazy([this]() { return get_ifw_installerbase_path(*this); }); - } - - const fs::path& VcpkgPaths::get_ifw_binarycreator_exe() const - { - return this->ifw_binarycreator_exe.get_lazy( - [this]() { return get_ifw_installerbase_exe().parent_path() / "binarycreator.exe"; }); - } - - const fs::path& VcpkgPaths::get_ifw_repogen_exe() const - { - return this->ifw_repogen_exe.get_lazy( - [this]() { return get_ifw_installerbase_exe().parent_path() / "repogen.exe"; }); - } - - struct VisualStudioInstance - { - fs::path root_path; - std::string version; - std::string release_type; - std::string preference_weight; // Mostly unused, just for verification that order is as intended - - std::string major_version() const { return version.substr(0, 2); } - }; - - static std::vector get_visual_studio_instances(const VcpkgPaths& paths) - { - const fs::path script = paths.scripts / "findVisualStudioInstallationInstances.ps1"; - const std::string output = - System::powershell_execute_and_capture_output("Detecting Visual Studio instances", script); - - const std::vector instances_as_strings = keep_data_lines(output); - Checks::check_exit(VCPKG_LINE_INFO, - !instances_as_strings.empty(), - "Could not detect any Visual Studio instances.\n" - "Powershell script:\n" - " %s\n" - "returned:\n" - "%s", - script.generic_string(), - output); - - std::vector instances; - for (const std::string& instance_as_string : instances_as_strings) - { - const std::vector split = Strings::split(instance_as_string, "::"); - Checks::check_exit(VCPKG_LINE_INFO, - split.size() == 4, - "Invalid Visual Studio instance format.\n" - "Expected: PreferenceWeight::ReleaseType::Version::PathToVisualStudio\n" - "Actual : %s\n", - instance_as_string); - instances.push_back({split.at(3), split.at(2), split.at(1), split.at(0)}); - } - - return instances; - } - - static std::vector find_toolset_instances(const VcpkgPaths& paths) - { - using CPU = System::CPUArchitecture; - - const auto& fs = paths.get_filesystem(); - - // Note: this will contain a mix of vcvarsall.bat locations and dumpbin.exe locations. - std::vector paths_examined; - - std::vector found_toolsets; - std::vector excluded_toolsets; - - const std::vector vs_instances = get_visual_studio_instances(paths); - const bool v140_is_available = Util::find_if(vs_instances, [&](const VisualStudioInstance& vs_instance) { - return vs_instance.major_version() == "14"; - }) != vs_instances.cend(); - - for (const VisualStudioInstance& vs_instance : vs_instances) - { - const std::string major_version = vs_instance.major_version(); - if (major_version == "15") - { - const fs::path vc_dir = vs_instance.root_path / "VC"; - - // Skip any instances that do not have vcvarsall. - const fs::path vcvarsall_dir = vc_dir / "Auxiliary" / "Build"; - const fs::path vcvarsall_bat = vcvarsall_dir / "vcvarsall.bat"; - paths_examined.push_back(vcvarsall_bat); - if (!fs.exists(vcvarsall_bat)) continue; - - // Get all supported architectures - std::vector supported_architectures; - if (fs.exists(vcvarsall_dir / "vcvars32.bat")) - supported_architectures.push_back({"x86", CPU::X86, CPU::X86}); - if (fs.exists(vcvarsall_dir / "vcvars64.bat")) - supported_architectures.push_back({"amd64", CPU::X64, CPU::X64}); - if (fs.exists(vcvarsall_dir / "vcvarsx86_amd64.bat")) - supported_architectures.push_back({"x86_amd64", CPU::X86, CPU::X64}); - if (fs.exists(vcvarsall_dir / "vcvarsx86_arm.bat")) - supported_architectures.push_back({"x86_arm", CPU::X86, CPU::ARM}); - if (fs.exists(vcvarsall_dir / "vcvarsx86_arm64.bat")) - supported_architectures.push_back({"x86_arm64", CPU::X86, CPU::ARM64}); - if (fs.exists(vcvarsall_dir / "vcvarsamd64_x86.bat")) - supported_architectures.push_back({"amd64_x86", CPU::X64, CPU::X86}); - if (fs.exists(vcvarsall_dir / "vcvarsamd64_arm.bat")) - supported_architectures.push_back({"amd64_arm", CPU::X64, CPU::ARM}); - if (fs.exists(vcvarsall_dir / "vcvarsamd64_arm64.bat")) - supported_architectures.push_back({"amd64_arm64", CPU::X64, CPU::ARM64}); - - // Locate the "best" MSVC toolchain version - const fs::path msvc_path = vc_dir / "Tools" / "MSVC"; - std::vector msvc_subdirectories = fs.get_files_non_recursive(msvc_path); - Util::unstable_keep_if(msvc_subdirectories, - [&fs](const fs::path& path) { return fs.is_directory(path); }); - - // Sort them so that latest comes first - std::sort( - msvc_subdirectories.begin(), - msvc_subdirectories.end(), - [](const fs::path& left, const fs::path& right) { return left.filename() > right.filename(); }); - - for (const fs::path& subdir : msvc_subdirectories) - { - const fs::path dumpbin_path = subdir / "bin" / "HostX86" / "x86" / "dumpbin.exe"; - paths_examined.push_back(dumpbin_path); - if (fs.exists(dumpbin_path)) - { - const Toolset v141toolset = Toolset{ - vs_instance.root_path, dumpbin_path, vcvarsall_bat, {}, V_141, supported_architectures}; - - auto english_language_pack = dumpbin_path.parent_path() / "1033"; - - if (!fs.exists(english_language_pack)) - { - excluded_toolsets.push_back(v141toolset); - break; - } - - found_toolsets.push_back(v141toolset); - - if (v140_is_available) - { - const Toolset v140toolset = Toolset{vs_instance.root_path, - dumpbin_path, - vcvarsall_bat, - {"-vcvars_ver=14.0"}, - V_140, - supported_architectures}; - found_toolsets.push_back(v140toolset); - } - - break; - } - } - - continue; - } - - if (major_version == "14" || major_version == "12") - { - const fs::path vcvarsall_bat = vs_instance.root_path / "VC" / "vcvarsall.bat"; - - paths_examined.push_back(vcvarsall_bat); - if (fs.exists(vcvarsall_bat)) - { - const fs::path vs_dumpbin_exe = vs_instance.root_path / "VC" / "bin" / "dumpbin.exe"; - paths_examined.push_back(vs_dumpbin_exe); - - const fs::path vs_bin_dir = vcvarsall_bat.parent_path() / "bin"; - std::vector supported_architectures; - if (fs.exists(vs_bin_dir / "vcvars32.bat")) - supported_architectures.push_back({"x86", CPU::X86, CPU::X86}); - if (fs.exists(vs_bin_dir / "amd64\\vcvars64.bat")) - supported_architectures.push_back({"x64", CPU::X64, CPU::X64}); - if (fs.exists(vs_bin_dir / "x86_amd64\\vcvarsx86_amd64.bat")) - supported_architectures.push_back({"x86_amd64", CPU::X86, CPU::X64}); - if (fs.exists(vs_bin_dir / "x86_arm\\vcvarsx86_arm.bat")) - supported_architectures.push_back({"x86_arm", CPU::X86, CPU::ARM}); - if (fs.exists(vs_bin_dir / "amd64_x86\\vcvarsamd64_x86.bat")) - supported_architectures.push_back({"amd64_x86", CPU::X64, CPU::X86}); - if (fs.exists(vs_bin_dir / "amd64_arm\\vcvarsamd64_arm.bat")) - supported_architectures.push_back({"amd64_arm", CPU::X64, CPU::ARM}); - - if (fs.exists(vs_dumpbin_exe)) - { - const Toolset toolset = {vs_instance.root_path, - vs_dumpbin_exe, - vcvarsall_bat, - {}, - major_version == "14" ? V_140 : V_120, - supported_architectures}; - - auto english_language_pack = vs_dumpbin_exe.parent_path() / "1033"; - - if (!fs.exists(english_language_pack)) - { - excluded_toolsets.push_back(toolset); - break; - } - - found_toolsets.push_back(toolset); - } - } - } - } - - if (!excluded_toolsets.empty()) - { - System::println( - System::Color::warning, - "Warning: The following VS instances are excluded because the English language pack is unavailable."); - for (const Toolset& toolset : excluded_toolsets) - { - System::println(" %s", toolset.visual_studio_root_path.u8string()); - } - System::println(System::Color::warning, "Please install the English language pack."); - } - - if (found_toolsets.empty()) + const auto it = this->tool_paths.find(tool); + if (it != this->tool_paths.cend()) { - System::println(System::Color::error, "Could not locate a complete toolset."); - System::println("The following paths were examined:"); - for (const fs::path& path : paths_examined) - { - System::println(" %s", path.u8string()); - } - Checks::exit_fail(VCPKG_LINE_INFO); + return it->second; } - return found_toolsets; + this->tool_paths[tool] = Commands::Fetch::get_tool_path(*this, tool); + return this->tool_paths[tool]; } const Toolset& VcpkgPaths::get_toolset(const Build::PreBuildInfo& prebuildinfo) const @@ -754,7 +122,7 @@ namespace vcpkg // Invariant: toolsets are non-empty and sorted with newest at back() const std::vector& vs_toolsets = - this->toolsets.get_lazy([this]() { return find_toolset_instances(*this); }); + this->toolsets.get_lazy([this]() { return Commands::Fetch::find_toolset_instances(*this); }); std::vector candidates = Util::element_pointers(vs_toolsets); const auto tsv = prebuildinfo.platform_toolset.get(); diff --git a/toolsrc/vcpkglib/vcpkglib.vcxproj b/toolsrc/vcpkglib/vcpkglib.vcxproj index ae699a840..871d0c58d 100644 --- a/toolsrc/vcpkglib/vcpkglib.vcxproj +++ b/toolsrc/vcpkglib/vcpkglib.vcxproj @@ -214,6 +214,7 @@ + diff --git a/toolsrc/vcpkglib/vcpkglib.vcxproj.filters b/toolsrc/vcpkglib/vcpkglib.vcxproj.filters index 74bfebf3b..6a23a09b5 100644 --- a/toolsrc/vcpkglib/vcpkglib.vcxproj.filters +++ b/toolsrc/vcpkglib/vcpkglib.vcxproj.filters @@ -198,6 +198,9 @@ Source Files\vcpkg + + Source Files\vcpkg + -- cgit v1.2.3 From e3099b458b5c11742c1b88c27847801090870f2d Mon Sep 17 00:00:00 2001 From: Alexander Karatarakis Date: Wed, 4 Apr 2018 19:26:14 -0700 Subject: Use 7zip920 instead of 7zr --- scripts/VcpkgPowershellUtils.ps1 | 19 +++++++++++++++++++ scripts/fetchTool.ps1 | 14 +++++++++----- scripts/vcpkgTools.xml | 11 ++++++----- 3 files changed, 34 insertions(+), 10 deletions(-) diff --git a/scripts/VcpkgPowershellUtils.ps1 b/scripts/VcpkgPowershellUtils.ps1 index 7082ca747..d7967889e 100644 --- a/scripts/VcpkgPowershellUtils.ps1 +++ b/scripts/VcpkgPowershellUtils.ps1 @@ -198,6 +198,25 @@ function vcpkgExtractFile( [Parameter(Mandatory=$true)][string]$sevenZipExe, Rename-Item -Path "$destinationPartial" -NewName $destinationDir } +function vcpkgExtractZipFileWithShell( [Parameter(Mandatory=$true)][string]$archivePath, + [Parameter(Mandatory=$true)][string]$destinationDir) +{ + vcpkgRemoveItem $destinationDir + $destinationPartial = "$destinationDir.partial" + vcpkgRemoveItem $destinationPartial + vcpkgCreateDirectoryIfNotExists $destinationPartial + + $shell = new-object -com shell.application + $zip = $shell.NameSpace($(Get-Item $archivePath).fullname) + foreach($item in $zip.items()) + { + # Piping to Out-Null is used to block until finished + $shell.Namespace($destinationPartial).copyhere($item) | Out-Null + } + + Rename-Item -Path "$destinationPartial" -NewName $destinationDir +} + function vcpkgInvokeCommand() { param ( [Parameter(Mandatory=$true)][string]$executable, diff --git a/scripts/fetchTool.ps1 b/scripts/fetchTool.ps1 index 05335c724..e46c7808d 100644 --- a/scripts/fetchTool.ps1 +++ b/scripts/fetchTool.ps1 @@ -48,8 +48,8 @@ function fetchToolInternal([Parameter(Mandatory=$true)][string]$tool) { Write-Host "Downloading $tool..." - # aria2 needs 7zip & 7zr to extract. So, we need to download those trough powershell - if ($tool -eq "aria2" -or $tool -eq "7zip" -or $tool -eq "7zr") + # aria2 needs 7zip & 7zip920 to extract. So, we need to download those trough powershell + if ($tool -eq "aria2" -or $tool -eq "7zip" -or $tool -eq "7zip920") { vcpkgDownloadFile $url $downloadPath } @@ -69,10 +69,14 @@ function fetchToolInternal([Parameter(Mandatory=$true)][string]$tool) if ($isArchive) { Write-Host "Extracting $tool..." - if ($tool -eq "7zip") + if ($tool -eq "7zip920") { - $sevenZipR = fetchToolInternal "7zr" - $ec = vcpkgInvokeCommand "$sevenZipR" "x `"$downloadPath`" -o`"$toolPath`" -y" + vcpkgExtractZipFileWithShell -ArchivePath $downloadPath -DestinationDir $toolPath + } + elseif ($tool -eq "7zip") + { + $sevenZip920 = fetchToolInternal "7zip920" + $ec = vcpkgInvokeCommand "$sevenZip920" "x `"$downloadPath`" -o`"$toolPath`" -y" if ($ec -ne 0) { Write-Host "Could not extract $downloadPath" diff --git a/scripts/vcpkgTools.xml b/scripts/vcpkgTools.xml index fe1cc12a9..810818998 100644 --- a/scripts/vcpkgTools.xml +++ b/scripts/vcpkgTools.xml @@ -54,11 +54,12 @@ 9371df22bcd0e1aff9eaa52aa3292350eecd011f11494e709314ae3f3eb279e2 7z1801-extra.7z - - 18.01.0 - 7zr.exe - https://www.7-zip.org/a/7zr.exe - 2c7a8709260e0295a2a3cfd5a8ad0459f37490ed1794ea68bf85a6fab362553b + + 9.20.0 + 7za.exe + https://www.7-zip.org/a/7za920.zip + 2a3afe19c180f8373fa02ff00254d5394fec0349f5804e0ad2f6067854ff28ac + 7za920.zip 18.01.0 -- cgit v1.2.3 From 23c2b82535d24a8ef343ce2ca36e5a63d111dcd8 Mon Sep 17 00:00:00 2001 From: Alexander Karatarakis Date: Wed, 4 Apr 2018 19:28:10 -0700 Subject: [vcpkgTools.xml] Add os="windows" to relevant entries --- scripts/vcpkgTools.xml | 16 ++++++++-------- toolsrc/src/vcpkg/commands.fetch.cpp | 9 ++------- 2 files changed, 10 insertions(+), 15 deletions(-) diff --git a/scripts/vcpkgTools.xml b/scripts/vcpkgTools.xml index 810818998..fbd6aabd6 100644 --- a/scripts/vcpkgTools.xml +++ b/scripts/vcpkgTools.xml @@ -1,6 +1,6 @@ - + 3.10.2 cmake-3.10.2-win32-x86\bin\cmake.exe https://cmake.org/files/v3.10/cmake-3.10.2-win32-x86.zip @@ -21,47 +21,47 @@ 7a82b46c35f4e68a0807e8dc04e779dee3f36cd42c6387fd13b5c29fe62a69ea cmake-3.10.2-Linux-x86_64.tar.gz - + 2.16.2 cmd\git.exe https://github.com/git-for-windows/git/releases/download/v2.16.2.windows.1/MinGit-2.16.2-32-bit.zip 322c727e482aa97522c64a5ac68bdda3780111e8670bcfb532beac8e11ece5da MinGit-2.16.2-32-bit.zip - + 2.3.2 vswhere.exe https://github.com/Microsoft/vswhere/releases/download/2.3.2/vswhere.exe 103f2784c4b2c8e70c7c1c03687abbf22bce052aae30639406e4e13ffa29ee04 - + 4.4.0 nuget.exe https://dist.nuget.org/win-x86-commandline/v4.4.0/nuget.exe 2cf9b118937eef825464e548f0c44f7f64090047746de295d75ac3dcffa3e1f6 - + 3.1.81 QtInstallerFramework-win-x86\bin\installerbase.exe https://github.com/podsvirov/installer-framework/releases/download/cr203958-9/QtInstallerFramework-win-x86.zip f2ce23cf5cf9fc7ce409bdca49328e09a070c0026d3c8a04e4dfde7b05b83fe8 QtInstallerFramework-win-x86.zip - + 18.01.0 7za.exe https://www.7-zip.org/a/7z1801-extra.7z 9371df22bcd0e1aff9eaa52aa3292350eecd011f11494e709314ae3f3eb279e2 7z1801-extra.7z - + 9.20.0 7za.exe https://www.7-zip.org/a/7za920.zip 2a3afe19c180f8373fa02ff00254d5394fec0349f5804e0ad2f6067854ff28ac 7za920.zip - + 18.01.0 aria2-1.33.1-win-32bit-build1\aria2c.exe https://github.com/aria2/aria2/releases/download/release-1.33.1/aria2-1.33.1-win-32bit-build1.zip diff --git a/toolsrc/src/vcpkg/commands.fetch.cpp b/toolsrc/src/vcpkg/commands.fetch.cpp index 95c47e2db..cfb1b6c2a 100644 --- a/toolsrc/src/vcpkg/commands.fetch.cpp +++ b/toolsrc/src/vcpkg/commands.fetch.cpp @@ -78,16 +78,11 @@ namespace vcpkg::Commands::Fetch Strings::format(R"###(([\s\S]*?))###")}; static const std::regex URL_REGEX{Strings::format(R"###(([\s\S]*?))###")}; - std::regex tool_regex{ + const std::regex tool_regex{ Strings::format(R"###(([\s\S]*?)<\/tool>)###", tool, OS_STRING)}; std::smatch match_tool; - bool has_match_tool = std::regex_search(XML.cbegin(), XML.cend(), match_tool, tool_regex); - if (!has_match_tool && OS_STRING == "windows") // Legacy support. Change introduced in vcpkg v0.0.107. - { - tool_regex = Strings::format(R"###(([\s\S]*?)<\/tool>)###", tool); - has_match_tool = std::regex_search(XML.cbegin(), XML.cend(), match_tool, tool_regex); - } + const bool has_match_tool = std::regex_search(XML.cbegin(), XML.cend(), match_tool, tool_regex); Checks::check_exit(VCPKG_LINE_INFO, has_match_tool, "Could not find entry for tool [%s] in %s", -- cgit v1.2.3 From 863a8f3329356d260c02c0d6f855e81fd1e2cea9 Mon Sep 17 00:00:00 2001 From: Alexander Karatarakis Date: Wed, 4 Apr 2018 19:37:31 -0700 Subject: [vcpkgTools.xml] Rename archiveRelativePath to archiveName --- scripts/fetchTool.ps1 | 4 ++-- scripts/vcpkgTools.xml | 20 ++++++++++---------- toolsrc/src/vcpkg/commands.fetch.cpp | 2 +- 3 files changed, 13 insertions(+), 13 deletions(-) diff --git a/scripts/fetchTool.ps1 b/scripts/fetchTool.ps1 index e46c7808d..79ac82cb0 100644 --- a/scripts/fetchTool.ps1 +++ b/scripts/fetchTool.ps1 @@ -33,10 +33,10 @@ function fetchToolInternal([Parameter(Mandatory=$true)][string]$tool) return $exePath } - $isArchive = vcpkgHasProperty -object $toolData -propertyName "archiveRelativePath" + $isArchive = vcpkgHasProperty -object $toolData -propertyName "archiveName" if ($isArchive) { - $downloadPath = "$downloadsDir\$($toolData.archiveRelativePath)" + $downloadPath = "$downloadsDir\$($toolData.archiveName)" } else { diff --git a/scripts/vcpkgTools.xml b/scripts/vcpkgTools.xml index fbd6aabd6..839e476b0 100644 --- a/scripts/vcpkgTools.xml +++ b/scripts/vcpkgTools.xml @@ -5,28 +5,28 @@ cmake-3.10.2-win32-x86\bin\cmake.exe https://cmake.org/files/v3.10/cmake-3.10.2-win32-x86.zip f5f7e41a21d0e9b655aca58498b08e17ecd27796bf82837e2c84435359169dd6 - cmake-3.10.2-win32-x86.zip + cmake-3.10.2-win32-x86.zip 3.10.2 cmake-3.10.2-Darwin-x86_64/CMake.app/Contents/bin/cmake https://cmake.org/files/v3.10/cmake-3.10.2-Darwin-x86_64.tar.gz e748eb7698f8e2783c2eea9ab81eebf66da0238bbf8e8fa722a67a38f2110718 - cmake-3.10.2-Darwin-x86_64.tar.gz + cmake-3.10.2-Darwin-x86_64.tar.gz 3.10.2 cmake-3.10.2-Linux-x86_64/bin/cmake https://cmake.org/files/v3.10/cmake-3.10.2-Linux-x86_64.tar.gz 7a82b46c35f4e68a0807e8dc04e779dee3f36cd42c6387fd13b5c29fe62a69ea - cmake-3.10.2-Linux-x86_64.tar.gz + cmake-3.10.2-Linux-x86_64.tar.gz 2.16.2 cmd\git.exe https://github.com/git-for-windows/git/releases/download/v2.16.2.windows.1/MinGit-2.16.2-32-bit.zip 322c727e482aa97522c64a5ac68bdda3780111e8670bcfb532beac8e11ece5da - MinGit-2.16.2-32-bit.zip + MinGit-2.16.2-32-bit.zip 2.3.2 @@ -45,41 +45,41 @@ QtInstallerFramework-win-x86\bin\installerbase.exe https://github.com/podsvirov/installer-framework/releases/download/cr203958-9/QtInstallerFramework-win-x86.zip f2ce23cf5cf9fc7ce409bdca49328e09a070c0026d3c8a04e4dfde7b05b83fe8 - QtInstallerFramework-win-x86.zip + QtInstallerFramework-win-x86.zip 18.01.0 7za.exe https://www.7-zip.org/a/7z1801-extra.7z 9371df22bcd0e1aff9eaa52aa3292350eecd011f11494e709314ae3f3eb279e2 - 7z1801-extra.7z + 7z1801-extra.7z 9.20.0 7za.exe https://www.7-zip.org/a/7za920.zip 2a3afe19c180f8373fa02ff00254d5394fec0349f5804e0ad2f6067854ff28ac - 7za920.zip + 7za920.zip 18.01.0 aria2-1.33.1-win-32bit-build1\aria2c.exe https://github.com/aria2/aria2/releases/download/release-1.33.1/aria2-1.33.1-win-32bit-build1.zip 04bf07c0449c703db17fbcd586365aebba00201ca513ca4808b543f1f9208f1f - aria2-1.33.1-win-32bit-build1.zip + aria2-1.33.1-win-32bit-build1.zip 1.8.2 ninja https://github.com/ninja-build/ninja/releases/download/v1.8.2/ninja-linux.zip d2fea9ff33b3ef353161ed906f260d565ca55b8ca0568fa07b1d2cab90a84a07 - ninja-linux.zip + ninja-linux.zip 1.8.2 ninja https://github.com/ninja-build/ninja/releases/download/v1.8.2/ninja-mac.zip 0347d55c66061652b26f48769d566761630ffde3143793b29064a57f356542cc - ninja-mac.zip + ninja-mac.zip diff --git a/toolsrc/src/vcpkg/commands.fetch.cpp b/toolsrc/src/vcpkg/commands.fetch.cpp index cfb1b6c2a..10153293c 100644 --- a/toolsrc/src/vcpkg/commands.fetch.cpp +++ b/toolsrc/src/vcpkg/commands.fetch.cpp @@ -75,7 +75,7 @@ namespace vcpkg::Commands::Fetch static const std::regex EXE_RELATIVE_PATH_REGEX{ Strings::format(R"###(([\s\S]*?))###")}; static const std::regex ARCHIVE_RELATIVE_PATH_REGEX{ - Strings::format(R"###(([\s\S]*?))###")}; + Strings::format(R"###(([\s\S]*?))###")}; static const std::regex URL_REGEX{Strings::format(R"###(([\s\S]*?))###")}; const std::regex tool_regex{ -- cgit v1.2.3 From 32404eee694266a23a5d8a2c2f004d68c1d79195 Mon Sep 17 00:00:00 2001 From: Alexander Karatarakis Date: Wed, 4 Apr 2018 19:52:14 -0700 Subject: [vcpkgTools.xml] Verify the version field --- toolsrc/src/vcpkg/commands.fetch.cpp | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/toolsrc/src/vcpkg/commands.fetch.cpp b/toolsrc/src/vcpkg/commands.fetch.cpp index 10153293c..d2634a5f0 100644 --- a/toolsrc/src/vcpkg/commands.fetch.cpp +++ b/toolsrc/src/vcpkg/commands.fetch.cpp @@ -50,6 +50,7 @@ namespace vcpkg::Commands::Fetch static constexpr StringLiteral OS_STRING = "linux"; #endif + static const std::string XML_VERSION = "1"; static const fs::path XML_PATH = paths.scripts / "vcpkgTools.xml"; const auto maybe_get_string_inside_tags = [](const std::string& input, @@ -70,6 +71,7 @@ namespace vcpkg::Commands::Fetch return match[1]; }; + static const std::regex XML_VERSION_REGEX{R"###()###"}; static const std::string XML = paths.get_filesystem().read_contents(XML_PATH).value_or_exit(VCPKG_LINE_INFO); static const std::regex VERSION_REGEX{R"###(([\s\S]*?))###"}; static const std::regex EXE_RELATIVE_PATH_REGEX{ @@ -78,6 +80,17 @@ namespace vcpkg::Commands::Fetch Strings::format(R"###(([\s\S]*?))###")}; static const std::regex URL_REGEX{Strings::format(R"###(([\s\S]*?))###")}; + std::smatch match_xml_version; + const bool has_xml_version = std::regex_search(XML.cbegin(), XML.cend(), match_xml_version, XML_VERSION_REGEX); + Checks::check_exit( + VCPKG_LINE_INFO, has_xml_version, "Could not find in %s", XML_PATH.generic_string()); + Checks::check_exit(VCPKG_LINE_INFO, + XML_VERSION == match_xml_version[1], + "Expected %s version: [%s], but was [%s]. Please re-run bootstrap-vcpkg.", + XML_PATH.generic_string(), + XML_VERSION, + match_xml_version[1]); + const std::regex tool_regex{ Strings::format(R"###(([\s\S]*?)<\/tool>)###", tool, OS_STRING)}; -- cgit v1.2.3 From da9d1c46750bf78db65383e3a48d71905b8f91ef Mon Sep 17 00:00:00 2001 From: Alexander Karatarakis Date: Wed, 4 Apr 2018 19:53:56 -0700 Subject: Misc archiveRelativePath->archiveName renames --- toolsrc/src/vcpkg/commands.fetch.cpp | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/toolsrc/src/vcpkg/commands.fetch.cpp b/toolsrc/src/vcpkg/commands.fetch.cpp index d2634a5f0..90b408cc0 100644 --- a/toolsrc/src/vcpkg/commands.fetch.cpp +++ b/toolsrc/src/vcpkg/commands.fetch.cpp @@ -76,8 +76,7 @@ namespace vcpkg::Commands::Fetch static const std::regex VERSION_REGEX{R"###(([\s\S]*?))###"}; static const std::regex EXE_RELATIVE_PATH_REGEX{ Strings::format(R"###(([\s\S]*?))###")}; - static const std::regex ARCHIVE_RELATIVE_PATH_REGEX{ - Strings::format(R"###(([\s\S]*?))###")}; + static const std::regex ARCHIVE_NAME_REGEX{Strings::format(R"###(([\s\S]*?))###")}; static const std::regex URL_REGEX{Strings::format(R"###(([\s\S]*?))###")}; std::smatch match_xml_version; @@ -112,7 +111,7 @@ namespace vcpkg::Commands::Fetch const std::string exe_relative_path = get_string_inside_tags(tool_data_as_string, EXE_RELATIVE_PATH_REGEX, "exeRelativePath"); - auto archive_relative_path = maybe_get_string_inside_tags(tool_data_as_string, ARCHIVE_RELATIVE_PATH_REGEX); + auto archive_name = maybe_get_string_inside_tags(tool_data_as_string, ARCHIVE_NAME_REGEX); const Optional> required_version = parse_version_string(required_version_as_string); Checks::check_exit(VCPKG_LINE_INFO, @@ -127,7 +126,7 @@ namespace vcpkg::Commands::Fetch return ToolData{*required_version.get(), exe_path, url, - paths.downloads / archive_relative_path.value_or(exe_relative_path), + paths.downloads / archive_name.value_or(exe_relative_path), tool_dir_path}; } -- cgit v1.2.3 From 2fa16cda18856ae7f6685c48c0aeefd15225af11 Mon Sep 17 00:00:00 2001 From: Alexander Karatarakis Date: Wed, 4 Apr 2018 20:07:45 -0700 Subject: [vcpkgTools.xml] Change sha256 to sha512 --- scripts/VcpkgPowershellUtils.ps1 | 8 ++++---- scripts/fetchTool.ps1 | 4 ++-- scripts/vcpkgTools.xml | 24 ++++++++++++------------ 3 files changed, 18 insertions(+), 18 deletions(-) diff --git a/scripts/VcpkgPowershellUtils.ps1 b/scripts/VcpkgPowershellUtils.ps1 index d7967889e..676ee5c03 100644 --- a/scripts/VcpkgPowershellUtils.ps1 +++ b/scripts/VcpkgPowershellUtils.ps1 @@ -79,22 +79,22 @@ function vcpkgGetCredentials() } } -function vcpkgGetSHA256([Parameter(Mandatory=$true)][string]$filePath) +function vcpkgGetSHA512([Parameter(Mandatory=$true)][string]$filePath) { if (vcpkgHasCommand -commandName 'Microsoft.PowerShell.Utility\Get-FileHash') { Write-Verbose("Hashing with Microsoft.PowerShell.Utility\Get-FileHash") - $hash = (Microsoft.PowerShell.Utility\Get-FileHash -Path $filePath -Algorithm SHA256).Hash + $hash = (Microsoft.PowerShell.Utility\Get-FileHash -Path $filePath -Algorithm SHA512).Hash } elseif(vcpkgHasCommand -commandName 'Pscx\Get-Hash') { Write-Verbose("Hashing with Pscx\Get-Hash") - $hash = (Pscx\Get-Hash -Path $filePath -Algorithm SHA256).HashString + $hash = (Pscx\Get-Hash -Path $filePath -Algorithm SHA512).HashString } else { Write-Verbose("Hashing with .NET") - $hashAlgorithm = [Security.Cryptography.HashAlgorithm]::Create("SHA256") + $hashAlgorithm = [Security.Cryptography.HashAlgorithm]::Create("SHA512") $fileAsByteArray = [io.File]::ReadAllBytes($filePath) $hashByteArray = $hashAlgorithm.ComputeHash($fileAsByteArray) $hash = -Join ($hashByteArray | ForEach-Object {"{0:x2}" -f $_}) diff --git a/scripts/fetchTool.ps1 b/scripts/fetchTool.ps1 index 79ac82cb0..d5c8fe77e 100644 --- a/scripts/fetchTool.ps1 +++ b/scripts/fetchTool.ps1 @@ -62,8 +62,8 @@ function fetchToolInternal([Parameter(Mandatory=$true)][string]$tool) Write-Host "Downloading $tool... done." } - $expectedDownloadedFileHash = $toolData.sha256 - $downloadedFileHash = vcpkgGetSHA256 $downloadPath + $expectedDownloadedFileHash = $toolData.sha512 + $downloadedFileHash = vcpkgGetSHA512 $downloadPath vcpkgCheckEqualFileHash -filePath $downloadPath -expectedHash $expectedDownloadedFileHash -actualHash $downloadedFileHash if ($isArchive) diff --git a/scripts/vcpkgTools.xml b/scripts/vcpkgTools.xml index 839e476b0..c3114c2e5 100644 --- a/scripts/vcpkgTools.xml +++ b/scripts/vcpkgTools.xml @@ -4,82 +4,82 @@ 3.10.2 cmake-3.10.2-win32-x86\bin\cmake.exe https://cmake.org/files/v3.10/cmake-3.10.2-win32-x86.zip - f5f7e41a21d0e9b655aca58498b08e17ecd27796bf82837e2c84435359169dd6 + 9c16861a2ac09c7011b84f38459ecfec2829a9f825b254acbbde46d98f12f8ca0d4db3a6764758cb671507ee7c0327576d87658b81d7ddf1e8280b37569eb16d cmake-3.10.2-win32-x86.zip 3.10.2 cmake-3.10.2-Darwin-x86_64/CMake.app/Contents/bin/cmake https://cmake.org/files/v3.10/cmake-3.10.2-Darwin-x86_64.tar.gz - e748eb7698f8e2783c2eea9ab81eebf66da0238bbf8e8fa722a67a38f2110718 + cb7d76e11c892eb786da5804282c4141564390c3552e08c506c7abb93015eb5f619c55255459872b219399ce8114ac321fe92df7f82a7e42bbc874eec240571e cmake-3.10.2-Darwin-x86_64.tar.gz 3.10.2 cmake-3.10.2-Linux-x86_64/bin/cmake https://cmake.org/files/v3.10/cmake-3.10.2-Linux-x86_64.tar.gz - 7a82b46c35f4e68a0807e8dc04e779dee3f36cd42c6387fd13b5c29fe62a69ea + 54389b5cb3f3cb9d182d35e0b1eaf7b301695899930da0d26e9df1dc25056213a077646d23ea609a93daa81d30687757d9cf0dc263339fa3d73dbeb1284bc1a9 cmake-3.10.2-Linux-x86_64.tar.gz 2.16.2 cmd\git.exe https://github.com/git-for-windows/git/releases/download/v2.16.2.windows.1/MinGit-2.16.2-32-bit.zip - 322c727e482aa97522c64a5ac68bdda3780111e8670bcfb532beac8e11ece5da + 004e1dc1904f2e2d5c3534d0a56f58bf030b1146f5b263d6d191e60f72cd35455977c588604708125a1e93268ee8f7a5ab32ed6115adc028257b12d5926f350a MinGit-2.16.2-32-bit.zip 2.3.2 vswhere.exe https://github.com/Microsoft/vswhere/releases/download/2.3.2/vswhere.exe - 103f2784c4b2c8e70c7c1c03687abbf22bce052aae30639406e4e13ffa29ee04 + 42f8a8ffd0b156b2e30b2ec7bf7d19582b3ce38a2046ff62bd7fd82f12a8d66ed601e74865957864cef0a376e33a7d07cad746f03c57d1b95a7929a1f8f119ed 4.4.0 nuget.exe https://dist.nuget.org/win-x86-commandline/v4.4.0/nuget.exe - 2cf9b118937eef825464e548f0c44f7f64090047746de295d75ac3dcffa3e1f6 + fb0903665d2a64ce1da3f40961eb19e46c152a631b2441750aa8b30b20acd2a5e78d7f1058e79e83e37959b3ce9a090a60f081895fdba9998715e3a64437c3e5 3.1.81 QtInstallerFramework-win-x86\bin\installerbase.exe https://github.com/podsvirov/installer-framework/releases/download/cr203958-9/QtInstallerFramework-win-x86.zip - f2ce23cf5cf9fc7ce409bdca49328e09a070c0026d3c8a04e4dfde7b05b83fe8 + 1f3e593270d7c2a4e271fdb49c637a2de462351310ef66bba298d30f6ca23365ec6aecf2e57799a00c873267cd3f92060ecac03eb291d42903d0e0869cd17c73 QtInstallerFramework-win-x86.zip 18.01.0 7za.exe https://www.7-zip.org/a/7z1801-extra.7z - 9371df22bcd0e1aff9eaa52aa3292350eecd011f11494e709314ae3f3eb279e2 + 9133fc551d76515e37fdd4dd8c1e28d464aea493548246b44565a42bba46715764f41f9cfa14d470d298c3a6e9829d200f8be5168cb67cf8f23d8042fca833bc 7z1801-extra.7z 9.20.0 7za.exe https://www.7-zip.org/a/7za920.zip - 2a3afe19c180f8373fa02ff00254d5394fec0349f5804e0ad2f6067854ff28ac + 84e830c91a0e8ae499cc4814080da6569d8a6acbddc585c8b62abc86c809793aeb669b0a741063a379fd281ade85f120bc27efeb67d63bf961be893eec8bc3b3 7za920.zip 18.01.0 aria2-1.33.1-win-32bit-build1\aria2c.exe https://github.com/aria2/aria2/releases/download/release-1.33.1/aria2-1.33.1-win-32bit-build1.zip - 04bf07c0449c703db17fbcd586365aebba00201ca513ca4808b543f1f9208f1f + 2456176ba3d506a07cf0cc4f61f080e1ff8cb4106426d66f354c5bb67a9a8720b5ddb26904275e61b1f623c932355f7dcde4cd17556cc895f11293c23c3a9bf3 aria2-1.33.1-win-32bit-build1.zip 1.8.2 ninja https://github.com/ninja-build/ninja/releases/download/v1.8.2/ninja-linux.zip - d2fea9ff33b3ef353161ed906f260d565ca55b8ca0568fa07b1d2cab90a84a07 + 38fcb68e745c1f15b4b50f20069ffe686b1ef5baf93b74958e132ea5d30d155cf6970d6dc1b095aafd421ebd8bcc63acf4f64e305c496266b5182f99b815cca5 ninja-linux.zip 1.8.2 ninja https://github.com/ninja-build/ninja/releases/download/v1.8.2/ninja-mac.zip - 0347d55c66061652b26f48769d566761630ffde3143793b29064a57f356542cc + acadfb286eb7d93676629701917fa0c3c39f36daa068c169e4a098c29f97380d1ea95abfd42b04798ff118fd9dc93fdb250fcda36086bac20bc5506354214fc3 ninja-mac.zip -- cgit v1.2.3 From 408cd5ccb8d8260efd9a8f2ff956414587d42e28 Mon Sep 17 00:00:00 2001 From: Alexander Karatarakis Date: Wed, 4 Apr 2018 20:33:45 -0700 Subject: [vcpkgTools.xml] requiredVersion -> version --- scripts/fetchTool.ps1 | 2 +- scripts/vcpkgTools.xml | 24 ++++++++++++------------ toolsrc/src/vcpkg/commands.fetch.cpp | 18 +++++++++--------- 3 files changed, 22 insertions(+), 22 deletions(-) diff --git a/scripts/fetchTool.ps1 b/scripts/fetchTool.ps1 index d5c8fe77e..55d04ec98 100644 --- a/scripts/fetchTool.ps1 +++ b/scripts/fetchTool.ps1 @@ -25,7 +25,7 @@ function fetchToolInternal([Parameter(Mandatory=$true)][string]$tool) throw "Unkown tool $tool" } - $toolPath="$downloadsDir\tools\$tool-$($toolData.requiredVersion)-windows" + $toolPath="$downloadsDir\tools\$tool-$($toolData.version)-windows" $exePath = "$toolPath\$($toolData.exeRelativePath)" if (Test-Path $exePath) diff --git a/scripts/vcpkgTools.xml b/scripts/vcpkgTools.xml index c3114c2e5..07284333c 100644 --- a/scripts/vcpkgTools.xml +++ b/scripts/vcpkgTools.xml @@ -1,82 +1,82 @@ - 3.10.2 + 3.10.2 cmake-3.10.2-win32-x86\bin\cmake.exe https://cmake.org/files/v3.10/cmake-3.10.2-win32-x86.zip 9c16861a2ac09c7011b84f38459ecfec2829a9f825b254acbbde46d98f12f8ca0d4db3a6764758cb671507ee7c0327576d87658b81d7ddf1e8280b37569eb16d cmake-3.10.2-win32-x86.zip - 3.10.2 + 3.10.2 cmake-3.10.2-Darwin-x86_64/CMake.app/Contents/bin/cmake https://cmake.org/files/v3.10/cmake-3.10.2-Darwin-x86_64.tar.gz cb7d76e11c892eb786da5804282c4141564390c3552e08c506c7abb93015eb5f619c55255459872b219399ce8114ac321fe92df7f82a7e42bbc874eec240571e cmake-3.10.2-Darwin-x86_64.tar.gz - 3.10.2 + 3.10.2 cmake-3.10.2-Linux-x86_64/bin/cmake https://cmake.org/files/v3.10/cmake-3.10.2-Linux-x86_64.tar.gz 54389b5cb3f3cb9d182d35e0b1eaf7b301695899930da0d26e9df1dc25056213a077646d23ea609a93daa81d30687757d9cf0dc263339fa3d73dbeb1284bc1a9 cmake-3.10.2-Linux-x86_64.tar.gz - 2.16.2 + 2.16.2 cmd\git.exe https://github.com/git-for-windows/git/releases/download/v2.16.2.windows.1/MinGit-2.16.2-32-bit.zip 004e1dc1904f2e2d5c3534d0a56f58bf030b1146f5b263d6d191e60f72cd35455977c588604708125a1e93268ee8f7a5ab32ed6115adc028257b12d5926f350a MinGit-2.16.2-32-bit.zip - 2.3.2 + 2.3.2 vswhere.exe https://github.com/Microsoft/vswhere/releases/download/2.3.2/vswhere.exe 42f8a8ffd0b156b2e30b2ec7bf7d19582b3ce38a2046ff62bd7fd82f12a8d66ed601e74865957864cef0a376e33a7d07cad746f03c57d1b95a7929a1f8f119ed - 4.4.0 + 4.4.0 nuget.exe https://dist.nuget.org/win-x86-commandline/v4.4.0/nuget.exe fb0903665d2a64ce1da3f40961eb19e46c152a631b2441750aa8b30b20acd2a5e78d7f1058e79e83e37959b3ce9a090a60f081895fdba9998715e3a64437c3e5 - 3.1.81 + 3.1.81 QtInstallerFramework-win-x86\bin\installerbase.exe https://github.com/podsvirov/installer-framework/releases/download/cr203958-9/QtInstallerFramework-win-x86.zip 1f3e593270d7c2a4e271fdb49c637a2de462351310ef66bba298d30f6ca23365ec6aecf2e57799a00c873267cd3f92060ecac03eb291d42903d0e0869cd17c73 QtInstallerFramework-win-x86.zip - 18.01.0 + 18.01.0 7za.exe https://www.7-zip.org/a/7z1801-extra.7z 9133fc551d76515e37fdd4dd8c1e28d464aea493548246b44565a42bba46715764f41f9cfa14d470d298c3a6e9829d200f8be5168cb67cf8f23d8042fca833bc 7z1801-extra.7z - 9.20.0 + 9.20.0 7za.exe https://www.7-zip.org/a/7za920.zip 84e830c91a0e8ae499cc4814080da6569d8a6acbddc585c8b62abc86c809793aeb669b0a741063a379fd281ade85f120bc27efeb67d63bf961be893eec8bc3b3 7za920.zip - 18.01.0 + 18.01.0 aria2-1.33.1-win-32bit-build1\aria2c.exe https://github.com/aria2/aria2/releases/download/release-1.33.1/aria2-1.33.1-win-32bit-build1.zip 2456176ba3d506a07cf0cc4f61f080e1ff8cb4106426d66f354c5bb67a9a8720b5ddb26904275e61b1f623c932355f7dcde4cd17556cc895f11293c23c3a9bf3 aria2-1.33.1-win-32bit-build1.zip - 1.8.2 + 1.8.2 ninja https://github.com/ninja-build/ninja/releases/download/v1.8.2/ninja-linux.zip 38fcb68e745c1f15b4b50f20069ffe686b1ef5baf93b74958e132ea5d30d155cf6970d6dc1b095aafd421ebd8bcc63acf4f64e305c496266b5182f99b815cca5 ninja-linux.zip - 1.8.2 + 1.8.2 ninja https://github.com/ninja-build/ninja/releases/download/v1.8.2/ninja-mac.zip acadfb286eb7d93676629701917fa0c3c39f36daa068c169e4a098c29f97380d1ea95abfd42b04798ff118fd9dc93fdb250fcda36086bac20bc5506354214fc3 diff --git a/toolsrc/src/vcpkg/commands.fetch.cpp b/toolsrc/src/vcpkg/commands.fetch.cpp index 90b408cc0..a82f31724 100644 --- a/toolsrc/src/vcpkg/commands.fetch.cpp +++ b/toolsrc/src/vcpkg/commands.fetch.cpp @@ -15,7 +15,7 @@ namespace vcpkg::Commands::Fetch struct ToolData { - std::array required_version; + std::array version; fs::path exe_path; std::string url; fs::path downloaded_path; @@ -73,7 +73,7 @@ namespace vcpkg::Commands::Fetch static const std::regex XML_VERSION_REGEX{R"###()###"}; static const std::string XML = paths.get_filesystem().read_contents(XML_PATH).value_or_exit(VCPKG_LINE_INFO); - static const std::regex VERSION_REGEX{R"###(([\s\S]*?))###"}; + static const std::regex VERSION_REGEX{R"###(([\s\S]*?))###"}; static const std::regex EXE_RELATIVE_PATH_REGEX{ Strings::format(R"###(([\s\S]*?))###")}; static const std::regex ARCHIVE_NAME_REGEX{Strings::format(R"###(([\s\S]*?))###")}; @@ -104,7 +104,7 @@ namespace vcpkg::Commands::Fetch const std::string tool_data_as_string = get_string_inside_tags(XML, tool_regex, tool); const std::string required_version_as_string = - get_string_inside_tags(tool_data_as_string, VERSION_REGEX, "requiredVersion"); + get_string_inside_tags(tool_data_as_string, VERSION_REGEX, "version"); const std::string url = get_string_inside_tags(tool_data_as_string, URL_REGEX, "url"); @@ -220,7 +220,7 @@ namespace vcpkg::Commands::Fetch { const auto& fs = paths.get_filesystem(); const fs::path& scripts_folder = paths.scripts; - const std::array& version = tool_data.required_version; + const std::array& version = tool_data.version; const std::string version_as_string = Strings::format("%d.%d.%d", version[0], version[1], version[2]); System::println("A suitable version of %s was not found (required v%s). Downloading portable %s v%s...", @@ -289,7 +289,7 @@ namespace vcpkg::Commands::Fetch if (const auto pf = program_files_32_bit.get()) candidate_paths.push_back(*pf / "CMake" / "bin" / "cmake.exe"); const Optional path = - find_if_has_equal_or_greater_version(candidate_paths, VERSION_CHECK_ARGUMENTS, TOOL_DATA.required_version); + find_if_has_equal_or_greater_version(candidate_paths, VERSION_CHECK_ARGUMENTS, TOOL_DATA.version); if (const auto p = path.get()) { return *p; @@ -321,7 +321,7 @@ namespace vcpkg::Commands::Fetch const std::vector from_path = Files::find_from_PATH("ninja"); candidate_paths.insert(candidate_paths.end(), from_path.cbegin(), from_path.cend()); - auto path = find_if_has_equal_or_greater_version(candidate_paths, "--version", TOOL_DATA.required_version); + auto path = find_if_has_equal_or_greater_version(candidate_paths, "--version", TOOL_DATA.version); if (const auto p = path.get()) { return *p; @@ -339,7 +339,7 @@ namespace vcpkg::Commands::Fetch const std::vector from_path = Files::find_from_PATH("nuget"); candidate_paths.insert(candidate_paths.end(), from_path.cbegin(), from_path.cend()); - auto path = find_if_has_equal_or_greater_version(candidate_paths, "", TOOL_DATA.required_version); + auto path = find_if_has_equal_or_greater_version(candidate_paths, "", TOOL_DATA.version); if (const auto p = path.get()) { return *p; @@ -370,7 +370,7 @@ namespace vcpkg::Commands::Fetch if (const auto pf = program_files_32_bit.get()) candidate_paths.push_back(*pf / "git" / "cmd" / "git.exe"); const Optional path = - find_if_has_equal_or_greater_version(candidate_paths, VERSION_CHECK_ARGUMENTS, TOOL_DATA.required_version); + find_if_has_equal_or_greater_version(candidate_paths, VERSION_CHECK_ARGUMENTS, TOOL_DATA.version); if (const auto p = path.get()) { return *p; @@ -396,7 +396,7 @@ namespace vcpkg::Commands::Fetch // "QtIFW-3.1.0" / "bin" / "installerbase.exe"); const Optional path = - find_if_has_equal_or_greater_version(candidate_paths, VERSION_CHECK_ARGUMENTS, TOOL_DATA.required_version); + find_if_has_equal_or_greater_version(candidate_paths, VERSION_CHECK_ARGUMENTS, TOOL_DATA.version); if (const auto p = path.get()) { return *p; -- cgit v1.2.3 From 540ab527894f96a57682dc4bca2a08548221b762 Mon Sep 17 00:00:00 2001 From: Alexander Karatarakis Date: Wed, 4 Apr 2018 20:47:58 -0700 Subject: Fix #ifdef'ed references to get_tool_exe() --- toolsrc/src/vcpkg/build.cpp | 2 +- toolsrc/src/vcpkg/commands.hash.cpp | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/toolsrc/src/vcpkg/build.cpp b/toolsrc/src/vcpkg/build.cpp index 86d171534..b7055100b 100644 --- a/toolsrc/src/vcpkg/build.cpp +++ b/toolsrc/src/vcpkg/build.cpp @@ -338,7 +338,7 @@ namespace vcpkg::Build #if !defined(_WIN32) // TODO: remove when vcpkg.exe is in charge for acquiring tools. Change introduced in vcpkg v0.0.107. // bootstrap should have already downloaded ninja, but making sure it is present in case it was deleted. - vcpkg::Util::unused(paths.get_ninja_exe()); + vcpkg::Util::unused(paths.get_tool_exe(Tools::NINJA)); #endif const fs::path& cmake_exe_path = paths.get_tool_exe(Tools::CMAKE); diff --git a/toolsrc/src/vcpkg/commands.hash.cpp b/toolsrc/src/vcpkg/commands.hash.cpp index 9e1b54390..517970b2c 100644 --- a/toolsrc/src/vcpkg/commands.hash.cpp +++ b/toolsrc/src/vcpkg/commands.hash.cpp @@ -112,7 +112,7 @@ namespace vcpkg::Commands::Hash { const std::string cmd_line = Strings::format( R"("%s" -E %ssum "%s")", - paths.get_cmake_exe().u8string(), + paths.get_tool_exe(Tools::CMAKE).u8string(), Strings::ascii_to_lowercase(hash_type), path.u8string()); -- cgit v1.2.3 From ab9dd6e6eb85331631ba41f16b04c21e292c93d1 Mon Sep 17 00:00:00 2001 From: Alexander Karatarakis Date: Wed, 4 Apr 2018 20:56:55 -0700 Subject: [find_acquire] Extract variable --- scripts/cmake/vcpkg_find_acquire_program.cmake | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/scripts/cmake/vcpkg_find_acquire_program.cmake b/scripts/cmake/vcpkg_find_acquire_program.cmake index ef0e1584f..3f0142377 100644 --- a/scripts/cmake/vcpkg_find_acquire_program.cmake +++ b/scripts/cmake/vcpkg_find_acquire_program.cmake @@ -218,19 +218,20 @@ function(vcpkg_find_acquire_program VAR) FILENAME ${ARCHIVE} ) - file(MAKE_DIRECTORY ${DOWNLOADS}/tools/${PROGNAME}/${SUBDIR}) + set(PROG_PATH_SUBDIR "${DOWNLOADS}/tools/${PROGNAME}/${SUBDIR}") + file(MAKE_DIRECTORY ${PROG_PATH_SUBDIR}) if(DEFINED NOEXTRACT) if(DEFINED _vfa_RENAME) - file(INSTALL ${ARCHIVE_PATH} DESTINATION ${DOWNLOADS}/tools/${PROGNAME}/${SUBDIR} RENAME ${_vfa_RENAME}) + file(INSTALL ${ARCHIVE_PATH} DESTINATION ${PROG_PATH_SUBDIR} RENAME ${_vfa_RENAME}) else() - file(COPY ${ARCHIVE_PATH} DESTINATION ${DOWNLOADS}/tools/${PROGNAME}/${SUBDIR}) + file(COPY ${ARCHIVE_PATH} DESTINATION ${PROG_PATH_SUBDIR}) endif() else() get_filename_component(ARCHIVE_EXTENSION ${ARCHIVE} EXT) string(TOLOWER "${ARCHIVE_EXTENSION}" ARCHIVE_EXTENSION) if(ARCHIVE_EXTENSION STREQUAL ".msi") file(TO_NATIVE_PATH "${ARCHIVE_PATH}" ARCHIVE_NATIVE_PATH) - file(TO_NATIVE_PATH "${DOWNLOADS}/tools/${PROGNAME}/${SUBDIR}" DESTINATION_NATIVE_PATH) + file(TO_NATIVE_PATH "${PROG_PATH_SUBDIR}" DESTINATION_NATIVE_PATH) execute_process( COMMAND msiexec /a ${ARCHIVE_NATIVE_PATH} /qn TARGETDIR=${DESTINATION_NATIVE_PATH} WORKING_DIRECTORY ${DOWNLOADS} @@ -238,7 +239,7 @@ function(vcpkg_find_acquire_program VAR) else() execute_process( COMMAND ${CMAKE_COMMAND} -E tar xzf ${ARCHIVE_PATH} - WORKING_DIRECTORY ${DOWNLOADS}/tools/${PROGNAME}/${SUBDIR} + WORKING_DIRECTORY ${PROG_PATH_SUBDIR} ) endif() endif() -- cgit v1.2.3 From e6ed2f89027bd35744f0522c49643449ee12ee33 Mon Sep 17 00:00:00 2001 From: Alexander Karatarakis Date: Wed, 4 Apr 2018 20:58:50 -0700 Subject: [find_acquire] Fix ninja path --- scripts/cmake/vcpkg_find_acquire_program.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scripts/cmake/vcpkg_find_acquire_program.cmake b/scripts/cmake/vcpkg_find_acquire_program.cmake index 3f0142377..30ecb0573 100644 --- a/scripts/cmake/vcpkg_find_acquire_program.cmake +++ b/scripts/cmake/vcpkg_find_acquire_program.cmake @@ -116,7 +116,7 @@ function(vcpkg_find_acquire_program VAR) if(CMAKE_HOST_WIN32) set(PATHS "${DOWNLOADS}/tools/ninja/${SUBDIR}") else() - set(PATHS "${DOWNLOADS}/tools/${SUBDIR}") + set(PATHS "${DOWNLOADS}/tools/${SUBDIR}-linux") endif() set(BREW_PACKAGE_NAME "ninja") set(APT_PACKAGE_NAME "ninja-build") -- cgit v1.2.3 From 0108d6ea2808adea5fe7ce97f6871b59a0fadb1d Mon Sep 17 00:00:00 2001 From: Alexander Karatarakis Date: Wed, 4 Apr 2018 21:47:50 -0700 Subject: Disable vcpkg fetch for now --- toolsrc/src/vcpkg/commands.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/toolsrc/src/vcpkg/commands.cpp b/toolsrc/src/vcpkg/commands.cpp index e98ff711a..c6b700aae 100644 --- a/toolsrc/src/vcpkg/commands.cpp +++ b/toolsrc/src/vcpkg/commands.cpp @@ -43,7 +43,7 @@ namespace vcpkg::Commands {"portsdiff", &PortsDiff::perform_and_exit}, {"autocomplete", &Autocomplete::perform_and_exit}, {"hash", &Hash::perform_and_exit}, - {"fetch", &Fetch::perform_and_exit}, + // {"fetch", &Fetch::perform_and_exit}, }; return t; } -- cgit v1.2.3 From b217246f70fd6ac8f8d093b4457ae9035a2dd954 Mon Sep 17 00:00:00 2001 From: Alexander Karatarakis Date: Wed, 4 Apr 2018 22:01:08 -0700 Subject: [vcpkg.exe] Hash check after downloading a tool --- toolsrc/src/vcpkg/commands.fetch.cpp | 19 ++++++++++++++++++- 1 file changed, 18 insertions(+), 1 deletion(-) diff --git a/toolsrc/src/vcpkg/commands.fetch.cpp b/toolsrc/src/vcpkg/commands.fetch.cpp index a82f31724..33fa74c62 100644 --- a/toolsrc/src/vcpkg/commands.fetch.cpp +++ b/toolsrc/src/vcpkg/commands.fetch.cpp @@ -20,6 +20,7 @@ namespace vcpkg::Commands::Fetch std::string url; fs::path downloaded_path; fs::path tool_dir_path; + std::string sha512; }; static Optional> parse_version_string(const std::string& version_as_string) @@ -78,6 +79,7 @@ namespace vcpkg::Commands::Fetch Strings::format(R"###(([\s\S]*?))###")}; static const std::regex ARCHIVE_NAME_REGEX{Strings::format(R"###(([\s\S]*?))###")}; static const std::regex URL_REGEX{Strings::format(R"###(([\s\S]*?))###")}; + static const std::regex SHA512_REGEX{Strings::format(R"###(([\s\S]*?))###")}; std::smatch match_xml_version; const bool has_xml_version = std::regex_search(XML.cbegin(), XML.cend(), match_xml_version, XML_VERSION_REGEX); @@ -123,11 +125,15 @@ namespace vcpkg::Commands::Fetch const std::string tool_dir_name = Strings::format("%s-%s-%s", tool, required_version_as_string, OS_STRING); const fs::path tool_dir_path = paths.downloads / "tools" / tool_dir_name; const fs::path exe_path = tool_dir_path / exe_relative_path; + + const std::string sha512 = get_string_inside_tags(tool_data_as_string, SHA512_REGEX, "sha512"); + return ToolData{*required_version.get(), exe_path, url, paths.downloads / archive_name.value_or(exe_relative_path), - tool_dir_path}; + tool_dir_path, + sha512}; } static bool exists_and_has_equal_or_greater_version(const std::string& version_cmd, @@ -256,6 +262,17 @@ namespace vcpkg::Commands::Fetch Checks::check_exit(VCPKG_LINE_INFO, code == 0, "curl failed while downloading %s", tool_data.url); } + const std::string actual_hash = Hash::get_file_hash(paths, tool_data.downloaded_path, "SHA512"); + Checks::check_exit(VCPKG_LINE_INFO, + tool_data.sha512 == actual_hash, + "File does not have the expected hash:\n" + " File path : [ %s ]\n" + " Expected hash: [ %s ]\n" + " Actual hash: [ %s ] \n", + tool_data.downloaded_path.u8string(), + tool_data.sha512, + actual_hash); + System::println("Extracting %s...", tool_name); extract_archive(paths, tool_data.downloaded_path, tool_data.tool_dir_path); System::println("Extracting %s... done.", tool_name); -- cgit v1.2.3 From 5b78dfaf68d33c2444437f92d253d7fa912152ec Mon Sep 17 00:00:00 2001 From: Alexander Karatarakis Date: Wed, 4 Apr 2018 22:13:12 -0700 Subject: [fetchTool] Extract aria2 with shell --- scripts/fetchTool.ps1 | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/scripts/fetchTool.ps1 b/scripts/fetchTool.ps1 index 55d04ec98..c076d304a 100644 --- a/scripts/fetchTool.ps1 +++ b/scripts/fetchTool.ps1 @@ -48,8 +48,8 @@ function fetchToolInternal([Parameter(Mandatory=$true)][string]$tool) { Write-Host "Downloading $tool..." - # aria2 needs 7zip & 7zip920 to extract. So, we need to download those trough powershell - if ($tool -eq "aria2" -or $tool -eq "7zip" -or $tool -eq "7zip920") + # Download aria2 with .NET. aria2 will be used to download everything else. + if ($tool -eq "aria2") { vcpkgDownloadFile $url $downloadPath } @@ -69,7 +69,9 @@ function fetchToolInternal([Parameter(Mandatory=$true)][string]$tool) if ($isArchive) { Write-Host "Extracting $tool..." - if ($tool -eq "7zip920") + # Extract 7zip920 with shell because we need it to extract 7zip + # Extract aria2 with shell because we need it to download 7zip + if ($tool -eq "7zip920" -or $tool -eq "aria2") { vcpkgExtractZipFileWithShell -ArchivePath $downloadPath -DestinationDir $toolPath } -- cgit v1.2.3 From 3a9be92f7e9cb867eaef4091ace282e4c8e82b92 Mon Sep 17 00:00:00 2001 From: Alexander Karatarakis Date: Thu, 5 Apr 2018 03:16:22 -0700 Subject: [fetchTool.ps1] Move downloaded file in place after hash check --- scripts/VcpkgPowershellUtils.ps1 | 19 +++++++++++++++---- scripts/fetchTool.ps1 | 8 ++------ 2 files changed, 17 insertions(+), 10 deletions(-) diff --git a/scripts/VcpkgPowershellUtils.ps1 b/scripts/VcpkgPowershellUtils.ps1 index 676ee5c03..63069f44d 100644 --- a/scripts/VcpkgPowershellUtils.ps1 +++ b/scripts/VcpkgPowershellUtils.ps1 @@ -103,22 +103,25 @@ function vcpkgGetSHA512([Parameter(Mandatory=$true)][string]$filePath) return $hash.ToLower() } -function vcpkgCheckEqualFileHash( [Parameter(Mandatory=$true)][string]$filePath, +function vcpkgCheckEqualFileHash( [Parameter(Mandatory=$true)][string]$url, + [Parameter(Mandatory=$true)][string]$filePath, [Parameter(Mandatory=$true)][string]$expectedHash, [Parameter(Mandatory=$true)][string]$actualHash) { if ($expectedHash -ne $actualHash) { Write-Host ("`nFile does not have expected hash:`n" + + " url: [ $url ]`n" + " File path: [ $filePath ]`n" + " Expected hash: [ $expectedHash ]`n" + " Actual hash: [ $actualHash ]`n") - throw "Invalid Hash for file $filePath" + throw } } function vcpkgDownloadFile( [Parameter(Mandatory=$true)][string]$url, - [Parameter(Mandatory=$true)][string]$downloadPath) + [Parameter(Mandatory=$true)][string]$downloadPath, + [Parameter(Mandatory=$true)][string]$sha512) { if (Test-Path $downloadPath) { @@ -152,12 +155,17 @@ function vcpkgDownloadFile( [Parameter(Mandatory=$true)][string]$url, } $wc.DownloadFile($url, $downloadPartPath) + + $actualHash = vcpkgGetSHA512 $downloadPartPath + vcpkgCheckEqualFileHash -url $url -filePath $downloadPath -expectedHash $sha512 -actualHash $actualHash + Move-Item -Path $downloadPartPath -Destination $downloadPath } function vcpkgDownloadFileWithAria2( [Parameter(Mandatory=$true)][string]$aria2exe, [Parameter(Mandatory=$true)][string]$url, - [Parameter(Mandatory=$true)][string]$downloadPath) + [Parameter(Mandatory=$true)][string]$downloadPath, + [Parameter(Mandatory=$true)][string]$sha512) { if (Test-Path $downloadPath) { @@ -178,6 +186,9 @@ function vcpkgDownloadFileWithAria2( [Parameter(Mandatory=$true)][string]$ari throw } + $actualHash = vcpkgGetSHA512 $downloadPartPath + vcpkgCheckEqualFileHash -url $url -filePath $downloadPath -expectedHash $sha512 -actualHash $actualHash + Move-Item -Path $downloadPartPath -Destination $downloadPath } diff --git a/scripts/fetchTool.ps1 b/scripts/fetchTool.ps1 index c076d304a..c1e8d87fc 100644 --- a/scripts/fetchTool.ps1 +++ b/scripts/fetchTool.ps1 @@ -51,21 +51,17 @@ function fetchToolInternal([Parameter(Mandatory=$true)][string]$tool) # Download aria2 with .NET. aria2 will be used to download everything else. if ($tool -eq "aria2") { - vcpkgDownloadFile $url $downloadPath + vcpkgDownloadFile $url $downloadPath $toolData.sha512 } else { $aria2exe = fetchToolInternal "aria2" - vcpkgDownloadFileWithAria2 $aria2exe $url $downloadPath + vcpkgDownloadFileWithAria2 $aria2exe $url $downloadPath $toolData.sha512 } Write-Host "Downloading $tool... done." } - $expectedDownloadedFileHash = $toolData.sha512 - $downloadedFileHash = vcpkgGetSHA512 $downloadPath - vcpkgCheckEqualFileHash -filePath $downloadPath -expectedHash $expectedDownloadedFileHash -actualHash $downloadedFileHash - if ($isArchive) { Write-Host "Extracting $tool..." -- cgit v1.2.3 From 7cfc53a45e53476ff93406644c82c4f15563f67b Mon Sep 17 00:00:00 2001 From: Alexander Karatarakis Date: Thu, 5 Apr 2018 03:37:04 -0700 Subject: [vcpkg.exe] Move downloaded file in place after hash check --- toolsrc/src/vcpkg/commands.fetch.cpp | 59 +++++++++++++++++++++++++----------- 1 file changed, 41 insertions(+), 18 deletions(-) diff --git a/toolsrc/src/vcpkg/commands.fetch.cpp b/toolsrc/src/vcpkg/commands.fetch.cpp index 33fa74c62..e369f44d2 100644 --- a/toolsrc/src/vcpkg/commands.fetch.cpp +++ b/toolsrc/src/vcpkg/commands.fetch.cpp @@ -18,7 +18,7 @@ namespace vcpkg::Commands::Fetch std::array version; fs::path exe_path; std::string url; - fs::path downloaded_path; + fs::path download_path; fs::path tool_dir_path; std::string sha512; }; @@ -219,7 +219,41 @@ namespace vcpkg::Commands::Fetch Checks::exit_with_message(VCPKG_LINE_INFO, "Unexpected archive extension: %s", ext.u8string()); } - fs.rename(to_path_partial, to_path); + fs.rename(to_path_partial, to_path, ec); + } + + static void download_file(const VcpkgPaths& paths, + const std::string& url, + const fs::path& download_path, + const std::string& sha512) + { + Files::Filesystem& fs = paths.get_filesystem(); + if (fs.exists(download_path)) + { + return; + } + + const std::string download_path_part = download_path.u8string() + ".part"; + std::error_code ec; + fs.remove(download_path_part, ec); + const auto code = System::cmd_execute(Strings::format( + R"(curl -L '%s' --create-dirs --output '%s')", url, download_path_part)); + Checks::check_exit(VCPKG_LINE_INFO, code == 0, "Could not download %s", url); + + const std::string actual_hash = Hash::get_file_hash(paths, download_path_part, "SHA512"); + Checks::check_exit(VCPKG_LINE_INFO, + sha512 == actual_hash, + "File does not have the expected hash:\n" + " url : [ %s ]\n" + " File path : [ %s ]\n" + " Expected hash: [ %s ]\n" + " Actual hash: [ %s ] \n", + url, + download_path.u8string(), + sha512, + actual_hash); + + fs.rename(download_path_part, download_path, ec); } static fs::path fetch_tool(const VcpkgPaths& paths, const std::string& tool_name, const ToolData& tool_data) @@ -255,26 +289,15 @@ namespace vcpkg::Commands::Fetch actual_downloaded_path.u8string()); return actual_downloaded_path; #else - if (!fs.exists(tool_data.downloaded_path)) + if (!fs.exists(tool_data.download_path)) { - auto code = System::cmd_execute(Strings::format( - R"(curl -L '%s' --create-dirs --output '%s')", tool_data.url, tool_data.downloaded_path)); - Checks::check_exit(VCPKG_LINE_INFO, code == 0, "curl failed while downloading %s", tool_data.url); + System::println("Downloading %s...", tool_name); + download_file(paths, tool_data.url, tool_data.download_path, tool_data.sha512); + System::println("Downloading %s... done.", tool_name); } - const std::string actual_hash = Hash::get_file_hash(paths, tool_data.downloaded_path, "SHA512"); - Checks::check_exit(VCPKG_LINE_INFO, - tool_data.sha512 == actual_hash, - "File does not have the expected hash:\n" - " File path : [ %s ]\n" - " Expected hash: [ %s ]\n" - " Actual hash: [ %s ] \n", - tool_data.downloaded_path.u8string(), - tool_data.sha512, - actual_hash); - System::println("Extracting %s...", tool_name); - extract_archive(paths, tool_data.downloaded_path, tool_data.tool_dir_path); + extract_archive(paths, tool_data.download_path, tool_data.tool_dir_path); System::println("Extracting %s... done.", tool_name); Checks::check_exit(VCPKG_LINE_INFO, -- cgit v1.2.3 From 870fa61e0132028f43c292b7fd7a7d7c6525a8d7 Mon Sep 17 00:00:00 2001 From: Alexander Karatarakis Date: Thu, 5 Apr 2018 04:29:43 -0700 Subject: [vcpkg hash] Don't use cmake for non-windows hashes. Use shasum instead --- toolsrc/include/vcpkg/commands.h | 4 ++-- toolsrc/src/vcpkg/build.cpp | 8 +++---- toolsrc/src/vcpkg/commands.cpp | 8 ++++--- toolsrc/src/vcpkg/commands.fetch.cpp | 2 +- toolsrc/src/vcpkg/commands.hash.cpp | 43 ++++++++++++++++-------------------- 5 files changed, 31 insertions(+), 34 deletions(-) diff --git a/toolsrc/include/vcpkg/commands.h b/toolsrc/include/vcpkg/commands.h index f6f1de626..65e7fdd14 100644 --- a/toolsrc/include/vcpkg/commands.h +++ b/toolsrc/include/vcpkg/commands.h @@ -131,8 +131,8 @@ namespace vcpkg::Commands namespace Hash { - void perform_and_exit(const VcpkgCmdArguments& args, const VcpkgPaths& paths); - std::string get_file_hash(const VcpkgPaths& paths, fs::path const& path, std::string const& hash_type); + void perform_and_exit(const VcpkgCmdArguments& args); + std::string get_file_hash(fs::path const& path, std::string const& hash_type); } namespace Fetch diff --git a/toolsrc/src/vcpkg/build.cpp b/toolsrc/src/vcpkg/build.cpp index b7055100b..16a85db52 100644 --- a/toolsrc/src/vcpkg/build.cpp +++ b/toolsrc/src/vcpkg/build.cpp @@ -457,9 +457,9 @@ namespace vcpkg::Build abi_tag_entries.insert(abi_tag_entries.end(), dependency_abis.begin(), dependency_abis.end()); abi_tag_entries.emplace_back( - AbiEntry{"portfile", Commands::Hash::get_file_hash(paths, config.port_dir / "portfile.cmake", "SHA1")}); + AbiEntry{"portfile", Commands::Hash::get_file_hash(config.port_dir / "portfile.cmake", "SHA1")}); abi_tag_entries.emplace_back( - AbiEntry{"control", Commands::Hash::get_file_hash(paths, config.port_dir / "CONTROL", "SHA1")}); + AbiEntry{"control", Commands::Hash::get_file_hash(config.port_dir / "CONTROL", "SHA1")}); abi_tag_entries.emplace_back(AbiEntry{"triplet", pre_build_info.triplet_abi_tag}); @@ -494,7 +494,7 @@ namespace vcpkg::Build auto abi_file_path = paths.buildtrees / name / (triplet.canonical_name() + ".vcpkg_abi_info.txt"); fs.write_contents(abi_file_path, full_abi_info); - return AbiTagAndFile{Commands::Hash::get_file_hash(paths, abi_file_path, "SHA1"), abi_file_path}; + return AbiTagAndFile{Commands::Hash::get_file_hash(abi_file_path, "SHA1"), abi_file_path}; } else { @@ -784,7 +784,7 @@ namespace vcpkg::Build { return it_hash->second; } - auto hash = Commands::Hash::get_file_hash(paths, triplet_file_path, "SHA1"); + auto hash = Commands::Hash::get_file_hash(triplet_file_path, "SHA1"); s_hash_cache.emplace(triplet_file_path, hash); return hash; } diff --git a/toolsrc/src/vcpkg/commands.cpp b/toolsrc/src/vcpkg/commands.cpp index c6b700aae..9041b37ff 100644 --- a/toolsrc/src/vcpkg/commands.cpp +++ b/toolsrc/src/vcpkg/commands.cpp @@ -42,7 +42,6 @@ namespace vcpkg::Commands {"cache", &Cache::perform_and_exit}, {"portsdiff", &PortsDiff::perform_and_exit}, {"autocomplete", &Autocomplete::perform_and_exit}, - {"hash", &Hash::perform_and_exit}, // {"fetch", &Fetch::perform_and_exit}, }; return t; @@ -50,8 +49,11 @@ namespace vcpkg::Commands Span> get_available_commands_type_c() { - static std::vector> t = {{"version", &Version::perform_and_exit}, - {"contact", &Contact::perform_and_exit}}; + static std::vector> t = { + {"version", &Version::perform_and_exit}, + {"contact", &Contact::perform_and_exit}, + {"hash", &Hash::perform_and_exit}, + }; return t; } } diff --git a/toolsrc/src/vcpkg/commands.fetch.cpp b/toolsrc/src/vcpkg/commands.fetch.cpp index e369f44d2..1ba043728 100644 --- a/toolsrc/src/vcpkg/commands.fetch.cpp +++ b/toolsrc/src/vcpkg/commands.fetch.cpp @@ -240,7 +240,7 @@ namespace vcpkg::Commands::Fetch R"(curl -L '%s' --create-dirs --output '%s')", url, download_path_part)); Checks::check_exit(VCPKG_LINE_INFO, code == 0, "Could not download %s", url); - const std::string actual_hash = Hash::get_file_hash(paths, download_path_part, "SHA512"); + const std::string actual_hash = Hash::get_file_hash(download_path_part, "SHA512"); Checks::check_exit(VCPKG_LINE_INFO, sha512 == actual_hash, "File does not have the expected hash:\n" diff --git a/toolsrc/src/vcpkg/commands.hash.cpp b/toolsrc/src/vcpkg/commands.hash.cpp index 517970b2c..087f3e682 100644 --- a/toolsrc/src/vcpkg/commands.hash.cpp +++ b/toolsrc/src/vcpkg/commands.hash.cpp @@ -60,7 +60,7 @@ namespace vcpkg::Commands::Hash }; } - std::string get_file_hash(const VcpkgPaths&, const fs::path& path, const std::string& hash_type) + std::string get_file_hash(const fs::path& path, const std::string& hash_type) { BCryptAlgorithmHandle algorithm_handle; @@ -108,30 +108,25 @@ namespace vcpkg::Commands::Hash #else namespace vcpkg::Commands::Hash { - std::string get_file_hash(const VcpkgPaths& paths, const fs::path& path, const std::string& hash_type) + std::string get_file_hash(const fs::path& path, const std::string& hash_type) { - const std::string cmd_line = Strings::format( - R"("%s" -E %ssum "%s")", - paths.get_tool_exe(Tools::CMAKE).u8string(), - Strings::ascii_to_lowercase(hash_type), - path.u8string()); - - const auto ec_data = System::cmd_execute_and_capture_output(cmd_line); - Checks::check_exit(VCPKG_LINE_INFO, ec_data.exit_code == 0, "Running command:\n %s\n failed", cmd_line); - - std::string const& output = ec_data.output; - - const auto start = output.find_first_of(' '); - Checks::check_exit( - VCPKG_LINE_INFO, start != std::string::npos, "Unexpected output format from command: %s", cmd_line); + if (!Strings::case_insensitive_ascii_starts_with(hash_type, "SHA")) + { + Checks::exit_with_message( + VCPKG_LINE_INFO, "shasum only supports SHA hashes, but %s was provided", hash_type); + } - const auto end = output.find_first_of("\r\n", start + 1); - Checks::check_exit( - VCPKG_LINE_INFO, end != std::string::npos, "Unexpected output format from command: %s", cmd_line); + const std::string digest_size = hash_type.substr(3, hash_type.length() - 3); - auto hash = output.substr(0, start); - Util::erase_remove_if(hash, isspace); - return hash; + const std::string cmd_line = Strings::format( + R"(shasum -a %s "%s" | awk '{ print $1 }')", digest_size, path.u8string()); + const auto ec_data = System::cmd_execute_and_capture_output(cmd_line); + Checks::check_exit(VCPKG_LINE_INFO, + ec_data.exit_code == 0, + "Failed to run:\n" + " %s", + cmd_line); + return Strings::trim(std::string{ec_data.output}); } } #endif @@ -147,13 +142,13 @@ namespace vcpkg::Commands::Hash nullptr, }; - void perform_and_exit(const VcpkgCmdArguments& args, const VcpkgPaths& paths) + void perform_and_exit(const VcpkgCmdArguments& args) { Util::unused(args.parse_arguments(COMMAND_STRUCTURE)); const fs::path file_to_hash = args.command_arguments[0]; const std::string algorithm = args.command_arguments.size() == 2 ? args.command_arguments[1] : "SHA512"; - const std::string hash = get_file_hash(paths, file_to_hash, algorithm); + const std::string hash = get_file_hash(file_to_hash, algorithm); System::println(hash); Checks::exit_success(VCPKG_LINE_INFO); } -- cgit v1.2.3 From e71230855443a0b87c38e011531cfc6b9d6ffce5 Mon Sep 17 00:00:00 2001 From: Alexander Karatarakis Date: Thu, 5 Apr 2018 16:41:52 -0700 Subject: [vcpkg hash] Add string hashing (as opposed to file hashing) --- toolsrc/include/vcpkg/commands.h | 4 ++- toolsrc/src/vcpkg/commands.hash.cpp | 57 +++++++++++++++++++++++++++++++++++++ 2 files changed, 60 insertions(+), 1 deletion(-) diff --git a/toolsrc/include/vcpkg/commands.h b/toolsrc/include/vcpkg/commands.h index 65e7fdd14..d8d2abfa9 100644 --- a/toolsrc/include/vcpkg/commands.h +++ b/toolsrc/include/vcpkg/commands.h @@ -131,8 +131,10 @@ namespace vcpkg::Commands namespace Hash { + std::string get_string_hash(const std::string& s, const std::string& hash_type); + std::string get_file_hash(const fs::path& path, const std::string& hash_type); + void perform_and_exit(const VcpkgCmdArguments& args); - std::string get_file_hash(fs::path const& path, std::string const& hash_type); } namespace Fetch diff --git a/toolsrc/src/vcpkg/commands.hash.cpp b/toolsrc/src/vcpkg/commands.hash.cpp index 087f3e682..856b0e283 100644 --- a/toolsrc/src/vcpkg/commands.hash.cpp +++ b/toolsrc/src/vcpkg/commands.hash.cpp @@ -103,6 +103,42 @@ namespace vcpkg::Commands::Hash return to_hex(hash_buffer.get(), length_in_bytes); } + + std::string get_string_hash(const std::string& s, const std::string& hash_type) + { + BCryptAlgorithmHandle algorithm_handle; + + NTSTATUS error_code = BCryptOpenAlgorithmProvider( + &algorithm_handle.handle, Strings::to_utf16(Strings::ascii_to_uppercase(hash_type)).c_str(), nullptr, 0); + Checks::check_exit(VCPKG_LINE_INFO, NT_SUCCESS(error_code), "Failed to open the algorithm provider"); + + DWORD hash_buffer_bytes; + DWORD cb_data; + error_code = BCryptGetProperty(algorithm_handle.handle, + BCRYPT_HASH_LENGTH, + reinterpret_cast(&hash_buffer_bytes), + sizeof(DWORD), + &cb_data, + 0); + Checks::check_exit(VCPKG_LINE_INFO, NT_SUCCESS(error_code), "Failed to get hash length"); + const ULONG length_in_bytes = hash_buffer_bytes; + + BCryptHashHandle hash_handle; + + error_code = BCryptCreateHash(algorithm_handle.handle, &hash_handle.handle, nullptr, 0, nullptr, 0, 0); + Checks::check_exit(VCPKG_LINE_INFO, NT_SUCCESS(error_code), "Failed to initialize the hasher"); + + auto* const buffer = reinterpret_cast(const_cast(s.c_str())); + error_code = BCryptHashData(hash_handle.handle, buffer, static_cast(s.size()), 0); + Checks::check_exit(VCPKG_LINE_INFO, NT_SUCCESS(error_code), "Failed to hash data"); + + std::unique_ptr hash_buffer = std::make_unique(length_in_bytes); + + error_code = BCryptFinishHash(hash_handle.handle, hash_buffer.get(), length_in_bytes, 0); + Checks::check_exit(VCPKG_LINE_INFO, NT_SUCCESS(error_code), "Failed to finalize the hash"); + + return to_hex(hash_buffer.get(), length_in_bytes); + } } #else @@ -128,6 +164,27 @@ namespace vcpkg::Commands::Hash cmd_line); return Strings::trim(std::string{ec_data.output}); } + + std::string get_string_hash(const std::string& s, const std::string& hash_type) + { + if (!Strings::case_insensitive_ascii_starts_with(hash_type, "SHA")) + { + Checks::exit_with_message( + VCPKG_LINE_INFO, "shasum only supports SHA hashes, but %s was provided", hash_type); + } + + const std::string digest_size = hash_type.substr(3, hash_type.length() - 3); + + const std::string cmd_line = Strings::format( + R"(echo -n "%s" | shasum -a %s | awk '{ print $1 }')", s, digest_size); + const auto ec_data = System::cmd_execute_and_capture_output(cmd_line); + Checks::check_exit(VCPKG_LINE_INFO, + ec_data.exit_code == 0, + "Failed to run:\n" + " %s", + cmd_line); + return Strings::trim(std::string{ec_data.output}); + } } #endif -- cgit v1.2.3 From c1257f988a49b167cd9d94a0931806c6e465700a Mon Sep 17 00:00:00 2001 From: Alexander Karatarakis Date: Thu, 5 Apr 2018 17:03:45 -0700 Subject: [vcpkg hash] Refactor to reduce code duplication --- toolsrc/src/vcpkg/commands.hash.cpp | 149 +++++++++++++++++++----------------- 1 file changed, 78 insertions(+), 71 deletions(-) diff --git a/toolsrc/src/vcpkg/commands.hash.cpp b/toolsrc/src/vcpkg/commands.hash.cpp index 856b0e283..c0130f12f 100644 --- a/toolsrc/src/vcpkg/commands.hash.cpp +++ b/toolsrc/src/vcpkg/commands.hash.cpp @@ -18,7 +18,7 @@ namespace vcpkg::Commands::Hash { namespace { - static std::string to_hex(const unsigned char* string, const size_t bytes) + std::string to_hex(const unsigned char* string, const size_t bytes) { static constexpr char HEX_MAP[] = "0123456789abcdef"; @@ -58,86 +58,93 @@ namespace vcpkg::Commands::Hash if (handle) BCryptDestroyHash(handle); } }; - } - std::string get_file_hash(const fs::path& path, const std::string& hash_type) - { - BCryptAlgorithmHandle algorithm_handle; - - NTSTATUS error_code = BCryptOpenAlgorithmProvider( - &algorithm_handle.handle, Strings::to_utf16(Strings::ascii_to_uppercase(hash_type)).c_str(), nullptr, 0); - Checks::check_exit(VCPKG_LINE_INFO, NT_SUCCESS(error_code), "Failed to open the algorithm provider"); - - DWORD hash_buffer_bytes; - DWORD cb_data; - error_code = BCryptGetProperty(algorithm_handle.handle, - BCRYPT_HASH_LENGTH, - reinterpret_cast(&hash_buffer_bytes), - sizeof(DWORD), - &cb_data, - 0); - Checks::check_exit(VCPKG_LINE_INFO, NT_SUCCESS(error_code), "Failed to get hash length"); - const ULONG length_in_bytes = hash_buffer_bytes; - - BCryptHashHandle hash_handle; - - error_code = BCryptCreateHash(algorithm_handle.handle, &hash_handle.handle, nullptr, 0, nullptr, 0, 0); - Checks::check_exit(VCPKG_LINE_INFO, NT_SUCCESS(error_code), "Failed to initialize the hasher"); - - FILE* file = nullptr; - const auto ec = _wfopen_s(&file, path.c_str(), L"rb"); - Checks::check_exit(VCPKG_LINE_INFO, ec == 0, "Failed to open file: %s", path.u8string()); - unsigned char buffer[4096]; - while (const auto actual_size = fread(buffer, 1, sizeof(buffer), file)) + struct BCryptHasher { - error_code = BCryptHashData(hash_handle.handle, buffer, static_cast(actual_size), 0); - Checks::check_exit(VCPKG_LINE_INFO, NT_SUCCESS(error_code), "Failed to hash data"); - } - - fclose(file); - - std::unique_ptr hash_buffer = std::make_unique(length_in_bytes); - - error_code = BCryptFinishHash(hash_handle.handle, hash_buffer.get(), length_in_bytes, 0); - Checks::check_exit(VCPKG_LINE_INFO, NT_SUCCESS(error_code), "Failed to finalize the hash"); - - return to_hex(hash_buffer.get(), length_in_bytes); - } - - std::string get_string_hash(const std::string& s, const std::string& hash_type) - { - BCryptAlgorithmHandle algorithm_handle; + explicit BCryptHasher(const std::string& hash_type) + { + NTSTATUS error_code = + BCryptOpenAlgorithmProvider(&this->algorithm_handle.handle, + Strings::to_utf16(Strings::ascii_to_uppercase(hash_type)).c_str(), + nullptr, + 0); + Checks::check_exit(VCPKG_LINE_INFO, NT_SUCCESS(error_code), "Failed to open the algorithm provider"); + + DWORD hash_buffer_bytes; + DWORD cb_data; + error_code = BCryptGetProperty(this->algorithm_handle.handle, + BCRYPT_HASH_LENGTH, + reinterpret_cast(&hash_buffer_bytes), + sizeof(DWORD), + &cb_data, + 0); + Checks::check_exit(VCPKG_LINE_INFO, NT_SUCCESS(error_code), "Failed to get hash length"); + this->length_in_bytes = hash_buffer_bytes; + } - NTSTATUS error_code = BCryptOpenAlgorithmProvider( - &algorithm_handle.handle, Strings::to_utf16(Strings::ascii_to_uppercase(hash_type)).c_str(), nullptr, 0); - Checks::check_exit(VCPKG_LINE_INFO, NT_SUCCESS(error_code), "Failed to open the algorithm provider"); + std::string hash_file(const fs::path& path) const + { + BCryptHashHandle hash_handle; + this->initialize_hash_handle(hash_handle); + + FILE* file = nullptr; + const auto ec = _wfopen_s(&file, path.c_str(), L"rb"); + Checks::check_exit(VCPKG_LINE_INFO, ec == 0, "Failed to open file: %s", path.u8string()); + unsigned char buffer[4096]; + while (const auto actual_size = fread(buffer, 1, sizeof(buffer), file)) + { + hash_data(hash_handle, buffer, actual_size); + } + fclose(file); + + return this->finalize_hash_handle(hash_handle); + } - DWORD hash_buffer_bytes; - DWORD cb_data; - error_code = BCryptGetProperty(algorithm_handle.handle, - BCRYPT_HASH_LENGTH, - reinterpret_cast(&hash_buffer_bytes), - sizeof(DWORD), - &cb_data, - 0); - Checks::check_exit(VCPKG_LINE_INFO, NT_SUCCESS(error_code), "Failed to get hash length"); - const ULONG length_in_bytes = hash_buffer_bytes; + std::string hash_string(const std::string& s) const + { + BCryptHashHandle hash_handle; + this->initialize_hash_handle(hash_handle); + hash_data(hash_handle, reinterpret_cast(const_cast(s.c_str())), s.size()); + return this->finalize_hash_handle(hash_handle); + } - BCryptHashHandle hash_handle; + private: + void initialize_hash_handle(BCryptHashHandle& hash_handle) const + { + const NTSTATUS error_code = + BCryptCreateHash(this->algorithm_handle.handle, &hash_handle.handle, nullptr, 0, nullptr, 0, 0); + Checks::check_exit(VCPKG_LINE_INFO, NT_SUCCESS(error_code), "Failed to initialize the hasher"); + } - error_code = BCryptCreateHash(algorithm_handle.handle, &hash_handle.handle, nullptr, 0, nullptr, 0, 0); - Checks::check_exit(VCPKG_LINE_INFO, NT_SUCCESS(error_code), "Failed to initialize the hasher"); + void hash_data(BCryptHashHandle& hash_handle, unsigned char* buffer, const size_t& data_size) const + { + const NTSTATUS error_code = + BCryptHashData(hash_handle.handle, buffer, static_cast(data_size), 0); + Checks::check_exit(VCPKG_LINE_INFO, NT_SUCCESS(error_code), "Failed to hash data"); + } - auto* const buffer = reinterpret_cast(const_cast(s.c_str())); - error_code = BCryptHashData(hash_handle.handle, buffer, static_cast(s.size()), 0); - Checks::check_exit(VCPKG_LINE_INFO, NT_SUCCESS(error_code), "Failed to hash data"); + std::string finalize_hash_handle(const BCryptHashHandle& hash_handle) const + { + std::unique_ptr hash_buffer = std::make_unique(this->length_in_bytes); + const NTSTATUS error_code = + BCryptFinishHash(hash_handle.handle, hash_buffer.get(), this->length_in_bytes, 0); + Checks::check_exit(VCPKG_LINE_INFO, NT_SUCCESS(error_code), "Failed to finalize the hash"); + return to_hex(hash_buffer.get(), this->length_in_bytes); + } - std::unique_ptr hash_buffer = std::make_unique(length_in_bytes); + BCryptAlgorithmHandle algorithm_handle; + ULONG length_in_bytes; + }; + } - error_code = BCryptFinishHash(hash_handle.handle, hash_buffer.get(), length_in_bytes, 0); - Checks::check_exit(VCPKG_LINE_INFO, NT_SUCCESS(error_code), "Failed to finalize the hash"); + std::string get_file_hash(const fs::path& path, const std::string& hash_type) + { + return BCryptHasher{hash_type}.hash_file(path); + } - return to_hex(hash_buffer.get(), length_in_bytes); + std::string get_string_hash(const std::string& s, const std::string& hash_type) + { + return BCryptHasher{hash_type}.hash_string(s); } } -- cgit v1.2.3 From 3f6f9f3f4d48ef0115f3095f7d8d2c6d3b0c63e1 Mon Sep 17 00:00:00 2001 From: Alexander Karatarakis Date: Thu, 5 Apr 2018 17:12:59 -0700 Subject: [metrics] Use new string-hash functions instead of ps1 script --- scripts/SHA256Hash.ps1 | 9 --------- toolsrc/src/vcpkg/metrics.cpp | 11 ++--------- 2 files changed, 2 insertions(+), 18 deletions(-) delete mode 100644 scripts/SHA256Hash.ps1 diff --git a/scripts/SHA256Hash.ps1 b/scripts/SHA256Hash.ps1 deleted file mode 100644 index 348d461b7..000000000 --- a/scripts/SHA256Hash.ps1 +++ /dev/null @@ -1,9 +0,0 @@ -[CmdletBinding()] -Param( - [Parameter(Mandatory=$True)] - [String]$Value -) - -$sha256 = New-Object -TypeName System.Security.Cryptography.SHA256CryptoServiceProvider -$utf8 = New-Object -TypeName System.Text.UTF8Encoding -[System.BitConverter]::ToString($sha256.ComputeHash($utf8.GetBytes($Value))) diff --git a/toolsrc/src/vcpkg/metrics.cpp b/toolsrc/src/vcpkg/metrics.cpp index 9e17b237d..4067efc95 100644 --- a/toolsrc/src/vcpkg/metrics.cpp +++ b/toolsrc/src/vcpkg/metrics.cpp @@ -264,17 +264,10 @@ namespace vcpkg::Metrics while (next != last) { - auto match = *next; + const auto match = *next; if (match[0] != "00-00-00-00-00-00") { - const std::string matchstr = match[0]; - const System::PowershellParameter value("Value", matchstr); - auto hash_result = System::powershell_execute_and_capture_output( - "SHA256Hash", get_vcpkg_root() / "scripts" / "SHA256Hash.ps1", {value}); - Util::erase_remove_if(hash_result, - [](char ch) { return !(ch >= 'A' && ch <= 'F') && !(ch >= '0' && ch <= '9'); }); - hash_result = Strings::ascii_to_lowercase(hash_result); - return hash_result; + return vcpkg::Commands::Hash::get_string_hash(match[0], "SHA256"); } ++next; } -- cgit v1.2.3 From ca9503b9d7f9bca6e2f9881a7f4ec9ce9d600928 Mon Sep 17 00:00:00 2001 From: Alexander Karatarakis Date: Thu, 5 Apr 2018 21:28:02 -0700 Subject: [vcpkg hash] Refactor and tweaks in BCryptHasher. --- toolsrc/src/vcpkg/commands.hash.cpp | 83 +++++++++++++++++++------------------ 1 file changed, 42 insertions(+), 41 deletions(-) diff --git a/toolsrc/src/vcpkg/commands.hash.cpp b/toolsrc/src/vcpkg/commands.hash.cpp index c0130f12f..19f73b463 100644 --- a/toolsrc/src/vcpkg/commands.hash.cpp +++ b/toolsrc/src/vcpkg/commands.hash.cpp @@ -39,28 +39,52 @@ namespace vcpkg::Commands::Hash return output; } - struct BCryptAlgorithmHandle : Util::ResourceBase + class BCryptHasher { - BCRYPT_ALG_HANDLE handle = nullptr; + struct BCryptAlgorithmHandle : Util::ResourceBase + { + BCRYPT_ALG_HANDLE handle = nullptr; + + ~BCryptAlgorithmHandle() + { + if (handle) BCryptCloseAlgorithmProvider(handle, 0); + } + }; + + struct BCryptHashHandle : Util::ResourceBase + { + BCRYPT_HASH_HANDLE handle = nullptr; + + ~BCryptHashHandle() + { + if (handle) BCryptDestroyHash(handle); + } + }; - ~BCryptAlgorithmHandle() + static void initialize_hash_handle(BCryptHashHandle& hash_handle, + const BCryptAlgorithmHandle& algorithm_handle) { - if (handle) BCryptCloseAlgorithmProvider(handle, 0); + const NTSTATUS error_code = + BCryptCreateHash(algorithm_handle.handle, &hash_handle.handle, nullptr, 0, nullptr, 0, 0); + Checks::check_exit(VCPKG_LINE_INFO, NT_SUCCESS(error_code), "Failed to initialize the hasher"); } - }; - struct BCryptHashHandle : Util::ResourceBase - { - BCRYPT_HASH_HANDLE handle = nullptr; + static void hash_data(BCryptHashHandle& hash_handle, const unsigned char* buffer, const size_t& data_size) + { + const NTSTATUS error_code = BCryptHashData( + hash_handle.handle, const_cast(buffer), static_cast(data_size), 0); + Checks::check_exit(VCPKG_LINE_INFO, NT_SUCCESS(error_code), "Failed to hash data"); + } - ~BCryptHashHandle() + static std::string finalize_hash_handle(const BCryptHashHandle& hash_handle, const ULONG length_in_bytes) { - if (handle) BCryptDestroyHash(handle); + std::unique_ptr hash_buffer = std::make_unique(length_in_bytes); + const NTSTATUS error_code = BCryptFinishHash(hash_handle.handle, hash_buffer.get(), length_in_bytes, 0); + Checks::check_exit(VCPKG_LINE_INFO, NT_SUCCESS(error_code), "Failed to finalize the hash"); + return to_hex(hash_buffer.get(), length_in_bytes); } - }; - struct BCryptHasher - { + public: explicit BCryptHasher(const std::string& hash_type) { NTSTATUS error_code = @@ -85,7 +109,7 @@ namespace vcpkg::Commands::Hash std::string hash_file(const fs::path& path) const { BCryptHashHandle hash_handle; - this->initialize_hash_handle(hash_handle); + initialize_hash_handle(hash_handle, this->algorithm_handle); FILE* file = nullptr; const auto ec = _wfopen_s(&file, path.c_str(), L"rb"); @@ -97,41 +121,18 @@ namespace vcpkg::Commands::Hash } fclose(file); - return this->finalize_hash_handle(hash_handle); + return finalize_hash_handle(hash_handle, length_in_bytes); } std::string hash_string(const std::string& s) const { BCryptHashHandle hash_handle; - this->initialize_hash_handle(hash_handle); - hash_data(hash_handle, reinterpret_cast(const_cast(s.c_str())), s.size()); - return this->finalize_hash_handle(hash_handle); + initialize_hash_handle(hash_handle, this->algorithm_handle); + hash_data(hash_handle, reinterpret_cast(s.c_str()), s.size()); + return finalize_hash_handle(hash_handle, length_in_bytes); } private: - void initialize_hash_handle(BCryptHashHandle& hash_handle) const - { - const NTSTATUS error_code = - BCryptCreateHash(this->algorithm_handle.handle, &hash_handle.handle, nullptr, 0, nullptr, 0, 0); - Checks::check_exit(VCPKG_LINE_INFO, NT_SUCCESS(error_code), "Failed to initialize the hasher"); - } - - void hash_data(BCryptHashHandle& hash_handle, unsigned char* buffer, const size_t& data_size) const - { - const NTSTATUS error_code = - BCryptHashData(hash_handle.handle, buffer, static_cast(data_size), 0); - Checks::check_exit(VCPKG_LINE_INFO, NT_SUCCESS(error_code), "Failed to hash data"); - } - - std::string finalize_hash_handle(const BCryptHashHandle& hash_handle) const - { - std::unique_ptr hash_buffer = std::make_unique(this->length_in_bytes); - const NTSTATUS error_code = - BCryptFinishHash(hash_handle.handle, hash_buffer.get(), this->length_in_bytes, 0); - Checks::check_exit(VCPKG_LINE_INFO, NT_SUCCESS(error_code), "Failed to finalize the hash"); - return to_hex(hash_buffer.get(), this->length_in_bytes); - } - BCryptAlgorithmHandle algorithm_handle; ULONG length_in_bytes; }; -- cgit v1.2.3 From ec790eb1716fca367dccc2b5f7e96a8719ca74fa Mon Sep 17 00:00:00 2001 From: Alexander Karatarakis Date: Thu, 5 Apr 2018 22:01:11 -0700 Subject: [vcpkg hash] Refactor to reduce repetition. Allow simple chars in get_string_hash() for now. --- toolsrc/src/vcpkg/commands.hash.cpp | 37 ++++++++++++++++++++----------------- 1 file changed, 20 insertions(+), 17 deletions(-) diff --git a/toolsrc/src/vcpkg/commands.hash.cpp b/toolsrc/src/vcpkg/commands.hash.cpp index 19f73b463..a3ac2cbbb 100644 --- a/toolsrc/src/vcpkg/commands.hash.cpp +++ b/toolsrc/src/vcpkg/commands.hash.cpp @@ -152,7 +152,7 @@ namespace vcpkg::Commands::Hash #else namespace vcpkg::Commands::Hash { - std::string get_file_hash(const fs::path& path, const std::string& hash_type) + static std::string get_digest_size(const std::string& hash_type) { if (!Strings::case_insensitive_ascii_starts_with(hash_type, "SHA")) { @@ -160,10 +160,11 @@ namespace vcpkg::Commands::Hash VCPKG_LINE_INFO, "shasum only supports SHA hashes, but %s was provided", hash_type); } - const std::string digest_size = hash_type.substr(3, hash_type.length() - 3); + return hash_type.substr(3, hash_type.length() - 3); + } - const std::string cmd_line = Strings::format( - R"(shasum -a %s "%s" | awk '{ print $1 }')", digest_size, path.u8string()); + static std::string run_shasum_and_post_process(const std::string& cmd_line) + { const auto ec_data = System::cmd_execute_and_capture_output(cmd_line); Checks::check_exit(VCPKG_LINE_INFO, ec_data.exit_code == 0, @@ -173,25 +174,27 @@ namespace vcpkg::Commands::Hash return Strings::trim(std::string{ec_data.output}); } + std::string get_file_hash(const fs::path& path, const std::string& hash_type) + { + const std::string digest_size = get_digest_size(hash_type); + const std::string cmd_line = Strings::format( + R"(shasum -a %s "%s" | awk '{ print $1 }')", digest_size, path.u8string()); + return run_shasum_and_post_process(cmd_line); + } + std::string get_string_hash(const std::string& s, const std::string& hash_type) { - if (!Strings::case_insensitive_ascii_starts_with(hash_type, "SHA")) - { - Checks::exit_with_message( - VCPKG_LINE_INFO, "shasum only supports SHA hashes, but %s was provided", hash_type); - } + const std::string digest_size = get_digest_size(hash_type); - const std::string digest_size = hash_type.substr(3, hash_type.length() - 3); + static const std::regex ALLOWED_CHARS{"^[a-zA-Z0-9:]*$"}; + + Checks::check_exit(VCPKG_LINE_INFO, + std::regex_match(s, ALLOWED_CHARS), + "Only alphanumeric chars and colons are currently allowed"); const std::string cmd_line = Strings::format( R"(echo -n "%s" | shasum -a %s | awk '{ print $1 }')", s, digest_size); - const auto ec_data = System::cmd_execute_and_capture_output(cmd_line); - Checks::check_exit(VCPKG_LINE_INFO, - ec_data.exit_code == 0, - "Failed to run:\n" - " %s", - cmd_line); - return Strings::trim(std::string{ec_data.output}); + return run_shasum_and_post_process(cmd_line); } } #endif -- cgit v1.2.3 From 1bfb01cfeeffc8c8161f64b1bd2986557b6ba207 Mon Sep 17 00:00:00 2001 From: Alexander Karatarakis Date: Thu, 5 Apr 2018 22:05:55 -0700 Subject: [vcpkg hash] Add sanity checking --- toolsrc/include/vcpkg/commands.h | 4 ++-- toolsrc/src/vcpkg/build.cpp | 8 ++++---- toolsrc/src/vcpkg/commands.cpp | 2 +- toolsrc/src/vcpkg/commands.fetch.cpp | 2 +- toolsrc/src/vcpkg/commands.hash.cpp | 33 +++++++++++++++++++++++---------- 5 files changed, 31 insertions(+), 18 deletions(-) diff --git a/toolsrc/include/vcpkg/commands.h b/toolsrc/include/vcpkg/commands.h index d8d2abfa9..6d29b7960 100644 --- a/toolsrc/include/vcpkg/commands.h +++ b/toolsrc/include/vcpkg/commands.h @@ -132,9 +132,9 @@ namespace vcpkg::Commands namespace Hash { std::string get_string_hash(const std::string& s, const std::string& hash_type); - std::string get_file_hash(const fs::path& path, const std::string& hash_type); + std::string get_file_hash(const VcpkgPaths& paths, const fs::path& path, const std::string& hash_type); - void perform_and_exit(const VcpkgCmdArguments& args); + void perform_and_exit(const VcpkgCmdArguments& args, const VcpkgPaths& paths); } namespace Fetch diff --git a/toolsrc/src/vcpkg/build.cpp b/toolsrc/src/vcpkg/build.cpp index 16a85db52..b7055100b 100644 --- a/toolsrc/src/vcpkg/build.cpp +++ b/toolsrc/src/vcpkg/build.cpp @@ -457,9 +457,9 @@ namespace vcpkg::Build abi_tag_entries.insert(abi_tag_entries.end(), dependency_abis.begin(), dependency_abis.end()); abi_tag_entries.emplace_back( - AbiEntry{"portfile", Commands::Hash::get_file_hash(config.port_dir / "portfile.cmake", "SHA1")}); + AbiEntry{"portfile", Commands::Hash::get_file_hash(paths, config.port_dir / "portfile.cmake", "SHA1")}); abi_tag_entries.emplace_back( - AbiEntry{"control", Commands::Hash::get_file_hash(config.port_dir / "CONTROL", "SHA1")}); + AbiEntry{"control", Commands::Hash::get_file_hash(paths, config.port_dir / "CONTROL", "SHA1")}); abi_tag_entries.emplace_back(AbiEntry{"triplet", pre_build_info.triplet_abi_tag}); @@ -494,7 +494,7 @@ namespace vcpkg::Build auto abi_file_path = paths.buildtrees / name / (triplet.canonical_name() + ".vcpkg_abi_info.txt"); fs.write_contents(abi_file_path, full_abi_info); - return AbiTagAndFile{Commands::Hash::get_file_hash(abi_file_path, "SHA1"), abi_file_path}; + return AbiTagAndFile{Commands::Hash::get_file_hash(paths, abi_file_path, "SHA1"), abi_file_path}; } else { @@ -784,7 +784,7 @@ namespace vcpkg::Build { return it_hash->second; } - auto hash = Commands::Hash::get_file_hash(triplet_file_path, "SHA1"); + auto hash = Commands::Hash::get_file_hash(paths, triplet_file_path, "SHA1"); s_hash_cache.emplace(triplet_file_path, hash); return hash; } diff --git a/toolsrc/src/vcpkg/commands.cpp b/toolsrc/src/vcpkg/commands.cpp index 9041b37ff..8b6ffb3d7 100644 --- a/toolsrc/src/vcpkg/commands.cpp +++ b/toolsrc/src/vcpkg/commands.cpp @@ -42,6 +42,7 @@ namespace vcpkg::Commands {"cache", &Cache::perform_and_exit}, {"portsdiff", &PortsDiff::perform_and_exit}, {"autocomplete", &Autocomplete::perform_and_exit}, + {"hash", &Hash::perform_and_exit}, // {"fetch", &Fetch::perform_and_exit}, }; return t; @@ -52,7 +53,6 @@ namespace vcpkg::Commands static std::vector> t = { {"version", &Version::perform_and_exit}, {"contact", &Contact::perform_and_exit}, - {"hash", &Hash::perform_and_exit}, }; return t; } diff --git a/toolsrc/src/vcpkg/commands.fetch.cpp b/toolsrc/src/vcpkg/commands.fetch.cpp index 1ba043728..e369f44d2 100644 --- a/toolsrc/src/vcpkg/commands.fetch.cpp +++ b/toolsrc/src/vcpkg/commands.fetch.cpp @@ -240,7 +240,7 @@ namespace vcpkg::Commands::Fetch R"(curl -L '%s' --create-dirs --output '%s')", url, download_path_part)); Checks::check_exit(VCPKG_LINE_INFO, code == 0, "Could not download %s", url); - const std::string actual_hash = Hash::get_file_hash(download_path_part, "SHA512"); + const std::string actual_hash = Hash::get_file_hash(paths, download_path_part, "SHA512"); Checks::check_exit(VCPKG_LINE_INFO, sha512 == actual_hash, "File does not have the expected hash:\n" diff --git a/toolsrc/src/vcpkg/commands.hash.cpp b/toolsrc/src/vcpkg/commands.hash.cpp index a3ac2cbbb..3f90eeaca 100644 --- a/toolsrc/src/vcpkg/commands.hash.cpp +++ b/toolsrc/src/vcpkg/commands.hash.cpp @@ -7,6 +7,19 @@ #include #include +namespace vcpkg::Commands::Hash +{ + static void verify_has_only_allowed_chars(const std::string& s) + { + static const std::regex ALLOWED_CHARS{"^[a-zA-Z0-9-]*$"}; + Checks::check_exit(VCPKG_LINE_INFO, + std::regex_match(s, ALLOWED_CHARS), + "Only alphanumeric chars and dashes are currently allowed. String was:\n" + " % s", + s); + } +} + #if defined(_WIN32) #include @@ -138,13 +151,16 @@ namespace vcpkg::Commands::Hash }; } - std::string get_file_hash(const fs::path& path, const std::string& hash_type) + std::string get_file_hash(const VcpkgPaths& paths, const fs::path& path, const std::string& hash_type) { + Checks::check_exit( + VCPKG_LINE_INFO, paths.get_filesystem().exists(path), "File %s does not exist", path.u8string()); return BCryptHasher{hash_type}.hash_file(path); } std::string get_string_hash(const std::string& s, const std::string& hash_type) { + verify_has_only_allowed_chars(s); return BCryptHasher{hash_type}.hash_string(s); } } @@ -174,9 +190,11 @@ namespace vcpkg::Commands::Hash return Strings::trim(std::string{ec_data.output}); } - std::string get_file_hash(const fs::path& path, const std::string& hash_type) + std::string get_file_hash(const VcpkgPaths& paths, const fs::path& path, const std::string& hash_type) { const std::string digest_size = get_digest_size(hash_type); + Checks::check_exit( + VCPKG_LINE_INFO, paths.get_filesystem().exists(path), "File %s does not exist", path.u8string()); const std::string cmd_line = Strings::format( R"(shasum -a %s "%s" | awk '{ print $1 }')", digest_size, path.u8string()); return run_shasum_and_post_process(cmd_line); @@ -185,12 +203,7 @@ namespace vcpkg::Commands::Hash std::string get_string_hash(const std::string& s, const std::string& hash_type) { const std::string digest_size = get_digest_size(hash_type); - - static const std::regex ALLOWED_CHARS{"^[a-zA-Z0-9:]*$"}; - - Checks::check_exit(VCPKG_LINE_INFO, - std::regex_match(s, ALLOWED_CHARS), - "Only alphanumeric chars and colons are currently allowed"); + verify_has_only_allowed_chars(s); const std::string cmd_line = Strings::format( R"(echo -n "%s" | shasum -a %s | awk '{ print $1 }')", s, digest_size); @@ -210,13 +223,13 @@ namespace vcpkg::Commands::Hash nullptr, }; - void perform_and_exit(const VcpkgCmdArguments& args) + void perform_and_exit(const VcpkgCmdArguments& args, const VcpkgPaths& paths) { Util::unused(args.parse_arguments(COMMAND_STRUCTURE)); const fs::path file_to_hash = args.command_arguments[0]; const std::string algorithm = args.command_arguments.size() == 2 ? args.command_arguments[1] : "SHA512"; - const std::string hash = get_file_hash(file_to_hash, algorithm); + const std::string hash = get_file_hash(paths, file_to_hash, algorithm); System::println(hash); Checks::exit_success(VCPKG_LINE_INFO); } -- cgit v1.2.3 From 7d5c33cf1b9483c94894e5f1831c8411b36f37cf Mon Sep 17 00:00:00 2001 From: Alexander Karatarakis Date: Fri, 6 Apr 2018 14:36:48 -0700 Subject: [vcpkgTools.xml] Bump version to "2" --- scripts/vcpkgTools.xml | 2 +- toolsrc/src/vcpkg/commands.fetch.cpp | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/scripts/vcpkgTools.xml b/scripts/vcpkgTools.xml index 07284333c..ba81ed926 100644 --- a/scripts/vcpkgTools.xml +++ b/scripts/vcpkgTools.xml @@ -1,5 +1,5 @@ - + 3.10.2 cmake-3.10.2-win32-x86\bin\cmake.exe diff --git a/toolsrc/src/vcpkg/commands.fetch.cpp b/toolsrc/src/vcpkg/commands.fetch.cpp index e369f44d2..d085fb0f7 100644 --- a/toolsrc/src/vcpkg/commands.fetch.cpp +++ b/toolsrc/src/vcpkg/commands.fetch.cpp @@ -51,7 +51,7 @@ namespace vcpkg::Commands::Fetch static constexpr StringLiteral OS_STRING = "linux"; #endif - static const std::string XML_VERSION = "1"; + static const std::string XML_VERSION = "2"; static const fs::path XML_PATH = paths.scripts / "vcpkgTools.xml"; const auto maybe_get_string_inside_tags = [](const std::string& input, -- cgit v1.2.3 From ee75dd08d3ea93eb2cc2f309a1f49abe2b470448 Mon Sep 17 00:00:00 2001 From: Alexander Karatarakis Date: Fri, 6 Apr 2018 14:45:50 -0700 Subject: Improve error message --- toolsrc/src/vcpkg/commands.fetch.cpp | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/toolsrc/src/vcpkg/commands.fetch.cpp b/toolsrc/src/vcpkg/commands.fetch.cpp index d085fb0f7..0be097bc9 100644 --- a/toolsrc/src/vcpkg/commands.fetch.cpp +++ b/toolsrc/src/vcpkg/commands.fetch.cpp @@ -83,8 +83,11 @@ namespace vcpkg::Commands::Fetch std::smatch match_xml_version; const bool has_xml_version = std::regex_search(XML.cbegin(), XML.cend(), match_xml_version, XML_VERSION_REGEX); - Checks::check_exit( - VCPKG_LINE_INFO, has_xml_version, "Could not find in %s", XML_PATH.generic_string()); + Checks::check_exit(VCPKG_LINE_INFO, + has_xml_version, + R"(Could not find in %s)", + XML_VERSION, + XML_PATH.generic_string()); Checks::check_exit(VCPKG_LINE_INFO, XML_VERSION == match_xml_version[1], "Expected %s version: [%s], but was [%s]. Please re-run bootstrap-vcpkg.", -- cgit v1.2.3 From d11014e2ae97c8f7b38f72d23d942a4f107afd26 Mon Sep 17 00:00:00 2001 From: Alexander Karatarakis Date: Fri, 6 Apr 2018 14:46:40 -0700 Subject: Don't ignore fs.rename() errors --- toolsrc/src/vcpkg/commands.fetch.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/toolsrc/src/vcpkg/commands.fetch.cpp b/toolsrc/src/vcpkg/commands.fetch.cpp index 0be097bc9..85ec6b289 100644 --- a/toolsrc/src/vcpkg/commands.fetch.cpp +++ b/toolsrc/src/vcpkg/commands.fetch.cpp @@ -222,7 +222,7 @@ namespace vcpkg::Commands::Fetch Checks::exit_with_message(VCPKG_LINE_INFO, "Unexpected archive extension: %s", ext.u8string()); } - fs.rename(to_path_partial, to_path, ec); + fs.rename(to_path_partial, to_path); } static void download_file(const VcpkgPaths& paths, @@ -256,7 +256,7 @@ namespace vcpkg::Commands::Fetch sha512, actual_hash); - fs.rename(download_path_part, download_path, ec); + fs.rename(download_path_part, download_path); } static fs::path fetch_tool(const VcpkgPaths& paths, const std::string& tool_name, const ToolData& tool_data) -- cgit v1.2.3 From ba432c23bccb3e0eb716765984cc9e9e91845822 Mon Sep 17 00:00:00 2001 From: Alexander Karatarakis Date: Fri, 6 Apr 2018 14:47:15 -0700 Subject: Fix spacing in error message --- toolsrc/src/vcpkg/commands.fetch.cpp | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/toolsrc/src/vcpkg/commands.fetch.cpp b/toolsrc/src/vcpkg/commands.fetch.cpp index 85ec6b289..7cce312dd 100644 --- a/toolsrc/src/vcpkg/commands.fetch.cpp +++ b/toolsrc/src/vcpkg/commands.fetch.cpp @@ -247,10 +247,10 @@ namespace vcpkg::Commands::Fetch Checks::check_exit(VCPKG_LINE_INFO, sha512 == actual_hash, "File does not have the expected hash:\n" - " url : [ %s ]\n" - " File path : [ %s ]\n" - " Expected hash: [ %s ]\n" - " Actual hash: [ %s ] \n", + " url : [ %s ]\n" + " File path : [ %s ]\n" + " Expected hash : [ %s ]\n" + " Actual hash : [ %s ]\n", url, download_path.u8string(), sha512, -- cgit v1.2.3 From 80f16f769e981b4a52ae841dd71f73009866133c Mon Sep 17 00:00:00 2001 From: Alexander Karatarakis Date: Fri, 6 Apr 2018 14:51:53 -0700 Subject: Use Cache class --- toolsrc/include/vcpkg/vcpkgpaths.h | 3 ++- toolsrc/src/vcpkg/vcpkgpaths.cpp | 9 +-------- 2 files changed, 3 insertions(+), 9 deletions(-) diff --git a/toolsrc/include/vcpkg/vcpkgpaths.h b/toolsrc/include/vcpkg/vcpkgpaths.h index 090414de3..fc6b319d8 100644 --- a/toolsrc/include/vcpkg/vcpkgpaths.h +++ b/toolsrc/include/vcpkg/vcpkgpaths.h @@ -3,6 +3,7 @@ #include #include +#include #include #include #include @@ -89,7 +90,7 @@ namespace vcpkg private: Lazy> available_triplets; - mutable std::map tool_paths; + Cache tool_paths; Lazy> toolsets; Lazy> toolsets_vs2013; diff --git a/toolsrc/src/vcpkg/vcpkgpaths.cpp b/toolsrc/src/vcpkg/vcpkgpaths.cpp index 4f998d579..0903c2d76 100644 --- a/toolsrc/src/vcpkg/vcpkgpaths.cpp +++ b/toolsrc/src/vcpkg/vcpkgpaths.cpp @@ -91,14 +91,7 @@ namespace vcpkg const fs::path& VcpkgPaths::get_tool_exe(const std::string& tool) const { - const auto it = this->tool_paths.find(tool); - if (it != this->tool_paths.cend()) - { - return it->second; - } - - this->tool_paths[tool] = Commands::Fetch::get_tool_path(*this, tool); - return this->tool_paths[tool]; + return this->tool_paths.get_lazy(tool, [&]() { return Commands::Fetch::get_tool_path(*this, tool); }); } const Toolset& VcpkgPaths::get_toolset(const Build::PreBuildInfo& prebuildinfo) const -- cgit v1.2.3 From 5d96ff1229d3e93f901215f054225d2859b07f5f Mon Sep 17 00:00:00 2001 From: Alexander Karatarakis Date: Fri, 6 Apr 2018 15:12:26 -0700 Subject: [fetch] Don't attempt to download on unknown OSes --- toolsrc/src/vcpkg/commands.fetch.cpp | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/toolsrc/src/vcpkg/commands.fetch.cpp b/toolsrc/src/vcpkg/commands.fetch.cpp index 7cce312dd..1d2c67d67 100644 --- a/toolsrc/src/vcpkg/commands.fetch.cpp +++ b/toolsrc/src/vcpkg/commands.fetch.cpp @@ -47,10 +47,13 @@ namespace vcpkg::Commands::Fetch static constexpr StringLiteral OS_STRING = "windows"; #elif defined(__APPLE__) static constexpr StringLiteral OS_STRING = "osx"; -#else // assume linux +#elif defined(__linux__) static constexpr StringLiteral OS_STRING = "linux"; +#else + return ToolData{}; #endif +#if defined(_WIN32) || defined(__APPLE__) || defined(__linux__) static const std::string XML_VERSION = "2"; static const fs::path XML_PATH = paths.scripts / "vcpkgTools.xml"; @@ -137,6 +140,7 @@ namespace vcpkg::Commands::Fetch paths.downloads / archive_name.value_or(exe_relative_path), tool_dir_path, sha512}; +#endif } static bool exists_and_has_equal_or_greater_version(const std::string& version_cmd, -- cgit v1.2.3 From b87aeb77deb7b6cdc7e78d0b006243a15993e78c Mon Sep 17 00:00:00 2001 From: Alexander Karatarakis Date: Fri, 6 Apr 2018 15:17:16 -0700 Subject: [vcpkg.exe] Verify hash for already present files. Dont check for path twice --- toolsrc/src/vcpkg/commands.fetch.cpp | 42 ++++++++++++++++++++---------------- 1 file changed, 24 insertions(+), 18 deletions(-) diff --git a/toolsrc/src/vcpkg/commands.fetch.cpp b/toolsrc/src/vcpkg/commands.fetch.cpp index 1d2c67d67..cf19b4384 100644 --- a/toolsrc/src/vcpkg/commands.fetch.cpp +++ b/toolsrc/src/vcpkg/commands.fetch.cpp @@ -229,17 +229,31 @@ namespace vcpkg::Commands::Fetch fs.rename(to_path_partial, to_path); } + static void verify_hash(const VcpkgPaths& paths, + const std::string& url, + const fs::path& path, + const std::string& sha512) + { + const std::string actual_hash = Hash::get_file_hash(paths, path, "SHA512"); + Checks::check_exit(VCPKG_LINE_INFO, + sha512 == actual_hash, + "File does not have the expected hash:\n" + " url : [ %s ]\n" + " File path : [ %s ]\n" + " Expected hash : [ %s ]\n" + " Actual hash : [ %s ]\n", + url, + path.u8string(), + sha512, + actual_hash); + } + static void download_file(const VcpkgPaths& paths, const std::string& url, const fs::path& download_path, const std::string& sha512) { Files::Filesystem& fs = paths.get_filesystem(); - if (fs.exists(download_path)) - { - return; - } - const std::string download_path_part = download_path.u8string() + ".part"; std::error_code ec; fs.remove(download_path_part, ec); @@ -247,19 +261,7 @@ namespace vcpkg::Commands::Fetch R"(curl -L '%s' --create-dirs --output '%s')", url, download_path_part)); Checks::check_exit(VCPKG_LINE_INFO, code == 0, "Could not download %s", url); - const std::string actual_hash = Hash::get_file_hash(paths, download_path_part, "SHA512"); - Checks::check_exit(VCPKG_LINE_INFO, - sha512 == actual_hash, - "File does not have the expected hash:\n" - " url : [ %s ]\n" - " File path : [ %s ]\n" - " Expected hash : [ %s ]\n" - " Actual hash : [ %s ]\n", - url, - download_path.u8string(), - sha512, - actual_hash); - + verify_hash(paths, url, download_path_part, sha512); fs.rename(download_path_part, download_path); } @@ -302,6 +304,10 @@ namespace vcpkg::Commands::Fetch download_file(paths, tool_data.url, tool_data.download_path, tool_data.sha512); System::println("Downloading %s... done.", tool_name); } + else + { + verify_hash(paths, tool_data.url, tool_data.download_path, tool_data.sha512); + } System::println("Extracting %s...", tool_name); extract_archive(paths, tool_data.download_path, tool_data.tool_dir_path); -- cgit v1.2.3 From d5a1e1054120c993560e5de1c6ad8ac16131d356 Mon Sep 17 00:00:00 2001 From: Alexander Karatarakis Date: Fri, 6 Apr 2018 15:22:50 -0700 Subject: [ps1] Verify hash for already present files. Dont check for path twice --- scripts/VcpkgPowershellUtils.ps1 | 23 ++++------------------- scripts/fetchTool.ps1 | 4 ++++ 2 files changed, 8 insertions(+), 19 deletions(-) diff --git a/scripts/VcpkgPowershellUtils.ps1 b/scripts/VcpkgPowershellUtils.ps1 index 63069f44d..f6882409b 100644 --- a/scripts/VcpkgPowershellUtils.ps1 +++ b/scripts/VcpkgPowershellUtils.ps1 @@ -105,9 +105,9 @@ function vcpkgGetSHA512([Parameter(Mandatory=$true)][string]$filePath) function vcpkgCheckEqualFileHash( [Parameter(Mandatory=$true)][string]$url, [Parameter(Mandatory=$true)][string]$filePath, - [Parameter(Mandatory=$true)][string]$expectedHash, - [Parameter(Mandatory=$true)][string]$actualHash) + [Parameter(Mandatory=$true)][string]$expectedHash) { + $actualHash = vcpkgGetSHA512 $filePath if ($expectedHash -ne $actualHash) { Write-Host ("`nFile does not have expected hash:`n" + @@ -123,11 +123,6 @@ function vcpkgDownloadFile( [Parameter(Mandatory=$true)][string]$url, [Parameter(Mandatory=$true)][string]$downloadPath, [Parameter(Mandatory=$true)][string]$sha512) { - if (Test-Path $downloadPath) - { - return - } - if ($url -match "github") { if ([System.Enum]::IsDefined([Net.SecurityProtocolType], "Tls12")) @@ -155,10 +150,7 @@ function vcpkgDownloadFile( [Parameter(Mandatory=$true)][string]$url, } $wc.DownloadFile($url, $downloadPartPath) - - $actualHash = vcpkgGetSHA512 $downloadPartPath - vcpkgCheckEqualFileHash -url $url -filePath $downloadPath -expectedHash $sha512 -actualHash $actualHash - + vcpkgCheckEqualFileHash -url $url -filePath $downloadPartPath -expectedHash $sha512 Move-Item -Path $downloadPartPath -Destination $downloadPath } @@ -167,11 +159,6 @@ function vcpkgDownloadFileWithAria2( [Parameter(Mandatory=$true)][string]$ari [Parameter(Mandatory=$true)][string]$downloadPath, [Parameter(Mandatory=$true)][string]$sha512) { - if (Test-Path $downloadPath) - { - return - } - vcpkgCreateParentDirectoryIfNotExists $downloadPath $downloadPartPath = "$downloadPath.part" vcpkgRemoveItem $downloadPartPath @@ -186,9 +173,7 @@ function vcpkgDownloadFileWithAria2( [Parameter(Mandatory=$true)][string]$ari throw } - $actualHash = vcpkgGetSHA512 $downloadPartPath - vcpkgCheckEqualFileHash -url $url -filePath $downloadPath -expectedHash $sha512 -actualHash $actualHash - + vcpkgCheckEqualFileHash -url $url -filePath $downloadPartPath -expectedHash $sha512 Move-Item -Path $downloadPartPath -Destination $downloadPath } diff --git a/scripts/fetchTool.ps1 b/scripts/fetchTool.ps1 index c1e8d87fc..8de642674 100644 --- a/scripts/fetchTool.ps1 +++ b/scripts/fetchTool.ps1 @@ -61,6 +61,10 @@ function fetchToolInternal([Parameter(Mandatory=$true)][string]$tool) Write-Host "Downloading $tool... done." } + else + { + vcpkgCheckEqualFileHash -url $url -filePath $downloadPath -expectedHash $toolData.sha512 + } if ($isArchive) { -- cgit v1.2.3 From be2ea0373fbbb17ec792155ebaec0d2dd3d95242 Mon Sep 17 00:00:00 2001 From: Alexander Karatarakis Date: Fri, 6 Apr 2018 15:47:58 -0700 Subject: #ifdef linux-specific code --- toolsrc/src/vcpkg/commands.fetch.cpp | 2 ++ 1 file changed, 2 insertions(+) diff --git a/toolsrc/src/vcpkg/commands.fetch.cpp b/toolsrc/src/vcpkg/commands.fetch.cpp index cf19b4384..9652d0b9e 100644 --- a/toolsrc/src/vcpkg/commands.fetch.cpp +++ b/toolsrc/src/vcpkg/commands.fetch.cpp @@ -199,6 +199,7 @@ namespace vcpkg::Commands::Fetch return data_lines; } +#if !defined(_WIN32) static void extract_archive(const VcpkgPaths& paths, const fs::path& archive, const fs::path& to_path) { Files::Filesystem& fs = paths.get_filesystem(); @@ -265,6 +266,7 @@ namespace vcpkg::Commands::Fetch fs.rename(download_path_part, download_path); } +#endif static fs::path fetch_tool(const VcpkgPaths& paths, const std::string& tool_name, const ToolData& tool_data) { const auto& fs = paths.get_filesystem(); -- cgit v1.2.3 From 402bbbc1e2b26f714f88cc6f40283008dabba64f Mon Sep 17 00:00:00 2001 From: Alexander Karatarakis Date: Fri, 6 Apr 2018 19:19:54 -0700 Subject: [Checks] Take parameter by ref --- toolsrc/include/vcpkg/base/checks.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/toolsrc/include/vcpkg/base/checks.h b/toolsrc/include/vcpkg/base/checks.h index fb162c897..bceee3428 100644 --- a/toolsrc/include/vcpkg/base/checks.h +++ b/toolsrc/include/vcpkg/base/checks.h @@ -27,7 +27,7 @@ namespace vcpkg::Checks // Display an error message to the user and exit the tool. [[noreturn]] void exit_with_message(const LineInfo& line_info, const char* error_message_template, - const Arg1 error_message_arg1, + const Arg1& error_message_arg1, const Args&... error_message_args) { exit_with_message(line_info, @@ -42,7 +42,7 @@ namespace vcpkg::Checks void check_exit(const LineInfo& line_info, Conditional&& expression, const char* error_message_template, - const Arg1 error_message_arg1, + const Arg1& error_message_arg1, const Args&... error_message_args) { if (!expression) -- cgit v1.2.3 From 15e4f46b45c432a41ee6a962609039bc2497ec19 Mon Sep 17 00:00:00 2001 From: Alexander Karatarakis Date: Wed, 4 Apr 2018 21:32:06 -0700 Subject: Update CHANGELOG and bump version to v0.0.108 --- CHANGELOG.md | 65 +++++++++++++++++++++++++++++++++++++++++++++++++++++ toolsrc/VERSION.txt | 2 +- 2 files changed, 66 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 36c40f6e8..0cc88e2c2 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,68 @@ +vcpkg (0.0.108) +-------------- + * Add ports: + - google-cloud-cpp 0.1.0 + - mhook 2.5.1-1 + - mosquitto 1.4.15 + - pmdk 1.4-1 (renamed from nvml) + * Remove Ports: + - nvml 1.3-0 (renamed to pmdk) + * Update ports: + - abseil 2018-03-23 -> 2018-04-05 + - asio 1.12.0-1 -> 1.12.0-2 + - aws-sdk-cpp 1.4.21 -> 1.4.30-1 + - azure-c-shared-utility 1.0.0-pre-release-1.0.9 -> 1.1.2 + - azure-iot-sdk-c 1.0.0-pre-release-1.0.9 -> 1.2.2 + - azure-uamqp-c 1.0.0-pre-release-1.0.9 -> 1.2.2 + - azure-umqtt-c 1.0.0-pre-release-1.0.9 -> 1.1.2 + - breakpad 2018-03-13 -> 2018-04-05 + - clara 2018-03-23 -> 2018-04-02 + - cryptopp 5.6.5-1 -> 6.1.0-2 + - discord-rpc 3.1.0 -> 3.2.0 + - dlib 19.10 -> 19.10-1 + - eastl 3.08.00 -> 3.09.00 + - exiv2 2018-03-23 -> 2018-04-05 + - folly 2017.11.27.00-3 -> 2018.03.19.00-2 + - forest 4.5.0 -> 7.0.1 + - gdcm2 2.8.5 -> 2.8.6 + - grpc 1.10.0 -> 1.10.1 + - gtest 1.8.0-7 -> 1.8.0-8 + - libiconv 1.15-2 -> 1.15-3 + - libuv 1.19.2 -> 1.20.0 + - libvpx 1.6.1-2 -> 1.7.0 + - libxml2 2.9.4-4 -> 2.9.4-5 + - nuklear 2018-03-23 -> 2018-04-05 + - openimageio 1.8.9 -> 1.8.10 + - openssl 1.0.2n-3 -> 1.0.2o-1 + - qt5-base 5.9.2-5 -> 5.9.2-6 + - qt5-modularscripts 2 -> 3 + - qwt 6.1.3-4 -> 6.1.3-5 + - recast 1.5.1 -> 1.5.1-1 + - rocksdb 5.11.3 -> 5.12.2 + - rs-core-lib 2018-03-17 -> 2018-04-05 + - sciter 4.1.4 -> 4.1.5 + - tbb 2018_U2 -> 2018_U3 + - tesseract 3.05.01-2 -> 3.05.01-3 + - theia 0.7-d15154a-1 -> 0.7-d15154a-3 + - thrift 2018-03-23 -> 2018-04-05 + - unrar 5.5.8 -> 5.5.8-1 + - yoga 1.7.0 -> 1.7.0-1 + - zeromq 2018-03-23 -> 2018-04-05 + * `vcpkg.cmake`: Remove detection for Windows SDK. Let `cmake` detect it instead. + * Rework `vcpkgTools.xml`. + - `` renamed to `` + - `` renamed `` + - `` changed to `` + - `` tags now specify an `os="x"` property + - The version of the tools list (i.e. ``) is now verified by `vcpkg.exe`. + * Use [7zip](https://www.7-zip.org/) to extract vcpkg tools defined in `vcpkgTools.xml`. + * Use [aria2](https://aria2.github.io/) to download vcpkg tools defined in `vcpkgTools.xml`. + - The experimental flag `vcpkg install --x-use-aria2` allows you to use `aria2` for other downloads as well. + * `vckg hash` improvements + +-- vcpkg team FRI, 06 Apr 2018 19:30:00 -0800 + + vcpkg (0.0.107) -------------- * Add ports: diff --git a/toolsrc/VERSION.txt b/toolsrc/VERSION.txt index daa1cd86e..2cd1bf9ac 100644 --- a/toolsrc/VERSION.txt +++ b/toolsrc/VERSION.txt @@ -1 +1 @@ -"0.0.107" \ No newline at end of file +"0.0.108" \ No newline at end of file -- cgit v1.2.3 From f63994db6c02266525b33c014f1447cb72a19e82 Mon Sep 17 00:00:00 2001 From: Alexander Karatarakis Date: Fri, 6 Apr 2018 20:34:06 -0700 Subject: Update nuget.exe to 4.6.2 --- scripts/vcpkgTools.xml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/scripts/vcpkgTools.xml b/scripts/vcpkgTools.xml index ba81ed926..a11ee344f 100644 --- a/scripts/vcpkgTools.xml +++ b/scripts/vcpkgTools.xml @@ -35,10 +35,10 @@ 42f8a8ffd0b156b2e30b2ec7bf7d19582b3ce38a2046ff62bd7fd82f12a8d66ed601e74865957864cef0a376e33a7d07cad746f03c57d1b95a7929a1f8f119ed - 4.4.0 + 4.6.2 nuget.exe - https://dist.nuget.org/win-x86-commandline/v4.4.0/nuget.exe - fb0903665d2a64ce1da3f40961eb19e46c152a631b2441750aa8b30b20acd2a5e78d7f1058e79e83e37959b3ce9a090a60f081895fdba9998715e3a64437c3e5 + https://dist.nuget.org/win-x86-commandline/v4.6.2/nuget.exe + 60daea7bec2de23089f7ad73985dd788ac154171d6326c2c456726849b8f97dfc38cbdd9b9bf8d96aced009ccaaed317905b65c108e149cfbbbcdfb95f8f0519 3.1.81 -- cgit v1.2.3 From 340320487342740ff2313f44efd35eeba9423ac2 Mon Sep 17 00:00:00 2001 From: Alexander Karatarakis Date: Fri, 6 Apr 2018 20:36:07 -0700 Subject: Update vswhere.exe to 2.4.1 --- scripts/vcpkgTools.xml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/scripts/vcpkgTools.xml b/scripts/vcpkgTools.xml index a11ee344f..daaf29214 100644 --- a/scripts/vcpkgTools.xml +++ b/scripts/vcpkgTools.xml @@ -29,10 +29,10 @@ MinGit-2.16.2-32-bit.zip - 2.3.2 + 2.4.1 vswhere.exe - https://github.com/Microsoft/vswhere/releases/download/2.3.2/vswhere.exe - 42f8a8ffd0b156b2e30b2ec7bf7d19582b3ce38a2046ff62bd7fd82f12a8d66ed601e74865957864cef0a376e33a7d07cad746f03c57d1b95a7929a1f8f119ed + https://github.com/Microsoft/vswhere/releases/download/2.4.1/vswhere.exe + f477842d0cebefcd6bf9c6d536ab8ea20ec5b0aa967ee963ab6a101aeff9df8742ca600d35f39e2e7158d76d8231f1ed2bef6104dce84d2bf8d6b07d17d706a1 4.6.2 -- cgit v1.2.3 From 740622dd73b96c49c66564f5c060bd179bc13b5d Mon Sep 17 00:00:00 2001 From: Robert Schumacher Date: Fri, 6 Apr 2018 14:46:51 -0700 Subject: [aws-sdk-cpp][catch2][exiv2][forest][nuklear][rs-core-lib][thrift] Upgrades --- ports/aws-sdk-cpp/CONTROL | 2 +- ports/aws-sdk-cpp/portfile.cmake | 4 ++-- ports/catch2/CONTROL | 2 +- ports/catch2/portfile.cmake | 4 ++-- ports/exiv2/CONTROL | 2 +- ports/exiv2/portfile.cmake | 4 ++-- ports/forest/CONTROL | 2 +- ports/forest/portfile.cmake | 4 ++-- ports/nuklear/CONTROL | 2 +- ports/nuklear/portfile.cmake | 4 ++-- ports/rs-core-lib/CONTROL | 2 +- ports/rs-core-lib/portfile.cmake | 4 ++-- ports/thrift/CONTROL | 2 +- ports/thrift/portfile.cmake | 4 ++-- 14 files changed, 21 insertions(+), 21 deletions(-) diff --git a/ports/aws-sdk-cpp/CONTROL b/ports/aws-sdk-cpp/CONTROL index 2d6642faa..a3e7c57c5 100644 --- a/ports/aws-sdk-cpp/CONTROL +++ b/ports/aws-sdk-cpp/CONTROL @@ -1,5 +1,5 @@ Source: aws-sdk-cpp -Version: 1.4.30-1 +Version: 1.4.31-1 Description: AWS SDK for C++ Build-Depends: openssl (!uwp&!windows), curl (!uwp&!windows) Default-Features: dynamodb, ec2, kms, rds, s3, sns, sqs diff --git a/ports/aws-sdk-cpp/portfile.cmake b/ports/aws-sdk-cpp/portfile.cmake index 6263b2b45..d3cf3f0bb 100644 --- a/ports/aws-sdk-cpp/portfile.cmake +++ b/ports/aws-sdk-cpp/portfile.cmake @@ -3,8 +3,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO aws/aws-sdk-cpp - REF 1.4.30 - SHA512 309e700d1c351f6cb44036d3f2caf9c0fc8d96c7decdb403cff066c9927f1134a26dd50ba92af3b1b8c93a89e4bacf3a505cca3684136460e220df4309e467ba + REF 1.4.31 + SHA512 f0fc2c3c82201ff68ba53c19a7a452e79b5dc9fc47a146e4917105cfac546d64c57a8203beadaf9842e1c4e93ac2245ffbfd247a88107de12245d1624f35dddf HEAD_REF master ) diff --git a/ports/catch2/CONTROL b/ports/catch2/CONTROL index faa5f0574..a466f7be5 100644 --- a/ports/catch2/CONTROL +++ b/ports/catch2/CONTROL @@ -1,4 +1,4 @@ Source: catch2 -Version: 2.2.1-1 +Version: 2.2.2 Description: A modern, header-only test framework for unit testing. Issues, PRs and changelogs can be found at https://github.com/catchorg/Catch2 diff --git a/ports/catch2/portfile.cmake b/ports/catch2/portfile.cmake index 65a38d8f0..5329d9cab 100644 --- a/ports/catch2/portfile.cmake +++ b/ports/catch2/portfile.cmake @@ -3,8 +3,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO catchorg/Catch2 - REF v2.2.1 - SHA512 48d3a0384dcd19fe622c4fda51639be36c904aaff77f5857615010c57e69d8e9f1deb2156e3e4882a592fe260d2bae0efa3cd02c2a2cabe07d9f9db09051a6b0 + REF v2.2.2 + SHA512 ab91036c6c3ace087d0382ce99f26b2c30a4b75d52f285619ca282a618470fe388afe47495f3b2764268d600c6834c60ba464483d06f3a1c4316c099477c8e38 HEAD_REF master ) diff --git a/ports/exiv2/CONTROL b/ports/exiv2/CONTROL index b66823aa0..f620972ef 100644 --- a/ports/exiv2/CONTROL +++ b/ports/exiv2/CONTROL @@ -1,4 +1,4 @@ Source: exiv2 -Version: 2018-04-05 +Version: 2018-04-06 Build-Depends: zlib, expat, libiconv Description: Image metadata library and tools http://www.exiv2.org diff --git a/ports/exiv2/portfile.cmake b/ports/exiv2/portfile.cmake index 5423bfdd8..90ffe6ddc 100644 --- a/ports/exiv2/portfile.cmake +++ b/ports/exiv2/portfile.cmake @@ -3,8 +3,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO Exiv2/exiv2 - REF db5bb66d0697572eacaf0c2aa3b8e7ac2a0c4e54 - SHA512 afc82f79073ace4d567a9db4ee8991c013d12b2939930e12fe5adf0f7d398b87bce127689f3ca9b1c234cc1321ed3f6bee8335590958616a03af9de58e12c24b + REF 336b759cc0192e7db1ccafd42e13a43085e74a58 + SHA512 1e94d31d9b6667ea8dcff12fb4a0a9c24dba44f665a98dba1752657a3a26a654655c2c00eecfdf540a76e9e217f21d9471e0e244226f4e013fc044ad245adaaa HEAD_REF master ) diff --git a/ports/forest/CONTROL b/ports/forest/CONTROL index e22089dab..e161e22ae 100644 --- a/ports/forest/CONTROL +++ b/ports/forest/CONTROL @@ -1,3 +1,3 @@ Source: forest -Version: 7.0.1 +Version: 7.0.3 Description: Forest is an open-source, template library of tree data structures written in C++11. diff --git a/ports/forest/portfile.cmake b/ports/forest/portfile.cmake index 78e85a5fe..39ef63350 100644 --- a/ports/forest/portfile.cmake +++ b/ports/forest/portfile.cmake @@ -3,8 +3,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO xorz57/forest - REF 7.0.1 - SHA512 75f5f643ec20bab3298e5983f2ab1672dc304102059cf454341fe37495f1e18ac6a6fcce927b49f441a586ec788d4be44e1ceab8e1947565c2ab3ff519daded8 + REF 7.0.3 + SHA512 0e3adde14d9035427f3ca4d40cf6ee9598e8222f0e9884e570cdddf31ceb4fb516c802bf2abfb169e35da6adebfd7514238ca23121871fe9911419449a72cfe0 HEAD_REF master ) diff --git a/ports/nuklear/CONTROL b/ports/nuklear/CONTROL index dff07255c..bfa1e2ab5 100644 --- a/ports/nuklear/CONTROL +++ b/ports/nuklear/CONTROL @@ -1,3 +1,3 @@ Source: nuklear -Version: 2018-04-05 +Version: 2018-04-06 Description: This is a minimal state immediate mode graphical user interface toolkit written in ANSI C and licensed under public domain diff --git a/ports/nuklear/portfile.cmake b/ports/nuklear/portfile.cmake index 9ab405ed0..0722fe775 100644 --- a/ports/nuklear/portfile.cmake +++ b/ports/nuklear/portfile.cmake @@ -2,8 +2,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO vurtun/nuklear - REF d374953d274131f9f295e5fdada9b9f83e208072 - SHA512 bc7d6f4d8ec8993450f415560a5f3b603f310416f54ff1f58b51554e9de7c1d8e8ed7552abfb3e51a2e711863e2e3b75169a3fd2ae7f4f79ae429797858a9faf + REF bca152011e3f5839c7eb08864f76f1f900d4ffe7 + SHA512 aa3bf7f9f32fe63140505e4845a9ee22fb9feb1abc3dd36b333697548778272b817795844a8b6f5cc95a4e460afd69fd96359955ab4e8d12737ac4b46be7e4d1 HEAD_REF master ) file(INSTALL ${SOURCE_PATH}/nuklear.h DESTINATION ${CURRENT_PACKAGES_DIR}/include) diff --git a/ports/rs-core-lib/CONTROL b/ports/rs-core-lib/CONTROL index a26371439..1a0ea6519 100644 --- a/ports/rs-core-lib/CONTROL +++ b/ports/rs-core-lib/CONTROL @@ -1,4 +1,4 @@ Source: rs-core-lib -Version: 2018-04-05 +Version: 2018-04-06 Description: Minimal common utilities by Ross Smith diff --git a/ports/rs-core-lib/portfile.cmake b/ports/rs-core-lib/portfile.cmake index 7392e5843..8229e78e8 100644 --- a/ports/rs-core-lib/portfile.cmake +++ b/ports/rs-core-lib/portfile.cmake @@ -3,8 +3,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO CaptainCrowbar/rs-core-lib - REF c49c44a14567719e927c942aec7d8e4971aad5bf - SHA512 17f5cb5d1c60fa832d32f65fce2a1fd00b108d5c1594240543bb6f889c8ddae6dbe83215b63ff15927921bcc9352348340e036c5118278867498216f63e9fef4 + REF 0a500c3a326d1ba177e48ebdb2d71b0a9cd54eae + SHA512 14642b9c3c4eba8faea434eb94fc19fadbc8e40cbf43ae3591be89b1cd2a0b2f13f93c7ac88d1778d557a185fa6efe5eadf64542da7baf625a39dcb53b0b2313 HEAD_REF master ) diff --git a/ports/thrift/CONTROL b/ports/thrift/CONTROL index eec5fd732..57caf006a 100644 --- a/ports/thrift/CONTROL +++ b/ports/thrift/CONTROL @@ -1,4 +1,4 @@ Source: thrift -Version: 2018-04-05 +Version: 2018-04-06 Build-Depends: zlib, libevent, openssl, boost-range, boost-smart-ptr, boost-date-time, boost-locale, boost-scope-exit Description: Apache Thrift is a software project spanning a variety of programming languages and use cases. Our goal is to make reliable, performant communication and data serialization across languages as efficient and seamless as possible. Originally developed at Facebook, Thrift was open sourced in April 2007 and entered the Apache Incubator in May, 2008. Thrift became an Apache TLP in October, 2010. diff --git a/ports/thrift/portfile.cmake b/ports/thrift/portfile.cmake index 4002a0cfd..626ef2b44 100644 --- a/ports/thrift/portfile.cmake +++ b/ports/thrift/portfile.cmake @@ -15,8 +15,8 @@ vcpkg_find_acquire_program(BISON) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO apache/thrift - REF a0cf38ed312a5342eb05574719485b725fa52eee - SHA512 518142e3b98ae79e622b3b5989c7754e4d6e32e1ffd1b39915932afdb40c0e1fa6ef1d182de6dfebcfc69a20eae9635f6ae8e8532b3a7e8acb5e7c3ee980c2b7 + REF 7ad0665008764c0522672b314605d88959e20716 + SHA512 5fc3b5084d40b972af13c00008f5d8b7d7dbe82cfbec31769b09a042911dee99f0979a2592dbcb72836c0ee5036905e1caee2cc76c4e296b20855276c4c30ffd HEAD_REF master ) -- cgit v1.2.3 From bab554a8b3df8bf451e846022b310204b8843640 Mon Sep 17 00:00:00 2001 From: Alexander Karatarakis Date: Fri, 6 Apr 2018 22:52:35 -0700 Subject: [vcpkg hash] Process in C++ instead of calling awk --- toolsrc/src/vcpkg/commands.hash.cpp | 15 ++++++++++++--- 1 file changed, 12 insertions(+), 3 deletions(-) diff --git a/toolsrc/src/vcpkg/commands.hash.cpp b/toolsrc/src/vcpkg/commands.hash.cpp index 3f90eeaca..801b8d323 100644 --- a/toolsrc/src/vcpkg/commands.hash.cpp +++ b/toolsrc/src/vcpkg/commands.hash.cpp @@ -187,7 +187,16 @@ namespace vcpkg::Commands::Hash "Failed to run:\n" " %s", cmd_line); - return Strings::trim(std::string{ec_data.output}); + + std::vector split = Strings::split(ec_data.output, " "); + Checks::check_exit(VCPKG_LINE_INFO, + split.size() == 3, + "Expected output of the form [hash filename\n] (3 tokens), but got\n" + "[%s] (%s tokens)", + ec_data.output, + std::to_string(split.size())); + + return split[0]; } std::string get_file_hash(const VcpkgPaths& paths, const fs::path& path, const std::string& hash_type) @@ -196,7 +205,7 @@ namespace vcpkg::Commands::Hash Checks::check_exit( VCPKG_LINE_INFO, paths.get_filesystem().exists(path), "File %s does not exist", path.u8string()); const std::string cmd_line = Strings::format( - R"(shasum -a %s "%s" | awk '{ print $1 }')", digest_size, path.u8string()); + R"(shasum -a %s "%s")", digest_size, path.u8string()); return run_shasum_and_post_process(cmd_line); } @@ -206,7 +215,7 @@ namespace vcpkg::Commands::Hash verify_has_only_allowed_chars(s); const std::string cmd_line = Strings::format( - R"(echo -n "%s" | shasum -a %s | awk '{ print $1 }')", s, digest_size); + R"(echo -n "%s" | shasum -a %s)", s, digest_size); return run_shasum_and_post_process(cmd_line); } } -- cgit v1.2.3 From 479ed417d91122f68bf5806622a78be04b391166 Mon Sep 17 00:00:00 2001 From: Alexander Karatarakis Date: Fri, 6 Apr 2018 22:54:27 -0700 Subject: [vcpkg hash] formatting --- toolsrc/src/vcpkg/commands.hash.cpp | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/toolsrc/src/vcpkg/commands.hash.cpp b/toolsrc/src/vcpkg/commands.hash.cpp index 801b8d323..c23a63e1e 100644 --- a/toolsrc/src/vcpkg/commands.hash.cpp +++ b/toolsrc/src/vcpkg/commands.hash.cpp @@ -204,8 +204,7 @@ namespace vcpkg::Commands::Hash const std::string digest_size = get_digest_size(hash_type); Checks::check_exit( VCPKG_LINE_INFO, paths.get_filesystem().exists(path), "File %s does not exist", path.u8string()); - const std::string cmd_line = Strings::format( - R"(shasum -a %s "%s")", digest_size, path.u8string()); + const std::string cmd_line = Strings::format(R"(shasum -a %s "%s")", digest_size, path.u8string()); return run_shasum_and_post_process(cmd_line); } @@ -214,8 +213,7 @@ namespace vcpkg::Commands::Hash const std::string digest_size = get_digest_size(hash_type); verify_has_only_allowed_chars(s); - const std::string cmd_line = Strings::format( - R"(echo -n "%s" | shasum -a %s)", s, digest_size); + const std::string cmd_line = Strings::format(R"(echo -n "%s" | shasum -a %s)", s, digest_size); return run_shasum_and_post_process(cmd_line); } } -- cgit v1.2.3 From 0b7fc2f6617dc24edb1debcbabe6895231a03245 Mon Sep 17 00:00:00 2001 From: jasjuang Date: Fri, 6 Apr 2018 23:36:43 -0700 Subject: [openvr] update to 1.0.14 --- ports/openvr/CONTROL | 2 +- ports/openvr/portfile.cmake | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/ports/openvr/CONTROL b/ports/openvr/CONTROL index 3e42aaa23..816a8751f 100644 --- a/ports/openvr/CONTROL +++ b/ports/openvr/CONTROL @@ -1,3 +1,3 @@ Source: openvr -Version: 1.0.13 +Version: 1.0.14 Description: an API and runtime that allows access to VR hardware from multiple vendors without requiring that applications have specific knowledge of the hardware they are targeting. diff --git a/ports/openvr/portfile.cmake b/ports/openvr/portfile.cmake index b86f44335..31e1658b1 100644 --- a/ports/openvr/portfile.cmake +++ b/ports/openvr/portfile.cmake @@ -3,8 +3,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO ValveSoftware/openvr - REF v1.0.13 - SHA512 3ec901f9363f9517fd3246cf58c0792c2446c39d61997a46375756b0965e6fad6902a5d1b87eb65c579e1b615cbb6e6688e7dc8ced957e5dc50b4c4dcbbb36b9 + REF v1.0.14 + SHA512 2f38622121911ad4d59971fe88313f839fcb3bddae07af266b3b9f804a8c3855b4eb67d9153f0979db3465279dfcce9cb0bfe83451bf8639be5cdc9acafa2eda HEAD_REF master ) -- cgit v1.2.3 From 59e574ceb364b33fd2bc56990b4b27232c2f97d6 Mon Sep 17 00:00:00 2001 From: jasjuang Date: Fri, 6 Apr 2018 23:42:03 -0700 Subject: [tinyxml2] update to 6.2.0 --- ports/tinyxml2/CONTROL | 2 +- ports/tinyxml2/portfile.cmake | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/ports/tinyxml2/CONTROL b/ports/tinyxml2/CONTROL index 1df7e49f2..185fa749c 100644 --- a/ports/tinyxml2/CONTROL +++ b/ports/tinyxml2/CONTROL @@ -1,3 +1,3 @@ Source: tinyxml2 -Version: 6.0.0-2 +Version: 6.2.0 Description: A simple, small, efficient, C++ XML parser diff --git a/ports/tinyxml2/portfile.cmake b/ports/tinyxml2/portfile.cmake index 0a7c887c5..8a28b424b 100644 --- a/ports/tinyxml2/portfile.cmake +++ b/ports/tinyxml2/portfile.cmake @@ -3,8 +3,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO leethomason/tinyxml2 - REF 6.0.0 - SHA512 30c68f491830187738b01ca5db1a96e7b4907cf8fa09a533c90ea084ab5e73f798dff6305cfc4edccc8989926e91c0482677bb5796799113c839dbd0528c8ad5 + REF 6.2.0 + SHA512 ef784240aeb090ab04aad659352ad4b224c431feecf485f33aca7936bcaa0ef4ab9d0a2e0692d3cf6036ac3e8012019d65665e780a920bbad3d4820f736445b1 HEAD_REF master ) -- cgit v1.2.3 From 7a19c72ca9e9ae8215be63e957ba11cc156b87b9 Mon Sep 17 00:00:00 2001 From: Alexander Karatarakis Date: Sat, 7 Apr 2018 02:03:59 -0700 Subject: Rename. Remove stray semicolon --- toolsrc/src/vcpkg/base/strings.cpp | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/toolsrc/src/vcpkg/base/strings.cpp b/toolsrc/src/vcpkg/base/strings.cpp index 5fedf3e1f..541b1f2d9 100644 --- a/toolsrc/src/vcpkg/base/strings.cpp +++ b/toolsrc/src/vcpkg/base/strings.cpp @@ -7,7 +7,7 @@ namespace vcpkg::Strings::details { // To disambiguate between two overloads - static bool IS_SPACE(const char c) { return std::isspace(c) != 0; }; + static bool is_space(const char c) { return std::isspace(c) != 0; } // Avoids C4244 warnings because of char<->int conversion that occur when using std::tolower() static char tolower_char(const char c) { return static_cast(std::tolower(c)); } @@ -143,8 +143,8 @@ namespace vcpkg::Strings std::string trim(std::string&& s) { - s.erase(std::find_if_not(s.rbegin(), s.rend(), details::IS_SPACE).base(), s.end()); - s.erase(s.begin(), std::find_if_not(s.begin(), s.end(), details::IS_SPACE)); + s.erase(std::find_if_not(s.rbegin(), s.rend(), details::is_space).base(), s.end()); + s.erase(s.begin(), std::find_if_not(s.begin(), s.end(), details::is_space)); return std::move(s); } -- cgit v1.2.3 From fcdf4637ed9c645cc3719358a292c4571806e0bd Mon Sep 17 00:00:00 2001 From: Alexander Karatarakis Date: Sat, 7 Apr 2018 02:07:40 -0700 Subject: Default construct std::array() --- toolsrc/src/vcpkg/base/chrono.cpp | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/toolsrc/src/vcpkg/base/chrono.cpp b/toolsrc/src/vcpkg/base/chrono.cpp index 00f8ba3f1..eff84ee4e 100644 --- a/toolsrc/src/vcpkg/base/chrono.cpp +++ b/toolsrc/src/vcpkg/base/chrono.cpp @@ -117,9 +117,7 @@ namespace vcpkg::Chrono std::string CTime::to_string() const { - std::array date; - date.fill(0); - + std::array date{}; strftime(&date[0], date.size(), "%Y-%m-%dT%H:%M:%S.0Z", &m_tm); return &date[0]; } -- cgit v1.2.3 From 87f7f23d07ad6af428793a3acb45626d1228c802 Mon Sep 17 00:00:00 2001 From: Alexander Karatarakis Date: Sat, 7 Apr 2018 02:10:03 -0700 Subject: const/auto --- toolsrc/src/vcpkg/base/chrono.cpp | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/toolsrc/src/vcpkg/base/chrono.cpp b/toolsrc/src/vcpkg/base/chrono.cpp index eff84ee4e..2a76f5df0 100644 --- a/toolsrc/src/vcpkg/base/chrono.cpp +++ b/toolsrc/src/vcpkg/base/chrono.cpp @@ -15,7 +15,7 @@ namespace vcpkg::Chrono using std::chrono::nanoseconds; using std::chrono::seconds; - const double nanos_as_double = static_cast(nanos.count()); + const auto nanos_as_double = static_cast(nanos.count()); if (duration_cast(nanos) > hours()) { @@ -92,7 +92,7 @@ namespace vcpkg::Chrono Optional CTime::parse(CStringView str) { CTime ret; - auto assigned = + const auto assigned = #if defined(_WIN32) sscanf_s #else @@ -123,7 +123,7 @@ namespace vcpkg::Chrono } std::chrono::system_clock::time_point CTime::to_time_point() const { - auto t = mktime(&m_tm); + const time_t t = mktime(&m_tm); return std::chrono::system_clock::from_time_t(t); } } -- cgit v1.2.3 From a64b160c67bfe8de754f41004f5c7cdbfea0a0ee Mon Sep 17 00:00:00 2001 From: Alexander Karatarakis Date: Sat, 7 Apr 2018 02:13:41 -0700 Subject: Use auto on left side when casting on right side --- toolsrc/src/vcpkg/base/cofffilereader.cpp | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/toolsrc/src/vcpkg/base/cofffilereader.cpp b/toolsrc/src/vcpkg/base/cofffilereader.cpp index 96d280108..bc418f42a 100644 --- a/toolsrc/src/vcpkg/base/cofffilereader.cpp +++ b/toolsrc/src/vcpkg/base/cofffilereader.cpp @@ -87,7 +87,7 @@ namespace vcpkg::CoffFileReader static const size_t MACHINE_TYPE_SIZE = 2; std::string machine_field_as_string = data.substr(MACHINE_TYPE_OFFSET, MACHINE_TYPE_SIZE); - const uint16_t machine = reinterpret_bytes(machine_field_as_string.c_str()); + const auto machine = reinterpret_bytes(machine_field_as_string.c_str()); return to_machine_type(machine); } @@ -158,7 +158,7 @@ namespace vcpkg::CoffFileReader for (uint32_t i = 0; i < offset_count; ++i) { const std::string value_as_string = raw_offsets.substr(OFFSET_WIDTH * i, OFFSET_WIDTH * (i + 1)); - const uint32_t value = reinterpret_bytes(value_as_string.c_str()); + const auto value = reinterpret_bytes(value_as_string.c_str()); // Ignore offsets that point to offset 0. See vcpkg github #223 #288 #292 if (value != 0) @@ -182,7 +182,7 @@ namespace vcpkg::CoffFileReader static ImportHeader read(fstream& fs) { static const size_t SIG1_OFFSET = 0; - static const uint16_t SIG1 = static_cast(MachineType::UNKNOWN); + static const auto SIG1 = static_cast(MachineType::UNKNOWN); static const size_t SIG1_SIZE = 2; static const size_t SIG2_OFFSET = 2; @@ -194,11 +194,11 @@ namespace vcpkg::CoffFileReader fs.read(&ret.data[0], HEADER_SIZE); const std::string sig1_as_string = ret.data.substr(SIG1_OFFSET, SIG1_SIZE); - const uint16_t sig1 = reinterpret_bytes(sig1_as_string.c_str()); + const auto sig1 = reinterpret_bytes(sig1_as_string.c_str()); Checks::check_exit(VCPKG_LINE_INFO, sig1 == SIG1, "Sig1 was incorrect. Expected %s but got %s", SIG1, sig1); const std::string sig2_as_string = ret.data.substr(SIG2_OFFSET, SIG2_SIZE); - const uint16_t sig2 = reinterpret_bytes(sig2_as_string.c_str()); + const auto sig2 = reinterpret_bytes(sig2_as_string.c_str()); Checks::check_exit(VCPKG_LINE_INFO, sig2 == SIG2, "Sig2 was incorrect. Expected %s but got %s", SIG2, sig2); return ret; @@ -210,7 +210,7 @@ namespace vcpkg::CoffFileReader static const size_t MACHINE_TYPE_SIZE = 2; std::string machine_field_as_string = data.substr(MACHINE_TYPE_OFFSET, MACHINE_TYPE_SIZE); - const uint16_t machine = reinterpret_bytes(machine_field_as_string.c_str()); + const auto machine = reinterpret_bytes(machine_field_as_string.c_str()); return to_machine_type(machine); } @@ -278,7 +278,7 @@ namespace vcpkg::CoffFileReader second_linker_member_header.name().substr(0, 2) == "/ ", "Could not find proper second linker member"); // The first 4 bytes contains the number of archive members - const uint32_t archive_member_count = read_value_from_stream(fs); + const auto archive_member_count = read_value_from_stream(fs); const OffsetsArray offsets = OffsetsArray::read(fs, archive_member_count); marker.advance_by(ArchiveMemberHeader::HEADER_SIZE + second_linker_member_header.member_size()); marker.seek_to_marker(fs); @@ -297,7 +297,7 @@ namespace vcpkg::CoffFileReader { marker.set_to_offset(offset + ArchiveMemberHeader::HEADER_SIZE); // Skip the header, no need to read it. marker.seek_to_marker(fs); - const uint16_t first_two_bytes = peek_value_from_stream(fs); + const auto first_two_bytes = peek_value_from_stream(fs); const bool isImportHeader = to_machine_type(first_two_bytes) == MachineType::UNKNOWN; const MachineType machine = isImportHeader ? ImportHeader::read(fs).machine_type() : CoffFileHeader::read(fs).machine_type(); -- cgit v1.2.3 From 2076dfe376d21d3f89e342903edb0a95e96a51e5 Mon Sep 17 00:00:00 2001 From: Alexander Karatarakis Date: Sat, 7 Apr 2018 02:14:20 -0700 Subject: Naming convention --- toolsrc/src/vcpkg/base/cofffilereader.cpp | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/toolsrc/src/vcpkg/base/cofffilereader.cpp b/toolsrc/src/vcpkg/base/cofffilereader.cpp index bc418f42a..fdab307eb 100644 --- a/toolsrc/src/vcpkg/base/cofffilereader.cpp +++ b/toolsrc/src/vcpkg/base/cofffilereader.cpp @@ -43,7 +43,7 @@ namespace vcpkg::CoffFileReader actual); } - static void read_and_verify_PE_signature(fstream& fs) + static void read_and_verify_pe_signature(fstream& fs) { static const size_t OFFSET_TO_PE_SIGNATURE_OFFSET = 0x3c; @@ -51,13 +51,13 @@ namespace vcpkg::CoffFileReader static const size_t PE_SIGNATURE_SIZE = 4; fs.seekg(OFFSET_TO_PE_SIGNATURE_OFFSET, ios_base::beg); - const int32_t offset_to_PE_signature = read_value_from_stream(fs); + const auto offset_to_pe_signature = read_value_from_stream(fs); - fs.seekg(offset_to_PE_signature); + fs.seekg(offset_to_pe_signature); char signature[PE_SIGNATURE_SIZE]; fs.read(signature, PE_SIGNATURE_SIZE); verify_equal_strings(VCPKG_LINE_INFO, PE_SIGNATURE, signature, PE_SIGNATURE_SIZE, "PE_SIGNATURE"); - fs.seekg(offset_to_PE_signature + PE_SIGNATURE_SIZE, ios_base::beg); + fs.seekg(offset_to_pe_signature + PE_SIGNATURE_SIZE, ios_base::beg); } static fpos_t align_to_size(const uint64_t unaligned, const uint64_t alignment_size) @@ -235,7 +235,7 @@ namespace vcpkg::CoffFileReader std::fstream fs(path, std::ios::in | std::ios::binary | std::ios::ate); Checks::check_exit(VCPKG_LINE_INFO, fs.is_open(), "Could not open file %s for reading", path.generic_string()); - read_and_verify_PE_signature(fs); + read_and_verify_pe_signature(fs); CoffFileHeader header = CoffFileHeader::read(fs); const MachineType machine = header.machine_type(); return {machine}; @@ -283,8 +283,8 @@ namespace vcpkg::CoffFileReader marker.advance_by(ArchiveMemberHeader::HEADER_SIZE + second_linker_member_header.member_size()); marker.seek_to_marker(fs); - const bool hasLongnameMemberHeader = peek_value_from_stream(fs) == 0x2F2F; - if (hasLongnameMemberHeader) + const bool has_longname_member_header = peek_value_from_stream(fs) == 0x2F2F; + if (has_longname_member_header) { const ArchiveMemberHeader longnames_member_header = ArchiveMemberHeader::read(fs); marker.advance_by(ArchiveMemberHeader::HEADER_SIZE + longnames_member_header.member_size()); @@ -298,9 +298,9 @@ namespace vcpkg::CoffFileReader marker.set_to_offset(offset + ArchiveMemberHeader::HEADER_SIZE); // Skip the header, no need to read it. marker.seek_to_marker(fs); const auto first_two_bytes = peek_value_from_stream(fs); - const bool isImportHeader = to_machine_type(first_two_bytes) == MachineType::UNKNOWN; + const bool is_import_header = to_machine_type(first_two_bytes) == MachineType::UNKNOWN; const MachineType machine = - isImportHeader ? ImportHeader::read(fs).machine_type() : CoffFileHeader::read(fs).machine_type(); + is_import_header ? ImportHeader::read(fs).machine_type() : CoffFileHeader::read(fs).machine_type(); machine_types.insert(machine); } -- cgit v1.2.3 From fc27c9dd5c2559fb604cc2ce73cfb8e79ef0e406 Mon Sep 17 00:00:00 2001 From: Alexander Karatarakis Date: Sat, 7 Apr 2018 02:18:07 -0700 Subject: [cofffilereader] Use StringLiteral --- toolsrc/src/vcpkg/base/cofffilereader.cpp | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/toolsrc/src/vcpkg/base/cofffilereader.cpp b/toolsrc/src/vcpkg/base/cofffilereader.cpp index fdab307eb..fec26a441 100644 --- a/toolsrc/src/vcpkg/base/cofffilereader.cpp +++ b/toolsrc/src/vcpkg/base/cofffilereader.cpp @@ -2,6 +2,7 @@ #include #include +#include using namespace std; @@ -47,7 +48,7 @@ namespace vcpkg::CoffFileReader { static const size_t OFFSET_TO_PE_SIGNATURE_OFFSET = 0x3c; - static const char* PE_SIGNATURE = "PE\0\0"; + static const StringLiteral PE_SIGNATURE = "PE\0\0"; static const size_t PE_SIGNATURE_SIZE = 4; fs.seekg(OFFSET_TO_PE_SIGNATURE_OFFSET, ios_base::beg); @@ -56,7 +57,7 @@ namespace vcpkg::CoffFileReader fs.seekg(offset_to_pe_signature); char signature[PE_SIGNATURE_SIZE]; fs.read(signature, PE_SIGNATURE_SIZE); - verify_equal_strings(VCPKG_LINE_INFO, PE_SIGNATURE, signature, PE_SIGNATURE_SIZE, "PE_SIGNATURE"); + verify_equal_strings(VCPKG_LINE_INFO, PE_SIGNATURE.c_str(), signature, PE_SIGNATURE_SIZE, "PE_SIGNATURE"); fs.seekg(offset_to_pe_signature + PE_SIGNATURE_SIZE, ios_base::beg); } @@ -102,7 +103,7 @@ namespace vcpkg::CoffFileReader static ArchiveMemberHeader read(fstream& fs) { static const size_t HEADER_END_OFFSET = 58; - static const char* HEADER_END = "`\n"; + static const StringLiteral HEADER_END = "`\n"; static const size_t HEADER_END_SIZE = 2; ArchiveMemberHeader ret; @@ -113,7 +114,7 @@ namespace vcpkg::CoffFileReader { const std::string header_end = ret.data.substr(HEADER_END_OFFSET, HEADER_END_SIZE); verify_equal_strings( - VCPKG_LINE_INFO, HEADER_END, header_end.c_str(), HEADER_END_SIZE, "LIB HEADER_END"); + VCPKG_LINE_INFO, HEADER_END.c_str(), header_end.c_str(), HEADER_END_SIZE, "LIB HEADER_END"); } return ret; @@ -220,14 +221,14 @@ namespace vcpkg::CoffFileReader static void read_and_verify_archive_file_signature(fstream& fs) { - static const char* FILE_START = "!\n"; + static const StringLiteral FILE_START = "!\n"; static const size_t FILE_START_SIZE = 8; fs.seekg(fs.beg); char file_start[FILE_START_SIZE]; fs.read(file_start, FILE_START_SIZE); - verify_equal_strings(VCPKG_LINE_INFO, FILE_START, file_start, FILE_START_SIZE, "LIB FILE_START"); + verify_equal_strings(VCPKG_LINE_INFO, FILE_START.c_str(), file_start, FILE_START_SIZE, "LIB FILE_START"); } DllInfo read_dll(const fs::path& path) -- cgit v1.2.3 From d1420efa9faf9b18ba49f3990d8c0cebf7889641 Mon Sep 17 00:00:00 2001 From: Alexander Karatarakis Date: Sat, 7 Apr 2018 02:18:46 -0700 Subject: fs.beg -> std::festream::beg --- toolsrc/src/vcpkg/base/cofffilereader.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/toolsrc/src/vcpkg/base/cofffilereader.cpp b/toolsrc/src/vcpkg/base/cofffilereader.cpp index fec26a441..7538808c2 100644 --- a/toolsrc/src/vcpkg/base/cofffilereader.cpp +++ b/toolsrc/src/vcpkg/base/cofffilereader.cpp @@ -224,7 +224,7 @@ namespace vcpkg::CoffFileReader static const StringLiteral FILE_START = "!\n"; static const size_t FILE_START_SIZE = 8; - fs.seekg(fs.beg); + fs.seekg(std::fstream::beg); char file_start[FILE_START_SIZE]; fs.read(file_start, FILE_START_SIZE); -- cgit v1.2.3 From 84a0eaa0f2ead797cc78d74e3f35239430447383 Mon Sep 17 00:00:00 2001 From: Alexander Karatarakis Date: Sat, 7 Apr 2018 02:20:25 -0700 Subject: [cofffilereader.cpp] static const -> static constexpr --- toolsrc/src/vcpkg/base/cofffilereader.cpp | 54 +++++++++++++++---------------- 1 file changed, 27 insertions(+), 27 deletions(-) diff --git a/toolsrc/src/vcpkg/base/cofffilereader.cpp b/toolsrc/src/vcpkg/base/cofffilereader.cpp index 7538808c2..5b06a885c 100644 --- a/toolsrc/src/vcpkg/base/cofffilereader.cpp +++ b/toolsrc/src/vcpkg/base/cofffilereader.cpp @@ -46,10 +46,10 @@ namespace vcpkg::CoffFileReader static void read_and_verify_pe_signature(fstream& fs) { - static const size_t OFFSET_TO_PE_SIGNATURE_OFFSET = 0x3c; + static constexpr size_t OFFSET_TO_PE_SIGNATURE_OFFSET = 0x3c; - static const StringLiteral PE_SIGNATURE = "PE\0\0"; - static const size_t PE_SIGNATURE_SIZE = 4; + static constexpr StringLiteral PE_SIGNATURE = "PE\0\0"; + static constexpr size_t PE_SIGNATURE_SIZE = 4; fs.seekg(OFFSET_TO_PE_SIGNATURE_OFFSET, ios_base::beg); const auto offset_to_pe_signature = read_value_from_stream(fs); @@ -72,7 +72,7 @@ namespace vcpkg::CoffFileReader struct CoffFileHeader { - static const size_t HEADER_SIZE = 20; + static constexpr size_t HEADER_SIZE = 20; static CoffFileHeader read(fstream& fs) { @@ -84,8 +84,8 @@ namespace vcpkg::CoffFileReader MachineType machine_type() const { - static const size_t MACHINE_TYPE_OFFSET = 0; - static const size_t MACHINE_TYPE_SIZE = 2; + static constexpr size_t MACHINE_TYPE_OFFSET = 0; + static constexpr size_t MACHINE_TYPE_SIZE = 2; std::string machine_field_as_string = data.substr(MACHINE_TYPE_OFFSET, MACHINE_TYPE_SIZE); const auto machine = reinterpret_bytes(machine_field_as_string.c_str()); @@ -98,13 +98,13 @@ namespace vcpkg::CoffFileReader struct ArchiveMemberHeader { - static const size_t HEADER_SIZE = 60; + static constexpr size_t HEADER_SIZE = 60; static ArchiveMemberHeader read(fstream& fs) { - static const size_t HEADER_END_OFFSET = 58; - static const StringLiteral HEADER_END = "`\n"; - static const size_t HEADER_END_SIZE = 2; + static constexpr size_t HEADER_END_OFFSET = 58; + static constexpr StringLiteral HEADER_END = "`\n"; + static constexpr size_t HEADER_END_SIZE = 2; ArchiveMemberHeader ret; ret.data.resize(HEADER_SIZE); @@ -122,17 +122,17 @@ namespace vcpkg::CoffFileReader std::string name() const { - static const size_t HEADER_NAME_OFFSET = 0; - static const size_t HEADER_NAME_SIZE = 16; + static constexpr size_t HEADER_NAME_OFFSET = 0; + static constexpr size_t HEADER_NAME_SIZE = 16; return data.substr(HEADER_NAME_OFFSET, HEADER_NAME_SIZE); } uint64_t member_size() const { - static const size_t ALIGNMENT_SIZE = 2; + static constexpr size_t ALIGNMENT_SIZE = 2; - static const size_t HEADER_SIZE_OFFSET = 48; - static const size_t HEADER_SIZE_FIELD_SIZE = 10; + static constexpr size_t HEADER_SIZE_OFFSET = 48; + static constexpr size_t HEADER_SIZE_FIELD_SIZE = 10; const std::string as_string = data.substr(HEADER_SIZE_OFFSET, HEADER_SIZE_FIELD_SIZE); // This is in ASCII decimal representation const uint64_t value = std::strtoull(as_string.c_str(), nullptr, 10); @@ -148,7 +148,7 @@ namespace vcpkg::CoffFileReader { static OffsetsArray read(fstream& fs, const uint32_t offset_count) { - static const size_t OFFSET_WIDTH = 4; + static constexpr size_t OFFSET_WIDTH = 4; std::string raw_offsets; const size_t raw_offset_size = offset_count * OFFSET_WIDTH; @@ -178,17 +178,17 @@ namespace vcpkg::CoffFileReader struct ImportHeader { - static const size_t HEADER_SIZE = 20; + static constexpr size_t HEADER_SIZE = 20; static ImportHeader read(fstream& fs) { - static const size_t SIG1_OFFSET = 0; - static const auto SIG1 = static_cast(MachineType::UNKNOWN); - static const size_t SIG1_SIZE = 2; + static constexpr size_t SIG1_OFFSET = 0; + static constexpr auto SIG1 = static_cast(MachineType::UNKNOWN); + static constexpr size_t SIG1_SIZE = 2; - static const size_t SIG2_OFFSET = 2; - static const uint16_t SIG2 = 0xFFFF; - static const size_t SIG2_SIZE = 2; + static constexpr size_t SIG2_OFFSET = 2; + static constexpr uint16_t SIG2 = 0xFFFF; + static constexpr size_t SIG2_SIZE = 2; ImportHeader ret; ret.data.resize(HEADER_SIZE); @@ -207,8 +207,8 @@ namespace vcpkg::CoffFileReader MachineType machine_type() const { - static const size_t MACHINE_TYPE_OFFSET = 6; - static const size_t MACHINE_TYPE_SIZE = 2; + static constexpr size_t MACHINE_TYPE_OFFSET = 6; + static constexpr size_t MACHINE_TYPE_SIZE = 2; std::string machine_field_as_string = data.substr(MACHINE_TYPE_OFFSET, MACHINE_TYPE_SIZE); const auto machine = reinterpret_bytes(machine_field_as_string.c_str()); @@ -221,8 +221,8 @@ namespace vcpkg::CoffFileReader static void read_and_verify_archive_file_signature(fstream& fs) { - static const StringLiteral FILE_START = "!\n"; - static const size_t FILE_START_SIZE = 8; + static constexpr StringLiteral FILE_START = "!\n"; + static constexpr size_t FILE_START_SIZE = 8; fs.seekg(std::fstream::beg); -- cgit v1.2.3 From 4f1c5e0b9ad516b1b506154fe4bf88d96e8664c8 Mon Sep 17 00:00:00 2001 From: Alexander Karatarakis Date: Sat, 7 Apr 2018 02:32:40 -0700 Subject: Use instead of . Default construct. --- toolsrc/src/vcpkg/base/system.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/toolsrc/src/vcpkg/base/system.cpp b/toolsrc/src/vcpkg/base/system.cpp index 171dd2bbf..ea74f872e 100644 --- a/toolsrc/src/vcpkg/base/system.cpp +++ b/toolsrc/src/vcpkg/base/system.cpp @@ -5,7 +5,7 @@ #include #include -#include +#include #if defined(__APPLE__) #include @@ -23,7 +23,7 @@ namespace vcpkg::System { using std::chrono::system_clock; std::time_t now_time = system_clock::to_time_t(system_clock::now()); - tm parts; + tm parts{}; #if defined(_WIN32) localtime_s(&parts, &now_time); #else -- cgit v1.2.3 From 9725e59b997e1db31db9b9dfcb96725cbe0f474d Mon Sep 17 00:00:00 2001 From: Alexander Karatarakis Date: Sat, 7 Apr 2018 02:37:02 -0700 Subject: [system.cpp] Naming convention, const, auto& --- toolsrc/src/vcpkg/base/system.cpp | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/toolsrc/src/vcpkg/base/system.cpp b/toolsrc/src/vcpkg/base/system.cpp index ea74f872e..3f2f47d72 100644 --- a/toolsrc/src/vcpkg/base/system.cpp +++ b/toolsrc/src/vcpkg/base/system.cpp @@ -158,7 +158,7 @@ namespace vcpkg::System #if defined(_WIN32) static const std::string SYSTEM_ROOT = get_environment_variable("SystemRoot").value_or_exit(VCPKG_LINE_INFO); static const std::string SYSTEM_32 = SYSTEM_ROOT + R"(\system32)"; - std::string NEW_PATH = Strings::format( + std::string new_path = Strings::format( R"(Path=%s;%s;%s\Wbem;%s\WindowsPowerShell\v1.0\)", SYSTEM_32, SYSTEM_ROOT, SYSTEM_32, SYSTEM_32); std::vector env_wstrings = { @@ -225,13 +225,13 @@ namespace vcpkg::System } if (extra_env.find("PATH") != extra_env.end()) - NEW_PATH += Strings::format(";%s", extra_env.find("PATH")->second); - env_cstr.append(Strings::to_utf16(NEW_PATH)); + new_path += Strings::format(";%s", extra_env.find("PATH")->second); + env_cstr.append(Strings::to_utf16(new_path)); env_cstr.push_back(L'\0'); env_cstr.append(L"VSLANG=1033"); env_cstr.push_back(L'\0'); - for (auto item : extra_env) + for (const auto& item : extra_env) { if (item.first == "PATH") continue; env_cstr.append(Strings::to_utf16(item.first)); @@ -339,7 +339,7 @@ namespace vcpkg::System const auto ec = _pclose(pipe); remove_byte_order_marks(&output); - Debug::println("_pclose() returned %d after %8d us", ec, (int)timer.microseconds()); + Debug::println("_pclose() returned %d after %8d us", ec, static_cast(timer.microseconds())); return {ec, Strings::to_utf8(output)}; #else -- cgit v1.2.3 From 30e516cd6163fb06d517669497b1aa7ad6db666f Mon Sep 17 00:00:00 2001 From: Alexander Karatarakis Date: Sat, 7 Apr 2018 02:39:23 -0700 Subject: constructor order of init --- toolsrc/src/vcpkg/binaryparagraph.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/toolsrc/src/vcpkg/binaryparagraph.cpp b/toolsrc/src/vcpkg/binaryparagraph.cpp index 7a8b0d577..73ca23df1 100644 --- a/toolsrc/src/vcpkg/binaryparagraph.cpp +++ b/toolsrc/src/vcpkg/binaryparagraph.cpp @@ -79,7 +79,7 @@ namespace vcpkg } BinaryParagraph::BinaryParagraph(const SourceParagraph& spgh, const FeatureParagraph& fpgh, const Triplet& triplet) - : version(), feature(fpgh.name), description(fpgh.description), maintainer() + : version(), description(fpgh.description), maintainer(), feature(fpgh.name) { this->spec = PackageSpec::from_name_and_triplet(spgh.name, triplet).value_or_exit(VCPKG_LINE_INFO); this->depends = filter_dependencies(fpgh.depends, triplet); -- cgit v1.2.3 From 4e4afa29bfc053d852544a24c2ecaeff165521fd Mon Sep 17 00:00:00 2001 From: Alexander Karatarakis Date: Sat, 7 Apr 2018 02:47:31 -0700 Subject: [build.cpp] Clang tidy fixes --- toolsrc/src/vcpkg/build.cpp | 73 ++++++++++++++++++++++----------------------- 1 file changed, 35 insertions(+), 38 deletions(-) diff --git a/toolsrc/src/vcpkg/build.cpp b/toolsrc/src/vcpkg/build.cpp index b7055100b..76381f862 100644 --- a/toolsrc/src/vcpkg/build.cpp +++ b/toolsrc/src/vcpkg/build.cpp @@ -64,7 +64,8 @@ namespace vcpkg::Build::Command const Build::BuildPackageOptions build_package_options{Build::UseHeadVersion::NO, Build::AllowDownloads::YES, Build::CleanBuildtrees::NO, - Build::CleanPackages::NO}; + Build::CleanPackages::NO, + Build::DownloadTool::BUILT_IN}; std::set features_as_set(full_spec.features.begin(), full_spec.features.end()); features_as_set.emplace("core"); @@ -210,7 +211,7 @@ namespace vcpkg::Build for (auto&& host : host_architectures) { - auto it = Util::find_if(toolset.supported_architectures, [&](const ToolsetArchOption& opt) { + const auto it = Util::find_if(toolset.supported_architectures, [&](const ToolsetArchOption& opt) { return host == opt.host_arch && target_arch == opt.target_arch; }); if (it != toolset.supported_architectures.end()) return it->name; @@ -279,7 +280,7 @@ namespace vcpkg::Build { const Triplet& triplet = config.triplet; - auto dep_strings = + const std::vector dep_strings = Util::fmap_flatten(config.feature_list, [&](std::string const& feature) -> std::vector { if (feature == "core") { @@ -302,7 +303,7 @@ namespace vcpkg::Build if (fspec.feature().empty()) { // reference to default features - auto it = status_db.find_installed(fspec.spec()); + const auto it = status_db.find_installed(fspec.spec()); if (it == status_db.end()) { // not currently installed, so just leave the default reference so it will fail later @@ -310,9 +311,9 @@ namespace vcpkg::Build } else { - ret.push_back(FeatureSpec{fspec.spec(), "core"}); + ret.emplace_back(fspec.spec(), "core"); for (auto&& default_feature : it->get()->package.default_features) - ret.push_back(FeatureSpec{fspec.spec(), default_feature}); + ret.emplace_back(fspec.spec(), default_feature); } } else @@ -463,7 +464,7 @@ namespace vcpkg::Build abi_tag_entries.emplace_back(AbiEntry{"triplet", pre_build_info.triplet_abi_tag}); - std::string features = Strings::join(";", config.feature_list); + const std::string features = Strings::join(";", config.feature_list); abi_tag_entries.emplace_back(AbiEntry{"features", features}); if (config.build_package_options.use_head_version == UseHeadVersion::YES) @@ -471,7 +472,7 @@ namespace vcpkg::Build Util::sort(abi_tag_entries); - std::string full_abi_info = + const std::string full_abi_info = Strings::join("", abi_tag_entries, [](const AbiEntry& p) { return p.key + " " + p.value + "\n"; }); if (GlobalState::debugging) @@ -491,19 +492,17 @@ namespace vcpkg::Build { std::error_code ec; fs.create_directories(paths.buildtrees / name, ec); - auto abi_file_path = paths.buildtrees / name / (triplet.canonical_name() + ".vcpkg_abi_info.txt"); + const auto abi_file_path = paths.buildtrees / name / (triplet.canonical_name() + ".vcpkg_abi_info.txt"); fs.write_contents(abi_file_path, full_abi_info); return AbiTagAndFile{Commands::Hash::get_file_hash(paths, abi_file_path, "SHA1"), abi_file_path}; } - else - { - System::println( - "Warning: binary caching disabled because abi keys are missing values:\n%s", - Strings::join("", abi_tag_entries_missing, [](const AbiEntry& e) { return " " + e.key + "\n"; })); - return nullopt; - } + System::println( + "Warning: binary caching disabled because abi keys are missing values:\n%s", + Strings::join("", abi_tag_entries_missing, [](const AbiEntry& e) { return " " + e.key + "\n"; })); + + return nullopt; } static void decompress_archive(const VcpkgPaths& paths, const PackageSpec& spec, const fs::path& archive_path) @@ -518,10 +517,10 @@ namespace vcpkg::Build Checks::check_exit(VCPKG_LINE_INFO, files.empty(), "unable to clear path: %s", pkg_path.u8string()); #if defined(_WIN32) - auto&& _7za = paths.get_tool_exe(Tools::SEVEN_ZIP); + auto&& seven_zip_exe = paths.get_tool_exe(Tools::SEVEN_ZIP); System::cmd_execute_clean(Strings::format( - R"("%s" x "%s" -o"%s" -y >nul)", _7za.u8string(), archive_path.u8string(), pkg_path.u8string())); + R"("%s" x "%s" -o"%s" -y >nul)", seven_zip_exe.u8string(), archive_path.u8string(), pkg_path.u8string())); #else System::cmd_execute_clean(Strings::format( R"(unzip -qq "%s" "-d%s")", archive_path.u8string(), pkg_path.u8string())); @@ -538,11 +537,11 @@ namespace vcpkg::Build Checks::check_exit( VCPKG_LINE_INFO, !fs.exists(tmp_archive_path), "Could not remove file: %s", tmp_archive_path.u8string()); #if defined(_WIN32) - auto&& _7za = paths.get_tool_exe(Tools::SEVEN_ZIP); + auto&& seven_zip_exe = paths.get_tool_exe(Tools::SEVEN_ZIP); System::cmd_execute_clean(Strings::format( R"("%s" a "%s" "%s\*" >nul)", - _7za.u8string(), + seven_zip_exe.u8string(), tmp_archive_path.u8string(), paths.package_dir(spec).u8string())); #else @@ -584,7 +583,7 @@ namespace vcpkg::Build for (auto&& pspec : dep_pspecs) { if (pspec == spec) continue; - auto status_it = status_db.find_installed(pspec); + const auto status_it = status_db.find_installed(pspec); Checks::check_exit(VCPKG_LINE_INFO, status_it != status_db.end()); dependency_abis.emplace_back( AbiEntry{status_it->get()->package.spec.name(), status_it->get()->package.abi}); @@ -594,17 +593,15 @@ namespace vcpkg::Build auto maybe_abi_tag_and_file = compute_abi_tag(paths, config, pre_build_info, dependency_abis); - std::unique_ptr bcf; - - auto abi_tag_and_file = maybe_abi_tag_and_file.get(); + const auto abi_tag_and_file = maybe_abi_tag_and_file.get(); if (GlobalState::g_binary_caching && abi_tag_and_file) { - auto archives_root_dir = paths.root / "archives"; - auto archive_name = abi_tag_and_file->tag + ".zip"; - auto archive_subpath = fs::u8path(abi_tag_and_file->tag.substr(0, 2)) / archive_name; - auto archive_path = archives_root_dir / archive_subpath; - auto archive_tombstone_path = archives_root_dir / "fail" / archive_subpath; + const fs::path archives_root_dir = paths.root / "archives"; + const std::string archive_name = abi_tag_and_file->tag + ".zip"; + const fs::path archive_subpath = fs::u8path(abi_tag_and_file->tag.substr(0, 2)) / archive_name; + const fs::path archive_path = archives_root_dir / archive_subpath; + const fs::path archive_tombstone_path = archives_root_dir / "fail" / archive_subpath; if (fs.exists(archive_path)) { @@ -613,10 +610,12 @@ namespace vcpkg::Build decompress_archive(paths, spec, archive_path); auto maybe_bcf = Paragraphs::try_load_cached_package(paths, spec); - bcf = std::make_unique(std::move(maybe_bcf).value_or_exit(VCPKG_LINE_INFO)); + std::unique_ptr bcf = + std::make_unique(std::move(maybe_bcf).value_or_exit(VCPKG_LINE_INFO)); return {BuildResult::SUCCEEDED, std::move(bcf)}; } - else if (fs.exists(archive_tombstone_path)) + + if (fs.exists(archive_tombstone_path)) { System::println("Found failure tombstone: %s", archive_tombstone_path.u8string()); return BuildResult::BUILD_FAILED; @@ -635,7 +634,7 @@ namespace vcpkg::Build if (result.code == BuildResult::SUCCEEDED) { - auto tmp_archive_path = paths.buildtrees / spec.name() / (spec.triplet().to_string() + ".zip"); + const auto tmp_archive_path = paths.buildtrees / spec.name() / (spec.triplet().to_string() + ".zip"); compress_archive(paths, spec, tmp_archive_path); @@ -656,11 +655,9 @@ namespace vcpkg::Build return result; } - else - { - return do_build_package_and_clean_buildtrees( - paths, pre_build_info, spec, maybe_abi_tag_and_file.value_or(AbiTagAndFile{}).tag, config, status_db); - } + + return do_build_package_and_clean_buildtrees( + paths, pre_build_info, spec, maybe_abi_tag_and_file.value_or(AbiTagAndFile{}).tag, config, status_db); } const std::string& to_string(const BuildResult build_result) @@ -774,7 +771,7 @@ namespace vcpkg::Build const fs::path ports_cmake_script_path = paths.scripts / "get_triplet_environment.cmake"; const fs::path triplet_file_path = paths.triplets / (triplet.canonical_name() + ".cmake"); - auto triplet_abi_tag = [&]() { + const std::string triplet_abi_tag = [&]() { static std::map s_hash_cache; if (GlobalState::g_binary_caching) -- cgit v1.2.3 From 627e91a08fbd2cc407b87bbf961067761dec78c0 Mon Sep 17 00:00:00 2001 From: Alexander Karatarakis Date: Sat, 7 Apr 2018 02:51:36 -0700 Subject: Util::unused() for commands that don't have arguments --- toolsrc/src/vcpkg/commands.cache.cpp | 2 +- toolsrc/src/vcpkg/commands.create.cpp | 2 +- toolsrc/src/vcpkg/commands.dependinfo.cpp | 3 +-- toolsrc/src/vcpkg/commands.import.cpp | 2 +- toolsrc/src/vcpkg/commands.integrate.cpp | 2 +- toolsrc/src/vcpkg/commands.owns.cpp | 2 +- toolsrc/src/vcpkg/commands.portsdiff.cpp | 2 +- toolsrc/src/vcpkg/commands.version.cpp | 2 +- 8 files changed, 8 insertions(+), 9 deletions(-) diff --git a/toolsrc/src/vcpkg/commands.cache.cpp b/toolsrc/src/vcpkg/commands.cache.cpp index 85bf5fb4d..a9d8ba03c 100644 --- a/toolsrc/src/vcpkg/commands.cache.cpp +++ b/toolsrc/src/vcpkg/commands.cache.cpp @@ -38,7 +38,7 @@ namespace vcpkg::Commands::Cache void perform_and_exit(const VcpkgCmdArguments& args, const VcpkgPaths& paths) { - args.parse_arguments(COMMAND_STRUCTURE); + Util::unused(args.parse_arguments(COMMAND_STRUCTURE)); const std::vector binary_paragraphs = read_all_binary_paragraphs(paths); if (binary_paragraphs.empty()) diff --git a/toolsrc/src/vcpkg/commands.create.cpp b/toolsrc/src/vcpkg/commands.create.cpp index 60769c9ef..dfb3ab784 100644 --- a/toolsrc/src/vcpkg/commands.create.cpp +++ b/toolsrc/src/vcpkg/commands.create.cpp @@ -18,7 +18,7 @@ namespace vcpkg::Commands::Create void perform_and_exit(const VcpkgCmdArguments& args, const VcpkgPaths& paths) { - args.parse_arguments(COMMAND_STRUCTURE); + Util::unused(args.parse_arguments(COMMAND_STRUCTURE)); const std::string port_name = args.command_arguments.at(0); const std::string url = args.command_arguments.at(1); diff --git a/toolsrc/src/vcpkg/commands.dependinfo.cpp b/toolsrc/src/vcpkg/commands.dependinfo.cpp index bb300d96e..1ca658216 100644 --- a/toolsrc/src/vcpkg/commands.dependinfo.cpp +++ b/toolsrc/src/vcpkg/commands.dependinfo.cpp @@ -19,7 +19,7 @@ namespace vcpkg::Commands::DependInfo void perform_and_exit(const VcpkgCmdArguments& args, const VcpkgPaths& paths) { - args.parse_arguments(COMMAND_STRUCTURE); + Util::unused(args.parse_arguments(COMMAND_STRUCTURE)); std::vector> source_control_files = Paragraphs::load_all_ports(paths.get_filesystem(), paths.ports); @@ -30,7 +30,6 @@ namespace vcpkg::Commands::DependInfo Util::erase_remove_if(source_control_files, [&](const std::unique_ptr& source_control_file) { - const SourceParagraph& source_paragraph = *source_control_file->core_paragraph; if (Strings::case_insensitive_ascii_contains(source_paragraph.name, filter)) diff --git a/toolsrc/src/vcpkg/commands.import.cpp b/toolsrc/src/vcpkg/commands.import.cpp index 24394207b..4b595697a 100644 --- a/toolsrc/src/vcpkg/commands.import.cpp +++ b/toolsrc/src/vcpkg/commands.import.cpp @@ -103,7 +103,7 @@ namespace vcpkg::Commands::Import void perform_and_exit(const VcpkgCmdArguments& args, const VcpkgPaths& paths) { - args.parse_arguments(COMMAND_STRUCTURE); + Util::unused(args.parse_arguments(COMMAND_STRUCTURE)); const fs::path control_file_path(args.command_arguments[0]); const fs::path include_directory(args.command_arguments[1]); diff --git a/toolsrc/src/vcpkg/commands.integrate.cpp b/toolsrc/src/vcpkg/commands.integrate.cpp index d6ae27181..044a88d80 100644 --- a/toolsrc/src/vcpkg/commands.integrate.cpp +++ b/toolsrc/src/vcpkg/commands.integrate.cpp @@ -352,7 +352,7 @@ With a project open, go to Tools->NuGet Package Manager->Package Manager Console void perform_and_exit(const VcpkgCmdArguments& args, const VcpkgPaths& paths) { - args.parse_arguments(COMMAND_STRUCTURE); + Util::unused(args.parse_arguments(COMMAND_STRUCTURE)); #if defined(_WIN32) if (args.command_arguments[0] == Subcommand::INSTALL) diff --git a/toolsrc/src/vcpkg/commands.owns.cpp b/toolsrc/src/vcpkg/commands.owns.cpp index 52249187b..ee9584651 100644 --- a/toolsrc/src/vcpkg/commands.owns.cpp +++ b/toolsrc/src/vcpkg/commands.owns.cpp @@ -34,7 +34,7 @@ namespace vcpkg::Commands::Owns void perform_and_exit(const VcpkgCmdArguments& args, const VcpkgPaths& paths) { - args.parse_arguments(COMMAND_STRUCTURE); + Util::unused(args.parse_arguments(COMMAND_STRUCTURE)); const StatusParagraphs status_db = database_load_check(paths); search_file(paths, args.command_arguments[0], status_db); diff --git a/toolsrc/src/vcpkg/commands.portsdiff.cpp b/toolsrc/src/vcpkg/commands.portsdiff.cpp index c6b02582f..0a72b3435 100644 --- a/toolsrc/src/vcpkg/commands.portsdiff.cpp +++ b/toolsrc/src/vcpkg/commands.portsdiff.cpp @@ -128,7 +128,7 @@ namespace vcpkg::Commands::PortsDiff void perform_and_exit(const VcpkgCmdArguments& args, const VcpkgPaths& paths) { - args.parse_arguments(COMMAND_STRUCTURE); + Util::unused(args.parse_arguments(COMMAND_STRUCTURE)); const fs::path& git_exe = paths.get_tool_exe(Tools::GIT); diff --git a/toolsrc/src/vcpkg/commands.version.cpp b/toolsrc/src/vcpkg/commands.version.cpp index ffc5d2c8f..2ad91b57d 100644 --- a/toolsrc/src/vcpkg/commands.version.cpp +++ b/toolsrc/src/vcpkg/commands.version.cpp @@ -83,7 +83,7 @@ namespace vcpkg::Commands::Version void perform_and_exit(const VcpkgCmdArguments& args) { - args.parse_arguments(COMMAND_STRUCTURE); + Util::unused(args.parse_arguments(COMMAND_STRUCTURE)); System::println("Vcpkg package management program version %s\n" "\n" -- cgit v1.2.3 From 8d343ce6dfc850abdfbfd098765df072271ae6ad Mon Sep 17 00:00:00 2001 From: Alexander Karatarakis Date: Sat, 7 Apr 2018 02:58:30 -0700 Subject: [commands] Clang-tidy fixes --- toolsrc/src/vcpkg/commands.contact.cpp | 14 +++++++++----- toolsrc/src/vcpkg/commands.edit.cpp | 2 +- toolsrc/src/vcpkg/commands.integrate.cpp | 2 +- toolsrc/src/vcpkg/commands.list.cpp | 2 +- toolsrc/src/vcpkg/commands.upgrade.cpp | 3 ++- 5 files changed, 14 insertions(+), 9 deletions(-) diff --git a/toolsrc/src/vcpkg/commands.contact.cpp b/toolsrc/src/vcpkg/commands.contact.cpp index ffed07557..9f86a67dc 100644 --- a/toolsrc/src/vcpkg/commands.contact.cpp +++ b/toolsrc/src/vcpkg/commands.contact.cpp @@ -14,24 +14,28 @@ namespace vcpkg::Commands::Contact return S_EMAIL; } - static const CommandSwitch switches[] = {{"--survey", "Launch default browser to the current vcpkg survey"}}; + static constexpr StringLiteral OPTION_SURVEY = "--survey"; + + static constexpr std::array SWITCHES = {{ + {OPTION_SURVEY, "Launch default browser to the current vcpkg survey"}, + }}; const CommandStructure COMMAND_STRUCTURE = { Help::create_example_string("contact"), 0, 0, - {switches, {}}, + {SWITCHES, {}}, nullptr, }; void perform_and_exit(const VcpkgCmdArguments& args) { - auto parsed_args = args.parse_arguments(COMMAND_STRUCTURE); + const ParsedArguments parsed_args = args.parse_arguments(COMMAND_STRUCTURE); - if (Util::Sets::contains(parsed_args.switches, switches[0].name)) + if (Util::Sets::contains(parsed_args.switches, SWITCHES[0].name)) { auto maybe_now = Chrono::CTime::get_current_date_time(); - if (auto p_now = maybe_now.get()) + if (const auto p_now = maybe_now.get()) { auto& fs = Files::get_real_filesystem(); auto config = UserConfig::try_read_data(fs); diff --git a/toolsrc/src/vcpkg/commands.edit.cpp b/toolsrc/src/vcpkg/commands.edit.cpp index 6c696018e..f0ddd43c5 100644 --- a/toolsrc/src/vcpkg/commands.edit.cpp +++ b/toolsrc/src/vcpkg/commands.edit.cpp @@ -93,7 +93,7 @@ namespace vcpkg::Commands::Edit const std::vector from_registry = find_from_registry(); candidate_paths.insert(candidate_paths.end(), from_registry.cbegin(), from_registry.cend()); - auto it = Util::find_if(candidate_paths, [&](const fs::path& p) { return fs.exists(p); }); + const auto it = Util::find_if(candidate_paths, [&](const fs::path& p) { return fs.exists(p); }); if (it == candidate_paths.cend()) { System::println( diff --git a/toolsrc/src/vcpkg/commands.integrate.cpp b/toolsrc/src/vcpkg/commands.integrate.cpp index 044a88d80..e70d9b2e3 100644 --- a/toolsrc/src/vcpkg/commands.integrate.cpp +++ b/toolsrc/src/vcpkg/commands.integrate.cpp @@ -108,7 +108,7 @@ namespace vcpkg::Commands::Integrate #if defined(_WIN32) static ElevationPromptChoice elevated_cmd_execute(const std::string& param) { - SHELLEXECUTEINFOW sh_ex_info = {0}; + SHELLEXECUTEINFOW sh_ex_info{}; sh_ex_info.cbSize = sizeof(sh_ex_info); sh_ex_info.fMask = SEE_MASK_NOCLOSEPROCESS; sh_ex_info.hwnd = nullptr; diff --git a/toolsrc/src/vcpkg/commands.list.cpp b/toolsrc/src/vcpkg/commands.list.cpp index a5efd5442..4c4518d25 100644 --- a/toolsrc/src/vcpkg/commands.list.cpp +++ b/toolsrc/src/vcpkg/commands.list.cpp @@ -10,7 +10,7 @@ namespace vcpkg::Commands::List static constexpr StringLiteral OPTION_FULLDESC = "--x-full-desc"; // TODO: This should find a better home, eventually - static void do_print(const StatusParagraph& pgh, bool full_desc) + static void do_print(const StatusParagraph& pgh, const bool full_desc) { if (full_desc) { diff --git a/toolsrc/src/vcpkg/commands.upgrade.cpp b/toolsrc/src/vcpkg/commands.upgrade.cpp index c5b48f2a2..a902ddeaf 100644 --- a/toolsrc/src/vcpkg/commands.upgrade.cpp +++ b/toolsrc/src/vcpkg/commands.upgrade.cpp @@ -144,7 +144,8 @@ namespace vcpkg::Commands::Upgrade const Build::BuildPackageOptions install_plan_options = {Build::UseHeadVersion::NO, Build::AllowDownloads::YES, Build::CleanBuildtrees::NO, - Build::CleanPackages::NO}; + Build::CleanPackages::NO, + Build::DownloadTool::BUILT_IN}; // Set build settings for all install actions for (auto&& action : plan) -- cgit v1.2.3 From f07026539835aad4b87e2a88b3e38e144edaa9dd Mon Sep 17 00:00:00 2001 From: Alexander Karatarakis Date: Sat, 7 Apr 2018 03:12:15 -0700 Subject: [export.cpp] Define all valuse in BuildOptions --- toolsrc/src/vcpkg/export.cpp | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/toolsrc/src/vcpkg/export.cpp b/toolsrc/src/vcpkg/export.cpp index 32151c791..eda909635 100644 --- a/toolsrc/src/vcpkg/export.cpp +++ b/toolsrc/src/vcpkg/export.cpp @@ -70,8 +70,11 @@ namespace vcpkg::Export { static constexpr std::array ORDER = {ExportPlanType::ALREADY_BUILT, ExportPlanType::NOT_BUILT}; - static constexpr Build::BuildPackageOptions build_options = {Build::UseHeadVersion::NO, - Build::AllowDownloads::YES}; + static constexpr Build::BuildPackageOptions BUILD_OPTIONS = {Build::UseHeadVersion::NO, + Build::AllowDownloads::YES, + Build::CleanBuildtrees::NO, + Build::CleanPackages::NO, + Build::DownloadTool::BUILT_IN}; for (const ExportPlanType plan_type : ORDER) { @@ -84,7 +87,7 @@ namespace vcpkg::Export std::vector cont = it->second; std::sort(cont.begin(), cont.end(), &ExportPlanAction::compare_by_name); const std::string as_string = Strings::join("\n", cont, [](const ExportPlanAction* p) { - return Dependencies::to_output_string(p->request_type, p->spec.to_string(), build_options); + return Dependencies::to_output_string(p->request_type, p->spec.to_string(), BUILD_OPTIONS); }); switch (plan_type) -- cgit v1.2.3 From 269e78bb610369cbdc193be92c4fdd5bba1f7831 Mon Sep 17 00:00:00 2001 From: Alexander Karatarakis Date: Sat, 7 Apr 2018 03:12:33 -0700 Subject: Remove unused #include directives --- toolsrc/src/vcpkg/export.cpp | 2 -- toolsrc/src/vcpkg/parse.cpp | 1 - toolsrc/src/vcpkg/triplet.cpp | 3 +-- 3 files changed, 1 insertion(+), 5 deletions(-) diff --git a/toolsrc/src/vcpkg/export.cpp b/toolsrc/src/vcpkg/export.cpp index eda909635..85a4dfad1 100644 --- a/toolsrc/src/vcpkg/export.cpp +++ b/toolsrc/src/vcpkg/export.cpp @@ -13,8 +13,6 @@ #include #include -#include - namespace vcpkg::Export { using Dependencies::ExportPlanAction; diff --git a/toolsrc/src/vcpkg/parse.cpp b/toolsrc/src/vcpkg/parse.cpp index c2670f561..d50296cf8 100644 --- a/toolsrc/src/vcpkg/parse.cpp +++ b/toolsrc/src/vcpkg/parse.cpp @@ -2,7 +2,6 @@ #include -#include #include namespace vcpkg::Parse diff --git a/toolsrc/src/vcpkg/triplet.cpp b/toolsrc/src/vcpkg/triplet.cpp index ef0fab183..c4ad3f690 100644 --- a/toolsrc/src/vcpkg/triplet.cpp +++ b/toolsrc/src/vcpkg/triplet.cpp @@ -1,6 +1,5 @@ #include "pch.h" -#include #include #include @@ -38,7 +37,7 @@ namespace vcpkg const Triplet Triplet::ARM_UWP = from_canonical_name("arm-uwp"); const Triplet Triplet::ARM64_UWP = from_canonical_name("arm64-uwp"); const Triplet Triplet::ARM_WINDOWS = from_canonical_name("arm-windows"); - const Triplet Triplet::ARM64_WINDOWS = from_canonical_name("arm64-windows"); + const Triplet Triplet::ARM64_WINDOWS = from_canonical_name("arm64-windows"); bool Triplet::operator==(const Triplet& other) const { return this->m_instance == other.m_instance; } -- cgit v1.2.3 From 77338ee0df064fe89f9eb991b61bc9bb467f755c Mon Sep 17 00:00:00 2001 From: Alexander Karatarakis Date: Sat, 7 Apr 2018 03:24:45 -0700 Subject: Remove more unused #include directives --- toolsrc/include/vcpkg/base/chrono.h | 1 - toolsrc/include/vcpkg/export.ifw.h | 2 -- toolsrc/include/vcpkg/paragraphs.h | 3 --- toolsrc/include/vcpkg/vcpkgcmdarguments.h | 1 - toolsrc/include/vcpkg/vcpkgpaths.h | 2 -- toolsrc/src/vcpkg/commands.portsdiff.cpp | 1 + 6 files changed, 1 insertion(+), 9 deletions(-) diff --git a/toolsrc/include/vcpkg/base/chrono.h b/toolsrc/include/vcpkg/base/chrono.h index 4291115f7..7b393e377 100644 --- a/toolsrc/include/vcpkg/base/chrono.h +++ b/toolsrc/include/vcpkg/base/chrono.h @@ -2,7 +2,6 @@ #include #include -#include #include namespace vcpkg::Chrono diff --git a/toolsrc/include/vcpkg/export.ifw.h b/toolsrc/include/vcpkg/export.ifw.h index d28a4436d..b1573924e 100644 --- a/toolsrc/include/vcpkg/export.ifw.h +++ b/toolsrc/include/vcpkg/export.ifw.h @@ -3,8 +3,6 @@ #include #include -#include - #include #include diff --git a/toolsrc/include/vcpkg/paragraphs.h b/toolsrc/include/vcpkg/paragraphs.h index fa0265b75..56f09387a 100644 --- a/toolsrc/include/vcpkg/paragraphs.h +++ b/toolsrc/include/vcpkg/paragraphs.h @@ -3,12 +3,9 @@ #include #include #include -#include #include -#include - namespace vcpkg::Paragraphs { using RawParagraph = Parse::RawParagraph; diff --git a/toolsrc/include/vcpkg/vcpkgcmdarguments.h b/toolsrc/include/vcpkg/vcpkgcmdarguments.h index f449887f1..de65eec28 100644 --- a/toolsrc/include/vcpkg/vcpkgcmdarguments.h +++ b/toolsrc/include/vcpkg/vcpkgcmdarguments.h @@ -1,6 +1,5 @@ #pragma once -#include #include #include #include diff --git a/toolsrc/include/vcpkg/vcpkgpaths.h b/toolsrc/include/vcpkg/vcpkgpaths.h index fc6b319d8..9c8f2911a 100644 --- a/toolsrc/include/vcpkg/vcpkgpaths.h +++ b/toolsrc/include/vcpkg/vcpkgpaths.h @@ -8,8 +8,6 @@ #include #include -#include - namespace vcpkg { namespace Tools diff --git a/toolsrc/src/vcpkg/commands.portsdiff.cpp b/toolsrc/src/vcpkg/commands.portsdiff.cpp index 0a72b3435..2d2b4bd5f 100644 --- a/toolsrc/src/vcpkg/commands.portsdiff.cpp +++ b/toolsrc/src/vcpkg/commands.portsdiff.cpp @@ -3,6 +3,7 @@ #include #include #include +#include #include #include -- cgit v1.2.3 From 1e1899c3a27f3816c39145049e2c33832071b8c6 Mon Sep 17 00:00:00 2001 From: Alexander Karatarakis Date: Sun, 8 Apr 2018 15:12:19 -0700 Subject: [ps1] Handle "downloading" local files Fixes #3230 --- scripts/VcpkgPowershellUtils.ps1 | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/scripts/VcpkgPowershellUtils.ps1 b/scripts/VcpkgPowershellUtils.ps1 index f6882409b..3ab301c55 100644 --- a/scripts/VcpkgPowershellUtils.ps1 +++ b/scripts/VcpkgPowershellUtils.ps1 @@ -166,6 +166,12 @@ function vcpkgDownloadFileWithAria2( [Parameter(Mandatory=$true)][string]$ari $parentDir = split-path -parent $downloadPath $filename = split-path -leaf $downloadPath + if ((Test-Path $url) -or ($url.StartsWith("file://"))) # if is local file + { + vcpkgDownloadFile $url $downloadPath $sha512 + return + } + $ec = vcpkgInvokeCommand "$aria2exe" "--dir `"$parentDir`" --out `"$filename.part`" $url" if ($ec -ne 0) { -- cgit v1.2.3 From aa5f9f00e039ff22c287e4c580608d49f473a79b Mon Sep 17 00:00:00 2001 From: Robert Schumacher Date: Mon, 9 Apr 2018 19:31:48 -0700 Subject: [folly] Update taking into account change in cmake files location --- ports/folly/CONTROL | 2 +- ports/folly/portfile.cmake | 6 +++--- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/ports/folly/CONTROL b/ports/folly/CONTROL index cb3a464af..865c93ce6 100644 --- a/ports/folly/CONTROL +++ b/ports/folly/CONTROL @@ -1,5 +1,5 @@ Source: folly -Version: 2018.03.19.00-2 +Version: 2018.04.09.00 Description: An open-source C++ library developed and used at Facebook. The library is UNSTABLE on Windows Build-Depends: openssl, libevent, double-conversion, glog, gflags, boost-chrono, boost-context, boost-conversion, boost-crc, boost-date-time, boost-filesystem, boost-multi-index, boost-program-options, boost-regex, boost-system, boost-thread Default-Features: zlib diff --git a/ports/folly/portfile.cmake b/ports/folly/portfile.cmake index ce101d918..520ab0539 100644 --- a/ports/folly/portfile.cmake +++ b/ports/folly/portfile.cmake @@ -17,8 +17,8 @@ set(ENV{PATH} "$ENV{PATH};${PYTHON3_DIR}") vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO facebook/folly - REF v2018.03.19.00 - SHA512 72df8768753bf9f1109ad3f16645d811906b633833c91c7d9fe856a06c16b5e398876cf6cae415401eff96b568c99ffa1dc0c44d81cd40219bafb0f4c72fc2ca + REF v2018.04.09.00 + SHA512 625034437ee6c261949652dbd6cafb50b0954b691750e4591cd0eb03cf369348cfae3b4b98c012bd906a157b7642ebcb1d8843311c74416ed51bffc5b1da3018 HEAD_REF master ) @@ -75,7 +75,7 @@ vcpkg_install_cmake(ADD_BIN_TO_PATH) vcpkg_copy_pdbs() -vcpkg_fixup_cmake_targets() +vcpkg_fixup_cmake_targets(CONFIG_PATH lib/cmake/folly) file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include) -- cgit v1.2.3 From 908e714980fe2f2ab32cba4dd44f6a61b5991733 Mon Sep 17 00:00:00 2001 From: Alexander Karatarakis Date: Mon, 9 Apr 2018 22:14:47 -0700 Subject: Fix typo --- scripts/fetchTool.ps1 | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scripts/fetchTool.ps1 b/scripts/fetchTool.ps1 index 8de642674..be18656c7 100644 --- a/scripts/fetchTool.ps1 +++ b/scripts/fetchTool.ps1 @@ -22,7 +22,7 @@ function fetchToolInternal([Parameter(Mandatory=$true)][string]$tool) if ($toolData -eq $null) { - throw "Unkown tool $tool" + throw "Unknown tool $tool" } $toolPath="$downloadsDir\tools\$tool-$($toolData.version)-windows" -- cgit v1.2.3 From 05edef92233854e944baa3cbde4d5b004f717bdd Mon Sep 17 00:00:00 2001 From: Robert Schumacher Date: Mon, 9 Apr 2018 19:18:56 -0700 Subject: [abseil][aws-sdk-cpp][exiv2][forest][jsonnet][rs-core-lib][thrift][unicorn-lib] Upgrades --- ports/abseil/CONTROL | 2 +- ports/abseil/portfile.cmake | 4 ++-- ports/aws-sdk-cpp/CONTROL | 2 +- ports/aws-sdk-cpp/portfile.cmake | 4 ++-- ports/exiv2/CONTROL | 2 +- ports/exiv2/portfile.cmake | 4 ++-- ports/forest/CONTROL | 2 +- ports/forest/portfile.cmake | 4 ++-- ports/jsonnet/CONTROL | 2 +- ports/jsonnet/portfile.cmake | 4 ++-- ports/rs-core-lib/CONTROL | 2 +- ports/rs-core-lib/portfile.cmake | 4 ++-- ports/thrift/CONTROL | 2 +- ports/thrift/portfile.cmake | 4 ++-- ports/unicorn-lib/CONTROL | 2 +- ports/unicorn-lib/portfile.cmake | 4 ++-- 16 files changed, 24 insertions(+), 24 deletions(-) diff --git a/ports/abseil/CONTROL b/ports/abseil/CONTROL index dddbdd2b2..42edc7e12 100644 --- a/ports/abseil/CONTROL +++ b/ports/abseil/CONTROL @@ -1,5 +1,5 @@ Source: abseil -Version: 2018-04-05 +Version: 2018-04-09 Description: an open-source collection designed to augment the C++ standard library. Abseil is an open-source collection of C++ library code designed to augment the C++ standard library. The Abseil library code is collected from Google's own C++ code base, has been extensively tested and used in production, and is the same code we depend on in our daily coding lives. In some cases, Abseil provides pieces missing from the C++ standard; in others, Abseil provides alternatives to the standard for special needs we've found through usage in the Google code base. We denote those cases clearly within the library code we provide you. diff --git a/ports/abseil/portfile.cmake b/ports/abseil/portfile.cmake index 8abf42dc4..f2a08328b 100644 --- a/ports/abseil/portfile.cmake +++ b/ports/abseil/portfile.cmake @@ -7,8 +7,8 @@ endif() vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO abseil/abseil-cpp - REF abd0824ba64094e860803730c44d985334ad8770 - SHA512 2ba077b82a526612d8339d0f89cd82b57d510de2056ae12a07903ae39e536c2c0a8a7ccf37cf7228a372dd3e3db50a441afe76f448ce3483de86b49c495fcc06 + REF 3f622d6c5990a7ae80eb8e52450c309a28bbec77 + SHA512 27c11bbe4e321fcd42f1947fab2a7deb108443bf46260e7f7920cc28442a4dbfbf315d579e866b2d82e92cfe1fd43e82cbd51e907cbf74a25d724cfd8acda055 HEAD_REF master ) diff --git a/ports/aws-sdk-cpp/CONTROL b/ports/aws-sdk-cpp/CONTROL index a3e7c57c5..c9338b0cc 100644 --- a/ports/aws-sdk-cpp/CONTROL +++ b/ports/aws-sdk-cpp/CONTROL @@ -1,5 +1,5 @@ Source: aws-sdk-cpp -Version: 1.4.31-1 +Version: 1.4.32 Description: AWS SDK for C++ Build-Depends: openssl (!uwp&!windows), curl (!uwp&!windows) Default-Features: dynamodb, ec2, kms, rds, s3, sns, sqs diff --git a/ports/aws-sdk-cpp/portfile.cmake b/ports/aws-sdk-cpp/portfile.cmake index d3cf3f0bb..6b3b1f241 100644 --- a/ports/aws-sdk-cpp/portfile.cmake +++ b/ports/aws-sdk-cpp/portfile.cmake @@ -3,8 +3,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO aws/aws-sdk-cpp - REF 1.4.31 - SHA512 f0fc2c3c82201ff68ba53c19a7a452e79b5dc9fc47a146e4917105cfac546d64c57a8203beadaf9842e1c4e93ac2245ffbfd247a88107de12245d1624f35dddf + REF 1.4.32 + SHA512 f37aaf1d439acd1563fe50624e2e7856ba5d267a540a8cd1fde80d0d7bd9e2cdd261f9f6e3e843548cc17b8ea7158419a9e0ed27092acf5c22b5c9e38d327c64 HEAD_REF master ) diff --git a/ports/exiv2/CONTROL b/ports/exiv2/CONTROL index f620972ef..af05d4ddf 100644 --- a/ports/exiv2/CONTROL +++ b/ports/exiv2/CONTROL @@ -1,4 +1,4 @@ Source: exiv2 -Version: 2018-04-06 +Version: 2018-04-09 Build-Depends: zlib, expat, libiconv Description: Image metadata library and tools http://www.exiv2.org diff --git a/ports/exiv2/portfile.cmake b/ports/exiv2/portfile.cmake index 90ffe6ddc..109105085 100644 --- a/ports/exiv2/portfile.cmake +++ b/ports/exiv2/portfile.cmake @@ -3,8 +3,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO Exiv2/exiv2 - REF 336b759cc0192e7db1ccafd42e13a43085e74a58 - SHA512 1e94d31d9b6667ea8dcff12fb4a0a9c24dba44f665a98dba1752657a3a26a654655c2c00eecfdf540a76e9e217f21d9471e0e244226f4e013fc044ad245adaaa + REF fbd8e2669e223d43c34777c61029bb19b4c6e833 + SHA512 9c87e3123458e9dbf24df80118a09a6cc2c10855b19e59b3164634166b10f2daef54ac35a207bf8865eeb08cbc1d2d5b2ab33e4f2539bf8ffa82a7012c0eecc4 HEAD_REF master ) diff --git a/ports/forest/CONTROL b/ports/forest/CONTROL index e161e22ae..c37318d66 100644 --- a/ports/forest/CONTROL +++ b/ports/forest/CONTROL @@ -1,3 +1,3 @@ Source: forest -Version: 7.0.3 +Version: 7.0.6 Description: Forest is an open-source, template library of tree data structures written in C++11. diff --git a/ports/forest/portfile.cmake b/ports/forest/portfile.cmake index 39ef63350..48ab6c9dd 100644 --- a/ports/forest/portfile.cmake +++ b/ports/forest/portfile.cmake @@ -3,8 +3,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO xorz57/forest - REF 7.0.3 - SHA512 0e3adde14d9035427f3ca4d40cf6ee9598e8222f0e9884e570cdddf31ceb4fb516c802bf2abfb169e35da6adebfd7514238ca23121871fe9911419449a72cfe0 + REF 7.0.6 + SHA512 a1e5d27f2b8b9e6758a67a9124fc25517074c633644651b26f6683bab09189569e75ccf4ae7d9cfeddae234435b073fc00e0f5385c4e9370062c3e8b222c1c59 HEAD_REF master ) diff --git a/ports/jsonnet/CONTROL b/ports/jsonnet/CONTROL index f32796ca3..55bc73fa4 100644 --- a/ports/jsonnet/CONTROL +++ b/ports/jsonnet/CONTROL @@ -1,3 +1,3 @@ Source: jsonnet -Version: 2018-03-17 +Version: 2018-04-09 Description: Jsonnet - The data templating language diff --git a/ports/jsonnet/portfile.cmake b/ports/jsonnet/portfile.cmake index 0041d7f2c..02afe21b8 100644 --- a/ports/jsonnet/portfile.cmake +++ b/ports/jsonnet/portfile.cmake @@ -3,8 +3,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO google/jsonnet - REF 9829acf280a64b58ad0b14c9f5c28fe8564ed13e - SHA512 5ddcc3d6bc91467da766ba0ed81251066e348db14d1fdf681bdd6c08189249d1c221dab73cc6bdf85465217aeda186f2f5c0eee11bb179435a52ff57be12d20e + REF bdbb3b32dda55b42b1f8843acc88f7bb4e38103f + SHA512 a275b63169a24c3319029dee85ec1efec54310cbc8a347a3f791dae6c2565358b74ce48f373453abd7b57361b67388fb85b9401f014df0b132f1cf0dd9babb49 HEAD_REF master ) diff --git a/ports/rs-core-lib/CONTROL b/ports/rs-core-lib/CONTROL index 1a0ea6519..de6b3c5a2 100644 --- a/ports/rs-core-lib/CONTROL +++ b/ports/rs-core-lib/CONTROL @@ -1,4 +1,4 @@ Source: rs-core-lib -Version: 2018-04-06 +Version: 2018-04-09 Description: Minimal common utilities by Ross Smith diff --git a/ports/rs-core-lib/portfile.cmake b/ports/rs-core-lib/portfile.cmake index 8229e78e8..18d127849 100644 --- a/ports/rs-core-lib/portfile.cmake +++ b/ports/rs-core-lib/portfile.cmake @@ -3,8 +3,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO CaptainCrowbar/rs-core-lib - REF 0a500c3a326d1ba177e48ebdb2d71b0a9cd54eae - SHA512 14642b9c3c4eba8faea434eb94fc19fadbc8e40cbf43ae3591be89b1cd2a0b2f13f93c7ac88d1778d557a185fa6efe5eadf64542da7baf625a39dcb53b0b2313 + REF ca8065dea45355836d9ca834823775c23a1f3571 + SHA512 4bead4c2317f8b1f33844eacd052724680da6e00d52acb9238a458598a0745a86e91ac8f41a9b2ec4be1365a18e727e1e2659910f293d3bfe3f3b49d34d20b30 HEAD_REF master ) diff --git a/ports/thrift/CONTROL b/ports/thrift/CONTROL index 57caf006a..e544fbbe0 100644 --- a/ports/thrift/CONTROL +++ b/ports/thrift/CONTROL @@ -1,4 +1,4 @@ Source: thrift -Version: 2018-04-06 +Version: 2018-04-09 Build-Depends: zlib, libevent, openssl, boost-range, boost-smart-ptr, boost-date-time, boost-locale, boost-scope-exit Description: Apache Thrift is a software project spanning a variety of programming languages and use cases. Our goal is to make reliable, performant communication and data serialization across languages as efficient and seamless as possible. Originally developed at Facebook, Thrift was open sourced in April 2007 and entered the Apache Incubator in May, 2008. Thrift became an Apache TLP in October, 2010. diff --git a/ports/thrift/portfile.cmake b/ports/thrift/portfile.cmake index 626ef2b44..5461f3307 100644 --- a/ports/thrift/portfile.cmake +++ b/ports/thrift/portfile.cmake @@ -15,8 +15,8 @@ vcpkg_find_acquire_program(BISON) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO apache/thrift - REF 7ad0665008764c0522672b314605d88959e20716 - SHA512 5fc3b5084d40b972af13c00008f5d8b7d7dbe82cfbec31769b09a042911dee99f0979a2592dbcb72836c0ee5036905e1caee2cc76c4e296b20855276c4c30ffd + REF 606f1ef31447526b908244933d5b716397a6bad8 + SHA512 101de834e8f19ed5f4855a3b138425ffdc8103565f04656f1544098821ad54d5e89f8275cf50b380f01d3a83f4ba7670ec1cc79ec7bd4594172f6fb06d3e034b HEAD_REF master ) diff --git a/ports/unicorn-lib/CONTROL b/ports/unicorn-lib/CONTROL index 2c742eedc..4a46f6343 100644 --- a/ports/unicorn-lib/CONTROL +++ b/ports/unicorn-lib/CONTROL @@ -1,4 +1,4 @@ Source: unicorn-lib -Version: 2018-03-13 +Version: 2018-04-09 Description: Unicode library for C++ by Ross Smith Build-Depends: rs-core-lib, pcre, zlib, libiconv diff --git a/ports/unicorn-lib/portfile.cmake b/ports/unicorn-lib/portfile.cmake index c76da4fa3..c215e7ccd 100644 --- a/ports/unicorn-lib/portfile.cmake +++ b/ports/unicorn-lib/portfile.cmake @@ -3,8 +3,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO CaptainCrowbar/unicorn-lib - REF 8fc132c879e748a61c9e4b6a93a6de209b55dbe5 - SHA512 f70d9fd9c06b4bf7a771abfacd1f989f03ea51395b6819b1162a13954e680d49622e48b61b71195c598ac21861435c6c5fe8ff368880098a07eb4b86547eede0 + REF 38b8bfe7b22978d42923a55ed3303a0aadd86abd + SHA512 423dc648476cc957273a7a81770ce5b25452bd685aaa36688cecb1e7cc83495ede6a441fb33e010e80782986c32a8cc87fe42844b0ccd597ce9a4e5286dc6791 HEAD_REF master ) -- cgit v1.2.3 From 504b4b797a27c42db6783864863b4101699b095a Mon Sep 17 00:00:00 2001 From: RT222 Date: Tue, 10 Apr 2018 19:31:57 +0200 Subject: [yoga] Update to 1.8.0 (#3234) --- ports/yoga/CONTROL | 2 +- ports/yoga/portfile.cmake | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/ports/yoga/CONTROL b/ports/yoga/CONTROL index c4bbe1a69..7a96eb9c2 100644 --- a/ports/yoga/CONTROL +++ b/ports/yoga/CONTROL @@ -1,3 +1,3 @@ Source: yoga -Version: 1.7.0-1 +Version: 1.8.0-1 Description: Yoga is a cross-platform layout engine which implements Flexbox diff --git a/ports/yoga/portfile.cmake b/ports/yoga/portfile.cmake index a261d5106..5dbb4e527 100644 --- a/ports/yoga/portfile.cmake +++ b/ports/yoga/portfile.cmake @@ -21,8 +21,8 @@ endif() vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO facebook/yoga - REF 1.7.0 - SHA512 3472a6db429e1fd0365321b2e663935741c4c97331f3936ea7b590b8218ada567ef7517fb20b1c843c1aad393e2b564e9626170a3d6c25e85450f9e8eb7ffdcc + REF v1.8.0 + SHA512 9af0e9e66ce223c99a9cab12721099ca40f85d2fa2a0e0a7d2bcff6d5acc5b6ca0edaaa53e49ec921bf78bb986070702cfe3271c4819147486dad6f6ee93e690 HEAD_REF master ) -- cgit v1.2.3 From bb054e645d6a91adc6d533929ff3b4d9fd1d8788 Mon Sep 17 00:00:00 2001 From: Robert Schumacher Date: Mon, 2 Apr 2018 20:40:25 -0700 Subject: [vcpkg] Don't pass /utf-8 to VS 2013 --- scripts/cmake/vcpkg_configure_cmake.cmake | 1 + scripts/toolchains/windows.cmake | 12 ++++++++++-- 2 files changed, 11 insertions(+), 2 deletions(-) diff --git a/scripts/cmake/vcpkg_configure_cmake.cmake b/scripts/cmake/vcpkg_configure_cmake.cmake index 3a3a88515..3e0922428 100644 --- a/scripts/cmake/vcpkg_configure_cmake.cmake +++ b/scripts/cmake/vcpkg_configure_cmake.cmake @@ -165,6 +165,7 @@ function(vcpkg_configure_cmake) list(APPEND _csc_OPTIONS "-DVCPKG_TARGET_TRIPLET=${TARGET_TRIPLET}" + "-DVCPKG_PLATFORM_TOOLSET=${VCPKG_PLATFORM_TOOLSET}" "-DCMAKE_EXPORT_NO_PACKAGE_REGISTRY=ON" "-DCMAKE_FIND_PACKAGE_NO_PACKAGE_REGISTRY=ON" "-DCMAKE_FIND_PACKAGE_NO_SYSTEM_PACKAGE_REGISTRY=ON" diff --git a/scripts/toolchains/windows.cmake b/scripts/toolchains/windows.cmake index 7bfc2282b..753723bd9 100644 --- a/scripts/toolchains/windows.cmake +++ b/scripts/toolchains/windows.cmake @@ -9,8 +9,16 @@ if(NOT _CMAKE_IN_TRY_COMPILE) message(FATAL_ERROR "Invalid setting for VCPKG_CRT_LINKAGE: \"${VCPKG_CRT_LINKAGE}\". It must be \"static\" or \"dynamic\"") endif() - set(CMAKE_CXX_FLAGS " /DWIN32 /D_WINDOWS /W3 /utf-8 /GR /EHsc /MP ${VCPKG_CXX_FLAGS}" CACHE STRING "") - set(CMAKE_C_FLAGS " /DWIN32 /D_WINDOWS /W3 /utf-8 /MP ${VCPKG_C_FLAGS}" CACHE STRING "") + set(CHARSET_FLAG "/utf-8") + if(VCPKG_PLATFORM_TOOLSET MATCHES "v120") + # VS 2013 does not support /utf-8 + set(CHARSET_FLAG) + endif() + + set(CMAKE_CXX_FLAGS " /DWIN32 /D_WINDOWS /W3 ${CHARSET_FLAG} /GR /EHsc /MP ${VCPKG_CXX_FLAGS}" CACHE STRING "") + set(CMAKE_C_FLAGS " /DWIN32 /D_WINDOWS /W3 ${CHARSET_FLAG} /MP ${VCPKG_C_FLAGS}" CACHE STRING "") + + unset(CHARSET_FLAG) set(CMAKE_CXX_FLAGS_DEBUG "/D_DEBUG ${VCPKG_CRT_LINK_FLAG_PREFIX}d /Z7 /Ob0 /Od /RTC1 ${VCPKG_CXX_FLAGS_DEBUG}" CACHE STRING "") set(CMAKE_C_FLAGS_DEBUG "/D_DEBUG ${VCPKG_CRT_LINK_FLAG_PREFIX}d /Z7 /Ob0 /Od /RTC1 ${VCPKG_C_FLAGS_DEBUG}" CACHE STRING "") -- cgit v1.2.3 From 6d0d3b1d2c4ac7e798c029a25ca870b03e1877fe Mon Sep 17 00:00:00 2001 From: Gabor Cseh Date: Tue, 10 Apr 2018 19:49:55 +0200 Subject: At static build now the bin directories are removed. (#3240) --- ports/plplot/portfile.cmake | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/ports/plplot/portfile.cmake b/ports/plplot/portfile.cmake index 372a59bba..7b35f0a15 100644 --- a/ports/plplot/portfile.cmake +++ b/ports/plplot/portfile.cmake @@ -53,6 +53,14 @@ file(REMOVE ${CURRENT_PACKAGES_DIR}/bin/pltek.exe ) +if(VCPKG_LIBRARY_LINKAGE STREQUAL "static") + message(STATUS "Static build: Removing the full bin directory.") + file(REMOVE_RECURSE + ${CURRENT_PACKAGES_DIR}/debug/bin + ${CURRENT_PACKAGES_DIR}/bin + ) +endif() + # Remove unwanted and duplicate directories file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include -- cgit v1.2.3 From 58be8482764c4bae5a62418786b30432a69649aa Mon Sep 17 00:00:00 2001 From: Robert Schumacher Date: Tue, 10 Apr 2018 10:52:19 -0700 Subject: [vcpkg] Always use -c65001 for the resource compiler on windows. Fixes #3221. --- scripts/toolchains/windows.cmake | 1 + 1 file changed, 1 insertion(+) diff --git a/scripts/toolchains/windows.cmake b/scripts/toolchains/windows.cmake index 753723bd9..266e023b1 100644 --- a/scripts/toolchains/windows.cmake +++ b/scripts/toolchains/windows.cmake @@ -17,6 +17,7 @@ if(NOT _CMAKE_IN_TRY_COMPILE) set(CMAKE_CXX_FLAGS " /DWIN32 /D_WINDOWS /W3 ${CHARSET_FLAG} /GR /EHsc /MP ${VCPKG_CXX_FLAGS}" CACHE STRING "") set(CMAKE_C_FLAGS " /DWIN32 /D_WINDOWS /W3 ${CHARSET_FLAG} /MP ${VCPKG_C_FLAGS}" CACHE STRING "") + set(CMAKE_RC_FLAGS "-c65001 /DWIN32" CACHE STRING "") unset(CHARSET_FLAG) -- cgit v1.2.3 From eda41aa2caae4ec0d33f0e372c1f8ff1e2d5dafc Mon Sep 17 00:00:00 2001 From: chausner Date: Tue, 10 Apr 2018 19:56:24 +0200 Subject: Add liblinear package (#3229) --- ports/liblinear/CMakeLists.txt | 47 ++++++++++++++++++++++++++++++++++++++++++ ports/liblinear/CONTROL | 3 +++ ports/liblinear/portfile.cmake | 26 +++++++++++++++++++++++ 3 files changed, 76 insertions(+) create mode 100644 ports/liblinear/CMakeLists.txt create mode 100644 ports/liblinear/CONTROL create mode 100644 ports/liblinear/portfile.cmake diff --git a/ports/liblinear/CMakeLists.txt b/ports/liblinear/CMakeLists.txt new file mode 100644 index 000000000..6e6928a91 --- /dev/null +++ b/ports/liblinear/CMakeLists.txt @@ -0,0 +1,47 @@ +cmake_minimum_required(VERSION 3.9) +project(liblinear) + +add_definitions(-D_CRT_SECURE_NO_DEPRECATE) + +add_library(blas OBJECT + blas/daxpy.c + blas/ddot.c + blas/dnrm2.c + blas/dscal.c +) + +add_library(liblinear + linear.cpp + tron.cpp + $ +) +target_include_directories(liblinear PRIVATE .) +if(BUILD_SHARED_LIBS) + target_link_libraries(liblinear PRIVATE "-DEF:${CMAKE_CURRENT_SOURCE_DIR}/linear.def") +endif() + +add_executable(train train.c $) +target_link_libraries(train liblinear) + +add_executable(predict predict.c $) +target_link_libraries(predict liblinear) + +install( + TARGETS liblinear + RUNTIME DESTINATION bin + LIBRARY DESTINATION lib + ARCHIVE DESTINATION lib +) + +if(NOT DISABLE_INSTALL_TOOLS) + install( + TARGETS train predict + RUNTIME DESTINATION tools/liblinear + ) +endif() + +if(NOT DISABLE_INSTALL_HEADERS) + install( + FILES linear.h tron.h + DESTINATION include/liblinear) +endif() \ No newline at end of file diff --git a/ports/liblinear/CONTROL b/ports/liblinear/CONTROL new file mode 100644 index 000000000..3e83e601d --- /dev/null +++ b/ports/liblinear/CONTROL @@ -0,0 +1,3 @@ +Source: liblinear +Version: 2.20 +Description: A Library for Large Linear Classification diff --git a/ports/liblinear/portfile.cmake b/ports/liblinear/portfile.cmake new file mode 100644 index 000000000..4d662d0a5 --- /dev/null +++ b/ports/liblinear/portfile.cmake @@ -0,0 +1,26 @@ +include(vcpkg_common_functions) + +vcpkg_from_github( + OUT_SOURCE_PATH SOURCE_PATH + REPO cjlin1/liblinear + REF v220 + SHA512 cde798b7cb221513cf2b8bbe134d6c3dce1ed26c43504d8c09dbed93b82ca47bfd271d4dd3d03384187273906ce140d4ce4418a4a8c21410015ec1631c1042c6 + HEAD_REF master +) + +file(COPY ${CMAKE_CURRENT_LIST_DIR}/CMakeLists.txt DESTINATION ${SOURCE_PATH}) + +vcpkg_configure_cmake( + SOURCE_PATH ${SOURCE_PATH} + PREFER_NINJA + OPTIONS_DEBUG + -DDISABLE_INSTALL_HEADERS=ON + -DDISABLE_INSTALL_TOOLS=ON +) + +vcpkg_install_cmake() +vcpkg_copy_pdbs() +vcpkg_copy_tool_dependencies(${CURRENT_PACKAGES_DIR}/tools/liblinear) + +file(INSTALL ${SOURCE_PATH}/COPYRIGHT DESTINATION ${CURRENT_PACKAGES_DIR}/share/liblinear RENAME copyright) +file(INSTALL ${SOURCE_PATH}/README DESTINATION ${CURRENT_PACKAGES_DIR}/share/liblinear) -- cgit v1.2.3 From b4aad86642c50afcbaa4e348dba2b8f86c28ad56 Mon Sep 17 00:00:00 2001 From: Robert Schumacher Date: Tue, 10 Apr 2018 10:58:48 -0700 Subject: [forest] Revise description. Fixes #3235 --- ports/forest/CONTROL | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ports/forest/CONTROL b/ports/forest/CONTROL index c37318d66..76dbbf47e 100644 --- a/ports/forest/CONTROL +++ b/ports/forest/CONTROL @@ -1,3 +1,3 @@ Source: forest Version: 7.0.6 -Description: Forest is an open-source, template library of tree data structures written in C++11. +Description: Template library of tree data structures -- cgit v1.2.3 From bb7501a37eb266aaeb6ff9af9d85d0b782eb1981 Mon Sep 17 00:00:00 2001 From: Alexander Karatarakis Date: Tue, 10 Apr 2018 15:05:04 -0700 Subject: [protobuf] Fix for linux/osx --- ports/protobuf/CONTROL | 2 +- ports/protobuf/portfile.cmake | 30 +++++++++++++++++++++--------- 2 files changed, 22 insertions(+), 10 deletions(-) diff --git a/ports/protobuf/CONTROL b/ports/protobuf/CONTROL index 86fecafc5..12e508f6d 100644 --- a/ports/protobuf/CONTROL +++ b/ports/protobuf/CONTROL @@ -1,5 +1,5 @@ Source: protobuf -Version: 3.5.1-1 +Version: 3.5.1-2 Description: Protocol Buffers - Google's data interchange format Feature: zlib diff --git a/ports/protobuf/portfile.cmake b/ports/protobuf/portfile.cmake index 593eebe7d..765b52a1d 100644 --- a/ports/protobuf/portfile.cmake +++ b/ports/protobuf/portfile.cmake @@ -21,7 +21,7 @@ vcpkg_apply_patches( "${CMAKE_CURRENT_LIST_DIR}/js-embed.patch" ) -if(NOT VCPKG_CMAKE_SYSTEM_NAME OR VCPKG_CMAKE_SYSTEM_NAME STREQUAL "WindowsStore") +if(CMAKE_HOST_WIN32) set(TOOL_PATH ${CURRENT_BUILDTREES_DIR}/src/protobuf-${PROTOBUF_VERSION}-win32) vcpkg_download_distfile(TOOL_ARCHIVE_FILE URLS "https://github.com/google/protobuf/releases/download/v${PROTOC_VERSION}/protoc-${PROTOC_VERSION}-win32.zip" @@ -85,27 +85,39 @@ endfunction() protobuf_try_remove_recurse_wait(${CURRENT_PACKAGES_DIR}/debug/include) +if(CMAKE_HOST_WIN32) + set(EXECUTABLE_SUFFIX ".exe") +else() + set(EXECUTABLE_SUFFIX "") +endif() + if(NOT DEFINED VCPKG_BUILD_TYPE OR VCPKG_BUILD_TYPE STREQUAL "release") file(READ ${CURRENT_PACKAGES_DIR}/share/protobuf/protobuf-targets-release.cmake RELEASE_MODULE) - string(REPLACE "\${_IMPORT_PREFIX}/bin/protoc.exe" "\${_IMPORT_PREFIX}/tools/protoc.exe" RELEASE_MODULE "${RELEASE_MODULE}") + string(REPLACE "\${_IMPORT_PREFIX}/bin/protoc${EXECUTABLE_SUFFIX}" "\${_IMPORT_PREFIX}/tools/protoc${EXECUTABLE_SUFFIX}" RELEASE_MODULE "${RELEASE_MODULE}") file(WRITE ${CURRENT_PACKAGES_DIR}/share/protobuf/protobuf-targets-release.cmake "${RELEASE_MODULE}") endif() if(NOT DEFINED VCPKG_BUILD_TYPE OR VCPKG_BUILD_TYPE STREQUAL "debug") file(READ ${CURRENT_PACKAGES_DIR}/debug/share/protobuf/protobuf-targets-debug.cmake DEBUG_MODULE) string(REPLACE "\${_IMPORT_PREFIX}" "\${_IMPORT_PREFIX}/debug" DEBUG_MODULE "${DEBUG_MODULE}") - string(REPLACE "\${_IMPORT_PREFIX}/debug/bin/protoc.exe" "\${_IMPORT_PREFIX}/tools/protoc.exe" DEBUG_MODULE "${DEBUG_MODULE}") + string(REPLACE "\${_IMPORT_PREFIX}/debug/bin/protoc${EXECUTABLE_SUFFIX}" "\${_IMPORT_PREFIX}/tools/protoc${EXECUTABLE_SUFFIX}" DEBUG_MODULE "${DEBUG_MODULE}") file(WRITE ${CURRENT_PACKAGES_DIR}/share/protobuf/protobuf-targets-debug.cmake "${DEBUG_MODULE}") endif() protobuf_try_remove_recurse_wait(${CURRENT_PACKAGES_DIR}/debug/share) -if(VCPKG_LIBRARY_LINKAGE STREQUAL static) - protobuf_try_remove_recurse_wait(${CURRENT_PACKAGES_DIR}/bin) - protobuf_try_remove_recurse_wait(${CURRENT_PACKAGES_DIR}/debug/bin) +if(CMAKE_HOST_WIN32) + if(VCPKG_LIBRARY_LINKAGE STREQUAL static) + protobuf_try_remove_recurse_wait(${CURRENT_PACKAGES_DIR}/bin) + protobuf_try_remove_recurse_wait(${CURRENT_PACKAGES_DIR}/debug/bin) + else() + protobuf_try_remove_recurse_wait(${CURRENT_PACKAGES_DIR}/bin/protoc.exe) + protobuf_try_remove_recurse_wait(${CURRENT_PACKAGES_DIR}/debug/bin/protoc.exe) + endif() else() - protobuf_try_remove_recurse_wait(${CURRENT_PACKAGES_DIR}/bin/protoc.exe) - protobuf_try_remove_recurse_wait(${CURRENT_PACKAGES_DIR}/debug/bin/protoc.exe) + protobuf_try_remove_recurse_wait(${CURRENT_PACKAGES_DIR}/debug/bin) + file(INSTALL ${CURRENT_PACKAGES_DIR}/bin/protoc DESTINATION ${CURRENT_PACKAGES_DIR}/tools) + protobuf_try_remove_recurse_wait(${CURRENT_PACKAGES_DIR}/bin) endif() if(VCPKG_LIBRARY_LINKAGE STREQUAL dynamic) @@ -115,7 +127,7 @@ if(VCPKG_LIBRARY_LINKAGE STREQUAL dynamic) endif() file(INSTALL ${SOURCE_PATH}/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/protobuf RENAME copyright) -if(NOT VCPKG_CMAKE_SYSTEM_NAME OR VCPKG_CMAKE_SYSTEM_NAME STREQUAL "WindowsStore") +if(CMAKE_HOST_WIN32) file(INSTALL ${TOOL_PATH}/bin/protoc.exe DESTINATION ${CURRENT_PACKAGES_DIR}/tools) endif() vcpkg_copy_pdbs() -- cgit v1.2.3 From 401e7a0e7ca47cefb7e332f50333f8719d26a90c Mon Sep 17 00:00:00 2001 From: Alexander Karatarakis Date: Tue, 10 Apr 2018 15:38:58 -0700 Subject: [vcpkg_build_cmake] Add workaround for WSL filesystem issues --- scripts/cmake/vcpkg_build_cmake.cmake | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) diff --git a/scripts/cmake/vcpkg_build_cmake.cmake b/scripts/cmake/vcpkg_build_cmake.cmake index 630662588..41415d9a8 100644 --- a/scripts/cmake/vcpkg_build_cmake.cmake +++ b/scripts/cmake/vcpkg_build_cmake.cmake @@ -105,6 +105,7 @@ function(vcpkg_build_cmake) if(out_contents MATCHES "LINK : fatal error LNK1102:" OR out_contents MATCHES " fatal error C1060: ") # The linker ran out of memory during execution. We will try continuing once more, with parallelism disabled. + message(STATUS "Restarting Build ${TARGET_TRIPLET}-${SHORT_BUILDTYPE} without parallelism because memory exceeded") execute_process( COMMAND ${CMAKE_COMMAND} --build . --config ${CONFIG} ${TARGET_PARAM} -- ${BUILD_ARGS} ${NO_PARALLEL_ARG} OUTPUT_FILE "${LOGPREFIX}-out-1.log" @@ -123,6 +124,33 @@ function(vcpkg_build_cmake) list(APPEND LOGS "${LOGPREFIX}-err-1.log") endif() endif() + elseif(out_contents MATCHES ": No such file or directory") + # WSL workaround - WSL occassionally fails with no such file or directory. Detect if we are running in WSL and restart. + execute_process(COMMAND "uname" "-r" + OUTPUT_VARIABLE UNAME_R ERROR_VARIABLE UNAME_R + OUTPUT_STRIP_TRAILING_WHITESPACE ERROR_STRIP_TRAILING_WHITESPACE) + + if (UNAME_R MATCHES "Microsoft") + message(STATUS "Restarting Build ${TARGET_TRIPLET}-${SHORT_BUILDTYPE} because of (potential) wsl subsystem issue.") + execute_process( + COMMAND ${CMAKE_COMMAND} --build . --config ${CONFIG} ${TARGET_PARAM} -- ${BUILD_ARGS} + OUTPUT_FILE "${LOGPREFIX}-out-1.log" + ERROR_FILE "${LOGPREFIX}-err-1.log" + RESULT_VARIABLE error_code + WORKING_DIRECTORY ${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-${SHORT_BUILDTYPE}) + + if(error_code) + file(READ "${LOGPREFIX}-out-1.log" out_contents) + file(READ "${LOGPREFIX}-err-1.log" err_contents) + + if(out_contents) + list(APPEND LOGS "${LOGPREFIX}-out-1.log") + endif() + if(err_contents) + list(APPEND LOGS "${LOGPREFIX}-err-1.log") + endif() + endif() + endif() endif() if(error_code) -- cgit v1.2.3 From 9ccad4304edc3ac452b3c295d5ee203c861fcc6f Mon Sep 17 00:00:00 2001 From: Alexander Karatarakis Date: Tue, 10 Apr 2018 19:05:18 -0700 Subject: [directxmesh] Update to latest version. Resolves VS15.7 issues --- ports/directxmesh/CONTROL | 4 ++-- ports/directxmesh/portfile.cmake | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/ports/directxmesh/CONTROL b/ports/directxmesh/CONTROL index 9ccd7156e..41b26ef1a 100644 --- a/ports/directxmesh/CONTROL +++ b/ports/directxmesh/CONTROL @@ -1,3 +1,3 @@ -Source: directxmesh -Version: feb2018 +Source: directxmesh +Version: feb2018-eb751e0b631b05aa25c36c08e7d6bbf09f5e94a9 Description: DirectXMesh geometry processing library \ No newline at end of file diff --git a/ports/directxmesh/portfile.cmake b/ports/directxmesh/portfile.cmake index 69f335c61..6d64d3658 100644 --- a/ports/directxmesh/portfile.cmake +++ b/ports/directxmesh/portfile.cmake @@ -12,8 +12,8 @@ endif() vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO Microsoft/DirectXMesh - REF feb2018 - SHA512 b5d21c8960ef9c8f2e608807ce29fd4873d0f4ad5bb0b6432f6efbb6110bfd61a16fbaab8a5c626cc1977f48923a562a618f29b9b2f112db625c0a8eb43f0422 + REF eb751e0b631b05aa25c36c08e7d6bbf09f5e94a9 + SHA512 35a6be07fbdf5d9a39e7f5a3716057d09643d0c4bb43d39beae4233ca6941d2e2318b826dcc4a385dfa512675c7e28f320067b88bb325943b6532c8e65ebcd1b HEAD_REF master ) -- cgit v1.2.3 From 8da8f3e5b3cca98e9151d421a91f5c1590a47086 Mon Sep 17 00:00:00 2001 From: Robert Schumacher Date: Tue, 10 Apr 2018 04:48:02 -0700 Subject: [vcpkg] Rework dependencies.cpp to improve type safety and error detection --- toolsrc/include/vcpkg/base/optional.h | 6 + toolsrc/include/vcpkg/dependencies.h | 3 +- toolsrc/include/vcpkg/statusparagraph.h | 1 + toolsrc/include/vcpkg/vcpkglib.h | 2 +- toolsrc/src/tests.plan.cpp | 146 +++++++---- toolsrc/src/vcpkg/commands.list.cpp | 9 +- toolsrc/src/vcpkg/dependencies.cpp | 435 ++++++++++++++++---------------- toolsrc/src/vcpkg/remove.cpp | 4 +- toolsrc/src/vcpkg/statusparagraph.cpp | 8 +- toolsrc/src/vcpkg/update.cpp | 11 +- toolsrc/src/vcpkg/vcpkglib.cpp | 24 +- 11 files changed, 364 insertions(+), 285 deletions(-) diff --git a/toolsrc/include/vcpkg/base/optional.h b/toolsrc/include/vcpkg/base/optional.h index af2d297a6..b629de9b3 100644 --- a/toolsrc/include/vcpkg/base/optional.h +++ b/toolsrc/include/vcpkg/base/optional.h @@ -64,6 +64,12 @@ namespace vcpkg return std::move(this->m_base.value()); } + T& value_or_exit(const LineInfo& line_info) & + { + this->exit_if_null(line_info); + return this->m_base.value(); + } + const T& value_or_exit(const LineInfo& line_info) const& { this->exit_if_null(line_info); diff --git a/toolsrc/include/vcpkg/dependencies.h b/toolsrc/include/vcpkg/dependencies.h index fea0d88a9..704e76b07 100644 --- a/toolsrc/include/vcpkg/dependencies.h +++ b/toolsrc/include/vcpkg/dependencies.h @@ -37,8 +37,7 @@ namespace vcpkg::Dependencies InstallPlanAction(); - InstallPlanAction(const PackageSpec& spec, - InstalledPackageView&& spghs, + InstallPlanAction(InstalledPackageView&& spghs, const std::set& features, const RequestType& request_type); diff --git a/toolsrc/include/vcpkg/statusparagraph.h b/toolsrc/include/vcpkg/statusparagraph.h index 0802de530..16144e467 100644 --- a/toolsrc/include/vcpkg/statusparagraph.h +++ b/toolsrc/include/vcpkg/statusparagraph.h @@ -54,6 +54,7 @@ namespace vcpkg { } + const PackageSpec& spec() const { return core->package.spec; } std::vector dependencies() const; const StatusParagraph* core; diff --git a/toolsrc/include/vcpkg/vcpkglib.h b/toolsrc/include/vcpkg/vcpkglib.h index 3c8e676bf..5674d30db 100644 --- a/toolsrc/include/vcpkg/vcpkglib.h +++ b/toolsrc/include/vcpkg/vcpkglib.h @@ -16,7 +16,7 @@ namespace vcpkg SortedVector files; }; - std::vector get_installed_ports(const StatusParagraphs& status_db); + std::vector get_installed_ports(const StatusParagraphs& status_db); std::vector get_installed_files(const VcpkgPaths& paths, const StatusParagraphs& status_db); diff --git a/toolsrc/src/tests.plan.cpp b/toolsrc/src/tests.plan.cpp index a99f1abb9..b054702a1 100644 --- a/toolsrc/src/tests.plan.cpp +++ b/toolsrc/src/tests.plan.cpp @@ -81,7 +81,7 @@ namespace UnitTest1 { std::unordered_map map; Triplet triplet; - PackageSpecMap(const Triplet& t) { triplet = t; } + PackageSpecMap(const Triplet& t = Triplet::X86_WINDOWS) { triplet = t; } PackageSpec emplace(const char* name, const char* depends = "", @@ -105,7 +105,7 @@ namespace UnitTest1 { std::vector> status_paragraphs; - PackageSpecMap spec_map(Triplet::X86_WINDOWS); + PackageSpecMap spec_map; auto spec_a = spec_map.emplace("a", "b"); auto spec_b = spec_map.emplace("b", "c"); auto spec_c = spec_map.emplace("c"); @@ -124,7 +124,7 @@ namespace UnitTest1 { std::vector> status_paragraphs; - PackageSpecMap spec_map(Triplet::X86_WINDOWS); + PackageSpecMap spec_map; auto spec_a = spec_map.emplace("a", "d"); auto spec_b = spec_map.emplace("b", "d, e"); auto spec_c = spec_map.emplace("c", "e, h"); @@ -167,7 +167,7 @@ namespace UnitTest1 std::vector> status_paragraphs; status_paragraphs.push_back(make_status_pgh("a")); - PackageSpecMap spec_map(Triplet::X86_WINDOWS); + PackageSpecMap spec_map; auto spec_a = FullPackageSpec{spec_map.emplace("a")}; auto install_plan = @@ -187,7 +187,7 @@ namespace UnitTest1 { std::vector> status_paragraphs; - PackageSpecMap spec_map(Triplet::X86_WINDOWS); + PackageSpecMap spec_map; auto spec_a = FullPackageSpec{spec_map.emplace("a", "b")}; auto spec_b = FullPackageSpec{spec_map.emplace("b")}; @@ -216,7 +216,7 @@ namespace UnitTest1 status_paragraphs.push_back(make_status_pgh("j", "k")); status_paragraphs.push_back(make_status_pgh("k")); - PackageSpecMap spec_map(Triplet::X86_WINDOWS); + PackageSpecMap spec_map; auto spec_a = spec_map.emplace("a", "b, c, d, e, f, g, h, j, k"); auto spec_b = spec_map.emplace("b", "c, d, e, f, g, h, j, k"); @@ -251,7 +251,7 @@ namespace UnitTest1 status_paragraphs.push_back(make_status_pgh("b")); status_paragraphs.push_back(make_status_feature_pgh("b", "b1")); - PackageSpecMap spec_map(Triplet::X86_WINDOWS); + PackageSpecMap spec_map; auto spec_a = FullPackageSpec{spec_map.emplace("a", "b, b[b1]", {{"a1", "b[b2]"}}), {"a1"}}; auto spec_b = FullPackageSpec{spec_map.emplace("b", "", {{"b1", ""}, {"b2", ""}, {"b3", ""}})}; @@ -271,7 +271,7 @@ namespace UnitTest1 { std::vector> status_paragraphs; - PackageSpecMap spec_map(Triplet::X86_WINDOWS); + PackageSpecMap spec_map; auto spec_a = FullPackageSpec{spec_map.emplace("a", "b[b1]", {{"a1", "b[b2]"}}), {"a1"}}; auto spec_b = FullPackageSpec{spec_map.emplace("b", "", {{"b1", ""}, {"b2", ""}, {"b3", ""}})}; @@ -291,7 +291,7 @@ namespace UnitTest1 std::vector> status_paragraphs; status_paragraphs.push_back(make_status_pgh("a")); - PackageSpecMap spec_map(Triplet::X86_WINDOWS); + PackageSpecMap spec_map; auto spec_a = FullPackageSpec{spec_map.emplace("a", "b", {{"a1", ""}}), {"core"}}; auto spec_b = FullPackageSpec{spec_map.emplace("b")}; @@ -315,7 +315,7 @@ namespace UnitTest1 status_paragraphs.push_back(make_status_pgh("a")); status_paragraphs.push_back(make_status_feature_pgh("a", "a1", "")); - PackageSpecMap spec_map(Triplet::X86_WINDOWS); + PackageSpecMap spec_map; auto spec_a = FullPackageSpec{spec_map.emplace("a", "b", {{"a1", ""}})}; auto spec_b = FullPackageSpec{spec_map.emplace("b")}; @@ -334,7 +334,7 @@ namespace UnitTest1 { std::vector> status_paragraphs; - PackageSpecMap spec_map(Triplet::X86_WINDOWS); + PackageSpecMap spec_map; auto spec_a = FullPackageSpec{spec_map.emplace("a", "", {{"a1", "b[b1]"}, {"a2", "b[b2]"}, {"a3", "a[a2]"}}), {"a3"}}; @@ -355,7 +355,7 @@ namespace UnitTest1 std::vector> status_paragraphs; status_paragraphs.push_back(make_status_pgh("b")); - PackageSpecMap spec_map(Triplet::X86_WINDOWS); + PackageSpecMap spec_map; auto spec_a = FullPackageSpec{spec_map.emplace("a", "b[core]"), {"core"}}; auto spec_b = FullPackageSpec{spec_map.emplace("b", "", {{"b1", ""}}), {"b1"}}; @@ -376,7 +376,7 @@ namespace UnitTest1 status_paragraphs.push_back(make_status_pgh("x", "b")); status_paragraphs.push_back(make_status_pgh("b")); - PackageSpecMap spec_map(Triplet::X86_WINDOWS); + PackageSpecMap spec_map; auto spec_a = FullPackageSpec{spec_map.emplace("a")}; auto spec_x = FullPackageSpec{spec_map.emplace("x", "a"), {"core"}}; @@ -674,17 +674,35 @@ namespace UnitTest1 Assert::IsTrue(install_plan[0].install_action.get()->computed_dependencies == std::vector{}); } + TEST_METHOD(install_with_default_features) + { + std::vector> pghs; + pghs.push_back(make_status_pgh("a", "")); + StatusParagraphs status_db(std::move(pghs)); + + PackageSpecMap spec_map; + auto b_spec = spec_map.emplace("b", "", {{"0", ""}}, {"0"}); + auto a_spec = spec_map.emplace("a", "b[core]", {{"0", ""}}); + + // Install "a" and indicate that "b" should not install default features + auto install_plan = Dependencies::create_feature_install_plan( + spec_map.map, {FeatureSpec{a_spec, "0"}, FeatureSpec{b_spec, "core"}}, status_db); + + Assert::IsTrue(install_plan.size() == 3); + remove_plan_check(&install_plan[0], "a"); + features_check(&install_plan[1], "b", {"core"}); + features_check(&install_plan[2], "a", {"0", "core"}); + } + TEST_METHOD(upgrade_with_default_features_1) { std::vector> pghs; pghs.push_back(make_status_pgh("a", "", "1")); pghs.push_back(make_status_feature_pgh("a", "0")); - pghs.back()->package.spec = - PackageSpec::from_name_and_triplet("a", Triplet::X86_WINDOWS).value_or_exit(VCPKG_LINE_INFO); StatusParagraphs status_db(std::move(pghs)); // Add a port "a" of which "core" and "0" are already installed. - PackageSpecMap spec_map(Triplet::X86_WINDOWS); + PackageSpecMap spec_map; auto spec_a = spec_map.emplace("a", "", {{"0", ""}, {"1", ""}}, {"1"}); Dependencies::MapPortFileProvider provider(spec_map.map); @@ -697,23 +715,47 @@ namespace UnitTest1 Assert::AreEqual(size_t(2), plan.size()); Assert::AreEqual("a", plan[0].spec().name().c_str()); - Assert::IsTrue(plan[0].remove_action.has_value()); - - Assert::AreEqual("a", plan[1].spec().name().c_str()); - features_check(&plan[1], "a", {"core", "0"}, Triplet::X86_WINDOWS); + remove_plan_check(&plan[0], "a"); + features_check(&plan[1], "a", {"core", "0"}); } TEST_METHOD(upgrade_with_default_features_2) { std::vector> pghs; - pghs.push_back(make_status_pgh("b")); - pghs.push_back(make_status_pgh("a", "b[core]")); - pghs.back()->package.spec = - PackageSpec::from_name_and_triplet("a", Triplet::X64_WINDOWS).value_or_exit(VCPKG_LINE_INFO); + // B is currently installed _without_ default feature b0 + pghs.push_back(make_status_pgh("b", "", "b0", "x64-windows")); + pghs.push_back(make_status_pgh("a", "b[core]", "", "x64-windows")); + + StatusParagraphs status_db(std::move(pghs)); + + PackageSpecMap spec_map(Triplet::X64_WINDOWS); + auto spec_a = spec_map.emplace("a", "b[core]"); + auto spec_b = spec_map.emplace("b", "", {{"b0", ""}, {"b1", ""}}, {"b0", "b1"}); + + Dependencies::MapPortFileProvider provider(spec_map.map); + Dependencies::PackageGraph graph(provider, status_db); + + graph.upgrade(spec_a); + graph.upgrade(spec_b); + auto plan = graph.serialize(); + + // The upgrade should install the new default feature b1 but not b0 + Assert::AreEqual(size_t(4), plan.size()); + remove_plan_check(&plan[0], "a", Triplet::X64_WINDOWS); + remove_plan_check(&plan[1], "b", Triplet::X64_WINDOWS); + features_check(&plan[2], "b", {"core", "b1"}, Triplet::X64_WINDOWS); + features_check(&plan[3], "a", {"core"}, Triplet::X64_WINDOWS); + } + + TEST_METHOD(upgrade_with_default_features_3) + { + std::vector> pghs; + // note: unrelated package due to x86 triplet + pghs.push_back(make_status_pgh("b", "", "", "x86-windows")); + pghs.push_back(make_status_pgh("a", "", "", "x64-windows")); StatusParagraphs status_db(std::move(pghs)); - // Add a port "a" of which "core" and "0" are already installed. PackageSpecMap spec_map(Triplet::X64_WINDOWS); auto spec_a = spec_map.emplace("a", "b[core]"); spec_map.emplace("b", "", {{"b0", ""}, {"b1", ""}}, {"b0"}); @@ -724,17 +766,33 @@ namespace UnitTest1 graph.upgrade(spec_a); auto plan = graph.serialize(); - // The upgrade should not install the default feature + // The upgrade should install the default feature Assert::AreEqual(size_t(3), plan.size()); + remove_plan_check(&plan[0], "a", Triplet::X64_WINDOWS); + features_check(&plan[1], "b", {"b0", "core"}, Triplet::X64_WINDOWS); + features_check(&plan[2], "a", {"core"}, Triplet::X64_WINDOWS); + } - Assert::AreEqual("a", plan[0].spec().name().c_str()); - Assert::IsTrue(plan[0].remove_action.has_value()); + TEST_METHOD(upgrade_with_new_default_feature) + { + std::vector> pghs; + pghs.push_back(make_status_pgh("a", "", "0", "x86-windows")); - Assert::AreEqual("b", plan[1].spec().name().c_str()); - features_check(&plan[1], "b", {"b0", "core"}, Triplet::X64_WINDOWS); + StatusParagraphs status_db(std::move(pghs)); - Assert::AreEqual("a", plan[2].spec().name().c_str()); - features_check(&plan[2], "a", {"core"}, Triplet::X64_WINDOWS); + PackageSpecMap spec_map; + auto spec_a = spec_map.emplace("a", "", {{"0", ""}, {"1", ""}, {"2", ""}}, {"0", "1"}); + + Dependencies::MapPortFileProvider provider(spec_map.map); + Dependencies::PackageGraph graph(provider, status_db); + + graph.upgrade(spec_a); + auto plan = graph.serialize(); + + // The upgrade should install the new default feature but not the old default feature 0 + Assert::AreEqual(size_t(2), plan.size()); + remove_plan_check(&plan[0], "a", Triplet::X86_WINDOWS); + features_check(&plan[1], "a", {"core", "1"}, Triplet::X86_WINDOWS); } TEST_METHOD(transitive_features_test) @@ -924,7 +982,7 @@ namespace UnitTest1 pghs.push_back(make_status_pgh("a")); StatusParagraphs status_db(std::move(pghs)); - PackageSpecMap spec_map(Triplet::X86_WINDOWS); + PackageSpecMap spec_map; auto spec_a = spec_map.emplace("a"); Dependencies::MapPortFileProvider provider(spec_map.map); @@ -948,7 +1006,7 @@ namespace UnitTest1 pghs.push_back(make_status_pgh("b", "a")); StatusParagraphs status_db(std::move(pghs)); - PackageSpecMap spec_map(Triplet::X86_WINDOWS); + PackageSpecMap spec_map; auto spec_a = spec_map.emplace("a"); spec_map.emplace("b", "a"); @@ -980,7 +1038,7 @@ namespace UnitTest1 pghs.push_back(make_status_pgh("b")); StatusParagraphs status_db(std::move(pghs)); - PackageSpecMap spec_map(Triplet::X86_WINDOWS); + PackageSpecMap spec_map; auto spec_a = spec_map.emplace("a"); spec_map.emplace("b", "a"); @@ -1004,7 +1062,7 @@ namespace UnitTest1 pghs.push_back(make_status_pgh("a")); StatusParagraphs status_db(std::move(pghs)); - PackageSpecMap spec_map(Triplet::X86_WINDOWS); + PackageSpecMap spec_map; auto spec_a = spec_map.emplace("a", "b"); spec_map.emplace("b"); @@ -1031,7 +1089,7 @@ namespace UnitTest1 pghs.push_back(make_status_feature_pgh("a", "a1")); StatusParagraphs status_db(std::move(pghs)); - PackageSpecMap spec_map(Triplet::X86_WINDOWS); + PackageSpecMap spec_map; auto spec_a = spec_map.emplace("a", "", {{"a1", ""}}); Dependencies::MapPortFileProvider provider(spec_map.map); @@ -1057,7 +1115,7 @@ namespace UnitTest1 StatusParagraphs status_db(std::move(pghs)); // a1 was added as a default feature and should be installed in upgrade - PackageSpecMap spec_map(Triplet::X86_WINDOWS); + PackageSpecMap spec_map; auto spec_a = spec_map.emplace("a", "", {{"a1", ""}}, {"a1"}); Dependencies::MapPortFileProvider provider(spec_map.map); @@ -1083,7 +1141,7 @@ namespace UnitTest1 pghs.push_back(make_status_feature_pgh("a", "a2", "a[a1]")); StatusParagraphs status_db(std::move(pghs)); - PackageSpecMap spec_map(Triplet::X86_WINDOWS); + PackageSpecMap spec_map; auto spec_a = spec_map.emplace("a", "", {{"a1", ""}, {"a2", "a[a1]"}}); Dependencies::MapPortFileProvider provider(spec_map.map); @@ -1112,7 +1170,7 @@ namespace UnitTest1 pghs.push_back(make_status_pgh("a")); StatusParagraphs status_db(std::move(pghs)); - PackageSpecMap spec_map(Triplet::X86_WINDOWS); + PackageSpecMap spec_map; auto spec_a = spec_map.emplace("a"); auto plan = Dependencies::create_export_plan({spec_a}, status_db); @@ -1129,7 +1187,7 @@ namespace UnitTest1 pghs.push_back(make_status_pgh("b", "a")); StatusParagraphs status_db(std::move(pghs)); - PackageSpecMap spec_map(Triplet::X86_WINDOWS); + PackageSpecMap spec_map; auto spec_a = spec_map.emplace("a"); auto spec_b = spec_map.emplace("b", "a"); @@ -1150,7 +1208,7 @@ namespace UnitTest1 pghs.push_back(make_status_pgh("b")); StatusParagraphs status_db(std::move(pghs)); - PackageSpecMap spec_map(Triplet::X86_WINDOWS); + PackageSpecMap spec_map; auto spec_a = spec_map.emplace("a"); auto spec_b = spec_map.emplace("b", "a"); @@ -1165,7 +1223,7 @@ namespace UnitTest1 { StatusParagraphs status_db; - PackageSpecMap spec_map(Triplet::X86_WINDOWS); + PackageSpecMap spec_map; auto spec_a = spec_map.emplace("a"); auto plan = Dependencies::create_export_plan({spec_a}, status_db); @@ -1183,7 +1241,7 @@ namespace UnitTest1 pghs.push_back(make_status_feature_pgh("a", "a1", "b[core]")); StatusParagraphs status_db(std::move(pghs)); - PackageSpecMap spec_map(Triplet::X86_WINDOWS); + PackageSpecMap spec_map; auto spec_a = spec_map.emplace("a", "", {{"a1", ""}}); auto plan = Dependencies::create_export_plan({spec_a}, status_db); diff --git a/toolsrc/src/vcpkg/commands.list.cpp b/toolsrc/src/vcpkg/commands.list.cpp index 4c4518d25..1bfbc4247 100644 --- a/toolsrc/src/vcpkg/commands.list.cpp +++ b/toolsrc/src/vcpkg/commands.list.cpp @@ -44,14 +44,19 @@ namespace vcpkg::Commands::List const ParsedArguments options = args.parse_arguments(COMMAND_STRUCTURE); const StatusParagraphs status_paragraphs = database_load_check(paths); - std::vector installed_packages = get_installed_ports(status_paragraphs); + auto installed_ipv = get_installed_ports(status_paragraphs); - if (installed_packages.empty()) + if (installed_ipv.empty()) { System::println("No packages are installed. Did you mean `search`?"); Checks::exit_success(VCPKG_LINE_INFO); } + auto installed_packages = Util::fmap(installed_ipv, [](const InstalledPackageView& ipv) { return ipv.core; }); + auto installed_features = + Util::fmap_flatten(installed_ipv, [](const InstalledPackageView& ipv) { return ipv.features; }); + installed_packages.insert(installed_packages.end(), installed_features.begin(), installed_features.end()); + std::sort(installed_packages.begin(), installed_packages.end(), [](const StatusParagraph* lhs, const StatusParagraph* rhs) -> bool { diff --git a/toolsrc/src/vcpkg/dependencies.cpp b/toolsrc/src/vcpkg/dependencies.cpp index f6d81c973..a8bc901a0 100644 --- a/toolsrc/src/vcpkg/dependencies.cpp +++ b/toolsrc/src/vcpkg/dependencies.cpp @@ -13,11 +13,17 @@ namespace vcpkg::Dependencies { - struct FeatureNodeEdges + struct ClusterInstalled { - std::vector remove_edges; - std::vector build_edges; - bool plus = false; + InstalledPackageView ipv; + std::set remove_edges; + std::set original_features; + }; + + struct ClusterSource + { + const SourceControlFile* scf; + std::unordered_map> build_edges; }; /// @@ -25,14 +31,15 @@ namespace vcpkg::Dependencies /// struct Cluster : Util::MoveOnlyBase { - InstalledPackageView installed_package; - - Optional source_control_file; PackageSpec spec; - std::unordered_map edges_by_feature; + + Optional installed; + Optional source; + + // Note: this map can contain "special" strings such as "" and "*" + std::unordered_map plus; std::set to_install_features; - std::set original_features; - bool will_remove = false; + bool minus = false; bool transient_uninstalled = true; RequestType request_type = RequestType::AUTO_SELECTED; }; @@ -88,27 +95,26 @@ namespace vcpkg::Dependencies auto maybe_scf = m_provider.get_control_file(spec.name()); auto& clust = m_graph[spec]; clust.spec = spec; - if (auto p_scf = maybe_scf.get()) cluster_from_scf(*p_scf, clust); + if (auto p_scf = maybe_scf.get()) + { + clust.source = cluster_from_scf(*p_scf, clust.spec.triplet()); + } return clust; } return it->second; } private: - void cluster_from_scf(const SourceControlFile& scf, Cluster& out_cluster) const + static ClusterSource cluster_from_scf(const SourceControlFile& scf, Triplet t) { - FeatureNodeEdges core_dependencies; - core_dependencies.build_edges = - filter_dependencies_to_specs(scf.core_paragraph->depends, out_cluster.spec.triplet()); - out_cluster.edges_by_feature.emplace("core", std::move(core_dependencies)); + ClusterSource ret; + ret.build_edges.emplace("core", filter_dependencies_to_specs(scf.core_paragraph->depends, t)); for (const auto& feature : scf.feature_paragraphs) - { - FeatureNodeEdges added_edges; - added_edges.build_edges = filter_dependencies_to_specs(feature->depends, out_cluster.spec.triplet()); - out_cluster.edges_by_feature.emplace(feature->name, std::move(added_edges)); - } - out_cluster.source_control_file = &scf; + ret.build_edges.emplace(feature->name, filter_dependencies_to_specs(feature->depends, t)); + + ret.scf = &scf; + return ret; } std::unordered_map m_graph; @@ -155,11 +161,10 @@ namespace vcpkg::Dependencies { } - InstallPlanAction::InstallPlanAction(const PackageSpec& spec, - InstalledPackageView&& ipv, + InstallPlanAction::InstallPlanAction(InstalledPackageView&& ipv, const std::set& features, const RequestType& request_type) - : spec(spec) + : spec(ipv.spec()) , installed_package(std::move(ipv)) , plan_type(InstallPlanType::ALREADY_INSTALLED) , request_type(request_type) @@ -289,11 +294,11 @@ namespace vcpkg::Dependencies struct RemoveAdjacencyProvider final : Graphs::AdjacencyProvider { const StatusParagraphs& status_db; - const std::vector& installed_ports; + const std::vector& installed_ports; const std::unordered_set& specs_as_set; RemoveAdjacencyProvider(const StatusParagraphs& status_db, - const std::vector& installed_ports, + const std::vector& installed_ports, const std::unordered_set& specs_as_set) : status_db(status_db), installed_ports(installed_ports), specs_as_set(specs_as_set) { @@ -308,24 +313,13 @@ namespace vcpkg::Dependencies const PackageSpec& spec = plan.spec; std::vector dependents; - for (const StatusParagraph* an_installed_package : installed_ports) + for (auto&& ipv : installed_ports) { - if (an_installed_package->package.spec.triplet() != spec.triplet()) continue; + auto deps = ipv.dependencies(); - std::vector deps = an_installed_package->package.depends; - // - // This is a hack to work around existing installations that put featurespecs into binary packages - // (example: curl[core]) Eventually, this can be returned to a simple string search. - for (auto&& dep : deps) - { - dep.erase(std::find(dep.begin(), dep.end(), '['), dep.end()); - } - Util::unstable_keep_if(deps, - [&](auto&& e) { return e != an_installed_package->package.spec.name(); }); - // - if (std::find(deps.begin(), deps.end(), spec.name()) == deps.end()) continue; + if (std::find(deps.begin(), deps.end(), spec) == deps.end()) continue; - dependents.push_back(an_installed_package->package.spec); + dependents.push_back(ipv.spec()); } return dependents; @@ -347,7 +341,7 @@ namespace vcpkg::Dependencies std::string to_string(const PackageSpec& spec) const override { return spec.to_string(); } }; - const std::vector& installed_ports = get_installed_ports(status_db); + auto installed_ports = get_installed_ports(status_db); const std::unordered_set specs_as_set(specs.cbegin(), specs.cend()); return Graphs::topological_sort(specs, RemoveAdjacencyProvider{status_db, installed_ports, specs_as_set}); } @@ -405,161 +399,201 @@ namespace vcpkg::Dependencies Cluster& cluster, ClusterGraph& graph, GraphPlan& graph_plan, - const std::unordered_set& prevent_default_features = {}); + const std::unordered_set& prevent_default_features); - static void mark_minus(Cluster& cluster, ClusterGraph& graph, GraphPlan& graph_plan); + static void mark_minus(Cluster& cluster, + ClusterGraph& graph, + GraphPlan& graph_plan, + const std::unordered_set& prevent_default_features); - MarkPlusResult mark_plus(const std::string& feature, - Cluster& cluster, - ClusterGraph& graph, - GraphPlan& graph_plan, - const std::unordered_set& prevent_default_features) + static MarkPlusResult follow_plus_dependencies(const std::string& feature, + Cluster& cluster, + ClusterGraph& graph, + GraphPlan& graph_plan, + const std::unordered_set& prevent_default_features) { - if (feature.empty()) + if (auto p_source = cluster.source.get()) { - if (prevent_default_features.find(cluster.spec.name()) == prevent_default_features.end()) + auto it_build_edges = p_source->build_edges.find(feature); + if (it_build_edges != p_source->build_edges.end()) { - // Indicates that core was not specified in the reference + // mark this package for rebuilding if needed + mark_minus(cluster, graph, graph_plan, prevent_default_features); + + graph_plan.install_graph.add_vertex({&cluster}); + cluster.to_install_features.insert(feature); - // Add default features for this package, if this is the "core" feature and we - // are not supposed to prevent default features for this package - if (auto scf = cluster.source_control_file.value_or(nullptr)) + if (feature != "core") { - for (auto&& default_feature : scf->core_paragraph.get()->default_features) - { - auto res = mark_plus(default_feature, cluster, graph, graph_plan, prevent_default_features); - if (res != MarkPlusResult::SUCCESS) - { - return res; - } - } + // All features implicitly depend on core + auto res = mark_plus("core", cluster, graph, graph_plan, prevent_default_features); + + // Should be impossible for "core" to not exist + Checks::check_exit(VCPKG_LINE_INFO, res == MarkPlusResult::SUCCESS); } - // "core" is always an implicit default feature. In case we did not add it as - // a dependency above (e.g. no default features), add it here. - auto res = mark_plus("core", cluster, graph, graph_plan, prevent_default_features); - if (res != MarkPlusResult::SUCCESS) + if (!cluster.installed.get() && !Util::Sets::contains(prevent_default_features, cluster.spec.name())) { - return res; + // Add the default features of this package if it was not previously installed and it isn't being + // suppressed. + auto res = mark_plus("", cluster, graph, graph_plan, prevent_default_features); + + Checks::check_exit(VCPKG_LINE_INFO, + res == MarkPlusResult::SUCCESS, + "Error: Unable to satisfy default dependencies of %s", + cluster.spec); + } + + for (auto&& depend : it_build_edges->second) + { + auto& depend_cluster = graph.get(depend.spec()); + auto res = mark_plus(depend.feature(), depend_cluster, graph, graph_plan, prevent_default_features); + + Checks::check_exit(VCPKG_LINE_INFO, + res == MarkPlusResult::SUCCESS, + "Error: Unable to satisfy dependency %s of %s", + depend, + FeatureSpec(cluster.spec, feature)); + + if (&depend_cluster == &cluster) continue; + graph_plan.install_graph.add_edge({&cluster}, {&depend_cluster}); } - return MarkPlusResult::SUCCESS; - } - else - { - // Skip adding the default features, as explicitly told not to. return MarkPlusResult::SUCCESS; } } - auto it = cluster.edges_by_feature.find(feature); - if (it == cluster.edges_by_feature.end()) return MarkPlusResult::FEATURE_NOT_FOUND; + // The feature was not available in the installed package nor the source paragraph. + return MarkPlusResult::FEATURE_NOT_FOUND; + } - if (cluster.edges_by_feature[feature].plus) return MarkPlusResult::SUCCESS; + MarkPlusResult mark_plus(const std::string& feature, + Cluster& cluster, + ClusterGraph& graph, + GraphPlan& graph_plan, + const std::unordered_set& prevent_default_features) + { + auto& plus = cluster.plus[feature]; + if (plus) return MarkPlusResult::SUCCESS; + plus = true; - if (cluster.original_features.find(feature) == cluster.original_features.end()) + if (feature.empty()) { - cluster.transient_uninstalled = true; - } + // Add default features for this package. This is an exact reference, so ignore prevent_default_features. + if (auto p_source = cluster.source.get()) + { + for (auto&& default_feature : p_source->scf->core_paragraph.get()->default_features) + { + auto res = mark_plus(default_feature, cluster, graph, graph_plan, prevent_default_features); + if (res != MarkPlusResult::SUCCESS) + { + return res; + } + } + } + else + { + Checks::exit_with_message(VCPKG_LINE_INFO, + "Error: Unable to install default features because can't find CONTROL for %s", + cluster.spec); + } - if (!cluster.transient_uninstalled) - { - return MarkPlusResult::SUCCESS; + // "core" is always required. + return mark_plus("core", cluster, graph, graph_plan, prevent_default_features); } - cluster.edges_by_feature[feature].plus = true; - if (!cluster.original_features.empty()) + if (feature == "*") { - mark_minus(cluster, graph, graph_plan); - } + if (auto p_source = cluster.source.get()) + { + for (auto&& feature : p_source->scf->feature_paragraphs) + { + auto res = mark_plus(feature->name, cluster, graph, graph_plan, prevent_default_features); - graph_plan.install_graph.add_vertex({&cluster}); - auto& tracked = cluster.to_install_features; - tracked.insert(feature); + Checks::check_exit(VCPKG_LINE_INFO, + res == MarkPlusResult::SUCCESS, + "Error: Unable to locate feature %s in %s", + feature->name, + cluster.spec); + } - if (feature != "core") - { - // All features implicitly depend on core - auto res = mark_plus("core", cluster, graph, graph_plan, prevent_default_features); + auto res = mark_plus("core", cluster, graph, graph_plan, prevent_default_features); - // Should be impossible for "core" to not exist - Checks::check_exit(VCPKG_LINE_INFO, res == MarkPlusResult::SUCCESS); - } - else - { - // Add the default features of this package. - auto res = mark_plus("", cluster, graph, graph_plan, prevent_default_features); + Checks::check_exit(VCPKG_LINE_INFO, res == MarkPlusResult::SUCCESS); + } + else + { + Checks::exit_with_message( + VCPKG_LINE_INFO, "Error: Unable to handle '*' because can't find CONTROL for %s", cluster.spec); + } + return MarkPlusResult::SUCCESS; } - for (auto&& depend : cluster.edges_by_feature[feature].build_edges) + if (auto p_installed = cluster.installed.get()) { - auto& depend_cluster = graph.get(depend.spec()); - auto res = mark_plus(depend.feature(), depend_cluster, graph, graph_plan, prevent_default_features); - - Checks::check_exit(VCPKG_LINE_INFO, - res == MarkPlusResult::SUCCESS, - "Error: Unable to satisfy dependency %s of %s", - depend, - FeatureSpec(cluster.spec, feature)); - - if (&depend_cluster == &cluster) continue; - graph_plan.install_graph.add_edge({&cluster}, {&depend_cluster}); + if (p_installed->original_features.find(feature) != p_installed->original_features.end()) + { + return MarkPlusResult::SUCCESS; + } } - return MarkPlusResult::SUCCESS; + // This feature was or will be uninstalled, therefore we need to rebuild + mark_minus(cluster, graph, graph_plan, prevent_default_features); + + return follow_plus_dependencies(feature, cluster, graph, graph_plan, prevent_default_features); } - void mark_minus(Cluster& cluster, ClusterGraph& graph, GraphPlan& graph_plan) + void mark_minus(Cluster& cluster, + ClusterGraph& graph, + GraphPlan& graph_plan, + const std::unordered_set& prevent_default_features) { - if (cluster.will_remove) return; - cluster.will_remove = true; - - std::unordered_set prevent_default_features; + if (cluster.minus) return; + cluster.minus = true; + cluster.transient_uninstalled = true; - if (cluster.request_type == RequestType::USER_REQUESTED) - { - // Do not install default features for packages which the user - // installed explicitly. New default features for dependent - // clusters should still be upgraded. - prevent_default_features.insert(cluster.spec.name()); + auto p_installed = cluster.installed.get(); + auto p_source = cluster.source.get(); - // For dependent packages this is handles through the recursion - } + Checks::check_exit( + VCPKG_LINE_INFO, + p_source, + "Error: cannot locate new portfile for %s. Please explicitly remove this package with `vcpkg remove %s`.", + cluster.spec, + cluster.spec); - graph_plan.remove_graph.add_vertex({&cluster}); - for (auto&& pair : cluster.edges_by_feature) + if (p_installed) { - auto& remove_edges_edges = pair.second.remove_edges; - for (auto&& depend : remove_edges_edges) + graph_plan.remove_graph.add_vertex({&cluster}); + for (auto&& edge : p_installed->remove_edges) { - auto& depend_cluster = graph.get(depend.spec()); - if (&depend_cluster != &cluster) graph_plan.remove_graph.add_edge({&cluster}, {&depend_cluster}); - mark_minus(depend_cluster, graph, graph_plan); + auto& depend_cluster = graph.get(edge); + Checks::check_exit(VCPKG_LINE_INFO, &cluster != &depend_cluster); + graph_plan.remove_graph.add_edge({&cluster}, {&depend_cluster}); + mark_minus(depend_cluster, graph, graph_plan, prevent_default_features); } - } - cluster.transient_uninstalled = true; - for (auto&& original_feature : cluster.original_features) - { - auto res = mark_plus(original_feature, cluster, graph, graph_plan, prevent_default_features); - if (res != MarkPlusResult::SUCCESS) + // Reinstall all original features. Don't use mark_plus because it will ignore them since they are + // "already installed". + for (auto&& f : p_installed->original_features) { - System::println(System::Color::warning, - "Warning: could not reinstall feature %s", - FeatureSpec{cluster.spec, original_feature}); + auto res = follow_plus_dependencies(f, cluster, graph, graph_plan, prevent_default_features); + if (res != MarkPlusResult::SUCCESS) + { + System::println(System::Color::warning, + "Warning: could not reinstall feature %s", + FeatureSpec{cluster.spec, f}); + } } - } - // Check if any default features have been added - if (auto scf = cluster.source_control_file.value_or(nullptr)) - { - auto& previous_df = cluster.installed_package.core->package.default_features; - for (auto&& default_feature : scf->core_paragraph->default_features) + // Check if any default features have been added + auto& previous_df = p_installed->ipv.core->package.default_features; + for (auto&& default_feature : p_source->scf->core_paragraph->default_features) { if (std::find(previous_df.begin(), previous_df.end(), default_feature) == previous_df.end()) { - // this is a new default feature, mark it for installation - auto res = mark_plus(default_feature, cluster, graph, graph_plan); + // This is a new default feature, mark it for installation + auto res = mark_plus(default_feature, cluster, graph, graph_plan, prevent_default_features); if (res != MarkPlusResult::SUCCESS) { System::println(System::Color::warning, @@ -588,7 +622,11 @@ namespace vcpkg::Dependencies PackageGraph pgraph(provider, status_db); for (auto&& spec : specs) + { + // If preventing default features, ignore the automatically generated "" references + if (spec.feature().empty() && Util::Sets::contains(prevent_default_features, spec.name())) continue; pgraph.install(spec, prevent_default_features); + } return pgraph.serialize(); } @@ -614,37 +652,10 @@ namespace vcpkg::Dependencies { Cluster& spec_cluster = m_graph->get(spec.spec()); spec_cluster.request_type = RequestType::USER_REQUESTED; - if (spec.feature() == "*") - { - if (auto p_scf = spec_cluster.source_control_file.value_or(nullptr)) - { - for (auto&& feature : p_scf->feature_paragraphs) - { - auto res = - mark_plus(feature->name, spec_cluster, *m_graph, *m_graph_plan, prevent_default_features); - - Checks::check_exit( - VCPKG_LINE_INFO, res == MarkPlusResult::SUCCESS, "Error: Unable to locate feature %s", spec); - } - - auto res = mark_plus("core", spec_cluster, *m_graph, *m_graph_plan, prevent_default_features); - Checks::check_exit( - VCPKG_LINE_INFO, res == MarkPlusResult::SUCCESS, "Error: Unable to locate feature %s", spec); - } - else - { - Checks::exit_with_message( - VCPKG_LINE_INFO, "Error: Unable to handle '*' because can't find CONTROL for %s", spec.spec()); - } - } - else - { - auto res = mark_plus(spec.feature(), spec_cluster, *m_graph, *m_graph_plan, prevent_default_features); + auto res = mark_plus(spec.feature(), spec_cluster, *m_graph, *m_graph_plan, prevent_default_features); - Checks::check_exit( - VCPKG_LINE_INFO, res == MarkPlusResult::SUCCESS, "Error: Unable to locate feature %s", spec); - } + Checks::check_exit(VCPKG_LINE_INFO, res == MarkPlusResult::SUCCESS, "Error: Unable to locate feature %s", spec); m_graph_plan->install_graph.add_vertex(ClusterPtr{&spec_cluster}); } @@ -654,7 +665,7 @@ namespace vcpkg::Dependencies Cluster& spec_cluster = m_graph->get(spec); spec_cluster.request_type = RequestType::USER_REQUESTED; - mark_minus(spec_cluster, *m_graph, *m_graph_plan); + mark_minus(spec_cluster, *m_graph, *m_graph_plan, {}); } std::vector PackageGraph::serialize() const @@ -669,11 +680,8 @@ namespace vcpkg::Dependencies for (auto&& p_cluster : remove_toposort) { - auto scf = *p_cluster->source_control_file.get(); - auto spec = PackageSpec::from_name_and_triplet(scf->core_paragraph->name, p_cluster->spec.triplet()) - .value_or_exit(VCPKG_LINE_INFO); plan.emplace_back(RemovePlanAction{ - std::move(spec), + std::move(p_cluster->spec), RemovePlanType::REMOVE, p_cluster->request_type, }); @@ -684,8 +692,7 @@ namespace vcpkg::Dependencies if (p_cluster->transient_uninstalled) { // If it will be transiently uninstalled, we need to issue a full installation command - auto pscf = p_cluster->source_control_file.value_or_exit(VCPKG_LINE_INFO); - Checks::check_exit(VCPKG_LINE_INFO, pscf != nullptr); + auto pscf = p_cluster->source.value_or_exit(VCPKG_LINE_INFO).scf; auto dep_specs = Util::fmap(m_graph_plan->install_graph.adjacency_list(p_cluster), [](ClusterPtr const& p) { return p->spec; }); @@ -703,10 +710,10 @@ namespace vcpkg::Dependencies { // If the package isn't transitively installed, still include it if the user explicitly requested it if (p_cluster->request_type != RequestType::USER_REQUESTED) continue; + auto&& installed = p_cluster->installed.value_or_exit(VCPKG_LINE_INFO); plan.emplace_back(InstallPlanAction{ - p_cluster->spec, - InstalledPackageView{p_cluster->installed_package}, - p_cluster->original_features, + InstalledPackageView{installed.ipv}, + installed.original_features, p_cluster->request_type, }); } @@ -722,44 +729,36 @@ namespace vcpkg::Dependencies auto installed_ports = get_installed_ports(status_db); - for (auto&& status_paragraph : installed_ports) + for (auto&& ipv : installed_ports) { - Cluster& cluster = graph->get(status_paragraph->package.spec); + Cluster& cluster = graph->get(ipv.spec()); cluster.transient_uninstalled = false; - auto& status_paragraph_feature = status_paragraph->package.feature; - - // In this case, empty string indicates the "core" paragraph for a package. - if (status_paragraph_feature.empty()) - { - cluster.original_features.insert("core"); - cluster.installed_package.core = status_paragraph; - } - else - { - cluster.original_features.insert(status_paragraph_feature); - cluster.installed_package.features.emplace_back(status_paragraph); - } + cluster.installed = [](const InstalledPackageView& ipv) -> ClusterInstalled { + ClusterInstalled ret; + ret.ipv = ipv; + ret.original_features.emplace("core"); + for (auto&& feature : ipv.features) + ret.original_features.emplace(feature->package.feature); + return ret; + }(ipv); } // Populate the graph with "remove edges", which are the reverse of the Build-Depends edges. - for (auto&& status_paragraph : installed_ports) + for (auto&& ipv : installed_ports) { - auto& spec = status_paragraph->package.spec; - auto& status_paragraph_feature = status_paragraph->package.feature; - auto reverse_edges = FeatureSpec::from_strings_and_triplet(status_paragraph->package.depends, - status_paragraph->package.spec.triplet()); + auto deps = ipv.dependencies(); - for (auto&& dependency : reverse_edges) + for (auto&& dep : deps) { - auto& dep_cluster = graph->get(dependency.spec()); - - auto depends_name = dependency.feature(); - if (depends_name.empty()) depends_name = "core"; - - auto& target_node = dep_cluster.edges_by_feature[depends_name]; - target_node.remove_edges.emplace_back(FeatureSpec{spec, status_paragraph_feature}); + auto p_installed = graph->get(dep).installed.get(); + Checks::check_exit(VCPKG_LINE_INFO, + p_installed, + "Error: database corrupted. Package %s is installed but dependency %s is not.", + ipv.spec(), + dep); + p_installed->remove_edges.emplace(ipv.spec()); } } return graph; diff --git a/toolsrc/src/vcpkg/remove.cpp b/toolsrc/src/vcpkg/remove.cpp index 32433b234..13cc9325e 100644 --- a/toolsrc/src/vcpkg/remove.cpp +++ b/toolsrc/src/vcpkg/remove.cpp @@ -201,9 +201,9 @@ namespace vcpkg::Remove static std::vector valid_arguments(const VcpkgPaths& paths) { const StatusParagraphs status_db = database_load_check(paths); - const std::vector installed_packages = get_installed_ports(status_db); + auto installed_packages = get_installed_ports(status_db); - return Util::fmap(installed_packages, [](auto&& pgh) -> std::string { return pgh->package.spec.to_string(); }); + return Util::fmap(installed_packages, [](auto&& pgh) -> std::string { return pgh.spec().to_string(); }); } const CommandStructure COMMAND_STRUCTURE = { diff --git a/toolsrc/src/vcpkg/statusparagraph.cpp b/toolsrc/src/vcpkg/statusparagraph.cpp index 62d1d4b42..236689494 100644 --- a/toolsrc/src/vcpkg/statusparagraph.cpp +++ b/toolsrc/src/vcpkg/statusparagraph.cpp @@ -95,7 +95,7 @@ namespace vcpkg // Add the core paragraph dependencies to the list deps.insert(deps.end(), core->package.depends.begin(), core->package.depends.end()); - auto&& spec = core->package.spec; + auto&& l_spec = spec(); // // This is a hack to work around existing installations that put featurespecs into binary packages @@ -104,12 +104,12 @@ namespace vcpkg { dep.erase(std::find(dep.begin(), dep.end(), '['), dep.end()); } - Util::unstable_keep_if(deps, [&](auto&& e) { return e != spec.name(); }); + Util::unstable_keep_if(deps, [&](auto&& e) { return e != l_spec.name(); }); // Util::sort_unique_erase(deps); return Util::fmap(deps, [&](const std::string& dep) -> PackageSpec { - auto maybe_dependency_spec = PackageSpec::from_name_and_triplet(dep, spec.triplet()); + auto maybe_dependency_spec = PackageSpec::from_name_and_triplet(dep, l_spec.triplet()); if (auto dependency_spec = maybe_dependency_spec.get()) { return std::move(*dependency_spec); @@ -120,7 +120,7 @@ namespace vcpkg "Invalid dependency [%s] in package [%s]\n" "%s", dep, - spec.name(), + l_spec.name(), vcpkg::to_string(error_type)); }); } diff --git a/toolsrc/src/vcpkg/update.cpp b/toolsrc/src/vcpkg/update.cpp index d6c5614ed..57259f952 100644 --- a/toolsrc/src/vcpkg/update.cpp +++ b/toolsrc/src/vcpkg/update.cpp @@ -17,17 +17,12 @@ namespace vcpkg::Update std::vector find_outdated_packages(const Dependencies::PortFileProvider& provider, const StatusParagraphs& status_db) { - const std::vector installed_packages = get_installed_ports(status_db); + auto installed_packages = get_installed_ports(status_db); std::vector output; - for (const StatusParagraph* pgh : installed_packages) + for (auto&& ipv : installed_packages) { - if (!pgh->package.feature.empty()) - { - // Skip feature paragraphs; only consider master paragraphs for needing updates. - continue; - } - + const auto& pgh = ipv.core; auto maybe_scf = provider.get_control_file(pgh->package.spec.name()); if (auto p_scf = maybe_scf.get()) { diff --git a/toolsrc/src/vcpkg/vcpkglib.cpp b/toolsrc/src/vcpkg/vcpkglib.cpp index 7979fd9a5..c8e95dab1 100644 --- a/toolsrc/src/vcpkg/vcpkglib.cpp +++ b/toolsrc/src/vcpkg/vcpkglib.cpp @@ -169,16 +169,32 @@ namespace vcpkg fs.rename(updated_listfile_path, listfile_path); } - std::vector get_installed_ports(const StatusParagraphs& status_db) + std::vector get_installed_ports(const StatusParagraphs& status_db) { - std::vector installed_packages; + std::map ipv_map; + + std::vector installed_packages; for (auto&& pgh : status_db) { if (!pgh->is_installed()) continue; - installed_packages.push_back(pgh.get()); + auto& ipv = ipv_map[pgh->package.spec]; + if (pgh->package.feature.empty()) + { + ipv.core = pgh.get(); + } + else + { + ipv.features.emplace_back(pgh.get()); + } } - return installed_packages; + for (auto&& ipv : ipv_map) + Checks::check_exit(VCPKG_LINE_INFO, + ipv.second.core != nullptr, + "Database is corrupted: package %s has features but no core paragraph.", + ipv.first); + + return Util::fmap(ipv_map, [](auto&& p) -> InstalledPackageView { return std::move(p.second); }); } std::vector get_installed_files(const VcpkgPaths& paths, -- cgit v1.2.3 From a2aeb2f1949c42622ccc7f9572a441e2a4475132 Mon Sep 17 00:00:00 2001 From: Robert Schumacher Date: Thu, 12 Apr 2018 00:47:17 -0700 Subject: [vcpkg] Mark many types noexcept. Make certain code patterns more transparent to /analyze. #ifdef-out unused code on non-windows. --- toolsrc/CMakeLists.txt | 3 +++ toolsrc/include/vcpkg/base/chrono.h | 10 ++++---- toolsrc/include/vcpkg/base/cstringview.h | 15 +----------- toolsrc/include/vcpkg/base/files.h | 2 +- toolsrc/include/vcpkg/base/lineinfo.h | 2 +- toolsrc/include/vcpkg/base/optional.h | 6 ++--- toolsrc/include/vcpkg/base/span.h | 7 +++--- toolsrc/include/vcpkg/base/strings.h | 2 +- toolsrc/include/vcpkg/binaryparagraph.h | 2 +- toolsrc/include/vcpkg/build.h | 6 ++--- toolsrc/include/vcpkg/dependencies.h | 6 ++--- toolsrc/include/vcpkg/packagespecparseresult.h | 2 +- toolsrc/include/vcpkg/statusparagraph.h | 4 ++-- toolsrc/include/vcpkg/triplet.h | 4 ++-- toolsrc/include/vcpkg/versiont.h | 4 ++-- toolsrc/src/tests.plan.cpp | 2 +- toolsrc/src/vcpkg.cpp | 2 ++ toolsrc/src/vcpkg/base/cofffilereader.cpp | 7 +++--- toolsrc/src/vcpkg/base/files.cpp | 17 ++++++++------ toolsrc/src/vcpkg/base/strings.cpp | 14 ++++++----- toolsrc/src/vcpkg/base/system.cpp | 32 +++++++++++--------------- toolsrc/src/vcpkg/binaryparagraph.cpp | 2 +- toolsrc/src/vcpkg/build.cpp | 14 +++++------ toolsrc/src/vcpkg/commands.ci.cpp | 7 ++---- toolsrc/src/vcpkg/commands.edit.cpp | 5 ++-- toolsrc/src/vcpkg/commands.fetch.cpp | 5 ++-- toolsrc/src/vcpkg/commands.hash.cpp | 11 +++++---- toolsrc/src/vcpkg/commands.integrate.cpp | 21 ++++++++++++++++- toolsrc/src/vcpkg/dependencies.cpp | 25 ++++++++++++++------ toolsrc/src/vcpkg/export.cpp | 12 +++++----- toolsrc/src/vcpkg/metrics.cpp | 6 ----- toolsrc/src/vcpkg/postbuildlint.cpp | 8 +++++-- toolsrc/src/vcpkg/statusparagraph.cpp | 3 ++- toolsrc/src/vcpkg/versiont.cpp | 4 ++-- 34 files changed, 147 insertions(+), 125 deletions(-) diff --git a/toolsrc/CMakeLists.txt b/toolsrc/CMakeLists.txt index acc12f2b3..db756deee 100644 --- a/toolsrc/CMakeLists.txt +++ b/toolsrc/CMakeLists.txt @@ -23,6 +23,9 @@ endif() if(GCC OR CLANG) add_compile_options(-std=c++1z) + if(WERROR) + add_compile_options(-Wall -Wno-unknown-pragmas -Werror) + endif() endif() file(GLOB_RECURSE VCPKGLIB_SOURCES src/vcpkg/*.cpp) diff --git a/toolsrc/include/vcpkg/base/chrono.h b/toolsrc/include/vcpkg/base/chrono.h index 7b393e377..aa764a597 100644 --- a/toolsrc/include/vcpkg/base/chrono.h +++ b/toolsrc/include/vcpkg/base/chrono.h @@ -11,8 +11,8 @@ namespace vcpkg::Chrono using duration = std::chrono::high_resolution_clock::time_point::duration; public: - constexpr ElapsedTime() : m_duration() {} - constexpr ElapsedTime(duration d) : m_duration(d) {} + constexpr ElapsedTime() noexcept : m_duration() {} + constexpr ElapsedTime(duration d) noexcept : m_duration(d) {} template TimeUnit as() const @@ -31,7 +31,7 @@ namespace vcpkg::Chrono public: static ElapsedTimer create_started(); - constexpr ElapsedTimer() : m_start_tick() {} + constexpr ElapsedTimer() noexcept : m_start_tick() {} ElapsedTime elapsed() const { @@ -52,8 +52,8 @@ namespace vcpkg::Chrono static Optional get_current_date_time(); static Optional parse(CStringView str); - constexpr CTime() : m_tm{0} {} - explicit constexpr CTime(tm t) : m_tm{t} {} + constexpr CTime() noexcept : m_tm{0} {} + explicit constexpr CTime(tm t) noexcept : m_tm{t} {} std::string to_string() const; diff --git a/toolsrc/include/vcpkg/base/cstringview.h b/toolsrc/include/vcpkg/base/cstringview.h index 0441bc573..f285aa36c 100644 --- a/toolsrc/include/vcpkg/base/cstringview.h +++ b/toolsrc/include/vcpkg/base/cstringview.h @@ -7,7 +7,7 @@ namespace vcpkg { struct CStringView { - constexpr CStringView() : cstr(nullptr) {} + constexpr CStringView() noexcept : cstr(nullptr) {} constexpr CStringView(const char* cstr) : cstr(cstr) {} constexpr CStringView(const CStringView&) = default; CStringView(const std::string& str) : cstr(str.c_str()) {} @@ -18,19 +18,6 @@ namespace vcpkg const char* cstr; }; - struct CWStringView - { - constexpr CWStringView() : cstr(nullptr) {} - constexpr CWStringView(const wchar_t* cstr) : cstr(cstr) {} - constexpr CWStringView(const CWStringView&) = default; - CWStringView(const std::wstring& str) : cstr(str.c_str()) {} - - constexpr const wchar_t* c_str() const { return cstr; } - - private: - const wchar_t* cstr; - }; - namespace details { inline bool vcpkg_strcmp(const char* l, const char* r) { return strcmp(l, r) == 0; } diff --git a/toolsrc/include/vcpkg/base/files.h b/toolsrc/include/vcpkg/base/files.h index ac1f192ae..f16805d0a 100644 --- a/toolsrc/include/vcpkg/base/files.h +++ b/toolsrc/include/vcpkg/base/files.h @@ -64,7 +64,7 @@ namespace vcpkg::Files Filesystem& get_real_filesystem(); - static const char* FILESYSTEM_INVALID_CHARACTERS = R"(\/:*?"<>|)"; + static constexpr const char* FILESYSTEM_INVALID_CHARACTERS = R"(\/:*?"<>|)"; bool has_invalid_chars_for_filesystem(const std::string& s); diff --git a/toolsrc/include/vcpkg/base/lineinfo.h b/toolsrc/include/vcpkg/base/lineinfo.h index e7e8c3031..e0eb8bec9 100644 --- a/toolsrc/include/vcpkg/base/lineinfo.h +++ b/toolsrc/include/vcpkg/base/lineinfo.h @@ -9,7 +9,7 @@ namespace vcpkg int line_number; const char* file_name; - constexpr LineInfo() : line_number(0), file_name("") {} + constexpr LineInfo() noexcept : line_number(0), file_name("") {} constexpr LineInfo(const int lineno, const char* filename) : line_number(lineno), file_name(filename) {} std::string to_string() const; diff --git a/toolsrc/include/vcpkg/base/optional.h b/toolsrc/include/vcpkg/base/optional.h index b629de9b3..6b84b10aa 100644 --- a/toolsrc/include/vcpkg/base/optional.h +++ b/toolsrc/include/vcpkg/base/optional.h @@ -16,7 +16,7 @@ namespace vcpkg template struct OptionalStorage { - constexpr OptionalStorage() : m_is_present(false), m_t() {} + constexpr OptionalStorage() noexcept : m_is_present(false), m_t() {} constexpr OptionalStorage(const T& t) : m_is_present(true), m_t(t) {} constexpr OptionalStorage(T&& t) : m_is_present(true), m_t(std::move(t)) {} @@ -33,7 +33,7 @@ namespace vcpkg template struct OptionalStorage { - constexpr OptionalStorage() : m_t(nullptr) {} + constexpr OptionalStorage() noexcept : m_t(nullptr) {} constexpr OptionalStorage(T& t) : m_t(&t) {} constexpr bool has_value() const { return m_t != nullptr; } @@ -48,7 +48,7 @@ namespace vcpkg template struct Optional { - constexpr Optional() {} + constexpr Optional() noexcept {} // Constructors are intentionally implicit constexpr Optional(NullOpt) {} diff --git a/toolsrc/include/vcpkg/base/span.h b/toolsrc/include/vcpkg/base/span.h index c9ac18afe..2b067d0ac 100644 --- a/toolsrc/include/vcpkg/base/span.h +++ b/toolsrc/include/vcpkg/base/span.h @@ -19,18 +19,19 @@ namespace vcpkg using iterator = pointer; constexpr Span() noexcept : m_ptr(nullptr), m_count(0) {} - constexpr Span(std::nullptr_t) noexcept : Span() {} + constexpr Span(std::nullptr_t) noexcept : m_ptr(nullptr), m_count(0) {} constexpr Span(pointer ptr, size_t count) noexcept : m_ptr(ptr), m_count(count) {} constexpr Span(pointer ptr_begin, pointer ptr_end) noexcept : m_ptr(ptr_begin), m_count(ptr_end - ptr_begin) {} constexpr Span(std::initializer_list l) noexcept : m_ptr(l.begin()), m_count(l.size()) {} template - constexpr Span(T (&arr)[N]) noexcept : Span(arr, N) + constexpr Span(T (&arr)[N]) noexcept : m_ptr(arr), m_count(N) { } template - constexpr Span(const std::array, N>& arr) noexcept : Span(arr.data(), arr.size()) + constexpr Span(const std::array, N>& arr) noexcept + : m_ptr(arr.data()), m_count(arr.size()) { } diff --git a/toolsrc/include/vcpkg/base/strings.h b/toolsrc/include/vcpkg/base/strings.h index c32e81ac2..4cc17bcf4 100644 --- a/toolsrc/include/vcpkg/base/strings.h +++ b/toolsrc/include/vcpkg/base/strings.h @@ -36,7 +36,7 @@ namespace vcpkg::Strings std::wstring to_utf16(const CStringView& s); - std::string to_utf8(const CWStringView& w); + std::string to_utf8(const wchar_t* w); std::string escape_string(const CStringView& s, char char_to_escape, char escape_char); diff --git a/toolsrc/include/vcpkg/binaryparagraph.h b/toolsrc/include/vcpkg/binaryparagraph.h index 3315151c6..5ba2fbde3 100644 --- a/toolsrc/include/vcpkg/binaryparagraph.h +++ b/toolsrc/include/vcpkg/binaryparagraph.h @@ -12,7 +12,7 @@ namespace vcpkg /// struct BinaryParagraph { - BinaryParagraph(); + BinaryParagraph() noexcept; explicit BinaryParagraph(std::unordered_map fields); BinaryParagraph(const SourceParagraph& spgh, const Triplet& triplet, const std::string& abi_tag); BinaryParagraph(const SourceParagraph& spgh, const FeatureParagraph& fpgh, const Triplet& triplet); diff --git a/toolsrc/include/vcpkg/build.h b/toolsrc/include/vcpkg/build.h index a86245ccf..c5e7e8d88 100644 --- a/toolsrc/include/vcpkg/build.h +++ b/toolsrc/include/vcpkg/build.h @@ -62,7 +62,7 @@ namespace vcpkg::Build BUILT_IN, ARIA2, }; - const std::string& to_string(DownloadTool tool); + const std::string& to_string(DownloadTool tool); struct BuildPackageOptions { @@ -203,8 +203,8 @@ namespace vcpkg::Build struct BuildInfo { - LinkageType crt_linkage; - LinkageType library_linkage; + LinkageType crt_linkage = LinkageType::DYNAMIC; + LinkageType library_linkage = LinkageType::DYNAMIC; Optional version; diff --git a/toolsrc/include/vcpkg/dependencies.h b/toolsrc/include/vcpkg/dependencies.h index 704e76b07..3c3b8f267 100644 --- a/toolsrc/include/vcpkg/dependencies.h +++ b/toolsrc/include/vcpkg/dependencies.h @@ -35,7 +35,7 @@ namespace vcpkg::Dependencies { static bool compare_by_name(const InstallPlanAction* left, const InstallPlanAction* right); - InstallPlanAction(); + InstallPlanAction() noexcept; InstallPlanAction(InstalledPackageView&& spghs, const std::set& features, @@ -73,7 +73,7 @@ namespace vcpkg::Dependencies { static bool compare_by_name(const RemovePlanAction* left, const RemovePlanAction* right); - RemovePlanAction(); + RemovePlanAction() noexcept; RemovePlanAction(const PackageSpec& spec, const RemovePlanType& plan_type, const RequestType& request_type); PackageSpec spec; @@ -103,7 +103,7 @@ namespace vcpkg::Dependencies { static bool compare_by_name(const ExportPlanAction* left, const ExportPlanAction* right); - ExportPlanAction(); + ExportPlanAction() noexcept; ExportPlanAction(const PackageSpec& spec, InstalledPackageView&& installed_package, const RequestType& request_type); diff --git a/toolsrc/include/vcpkg/packagespecparseresult.h b/toolsrc/include/vcpkg/packagespecparseresult.h index dd91c9a67..be3497152 100644 --- a/toolsrc/include/vcpkg/packagespecparseresult.h +++ b/toolsrc/include/vcpkg/packagespecparseresult.h @@ -17,7 +17,7 @@ namespace vcpkg template<> struct ErrorHolder { - ErrorHolder() : m_err(PackageSpecParseResult::SUCCESS) {} + ErrorHolder() noexcept : m_err(PackageSpecParseResult::SUCCESS) {} ErrorHolder(PackageSpecParseResult err) : m_err(err) {} bool has_error() const { return m_err != PackageSpecParseResult::SUCCESS; } diff --git a/toolsrc/include/vcpkg/statusparagraph.h b/toolsrc/include/vcpkg/statusparagraph.h index 16144e467..e79c946cc 100644 --- a/toolsrc/include/vcpkg/statusparagraph.h +++ b/toolsrc/include/vcpkg/statusparagraph.h @@ -29,7 +29,7 @@ namespace vcpkg /// struct StatusParagraph { - StatusParagraph(); + StatusParagraph() noexcept; explicit StatusParagraph(std::unordered_map&& fields); bool is_installed() const { return want == Want::INSTALL && state == InstallState::INSTALLED; } @@ -47,7 +47,7 @@ namespace vcpkg struct InstalledPackageView { - InstalledPackageView() : core(nullptr) {} + InstalledPackageView() noexcept : core(nullptr) {} InstalledPackageView(const StatusParagraph* c, std::vector&& fs) : core(c), features(std::move(fs)) diff --git a/toolsrc/include/vcpkg/triplet.h b/toolsrc/include/vcpkg/triplet.h index 10464dc2c..334960e49 100644 --- a/toolsrc/include/vcpkg/triplet.h +++ b/toolsrc/include/vcpkg/triplet.h @@ -9,7 +9,7 @@ namespace vcpkg struct Triplet { public: - constexpr Triplet() : m_instance(&DEFAULT_INSTANCE) {} + constexpr Triplet() noexcept : m_instance(&DEFAULT_INSTANCE) {} static Triplet from_canonical_name(const std::string& triplet_as_string); @@ -47,4 +47,4 @@ namespace std { size_t operator()(const vcpkg::Triplet& t) const { return t.hash_code(); } }; -} \ No newline at end of file +} diff --git a/toolsrc/include/vcpkg/versiont.h b/toolsrc/include/vcpkg/versiont.h index 8427dfe3b..e893f1abc 100644 --- a/toolsrc/include/vcpkg/versiont.h +++ b/toolsrc/include/vcpkg/versiont.h @@ -5,7 +5,7 @@ namespace vcpkg { struct VersionT { - VersionT(); + VersionT() noexcept; VersionT(std::string&& value); VersionT(const std::string& value); @@ -23,7 +23,7 @@ namespace vcpkg VersionT left; VersionT right; - VersionDiff(); + VersionDiff() noexcept; VersionDiff(const VersionT& left, const VersionT& right); std::string to_string() const; diff --git a/toolsrc/src/tests.plan.cpp b/toolsrc/src/tests.plan.cpp index b054702a1..238aa7032 100644 --- a/toolsrc/src/tests.plan.cpp +++ b/toolsrc/src/tests.plan.cpp @@ -81,7 +81,7 @@ namespace UnitTest1 { std::unordered_map map; Triplet triplet; - PackageSpecMap(const Triplet& t = Triplet::X86_WINDOWS) { triplet = t; } + PackageSpecMap(const Triplet& t = Triplet::X86_WINDOWS) noexcept { triplet = t; } PackageSpec emplace(const char* name, const char* depends = "", diff --git a/toolsrc/src/vcpkg.cpp b/toolsrc/src/vcpkg.cpp index a65045aa8..06c99e9a8 100644 --- a/toolsrc/src/vcpkg.cpp +++ b/toolsrc/src/vcpkg.cpp @@ -223,6 +223,7 @@ static void load_config() } } +#if defined(_WIN32) static std::string trim_path_from_command_line(const std::string& full_command_line) { Checks::check_exit( @@ -243,6 +244,7 @@ static std::string trim_path_from_command_line(const std::string& full_command_l ++it; return std::string(it, full_command_line.cend()); } +#endif #if defined(_WIN32) int wmain(const int argc, const wchar_t* const* const argv) diff --git a/toolsrc/src/vcpkg/base/cofffilereader.cpp b/toolsrc/src/vcpkg/base/cofffilereader.cpp index 5b06a885c..fca0b627e 100644 --- a/toolsrc/src/vcpkg/base/cofffilereader.cpp +++ b/toolsrc/src/vcpkg/base/cofffilereader.cpp @@ -148,17 +148,18 @@ namespace vcpkg::CoffFileReader { static OffsetsArray read(fstream& fs, const uint32_t offset_count) { - static constexpr size_t OFFSET_WIDTH = 4; + static constexpr uint32_t OFFSET_WIDTH = 4; std::string raw_offsets; - const size_t raw_offset_size = offset_count * OFFSET_WIDTH; + const uint32_t raw_offset_size = offset_count * OFFSET_WIDTH; raw_offsets.resize(raw_offset_size); fs.read(&raw_offsets[0], raw_offset_size); OffsetsArray ret; for (uint32_t i = 0; i < offset_count; ++i) { - const std::string value_as_string = raw_offsets.substr(OFFSET_WIDTH * i, OFFSET_WIDTH * (i + 1)); + const std::string value_as_string = raw_offsets.substr(OFFSET_WIDTH * static_cast(i), + OFFSET_WIDTH * (static_cast(i) + 1)); const auto value = reinterpret_bytes(value_as_string.c_str()); // Ignore offsets that point to offset 0. See vcpkg github #223 #288 #292 diff --git a/toolsrc/src/vcpkg/base/files.cpp b/toolsrc/src/vcpkg/base/files.cpp index 4e61666b7..1723b467e 100644 --- a/toolsrc/src/vcpkg/base/files.cpp +++ b/toolsrc/src/vcpkg/base/files.cpp @@ -22,9 +22,9 @@ namespace vcpkg::Files auto length = file_stream.tellg(); file_stream.seekg(0, file_stream.beg); - if (length > SIZE_MAX) + if (length == std::streampos(-1)) { - return std::make_error_code(std::errc::file_too_large); + return std::make_error_code(std::errc::io_error); } std::string output; @@ -185,12 +185,15 @@ namespace vcpkg::Files return; } - auto count = fwrite(data.data(), sizeof(data[0]), data.size(), f); - fclose(f); - - if (count != data.size()) + if (f != nullptr) { - ec = std::make_error_code(std::errc::no_space_on_device); + auto count = fwrite(data.data(), sizeof(data[0]), data.size(), f); + fclose(f); + + if (count != data.size()) + { + ec = std::make_error_code(std::errc::no_space_on_device); + } } } }; diff --git a/toolsrc/src/vcpkg/base/strings.cpp b/toolsrc/src/vcpkg/base/strings.cpp index 541b1f2d9..fbc33ca42 100644 --- a/toolsrc/src/vcpkg/base/strings.cpp +++ b/toolsrc/src/vcpkg/base/strings.cpp @@ -39,7 +39,7 @@ namespace vcpkg::Strings::details _vsnprintf_s_l(&output.at(0), output.size() + 1, output.size(), fmtstr, c_locale(), args); #else va_start(args, fmtstr); - auto res = vsnprintf(&output.at(0), output.size() + 1, fmtstr, args); + vsnprintf(&output.at(0), output.size() + 1, fmtstr, args); #endif va_end(args); @@ -52,23 +52,25 @@ namespace vcpkg::Strings std::wstring to_utf16(const CStringView& s) { #if defined(_WIN32) - const int size = MultiByteToWideChar(CP_UTF8, 0, s.c_str(), -1, nullptr, 0); std::wstring output; + const size_t size = MultiByteToWideChar(CP_UTF8, 0, s.c_str(), -1, nullptr, 0); + if (size == 0) return output; output.resize(size - 1); - MultiByteToWideChar(CP_UTF8, 0, s.c_str(), -1, output.data(), size - 1); + MultiByteToWideChar(CP_UTF8, 0, s.c_str(), -1, output.data(), static_cast(size) - 1); return output; #else Checks::unreachable(VCPKG_LINE_INFO); #endif } - std::string to_utf8(const CWStringView& w) + std::string to_utf8(const wchar_t* w) { #if defined(_WIN32) - const int size = WideCharToMultiByte(CP_UTF8, 0, w.c_str(), -1, nullptr, 0, nullptr, nullptr); std::string output; + const size_t size = WideCharToMultiByte(CP_UTF8, 0, w, -1, nullptr, 0, nullptr, nullptr); + if (size == 0) return output; output.resize(size - 1); - WideCharToMultiByte(CP_UTF8, 0, w.c_str(), -1, output.data(), size - 1, nullptr, nullptr); + WideCharToMultiByte(CP_UTF8, 0, w, -1, output.data(), static_cast(size) - 1, nullptr, nullptr); return output; #else Checks::unreachable(VCPKG_LINE_INFO); diff --git a/toolsrc/src/vcpkg/base/system.cpp b/toolsrc/src/vcpkg/base/system.cpp index 3f2f47d72..d4210fe6d 100644 --- a/toolsrc/src/vcpkg/base/system.cpp +++ b/toolsrc/src/vcpkg/base/system.cpp @@ -214,7 +214,7 @@ namespace vcpkg::System for (auto&& env_wstring : env_wstrings) { - const Optional value = System::get_environment_variable(Strings::to_utf8(env_wstring)); + const Optional value = System::get_environment_variable(Strings::to_utf8(env_wstring.c_str())); const auto v = value.get(); if (!v || v->empty()) continue; @@ -298,17 +298,6 @@ namespace vcpkg::System return exit_code; } - // On Win7, output from powershell calls contain a byte order mark, so we strip it out if it is present - static void remove_byte_order_marks(std::wstring* s) - { - const wchar_t* a = s->c_str(); - // This is the UTF-8 byte-order mark - while (s->size() >= 3 && a[0] == 0xEF && a[1] == 0xBB && a[2] == 0xBF) - { - s->erase(0, 3); - } - } - ExitCodeAndOutput cmd_execute_and_capture_output(const CStringView cmd_line) { // Flush stdout before launching external process @@ -325,7 +314,7 @@ namespace vcpkg::System const auto pipe = _wpopen(Strings::to_utf16(actual_cmd_line).c_str(), L"r"); if (pipe == nullptr) { - return {1, Strings::to_utf8(output)}; + return {1, Strings::to_utf8(output.c_str())}; } while (fgetws(buf, 1024, pipe)) { @@ -333,15 +322,22 @@ namespace vcpkg::System } if (!feof(pipe)) { - return {1, Strings::to_utf8(output)}; + return {1, Strings::to_utf8(output.c_str())}; } const auto ec = _pclose(pipe); - remove_byte_order_marks(&output); + + // On Win7, output from powershell calls contain a utf-8 byte order mark in the utf-16 stream, so we strip it + // out if it is present. 0xEF,0xBB,0xBF is the UTF-8 byte-order mark + const wchar_t* a = output.c_str(); + while (output.size() >= 3 && a[0] == 0xEF && a[1] == 0xBB && a[2] == 0xBF) + { + output.erase(0, 3); + } Debug::println("_pclose() returned %d after %8d us", ec, static_cast(timer.microseconds())); - return {ec, Strings::to_utf8(output)}; + return {ec, Strings::to_utf8(output.c_str())}; #else const auto actual_cmd_line = Strings::format(R"###(%s 2>&1)###", cmd_line); @@ -481,7 +477,7 @@ namespace vcpkg::System const auto sz2 = GetEnvironmentVariableW(w_varname.c_str(), ret.data(), static_cast(ret.size())); Checks::check_exit(VCPKG_LINE_INFO, sz2 + 1 == sz); ret.pop_back(); - return Strings::to_utf8(ret); + return Strings::to_utf8(ret.c_str()); #else auto v = getenv(varname.c_str()); if (!v) return nullopt; @@ -522,7 +518,7 @@ namespace vcpkg::System return nullopt; ret.pop_back(); // remove extra trailing null byte - return Strings::to_utf8(ret); + return Strings::to_utf8(ret.c_str()); } #else Optional get_registry_string(void* base_hkey, const CStringView sub_key, const CStringView valuename) diff --git a/toolsrc/src/vcpkg/binaryparagraph.cpp b/toolsrc/src/vcpkg/binaryparagraph.cpp index 73ca23df1..126c7df97 100644 --- a/toolsrc/src/vcpkg/binaryparagraph.cpp +++ b/toolsrc/src/vcpkg/binaryparagraph.cpp @@ -24,7 +24,7 @@ namespace vcpkg static const std::string DEFAULTFEATURES = "Default-Features"; } - BinaryParagraph::BinaryParagraph() = default; + BinaryParagraph::BinaryParagraph() noexcept = default; BinaryParagraph::BinaryParagraph(std::unordered_map fields) { diff --git a/toolsrc/src/vcpkg/build.cpp b/toolsrc/src/vcpkg/build.cpp index 76381f862..7a9d35667 100644 --- a/toolsrc/src/vcpkg/build.cpp +++ b/toolsrc/src/vcpkg/build.cpp @@ -330,8 +330,7 @@ namespace vcpkg::Build const PreBuildInfo& pre_build_info, const PackageSpec& spec, const std::string& abi_tag, - const BuildPackageConfig& config, - const StatusParagraphs& status_db) + const BuildPackageConfig& config) { auto& fs = paths.get_filesystem(); const Triplet& triplet = spec.triplet(); @@ -419,10 +418,9 @@ namespace vcpkg::Build const PreBuildInfo& pre_build_info, const PackageSpec& spec, const std::string& abi_tag, - const BuildPackageConfig& config, - const StatusParagraphs& status_db) + const BuildPackageConfig& config) { - auto result = do_build_package(paths, pre_build_info, spec, abi_tag, config, status_db); + auto result = do_build_package(paths, pre_build_info, spec, abi_tag, config); if (config.build_package_options.clean_buildtrees == CleanBuildtrees::YES) { @@ -564,7 +562,7 @@ namespace vcpkg::Build auto dep_pspecs = Util::fmap(required_fspecs, [](FeatureSpec const& fspec) { return fspec.spec(); }); Util::sort_unique_erase(dep_pspecs); - // Find all features that aren't installed. This destroys required_fspecs. + // Find all features that aren't installed. This mutates required_fspecs. Util::unstable_keep_if(required_fspecs, [&](FeatureSpec const& fspec) { return !status_db.is_installed(fspec) && fspec.name() != name; }); @@ -624,7 +622,7 @@ namespace vcpkg::Build System::println("Could not locate cached archive: %s", archive_path.u8string()); ExtendedBuildResult result = do_build_package_and_clean_buildtrees( - paths, pre_build_info, spec, maybe_abi_tag_and_file.value_or(AbiTagAndFile{}).tag, config, status_db); + paths, pre_build_info, spec, maybe_abi_tag_and_file.value_or(AbiTagAndFile{}).tag, config); std::error_code ec; fs.create_directories(paths.package_dir(spec) / "share" / spec.name(), ec); @@ -657,7 +655,7 @@ namespace vcpkg::Build } return do_build_package_and_clean_buildtrees( - paths, pre_build_info, spec, maybe_abi_tag_and_file.value_or(AbiTagAndFile{}).tag, config, status_db); + paths, pre_build_info, spec, maybe_abi_tag_and_file.value_or(AbiTagAndFile{}).tag, config); } const std::string& to_string(const BuildResult build_result) diff --git a/toolsrc/src/vcpkg/commands.ci.cpp b/toolsrc/src/vcpkg/commands.ci.cpp index 45eb1c83e..04b42ea00 100644 --- a/toolsrc/src/vcpkg/commands.ci.cpp +++ b/toolsrc/src/vcpkg/commands.ci.cpp @@ -77,11 +77,8 @@ namespace vcpkg::Commands::CI { auto triplet = p->spec.triplet(); - const Build::BuildPackageConfig build_config{p->source_control_file.value_or_exit(VCPKG_LINE_INFO), - triplet, - paths.port_dir(p->spec), - install_plan_options, - p->feature_list}; + const Build::BuildPackageConfig build_config{ + *scf, triplet, paths.port_dir(p->spec), install_plan_options, p->feature_list}; auto dependency_abis = Util::fmap(p->computed_dependencies, [&](const PackageSpec& spec) -> Build::AbiEntry { diff --git a/toolsrc/src/vcpkg/commands.edit.cpp b/toolsrc/src/vcpkg/commands.edit.cpp index f0ddd43c5..82569dd07 100644 --- a/toolsrc/src/vcpkg/commands.edit.cpp +++ b/toolsrc/src/vcpkg/commands.edit.cpp @@ -9,14 +9,15 @@ namespace vcpkg::Commands::Edit { static std::vector find_from_registry() { + std::vector output; + +#if defined(_WIN32) static const std::array REGKEYS = { R"(SOFTWARE\WOW6432Node\Microsoft\Windows\CurrentVersion\Uninstall\{C26E74D1-022E-4238-8B9D-1E7564A36CC9}_is1)", R"(SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{1287CAD5-7C8D-410D-88B9-0D1EE4A83FF2}_is1)", R"(SOFTWARE\WOW6432Node\Microsoft\Windows\CurrentVersion\Uninstall\{F8A2A208-72B3-4D61-95FC-8A65D340689B}_is1)", }; - std::vector output; -#if defined(_WIN32) for (auto&& keypath : REGKEYS) { const Optional code_installpath = diff --git a/toolsrc/src/vcpkg/commands.fetch.cpp b/toolsrc/src/vcpkg/commands.fetch.cpp index 9652d0b9e..7a1e6a810 100644 --- a/toolsrc/src/vcpkg/commands.fetch.cpp +++ b/toolsrc/src/vcpkg/commands.fetch.cpp @@ -269,8 +269,6 @@ namespace vcpkg::Commands::Fetch #endif static fs::path fetch_tool(const VcpkgPaths& paths, const std::string& tool_name, const ToolData& tool_data) { - const auto& fs = paths.get_filesystem(); - const fs::path& scripts_folder = paths.scripts; const std::array& version = tool_data.version; const std::string version_as_string = Strings::format("%d.%d.%d", version[0], version[1], version[2]); @@ -280,7 +278,7 @@ namespace vcpkg::Commands::Fetch tool_name, version_as_string); #if defined(_WIN32) - const fs::path script = scripts_folder / "fetchtool.ps1"; + const fs::path script = paths.scripts / "fetchtool.ps1"; const std::string title = Strings::format( "Fetching %s version %s (No sufficient installed version was found)", tool_name, version_as_string); const System::PowershellParameter tool_param("tool", tool_name); @@ -300,6 +298,7 @@ namespace vcpkg::Commands::Fetch actual_downloaded_path.u8string()); return actual_downloaded_path; #else + const auto& fs = paths.get_filesystem(); if (!fs.exists(tool_data.download_path)) { System::println("Downloading %s...", tool_name); diff --git a/toolsrc/src/vcpkg/commands.hash.cpp b/toolsrc/src/vcpkg/commands.hash.cpp index c23a63e1e..1f709f87b 100644 --- a/toolsrc/src/vcpkg/commands.hash.cpp +++ b/toolsrc/src/vcpkg/commands.hash.cpp @@ -127,12 +127,15 @@ namespace vcpkg::Commands::Hash FILE* file = nullptr; const auto ec = _wfopen_s(&file, path.c_str(), L"rb"); Checks::check_exit(VCPKG_LINE_INFO, ec == 0, "Failed to open file: %s", path.u8string()); - unsigned char buffer[4096]; - while (const auto actual_size = fread(buffer, 1, sizeof(buffer), file)) + if (file != nullptr) { - hash_data(hash_handle, buffer, actual_size); + unsigned char buffer[4096]; + while (const auto actual_size = fread(buffer, 1, sizeof(buffer), file)) + { + hash_data(hash_handle, buffer, actual_size); + } + fclose(file); } - fclose(file); return finalize_hash_handle(hash_handle, length_in_bytes); } diff --git a/toolsrc/src/vcpkg/commands.integrate.cpp b/toolsrc/src/vcpkg/commands.integrate.cpp index e70d9b2e3..7061a3984 100644 --- a/toolsrc/src/vcpkg/commands.integrate.cpp +++ b/toolsrc/src/vcpkg/commands.integrate.cpp @@ -8,6 +8,7 @@ namespace vcpkg::Commands::Integrate { +#if defined(_WIN32) static std::string create_appdata_targets_shortcut(const std::string& target_path) noexcept { return Strings::format(R"###( @@ -18,7 +19,9 @@ namespace vcpkg::Commands::Integrate target_path, target_path); } +#endif +#if defined(_WIN32) static std::string create_system_targets_shortcut() noexcept { return R"###( @@ -31,7 +34,9 @@ namespace vcpkg::Commands::Integrate )###"; } +#endif +#if defined(_WIN32) static std::string create_nuget_targets_file_contents(const fs::path& msbuild_vcpkg_targets_file) noexcept { const std::string as_string = msbuild_vcpkg_targets_file.string(); @@ -47,7 +52,9 @@ namespace vcpkg::Commands::Integrate as_string, as_string); } +#endif +#if defined(_WIN32) static std::string create_nuget_props_file_contents() noexcept { return R"###( @@ -58,7 +65,9 @@ namespace vcpkg::Commands::Integrate )###"; } +#endif +#if defined(_WIN32) static std::string get_nuget_id(const fs::path& vcpkg_root_dir) { std::string dir_id = vcpkg_root_dir.generic_string(); @@ -71,7 +80,9 @@ namespace vcpkg::Commands::Integrate const std::string nuget_id = "vcpkg." + dir_id; return nuget_id; } +#endif +#if defined(_WIN32) static std::string create_nuspec_file_contents(const fs::path& vcpkg_root_dir, const std::string& nuget_id, const std::string& nupkg_version) @@ -98,14 +109,15 @@ namespace vcpkg::Commands::Integrate content = Strings::replace_all(std::move(content), "@VERSION@", nupkg_version); return content; } +#endif +#if defined(_WIN32) enum class ElevationPromptChoice { YES, NO }; -#if defined(_WIN32) static ElevationPromptChoice elevated_cmd_execute(const std::string& param) { SHELLEXECUTEINFOW sh_ex_info{}; @@ -272,6 +284,7 @@ CMake projects should use: "-DCMAKE_TOOLCHAIN_FILE=%s")", } #endif +#if defined(WIN32) static void integrate_project(const VcpkgPaths& paths) { auto& fs = paths.get_filesystem(); @@ -319,13 +332,19 @@ With a project open, go to Tools->NuGet Package Manager->Package Manager Console Checks::exit_success(VCPKG_LINE_INFO); } +#endif +#if defined(_WIN32) const char* const INTEGRATE_COMMAND_HELPSTRING = " vcpkg integrate install Make installed packages available user-wide. Requires admin privileges on " "first use\n" " vcpkg integrate remove Remove user-wide integration\n" " vcpkg integrate project Generate a referencing nuget package for individual VS project use\n" " vcpkg integrate powershell Enable PowerShell Tab-Completion\n"; +#else + const char* const INTEGRATE_COMMAND_HELPSTRING = + "No user-wide integration methods are available on this platform\n"; +#endif namespace Subcommand { diff --git a/toolsrc/src/vcpkg/dependencies.cpp b/toolsrc/src/vcpkg/dependencies.cpp index a8bc901a0..8fb35b0da 100644 --- a/toolsrc/src/vcpkg/dependencies.cpp +++ b/toolsrc/src/vcpkg/dependencies.cpp @@ -22,7 +22,7 @@ namespace vcpkg::Dependencies struct ClusterSource { - const SourceControlFile* scf; + const SourceControlFile* scf = nullptr; std::unordered_map> build_edges; }; @@ -145,7 +145,10 @@ namespace vcpkg::Dependencies } } - InstallPlanAction::InstallPlanAction() : plan_type(InstallPlanType::UNKNOWN), request_type(RequestType::UNKNOWN) {} + InstallPlanAction::InstallPlanAction() noexcept + : plan_type(InstallPlanType::UNKNOWN), request_type(RequestType::UNKNOWN), build_options{} + { + } InstallPlanAction::InstallPlanAction(const PackageSpec& spec, const SourceControlFile& scf, @@ -156,6 +159,7 @@ namespace vcpkg::Dependencies , source_control_file(scf) , plan_type(InstallPlanType::BUILD_AND_INSTALL) , request_type(request_type) + , build_options{} , feature_list(features) , computed_dependencies(std::move(dependencies)) { @@ -168,6 +172,7 @@ namespace vcpkg::Dependencies , installed_package(std::move(ipv)) , plan_type(InstallPlanType::ALREADY_INSTALLED) , request_type(request_type) + , build_options{} , feature_list(features) , computed_dependencies(installed_package.get()->dependencies()) { @@ -189,7 +194,10 @@ namespace vcpkg::Dependencies return left->spec.name() < right->spec.name(); } - RemovePlanAction::RemovePlanAction() : plan_type(RemovePlanType::UNKNOWN), request_type(RequestType::UNKNOWN) {} + RemovePlanAction::RemovePlanAction() noexcept + : plan_type(RemovePlanType::UNKNOWN), request_type(RequestType::UNKNOWN) + { + } RemovePlanAction::RemovePlanAction(const PackageSpec& spec, const RemovePlanType& plan_type, @@ -218,7 +226,10 @@ namespace vcpkg::Dependencies return left->spec.name() < right->spec.name(); } - ExportPlanAction::ExportPlanAction() : plan_type(ExportPlanType::UNKNOWN), request_type(RequestType::UNKNOWN) {} + ExportPlanAction::ExportPlanAction() noexcept + : plan_type(ExportPlanType::UNKNOWN), request_type(RequestType::UNKNOWN) + { + } ExportPlanAction::ExportPlanAction(const PackageSpec& spec, InstalledPackageView&& installed_package, @@ -506,14 +517,14 @@ namespace vcpkg::Dependencies { if (auto p_source = cluster.source.get()) { - for (auto&& feature : p_source->scf->feature_paragraphs) + for (auto&& fpgh : p_source->scf->feature_paragraphs) { - auto res = mark_plus(feature->name, cluster, graph, graph_plan, prevent_default_features); + auto res = mark_plus(fpgh->name, cluster, graph, graph_plan, prevent_default_features); Checks::check_exit(VCPKG_LINE_INFO, res == MarkPlusResult::SUCCESS, "Error: Unable to locate feature %s in %s", - feature->name, + fpgh->name, cluster.spec); } diff --git a/toolsrc/src/vcpkg/export.cpp b/toolsrc/src/vcpkg/export.cpp index 85a4dfad1..152252018 100644 --- a/toolsrc/src/vcpkg/export.cpp +++ b/toolsrc/src/vcpkg/export.cpp @@ -247,12 +247,12 @@ namespace vcpkg::Export struct ExportArguments { - bool dry_run; - bool raw; - bool nuget; - bool ifw; - bool zip; - bool seven_zip; + bool dry_run = false; + bool raw = false; + bool nuget = false; + bool ifw = false; + bool zip = false; + bool seven_zip = false; Optional maybe_output; diff --git a/toolsrc/src/vcpkg/metrics.cpp b/toolsrc/src/vcpkg/metrics.cpp index 4067efc95..8890c067f 100644 --- a/toolsrc/src/vcpkg/metrics.cpp +++ b/toolsrc/src/vcpkg/metrics.cpp @@ -245,12 +245,6 @@ namespace vcpkg::Metrics bool get_compiled_metrics_enabled() { return DISABLE_METRICS == 0; } - static fs::path get_vcpkg_root() - { - return Files::get_real_filesystem().find_file_recursively_up( - fs::stdfs::absolute(System::get_exe_path_of_current_process()), ".vcpkg-root"); - } - std::string get_MAC_user() { #if defined(_WIN32) diff --git a/toolsrc/src/vcpkg/postbuildlint.cpp b/toolsrc/src/vcpkg/postbuildlint.cpp index a31518ad7..6fe11951f 100644 --- a/toolsrc/src/vcpkg/postbuildlint.cpp +++ b/toolsrc/src/vcpkg/postbuildlint.cpp @@ -361,6 +361,7 @@ namespace vcpkg::PostBuildLint std::string actual_arch; }; +#if defined(_WIN32) static std::string get_actual_architecture(const MachineType& machine_type) { switch (machine_type) @@ -374,7 +375,9 @@ namespace vcpkg::PostBuildLint default: return "Machine Type Code = " + std::to_string(static_cast(machine_type)); } } +#endif +#if defined(_WIN32) static void print_invalid_architecture_files(const std::string& expected_architecture, std::vector binaries_with_invalid_architecture) { @@ -391,7 +394,6 @@ namespace vcpkg::PostBuildLint static LintStatus check_dll_architecture(const std::string& expected_architecture, const std::vector& files) { -#if defined(_WIN32) std::vector binaries_with_invalid_architecture; for (const fs::path& file : files) @@ -414,10 +416,10 @@ namespace vcpkg::PostBuildLint print_invalid_architecture_files(expected_architecture, binaries_with_invalid_architecture); return LintStatus::ERROR_DETECTED; } -#endif return LintStatus::SUCCESS; } +#endif static LintStatus check_lib_architecture(const std::string& expected_architecture, const std::vector& files) @@ -802,7 +804,9 @@ namespace vcpkg::PostBuildLint check_outdated_crt_linkage_of_dlls(dlls, toolset.dumpbin, build_info, pre_build_info); } +#if defined(_WIN32) error_count += check_dll_architecture(pre_build_info.target_architecture, dlls); +#endif break; } case Build::LinkageType::STATIC: diff --git a/toolsrc/src/vcpkg/statusparagraph.cpp b/toolsrc/src/vcpkg/statusparagraph.cpp index 236689494..462d8d8ed 100644 --- a/toolsrc/src/vcpkg/statusparagraph.cpp +++ b/toolsrc/src/vcpkg/statusparagraph.cpp @@ -12,7 +12,7 @@ namespace vcpkg static const std::string STATUS = "Status"; } - StatusParagraph::StatusParagraph() : want(Want::ERROR_STATE), state(InstallState::ERROR_STATE) {} + StatusParagraph::StatusParagraph() noexcept : want(Want::ERROR_STATE), state(InstallState::ERROR_STATE) {} void serialize(const StatusParagraph& pgh, std::string& out_str) { @@ -25,6 +25,7 @@ namespace vcpkg } StatusParagraph::StatusParagraph(std::unordered_map&& fields) + : want(Want::ERROR_STATE), state(InstallState::ERROR_STATE) { auto status_it = fields.find(BinaryParagraphRequiredField::STATUS); Checks::check_exit(VCPKG_LINE_INFO, status_it != fields.end(), "Expected 'Status' field in status paragraph"); diff --git a/toolsrc/src/vcpkg/versiont.cpp b/toolsrc/src/vcpkg/versiont.cpp index 0d4a39255..d20e6b577 100644 --- a/toolsrc/src/vcpkg/versiont.cpp +++ b/toolsrc/src/vcpkg/versiont.cpp @@ -5,7 +5,7 @@ namespace vcpkg { - VersionT::VersionT() : value("0.0.0") {} + VersionT::VersionT() noexcept : value("0.0.0") {} VersionT::VersionT(std::string&& value) : value(std::move(value)) {} VersionT::VersionT(const std::string& value) : value(value) {} const std::string& VersionT::to_string() const { return value; } @@ -13,7 +13,7 @@ namespace vcpkg bool operator!=(const VersionT& left, const VersionT& right) { return left.to_string() != right.to_string(); } std::string to_printf_arg(const VersionT& version) { return version.to_string(); } - VersionDiff::VersionDiff() : left(), right() {} + VersionDiff::VersionDiff() noexcept : left(), right() {} VersionDiff::VersionDiff(const VersionT& left, const VersionT& right) : left(left), right(right) {} std::string VersionDiff::to_string() const -- cgit v1.2.3 From 5886a48dc7c5be48be3baf73ce2e8e136252aede Mon Sep 17 00:00:00 2001 From: "Billy O'Neal (VC LIBS)" Date: Thu, 12 Apr 2018 15:31:11 -0700 Subject: Remove call to nonexistent member of std::fpos. See http://eel.is/c++draft/fpos -- to get to an offset you can convert to int; there is no seekpos member. --- toolsrc/src/vcpkg/base/cofffilereader.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/toolsrc/src/vcpkg/base/cofffilereader.cpp b/toolsrc/src/vcpkg/base/cofffilereader.cpp index fca0b627e..2c09e2c19 100644 --- a/toolsrc/src/vcpkg/base/cofffilereader.cpp +++ b/toolsrc/src/vcpkg/base/cofffilereader.cpp @@ -247,7 +247,7 @@ namespace vcpkg::CoffFileReader { void set_to_offset(const fpos_t position) { this->m_absolute_position = position; } - void set_to_current_pos(fstream& fs) { this->m_absolute_position = fs.tellg().seekpos(); } + void set_to_current_pos(fstream& fs) { this->m_absolute_position = fs.tellg(); } void seek_to_marker(fstream& fs) const { fs.seekg(this->m_absolute_position, ios_base::beg); } -- cgit v1.2.3 From dc207a2c891fe6deb2710ccde0abf48078f64fcd Mon Sep 17 00:00:00 2001 From: Alexander Karatarakis Date: Thu, 12 Apr 2018 18:15:38 -0700 Subject: Restore powershell extracting because shell may not be available (see #3252) --- scripts/VcpkgPowershellUtils.ps1 | 40 ++++++++++++++++++++++++++++++---------- scripts/fetchTool.ps1 | 4 ++-- 2 files changed, 32 insertions(+), 12 deletions(-) diff --git a/scripts/VcpkgPowershellUtils.ps1 b/scripts/VcpkgPowershellUtils.ps1 index 3ab301c55..fdd89e7b9 100644 --- a/scripts/VcpkgPowershellUtils.ps1 +++ b/scripts/VcpkgPowershellUtils.ps1 @@ -1,3 +1,8 @@ +function vcpkgHasModule([Parameter(Mandatory=$true)][string]$moduleName) +{ + return [bool](Get-Module -ListAvailable -Name $moduleName) +} + function vcpkgHasProperty([Parameter(Mandatory=$true)][AllowNull()]$object, [Parameter(Mandatory=$true)]$propertyName) { if ($object -eq $null) @@ -183,9 +188,9 @@ function vcpkgDownloadFileWithAria2( [Parameter(Mandatory=$true)][string]$ari Move-Item -Path $downloadPartPath -Destination $downloadPath } -function vcpkgExtractFile( [Parameter(Mandatory=$true)][string]$sevenZipExe, - [Parameter(Mandatory=$true)][string]$archivePath, - [Parameter(Mandatory=$true)][string]$destinationDir) +function vcpkgExtractFileWith7z([Parameter(Mandatory=$true)][string]$sevenZipExe, + [Parameter(Mandatory=$true)][string]$archivePath, + [Parameter(Mandatory=$true)][string]$destinationDir) { vcpkgRemoveItem $destinationDir $destinationPartial = "$destinationDir.partial" @@ -200,20 +205,35 @@ function vcpkgExtractFile( [Parameter(Mandatory=$true)][string]$sevenZipExe, Rename-Item -Path "$destinationPartial" -NewName $destinationDir } -function vcpkgExtractZipFileWithShell( [Parameter(Mandatory=$true)][string]$archivePath, - [Parameter(Mandatory=$true)][string]$destinationDir) +function vcpkgExtractZipFile( [Parameter(Mandatory=$true)][string]$archivePath, + [Parameter(Mandatory=$true)][string]$destinationDir) { vcpkgRemoveItem $destinationDir $destinationPartial = "$destinationDir.partial" vcpkgRemoveItem $destinationPartial vcpkgCreateDirectoryIfNotExists $destinationPartial - $shell = new-object -com shell.application - $zip = $shell.NameSpace($(Get-Item $archivePath).fullname) - foreach($item in $zip.items()) + + if (vcpkgHasCommand -commandName 'Microsoft.PowerShell.Archive\Expand-Archive') + { + Write-Verbose("Extracting with Microsoft.PowerShell.Archive\Expand-Archive") + Microsoft.PowerShell.Archive\Expand-Archive -path $archivePath -destinationpath $destinationPartial + } + elseif (vcpkgHasCommand -commandName 'Pscx\Expand-Archive') { - # Piping to Out-Null is used to block until finished - $shell.Namespace($destinationPartial).copyhere($item) | Out-Null + Write-Verbose("Extracting with Pscx\Expand-Archive") + Pscx\Expand-Archive -path $archivePath -OutputPath $destinationPartial + } + else + { + Write-Verbose("Extracting via shell") + $shell = new-object -com shell.application + $zip = $shell.NameSpace($(Get-Item $archivePath).fullname) + foreach($item in $zip.items()) + { + # Piping to Out-Null is used to block until finished + $shell.Namespace($destinationPartial).copyhere($item) | Out-Null + } } Rename-Item -Path "$destinationPartial" -NewName $destinationDir diff --git a/scripts/fetchTool.ps1 b/scripts/fetchTool.ps1 index be18656c7..dd3f0f9f4 100644 --- a/scripts/fetchTool.ps1 +++ b/scripts/fetchTool.ps1 @@ -73,7 +73,7 @@ function fetchToolInternal([Parameter(Mandatory=$true)][string]$tool) # Extract aria2 with shell because we need it to download 7zip if ($tool -eq "7zip920" -or $tool -eq "aria2") { - vcpkgExtractZipFileWithShell -ArchivePath $downloadPath -DestinationDir $toolPath + vcpkgExtractZipFile -ArchivePath $downloadPath -DestinationDir $toolPath } elseif ($tool -eq "7zip") { @@ -88,7 +88,7 @@ function fetchToolInternal([Parameter(Mandatory=$true)][string]$tool) else { $sevenZipExe = fetchToolInternal "7zip" - vcpkgExtractFile -sevenZipExe "$sevenZipExe" -ArchivePath $downloadPath -DestinationDir $toolPath + vcpkgExtractFileWith7z -sevenZipExe "$sevenZipExe" -ArchivePath $downloadPath -DestinationDir $toolPath } Write-Host "Extracting $tool... done." } -- cgit v1.2.3 From 4c028691c7f03335f6fb8a38ce80794c213819cb Mon Sep 17 00:00:00 2001 From: Wimok Nupphiboon Date: Fri, 13 Apr 2018 10:10:55 +0700 Subject: [uwebsockets] Update to 0.14.7 --- ports/uwebsockets/CONTROL | 2 +- ports/uwebsockets/portfile.cmake | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/ports/uwebsockets/CONTROL b/ports/uwebsockets/CONTROL index 1757aae53..7e636ba9c 100644 --- a/ports/uwebsockets/CONTROL +++ b/ports/uwebsockets/CONTROL @@ -1,4 +1,4 @@ Source: uwebsockets -Version: 0.14.6-1 +Version: 0.14.7-1 Build-Depends: libuv, openssl, zlib Description: Highly scalable cross-platform WebSocket & HTTP library for C++11 and Node.js diff --git a/ports/uwebsockets/portfile.cmake b/ports/uwebsockets/portfile.cmake index f7cbb6843..a24f49631 100644 --- a/ports/uwebsockets/portfile.cmake +++ b/ports/uwebsockets/portfile.cmake @@ -3,8 +3,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO uWebSockets/uWebSockets - REF v0.14.6 - SHA512 cac3be6fcd49796590f19bde89e4195cecf9097248f7550ef6942573b59cd132f136ec026203e8524270440a7ae18c49472eb2166028b5c68d4a4cc457af4748 + REF v0.14.7 + SHA512 1049497f7b63770dcfdc44bef562ce43b87fa553e8ec778c8ee2506f406a23f5fdcf67904f0458e38fc0843899b43b92ccef5f36cae40228cfe47b6f38fa0e15 HEAD_REF master ) -- cgit v1.2.3 From 600f7fdf30434f7c1e1e15acf3df3271d6b91387 Mon Sep 17 00:00:00 2001 From: Robert Schumacher Date: Tue, 10 Apr 2018 05:46:46 -0700 Subject: [date] Fix Linux&OSX, add unofficial targets --- ports/date/CMakeLists.txt | 22 +++++++++++++++++++--- ports/date/CONTROL | 4 ++++ ports/date/portfile.cmake | 19 +++++++++++++++---- 3 files changed, 38 insertions(+), 7 deletions(-) diff --git a/ports/date/CMakeLists.txt b/ports/date/CMakeLists.txt index 4c38e4a87..292c1758a 100644 --- a/ports/date/CMakeLists.txt +++ b/ports/date/CMakeLists.txt @@ -1,28 +1,44 @@ cmake_minimum_required(VERSION 3.5.1) project(tz CXX) +set(CMAKE_CXX_STANDARD 11) if(MSVC) add_compile_options(/W3 /wd4005 /wd4996 /wd4018 -D_CRT_SECURE_NO_WARNINGS) endif() -add_definitions(-DNOMINMAX) +option(HAS_REMOTE_API "" 0) +add_definitions(-DNOMINMAX -DHAS_REMOTE_API=${HAS_REMOTE_API}) -include_directories("./include") +add_library(date INTERFACE) +target_include_directories(date INTERFACE $) add_library(tz src/tz.cpp) +target_include_directories(tz PUBLIC $ $) + +if(HAS_REMOTE_API) + find_package(CURL REQUIRED) + target_link_libraries(tz PUBLIC $) + target_include_directories(tz PUBLIC $) +endif() if(BUILD_SHARED_LIBS) target_compile_definitions(tz PRIVATE -DDATE_BUILD_DLL) endif() install( - TARGETS tz + TARGETS tz date + EXPORT tz RUNTIME DESTINATION bin LIBRARY DESTINATION lib ARCHIVE DESTINATION lib ) +file(WRITE "${CMAKE_CURRENT_BINARY_DIR}/unofficial-date-config.cmake" "include(\${CMAKE_CURRENT_LIST_DIR}/unofficial-date-targets.cmake)\n") + +install(EXPORT tz FILE unofficial-date-targets.cmake NAMESPACE unofficial::date:: DESTINATION share/unofficial-date) +install(FILES ${CMAKE_CURRENT_BINARY_DIR}/unofficial-date-config.cmake DESTINATION share/unofficial-date) + if(NOT DISABLE_INSTALL_HEADERS) install(FILES include/date/date.h include/date/tz.h include/date/julian.h include/date/iso_week.h include/date/islamic.h DESTINATION include/date) endif() diff --git a/ports/date/CONTROL b/ports/date/CONTROL index 8c1797072..bf3095ac6 100644 --- a/ports/date/CONTROL +++ b/ports/date/CONTROL @@ -1,3 +1,7 @@ Source: date Version: 2.4 Description: A date and time library based on the C++11/14/17 header + +Feature: remote-api +Description: support automatic download of tz data +Build-Depends: curl diff --git a/ports/date/portfile.cmake b/ports/date/portfile.cmake index c60a7bcb0..3b36a19fc 100644 --- a/ports/date/portfile.cmake +++ b/ports/date/portfile.cmake @@ -1,9 +1,11 @@ include(vcpkg_common_functions) -message(WARNING - "You will need to also install http://unicode.org/repos/cldr/trunk/common/supplemental/windowsZones.xml into your install location" - "See https://howardhinnant.github.io/date/tz.html" -) +if(NOT VCPKG_CMAKE_SYSTEM_NAME OR VCPKG_CMAKE_SYSTEM_NAME STREQUAL "WindowsStore") + message(WARNING + "You will need to also install http://unicode.org/repos/cldr/trunk/common/supplemental/windowsZones.xml into your install location.\n" + "See https://howardhinnant.github.io/date/tz.html" + ) +endif() vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH @@ -20,18 +22,27 @@ vcpkg_apply_patches( file(COPY ${CMAKE_CURRENT_LIST_DIR}/CMakeLists.txt DESTINATION ${SOURCE_PATH}) +set(HAS_REMOTE_API 0) +if("remote-api" IN_LIST FEATURES) + set(HAS_REMOTE_API 1) +endif() + vcpkg_configure_cmake( SOURCE_PATH ${SOURCE_PATH} PREFER_NINJA + OPTIONS -DHAS_REMOTE_API=${HAS_REMOTE_API} OPTIONS_DEBUG -DDISABLE_INSTALL_HEADERS=ON ) vcpkg_install_cmake() +vcpkg_fixup_cmake_targets(CONFIG_PATH share/unofficial-date TARGET_PATH share/unofficial-date) + vcpkg_copy_pdbs() set(HEADER "${CURRENT_PACKAGES_DIR}/include/date/tz.h") file(READ "${HEADER}" _contents) +string(REPLACE "#define TZ_H" "#define TZ_H\n#undef HAS_REMOTE_API\n#define HAS_REMOTE_API ${HAS_REMOTE_API}" _contents "${_contents}") if(VCPKG_LIBRARY_LINKAGE STREQUAL dynamic) string(REPLACE "ifdef DATE_BUILD_DLL" "if 1" _contents "${_contents}") endif() -- cgit v1.2.3 From 0764aafbd07fffa81e68aa1fe091b01ea429e29c Mon Sep 17 00:00:00 2001 From: Robert Schumacher Date: Thu, 12 Apr 2018 04:03:17 -0700 Subject: [abseil][aws-sdk-cpp][breakpad][chakracore][cimg][date][exiv2][libzip][rs-core-lib] Upgrades --- ports/abseil/CONTROL | 2 +- ports/abseil/portfile.cmake | 4 ++-- ports/aws-sdk-cpp/CONTROL | 2 +- ports/aws-sdk-cpp/portfile.cmake | 4 ++-- ports/breakpad/CONTROL | 2 +- ports/breakpad/portfile.cmake | 4 ++-- ports/chakracore/CONTROL | 2 +- ports/chakracore/portfile.cmake | 4 ++-- ports/cimg/CONTROL | 2 +- ports/cimg/portfile.cmake | 4 ++-- ports/date/CONTROL | 2 +- ports/date/portfile.cmake | 4 ++-- ports/exiv2/CONTROL | 2 +- ports/exiv2/portfile.cmake | 4 ++-- ports/libzip/CONTROL | 2 +- ports/libzip/portfile.cmake | 4 ++-- ports/rs-core-lib/CONTROL | 2 +- ports/rs-core-lib/portfile.cmake | 4 ++-- 18 files changed, 27 insertions(+), 27 deletions(-) diff --git a/ports/abseil/CONTROL b/ports/abseil/CONTROL index 42edc7e12..b1a1def7f 100644 --- a/ports/abseil/CONTROL +++ b/ports/abseil/CONTROL @@ -1,5 +1,5 @@ Source: abseil -Version: 2018-04-09 +Version: 2018-04-12 Description: an open-source collection designed to augment the C++ standard library. Abseil is an open-source collection of C++ library code designed to augment the C++ standard library. The Abseil library code is collected from Google's own C++ code base, has been extensively tested and used in production, and is the same code we depend on in our daily coding lives. In some cases, Abseil provides pieces missing from the C++ standard; in others, Abseil provides alternatives to the standard for special needs we've found through usage in the Google code base. We denote those cases clearly within the library code we provide you. diff --git a/ports/abseil/portfile.cmake b/ports/abseil/portfile.cmake index f2a08328b..71d26de69 100644 --- a/ports/abseil/portfile.cmake +++ b/ports/abseil/portfile.cmake @@ -7,8 +7,8 @@ endif() vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO abseil/abseil-cpp - REF 3f622d6c5990a7ae80eb8e52450c309a28bbec77 - SHA512 27c11bbe4e321fcd42f1947fab2a7deb108443bf46260e7f7920cc28442a4dbfbf315d579e866b2d82e92cfe1fd43e82cbd51e907cbf74a25d724cfd8acda055 + REF a7e522daf1ec9cda69b356472f662142dd0c1215 + SHA512 250b602fc3f5a4c3b6522ef0f49bdf63db0070289cb415cb31bb672b95b35dc9494f881adeb1b090927b1cd942c3674b6142747f601c8f7233bd12d4078583f3 HEAD_REF master ) diff --git a/ports/aws-sdk-cpp/CONTROL b/ports/aws-sdk-cpp/CONTROL index c9338b0cc..fbc86b58f 100644 --- a/ports/aws-sdk-cpp/CONTROL +++ b/ports/aws-sdk-cpp/CONTROL @@ -1,5 +1,5 @@ Source: aws-sdk-cpp -Version: 1.4.32 +Version: 1.4.33 Description: AWS SDK for C++ Build-Depends: openssl (!uwp&!windows), curl (!uwp&!windows) Default-Features: dynamodb, ec2, kms, rds, s3, sns, sqs diff --git a/ports/aws-sdk-cpp/portfile.cmake b/ports/aws-sdk-cpp/portfile.cmake index 6b3b1f241..815926ddd 100644 --- a/ports/aws-sdk-cpp/portfile.cmake +++ b/ports/aws-sdk-cpp/portfile.cmake @@ -3,8 +3,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO aws/aws-sdk-cpp - REF 1.4.32 - SHA512 f37aaf1d439acd1563fe50624e2e7856ba5d267a540a8cd1fde80d0d7bd9e2cdd261f9f6e3e843548cc17b8ea7158419a9e0ed27092acf5c22b5c9e38d327c64 + REF 1.4.33 + SHA512 ebe8e402107b7b70a9b397c94ad981ff02d97e10e6fd8337f19b732185ecbb79e132eecd513300ce733a765fd780dd765c1d2b34479e5e1d891fa771722bad81 HEAD_REF master ) diff --git a/ports/breakpad/CONTROL b/ports/breakpad/CONTROL index 80789a41d..9324ac2fa 100644 --- a/ports/breakpad/CONTROL +++ b/ports/breakpad/CONTROL @@ -1,4 +1,4 @@ Source: breakpad -Version: 2018-04-05 +Version: 2018-04-12 Build-Depends: libdisasm Description: a set of client and server components which implement a crash-reporting system. diff --git a/ports/breakpad/portfile.cmake b/ports/breakpad/portfile.cmake index 5030bb936..6b21e6ee0 100644 --- a/ports/breakpad/portfile.cmake +++ b/ports/breakpad/portfile.cmake @@ -3,8 +3,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO google/breakpad - REF adcc90ddb8c9ebc13a4312116ad92d8628b691c3 - SHA512 f6dbdad54dcd778a2ece7de28b60b95c2c276d386f672ab5990c6de41f17fa526f6d1092e38163647ed2feed07c91826ec3f4c21a219ca5f5fac203a7a21eeec + REF c83fcf647033cd31348b4109c2a9d8df72706361 + SHA512 680b92b1bff6c92a26a3510242f0fb083e63e0234e5a49b2df74b9c743b5a8900d800e617a4910b40748ea699c0d981c42009366a8734e5eb3af081deeb4515b HEAD_REF master ) diff --git a/ports/chakracore/CONTROL b/ports/chakracore/CONTROL index edd7eb1a1..6c7db9e54 100644 --- a/ports/chakracore/CONTROL +++ b/ports/chakracore/CONTROL @@ -1,3 +1,3 @@ Source: chakracore -Version: 1.8.2 +Version: 1.8.3 Description: Core part of the Chakra Javascript engine diff --git a/ports/chakracore/portfile.cmake b/ports/chakracore/portfile.cmake index daea20444..0f3874119 100644 --- a/ports/chakracore/portfile.cmake +++ b/ports/chakracore/portfile.cmake @@ -15,8 +15,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO Microsoft/ChakraCore - REF v1.8.2 - SHA512 6d4408311f0c3ff2c9895f59f34f12fb84797d130a562db7c2af27eb26edd3d46bf935dab4cd40c2ffc0dc853ad9bdf432a721cfded7836639858965b7eb67e9 + REF v1.8.3 + SHA512 4a5d6372cab51bb70911519fb9639d0cb6c456a966e2c90992f924ba36dcf741e32dbf18aea4419dc855f286da7e3edbfcc796bc90347858192c976298315785 HEAD_REF master ) diff --git a/ports/cimg/CONTROL b/ports/cimg/CONTROL index a4b1438e7..694db4b5d 100644 --- a/ports/cimg/CONTROL +++ b/ports/cimg/CONTROL @@ -1,3 +1,3 @@ Source: cimg -Version: 221 +Version: 2.2.2 Description: The CImg Library is a small, open-source, and modern C++ toolkit for image processing diff --git a/ports/cimg/portfile.cmake b/ports/cimg/portfile.cmake index 5a130433f..b7607bff2 100644 --- a/ports/cimg/portfile.cmake +++ b/ports/cimg/portfile.cmake @@ -2,9 +2,9 @@ include(vcpkg_common_functions) vcpkg_from_github(OUT_SOURCE_PATH SOURCE_PATH REPO "dtschump/CImg" - REF v.221 + REF v.2.2.2 HEAD_REF master - SHA512 d1aea69f4662e85c5b56c723cadcc69282f2f1c4e3a968efc312a826a15000c11d61756d3ed87e37ae349cebbd62b67503996c45ed1fe038a91a9f0c8dbec43c) + SHA512 b3090e594accc31222e24e787381af315b5168dad4ea9669cc543ad6807c175dd60b9eddceda1c74a7bb716912650219763077b3eaee6fae79cfec1099c65836) file(COPY ${CMAKE_CURRENT_LIST_DIR}/CMakeLists.txt DESTINATION ${SOURCE_PATH}) diff --git a/ports/date/CONTROL b/ports/date/CONTROL index bf3095ac6..f9a86d671 100644 --- a/ports/date/CONTROL +++ b/ports/date/CONTROL @@ -1,5 +1,5 @@ Source: date -Version: 2.4 +Version: 2.4.1 Description: A date and time library based on the C++11/14/17 header Feature: remote-api diff --git a/ports/date/portfile.cmake b/ports/date/portfile.cmake index 3b36a19fc..749c0c5f0 100644 --- a/ports/date/portfile.cmake +++ b/ports/date/portfile.cmake @@ -10,8 +10,8 @@ endif() vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO HowardHinnant/date - REF v2.4 - SHA512 01bcc021ebf9ca0ac88c797896a291ff81834e7fae37323ad20881d3a172963c04d3c7bea0dd37cd945b756ab7f70f0a02edb18a085bf9abf8d8f10056f73f3c + REF v2.4.1 + SHA512 ce7d1c4518558d3690b3a33cd3da1066b43a5f641282c331c60be73e9b010227d4998bca5f34694215ae52f6514a2f5eccd6b0a5ee3dcf8cef2f2d1644c8beee HEAD_REF master ) diff --git a/ports/exiv2/CONTROL b/ports/exiv2/CONTROL index af05d4ddf..2e7eaef26 100644 --- a/ports/exiv2/CONTROL +++ b/ports/exiv2/CONTROL @@ -1,4 +1,4 @@ Source: exiv2 -Version: 2018-04-09 +Version: 2018-04-12 Build-Depends: zlib, expat, libiconv Description: Image metadata library and tools http://www.exiv2.org diff --git a/ports/exiv2/portfile.cmake b/ports/exiv2/portfile.cmake index 109105085..3e645a91e 100644 --- a/ports/exiv2/portfile.cmake +++ b/ports/exiv2/portfile.cmake @@ -3,8 +3,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO Exiv2/exiv2 - REF fbd8e2669e223d43c34777c61029bb19b4c6e833 - SHA512 9c87e3123458e9dbf24df80118a09a6cc2c10855b19e59b3164634166b10f2daef54ac35a207bf8865eeb08cbc1d2d5b2ab33e4f2539bf8ffa82a7012c0eecc4 + REF c80b1b9d51689692bc865f1a1d16bf7fd2a532c4 + SHA512 72c3801678424cd738423ea28e03c44f4d2bfd6a7e3c2cea53806b3705eebc5e86a293d3aa2bea51f6f426b9e280a3f7b8883bb4e4c627cc413159d9565033a0 HEAD_REF master ) diff --git a/ports/libzip/CONTROL b/ports/libzip/CONTROL index 450687f4f..e82f0fee2 100644 --- a/ports/libzip/CONTROL +++ b/ports/libzip/CONTROL @@ -1,4 +1,4 @@ Source: libzip -Version: rel-1-5-0 +Version: rel-1-5-1 Build-Depends: zlib Description: A library for reading, creating, and modifying zip archives. diff --git a/ports/libzip/portfile.cmake b/ports/libzip/portfile.cmake index dee085f6c..b509c5eb0 100644 --- a/ports/libzip/portfile.cmake +++ b/ports/libzip/portfile.cmake @@ -2,8 +2,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO nih-at/libzip - REF rel-1-5-0 - SHA512 d8267dd86231d82e0d14fc3e47c7deed3f54bccbc734dff12a7e2522422653f64ebdb76b35b9eb4326227ae89e06bd4cad263558c8312220ff5979b3b2299460 + REF rel-1-5-1 + SHA512 778f438f6354f030656baa5497b3154ad8fb764011d2a6925136f32e06dc0dcd1ed93fe05dbf7be619004a68cdabe5e34a83b988c1501ed67e9cfa4fa540350f ) # Patch cmake and configuration to allow static builds diff --git a/ports/rs-core-lib/CONTROL b/ports/rs-core-lib/CONTROL index de6b3c5a2..d7e583054 100644 --- a/ports/rs-core-lib/CONTROL +++ b/ports/rs-core-lib/CONTROL @@ -1,4 +1,4 @@ Source: rs-core-lib -Version: 2018-04-09 +Version: 2018-04-12 Description: Minimal common utilities by Ross Smith diff --git a/ports/rs-core-lib/portfile.cmake b/ports/rs-core-lib/portfile.cmake index 18d127849..0994afa4d 100644 --- a/ports/rs-core-lib/portfile.cmake +++ b/ports/rs-core-lib/portfile.cmake @@ -3,8 +3,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO CaptainCrowbar/rs-core-lib - REF ca8065dea45355836d9ca834823775c23a1f3571 - SHA512 4bead4c2317f8b1f33844eacd052724680da6e00d52acb9238a458598a0745a86e91ac8f41a9b2ec4be1365a18e727e1e2659910f293d3bfe3f3b49d34d20b30 + REF 529b74de173a77ba057ebc54d1f91629e7b643bd + SHA512 d836ee1c022522618f37fdeba941986977317fa68a909d8255e6abfd39564f72f47f8c78c2fa9e4ccc52da75987b56a02f8f2d5aad2890ef7b93ea843c85940c HEAD_REF master ) -- cgit v1.2.3 From 4550e44e7a451ffec9160f74ea9856db40bfa47e Mon Sep 17 00:00:00 2001 From: eao197 Date: Fri, 13 Apr 2018 20:40:20 +0300 Subject: sobjectizer updated to v.5.5.22 --- ports/sobjectizer/CONTROL | 2 +- ports/sobjectizer/portfile.cmake | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/ports/sobjectizer/CONTROL b/ports/sobjectizer/CONTROL index 7843e5622..839c2ed42 100644 --- a/ports/sobjectizer/CONTROL +++ b/ports/sobjectizer/CONTROL @@ -1,3 +1,3 @@ Source: sobjectizer -Version: 5.5.21 +Version: 5.5.22 Description: SObjectizer is a C++ in-process message dispatching framework with implementation of Actor Model, Publish-Subscribe Model and CSP-like channels. diff --git a/ports/sobjectizer/portfile.cmake b/ports/sobjectizer/portfile.cmake index b03b55b24..ed6b3f844 100644 --- a/ports/sobjectizer/portfile.cmake +++ b/ports/sobjectizer/portfile.cmake @@ -1,12 +1,12 @@ include(vcpkg_common_functions) -set(VERSION 5.5.21) +set(VERSION 5.5.22) set(SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src/so-${VERSION}/dev) vcpkg_download_distfile(ARCHIVE URLS "https://sourceforge.net/projects/sobjectizer/files/sobjectizer/SObjectizer%20Core%20v.5.5/so-${VERSION}.zip" FILENAME "so-${VERSION}.zip" - SHA512 eaee9e27b751307a540df34ca368f5253e191b3079c1222737d4ccc1800006d35ad8411cec0aec862a7ee00d7cc3c1e4494434d4aef7adb89655e99b5d4caf41 + SHA512 0f7c109a890fc4271a4f45ff009811d5d7479cec86ce8f6a312979bfd07a55e46069511d7868e1c7bf29e5ff6495d22d71fd3ba2b1253b2fb9299657d7b0384d ) vcpkg_extract_source_archive(${ARCHIVE}) -- cgit v1.2.3 From 4e48a1c235d776b5099a61252ff726edb5b6a6b7 Mon Sep 17 00:00:00 2001 From: Wimok Nopphiboon <37108473+W1m0k@users.noreply.github.com> Date: Sat, 14 Apr 2018 07:48:45 +0700 Subject: [uwebsockets] Update to 0.14.7 (#3253) * [uwebsockets] Update to 0.14.6 * [uwebsockets] Update to 0.14.7 --- ports/uwebsockets/CONTROL | 2 +- ports/uwebsockets/portfile.cmake | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/ports/uwebsockets/CONTROL b/ports/uwebsockets/CONTROL index 1757aae53..7e636ba9c 100644 --- a/ports/uwebsockets/CONTROL +++ b/ports/uwebsockets/CONTROL @@ -1,4 +1,4 @@ Source: uwebsockets -Version: 0.14.6-1 +Version: 0.14.7-1 Build-Depends: libuv, openssl, zlib Description: Highly scalable cross-platform WebSocket & HTTP library for C++11 and Node.js diff --git a/ports/uwebsockets/portfile.cmake b/ports/uwebsockets/portfile.cmake index f7cbb6843..a24f49631 100644 --- a/ports/uwebsockets/portfile.cmake +++ b/ports/uwebsockets/portfile.cmake @@ -3,8 +3,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO uWebSockets/uWebSockets - REF v0.14.6 - SHA512 cac3be6fcd49796590f19bde89e4195cecf9097248f7550ef6942573b59cd132f136ec026203e8524270440a7ae18c49472eb2166028b5c68d4a4cc457af4748 + REF v0.14.7 + SHA512 1049497f7b63770dcfdc44bef562ce43b87fa553e8ec778c8ee2506f406a23f5fdcf67904f0458e38fc0843899b43b92ccef5f36cae40228cfe47b6f38fa0e15 HEAD_REF master ) -- cgit v1.2.3 From a9b1541fd6d308a17848ab4eb5396598ffa1a240 Mon Sep 17 00:00:00 2001 From: Alexander Karatarakis Date: Mon, 16 Apr 2018 16:14:50 -0700 Subject: [vcpkg, xml] Parse with string-search instead of regex Resolves issue with inconsistent regex behavior between platforms. For example [/s/S]*? does not properly match on Clang. String-searching is also generally more performant. --- toolsrc/src/vcpkg/commands.fetch.cpp | 83 +++++++++++++++++------------------- 1 file changed, 40 insertions(+), 43 deletions(-) diff --git a/toolsrc/src/vcpkg/commands.fetch.cpp b/toolsrc/src/vcpkg/commands.fetch.cpp index 7a1e6a810..1e31e6bc4 100644 --- a/toolsrc/src/vcpkg/commands.fetch.cpp +++ b/toolsrc/src/vcpkg/commands.fetch.cpp @@ -41,6 +41,22 @@ namespace vcpkg::Commands::Fetch return result; } + static Optional extract_string_between_delimiters(const std::string& input, + const std::string& left_delim, + const std::string& right_delim, + const size_t& starting_offset = 0) + { + const size_t from = input.find(left_delim, starting_offset); + if (from == std::string::npos) return nullopt; + + const size_t substring_start = from + left_delim.length(); + + const size_t to = input.find(right_delim, substring_start); + if (from == std::string::npos) return nullopt; + + return input.substr(substring_start, to - substring_start); + } + static ToolData parse_tool_data_from_xml(const VcpkgPaths& paths, const std::string& tool) { #if defined(_WIN32) @@ -57,33 +73,21 @@ namespace vcpkg::Commands::Fetch static const std::string XML_VERSION = "2"; static const fs::path XML_PATH = paths.scripts / "vcpkgTools.xml"; - const auto maybe_get_string_inside_tags = [](const std::string& input, - const std::regex& regex) -> Optional { - std::smatch match; - const bool has_match = std::regex_search(input.cbegin(), input.cend(), match, regex); - if (!has_match) return nullopt; - return match[1]; - }; - const auto get_string_inside_tags = - [](const std::string& input, const std::regex& regex, const std::string& tag_name) -> std::string { - std::smatch match; - const bool has_match = std::regex_search(input.cbegin(), input.cend(), match, regex); - Checks::check_exit( - VCPKG_LINE_INFO, has_match, "Could not find tag <%s> in %s", tag_name, XML_PATH.generic_string()); + [](const std::string& input, const std::string& left_delim, const std::string& right_delim) -> std::string { + Optional result = extract_string_between_delimiters(input, left_delim, right_delim); + Checks::check_exit(VCPKG_LINE_INFO, + result.has_value(), + "Could not find tag <%s>.*<%s> in %s", + left_delim, + right_delim, + XML_PATH.generic_string()); - return match[1]; + return *result.get(); }; static const std::regex XML_VERSION_REGEX{R"###()###"}; static const std::string XML = paths.get_filesystem().read_contents(XML_PATH).value_or_exit(VCPKG_LINE_INFO); - static const std::regex VERSION_REGEX{R"###(([\s\S]*?))###"}; - static const std::regex EXE_RELATIVE_PATH_REGEX{ - Strings::format(R"###(([\s\S]*?))###")}; - static const std::regex ARCHIVE_NAME_REGEX{Strings::format(R"###(([\s\S]*?))###")}; - static const std::regex URL_REGEX{Strings::format(R"###(([\s\S]*?))###")}; - static const std::regex SHA512_REGEX{Strings::format(R"###(([\s\S]*?))###")}; - std::smatch match_xml_version; const bool has_xml_version = std::regex_search(XML.cbegin(), XML.cend(), match_xml_version, XML_VERSION_REGEX); Checks::check_exit(VCPKG_LINE_INFO, @@ -98,43 +102,36 @@ namespace vcpkg::Commands::Fetch XML_VERSION, match_xml_version[1]); - const std::regex tool_regex{ - Strings::format(R"###(([\s\S]*?)<\/tool>)###", tool, OS_STRING)}; - - std::smatch match_tool; - const bool has_match_tool = std::regex_search(XML.cbegin(), XML.cend(), match_tool, tool_regex); + const std::regex tool_regex{Strings::format(R"###()###", tool, OS_STRING)}; + std::smatch match_tool_entry; + const bool has_tool_entry = std::regex_search(XML.cbegin(), XML.cend(), match_tool_entry, tool_regex); Checks::check_exit(VCPKG_LINE_INFO, - has_match_tool, + has_tool_entry, "Could not find entry for tool [%s] in %s", tool, XML_PATH.generic_string()); - const std::string tool_data_as_string = get_string_inside_tags(XML, tool_regex, tool); - - const std::string required_version_as_string = - get_string_inside_tags(tool_data_as_string, VERSION_REGEX, "version"); - - const std::string url = get_string_inside_tags(tool_data_as_string, URL_REGEX, "url"); + const std::string tool_data = get_string_inside_tags(XML, match_tool_entry[0], R"()"); + const std::string version_as_string = get_string_inside_tags(tool_data, "", R"()"); const std::string exe_relative_path = - get_string_inside_tags(tool_data_as_string, EXE_RELATIVE_PATH_REGEX, "exeRelativePath"); - - auto archive_name = maybe_get_string_inside_tags(tool_data_as_string, ARCHIVE_NAME_REGEX); + get_string_inside_tags(tool_data, "", R"()"); + const std::string url = get_string_inside_tags(tool_data, "", R"()"); + const std::string sha512 = get_string_inside_tags(tool_data, "", R"()"); + auto archive_name = extract_string_between_delimiters(tool_data, "", R"()"); - const Optional> required_version = parse_version_string(required_version_as_string); + const Optional> version = parse_version_string(version_as_string); Checks::check_exit(VCPKG_LINE_INFO, - required_version.has_value(), + version.has_value(), "Could not parse version for tool %s. Version string was: %s", tool, - required_version_as_string); + version_as_string); - const std::string tool_dir_name = Strings::format("%s-%s-%s", tool, required_version_as_string, OS_STRING); + const std::string tool_dir_name = Strings::format("%s-%s-%s", tool, version_as_string, OS_STRING); const fs::path tool_dir_path = paths.downloads / "tools" / tool_dir_name; const fs::path exe_path = tool_dir_path / exe_relative_path; - const std::string sha512 = get_string_inside_tags(tool_data_as_string, SHA512_REGEX, "sha512"); - - return ToolData{*required_version.get(), + return ToolData{*version.get(), exe_path, url, paths.downloads / archive_name.value_or(exe_relative_path), -- cgit v1.2.3 From b8c5337875080b95ed0d05510f2ff226abf235b8 Mon Sep 17 00:00:00 2001 From: Florian Date: Tue, 17 Apr 2018 18:58:45 +0200 Subject: update google benchmark to 1.4.0 (#3237) --- ports/benchmark/CONTROL | 2 +- ports/benchmark/portfile.cmake | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/ports/benchmark/CONTROL b/ports/benchmark/CONTROL index 5b56de372..9853a1509 100644 --- a/ports/benchmark/CONTROL +++ b/ports/benchmark/CONTROL @@ -1,3 +1,3 @@ Source: benchmark -Version: 1.3.0-1 +Version: 1.4.0 Description: A library to support the benchmarking of functions, similar to unit-tests. diff --git a/ports/benchmark/portfile.cmake b/ports/benchmark/portfile.cmake index e76bce6ff..d724bf5ee 100644 --- a/ports/benchmark/portfile.cmake +++ b/ports/benchmark/portfile.cmake @@ -16,8 +16,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO google/benchmark - REF v1.3.0 - SHA512 272775e4dbd0ecc65a2a3a64f24e79682b630929dea3af47349329ac8b796341f1197458a67c9aac0e514857ebe7cbc191d18f6fd2c0aea3242562e69d8a6849 + REF v1.4.0 + SHA512 4bb5119fe6c0558e5a8b39486169ffcbf24e877ec7f28636dfab1692936b77334f76d28bda2cdada18e5070579da7a5bf0617bfbb6a09848f0b071df8e694d76 HEAD_REF master ) -- cgit v1.2.3 From 0700fbd9c0f7f37ba8e2a32f012b027efefdc3af Mon Sep 17 00:00:00 2001 From: past-due <30942300+past-due@users.noreply.github.com> Date: Tue, 17 Apr 2018 13:00:20 -0400 Subject: [physfs] Update to version 3.0.1 (#3238) --- ports/physfs/export-symbols-in-shared-build-only.patch | 13 ------------- ports/physfs/portfile.cmake | 11 ++--------- 2 files changed, 2 insertions(+), 22 deletions(-) delete mode 100644 ports/physfs/export-symbols-in-shared-build-only.patch diff --git a/ports/physfs/export-symbols-in-shared-build-only.patch b/ports/physfs/export-symbols-in-shared-build-only.patch deleted file mode 100644 index b3303dcd8..000000000 --- a/ports/physfs/export-symbols-in-shared-build-only.patch +++ /dev/null @@ -1,13 +0,0 @@ -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"))) diff --git a/ports/physfs/portfile.cmake b/ports/physfs/portfile.cmake index c6233eed3..08b49e69f 100644 --- a/ports/physfs/portfile.cmake +++ b/ports/physfs/portfile.cmake @@ -1,20 +1,13 @@ -if(VCPKG_CMAKE_SYSTEM_NAME STREQUAL "WindowsStore") - message(FATAL_ERROR "${PORT} does not currently support UWP") -endif() - include(vcpkg_common_functions) -set(PHYSFS_VERSION 2.0.3) +set(PHYSFS_VERSION 3.0.1) set(SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src/physfs-${PHYSFS_VERSION}) vcpkg_download_distfile(ARCHIVE URLS "https://icculus.org/physfs/downloads/physfs-${PHYSFS_VERSION}.tar.bz2" FILENAME "physfs-${PHYSFS_VERSION}.tar.bz2" - SHA512 47eff0c81b8dc3bb526766b0a8ad2437d2951867880116d6e6e8f2ec1490e263541fb741867fed6517cc3fa8a9c5651b36e3e02a499f19cfdc5c7261c9707e80 + SHA512 ddf3b075ccb506da5e9a1ce96001be402752b9b777c2e816a85d48aff3626ff0886ea43eb07bd300fe3a9f59b9a002f54d822c51d483a4ee94b38378534c1879 ) 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) -- cgit v1.2.3 From 9d52f41a8f6a2b6905b439217add223c403e8623 Mon Sep 17 00:00:00 2001 From: Claudio Fantacci Date: Tue, 17 Apr 2018 19:01:22 +0200 Subject: [realsense2] Add tools compilation (#3002) * Add features to realsense2 port (cherry picked from commit 87d1039774f9652275607e8bce120a7e493719d7) * Increment port version --- ports/realsense2/CONTROL | 8 ++++++-- ports/realsense2/portfile.cmake | 34 +++++++++++++++++++++++++--------- 2 files changed, 31 insertions(+), 11 deletions(-) diff --git a/ports/realsense2/CONTROL b/ports/realsense2/CONTROL index f1674b7e9..2465fd1a4 100644 --- a/ports/realsense2/CONTROL +++ b/ports/realsense2/CONTROL @@ -1,6 +1,10 @@ Source: realsense2 -Version: 2.10.1 +Version: 2.10.1-1 Description: Intel® RealSense™ SDK 2.0 is a cross-platform library for Intel® RealSense™ depth cameras (D400 series and the SR300). Feature: avx2 -Description: rgb image decode using avx2 \ No newline at end of file +Description: rgb image decode using avx2 + +Feature: tools +Build-Depends: opengl +Description: Build Intel® RealSense™ examples and tools diff --git a/ports/realsense2/portfile.cmake b/ports/realsense2/portfile.cmake index cec2c9695..8e6b57392 100644 --- a/ports/realsense2/portfile.cmake +++ b/ports/realsense2/portfile.cmake @@ -15,6 +15,9 @@ vcpkg_apply_patches( ${CMAKE_CURRENT_LIST_DIR}/fix_rgb_using_avx2.patch # https://github.com/IntelRealSense/librealsense/pull/1245 ) +string(COMPARE EQUAL "${VCPKG_LIBRARY_LINKAGE}" "dynamic" BUILD_LIBRARY_LINKAGE) +string(COMPARE EQUAL "${VCPKG_CRT_LINKAGE}" "static" BUILD_CRT_LINKAGE) + # This option will be deprecated in the later versions. # Please see Pull Request #1245. https://github.com/IntelRealSense/librealsense/pull/1245 set(RGB_USING_AVX2 OFF) @@ -22,15 +25,22 @@ if("avx2" IN_LIST FEATURES) set(RGB_USING_AVX2 ON) endif() -string(COMPARE EQUAL "${VCPKG_LIBRARY_LINKAGE}" "dynamic" BUILD_LIBRARY_LINKAGE) -string(COMPARE EQUAL "${VCPKG_CRT_LINKAGE}" "static" BUILD_CRT_LINKAGE) +set(BUILD_EXAMPLES OFF) +set(BUILD_GRAPHICAL_EXAMPLES OFF) +if("tools" IN_LIST FEATURES) + set(BUILD_EXAMPLES ON) + set(BUILD_GRAPHICAL_EXAMPLES ON) + set(BUILD_TOOLS ON) +endif() vcpkg_configure_cmake( SOURCE_PATH ${SOURCE_PATH} OPTIONS -DENFORCE_METADATA=ON - -DBUILD_EXAMPLES=OFF - -DBUILD_GRAPHICAL_EXAMPLES=OFF + -DBUILD_EXAMPLES=${BUILD_EXAMPLES} + -DBUILD_GRAPHICAL_EXAMPLES=${BUILD_GRAPHICAL_EXAMPLES} + -DBUILD_CV_EXAMPLES=OFF + -DBUILD_PCL_EXAMPLES=OFF -DBUILD_PYTHON_BINDINGS=OFF -DBUILD_UNIT_TESTS=OFF -DBUILD_WITH_OPENMP=OFF @@ -43,13 +53,19 @@ vcpkg_configure_cmake( ) vcpkg_install_cmake() - vcpkg_fixup_cmake_targets(CONFIG_PATH lib/cmake/realsense2) +vcpkg_copy_pdbs() file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include) -# Handle copyright -file(COPY ${SOURCE_PATH}/COPYING DESTINATION ${CURRENT_PACKAGES_DIR}/share/realsense2) -file(RENAME ${CURRENT_PACKAGES_DIR}/share/realsense2/COPYING ${CURRENT_PACKAGES_DIR}/share/realsense2/copyright) +file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/share) -vcpkg_copy_pdbs() +if(BUILD_TOOLS) + file(GLOB EXEFILES_RELEASE ${CURRENT_PACKAGES_DIR}/bin/*.exe) + file(GLOB EXEFILES_DEBUG ${CURRENT_PACKAGES_DIR}/debug/bin/*.exe) + file(COPY ${EXEFILES_RELEASE} DESTINATION ${CURRENT_PACKAGES_DIR}/tools/realsense2) + file(REMOVE ${EXEFILES_RELEASE} ${EXEFILES_DEBUG}) + vcpkg_copy_tool_dependencies(${CURRENT_PACKAGES_DIR}/tools/realsense2) +endif() +file(COPY ${SOURCE_PATH}/COPYING DESTINATION ${CURRENT_PACKAGES_DIR}/share/realsense2) +file(RENAME ${CURRENT_PACKAGES_DIR}/share/realsense2/COPYING ${CURRENT_PACKAGES_DIR}/share/realsense2/copyright) -- cgit v1.2.3 From fbf5fe822951437de2124643658131c222d9deca Mon Sep 17 00:00:00 2001 From: Patrick Grison <36514071+pgrison@users.noreply.github.com> Date: Tue, 17 Apr 2018 19:25:31 +0200 Subject: [vxl] first port - vxl commit 7a130cf of 2018/04/14 (#3265) --- ports/vxl/CONTROL | 3 +++ ports/vxl/portfile.cmake | 23 +++++++++++++++++++++++ 2 files changed, 26 insertions(+) create mode 100644 ports/vxl/CONTROL create mode 100644 ports/vxl/portfile.cmake diff --git a/ports/vxl/CONTROL b/ports/vxl/CONTROL new file mode 100644 index 000000000..33cd87cb8 --- /dev/null +++ b/ports/vxl/CONTROL @@ -0,0 +1,3 @@ +Source: vxl +Version: 20180414-7a130cf +Description: A multi-platform collection of C++ software libraries for Computer Vision and Image Understanding. diff --git a/ports/vxl/portfile.cmake b/ports/vxl/portfile.cmake new file mode 100644 index 000000000..c2ea3d929 --- /dev/null +++ b/ports/vxl/portfile.cmake @@ -0,0 +1,23 @@ +include(vcpkg_common_functions) + +vcpkg_from_github( + OUT_SOURCE_PATH SOURCE_PATH + REPO vxl/vxl + REF 7a130cf05e907a6500e3e717297082c46e77f524 + SHA512 b9f7e48e37b44469031c6de1bf2a3d0aa0ecf4d3c2f4dd0d1a84c273ca8a778b48f3caf7ec6ef0f2dea1dc534ebfdb6b2cde47a56d81aa4f0685114c0bda157c + HEAD_REF master +) + +vcpkg_configure_cmake( + SOURCE_PATH ${SOURCE_PATH} + PREFER_NINJA +) + +vcpkg_install_cmake() + +vcpkg_copy_pdbs() + +file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include) +file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/share) + +file(INSTALL ${SOURCE_PATH}/core/vxl_copyright.h DESTINATION ${CURRENT_PACKAGES_DIR}/share/${PORT} RENAME copyright) \ No newline at end of file -- cgit v1.2.3 From c3062a7b8d06ea20c2105e8b277ccc76af99a2d2 Mon Sep 17 00:00:00 2001 From: Alexander Karatarakis Date: Tue, 17 Apr 2018 13:45:01 -0700 Subject: Use ~/.vcpkg/config instead of ~/vcpkg/config --- toolsrc/src/vcpkg/userconfig.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/toolsrc/src/vcpkg/userconfig.cpp b/toolsrc/src/vcpkg/userconfig.cpp index 9db2e5d47..574a97b64 100644 --- a/toolsrc/src/vcpkg/userconfig.cpp +++ b/toolsrc/src/vcpkg/userconfig.cpp @@ -35,7 +35,7 @@ namespace vcpkg return get_localappdata() / "vcpkg" / "config"; #else auto maybe_home = System::get_environment_variable("HOME"); - return fs::path(maybe_home.value_or("/var")) / "vcpkg" / "config"; + return fs::path(maybe_home.value_or("/var")) / ".vcpkg" / "config"; #endif } -- cgit v1.2.3 From 2a80b89ea7db68a4991d02e7535aab032dd7c155 Mon Sep 17 00:00:00 2001 From: Robert Schumacher Date: Tue, 17 Apr 2018 14:46:50 -0700 Subject: [vxl] Use system dependencies where possible -- note that openjpeg2 is still not used. --- ports/vxl/CONTROL | 3 ++- ports/vxl/portfile.cmake | 20 +++++++++++++++++--- 2 files changed, 19 insertions(+), 4 deletions(-) diff --git a/ports/vxl/CONTROL b/ports/vxl/CONTROL index 33cd87cb8..52d725f45 100644 --- a/ports/vxl/CONTROL +++ b/ports/vxl/CONTROL @@ -1,3 +1,4 @@ Source: vxl -Version: 20180414-7a130cf +Version: 20180414-7a130cf-1 +Build-Depends: zlib, tiff, expat, libpng, bzip2, libjpeg-turbo, shapelib, libgeotiff Description: A multi-platform collection of C++ software libraries for Computer Vision and Image Understanding. diff --git a/ports/vxl/portfile.cmake b/ports/vxl/portfile.cmake index c2ea3d929..7e27591e5 100644 --- a/ports/vxl/portfile.cmake +++ b/ports/vxl/portfile.cmake @@ -2,19 +2,33 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH - REPO vxl/vxl - REF 7a130cf05e907a6500e3e717297082c46e77f524 - SHA512 b9f7e48e37b44469031c6de1bf2a3d0aa0ecf4d3c2f4dd0d1a84c273ca8a778b48f3caf7ec6ef0f2dea1dc534ebfdb6b2cde47a56d81aa4f0685114c0bda157c + REPO vxl/vxl + REF 7a130cf05e907a6500e3e717297082c46e77f524 + SHA512 b9f7e48e37b44469031c6de1bf2a3d0aa0ecf4d3c2f4dd0d1a84c273ca8a778b48f3caf7ec6ef0f2dea1dc534ebfdb6b2cde47a56d81aa4f0685114c0bda157c HEAD_REF master ) vcpkg_configure_cmake( SOURCE_PATH ${SOURCE_PATH} PREFER_NINJA + OPTIONS + -DVXL_USING_NATIVE_ZLIB=ON + -DVXL_USING_NATIVE_BZLIB2=ON + -DVXL_USING_NATIVE_JPEG=ON + -DVXL_USING_NATIVE_TIFF=ON + -DVXL_USING_NATIVE_EXPAT=ON + -DVXL_USING_NATIVE_PNG=ON + -DVXL_USING_NATIVE_SHAPELIB=ON + -DVXL_USING_NATIVE_GEOTIFF=ON + -DVXL_FORCE_V3P_OPENJPEG2=ON + -DVXL_FORCE_V3P_J2K=ON + -DBUILD_TESTING=OFF + -DBUILD_EXAMPLES=OFF ) vcpkg_install_cmake() +vcpkg_fixup_cmake_targets(CONFIG_PATH share/vxl/cmake) vcpkg_copy_pdbs() file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include) -- cgit v1.2.3 From 028f280d222ae8802561e876f33701c0faecce54 Mon Sep 17 00:00:00 2001 From: Robert Schumacher Date: Tue, 17 Apr 2018 15:37:46 -0700 Subject: [cppzmq] Install cmake target files --- ports/cppzmq/CONTROL | 2 +- ports/cppzmq/portfile.cmake | 13 ++++++++++--- 2 files changed, 11 insertions(+), 4 deletions(-) diff --git a/ports/cppzmq/CONTROL b/ports/cppzmq/CONTROL index 39928046d..e970bac53 100644 --- a/ports/cppzmq/CONTROL +++ b/ports/cppzmq/CONTROL @@ -1,4 +1,4 @@ Source: cppzmq -Version: 4.2.2 +Version: 4.2.2-1 Build-Depends: zeromq Description: lightweight messaging kernel, C++ bindings diff --git a/ports/cppzmq/portfile.cmake b/ports/cppzmq/portfile.cmake index 4f0701c59..282a86dfd 100644 --- a/ports/cppzmq/portfile.cmake +++ b/ports/cppzmq/portfile.cmake @@ -9,9 +9,16 @@ vcpkg_from_github( HEAD_REF master ) -# cppzmq is a single header library, so we just need to copy that file in the include directory -file(INSTALL ${SOURCE_PATH}/zmq.hpp DESTINATION ${CURRENT_PACKAGES_DIR}/include) -file(INSTALL ${SOURCE_PATH}/zmq_addon.hpp DESTINATION ${CURRENT_PACKAGES_DIR}/include) +vcpkg_configure_cmake( + SOURCE_PATH ${SOURCE_PATH} + PREFER_NINJA +) + +vcpkg_install_cmake() + +vcpkg_fixup_cmake_targets(CONFIG_PATH share/cmake/cppzmq) + +file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug) # Handle copyright file(COPY ${SOURCE_PATH}/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/cppzmq) -- cgit v1.2.3 From a4b35f14baac9ccaadca7c6daf6dea39cb9817a2 Mon Sep 17 00:00:00 2001 From: John Farrier Date: Tue, 17 Apr 2018 19:11:18 -0400 Subject: Upgrade Celero to v2.2.0 (#3259) * Upgrade Celero to v2.2.0 * [celero] Fix installed cmake targets --- ports/celero/CONTROL | 2 +- ports/celero/portfile.cmake | 11 +++++++---- scripts/cmake/vcpkg_fixup_cmake_targets.cmake | 9 ++++++++- 3 files changed, 16 insertions(+), 6 deletions(-) diff --git a/ports/celero/CONTROL b/ports/celero/CONTROL index d40c93783..6180230dd 100644 --- a/ports/celero/CONTROL +++ b/ports/celero/CONTROL @@ -1,3 +1,3 @@ Source: celero -Version: 2.1.0-1 +Version: 2.1.0-2 Description: Celero is a modern cross-platform (Windows, Linux, MacOS) Microbenchmarking library for C++. diff --git a/ports/celero/portfile.cmake b/ports/celero/portfile.cmake index c942ca5d8..0800115ec 100644 --- a/ports/celero/portfile.cmake +++ b/ports/celero/portfile.cmake @@ -5,12 +5,11 @@ if(VCPKG_LIBRARY_LINKAGE STREQUAL "dynamic") set(VCPKG_LIBRARY_LINKAGE static) endif() - vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO DigitalInBlue/Celero - REF v2.1.0 - SHA512 30563567255b09a2c810d97896839589ed99d45b6c8d075fd16d1a0068457d70195a199f5c982c84784c2e03284c1eaac565253fa72b81d9e2d4102721b80221 + REF v2.2.0 + SHA512 6fac1fa949b18caabf59f3675c6e592cfadc3efa5e674b1f8b183e728ec880a4f5616d5d41c97f8fc26ef9520284188f519b7634209d0a56fb38a6993a9e9680 HEAD_REF master ) @@ -24,6 +23,10 @@ vcpkg_configure_cmake( ) vcpkg_install_cmake() +vcpkg_fixup_cmake_targets(CONFIG_PATH share) + +file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include ${CURRENT_PACKAGES_DIR}/debug/share) + +file(RENAME ${CURRENT_PACKAGES_DIR}/share/celero/celero-target.cmake ${CURRENT_PACKAGES_DIR}/share/celero/celero-config.cmake) -file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include) file(INSTALL ${SOURCE_PATH}/license.txt DESTINATION ${CURRENT_PACKAGES_DIR}/share/celero RENAME copyright) diff --git a/scripts/cmake/vcpkg_fixup_cmake_targets.cmake b/scripts/cmake/vcpkg_fixup_cmake_targets.cmake index 475047737..47c91f83c 100644 --- a/scripts/cmake/vcpkg_fixup_cmake_targets.cmake +++ b/scripts/cmake/vcpkg_fixup_cmake_targets.cmake @@ -28,6 +28,12 @@ function(vcpkg_fixup_cmake_targets) set(RELEASE_SHARE ${CURRENT_PACKAGES_DIR}/${_vfct_TARGET_PATH}) if(_vfct_CONFIG_PATH AND NOT RELEASE_SHARE STREQUAL "${CURRENT_PACKAGES_DIR}/${_vfct_CONFIG_PATH}") + if(_vfct_CONFIG_PATH STREQUAL "share") + file(RENAME ${CURRENT_PACKAGES_DIR}/debug/share ${CURRENT_PACKAGES_DIR}/debug/share2) + file(RENAME ${CURRENT_PACKAGES_DIR}/share ${CURRENT_PACKAGES_DIR}/share2) + set(_vfct_CONFIG_PATH share2) + endif() + set(DEBUG_CONFIG ${CURRENT_PACKAGES_DIR}/debug/${_vfct_CONFIG_PATH}) set(RELEASE_CONFIG ${CURRENT_PACKAGES_DIR}/${_vfct_CONFIG_PATH}) @@ -36,6 +42,7 @@ function(vcpkg_fixup_cmake_targets) message(FATAL_ERROR "'${DEBUG_CONFIG}' does not exist.") endif() + # This roundabout handling enables CONFIG_PATH share file(MAKE_DIRECTORY ${DEBUG_SHARE}) file(GLOB FILES ${DEBUG_CONFIG}/*) file(COPY ${FILES} DESTINATION ${DEBUG_SHARE}) @@ -76,7 +83,7 @@ function(vcpkg_fixup_cmake_targets) endif() if(NOT DEFINED VCPKG_BUILD_TYPE OR VCPKG_BUILD_TYPE STREQUAL "debug") - if(NOT EXISTS ${DEBUG_SHARE}) + if(NOT EXISTS "${DEBUG_SHARE}") message(FATAL_ERROR "'${DEBUG_SHARE}' does not exist.") endif() endif() -- cgit v1.2.3 From 8fcb1073abe8611fa24b43f7c1cda0d7404e108e Mon Sep 17 00:00:00 2001 From: Alexander Karatarakis Date: Wed, 18 Apr 2018 18:52:22 -0700 Subject: [vcpkg edit] Now accepts multiple ports as arg --- toolsrc/src/vcpkg/commands.edit.cpp | 70 +++++++++++++++++++++++-------------- 1 file changed, 43 insertions(+), 27 deletions(-) diff --git a/toolsrc/src/vcpkg/commands.edit.cpp b/toolsrc/src/vcpkg/commands.edit.cpp index 82569dd07..b6324565c 100644 --- a/toolsrc/src/vcpkg/commands.edit.cpp +++ b/toolsrc/src/vcpkg/commands.edit.cpp @@ -1,5 +1,6 @@ #include "pch.h" +#include #include #include #include @@ -52,11 +53,42 @@ namespace vcpkg::Commands::Edit const CommandStructure COMMAND_STRUCTURE = { Help::create_example_string("edit zlib"), 1, - 1, + 10, {EDIT_SWITCHES, {}}, &valid_arguments, }; + static std::vector create_editor_arguments(const VcpkgPaths& paths, + const ParsedArguments& options, + const std::vector& ports) + { + if (Util::Sets::contains(options.switches, OPTION_ALL)) + { + return Util::fmap(ports, [&](const std::string& port_name) -> std::string { + const auto portpath = paths.ports / port_name; + const auto portfile = portpath / "portfile.cmake"; + const auto buildtrees_current_dir = paths.buildtrees / port_name; + return Strings::format(R"###("%s" "%s" "%s")###", + portpath.u8string(), + portfile.u8string(), + buildtrees_current_dir.u8string()); + }); + } + + if (Util::Sets::contains(options.switches, OPTION_BUILDTREES)) + { + return Util::fmap(ports, [&](const std::string& port_name) -> std::string { + return (paths.buildtrees / port_name).u8string(); + }); + } + + return Util::fmap(ports, [&](const std::string& port_name) -> std::string { + const auto portpath = paths.ports / port_name; + const auto portfile = portpath / "portfile.cmake"; + return Strings::format(R"###("%s" "%s")###", portpath.u8string(), portfile.u8string()); + }); + } + void perform_and_exit(const VcpkgCmdArguments& args, const VcpkgPaths& paths) { static const fs::path VS_CODE_INSIDERS = fs::path{"Microsoft VS Code Insiders"} / "Code - Insiders.exe"; @@ -65,10 +97,14 @@ namespace vcpkg::Commands::Edit auto& fs = paths.get_filesystem(); const ParsedArguments options = args.parse_arguments(COMMAND_STRUCTURE); - const std::string port_name = args.command_arguments.at(0); - const fs::path portpath = paths.ports / port_name; - Checks::check_exit(VCPKG_LINE_INFO, fs.is_directory(portpath), R"(Could not find port named "%s")", port_name); + const std::vector& ports = args.command_arguments; + for (auto&& port_name : ports) + { + const fs::path portpath = paths.ports / port_name; + Checks::check_exit( + VCPKG_LINE_INFO, fs.is_directory(portpath), R"(Could not find port named "%s")", port_name); + } std::vector candidate_paths; auto maybe_editor_path = System::get_environment_variable("EDITOR"); @@ -107,29 +143,9 @@ namespace vcpkg::Commands::Edit } const fs::path env_editor = *it; - if (Util::Sets::contains(options.switches, OPTION_BUILDTREES)) - { - const auto buildtrees_current_dir = paths.buildtrees / port_name; - - const auto cmd_line = - Strings::format(R"("%s" "%s" -n)", env_editor.u8string(), buildtrees_current_dir.u8string()); - Checks::exit_with_code(VCPKG_LINE_INFO, System::cmd_execute(cmd_line)); - } - - if (Util::Sets::contains(options.switches, OPTION_ALL)) - { - const auto buildtrees_current_dir = paths.buildtrees / port_name; - - const auto cmd_line = Strings::format( - R"("%s" "%s" "%s" -n)", env_editor.u8string(), portpath.u8string(), buildtrees_current_dir.u8string()); - Checks::exit_with_code(VCPKG_LINE_INFO, System::cmd_execute(cmd_line)); - } - - const auto cmd_line = Strings::format( - R"("%s" "%s" "%s" -n)", - env_editor.u8string(), - portpath.u8string(), - (portpath / "portfile.cmake").u8string()); + const std::vector arguments = create_editor_arguments(paths, options, ports); + const auto args_as_string = Strings::join(" ", arguments); + const auto cmd_line = Strings::format(R"("%s" %s -n)", env_editor.u8string(), args_as_string); Checks::exit_with_code(VCPKG_LINE_INFO, System::cmd_execute(cmd_line)); } } -- cgit v1.2.3 From 08438e581c3818932f5bc66c744b4d49b2734b62 Mon Sep 17 00:00:00 2001 From: Robert Schumacher Date: Wed, 18 Apr 2018 19:28:50 -0700 Subject: [zeromq] Fix cmake targets for static zeromq --- ports/zeromq/CONTROL | 2 +- ports/zeromq/portfile.cmake | 1 + 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/ports/zeromq/CONTROL b/ports/zeromq/CONTROL index b333f7440..de0a3635f 100644 --- a/ports/zeromq/CONTROL +++ b/ports/zeromq/CONTROL @@ -1,3 +1,3 @@ Source: zeromq -Version: 2018-04-05 +Version: 2018-04-05-1 Description: The ZeroMQ lightweight messaging kernel is a library which extends the standard socket interfaces with features traditionally provided by specialised messaging middleware products diff --git a/ports/zeromq/portfile.cmake b/ports/zeromq/portfile.cmake index 8019053f9..23bace766 100644 --- a/ports/zeromq/portfile.cmake +++ b/ports/zeromq/portfile.cmake @@ -43,6 +43,7 @@ if(VCPKG_LIBRARY_LINKAGE STREQUAL "dynamic") string(REPLACE "get_target_property(ZeroMQ_STATIC_LIBRARY libzmq-static LOCATION)" "add_library(libzmq-static INTERFACE IMPORTED)\nset_target_properties(libzmq-static PROPERTIES INTERFACE_LINK_LIBRARIES libzmq)" _contents "${_contents}") set(_contents "${_contents}\nset(ZeroMQ_STATIC_LIBRARY \${ZeroMQ_LIBRARY})\n") else() + string(REPLACE "get_target_property(ZeroMQ_INCLUDE_DIR libzmq INTERFACE_INCLUDE_DIRECTORIES)" "get_target_property(ZeroMQ_INCLUDE_DIR libzmq-static INTERFACE_INCLUDE_DIRECTORIES)" _contents "${_contents}") string(REPLACE "get_target_property(ZeroMQ_LIBRARY libzmq LOCATION)" "add_library(libzmq INTERFACE IMPORTED)\nset_target_properties(libzmq PROPERTIES INTERFACE_LINK_LIBRARIES libzmq-static)" _contents "${_contents}") set(_contents "${_contents}\nset(ZeroMQ_LIBRARY \${ZeroMQ_STATIC_LIBRARY})\n") -- cgit v1.2.3 From 3a3fa5cd8f02dde78b00c12273b338e293edcd51 Mon Sep 17 00:00:00 2001 From: Jonathan Hale Date: Thu, 19 Apr 2018 04:33:12 +0200 Subject: [magnum] Properly deploy plugins (#3191) * [magnum] Properly deploy magnum plugins Signed-off-by: Squareys * [magnum-plugins] Add tinygltfimporter feature Signed-off-by: Squareys * [magnum][magnum-plugins] Add features: trade and any* Prepares upcoming move of those sublibraries and allows building --head immediately. For current release this only adds some unused cmake flags that will be ignored. Signed-off-by: Squareys * [magnum] Add gl feature, cleanup dependencies, mark upcoming features And sort features alphabetically. Signed-off-by: Squareys * [magnum-plugins] Prepare renaming of static flag for --head installs Signed-off-by: Squareys * [magnum] Add two missing feature dependencies Signed-off-by: Squareys * [magnum] Enable magnum[any*] features by default Signed-off-by: Squareys --- ports/magnum-plugins/CONTROL | 26 ++++++-- ports/magnum-plugins/portfile.cmake | 7 +- ports/magnum/CONTROL | 102 ++++++++++++++++++++---------- ports/magnum/magnumdeploy.ps1 | 38 +++++++++++ ports/magnum/portfile.cmake | 3 + scripts/buildsystems/msbuild/applocal.ps1 | 17 ++++- 6 files changed, 148 insertions(+), 45 deletions(-) create mode 100644 ports/magnum/magnumdeploy.ps1 diff --git a/ports/magnum-plugins/CONTROL b/ports/magnum-plugins/CONTROL index 12a444e2d..98e7e606d 100644 --- a/ports/magnum-plugins/CONTROL +++ b/ports/magnum-plugins/CONTROL @@ -1,31 +1,36 @@ Source: magnum-plugins -Version: 2018.02-1 +Version: 2018.02-2 Build-Depends: magnum Description: Plugins for magnum, C++11/C++14 graphics middleware for games and data visualization http://magnum.graphics/ Default-Features: anyimageimporter, anysceneimporter, anyimageconverter, ddsimporter, miniexrimageconverter, opengeximporter, stanfordimporter, stbimageconverter, stbimageimporter Feature: anyimageimporter Description: AnyImageImporter plugin +Build-Depends: magnum[trade] Feature: anyaudioimporter Description: AnyAudioImporter plugin +Build-Depends: magnum[audio] Feature: anyimageconverter Description: AnyImageConverter plugin +Build-Depends: magnum[trade] Feature: anysceneimporter Description: AnySceneImporter plugin +Build-Depends: magnum[trade] Feature: assimpimporter Description: AssimpImporter plugin -Build-Depends: assimp, magnum-plugins[anyimageimporter] +Build-Depends: assimp, magnum-plugins[anyimageimporter], magnum[anyimageimporter], magnum[trade] Feature: ddsimporter Description: DdsImporter plugin +Build-Depends: magnum[trade] Feature: devilimageimporter Description: DevIlImageImporter plugin -Build-Depends: devil +Build-Depends: devil, magnum[trade] Feature: drflacaudioimporter Description: DrFlacAudioImporter plugin @@ -45,31 +50,35 @@ Build-Depends: harfbuzz, magnum-plugins[freetypefont] Feature: jpegimporter Description: JpegImporter plugin -Build-Depends: libjpeg-turbo +Build-Depends: libjpeg-turbo, magnum[trade] Feature: miniexrimageconverter Description: MiniExrImageConverter plugin +Build-Depends: magnum[trade] Feature: opengeximporter Description: OpenGexImporter plugin -Build-Depends: magnum-plugins[anyimageimporter] +Build-Depends: magnum-plugins[anyimageimporter], magnum[anyimageimporter], magnum[trade] Feature: pngimageconverter Description: PngImageConverter plugin -Build-Depends: libpng +Build-Depends: libpng, magnum[trade] Feature: pngimporter Description: PngImporter plugin -Build-Depends: libpng +Build-Depends: libpng, magnum[trade] Feature: stanfordimporter Description: StanfordImporter plugin +Build-Depends: magnum[trade] Feature: stbimageconverter Description: StbImageConverter plugin +Build-Depends: magnum[trade] Feature: stbimageimporter Description: StbImageImporter plugin +Build-Depends: magnum[trade] Feature: stbtruetypefont Description: StbTrueTypeFont plugin @@ -79,3 +88,6 @@ Feature: stbvorbisaudioimporter Description: StbVorbisAudioImporter plugin Build-Depends: magnum[audio] +Feature: tinygltfimporter +Description: (Upcoming) TinyGltfImporter plugin +Build-Depends: magnum-plugins[anyimageimporter], magnum[anyimageimporter], magnum-plugins[stbimageimporter], magnum[trade] diff --git a/ports/magnum-plugins/portfile.cmake b/ports/magnum-plugins/portfile.cmake index 86e5622d5..bedf9e395 100644 --- a/ports/magnum-plugins/portfile.cmake +++ b/ports/magnum-plugins/portfile.cmake @@ -14,9 +14,9 @@ vcpkg_apply_patches( ) if(VCPKG_LIBRARY_LINKAGE STREQUAL static) - set(BUILD_STATIC 1) + set(BUILD_PLUGINS_STATIC 1) else() - set(BUILD_STATIC 0) + set(BUILD_PLUGINS_STATIC 0) endif() # Handle features @@ -40,7 +40,8 @@ vcpkg_configure_cmake( PREFER_NINJA # Disable this option if project cannot be built with Ninja OPTIONS ${_COMPONENT_FLAGS} - -DBUILD_STATIC=${BUILD_STATIC} + -DBUILD_STATIC=${BUILD_PLUGINS_STATIC} + -DBUILD_PLUGINS_STATIC=${BUILD_PLUGINS_STATIC} -DMAGNUM_PLUGINS_DEBUG_DIR=${CURRENT_INSTALLED_DIR}/debug/bin/magnum-d -DMAGNUM_PLUGINS_RELEASE_DIR=${CURRENT_INSTALLED_DIR}/bin/magnum ) diff --git a/ports/magnum/CONTROL b/ports/magnum/CONTROL index dcf86f079..6f3aebadc 100644 --- a/ports/magnum/CONTROL +++ b/ports/magnum/CONTROL @@ -1,42 +1,65 @@ Source: magnum -Version: 2018.02-1 +Version: 2018.02-2 Build-Depends: corrade[pluginmanager], corrade[utility] Description: C++11/C++14 graphics middleware for games and data visualization http://magnum.graphics/ -Default-Features: debugtools, meshtools, primitives, scenegraph, shaders, shapes, text, texturetools, sdl2application, windowlesswglapplication +Default-Features: anyimageimporter, anyaudioimporter, anyimageconverter, anysceneimporter, debugtools, gl, meshtools, primitives, scenegraph, shaders, shapes, text, texturetools, trade, sdl2application, windowlesswglapplication -Feature: sdl2application -Description: Sdl2Application library -Build-Depends: sdl2 +Feature: al-info +Description: magnum-al-info utility +Build-Depends: magnum[audio] -Feature: glfwapplication -Description: GlfwApplication library -Build-Depends: glfw3 +Feature: anyimageimporter +Description: (Upcoming) AnyImageImporter plugin +Build-Depends: magnum[trade] -Feature: glutapplication -Description: GlutApplication library -Build-Depends: freeglut +Feature: anyaudioimporter +Description: (Upcoming) AnyAudioImporter plugin +Build-Depends: magnum[audio] + +Feature: anyimageconverter +Description: (Upcoming) AnyImageConverter plugin +Build-Depends: magnum[trade] + +Feature: anysceneimporter +Description: (Upcoming) AnySceneImporter plugin +Build-Depends: magnum[trade] Feature: audio Description: Audio library Build-Depends: openal-soft -Feature: magnuminfo -Description: magnum-info utility +Feature: debugtools +Description: DebugTools library + +Feature: distancefieldconverter +Description: magnum-distancefieldconverter utility +Build-Depends: magnum[texturetools], magnum[gl] Feature: fontconverter Description: magnum-fontconverter utility -Build-Depends: magnum[text] +Build-Depends: magnum[text], magnum[gl] -Feature: distancefieldconverter -Description: magnum-distancefieldconverter utility -Build-Depends: magnum[texturetools] +Feature: gl +Description: (Upcoming) GL library + +Feature: gl-info +Description: (Upcoming) gl-info utility +Build-Depends: magnum[gl] + +Feature: glfwapplication +Description: GlfwApplication library +Build-Depends: glfw3 + +Feature: glutapplication +Description: GlutApplication library +Build-Depends: freeglut, magnum[gl] Feature: imageconverter Description: magnum-imageconverter utility +Build-Depends: magnum[trade] -Feature: wavaudioimporter -Description: WavAudioImporter plugin -Build-Depends: magnum[audio] +Feature: magnuminfo +Description: magnum-info utility Feature: magnumfont Description: MagnumFont plugin @@ -46,23 +69,29 @@ Feature: magnumfontconverter Description: MagnumFontConverter plugin Build-Depends: magnum[text], magnum[tgaimageconverter] +Feature: meshtools +Description: MeshTools library +Build-Depends: magnum[trade] + Feature: objimporter Description: ObjImporter plugin +Build-Depends: magnum[trade] Feature: tgaimageconverter Description: TgaImageConverter plugin +Build-Depends: magnum[trade] -Feature: tgaimporter -Description: TgaImporter plugin - -Feature: debugtools -Description: DebugTools library - -Feature: meshtools -Description: MeshTools library +Feature: opengltester +Description: OpenGLTester library +Build-Depends: corrade[testsuite], magnum[gl] Feature: primitives Description: Primitives library +Build-Depends: magnum[trade] + +Feature: sdl2application +Description: Sdl2Application library +Build-Depends: sdl2 Feature: shapes Description: Shapes library @@ -80,16 +109,21 @@ Build-Depends: magnum[texturetools] Feature: texturetools Description: TextureTools library -Feature: al-info -Description: magnum-al-info utility +Feature: tgaimporter +Description: TgaImporter plugin +Build-Depends: magnum[trade] + +Feature: trade +Description: (Upcoming) Trade library + +Feature: wavaudioimporter +Description: WavAudioImporter plugin Build-Depends: magnum[audio] Feature: windowlesswglapplication Description: WindowlessWglApplication library +Build-Depends: magnum[gl] Feature: wglcontext Description: WglContext library - -Feature: opengltester -Description: OpenGLTester library -Build-Depends: corrade[testsuite] +Build-Depends: magnum[gl] diff --git a/ports/magnum/magnumdeploy.ps1 b/ports/magnum/magnumdeploy.ps1 new file mode 100644 index 000000000..203f2bac3 --- /dev/null +++ b/ports/magnum/magnumdeploy.ps1 @@ -0,0 +1,38 @@ +# Magnum's plugin deployment strategy is that each Magnum module has a hardcoded +# set of plugin directories. Each of these directories is deployed in +# full if that Module is referenced. +# +# Note: this function signature and behavior is depended upon by applocal.ps1 +function deployPluginsIfMagnum([string]$targetBinaryDir, [string]$MagnumPluginsDir, [string]$targetBinaryName) { + Write-Verbose "Deploying magnum plugins" + + $baseDir = Split-Path $MagnumPluginsDir -parent + $pluginsBase = Split-Path $MagnumPluginsDir -Leaf + $binDir = "$baseDir\bin" + + function deployPlugins([string]$pluginSubdirName) { + if (Test-Path "$MagnumPluginsDir\$pluginSubdirName") { + Write-Verbose " Deploying plugins directory '$pluginSubdirName'" + New-Item "$targetBinaryDir\$pluginsBase\$pluginSubdirName" -ItemType Directory -ErrorAction SilentlyContinue | Out-Null + Get-ChildItem -Path "$MagnumPluginsDir\$pluginSubdirName\*" -Include "*.dll", "*.conf", "*.pdb" | % { + deployBinary "$targetBinaryDir\$pluginsBase\$pluginSubdirName" "$MagnumPluginsDir\$pluginSubdirName" $_.Name + resolve $_ + } + } else { + Write-Verbose " Skipping plugins directory '$pluginSubdirName': doesn't exist" + } + } + + # We detect Magnum modules in use via the DLLs themselves. + # Rather than checking for Magnum*.dll, we check for Magnum.dll and + # Magnum-d.dll to avoid falsly matching MagnumTextureTools.dll for example. + if ($targetBinaryName -like "MagnumAudio.dll" -or $targetBinaryName -like "MagnumAudio-d.dll") { + deployPlugins "audioimporters" + } elseif ($targetBinaryName -like "MagnumText.dll" -or $targetBinaryName -like "MagnumText-d.dll") { + deployPlugins "fonts" + deployPlugins "fontconverters" + } elseif ($targetBinaryName -like "Magnum.dll" -or $targetBinaryName -like "Magnum-d.dll") { + deployPlugins "importers" + deployPlugins "imageconverters" + } +} diff --git a/ports/magnum/portfile.cmake b/ports/magnum/portfile.cmake index 10d7f02fc..af22fbb60 100644 --- a/ports/magnum/portfile.cmake +++ b/ports/magnum/portfile.cmake @@ -94,6 +94,9 @@ else() file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/include/MagnumPlugins) file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/lib/magnum) file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/lib/magnum-d) + + file(COPY ${CMAKE_CURRENT_LIST_DIR}/magnumdeploy.ps1 DESTINATION ${CURRENT_PACKAGES_DIR}/bin/magnum) + file(COPY ${CMAKE_CURRENT_LIST_DIR}/magnumdeploy.ps1 DESTINATION ${CURRENT_PACKAGES_DIR}/debug/bin/magnum-d) endif() # Handle copyright diff --git a/scripts/buildsystems/msbuild/applocal.ps1 b/scripts/buildsystems/msbuild/applocal.ps1 index 3f0f2ef37..e5f3c3dd0 100644 --- a/scripts/buildsystems/msbuild/applocal.ps1 +++ b/scripts/buildsystems/msbuild/applocal.ps1 @@ -4,6 +4,7 @@ param([string]$targetBinary, [string]$installedDir, [string]$tlogFile, [string]$ $g_searched = @{} # Note: installedDir is actually the bin\ directory. $g_install_root = Split-Path $installedDir -parent +$g_is_debug = $g_install_root -match '(.*\\)?debug(\\)?$' # Ensure we create the copied files log, even if we don't end up copying any files if ($copiedFilesLog) @@ -63,6 +64,13 @@ function resolve([string]$targetBinary) { deployBinary $baseTargetBinaryDir $installedDir "$_" if (Test-Path function:\deployPluginsIfQt) { deployPluginsIfQt $targetBinaryDir "$g_install_root\plugins" "$_" } if (Test-Path function:\deployOpenNI2) { deployOpenNI2 $targetBinaryDir "$g_install_root" "$_" } + if (Test-Path function:\deployPluginsIfMagnum) { + if ($g_is_debug) { + deployPluginsIfMagnum $targetBinaryDir "$g_install_root\bin\magnum-d" "$_" + } else { + deployPluginsIfMagnum $targetBinaryDir "$g_install_root\bin\magnum" "$_" + } + } resolve "$baseTargetBinaryDir\$_" } elseif (Test-Path "$targetBinaryDir\$_") { Write-Verbose " ${_}: $_ not found in vcpkg; locally deployed" @@ -85,5 +93,12 @@ if (Test-Path "$g_install_root\bin\OpenNI2\openni2deploy.ps1") { . "$g_install_root\bin\OpenNI2\openni2deploy.ps1" } +# Note: This is a hack to make Magnum work. +if (Test-Path "$g_install_root\bin\magnum\magnumdeploy.ps1") { + . "$g_install_root\bin\magnum\magnumdeploy.ps1" +} elseif (Test-Path "$g_install_root\bin\magnum-d\magnumdeploy.ps1") { + . "$g_install_root\bin\magnum-d\magnumdeploy.ps1" +} + resolve($targetBinary) -Write-Verbose $($g_searched | out-string) \ No newline at end of file +Write-Verbose $($g_searched | out-string) -- cgit v1.2.3 From a95fbce456feaa14fe67a875037da2a0c58d7a3f Mon Sep 17 00:00:00 2001 From: Robert Schumacher Date: Tue, 17 Apr 2018 16:15:06 -0700 Subject: [libxml2] Display usage information --- ports/libxml2/portfile.cmake | 2 +- ports/libxml2/usage | 5 +++++ 2 files changed, 6 insertions(+), 1 deletion(-) create mode 100644 ports/libxml2/usage diff --git a/ports/libxml2/portfile.cmake b/ports/libxml2/portfile.cmake index cdf10496e..d55d4052d 100644 --- a/ports/libxml2/portfile.cmake +++ b/ports/libxml2/portfile.cmake @@ -19,7 +19,7 @@ vcpkg_configure_cmake( vcpkg_install_cmake() # Handle copyright -file(COPY ${SOURCE_PATH}/COPYING DESTINATION ${CURRENT_PACKAGES_DIR}/share/libxml2) +file(COPY ${CMAKE_CURRENT_LIST_DIR}/usage ${SOURCE_PATH}/COPYING DESTINATION ${CURRENT_PACKAGES_DIR}/share/libxml2) file(RENAME ${CURRENT_PACKAGES_DIR}/share/libxml2/COPYING ${CURRENT_PACKAGES_DIR}/share/libxml2/copyright) vcpkg_copy_pdbs() diff --git a/ports/libxml2/usage b/ports/libxml2/usage new file mode 100644 index 000000000..fd94c4b4e --- /dev/null +++ b/ports/libxml2/usage @@ -0,0 +1,5 @@ +The package libxml2 is compatible with built-in CMake targets: + + find_package(LibXml2 REQUIRED) + target_include_directories(main PRIVATE ${LIBXML2_INCLUDE_DIR}) + target_link_libraries(main PRIVATE ${LIBXML2_LIBRARIES}) -- cgit v1.2.3 From 2b896d2a2224ab2eed23dd1bcb3558fc5230d7a8 Mon Sep 17 00:00:00 2001 From: Robert Schumacher Date: Tue, 17 Apr 2018 16:15:21 -0700 Subject: [libuuid] Install headers into correct subdirectory --- ports/libuuid/CMakeLists.txt | 2 +- ports/libuuid/CONTROL | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/ports/libuuid/CMakeLists.txt b/ports/libuuid/CMakeLists.txt index a4335f1a8..ff1edd0ef 100644 --- a/ports/libuuid/CMakeLists.txt +++ b/ports/libuuid/CMakeLists.txt @@ -24,7 +24,7 @@ add_executable(test_uuid test_uuid.c) target_link_libraries(test_uuid uuid) if(CMAKE_BUILD_TYPE STREQUAL "Release") - install(FILES uuid.h DESTINATION include) + install(FILES uuid.h DESTINATION include/uuid) endif() install( diff --git a/ports/libuuid/CONTROL b/ports/libuuid/CONTROL index bfec975dd..04bfbe47b 100644 --- a/ports/libuuid/CONTROL +++ b/ports/libuuid/CONTROL @@ -1,3 +1,3 @@ Source: libuuid -Version: 1.0.3 +Version: 1.0.3-1 Description: Universally unique id library -- cgit v1.2.3 From 042b7023a17f54080927c1d27d757aa4860dea27 Mon Sep 17 00:00:00 2001 From: Robert Schumacher Date: Tue, 17 Apr 2018 16:15:42 -0700 Subject: [libsigcpp] Fix building with older gcc versions --- ports/libsigcpp/CMakeLists.txt | 2 ++ ports/libsigcpp/CONTROL | 2 +- 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/ports/libsigcpp/CMakeLists.txt b/ports/libsigcpp/CMakeLists.txt index 7a669a24e..9c43b1a1b 100644 --- a/ports/libsigcpp/CMakeLists.txt +++ b/ports/libsigcpp/CMakeLists.txt @@ -1,6 +1,8 @@ cmake_minimum_required(VERSION 3.0) project(libsigc++) +set(CMAKE_CXX_STANDARD 17) + set(SIGCPP_API_VERSION 2.0) add_definitions(-DSIGC_BUILD) diff --git a/ports/libsigcpp/CONTROL b/ports/libsigcpp/CONTROL index 02b2e4b83..c0393066b 100644 --- a/ports/libsigcpp/CONTROL +++ b/ports/libsigcpp/CONTROL @@ -1,3 +1,3 @@ Source: libsigcpp -Version: 2.10 +Version: 2.10-1 Description: Typesafe callback framework for C++ -- cgit v1.2.3 From 6984ef0c2ce27e7905f47078e79117c4e02e5ea0 Mon Sep 17 00:00:00 2001 From: Robert Schumacher Date: Tue, 17 Apr 2018 16:16:23 -0700 Subject: [libiconv] Fix unofficial-iconv cmake targets on non-windows --- ports/libiconv/CONTROL | 2 +- ports/libiconv/portfile.cmake | 2 +- ports/libiconv/unofficial-iconv-config.cmake | 8 ++++++-- 3 files changed, 8 insertions(+), 4 deletions(-) diff --git a/ports/libiconv/CONTROL b/ports/libiconv/CONTROL index 37c1a0f0d..852156dc6 100644 --- a/ports/libiconv/CONTROL +++ b/ports/libiconv/CONTROL @@ -1,3 +1,3 @@ Source: libiconv -Version: 1.15-3 +Version: 1.15-4 Description: GNU Unicode text conversion diff --git a/ports/libiconv/portfile.cmake b/ports/libiconv/portfile.cmake index 5cc48da91..f1ee147f9 100644 --- a/ports/libiconv/portfile.cmake +++ b/ports/libiconv/portfile.cmake @@ -1,6 +1,6 @@ if(VCPKG_CMAKE_SYSTEM_NAME AND NOT VCPKG_CMAKE_SYSTEM_NAME STREQUAL "WindowsStore") set(VCPKG_POLICY_EMPTY_PACKAGE enabled) - file(MAKE_DIRECTORY ${CURRENT_PACKAGES_DIR}/share/libiconv) + file(MAKE_DIRECTORY ${CURRENT_PACKAGES_DIR}/share/unofficial-iconv) file(COPY ${CMAKE_CURRENT_LIST_DIR}/unofficial-iconv-config.cmake DESTINATION ${CURRENT_PACKAGES_DIR}/share/unofficial-iconv) return() endif() diff --git a/ports/libiconv/unofficial-iconv-config.cmake b/ports/libiconv/unofficial-iconv-config.cmake index e272ce09e..7d08ff5f5 100644 --- a/ports/libiconv/unofficial-iconv-config.cmake +++ b/ports/libiconv/unofficial-iconv-config.cmake @@ -1,2 +1,6 @@ -add_library(unofficial::iconv::libcharset UNKNOWN IMPORTED) -add_library(unofficial::iconv::libiconv UNKNOWN IMPORTED) +add_library(unofficial::iconv::libcharset INTERFACE IMPORTED) +add_library(unofficial::iconv::libiconv INTERFACE IMPORTED) +if(APPLE) + set_property(TARGET unofficial::iconv::libcharset PROPERTY INTERFACE_LINK_LIBRARIES "charset;unofficial::iconv::libiconv") + set_property(TARGET unofficial::iconv::libiconv PROPERTY INTERFACE_LINK_LIBRARIES "iconv") +endif() \ No newline at end of file -- cgit v1.2.3 From 24cf00365b2ca6977962dd22cba8718ca51ab4be Mon Sep 17 00:00:00 2001 From: Robert Schumacher Date: Tue, 17 Apr 2018 16:18:25 -0700 Subject: [libffi] Fix non-windows --- ports/libffi/CMakeLists.txt | 112 ++++++++++++++++++++++-------- ports/libffi/fficonfig.h | 163 -------------------------------------------- ports/libffi/portfile.cmake | 9 ++- 3 files changed, 91 insertions(+), 193 deletions(-) diff --git a/ports/libffi/CMakeLists.txt b/ports/libffi/CMakeLists.txt index 79e9e671d..1f8e2d332 100644 --- a/ports/libffi/CMakeLists.txt +++ b/ports/libffi/CMakeLists.txt @@ -1,13 +1,40 @@ -cmake_minimum_required(VERSION 3.0) -project(libffi) +cmake_minimum_required(VERSION 3.9) +project(libffi C ASM) + +set(CMAKE_SHARED_LIBRARY_PREFIX) +set(CMAKE_STATIC_LIBRARY_PREFIX) + +if(NOT CMAKE_SYSTEM_PROCESSOR) + set(CMAKE_SYSTEM_PROCESSOR "${CMAKE_HOST_SYSTEM_PROCESSOR}") +endif() # config variables for ffi.h.in set(VERSION 3.1) -if(CMAKE_SIZEOF_VOID_P EQUAL 4) + +set(KNOWN_PROCESSORS x86 x86_64 AMD64 ARM ARM64 i386) + +if(NOT CMAKE_SYSTEM_PROCESSOR IN_LIST KNOWN_PROCESSORS) + message(FATAL_ERROR "Unknown processor: ${CMAKE_SYSTEM_PROCESSOR}") +endif() + +if(CMAKE_SYSTEM_PROCESSOR MATCHES "ARM") + set(TARGET ARM) +elseif(CMAKE_SYSTEM_NAME MATCHES "BSD" AND CMAKE_SIZEOF_VOID_P EQUAL 4) + set(TARGET X86_FREEBSD) +elseif(CMAKE_SYSTEM_NAME MATCHES "Windows" AND CMAKE_SIZEOF_VOID_P EQUAL 4) set(TARGET X86_WIN32) -else() +elseif(CMAKE_SYSTEM_NAME MATCHES "Windows" AND CMAKE_SIZEOF_VOID_P EQUAL 8) set(TARGET X86_WIN64) +elseif(CMAKE_SYSTEM_NAME MATCHES "Darwin") + set(TARGET X86_DARWIN) +elseif(CMAKE_SIZEOF_VOID_P EQUAL 8) + set(TARGET X86_64) +elseif(CMAKE_SIZEOF_VOID_P EQUAL 4) + set(TARGET X86) +else() + message(FATAL_ERROR "Cannot determine target. Please consult ${CMAKE_CURRENT_SOURCE_DIR}/configure.ac and add your platform to this CMake file.") endif() + set(HAVE_LONG_DOUBLE 0) set(HAVE_LONG_DOUBLE_VARIANT 0) set(FFI_EXEC_TRAMPOLINE_TABLE 0) @@ -24,33 +51,13 @@ include_directories(include) add_definitions(-DHAVE_CONFIG_H) add_definitions(-DFFI_BUILDING) if(BUILD_SHARED_LIBS) - add_definitions(-DFFI_EXPORT_DATA) + if(WIN32) + add_definitions(-DFFI_EXPORT_DATA) + endif() set(CMAKE_WINDOWS_EXPORT_ALL_SYMBOLS ON) endif() -if(CMAKE_SIZEOF_VOID_P EQUAL 4) - set(ARCH_ASM_NAME win32) - set(ARCH_ASSEMBLER ml /safeseh) -else() - set(ARCH_ASM_NAME win64) - set(ARCH_ASSEMBLER ml64) -endif() - -execute_process( - COMMAND cl /nologo /EP /I. /Iinclude ${CMAKE_SOURCE_DIR}/src/x86/${ARCH_ASM_NAME}.S - WORKING_DIRECTORY ${CMAKE_BINARY_DIR} - OUTPUT_FILE ${ARCH_ASM_NAME}.asm) - -# Produced *.asm file could be just added to sources. -# It works in x64 mode, but for some strange reason MASM returns error code when in x86, -# (even though it didn't report any errors and correctly generated object file) -# which in turn causes MSBUILD to stop. -execute_process( - COMMAND ${ARCH_ASSEMBLER} /c /Zi ${ARCH_ASM_NAME}.asm - WORKING_DIRECTORY ${CMAKE_BINARY_DIR}) - set(FFI_SOURCES - ${CMAKE_BINARY_DIR}/${ARCH_ASM_NAME}.obj src/x86/ffi.c src/closures.c src/java_raw_api.c @@ -58,6 +65,57 @@ set(FFI_SOURCES src/raw_api.c src/types.c) +macro(add_assembly ASMFILE) + get_filename_component(ASMFILE_FULL "${ASMFILE}" ABSOLUTE) + if(MSVC) + if(CMAKE_SIZEOF_VOID_P EQUAL 4) + set(ARCH_ASSEMBLER ml /safeseh) + else() + set(ARCH_ASSEMBLER ml64) + endif() + + get_filename_component(ARCH_ASM_NAME "${ASMFILE_FULL}" NAME_WE) + + execute_process( + COMMAND ${CMAKE_C_COMPILER} /nologo /EP /I. /Iinclude ${ASMFILE_FULL} + WORKING_DIRECTORY ${CMAKE_BINARY_DIR} + OUTPUT_FILE ${ARCH_ASM_NAME}.asm + ) + + # Produced *.asm file could be just added to sources. + # It works in x64 mode, but for some strange reason MASM returns error code when in x86, + # (even though it didn't report any errors and correctly generated object file) + # which in turn causes MSBUILD to stop. + execute_process( + COMMAND ${ARCH_ASSEMBLER} /c /Zi ${ARCH_ASM_NAME}.asm + WORKING_DIRECTORY ${CMAKE_BINARY_DIR} + ) + + list(APPEND FFI_SOURCES ${CMAKE_BINARY_DIR}/${ARCH_ASM_NAME}.obj) + else() + list(APPEND FFI_SOURCES ${ASMFILE}) + endif() +endmacro() + +if("${TARGET}" STREQUAL "X86") + add_assembly(src/x86/sysv.S) + add_assembly(src/x86/win32.S) +elseif("${TARGET}" STREQUAL "X86_64") + list(APPEND FFI_SOURCES src/x86/ffi64.c) + add_assembly(src/x86/unix64.S) + add_assembly(src/x86/sysv.S) +elseif("${TARGET}" STREQUAL "X86_WIN32") + add_assembly(src/x86/win32.S) +elseif("${TARGET}" STREQUAL "X86_WIN64") + add_assembly(src/x86/win64.S) +elseif("${TARGET}" STREQUAL "X86_DARWIN") + list(APPEND FFI_SOURCES src/x86/ffi64.c) + add_assembly(src/x86/darwin.S) + add_assembly(src/x86/darwin64.S) +else() + message(FATAL_ERROR "Target not implemented") +endif() + if(CMAKE_BUILD_TYPE STREQUAL Debug) list(APPEND FFI_SOURCES src/debug.c) add_definitions(-DFFI_DEBUG) diff --git a/ports/libffi/fficonfig.h b/ports/libffi/fficonfig.h index b5cd2368f..ff8b0ca44 100644 --- a/ports/libffi/fficonfig.h +++ b/ports/libffi/fficonfig.h @@ -1,209 +1,46 @@ -/* fficonfig.h. Generated from fficonfig.h.in by configure. */ -/* fficonfig.h.in. Generated from configure.ac by autoheader. */ - -/* Define if building universal (internal helper macro) */ -/* #undef AC_APPLE_UNIVERSAL_BUILD */ - -/* Define to one of `_getb67', `GETB67', `getb67' for Cray-2 and Cray-YMP - systems. This function is required for `alloca.c' support on those systems. - */ -/* #undef CRAY_STACKSEG_END */ - -/* Define to 1 if using `alloca.c'. */ -/* #undef C_ALLOCA */ - -/* Define to the flags needed for the .section .eh_frame directive. */ -/* #undef EH_FRAME_FLAGS */ - -/* Define this if you want extra debugging. */ -/* #undef FFI_DEBUG */ - -/* Cannot use PROT_EXEC on this target, so, we revert to alternative means */ -/* #undef FFI_EXEC_TRAMPOLINE_TABLE */ - -/* Define this if you want to enable pax emulated trampolines */ -/* #undef FFI_MMAP_EXEC_EMUTRAMP_PAX */ - -/* Cannot use malloc on this target, so, we revert to alternative means */ -/* #undef FFI_MMAP_EXEC_WRIT */ - -/* Define this if you do not want support for the raw API. */ -/* #undef FFI_NO_RAW_API */ - -/* Define this if you do not want support for aggregate types. */ -/* #undef FFI_NO_STRUCTS */ - -/* Define to 1 if you have `alloca', as a function or macro. */ #define HAVE_ALLOCA 1 - -/* Define to 1 if you have and it should be used (not on Ultrix). - */ -/* #undef HAVE_ALLOCA_H */ - -/* Define if your assembler supports .ascii. */ #ifndef _WIN64 #define HAVE_AS_ASCII_PSEUDO_OP 1 #endif - -/* Define if your assembler supports .cfi_* directives. */ -/* #undef HAVE_AS_CFI_PSEUDO_OP */ - -/* Define if your assembler supports .register. */ -/* #undef HAVE_AS_REGISTER_PSEUDO_OP */ - -/* Define if your assembler and linker support unaligned PC relative relocs. - */ -/* #undef HAVE_AS_SPARC_UA_PCREL */ - -/* Define if your assembler supports .string. */ #ifndef _WIN64 #define HAVE_AS_STRING_PSEUDO_OP 1 #endif - -/* Define if your assembler supports unwind section type. */ -/* #undef HAVE_AS_X86_64_UNWIND_SECTION_TYPE */ - -/* Define if your assembler supports PC relative relocs. */ #ifndef _WIN64 #define HAVE_AS_X86_PCREL 1 #endif - -/* Define to 1 if you have the header file. */ -/* #undef HAVE_DLFCN_H */ - -/* Define if __attribute__((visibility("hidden"))) is supported. */ -/* #undef HAVE_HIDDEN_VISIBILITY_ATTRIBUTE */ - -/* Define to 1 if you have the header file. */ #define HAVE_INTTYPES_H 1 - -/* Define if you have the long double type and it is bigger than a double */ -/* #undef HAVE_LONG_DOUBLE */ - -/* Define if you support more than one size of the long double type */ -/* #undef HAVE_LONG_DOUBLE_VARIANT */ - -/* Define to 1 if you have the `memcpy' function. */ -/* #undef HAVE_MEMCPY */ - -/* Define to 1 if you have the header file. */ #define HAVE_MEMORY_H 1 - -/* Define to 1 if you have the `mmap' function. */ -/* #undef HAVE_MMAP */ - -/* Define if mmap with MAP_ANON(YMOUS) works. */ -/* #undef HAVE_MMAP_ANON */ - -/* Define if mmap of /dev/zero works. */ -/* #undef HAVE_MMAP_DEV_ZERO */ - -/* Define if read-only mmap of a plain file works. */ -/* #undef HAVE_MMAP_FILE */ - -/* Define if .eh_frame sections should be read-only. */ -/* #undef HAVE_RO_EH_FRAME */ - -/* Define to 1 if you have the header file. */ #define HAVE_STDINT_H 1 - -/* Define to 1 if you have the header file. */ #define HAVE_STDLIB_H 1 - -/* Define to 1 if you have the header file. */ -/* #undef HAVE_STRINGS_H */ - -/* Define to 1 if you have the header file. */ #define HAVE_STRING_H 1 - -/* Define to 1 if you have the header file. */ -/* #undef HAVE_SYS_MMAN_H */ - -/* Define to 1 if you have the header file. */ #define HAVE_SYS_STAT_H 1 - -/* Define to 1 if you have the header file. */ #define HAVE_SYS_TYPES_H 1 - -/* Define to 1 if you have the header file. */ -/* #undef HAVE_UNISTD_H */ - -/* Define to the sub-directory where libtool stores uninstalled libraries. */ #define LT_OBJDIR ".libs/" - -/* Name of package */ #define PACKAGE "libffi" - -/* Define to the address where bug reports for this package should be sent. */ #define PACKAGE_BUGREPORT "http://github.com/atgreen/libffi/issues" - -/* Define to the full name of this package. */ #define PACKAGE_NAME "libffi" - -/* Define to the full name and version of this package. */ #define PACKAGE_STRING "libffi 3.1" - -/* Define to the one symbol short name of this package. */ #define PACKAGE_TARNAME "libffi" - -/* Define to the home page for this package. */ #define PACKAGE_URL "" - -/* Define to the version of this package. */ #define PACKAGE_VERSION "3.1" - -/* The size of `double', as computed by sizeof. */ #define SIZEOF_DOUBLE 8 - -/* The size of `long double', as computed by sizeof. */ #define SIZEOF_LONG_DOUBLE 8 - -/* The size of `size_t', as computed by sizeof. */ #ifndef _WIN64 #define SIZEOF_SIZE_T 4 #else #define SIZEOF_SIZE_T 8 #endif - -/* If using the C implementation of alloca, define if you know the - direction of stack growth for your system; otherwise it will be - automatically deduced at runtime. - STACK_DIRECTION > 0 => grows toward higher addresses - STACK_DIRECTION < 0 => grows toward lower addresses - STACK_DIRECTION = 0 => direction of growth unknown */ -/* #undef STACK_DIRECTION */ - -/* Define to 1 if you have the ANSI C header files. */ #define STDC_HEADERS 1 - -/* Define if symbols are underscored. */ #ifndef _WIN64 #define SYMBOL_UNDERSCORE 1 #endif - -/* Define this if you are using Purify and want to suppress spurious messages. - */ -/* #undef USING_PURIFY */ - -/* Version number of package */ #define VERSION "3.1" - -/* Define WORDS_BIGENDIAN to 1 if your processor stores words with the most - significant byte first (like Motorola and SPARC, unlike Intel). */ #if defined AC_APPLE_UNIVERSAL_BUILD # if defined __BIG_ENDIAN__ # define WORDS_BIGENDIAN 1 # endif -#else -# ifndef WORDS_BIGENDIAN -/* # undef WORDS_BIGENDIAN */ -# endif #endif -/* Define to `unsigned int' if does not define. */ -/* #undef size_t */ - - #ifdef HAVE_HIDDEN_VISIBILITY_ATTRIBUTE #ifdef LIBFFI_ASM #define FFI_HIDDEN(name) .hidden name diff --git a/ports/libffi/portfile.cmake b/ports/libffi/portfile.cmake index 4240ddc54..8799e23a8 100644 --- a/ports/libffi/portfile.cmake +++ b/ports/libffi/portfile.cmake @@ -16,14 +16,16 @@ file(COPY ${CMAKE_CURRENT_LIST_DIR}/CMakeLists.txt DESTINATION ${SOURCE_PATH}) vcpkg_apply_patches( SOURCE_PATH ${SOURCE_PATH} PATCHES - ${CMAKE_CURRENT_LIST_DIR}/export-global-data.patch) + ${CMAKE_CURRENT_LIST_DIR}/export-global-data.patch +) vcpkg_configure_cmake( SOURCE_PATH ${SOURCE_PATH} OPTIONS -DFFI_CONFIG_FILE=${CMAKE_CURRENT_LIST_DIR}/fficonfig.h OPTIONS_DEBUG - -DFFI_SKIP_HEADERS=ON) + -DFFI_SKIP_HEADERS=ON +) vcpkg_install_cmake() vcpkg_copy_pdbs() @@ -32,7 +34,8 @@ if(VCPKG_LIBRARY_LINKAGE STREQUAL static) vcpkg_apply_patches( SOURCE_PATH ${CURRENT_PACKAGES_DIR}/include PATCHES - ${CMAKE_CURRENT_LIST_DIR}/auto-define-static-macro.patch) + ${CMAKE_CURRENT_LIST_DIR}/auto-define-static-macro.patch + ) endif() file(COPY ${SOURCE_PATH}/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/libffi) -- cgit v1.2.3 From cc75f4a3d87fa36f9b9e43f58574a7d85fb887b0 Mon Sep 17 00:00:00 2001 From: Robert Schumacher Date: Tue, 17 Apr 2018 16:19:59 -0700 Subject: [gettext] Fix for OSX. Slightly improve handling on Windows. --- ports/gettext/CMakeLists.txt | 95 ++++-- ports/gettext/CONTROL | 2 +- ports/gettext/config.h | 677 --------------------------------------- ports/gettext/config.win32.h | 677 +++++++++++++++++++++++++++++++++++++++ ports/gettext/libgnuintl.h | 423 ------------------------ ports/gettext/libgnuintl.win32.h | 423 ++++++++++++++++++++++++ ports/gettext/portfile.cmake | 19 +- 7 files changed, 1173 insertions(+), 1143 deletions(-) delete mode 100644 ports/gettext/config.h create mode 100644 ports/gettext/config.win32.h delete mode 100644 ports/gettext/libgnuintl.h create mode 100644 ports/gettext/libgnuintl.win32.h diff --git a/ports/gettext/CMakeLists.txt b/ports/gettext/CMakeLists.txt index 3129b082b..7df8c33dc 100644 --- a/ports/gettext/CMakeLists.txt +++ b/ports/gettext/CMakeLists.txt @@ -1,49 +1,75 @@ cmake_minimum_required(VERSION 3.5) project(libintl C) -find_library(ICONV_LIB NAMES iconv libiconv) -find_path(ICONV_PATH iconv.h) +find_package(unofficial-iconv REQUIRED) -find_library(CHARSET_LIB NAMES charset libcharset) -find_path(CHARSET_PATH localcharset.h) +include_directories(${CMAKE_CURRENT_BINARY_DIR}/config .) -include_directories(${CMAKE_CURRENT_BINARY_DIR} . ${ICONV_PATH} ${CHARSET_PATH}) -link_libraries(${CHARSET_LIB} ${ICONV_LIB}) +set(CMAKE_STATIC_LIBRARY_PREFIX) +set(CMAKE_SHARED_LIBRARY_PREFIX) -file(READ config.h _contents) +if(WIN32) + set(HAVE_POSIX_PRINTF 0) + set(HAVE_SNPRINTF 0) + set(HAVE_ASPRINTF 0) + set(HAVE_WPRINTF 0) + set(HAVE_NEWLOCALE 0) + + configure_file(intl/libgnuintl.win32.h config/libgnuintl.h COPYONLY) + configure_file(config.win32.h config/config.h COPYONLY) +else() + set(HAVE_POSIX_PRINTF 1) + set(HAVE_SNPRINTF 1) + set(HAVE_ASPRINTF 1) + set(HAVE_WPRINTF 1) + set(HAVE_NEWLOCALE 1) + add_definitions(-DHAVE_NEWLOCALE=1) + + configure_file(intl/libgnuintl.in.h config/libgnuintl.h @ONLY) + configure_file(config.win32.h config/config.h COPYONLY) +endif() + +if(NOT DISABLE_INSTALL_HEADERS) + install(FILES "${CMAKE_CURRENT_BINARY_DIR}/config/libgnuintl.h" DESTINATION include RENAME libintl.h) +endif() + +file(READ "${CMAKE_CURRENT_BINARY_DIR}/config/config.h" _contents) if(NOT WIN32) string(REPLACE "/* #undef HAVE_STPCPY */" "#define HAVE_STPCPY 1" _contents "${_contents}") endif() -file(WRITE "${CMAKE_CURRENT_BINARY_DIR}/config.h" "${_contents}") +file(WRITE "${CMAKE_CURRENT_BINARY_DIR}/config/config.h" "${_contents}") FILE(GLOB SOURCES -"intl/bindtextdom.c" -"intl/dcgettext.c" -"intl/dcigettext.c" -"intl/dcngettext.c" -"intl/dgettext.c" -"intl/dngettext.c" -"intl/explodename.c" -"intl/finddomain.c" -"intl/gettext.c" -"intl/hash-string.c" -"intl/intl-compat.c" -"intl/l10nflist.c" -"intl/langprefs.c" -"intl/loadmsgcat.c" -"intl/localealias.c" -"intl/localename.c" -"intl/lock.c" -"intl/log.c" -"intl/ngettext.c" -"intl/osdep.c" -"intl/plural-exp.c" -"intl/plural.c" -"intl/printf.c" -"intl/relocatable.c" -"intl/textdomain.c" -"intl/version.c" + "intl/bindtextdom.c" + "intl/dcgettext.c" + "intl/dcigettext.c" + "intl/dcngettext.c" + "intl/dgettext.c" + "intl/dngettext.c" + "intl/explodename.c" + "intl/finddomain.c" + "intl/gettext.c" + "intl/hash-string.c" + "intl/intl-compat.c" + "intl/l10nflist.c" + "intl/langprefs.c" + "intl/loadmsgcat.c" + "intl/localealias.c" + "intl/localename.c" + "intl/lock.c" + "intl/log.c" + "intl/ngettext.c" + "intl/osdep.c" + "intl/plural-exp.c" + "intl/plural.c" + "intl/printf.c" + "intl/relocatable.c" + "intl/textdomain.c" + "intl/version.c" ) +if(NOT WIN32) + list(APPEND SOURCES "intl/setlocale.c") +endif() set(LOCALDIR "c:/gettext") @@ -59,6 +85,7 @@ add_definitions("-DBUILDING_LIBINTL -DIN_LIBINTL -DENABLE_RELOCATABLE=1 -DIN_LIB add_definitions("-DNO_XMALLOC -Dset_relocation_prefix=libintl_set_relocation_prefix -Drelocate=libintl_relocate -DDEPENDS_ON_LIBICONV=1 -DHAVE_CONFIG_H -D_CRT_SECURE_NO_WARNINGS") add_library(libintl ${SOURCES}) +target_link_libraries(libintl PRIVATE unofficial::iconv::libcharset unofficial::iconv::libiconv) install(TARGETS libintl RUNTIME DESTINATION bin diff --git a/ports/gettext/CONTROL b/ports/gettext/CONTROL index ccb6f5aa4..9044cd724 100644 --- a/ports/gettext/CONTROL +++ b/ports/gettext/CONTROL @@ -1,4 +1,4 @@ Source: gettext -Version: 0.19-2 +Version: 0.19-4 Description: The GNU gettext utilities are a set of tools that provides a framework to help other GNU packages produce multi-lingual messages Build-Depends: libiconv diff --git a/ports/gettext/config.h b/ports/gettext/config.h deleted file mode 100644 index bde4dfeeb..000000000 --- a/ports/gettext/config.h +++ /dev/null @@ -1,677 +0,0 @@ -/* config.h. Generated from config.h.in by configure. */ -/* config.h.in. Generated from configure.ac by autoheader. */ - -#ifndef WIN32 -# define _GL_INLINE_HEADER_BEGIN -# define _GL_INLINE_HEADER_END -# define _GL_INLINE static inline -#endif - -/* Disable function deprecated warnings */ -#define _CRT_NONSTDC_NO_WARNINGS - -/* Define to the number of bits in type 'ptrdiff_t'. */ -#define BITSIZEOF_PTRDIFF_T sizeof(ptrdiff_t) - -/* Define to the number of bits in type 'sig_atomic_t'. */ -#define BITSIZEOF_SIG_ATOMIC_T 32 - -/* Define to the number of bits in type 'size_t'. */ -#define BITSIZEOF_SIZE_T sizeof(size_t) - -/* Define to the number of bits in type 'wchar_t'. */ -#define BITSIZEOF_WCHAR_T 16 - -/* Define to the number of bits in type 'wint_t'. */ -#define BITSIZEOF_WINT_T 16 - -/* Define to one of `_getb67', `GETB67', `getb67' for Cray-2 and Cray-YMP - systems. This function is required for `alloca.c' support on those systems. - */ -/* #undef CRAY_STACKSEG_END */ - -/* Define if mono is the preferred C# implementation. */ -/* #undef CSHARP_CHOICE_MONO */ - -/* Define if pnet is the preferred C# implementation. */ -/* #undef CSHARP_CHOICE_PNET */ - -/* Define to 1 if using `alloca.c'. */ -/* #undef C_ALLOCA */ - -/* Define to 1 if translation of program messages to the user's native - language is requested. */ -#define ENABLE_NLS 1 - -/* Define to 1 if the package shall run at any location in the filesystem. */ -/* #undef ENABLE_RELOCATABLE */ - -/* Define to 1 when using the gnulib module fwriteerror. */ -#define GNULIB_FWRITEERROR 1 - -/* Define to 1 if you have `alloca', as a function or macro. */ -#define HAVE_ALLOCA 1 - -/* Define to 1 if you have and it should be used (not on Ultrix). - */ -/* #undef HAVE_ALLOCA_H */ - -/* Define to 1 if you have the `argz_count' function. */ -/* #undef HAVE_ARGZ_COUNT */ - -/* Define to 1 if you have the header file. */ -/* #undef HAVE_ARGZ_H */ - -/* Define to 1 if you have the `argz_next' function. */ -/* #undef HAVE_ARGZ_NEXT */ - -/* Define to 1 if you have the `argz_stringify' function. */ -/* #undef HAVE_ARGZ_STRINGIFY */ - -/* Define to 1 if you have the `asprintf' function. */ -/* #undef HAVE_ASPRINTF */ - -/* Define to 1 if you have the `atexit' function. */ -#define HAVE_ATEXIT 1 - -/* Define to 1 if you have the header file. */ -/* #undef HAVE_BP_SYM_H */ - -/* Define to 1 if the compiler understands __builtin_expect. */ -/* #undef HAVE_BUILTIN_EXPECT */ - -/* Define to 1 if you have the `canonicalize_file_name' function. */ -/* #undef HAVE_CANONICALIZE_FILE_NAME */ - -/* Define to 1 if you have the MacOS X function CFLocaleCopyCurrent in the - CoreFoundation framework. */ -/* #undef HAVE_CFLOCALECOPYCURRENT */ - -/* Define to 1 if you have the MacOS X function CFPreferencesCopyAppValue in - the CoreFoundation framework. */ -/* #undef HAVE_CFPREFERENCESCOPYAPPVALUE */ - -/* Define if the GNU dcgettext() function is already present or preinstalled. - */ -/* #undef HAVE_DCGETTEXT */ - -/* Define to 1 if you have the declaration of `canonicalize_file_name', and to - 0 if you don't. */ -#define HAVE_DECL_CANONICALIZE_FILE_NAME 0 - -/* Define to 1 if you have the declaration of `clearerr_unlocked', and to 0 if - you don't. */ -#define HAVE_DECL_CLEARERR_UNLOCKED 0 - -/* Define to 1 if you have the declaration of `feof_unlocked', and to 0 if you - don't. */ -#define HAVE_DECL_FEOF_UNLOCKED 0 - -/* Define to 1 if you have the declaration of `ferror_unlocked', and to 0 if - you don't. */ -#define HAVE_DECL_FERROR_UNLOCKED 0 - -/* Define to 1 if you have the declaration of `fflush_unlocked', and to 0 if - you don't. */ -#define HAVE_DECL_FFLUSH_UNLOCKED 0 - -/* Define to 1 if you have the declaration of `fgets_unlocked', and to 0 if - you don't. */ -#define HAVE_DECL_FGETS_UNLOCKED 0 - -/* Define to 1 if you have the declaration of `fputc_unlocked', and to 0 if - you don't. */ -#define HAVE_DECL_FPUTC_UNLOCKED 0 - -/* Define to 1 if you have the declaration of `fputs_unlocked', and to 0 if - you don't. */ -#define HAVE_DECL_FPUTS_UNLOCKED 0 - -/* Define to 1 if you have the declaration of `fread_unlocked', and to 0 if - you don't. */ -#define HAVE_DECL_FREAD_UNLOCKED 0 - -/* Define to 1 if you have the declaration of `fwrite_unlocked', and to 0 if - you don't. */ -#define HAVE_DECL_FWRITE_UNLOCKED 0 - -/* Define to 1 if you have the declaration of `getchar_unlocked', and to 0 if - you don't. */ -#define HAVE_DECL_GETCHAR_UNLOCKED 0 - -/* Define to 1 if you have the declaration of `getc_unlocked', and to 0 if you - don't. */ -#define HAVE_DECL_GETC_UNLOCKED 0 - -/* Define to 1 if you have the declaration of `getenv', and to 0 if you don't. - */ -#define HAVE_DECL_GETENV 1 - -/* Define to 1 if you have the declaration of `putchar_unlocked', and to 0 if - you don't. */ -#define HAVE_DECL_PUTCHAR_UNLOCKED 0 - -/* Define to 1 if you have the declaration of `putc_unlocked', and to 0 if you - don't. */ -#define HAVE_DECL_PUTC_UNLOCKED 0 - -/* Define to 1 if you have the declaration of `strdup', and to 0 if you don't. - */ -#define HAVE_DECL_STRDUP 1 - -/* Define to 1 if you have the declaration of `strerror', and to 0 if you - don't. */ -/* #undef HAVE_DECL_STRERROR */ - -/* Define to 1 if you have the declaration of `strerror_r', and to 0 if you - don't. */ -#define HAVE_DECL_STRERROR_R 0 - -/* Define to 1 if you have the declaration of `strnlen', and to 0 if you - don't. */ -#define HAVE_DECL_STRNLEN 0 - -/* Define to 1 if you have the declaration of `wcwidth', and to 0 if you - don't. */ -#define HAVE_DECL_WCWIDTH 0 - -/* Define to 1 if you have the declaration of `_snprintf', and to 0 if you - don't. */ -#define HAVE_DECL__SNPRINTF 1 - -/* Define to 1 if you have the declaration of `_snwprintf', and to 0 if you - don't. */ -#define HAVE_DECL__SNWPRINTF 1 - -/* Define to 1 if you have the header file. */ -/* #undef HAVE_DLFCN_H */ - -/* Define if you have the declaration of environ. */ -#define HAVE_ENVIRON_DECL 1 - -/* Define to 1 if you have the `fwprintf' function. */ -#define HAVE_FWPRINTF 1 - -/* Define to 1 if you have the `getcwd' function. */ -#define HAVE_GETCWD 1 - -/* Define to 1 if you have the `getegid' function. */ -/* #undef HAVE_GETEGID */ - -/* Define to 1 if you have the `geteuid' function. */ -/* #undef HAVE_GETEUID */ - -/* Define to 1 if you have the `getgid' function. */ -/* #undef HAVE_GETGID */ - -/* Define to 1 if you have the header file. */ -/* #undef HAVE_GETOPT_H */ - -/* Define to 1 if you have the `getopt_long_only' function. */ -/* #undef HAVE_GETOPT_LONG_ONLY */ - -/* Define to 1 if you have the `getpagesize' function. */ -/* #undef HAVE_GETPAGESIZE */ - -/* Define if the GNU gettext() function is already present or preinstalled. */ -/* #undef HAVE_GETTEXT */ - -/* Define to 1 if you have the `getuid' function. */ -/* #undef HAVE_GETUID */ - -/* Define if you have the iconv() function and it works. */ -/* #undef HAVE_ICONV */ - -/* Define to 1 if you have the header file. */ -/* #undef HAVE_ICONV_H */ - -/* Define if your compiler supports the #include_next directive. */ -/* #undef HAVE_INCLUDE_NEXT */ - -/* Define if you have the 'intmax_t' type in or . */ -/* #undef HAVE_INTMAX_T */ - -/* Define to 1 if you have the header file. */ -/* #undef HAVE_INTTYPES_H */ - -/* Define if exists, doesn't clash with , and - declares uintmax_t. */ -/* #undef HAVE_INTTYPES_H_WITH_UINTMAX */ - -/* Define to 1 if you have the `iswcntrl' function. */ -#define HAVE_ISWCNTRL 1 - -/* Define if you have and nl_langinfo(CODESET). */ -/* #undef HAVE_LANGINFO_CODESET */ - -/* Define if your file defines LC_MESSAGES. */ -/* #undef HAVE_LC_MESSAGES */ - -/* Define to 1 if you have the header file. */ -#define HAVE_LIMITS_H 1 - -/* Define to 1 if the system has the type `long long int'. */ -/* #undef HAVE_LONG_LONG_INT */ - -/* Define to 1 if you have the header file. */ -/* #undef HAVE_MACH_O_DYLD_H */ - -/* Define if the 'malloc' function is POSIX compliant. */ -/* #undef HAVE_MALLOC_POSIX */ - -/* Define to 1 if mbrtowc and mbstate_t are properly declared. */ -/* #undef HAVE_MBRTOWC */ - -/* Define to 1 if declares mbstate_t. */ -#define HAVE_MBSTATE_T 1 - -/* Define to 1 if you have the `memchr' function. */ -#define HAVE_MEMCHR 1 - -/* Define to 1 if you have the `memmove' function. */ -#define HAVE_MEMMOVE 1 - -/* Define to 1 if you have the header file. */ -#define HAVE_MEMORY_H 1 - -/* Define to 1 if you have the `mempcpy' function. */ -/* #undef HAVE_MEMPCPY */ - -/* Define to 1 if you have a working `mmap' system call. */ -/* #undef HAVE_MMAP */ - -/* Define to 1 if you have the `munmap' function. */ -/* #undef HAVE_MUNMAP */ - -/* Define if you have and it defines the NL_LOCALE_NAME macro if - _GNU_SOURCE is defined. */ -/* #undef HAVE_NL_LOCALE_NAME */ - -/* Define if your printf() function supports format strings with positions. */ -/* #undef HAVE_POSIX_PRINTF */ - -/* Define if the defines PTHREAD_MUTEX_RECURSIVE. */ -/* #undef HAVE_PTHREAD_MUTEX_RECURSIVE */ - -/* Define if the POSIX multithreading library has read/write locks. */ -/* #undef HAVE_PTHREAD_RWLOCK */ - -/* Define to 1 if you have the `putenv' function. */ -#define HAVE_PUTENV 1 - -/* Define to 1 if you have the `readlink' function. */ -/* #undef HAVE_READLINK */ - -/* Define to 1 if you have the header file. */ -#define HAVE_SEARCH_H 1 - -/* Define to 1 if you have the `setenv' function. */ -/* #undef HAVE_SETENV */ - -/* Define to 1 if you have the `setlocale' function. */ -#define HAVE_SETLOCALE 1 - -/* Define to 1 if 'sig_atomic_t' is a signed integer type. */ -#define HAVE_SIGNED_SIG_ATOMIC_T 1 - -/* Define to 1 if 'wchar_t' is a signed integer type. */ -/* #undef HAVE_SIGNED_WCHAR_T */ - -/* Define to 1 if 'wint_t' is a signed integer type. */ -/* #undef HAVE_SIGNED_WINT_T */ - -/* Define to 1 if you have the `snprintf' function. */ -/* #undef HAVE_SNPRINTF */ - -/* Define to 1 if stdbool.h conforms to C99. */ -/* #undef HAVE_STDBOOL_H */ - -/* Define to 1 if you have the header file. */ -#define HAVE_STDDEF_H 1 - -/* Define to 1 if you have the header file. */ -/* #undef HAVE_STDINT_H */ - -/* Define if exists, doesn't clash with , and declares - uintmax_t. */ -/* #undef HAVE_STDINT_H_WITH_UINTMAX */ - -/* Define to 1 if you have the header file. */ -#define HAVE_STDLIB_H 1 - -/* Define to 1 if you have the `stpcpy' function. */ -/* #undef HAVE_STPCPY */ - -/* Define to 1 if you have the `strcasecmp' function. */ -/* #undef HAVE_STRCASECMP */ - -/* Define to 1 if you have the `strdup' function. */ -#define HAVE_STRDUP 1 - -/* Define to 1 if you have the `strerror_r' function. */ -/* #undef HAVE_STRERROR_R */ - -/* Define to 1 if you have the header file. */ -/* #undef HAVE_STRINGS_H */ - -/* Define to 1 if you have the header file. */ -#define HAVE_STRING_H 1 - -/* Define to 1 if you have the `strtol' function. */ -#define HAVE_STRTOL 1 - -/* Define to 1 if you have the `strtoul' function. */ -#define HAVE_STRTOUL 1 - -/* Define to 1 if you have the header file. */ -/* #undef HAVE_SYS_BITYPES_H */ - -/* Define to 1 if you have the header file. */ -/* #undef HAVE_SYS_INTTYPES_H */ - -/* Define to 1 if you have the header file. */ -/* #undef HAVE_SYS_PARAM_H */ - -/* Define to 1 if you have the header file. */ -#define HAVE_SYS_STAT_H 1 - -/* Define to 1 if you have the header file. */ -#define HAVE_SYS_TYPES_H 1 - -/* Define to 1 if you have the `tsearch' function. */ -/* #undef HAVE_TSEARCH */ - -/* Define if you have the 'uintmax_t' type in or . */ -/* #undef HAVE_UINTMAX_T */ - -/* Define to 1 if you have the header file. */ -/* #undef HAVE_UNISTD_H */ - -/* Define to 1 if the system has the type `unsigned long long int'. */ -/* #undef HAVE_UNSIGNED_LONG_LONG_INT */ - -/* Define to 1 or 0, depending whether the compiler supports simple visibility - declarations. */ -#define HAVE_VISIBILITY 0 - -/* Define to 1 if you have the header file. */ -#define HAVE_WCHAR_H 1 - -/* Define if you have the 'wchar_t' type. */ -#define HAVE_WCHAR_T 1 - -/* Define to 1 if you have the `wcslen' function. */ -#define HAVE_WCSLEN 1 - -/* Define to 1 if you have the header file. */ -#define HAVE_WCTYPE_H 1 - -/* Define to 1 if you have the `wcwidth' function. */ -/* #undef HAVE_WCWIDTH */ - -/* Define if you have the 'wint_t' type. */ -#define HAVE_WINT_T 1 - -/* Define to 1 if the system has the type `_Bool'. */ -/* #undef HAVE__BOOL */ - -/* Define to 1 if you have the `_NSGetExecutablePath' function. */ -/* #undef HAVE__NSGETEXECUTABLEPATH */ - -/* Define to 1 if you have the `__fsetlocking' function. */ -/* #undef HAVE___FSETLOCKING */ - -/* Define as const if the declaration of iconv() needs const. */ -/* #undef ICONV_CONST */ - -/* Define to a symbolic name denoting the flavor of iconv_open() - implementation. */ -/* #undef ICONV_FLAVOR */ - -/* Define to the value of ${prefix}, as a string. */ -/* #define INSTALLPREFIX "/usr/local" */ - -/* Define if integer division by zero raises signal SIGFPE. */ -#define INTDIV0_RAISES_SIGFPE 0 - -/* If malloc(0) is != NULL, define this to 1. Otherwise define this to 0. */ -#define MALLOC_0_IS_NONNULL 1 - -/* Define to 1 if your C compiler doesn't accept -c and -o together. */ -#define NO_MINUS_C_MINUS_O 1 - -/* Name of package */ -#define PACKAGE "gettext-runtime" - -/* Define to the address where bug reports for this package should be sent. */ -#define PACKAGE_BUGREPORT "" - -/* Define to the full name of this package. */ -#define PACKAGE_NAME "" - -/* Define to the full name and version of this package. */ -#define PACKAGE_STRING "" - -/* Define to the one symbol short name of this package. */ -#define PACKAGE_TARNAME "" - -/* Define to the version of this package. */ -#define PACKAGE_VERSION "" - -/* Define if exists and defines unusable PRI* macros. */ -/* #undef PRI_MACROS_BROKEN */ - -/* Define if the pthread_in_use() detection is hard. */ -/* #undef PTHREAD_IN_USE_DETECTION_HARD */ - -/* Define to l, ll, u, ul, ull, etc., as suitable for constants of type - 'ptrdiff_t'. */ -#define PTRDIFF_T_SUFFIX - -/* Define this to 1 if strerror is broken. */ -/* #undef REPLACE_STRERROR */ - -/* Define to l, ll, u, ul, ull, etc., as suitable for constants of type - 'sig_atomic_t'. */ -#define SIG_ATOMIC_T_SUFFIX - -/* Define as the maximum value of type 'size_t', if the system doesn't define - it. */ -#if defined(_WIN32) -#define SIZE_MAX (((1UL << 31) - 1) * 2 + 1) -#endif - -/* Define to l, ll, u, ul, ull, etc., as suitable for constants of type - 'size_t'. */ -#define SIZE_T_SUFFIX u - -/* If using the C implementation of alloca, define if you know the - direction of stack growth for your system; otherwise it will be - automatically deduced at runtime. - STACK_DIRECTION > 0 => grows toward higher addresses - STACK_DIRECTION < 0 => grows toward lower addresses - STACK_DIRECTION = 0 => direction of growth unknown */ -/* #undef STACK_DIRECTION */ - -/* Define to 1 if you have the ANSI C header files. */ -#define STDC_HEADERS 1 - -/* Define to 1 if strerror_r returns char *. */ -/* #undef STRERROR_R_CHAR_P */ - -/* Define if the POSIX multithreading library can be used. */ -/* #undef USE_POSIX_THREADS */ - -/* Define if references to the POSIX multithreading library should be made - weak. */ -/* #undef USE_POSIX_THREADS_WEAK */ - -/* Define if the GNU Pth multithreading library can be used. */ -/* #undef USE_PTH_THREADS */ - -/* Define if references to the GNU Pth multithreading library should be made - weak. */ -/* #undef USE_PTH_THREADS_WEAK */ - -/* Define if the old Solaris multithreading library can be used. */ -/* #undef USE_SOLARIS_THREADS */ - -/* Define if references to the old Solaris multithreading library should be - made weak. */ -/* #undef USE_SOLARIS_THREADS_WEAK */ - -/* Define to 1 if you want getc etc. to use unlocked I/O if available. - Unlocked I/O can improve performance in unithreaded apps, but it is not - safe for multithreaded apps. */ -#define USE_UNLOCKED_IO 0 - -/* Define if the Win32 multithreading API can be used. */ -#define USE_WIN32_THREADS 1 - -/* Version number of package */ -#define VERSION "0.17" - -/* Define to l, ll, u, ul, ull, etc., as suitable for constants of type - 'wchar_t'. */ -#define WCHAR_T_SUFFIX - -/* Define to l, ll, u, ul, ull, etc., as suitable for constants of type - 'wint_t'. */ -#define WINT_T_SUFFIX - -/* Enable GNU extensions on systems that have them. */ -#ifndef _GNU_SOURCE -# define _GNU_SOURCE 1 -#endif - -/* Define to 1 if on MINIX. */ -/* #undef _MINIX */ - -/* Define to 2 if the system does not provide POSIX.1 features except with - this defined. */ -/* #undef _POSIX_1_SOURCE */ - -/* Define to 1 if you need to in order for `stat' and other things to work. */ -/* #undef _POSIX_SOURCE */ - -/* Enable extensions on AIX 3, Interix. */ -#ifndef _ALL_SOURCE -# define _ALL_SOURCE 1 -#endif -/* Enable GNU extensions on systems that have them. */ -#ifndef _GNU_SOURCE -# define _GNU_SOURCE 1 -#endif -/* Enable threading extensions on Solaris. */ -#ifndef _POSIX_PTHREAD_SEMANTICS -# define _POSIX_PTHREAD_SEMANTICS 1 -#endif -/* Enable extensions on HP NonStop. */ -#ifndef _TANDEM_SOURCE -# define _TANDEM_SOURCE 1 -#endif -/* Enable general extensions on Solaris. */ -#ifndef __EXTENSIONS__ -# define __EXTENSIONS__ 1 -#endif - - -/* Define to rpl_ if the getopt replacement functions and variables should be - used. */ -#define __GETOPT_PREFIX rpl_ - -/* Define to `__inline__' or `__inline' if that's what the C compiler - calls it, or to nothing if 'inline' is not supported under any name. */ -#ifndef __cplusplus -#define inline __inline -#endif - -/* Define to a type if does not define. */ -/* #undef mbstate_t */ - -/* Define as the type of the result of subtracting two pointers, if the system - doesn't define it. */ -/* #undef ptrdiff_t */ - -/* Define to a replacement function name for realpath(). */ -#define realpath rpl_realpath - -/* Define to the equivalent of the C99 'restrict' keyword, or to - nothing if this is not supported. Do not define if restrict is - supported directly. */ -#define restrict -/* Work around a bug in Sun C++: it does not support _Restrict, even - though the corresponding Sun C compiler does, which causes - "#define restrict _Restrict" in the previous line. Perhaps some future - version of Sun C++ will work with _Restrict; if so, it'll probably - define __RESTRICT, just as Sun C does. */ -#if defined __SUNPRO_CC && !defined __RESTRICT -# define _Restrict -#endif - -/* Define to `unsigned int' if does not define. */ -/* #undef size_t */ - -/* Define as a signed type of the same size as size_t. */ -#ifdef _WIN64 -#define ssize_t __int64 -#elif _WIN32 -#define ssize_t __int32 -#endif - -/* Define to rpl_strnlen if the replacement function should be used. */ -#define strnlen rpl_strnlen - -/* Define to unsigned long or unsigned long long if and - don't define. */ -#ifdef _WIN64 -#define uintmax_t unsigned __int64 -#elif _WIN32 -#define uintmax_t unsigned __int32 -#endif - -#define __libc_lock_t gl_lock_t -#define __libc_lock_define gl_lock_define -#define __libc_lock_define_initialized gl_lock_define_initialized -#define __libc_lock_init gl_lock_init -#define __libc_lock_lock gl_lock_lock -#define __libc_lock_unlock gl_lock_unlock -#define __libc_lock_recursive_t gl_recursive_lock_t -#define __libc_lock_define_recursive gl_recursive_lock_define -#define __libc_lock_define_initialized_recursive gl_recursive_lock_define_initialized -#define __libc_lock_init_recursive gl_recursive_lock_init -#define __libc_lock_lock_recursive gl_recursive_lock_lock -#define __libc_lock_unlock_recursive gl_recursive_lock_unlock -#if 0 -#define glthread_in_use libintl_thread_in_use -#define glthread_lock_init libintl_lock_init -#define glthread_lock_lock libintl_lock_lock -#define glthread_lock_unlock libintl_lock_unlock -#define glthread_lock_destroy libintl_lock_destroy -#define glthread_rwlock_init libintl_rwlock_init -#define glthread_rwlock_rdlock libintl_rwlock_rdlock -#define glthread_rwlock_wrlock libintl_rwlock_wrlock -#define glthread_rwlock_unlock libintl_rwlock_unlock -#define glthread_rwlock_destroy libintl_rwlock_destroy -#define glthread_recursive_lock_init libintl_recursive_lock_init -#define glthread_recursive_lock_lock libintl_recursive_lock_lock -#define glthread_recursive_lock_unlock libintl_recursive_lock_unlock -#define glthread_recursive_lock_destroy libintl_recursive_lock_destroy -#define glthread_once libintl_once -#define glthread_once_call libintl_once_call -#define glthread_once_singlethreaded libintl_once_singlethreaded -#endif - - -/* On Windows, variables that may be in a DLL must be marked specially. */ -#if (defined _MSC_VER && defined _DLL) && !defined IN_RELOCWRAPPER -# define DLL_VARIABLE __declspec (dllimport) -#else -# define DLL_VARIABLE -#endif - -/* Extra OS/2 (emx+gcc) defines. */ -#ifdef __EMX__ -# include "intl/os2compat.h" -#endif - diff --git a/ports/gettext/config.win32.h b/ports/gettext/config.win32.h new file mode 100644 index 000000000..0d3c1d34e --- /dev/null +++ b/ports/gettext/config.win32.h @@ -0,0 +1,677 @@ +/* config.h. Generated from config.h.in by configure. */ +/* config.h.in. Generated from configure.ac by autoheader. */ + +#ifndef WIN32 +# define _GL_INLINE_HEADER_BEGIN +# define _GL_INLINE_HEADER_END +# define _GL_INLINE static inline +#endif + +/* Disable function deprecated warnings */ +#define _CRT_NONSTDC_NO_WARNINGS + +/* Define to the number of bits in type 'ptrdiff_t'. */ +#define BITSIZEOF_PTRDIFF_T sizeof(ptrdiff_t) + +/* Define to the number of bits in type 'sig_atomic_t'. */ +#define BITSIZEOF_SIG_ATOMIC_T 32 + +/* Define to the number of bits in type 'size_t'. */ +#define BITSIZEOF_SIZE_T sizeof(size_t) + +/* Define to the number of bits in type 'wchar_t'. */ +#define BITSIZEOF_WCHAR_T 16 + +/* Define to the number of bits in type 'wint_t'. */ +#define BITSIZEOF_WINT_T 16 + +/* Define to one of `_getb67', `GETB67', `getb67' for Cray-2 and Cray-YMP + systems. This function is required for `alloca.c' support on those systems. + */ +/* #undef CRAY_STACKSEG_END */ + +/* Define if mono is the preferred C# implementation. */ +/* #undef CSHARP_CHOICE_MONO */ + +/* Define if pnet is the preferred C# implementation. */ +/* #undef CSHARP_CHOICE_PNET */ + +/* Define to 1 if using `alloca.c'. */ +/* #undef C_ALLOCA */ + +/* Define to 1 if translation of program messages to the user's native + language is requested. */ +#define ENABLE_NLS 1 + +/* Define to 1 if the package shall run at any location in the filesystem. */ +#define ENABLE_RELOCATABLE 1 + +/* Define to 1 when using the gnulib module fwriteerror. */ +#define GNULIB_FWRITEERROR 1 + +/* Define to 1 if you have `alloca', as a function or macro. */ +#define HAVE_ALLOCA 1 + +/* Define to 1 if you have and it should be used (not on Ultrix). + */ +/* #undef HAVE_ALLOCA_H */ + +/* Define to 1 if you have the `argz_count' function. */ +/* #undef HAVE_ARGZ_COUNT */ + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_ARGZ_H */ + +/* Define to 1 if you have the `argz_next' function. */ +/* #undef HAVE_ARGZ_NEXT */ + +/* Define to 1 if you have the `argz_stringify' function. */ +/* #undef HAVE_ARGZ_STRINGIFY */ + +/* Define to 1 if you have the `asprintf' function. */ +/* #undef HAVE_ASPRINTF */ + +/* Define to 1 if you have the `atexit' function. */ +#define HAVE_ATEXIT 1 + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_BP_SYM_H */ + +/* Define to 1 if the compiler understands __builtin_expect. */ +/* #undef HAVE_BUILTIN_EXPECT */ + +/* Define to 1 if you have the `canonicalize_file_name' function. */ +/* #undef HAVE_CANONICALIZE_FILE_NAME */ + +/* Define to 1 if you have the MacOS X function CFLocaleCopyCurrent in the + CoreFoundation framework. */ +/* #undef HAVE_CFLOCALECOPYCURRENT */ + +/* Define to 1 if you have the MacOS X function CFPreferencesCopyAppValue in + the CoreFoundation framework. */ +/* #undef HAVE_CFPREFERENCESCOPYAPPVALUE */ + +/* Define if the GNU dcgettext() function is already present or preinstalled. + */ +/* #undef HAVE_DCGETTEXT */ + +/* Define to 1 if you have the declaration of `canonicalize_file_name', and to + 0 if you don't. */ +#define HAVE_DECL_CANONICALIZE_FILE_NAME 0 + +/* Define to 1 if you have the declaration of `clearerr_unlocked', and to 0 if + you don't. */ +#define HAVE_DECL_CLEARERR_UNLOCKED 0 + +/* Define to 1 if you have the declaration of `feof_unlocked', and to 0 if you + don't. */ +#define HAVE_DECL_FEOF_UNLOCKED 0 + +/* Define to 1 if you have the declaration of `ferror_unlocked', and to 0 if + you don't. */ +#define HAVE_DECL_FERROR_UNLOCKED 0 + +/* Define to 1 if you have the declaration of `fflush_unlocked', and to 0 if + you don't. */ +#define HAVE_DECL_FFLUSH_UNLOCKED 0 + +/* Define to 1 if you have the declaration of `fgets_unlocked', and to 0 if + you don't. */ +#define HAVE_DECL_FGETS_UNLOCKED 0 + +/* Define to 1 if you have the declaration of `fputc_unlocked', and to 0 if + you don't. */ +#define HAVE_DECL_FPUTC_UNLOCKED 0 + +/* Define to 1 if you have the declaration of `fputs_unlocked', and to 0 if + you don't. */ +#define HAVE_DECL_FPUTS_UNLOCKED 0 + +/* Define to 1 if you have the declaration of `fread_unlocked', and to 0 if + you don't. */ +#define HAVE_DECL_FREAD_UNLOCKED 0 + +/* Define to 1 if you have the declaration of `fwrite_unlocked', and to 0 if + you don't. */ +#define HAVE_DECL_FWRITE_UNLOCKED 0 + +/* Define to 1 if you have the declaration of `getchar_unlocked', and to 0 if + you don't. */ +#define HAVE_DECL_GETCHAR_UNLOCKED 0 + +/* Define to 1 if you have the declaration of `getc_unlocked', and to 0 if you + don't. */ +#define HAVE_DECL_GETC_UNLOCKED 0 + +/* Define to 1 if you have the declaration of `getenv', and to 0 if you don't. + */ +#define HAVE_DECL_GETENV 1 + +/* Define to 1 if you have the declaration of `putchar_unlocked', and to 0 if + you don't. */ +#define HAVE_DECL_PUTCHAR_UNLOCKED 0 + +/* Define to 1 if you have the declaration of `putc_unlocked', and to 0 if you + don't. */ +#define HAVE_DECL_PUTC_UNLOCKED 0 + +/* Define to 1 if you have the declaration of `strdup', and to 0 if you don't. + */ +#define HAVE_DECL_STRDUP 1 + +/* Define to 1 if you have the declaration of `strerror', and to 0 if you + don't. */ +/* #undef HAVE_DECL_STRERROR */ + +/* Define to 1 if you have the declaration of `strerror_r', and to 0 if you + don't. */ +#define HAVE_DECL_STRERROR_R 0 + +/* Define to 1 if you have the declaration of `strnlen', and to 0 if you + don't. */ +#define HAVE_DECL_STRNLEN 0 + +/* Define to 1 if you have the declaration of `wcwidth', and to 0 if you + don't. */ +#define HAVE_DECL_WCWIDTH 0 + +/* Define to 1 if you have the declaration of `_snprintf', and to 0 if you + don't. */ +#define HAVE_DECL__SNPRINTF 1 + +/* Define to 1 if you have the declaration of `_snwprintf', and to 0 if you + don't. */ +#define HAVE_DECL__SNWPRINTF 1 + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_DLFCN_H */ + +/* Define if you have the declaration of environ. */ +#define HAVE_ENVIRON_DECL 1 + +/* Define to 1 if you have the `fwprintf' function. */ +#define HAVE_FWPRINTF 1 + +/* Define to 1 if you have the `getcwd' function. */ +#define HAVE_GETCWD 1 + +/* Define to 1 if you have the `getegid' function. */ +/* #undef HAVE_GETEGID */ + +/* Define to 1 if you have the `geteuid' function. */ +/* #undef HAVE_GETEUID */ + +/* Define to 1 if you have the `getgid' function. */ +/* #undef HAVE_GETGID */ + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_GETOPT_H */ + +/* Define to 1 if you have the `getopt_long_only' function. */ +/* #undef HAVE_GETOPT_LONG_ONLY */ + +/* Define to 1 if you have the `getpagesize' function. */ +/* #undef HAVE_GETPAGESIZE */ + +/* Define if the GNU gettext() function is already present or preinstalled. */ +/* #undef HAVE_GETTEXT */ + +/* Define to 1 if you have the `getuid' function. */ +/* #undef HAVE_GETUID */ + +/* Define if you have the iconv() function and it works. */ +/* #undef HAVE_ICONV */ + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_ICONV_H */ + +/* Define if your compiler supports the #include_next directive. */ +/* #undef HAVE_INCLUDE_NEXT */ + +/* Define if you have the 'intmax_t' type in or . */ +/* #undef HAVE_INTMAX_T */ + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_INTTYPES_H */ + +/* Define if exists, doesn't clash with , and + declares uintmax_t. */ +/* #undef HAVE_INTTYPES_H_WITH_UINTMAX */ + +/* Define to 1 if you have the `iswcntrl' function. */ +#define HAVE_ISWCNTRL 1 + +/* Define if you have and nl_langinfo(CODESET). */ +/* #undef HAVE_LANGINFO_CODESET */ + +/* Define if your file defines LC_MESSAGES. */ +/* #undef HAVE_LC_MESSAGES */ + +/* Define to 1 if you have the header file. */ +#define HAVE_LIMITS_H 1 + +/* Define to 1 if the system has the type `long long int'. */ +/* #undef HAVE_LONG_LONG_INT */ + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_MACH_O_DYLD_H */ + +/* Define if the 'malloc' function is POSIX compliant. */ +/* #undef HAVE_MALLOC_POSIX */ + +/* Define to 1 if mbrtowc and mbstate_t are properly declared. */ +/* #undef HAVE_MBRTOWC */ + +/* Define to 1 if declares mbstate_t. */ +#define HAVE_MBSTATE_T 1 + +/* Define to 1 if you have the `memchr' function. */ +#define HAVE_MEMCHR 1 + +/* Define to 1 if you have the `memmove' function. */ +#define HAVE_MEMMOVE 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_MEMORY_H 1 + +/* Define to 1 if you have the `mempcpy' function. */ +/* #undef HAVE_MEMPCPY */ + +/* Define to 1 if you have a working `mmap' system call. */ +/* #undef HAVE_MMAP */ + +/* Define to 1 if you have the `munmap' function. */ +/* #undef HAVE_MUNMAP */ + +/* Define if you have and it defines the NL_LOCALE_NAME macro if + _GNU_SOURCE is defined. */ +/* #undef HAVE_NL_LOCALE_NAME */ + +/* Define if your printf() function supports format strings with positions. */ +/* #undef HAVE_POSIX_PRINTF */ + +/* Define if the defines PTHREAD_MUTEX_RECURSIVE. */ +/* #undef HAVE_PTHREAD_MUTEX_RECURSIVE */ + +/* Define if the POSIX multithreading library has read/write locks. */ +/* #undef HAVE_PTHREAD_RWLOCK */ + +/* Define to 1 if you have the `putenv' function. */ +#define HAVE_PUTENV 1 + +/* Define to 1 if you have the `readlink' function. */ +/* #undef HAVE_READLINK */ + +/* Define to 1 if you have the header file. */ +#define HAVE_SEARCH_H 1 + +/* Define to 1 if you have the `setenv' function. */ +/* #undef HAVE_SETENV */ + +/* Define to 1 if you have the `setlocale' function. */ +#define HAVE_SETLOCALE 1 + +/* Define to 1 if 'sig_atomic_t' is a signed integer type. */ +#define HAVE_SIGNED_SIG_ATOMIC_T 1 + +/* Define to 1 if 'wchar_t' is a signed integer type. */ +/* #undef HAVE_SIGNED_WCHAR_T */ + +/* Define to 1 if 'wint_t' is a signed integer type. */ +/* #undef HAVE_SIGNED_WINT_T */ + +/* Define to 1 if you have the `snprintf' function. */ +/* #undef HAVE_SNPRINTF */ + +/* Define to 1 if stdbool.h conforms to C99. */ +/* #undef HAVE_STDBOOL_H */ + +/* Define to 1 if you have the header file. */ +#define HAVE_STDDEF_H 1 + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_STDINT_H */ + +/* Define if exists, doesn't clash with , and declares + uintmax_t. */ +/* #undef HAVE_STDINT_H_WITH_UINTMAX */ + +/* Define to 1 if you have the header file. */ +#define HAVE_STDLIB_H 1 + +/* Define to 1 if you have the `stpcpy' function. */ +/* #undef HAVE_STPCPY */ + +/* Define to 1 if you have the `strcasecmp' function. */ +/* #undef HAVE_STRCASECMP */ + +/* Define to 1 if you have the `strdup' function. */ +#define HAVE_STRDUP 1 + +/* Define to 1 if you have the `strerror_r' function. */ +/* #undef HAVE_STRERROR_R */ + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_STRINGS_H */ + +/* Define to 1 if you have the header file. */ +#define HAVE_STRING_H 1 + +/* Define to 1 if you have the `strtol' function. */ +#define HAVE_STRTOL 1 + +/* Define to 1 if you have the `strtoul' function. */ +#define HAVE_STRTOUL 1 + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_SYS_BITYPES_H */ + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_SYS_INTTYPES_H */ + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_SYS_PARAM_H */ + +/* Define to 1 if you have the header file. */ +#define HAVE_SYS_STAT_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_SYS_TYPES_H 1 + +/* Define to 1 if you have the `tsearch' function. */ +/* #undef HAVE_TSEARCH */ + +/* Define if you have the 'uintmax_t' type in or . */ +/* #undef HAVE_UINTMAX_T */ + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_UNISTD_H */ + +/* Define to 1 if the system has the type `unsigned long long int'. */ +/* #undef HAVE_UNSIGNED_LONG_LONG_INT */ + +/* Define to 1 or 0, depending whether the compiler supports simple visibility + declarations. */ +#define HAVE_VISIBILITY 0 + +/* Define to 1 if you have the header file. */ +#define HAVE_WCHAR_H 1 + +/* Define if you have the 'wchar_t' type. */ +#define HAVE_WCHAR_T 1 + +/* Define to 1 if you have the `wcslen' function. */ +#define HAVE_WCSLEN 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_WCTYPE_H 1 + +/* Define to 1 if you have the `wcwidth' function. */ +/* #undef HAVE_WCWIDTH */ + +/* Define if you have the 'wint_t' type. */ +#define HAVE_WINT_T 1 + +/* Define to 1 if the system has the type `_Bool'. */ +/* #undef HAVE__BOOL */ + +/* Define to 1 if you have the `_NSGetExecutablePath' function. */ +/* #undef HAVE__NSGETEXECUTABLEPATH */ + +/* Define to 1 if you have the `__fsetlocking' function. */ +/* #undef HAVE___FSETLOCKING */ + +/* Define as const if the declaration of iconv() needs const. */ +/* #undef ICONV_CONST */ + +/* Define to a symbolic name denoting the flavor of iconv_open() + implementation. */ +/* #undef ICONV_FLAVOR */ + +/* Define to the value of ${prefix}, as a string. */ +/* #define INSTALLPREFIX "/usr/local" */ + +/* Define if integer division by zero raises signal SIGFPE. */ +#define INTDIV0_RAISES_SIGFPE 0 + +/* If malloc(0) is != NULL, define this to 1. Otherwise define this to 0. */ +#define MALLOC_0_IS_NONNULL 1 + +/* Define to 1 if your C compiler doesn't accept -c and -o together. */ +#define NO_MINUS_C_MINUS_O 1 + +/* Name of package */ +#define PACKAGE "gettext-runtime" + +/* Define to the address where bug reports for this package should be sent. */ +#define PACKAGE_BUGREPORT "" + +/* Define to the full name of this package. */ +#define PACKAGE_NAME "" + +/* Define to the full name and version of this package. */ +#define PACKAGE_STRING "" + +/* Define to the one symbol short name of this package. */ +#define PACKAGE_TARNAME "" + +/* Define to the version of this package. */ +#define PACKAGE_VERSION "" + +/* Define if exists and defines unusable PRI* macros. */ +/* #undef PRI_MACROS_BROKEN */ + +/* Define if the pthread_in_use() detection is hard. */ +/* #undef PTHREAD_IN_USE_DETECTION_HARD */ + +/* Define to l, ll, u, ul, ull, etc., as suitable for constants of type + 'ptrdiff_t'. */ +#define PTRDIFF_T_SUFFIX + +/* Define this to 1 if strerror is broken. */ +/* #undef REPLACE_STRERROR */ + +/* Define to l, ll, u, ul, ull, etc., as suitable for constants of type + 'sig_atomic_t'. */ +#define SIG_ATOMIC_T_SUFFIX + +/* Define as the maximum value of type 'size_t', if the system doesn't define + it. */ +#if defined(_WIN32) +#define SIZE_MAX (((1UL << 31) - 1) * 2 + 1) +#endif + +/* Define to l, ll, u, ul, ull, etc., as suitable for constants of type + 'size_t'. */ +#define SIZE_T_SUFFIX u + +/* If using the C implementation of alloca, define if you know the + direction of stack growth for your system; otherwise it will be + automatically deduced at runtime. + STACK_DIRECTION > 0 => grows toward higher addresses + STACK_DIRECTION < 0 => grows toward lower addresses + STACK_DIRECTION = 0 => direction of growth unknown */ +/* #undef STACK_DIRECTION */ + +/* Define to 1 if you have the ANSI C header files. */ +#define STDC_HEADERS 1 + +/* Define to 1 if strerror_r returns char *. */ +/* #undef STRERROR_R_CHAR_P */ + +/* Define if the POSIX multithreading library can be used. */ +/* #undef USE_POSIX_THREADS */ + +/* Define if references to the POSIX multithreading library should be made + weak. */ +/* #undef USE_POSIX_THREADS_WEAK */ + +/* Define if the GNU Pth multithreading library can be used. */ +/* #undef USE_PTH_THREADS */ + +/* Define if references to the GNU Pth multithreading library should be made + weak. */ +/* #undef USE_PTH_THREADS_WEAK */ + +/* Define if the old Solaris multithreading library can be used. */ +/* #undef USE_SOLARIS_THREADS */ + +/* Define if references to the old Solaris multithreading library should be + made weak. */ +/* #undef USE_SOLARIS_THREADS_WEAK */ + +/* Define to 1 if you want getc etc. to use unlocked I/O if available. + Unlocked I/O can improve performance in unithreaded apps, but it is not + safe for multithreaded apps. */ +#define USE_UNLOCKED_IO 0 + +/* Define if the Win32 multithreading API can be used. */ +#define USE_WIN32_THREADS 1 + +/* Version number of package */ +#define VERSION "0.17" + +/* Define to l, ll, u, ul, ull, etc., as suitable for constants of type + 'wchar_t'. */ +#define WCHAR_T_SUFFIX + +/* Define to l, ll, u, ul, ull, etc., as suitable for constants of type + 'wint_t'. */ +#define WINT_T_SUFFIX + +/* Enable GNU extensions on systems that have them. */ +#ifndef _GNU_SOURCE +# define _GNU_SOURCE 1 +#endif + +/* Define to 1 if on MINIX. */ +/* #undef _MINIX */ + +/* Define to 2 if the system does not provide POSIX.1 features except with + this defined. */ +/* #undef _POSIX_1_SOURCE */ + +/* Define to 1 if you need to in order for `stat' and other things to work. */ +/* #undef _POSIX_SOURCE */ + +/* Enable extensions on AIX 3, Interix. */ +#ifndef _ALL_SOURCE +# define _ALL_SOURCE 1 +#endif +/* Enable GNU extensions on systems that have them. */ +#ifndef _GNU_SOURCE +# define _GNU_SOURCE 1 +#endif +/* Enable threading extensions on Solaris. */ +#ifndef _POSIX_PTHREAD_SEMANTICS +# define _POSIX_PTHREAD_SEMANTICS 1 +#endif +/* Enable extensions on HP NonStop. */ +#ifndef _TANDEM_SOURCE +# define _TANDEM_SOURCE 1 +#endif +/* Enable general extensions on Solaris. */ +#ifndef __EXTENSIONS__ +# define __EXTENSIONS__ 1 +#endif + + +/* Define to rpl_ if the getopt replacement functions and variables should be + used. */ +#define __GETOPT_PREFIX rpl_ + +/* Define to `__inline__' or `__inline' if that's what the C compiler + calls it, or to nothing if 'inline' is not supported under any name. */ +#ifndef __cplusplus +#define inline __inline +#endif + +/* Define to a type if does not define. */ +/* #undef mbstate_t */ + +/* Define as the type of the result of subtracting two pointers, if the system + doesn't define it. */ +/* #undef ptrdiff_t */ + +/* Define to a replacement function name for realpath(). */ +#define realpath rpl_realpath + +/* Define to the equivalent of the C99 'restrict' keyword, or to + nothing if this is not supported. Do not define if restrict is + supported directly. */ +#define restrict +/* Work around a bug in Sun C++: it does not support _Restrict, even + though the corresponding Sun C compiler does, which causes + "#define restrict _Restrict" in the previous line. Perhaps some future + version of Sun C++ will work with _Restrict; if so, it'll probably + define __RESTRICT, just as Sun C does. */ +#if defined __SUNPRO_CC && !defined __RESTRICT +# define _Restrict +#endif + +/* Define to `unsigned int' if does not define. */ +/* #undef size_t */ + +/* Define as a signed type of the same size as size_t. */ +#ifdef _WIN64 +#define ssize_t __int64 +#elif _WIN32 +#define ssize_t __int32 +#endif + +/* Define to rpl_strnlen if the replacement function should be used. */ +#define strnlen rpl_strnlen + +/* Define to unsigned long or unsigned long long if and + don't define. */ +#ifdef _WIN64 +#define uintmax_t unsigned __int64 +#elif _WIN32 +#define uintmax_t unsigned __int32 +#endif + +#define __libc_lock_t gl_lock_t +#define __libc_lock_define gl_lock_define +#define __libc_lock_define_initialized gl_lock_define_initialized +#define __libc_lock_init gl_lock_init +#define __libc_lock_lock gl_lock_lock +#define __libc_lock_unlock gl_lock_unlock +#define __libc_lock_recursive_t gl_recursive_lock_t +#define __libc_lock_define_recursive gl_recursive_lock_define +#define __libc_lock_define_initialized_recursive gl_recursive_lock_define_initialized +#define __libc_lock_init_recursive gl_recursive_lock_init +#define __libc_lock_lock_recursive gl_recursive_lock_lock +#define __libc_lock_unlock_recursive gl_recursive_lock_unlock +#if 0 +#define glthread_in_use libintl_thread_in_use +#define glthread_lock_init libintl_lock_init +#define glthread_lock_lock libintl_lock_lock +#define glthread_lock_unlock libintl_lock_unlock +#define glthread_lock_destroy libintl_lock_destroy +#define glthread_rwlock_init libintl_rwlock_init +#define glthread_rwlock_rdlock libintl_rwlock_rdlock +#define glthread_rwlock_wrlock libintl_rwlock_wrlock +#define glthread_rwlock_unlock libintl_rwlock_unlock +#define glthread_rwlock_destroy libintl_rwlock_destroy +#define glthread_recursive_lock_init libintl_recursive_lock_init +#define glthread_recursive_lock_lock libintl_recursive_lock_lock +#define glthread_recursive_lock_unlock libintl_recursive_lock_unlock +#define glthread_recursive_lock_destroy libintl_recursive_lock_destroy +#define glthread_once libintl_once +#define glthread_once_call libintl_once_call +#define glthread_once_singlethreaded libintl_once_singlethreaded +#endif + + +/* On Windows, variables that may be in a DLL must be marked specially. */ +#if (defined _MSC_VER && defined _DLL) && !defined IN_RELOCWRAPPER +# define DLL_VARIABLE __declspec (dllimport) +#else +# define DLL_VARIABLE +#endif + +/* Extra OS/2 (emx+gcc) defines. */ +#ifdef __EMX__ +# include "intl/os2compat.h" +#endif + diff --git a/ports/gettext/libgnuintl.h b/ports/gettext/libgnuintl.h deleted file mode 100644 index 440da4d59..000000000 --- a/ports/gettext/libgnuintl.h +++ /dev/null @@ -1,423 +0,0 @@ -/* Message catalogs for internationalization. -Copyright (C) 1995-1997, 2000-2007 Free Software Foundation, Inc. - -This program is free software; you can redistribute it and/or modify it -under the terms of the GNU Library General Public License as published -by the Free Software Foundation; either version 2, or (at your option) -any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -Library General Public License for more details. - -You should have received a copy of the GNU Library General Public -License along with this program; if not, write to the Free Software -Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, -USA. */ - -#ifndef _LIBINTL_H -#define _LIBINTL_H 1 - -#if defined(_WIN32) && defined(libintl_EXPORTS) -#define LIBINTL_DLL_EXPORTED __declspec(dllexport) -#else -#define LIBINTL_DLL_EXPORTED -#endif - -#include - -/* The LC_MESSAGES locale category is the category used by the functions -gettext() and dgettext(). It is specified in POSIX, but not in ANSI C. -On systems that don't define it, use an arbitrary value instead. -On Solaris, defines __LOCALE_H (or _LOCALE_H in Solaris 2.5) -then includes (i.e. this file!) and then only defines -LC_MESSAGES. To avoid a redefinition warning, don't define LC_MESSAGES -in this case. */ -#if !defined LC_MESSAGES && !(defined __LOCALE_H || (defined _LOCALE_H && defined __sun)) -# define LC_MESSAGES 1729 -#endif - -/* We define an additional symbol to signal that we use the GNU -implementation of gettext. */ -#define __USE_GNU_GETTEXT 1 - -/* Provide information about the supported file formats. Returns the -maximum minor revision number supported for a given major revision. */ -#define __GNU_GETTEXT_SUPPORTED_REVISION(major) \ - ((major) == 0 || (major) == 1 ? 1 : -1) - -/* Resolve a platform specific conflict on DJGPP. GNU gettext takes -precedence over _conio_gettext. */ -#ifdef __DJGPP__ -# undef gettext -#endif - -#ifdef __cplusplus -extern "C" { -#endif - - - /* Version number: (major<<16) + (minor<<8) + subminor */ -#define LIBINTL_VERSION 0x001100 - extern LIBINTL_DLL_EXPORTED int libintl_version; - - - /* We redirect the functions to those prefixed with "libintl_". This is - necessary, because some systems define gettext/textdomain/... in the C - library (namely, Solaris 2.4 and newer, and GNU libc 2.0 and newer). - If we used the unprefixed names, there would be cases where the - definition in the C library would override the one in the libintl.so - shared library. Recall that on ELF systems, the symbols are looked - up in the following order: - 1. in the executable, - 2. in the shared libraries specified on the link command line, in order, - 3. in the dependencies of the shared libraries specified on the link - command line, - 4. in the dlopen()ed shared libraries, in the order in which they were - dlopen()ed. - The definition in the C library would override the one in libintl.so if - either - * -lc is given on the link command line and -lintl isn't, or - * -lc is given on the link command line before -lintl, or - * libintl.so is a dependency of a dlopen()ed shared library but not - linked to the executable at link time. - Since Solaris gettext() behaves differently than GNU gettext(), this - would be unacceptable. - - The redirection happens by default through macros in C, so that &gettext - is independent of the compilation unit, but through inline functions in - C++, in order not to interfere with the name mangling of class fields or - class methods called 'gettext'. */ - - /* The user can define _INTL_REDIRECT_INLINE or _INTL_REDIRECT_MACROS. - If he doesn't, we choose the method. A third possible method is - _INTL_REDIRECT_ASM, supported only by GCC. */ -#if !(defined _INTL_REDIRECT_INLINE || defined _INTL_REDIRECT_MACROS) -# if __GNUC__ >= 2 && !(__APPLE_CC__ > 1) && !defined __MINGW32__ && !(__GNUC__ == 2 && defined _AIX) && (defined __STDC__ || defined __cplusplus) -# define _INTL_REDIRECT_ASM -# else -# ifdef __cplusplus -# define _INTL_REDIRECT_INLINE -# else -# define _INTL_REDIRECT_MACROS -# endif -# endif -#endif - /* Auxiliary macros. */ -#ifdef _INTL_REDIRECT_ASM -# define _INTL_ASM(cname) __asm__ (_INTL_ASMNAME (__USER_LABEL_PREFIX__, #cname)) -# define _INTL_ASMNAME(prefix,cnamestring) _INTL_STRINGIFY (prefix) cnamestring -# define _INTL_STRINGIFY(prefix) #prefix -#else -# define _INTL_ASM(cname) -#endif - - /* _INTL_MAY_RETURN_STRING_ARG(n) declares that the given function may return - its n-th argument literally. This enables GCC to warn for example about - printf (gettext ("foo %y")). */ -#if __GNUC__ >= 3 && !(__APPLE_CC__ > 1 && defined __cplusplus) -# define _INTL_MAY_RETURN_STRING_ARG(n) __attribute__ ((__format_arg__ (n))) -#else -# define _INTL_MAY_RETURN_STRING_ARG(n) -#endif - - /* Look up MSGID in the current default message catalog for the current - LC_MESSAGES locale. If not found, returns MSGID itself (the default - text). */ -#ifdef _INTL_REDIRECT_INLINE - extern LIBINTL_DLL_EXPORTED char *libintl_gettext(const char *__msgid) - _INTL_MAY_RETURN_STRING_ARG(1); - static inline char *gettext(const char *__msgid) - { - return libintl_gettext(__msgid); - } -#else -#ifdef _INTL_REDIRECT_MACROS -# define gettext libintl_gettext -#endif - extern LIBINTL_DLL_EXPORTED char *gettext(const char *__msgid) - _INTL_ASM(libintl_gettext) - _INTL_MAY_RETURN_STRING_ARG(1); -#endif - - /* Look up MSGID in the DOMAINNAME message catalog for the current - LC_MESSAGES locale. */ -#ifdef _INTL_REDIRECT_INLINE - extern LIBINTL_DLL_EXPORTED char *libintl_dgettext(const char *__domainname, const char *__msgid) - _INTL_MAY_RETURN_STRING_ARG(2); - static inline char *dgettext(const char *__domainname, const char *__msgid) - { - return libintl_dgettext(__domainname, __msgid); - } -#else -#ifdef _INTL_REDIRECT_MACROS -# define dgettext libintl_dgettext -#endif - extern LIBINTL_DLL_EXPORTED char *dgettext(const char *__domainname, const char *__msgid) - _INTL_ASM(libintl_dgettext) - _INTL_MAY_RETURN_STRING_ARG(2); -#endif - - /* Look up MSGID in the DOMAINNAME message catalog for the current CATEGORY - locale. */ -#ifdef _INTL_REDIRECT_INLINE - extern LIBINTL_DLL_EXPORTED char *libintl_dcgettext(const char *__domainname, const char *__msgid, - int __category) - _INTL_MAY_RETURN_STRING_ARG(2); - static inline char *dcgettext(const char *__domainname, const char *__msgid, - int __category) - { - return libintl_dcgettext(__domainname, __msgid, __category); - } -#else -#ifdef _INTL_REDIRECT_MACROS -# define dcgettext libintl_dcgettext -#endif - extern LIBINTL_DLL_EXPORTED char *dcgettext(const char *__domainname, const char *__msgid, - int __category) - _INTL_ASM(libintl_dcgettext) - _INTL_MAY_RETURN_STRING_ARG(2); -#endif - - - /* Similar to `gettext' but select the plural form corresponding to the - number N. */ -#ifdef _INTL_REDIRECT_INLINE - extern LIBINTL_DLL_EXPORTED char *libintl_ngettext(const char *__msgid1, const char *__msgid2, - unsigned long int __n) - _INTL_MAY_RETURN_STRING_ARG(1) _INTL_MAY_RETURN_STRING_ARG(2); - static inline char *ngettext(const char *__msgid1, const char *__msgid2, - unsigned long int __n) - { - return libintl_ngettext(__msgid1, __msgid2, __n); - } -#else -#ifdef _INTL_REDIRECT_MACROS -# define ngettext libintl_ngettext -#endif - extern LIBINTL_DLL_EXPORTED char *ngettext(const char *__msgid1, const char *__msgid2, - unsigned long int __n) - _INTL_ASM(libintl_ngettext) - _INTL_MAY_RETURN_STRING_ARG(1) _INTL_MAY_RETURN_STRING_ARG(2); -#endif - - /* Similar to `dgettext' but select the plural form corresponding to the - number N. */ -#ifdef _INTL_REDIRECT_INLINE - extern LIBINTL_DLL_EXPORTED char *libintl_dngettext(const char *__domainname, const char *__msgid1, - const char *__msgid2, unsigned long int __n) - _INTL_MAY_RETURN_STRING_ARG(2) _INTL_MAY_RETURN_STRING_ARG(3); - static inline char *dngettext(const char *__domainname, const char *__msgid1, - const char *__msgid2, unsigned long int __n) - { - return libintl_dngettext(__domainname, __msgid1, __msgid2, __n); - } -#else -#ifdef _INTL_REDIRECT_MACROS -# define dngettext libintl_dngettext -#endif - extern LIBINTL_DLL_EXPORTED char *dngettext(const char *__domainname, - const char *__msgid1, const char *__msgid2, - unsigned long int __n) - _INTL_ASM(libintl_dngettext) - _INTL_MAY_RETURN_STRING_ARG(2) _INTL_MAY_RETURN_STRING_ARG(3); -#endif - - /* Similar to `dcgettext' but select the plural form corresponding to the - number N. */ -#ifdef _INTL_REDIRECT_INLINE - extern LIBINTL_DLL_EXPORTED char *libintl_dcngettext(const char *__domainname, - const char *__msgid1, const char *__msgid2, - unsigned long int __n, int __category) - _INTL_MAY_RETURN_STRING_ARG(2) _INTL_MAY_RETURN_STRING_ARG(3); - static inline char *dcngettext(const char *__domainname, - const char *__msgid1, const char *__msgid2, - unsigned long int __n, int __category) - { - return libintl_dcngettext(__domainname, __msgid1, __msgid2, __n, __category); - } -#else -#ifdef _INTL_REDIRECT_MACROS -# define dcngettext libintl_dcngettext -#endif - extern LIBINTL_DLL_EXPORTED char *dcngettext(const char *__domainname, - const char *__msgid1, const char *__msgid2, - unsigned long int __n, int __category) - _INTL_ASM(libintl_dcngettext) - _INTL_MAY_RETURN_STRING_ARG(2) _INTL_MAY_RETURN_STRING_ARG(3); -#endif - - - - /* Set the current default message catalog to DOMAINNAME. - If DOMAINNAME is null, return the current default. - If DOMAINNAME is "", reset to the default of "messages". */ -#ifdef _INTL_REDIRECT_INLINE - extern LIBINTL_DLL_EXPORTED char *libintl_textdomain(const char *__domainname); - static inline char *textdomain(const char *__domainname) - { - return libintl_textdomain(__domainname); - } -#else -#ifdef _INTL_REDIRECT_MACROS -# define textdomain libintl_textdomain -#endif - extern LIBINTL_DLL_EXPORTED char *textdomain(const char *__domainname) - _INTL_ASM(libintl_textdomain); -#endif - - /* Specify that the DOMAINNAME message catalog will be found - in DIRNAME rather than in the system locale data base. */ -#ifdef _INTL_REDIRECT_INLINE - extern LIBINTL_DLL_EXPORTED char *libintl_bindtextdomain(const char *__domainname, - const char *__dirname); - static inline char *bindtextdomain(const char *__domainname, - const char *__dirname) - { - return libintl_bindtextdomain(__domainname, __dirname); - } -#else -#ifdef _INTL_REDIRECT_MACROS -# define bindtextdomain libintl_bindtextdomain -#endif - extern LIBINTL_DLL_EXPORTED char *bindtextdomain(const char *__domainname, const char *__dirname) - _INTL_ASM(libintl_bindtextdomain); -#endif - - /* Specify the character encoding in which the messages from the - DOMAINNAME message catalog will be returned. */ -#ifdef _INTL_REDIRECT_INLINE - extern LIBINTL_DLL_EXPORTED char *libintl_bind_textdomain_codeset(const char *__domainname, - const char *__codeset); - static inline char *bind_textdomain_codeset(const char *__domainname, - const char *__codeset) - { - return libintl_bind_textdomain_codeset(__domainname, __codeset); - } -#else -#ifdef _INTL_REDIRECT_MACROS -# define bind_textdomain_codeset libintl_bind_textdomain_codeset -#endif - extern LIBINTL_DLL_EXPORTED char *bind_textdomain_codeset(const char *__domainname, - const char *__codeset) - _INTL_ASM(libintl_bind_textdomain_codeset); -#endif - - - - /* Support for format strings with positions in *printf(), following the - POSIX/XSI specification. - Note: These replacements for the *printf() functions are visible only - in source files that #include or #include "gettext.h". - Packages that use *printf() in source files that don't refer to _() - or gettext() but for which the format string could be the return value - of _() or gettext() need to add this #include. Oh well. */ - -#if !0 - -#include -#include - - /* Get va_list. */ -#if __STDC__ || defined __cplusplus || defined _MSC_VER -# include -#else -# include -#endif - -#undef fprintf -#define fprintf libintl_fprintf - extern LIBINTL_DLL_EXPORTED int fprintf(FILE *, const char *, ...); -#undef vfprintf -#define vfprintf libintl_vfprintf - extern LIBINTL_DLL_EXPORTED int vfprintf(FILE *, const char *, va_list); - -#undef printf -#if defined __NetBSD__ || defined __BEOS__ || defined __CYGWIN__ || defined __MINGW32__ - /* Don't break __attribute__((format(printf,M,N))). - This redefinition is only possible because the libc in NetBSD, Cygwin, - mingw does not have a function __printf__. */ -# define libintl_printf __printf__ -#endif -#define printf libintl_printf - extern LIBINTL_DLL_EXPORTED int printf(const char *, ...); -#undef vprintf -#define vprintf libintl_vprintf - extern LIBINTL_DLL_EXPORTED int vprintf(const char *, va_list); - -#undef sprintf -#define sprintf libintl_sprintf - extern LIBINTL_DLL_EXPORTED int sprintf(char *, const char *, ...); -#undef vsprintf -#define vsprintf libintl_vsprintf - extern LIBINTL_DLL_EXPORTED int vsprintf(char *, const char *, va_list); - -#if 0 - -#undef snprintf -#define snprintf libintl_snprintf - extern LIBINTL_DLL_EXPORTED int snprintf(char *, size_t, const char *, ...); -#undef vsnprintf -#define vsnprintf libintl_vsnprintf - extern LIBINTL_DLL_EXPORTED int vsnprintf(char *, size_t, const char *, va_list); - -#endif - -#if 0 - -#undef asprintf -#define asprintf libintl_asprintf - extern LIBINTL_DLL_EXPORTED int asprintf(char **, const char *, ...); -#undef vasprintf -#define vasprintf libintl_vasprintf - extern LIBINTL_DLL_EXPORTED int vasprintf(char **, const char *, va_list); - -#endif - -#if 0 - -#undef fwprintf -#define fwprintf libintl_fwprintf - extern LIBINTL_DLL_EXPORTED int fwprintf(FILE *, const wchar_t *, ...); -#undef vfwprintf -#define vfwprintf libintl_vfwprintf - extern LIBINTL_DLL_EXPORTED int vfwprintf(FILE *, const wchar_t *, va_list); - -#undef wprintf -#define wprintf libintl_wprintf - extern LIBINTL_DLL_EXPORTED int wprintf(const wchar_t *, ...); -#undef vwprintf -#define vwprintf libintl_vwprintf - extern LIBINTL_DLL_EXPORTED int vwprintf(const wchar_t *, va_list); - -#undef swprintf -#define swprintf libintl_swprintf - extern LIBINTL_DLL_EXPORTED int swprintf(wchar_t *, size_t, const wchar_t *, ...); -#undef vswprintf -#define vswprintf libintl_vswprintf - extern LIBINTL_DLL_EXPORTED int vswprintf(wchar_t *, size_t, const wchar_t *, va_list); - -#endif - -#endif - - - /* Support for relocatable packages. */ - - /* Sets the original and the current installation prefix of the package. - Relocation simply replaces a pathname starting with the original prefix - by the corresponding pathname with the current prefix instead. Both - prefixes should be directory names without trailing slash (i.e. use "" - instead of "/"). */ -#define libintl_set_relocation_prefix libintl_set_relocation_prefix - extern LIBINTL_DLL_EXPORTED void - libintl_set_relocation_prefix(const char *orig_prefix, - const char *curr_prefix); - - -#ifdef __cplusplus -} -#endif - -#endif /* libintl.h */ \ No newline at end of file diff --git a/ports/gettext/libgnuintl.win32.h b/ports/gettext/libgnuintl.win32.h new file mode 100644 index 000000000..440da4d59 --- /dev/null +++ b/ports/gettext/libgnuintl.win32.h @@ -0,0 +1,423 @@ +/* Message catalogs for internationalization. +Copyright (C) 1995-1997, 2000-2007 Free Software Foundation, Inc. + +This program is free software; you can redistribute it and/or modify it +under the terms of the GNU Library General Public License as published +by the Free Software Foundation; either version 2, or (at your option) +any later version. + +This program is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +Library General Public License for more details. + +You should have received a copy of the GNU Library General Public +License along with this program; if not, write to the Free Software +Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, +USA. */ + +#ifndef _LIBINTL_H +#define _LIBINTL_H 1 + +#if defined(_WIN32) && defined(libintl_EXPORTS) +#define LIBINTL_DLL_EXPORTED __declspec(dllexport) +#else +#define LIBINTL_DLL_EXPORTED +#endif + +#include + +/* The LC_MESSAGES locale category is the category used by the functions +gettext() and dgettext(). It is specified in POSIX, but not in ANSI C. +On systems that don't define it, use an arbitrary value instead. +On Solaris, defines __LOCALE_H (or _LOCALE_H in Solaris 2.5) +then includes (i.e. this file!) and then only defines +LC_MESSAGES. To avoid a redefinition warning, don't define LC_MESSAGES +in this case. */ +#if !defined LC_MESSAGES && !(defined __LOCALE_H || (defined _LOCALE_H && defined __sun)) +# define LC_MESSAGES 1729 +#endif + +/* We define an additional symbol to signal that we use the GNU +implementation of gettext. */ +#define __USE_GNU_GETTEXT 1 + +/* Provide information about the supported file formats. Returns the +maximum minor revision number supported for a given major revision. */ +#define __GNU_GETTEXT_SUPPORTED_REVISION(major) \ + ((major) == 0 || (major) == 1 ? 1 : -1) + +/* Resolve a platform specific conflict on DJGPP. GNU gettext takes +precedence over _conio_gettext. */ +#ifdef __DJGPP__ +# undef gettext +#endif + +#ifdef __cplusplus +extern "C" { +#endif + + + /* Version number: (major<<16) + (minor<<8) + subminor */ +#define LIBINTL_VERSION 0x001100 + extern LIBINTL_DLL_EXPORTED int libintl_version; + + + /* We redirect the functions to those prefixed with "libintl_". This is + necessary, because some systems define gettext/textdomain/... in the C + library (namely, Solaris 2.4 and newer, and GNU libc 2.0 and newer). + If we used the unprefixed names, there would be cases where the + definition in the C library would override the one in the libintl.so + shared library. Recall that on ELF systems, the symbols are looked + up in the following order: + 1. in the executable, + 2. in the shared libraries specified on the link command line, in order, + 3. in the dependencies of the shared libraries specified on the link + command line, + 4. in the dlopen()ed shared libraries, in the order in which they were + dlopen()ed. + The definition in the C library would override the one in libintl.so if + either + * -lc is given on the link command line and -lintl isn't, or + * -lc is given on the link command line before -lintl, or + * libintl.so is a dependency of a dlopen()ed shared library but not + linked to the executable at link time. + Since Solaris gettext() behaves differently than GNU gettext(), this + would be unacceptable. + + The redirection happens by default through macros in C, so that &gettext + is independent of the compilation unit, but through inline functions in + C++, in order not to interfere with the name mangling of class fields or + class methods called 'gettext'. */ + + /* The user can define _INTL_REDIRECT_INLINE or _INTL_REDIRECT_MACROS. + If he doesn't, we choose the method. A third possible method is + _INTL_REDIRECT_ASM, supported only by GCC. */ +#if !(defined _INTL_REDIRECT_INLINE || defined _INTL_REDIRECT_MACROS) +# if __GNUC__ >= 2 && !(__APPLE_CC__ > 1) && !defined __MINGW32__ && !(__GNUC__ == 2 && defined _AIX) && (defined __STDC__ || defined __cplusplus) +# define _INTL_REDIRECT_ASM +# else +# ifdef __cplusplus +# define _INTL_REDIRECT_INLINE +# else +# define _INTL_REDIRECT_MACROS +# endif +# endif +#endif + /* Auxiliary macros. */ +#ifdef _INTL_REDIRECT_ASM +# define _INTL_ASM(cname) __asm__ (_INTL_ASMNAME (__USER_LABEL_PREFIX__, #cname)) +# define _INTL_ASMNAME(prefix,cnamestring) _INTL_STRINGIFY (prefix) cnamestring +# define _INTL_STRINGIFY(prefix) #prefix +#else +# define _INTL_ASM(cname) +#endif + + /* _INTL_MAY_RETURN_STRING_ARG(n) declares that the given function may return + its n-th argument literally. This enables GCC to warn for example about + printf (gettext ("foo %y")). */ +#if __GNUC__ >= 3 && !(__APPLE_CC__ > 1 && defined __cplusplus) +# define _INTL_MAY_RETURN_STRING_ARG(n) __attribute__ ((__format_arg__ (n))) +#else +# define _INTL_MAY_RETURN_STRING_ARG(n) +#endif + + /* Look up MSGID in the current default message catalog for the current + LC_MESSAGES locale. If not found, returns MSGID itself (the default + text). */ +#ifdef _INTL_REDIRECT_INLINE + extern LIBINTL_DLL_EXPORTED char *libintl_gettext(const char *__msgid) + _INTL_MAY_RETURN_STRING_ARG(1); + static inline char *gettext(const char *__msgid) + { + return libintl_gettext(__msgid); + } +#else +#ifdef _INTL_REDIRECT_MACROS +# define gettext libintl_gettext +#endif + extern LIBINTL_DLL_EXPORTED char *gettext(const char *__msgid) + _INTL_ASM(libintl_gettext) + _INTL_MAY_RETURN_STRING_ARG(1); +#endif + + /* Look up MSGID in the DOMAINNAME message catalog for the current + LC_MESSAGES locale. */ +#ifdef _INTL_REDIRECT_INLINE + extern LIBINTL_DLL_EXPORTED char *libintl_dgettext(const char *__domainname, const char *__msgid) + _INTL_MAY_RETURN_STRING_ARG(2); + static inline char *dgettext(const char *__domainname, const char *__msgid) + { + return libintl_dgettext(__domainname, __msgid); + } +#else +#ifdef _INTL_REDIRECT_MACROS +# define dgettext libintl_dgettext +#endif + extern LIBINTL_DLL_EXPORTED char *dgettext(const char *__domainname, const char *__msgid) + _INTL_ASM(libintl_dgettext) + _INTL_MAY_RETURN_STRING_ARG(2); +#endif + + /* Look up MSGID in the DOMAINNAME message catalog for the current CATEGORY + locale. */ +#ifdef _INTL_REDIRECT_INLINE + extern LIBINTL_DLL_EXPORTED char *libintl_dcgettext(const char *__domainname, const char *__msgid, + int __category) + _INTL_MAY_RETURN_STRING_ARG(2); + static inline char *dcgettext(const char *__domainname, const char *__msgid, + int __category) + { + return libintl_dcgettext(__domainname, __msgid, __category); + } +#else +#ifdef _INTL_REDIRECT_MACROS +# define dcgettext libintl_dcgettext +#endif + extern LIBINTL_DLL_EXPORTED char *dcgettext(const char *__domainname, const char *__msgid, + int __category) + _INTL_ASM(libintl_dcgettext) + _INTL_MAY_RETURN_STRING_ARG(2); +#endif + + + /* Similar to `gettext' but select the plural form corresponding to the + number N. */ +#ifdef _INTL_REDIRECT_INLINE + extern LIBINTL_DLL_EXPORTED char *libintl_ngettext(const char *__msgid1, const char *__msgid2, + unsigned long int __n) + _INTL_MAY_RETURN_STRING_ARG(1) _INTL_MAY_RETURN_STRING_ARG(2); + static inline char *ngettext(const char *__msgid1, const char *__msgid2, + unsigned long int __n) + { + return libintl_ngettext(__msgid1, __msgid2, __n); + } +#else +#ifdef _INTL_REDIRECT_MACROS +# define ngettext libintl_ngettext +#endif + extern LIBINTL_DLL_EXPORTED char *ngettext(const char *__msgid1, const char *__msgid2, + unsigned long int __n) + _INTL_ASM(libintl_ngettext) + _INTL_MAY_RETURN_STRING_ARG(1) _INTL_MAY_RETURN_STRING_ARG(2); +#endif + + /* Similar to `dgettext' but select the plural form corresponding to the + number N. */ +#ifdef _INTL_REDIRECT_INLINE + extern LIBINTL_DLL_EXPORTED char *libintl_dngettext(const char *__domainname, const char *__msgid1, + const char *__msgid2, unsigned long int __n) + _INTL_MAY_RETURN_STRING_ARG(2) _INTL_MAY_RETURN_STRING_ARG(3); + static inline char *dngettext(const char *__domainname, const char *__msgid1, + const char *__msgid2, unsigned long int __n) + { + return libintl_dngettext(__domainname, __msgid1, __msgid2, __n); + } +#else +#ifdef _INTL_REDIRECT_MACROS +# define dngettext libintl_dngettext +#endif + extern LIBINTL_DLL_EXPORTED char *dngettext(const char *__domainname, + const char *__msgid1, const char *__msgid2, + unsigned long int __n) + _INTL_ASM(libintl_dngettext) + _INTL_MAY_RETURN_STRING_ARG(2) _INTL_MAY_RETURN_STRING_ARG(3); +#endif + + /* Similar to `dcgettext' but select the plural form corresponding to the + number N. */ +#ifdef _INTL_REDIRECT_INLINE + extern LIBINTL_DLL_EXPORTED char *libintl_dcngettext(const char *__domainname, + const char *__msgid1, const char *__msgid2, + unsigned long int __n, int __category) + _INTL_MAY_RETURN_STRING_ARG(2) _INTL_MAY_RETURN_STRING_ARG(3); + static inline char *dcngettext(const char *__domainname, + const char *__msgid1, const char *__msgid2, + unsigned long int __n, int __category) + { + return libintl_dcngettext(__domainname, __msgid1, __msgid2, __n, __category); + } +#else +#ifdef _INTL_REDIRECT_MACROS +# define dcngettext libintl_dcngettext +#endif + extern LIBINTL_DLL_EXPORTED char *dcngettext(const char *__domainname, + const char *__msgid1, const char *__msgid2, + unsigned long int __n, int __category) + _INTL_ASM(libintl_dcngettext) + _INTL_MAY_RETURN_STRING_ARG(2) _INTL_MAY_RETURN_STRING_ARG(3); +#endif + + + + /* Set the current default message catalog to DOMAINNAME. + If DOMAINNAME is null, return the current default. + If DOMAINNAME is "", reset to the default of "messages". */ +#ifdef _INTL_REDIRECT_INLINE + extern LIBINTL_DLL_EXPORTED char *libintl_textdomain(const char *__domainname); + static inline char *textdomain(const char *__domainname) + { + return libintl_textdomain(__domainname); + } +#else +#ifdef _INTL_REDIRECT_MACROS +# define textdomain libintl_textdomain +#endif + extern LIBINTL_DLL_EXPORTED char *textdomain(const char *__domainname) + _INTL_ASM(libintl_textdomain); +#endif + + /* Specify that the DOMAINNAME message catalog will be found + in DIRNAME rather than in the system locale data base. */ +#ifdef _INTL_REDIRECT_INLINE + extern LIBINTL_DLL_EXPORTED char *libintl_bindtextdomain(const char *__domainname, + const char *__dirname); + static inline char *bindtextdomain(const char *__domainname, + const char *__dirname) + { + return libintl_bindtextdomain(__domainname, __dirname); + } +#else +#ifdef _INTL_REDIRECT_MACROS +# define bindtextdomain libintl_bindtextdomain +#endif + extern LIBINTL_DLL_EXPORTED char *bindtextdomain(const char *__domainname, const char *__dirname) + _INTL_ASM(libintl_bindtextdomain); +#endif + + /* Specify the character encoding in which the messages from the + DOMAINNAME message catalog will be returned. */ +#ifdef _INTL_REDIRECT_INLINE + extern LIBINTL_DLL_EXPORTED char *libintl_bind_textdomain_codeset(const char *__domainname, + const char *__codeset); + static inline char *bind_textdomain_codeset(const char *__domainname, + const char *__codeset) + { + return libintl_bind_textdomain_codeset(__domainname, __codeset); + } +#else +#ifdef _INTL_REDIRECT_MACROS +# define bind_textdomain_codeset libintl_bind_textdomain_codeset +#endif + extern LIBINTL_DLL_EXPORTED char *bind_textdomain_codeset(const char *__domainname, + const char *__codeset) + _INTL_ASM(libintl_bind_textdomain_codeset); +#endif + + + + /* Support for format strings with positions in *printf(), following the + POSIX/XSI specification. + Note: These replacements for the *printf() functions are visible only + in source files that #include or #include "gettext.h". + Packages that use *printf() in source files that don't refer to _() + or gettext() but for which the format string could be the return value + of _() or gettext() need to add this #include. Oh well. */ + +#if !0 + +#include +#include + + /* Get va_list. */ +#if __STDC__ || defined __cplusplus || defined _MSC_VER +# include +#else +# include +#endif + +#undef fprintf +#define fprintf libintl_fprintf + extern LIBINTL_DLL_EXPORTED int fprintf(FILE *, const char *, ...); +#undef vfprintf +#define vfprintf libintl_vfprintf + extern LIBINTL_DLL_EXPORTED int vfprintf(FILE *, const char *, va_list); + +#undef printf +#if defined __NetBSD__ || defined __BEOS__ || defined __CYGWIN__ || defined __MINGW32__ + /* Don't break __attribute__((format(printf,M,N))). + This redefinition is only possible because the libc in NetBSD, Cygwin, + mingw does not have a function __printf__. */ +# define libintl_printf __printf__ +#endif +#define printf libintl_printf + extern LIBINTL_DLL_EXPORTED int printf(const char *, ...); +#undef vprintf +#define vprintf libintl_vprintf + extern LIBINTL_DLL_EXPORTED int vprintf(const char *, va_list); + +#undef sprintf +#define sprintf libintl_sprintf + extern LIBINTL_DLL_EXPORTED int sprintf(char *, const char *, ...); +#undef vsprintf +#define vsprintf libintl_vsprintf + extern LIBINTL_DLL_EXPORTED int vsprintf(char *, const char *, va_list); + +#if 0 + +#undef snprintf +#define snprintf libintl_snprintf + extern LIBINTL_DLL_EXPORTED int snprintf(char *, size_t, const char *, ...); +#undef vsnprintf +#define vsnprintf libintl_vsnprintf + extern LIBINTL_DLL_EXPORTED int vsnprintf(char *, size_t, const char *, va_list); + +#endif + +#if 0 + +#undef asprintf +#define asprintf libintl_asprintf + extern LIBINTL_DLL_EXPORTED int asprintf(char **, const char *, ...); +#undef vasprintf +#define vasprintf libintl_vasprintf + extern LIBINTL_DLL_EXPORTED int vasprintf(char **, const char *, va_list); + +#endif + +#if 0 + +#undef fwprintf +#define fwprintf libintl_fwprintf + extern LIBINTL_DLL_EXPORTED int fwprintf(FILE *, const wchar_t *, ...); +#undef vfwprintf +#define vfwprintf libintl_vfwprintf + extern LIBINTL_DLL_EXPORTED int vfwprintf(FILE *, const wchar_t *, va_list); + +#undef wprintf +#define wprintf libintl_wprintf + extern LIBINTL_DLL_EXPORTED int wprintf(const wchar_t *, ...); +#undef vwprintf +#define vwprintf libintl_vwprintf + extern LIBINTL_DLL_EXPORTED int vwprintf(const wchar_t *, va_list); + +#undef swprintf +#define swprintf libintl_swprintf + extern LIBINTL_DLL_EXPORTED int swprintf(wchar_t *, size_t, const wchar_t *, ...); +#undef vswprintf +#define vswprintf libintl_vswprintf + extern LIBINTL_DLL_EXPORTED int vswprintf(wchar_t *, size_t, const wchar_t *, va_list); + +#endif + +#endif + + + /* Support for relocatable packages. */ + + /* Sets the original and the current installation prefix of the package. + Relocation simply replaces a pathname starting with the original prefix + by the corresponding pathname with the current prefix instead. Both + prefixes should be directory names without trailing slash (i.e. use "" + instead of "/"). */ +#define libintl_set_relocation_prefix libintl_set_relocation_prefix + extern LIBINTL_DLL_EXPORTED void + libintl_set_relocation_prefix(const char *orig_prefix, + const char *curr_prefix); + + +#ifdef __cplusplus +} +#endif + +#endif /* libintl.h */ \ No newline at end of file diff --git a/ports/gettext/portfile.cmake b/ports/gettext/portfile.cmake index 33a7da3f4..cb5ea37c1 100644 --- a/ports/gettext/portfile.cmake +++ b/ports/gettext/portfile.cmake @@ -1,4 +1,4 @@ -if(VCPKG_CMAKE_SYSTEM_NAME AND NOT VCPKG_CMAKE_SYSTEM_NAME STREQUAL "WindowsStore") +if(VCPKG_CMAKE_SYSTEM_NAME AND NOT VCPKG_CMAKE_SYSTEM_NAME STREQUAL "WindowsStore" AND NOT VCPKG_CMAKE_SYSTEM_NAME STREQUAL "Darwin") set(VCPKG_POLICY_EMPTY_PACKAGE enabled) return() endif() @@ -14,9 +14,14 @@ vcpkg_download_distfile(ARCHIVE ) vcpkg_extract_source_archive(${ARCHIVE}) -file(COPY ${CMAKE_CURRENT_LIST_DIR}/CMakeLists.txt DESTINATION ${SOURCE_PATH}/gettext-runtime) -file(COPY ${CMAKE_CURRENT_LIST_DIR}/libgnuintl.h DESTINATION ${SOURCE_PATH}/gettext-runtime/intl) -file(COPY ${CMAKE_CURRENT_LIST_DIR}/config.h DESTINATION ${SOURCE_PATH}/gettext-runtime) +file(COPY + ${CMAKE_CURRENT_LIST_DIR}/CMakeLists.txt + ${CMAKE_CURRENT_LIST_DIR}/config.win32.h + DESTINATION ${SOURCE_PATH}/gettext-runtime +) +file(REMOVE ${SOURCE_PATH}/gettext-runtime/intl/libgnuintl.h ${SOURCE_PATH}/gettext-runtime/config.h) + +file(COPY ${CMAKE_CURRENT_LIST_DIR}/libgnuintl.win32.h DESTINATION ${SOURCE_PATH}/gettext-runtime/intl) vcpkg_apply_patches( SOURCE_PATH ${SOURCE_PATH} @@ -27,15 +32,13 @@ vcpkg_apply_patches( vcpkg_configure_cmake( SOURCE_PATH ${SOURCE_PATH}/gettext-runtime PREFER_NINJA + OPTIONS_DEBUG -DDISABLE_INSTALL_HEADERS=ON ) vcpkg_install_cmake() -file(COPY ${SOURCE_PATH}/gettext-runtime/intl/libgnuintl.h DESTINATION ${CURRENT_PACKAGES_DIR}/include) -file(RENAME ${CURRENT_PACKAGES_DIR}/include/libgnuintl.h ${CURRENT_PACKAGES_DIR}/include/libintl.h) - # Handle copyright file(COPY ${SOURCE_PATH}/COPYING DESTINATION ${CURRENT_PACKAGES_DIR}/share/gettext) file(RENAME ${CURRENT_PACKAGES_DIR}/share/gettext/COPYING ${CURRENT_PACKAGES_DIR}/share/gettext/copyright) -vcpkg_copy_pdbs() \ No newline at end of file +vcpkg_copy_pdbs() -- cgit v1.2.3 From 79a526a3753553fd9b1f874ada7688b2fb8396a4 Mon Sep 17 00:00:00 2001 From: Robert Schumacher Date: Tue, 17 Apr 2018 16:21:39 -0700 Subject: [glib][glibmm] Fix for non-windows. For glibmm, use CMake replacement buildsystem. --- ports/glib/CMakeLists.txt | 220 ++- ports/glib/CONTROL | 2 +- ports/glib/cmake/install_headers.cmake | 5 +- ports/glib/portfile.cmake | 16 +- ports/glibmm/CMakeLists.txt | 121 ++ ports/glibmm/CONTROL | 2 +- ports/glibmm/COPYING | 514 ------ ports/glibmm/README | 4 - ports/glibmm/fix_charset.patch | 2702 -------------------------------- ports/glibmm/fix_properties.patch | 1721 -------------------- ports/glibmm/glibmm-api-variant.patch | 84 + ports/glibmm/portfile.cmake | 89 +- 12 files changed, 412 insertions(+), 5068 deletions(-) create mode 100644 ports/glibmm/CMakeLists.txt delete mode 100644 ports/glibmm/COPYING delete mode 100644 ports/glibmm/README delete mode 100644 ports/glibmm/fix_charset.patch delete mode 100644 ports/glibmm/fix_properties.patch create mode 100644 ports/glibmm/glibmm-api-variant.patch diff --git a/ports/glib/CMakeLists.txt b/ports/glib/CMakeLists.txt index 25218a7f8..3743b0a34 100644 --- a/ports/glib/CMakeLists.txt +++ b/ports/glib/CMakeLists.txt @@ -1,6 +1,9 @@ cmake_minimum_required(VERSION 3.0) project(glib C) +set(CMAKE_CXX_STANDARD 17) +set(CMAKE_C_STANDARD 11) + set(GLIB_DLL_SUFFIX 2) set(GLIB_LIB_SUFFIX 2.0) @@ -9,7 +12,7 @@ if(CMAKE_BUILD_TYPE STREQUAL Debug) endif() if(BUILD_SHARED_LIBS) - set(GLIB_EXPORT_MACRO DLL_EXPORT) + add_definitions(-DDLL_EXPORT) endif() set(CMAKE_MODULE_PATH ${CMAKE_SOURCE_DIR}/cmake) @@ -23,27 +26,70 @@ find_path(PCRE_INCLUDE_DIR pcre.h) if(CMAKE_BUILD_TYPE STREQUAL Debug) set(PCRE_SUFFIX d) endif() -find_library(PCRE_LIBRARY pcre${PCRE_SUFFIX}) -# libiconv -find_path(ICONV_INCLUDE_DIR iconv.h) -find_library(ICONV_LIBRARY NAMES iconv libiconv) +find_library(PCRE_LIBRARY NAMES pcre${PCRE_SUFFIX} pcre) # libiconv -find_library(CHARSET_LIBRARY NAMES charset libcharset) +find_package(unofficial-iconv REQUIRED) # libffi find_path(FFI_INCLUDE_DIR ffi.h) find_library(FFI_LIBRARY NAMES ffi libffi) -# libintl(gettext) -find_path(LIBINTL_INCLUDE_DIR libintl.h) -find_library(LIBINTL_LIBRARY NAMES intl libintl) +get_filename_component(LIB_DIR "${FFI_LIBRARY}" DIRECTORY) +if(APPLE) + find_library(COREFOUNDATION_LIBRARY CoreFoundation) + find_library(FOUNDATION_LIBRARY Foundation) + find_library(CORESERVICES_LIBRARY CoreServices) + link_libraries(${CORESERVICES_LIBRARY} ${COREFOUNDATION_LIBRARY} ${FOUNDATION_LIBRARY}) +endif() + +if(WIN32 OR APPLE) + # libintl(gettext) + find_path(LIBINTL_INCLUDE_DIR libintl.h) + find_library(LIBINTL_LIBRARY NAMES intl libintl) +else() + set(LIBINTL_INCLUDE_DIR) + set(LIBINTL_LIBRARY) +endif() + +if(WIN32) + set(LIBRESOLV_LIBRARY) +else() + find_library(LIBRESOLV_LIBRARY NAMES resolv libresolv) +endif() #prepare config files -configure_file(config.h.win32 ${CMAKE_SOURCE_DIR}/config.h COPYONLY) -configure_file(glib/glibconfig.h.win32 ${CMAKE_SOURCE_DIR}/glib/glibconfig.h COPYONLY) -configure_file(gmodule/gmoduleconf.h.win32 ${CMAKE_SOURCE_DIR}/gmodule/gmoduleconf.h COPYONLY) -configure_file(gio/gnetworking.h.win32 ${CMAKE_SOURCE_DIR}/gio/gnetworking.h COPYONLY) -add_definitions(-DHAVE_CONFIG_H) +if(WIN32) + configure_file(config.h.win32 ${CMAKE_BINARY_DIR}/config/config.h COPYONLY) + configure_file(glib/glibconfig.h.win32 ${CMAKE_BINARY_DIR}/config/glib/glibconfig.h COPYONLY) + configure_file(gmodule/gmoduleconf.h.win32 ${CMAKE_BINARY_DIR}/config/gmodule/gmoduleconf.h COPYONLY) + configure_file(gio/gnetworking.h.win32 ${CMAKE_BINARY_DIR}/config/gio/gnetworking.h COPYONLY) + add_definitions(-DHAVE_CONFIG_H) +else() + file(MAKE_DIRECTORY ${CMAKE_BINARY_DIR}/config) + set(ENV{LIBFFI_LIBS} "${FFI_LIBRARY}") + set(ENV{PCRE_LIBS} "${PCRE_LIBRARY}") + set(ENV{LIBFFI_CFLAGS} "-I${FFI_INCLUDE_DIR}") + set(ENV{PCRE_CFLAGS} "-I${PCRE_INCLUDE_DIR}") + set(ENV{MSGFMT} "/bin/echo") + set(ENV{GMSGFMT} "/bin/echo") + if(NOT EXISTS "${CMAKE_BINARY_DIR}/config/config.h") + execute_process( + COMMAND "${CMAKE_SOURCE_DIR}/configure" + --disable-libelf + --disable-libmount + "CPPFLAGS=-I${PCRE_INCLUDE_DIR}" + "CFLAGS=-I${PCRE_INCLUDE_DIR}" + "LDFLAGS=-L${LIB_DIR}" + WORKING_DIRECTORY ${CMAKE_BINARY_DIR}/config + RESULT_VARIABLE res + ) + if(NOT res EQUAL 0) + message(FATAL_ERROR "Configure failed.") + endif() + endif() + add_definitions("-DGIO_MODULE_DIR=\"gio/modules\"") +endif() -include_directories(. ./glib) +include_directories(${CMAKE_BINARY_DIR}/config ${CMAKE_BINARY_DIR}/config/glib ${CMAKE_BINARY_DIR}/config/gio ${CMAKE_BINARY_DIR}/config/gmodule) +include_directories(. glib) # This macro purposely doesn't find nodes with sources that have additional properties set # Most of such files in glib are PCRE sources which we don't use anyway @@ -64,60 +110,155 @@ endmacro() # main module extract_vcproj_sources(win32/vs14/glib.vcxproj GLIB_SOURCES) list(APPEND GLIB_SOURCES glib/libcharset/localcharset.c) # modified internal version with prefixed symbols +if(NOT WIN32) + list(FILTER GLIB_SOURCES EXCLUDE REGEX "win32.c\$|win32-helper.c\$") + list(APPEND GLIB_SOURCES "glib/gthread-posix.c" "glib/giounix.c" "glib/gspawn.c" "glib/glib-unix.c") +endif() add_library(glib ${GLIB_SOURCES}) -target_compile_definitions(glib PRIVATE USE_SYSTEM_PCRE ${GLIB_EXPORT_MACRO} GLIB_COMPILATION G_LOG_DOMAIN="GLib" LIBDIR) -target_link_libraries(glib ws2_32 winmm ${PCRE_LIBRARY} ${ICONV_LIBRARY} ${CHARSET_LIBRARY} ${LIBINTL_LIBRARY}) +target_compile_definitions(glib PRIVATE GLIB_COMPILATION G_LOG_DOMAIN="GLib" LIBDIR="") +target_link_libraries(glib PRIVATE ${PCRE_LIBRARY} unofficial::iconv::libiconv unofficial::iconv::libcharset ${LIBINTL_LIBRARY}) +if(WIN32) + target_compile_definitions(glib PRIVATE USE_SYSTEM_PCRE) + target_link_libraries(glib PRIVATE ws2_32 winmm) +else() + set(THREADS_PREFER_PTHREAD_FLAG ON) + find_package(Threads REQUIRED) + target_link_libraries(glib PRIVATE Threads::Threads ${CMAKE_DL_LIBS}) +endif() target_include_directories(glib PRIVATE ${PCRE_INCLUDE_DIR} ${ICONV_INCLUDE_DIR}) -target_include_directories(glib PUBLIC ${LIBINTL_INCLUDE_DIR}) +target_include_directories(glib PUBLIC ${LIBINTL_INCLUDE_DIR}) list(APPEND GLIB_TARGETS glib) +if(NOT GLIB_SKIP_HEADERS) + install(FILES glib/glib.h glib/glib-object.h ${CMAKE_BINARY_DIR}/config/glib/glibconfig.h DESTINATION include) + + file(GLOB GLIB_HEADERS glib/*.h) + list(FILTER GLIB_HEADERS EXCLUDE REGEX "/glib.h\$|/glib-object.h\$|private.h\$") + install(FILES ${GLIB_HEADERS} DESTINATION include/glib) + + file(GLOB GLIB_DEP_HEADERS glib/deprecated/*.h) + install(FILES ${GLIB_DEP_HEADERS} DESTINATION include/glib/deprecated) +endif() # gthread add_library(gthread gthread/gthread-impl.c) target_compile_definitions(gthread PRIVATE G_LOG_DOMAIN="GThread") -target_link_libraries(gthread glib ${LIBINTL_LIBRARY}) +target_link_libraries(gthread PRIVATE glib ${LIBINTL_LIBRARY}) target_include_directories(gthread PRIVATE ${LIBINTL_INCLUDE_DIR}) list(APPEND GLIB_TARGETS gthread) # gobject extract_vcproj_sources(win32/vs14/gobject.vcxproj GOBJECT_SOURCES) add_library(gobject ${GOBJECT_SOURCES}) -target_compile_definitions(gobject PRIVATE GOBJECT_COMPILATION ${GLIB_EXPORT_MACRO} G_LOG_DOMAIN="GLib-GObject") -target_link_libraries(gobject gthread glib ${FFI_LIBRARY}) +target_compile_definitions(gobject PRIVATE GOBJECT_COMPILATION G_LOG_DOMAIN="GLib-GObject") +target_link_libraries(gobject PRIVATE gthread glib ${FFI_LIBRARY}) target_include_directories(gobject PRIVATE ${FFI_INCLUDE_DIR}) list(APPEND GLIB_TARGETS gobject) +if(NOT GLIB_SKIP_HEADERS) + file(GLOB GOBJECT_HEADERS gobject/*.h gobject/gobjectnotifyqueue.c) + list(FILTER GOBJECT_HEADERS EXCLUDE REGEX "private.h\$") + install(FILES ${GOBJECT_HEADERS} DESTINATION include/gobject) +endif() # gmodule add_library(gmodule gmodule/gmodule.c) target_compile_definitions(gmodule PRIVATE G_LOG_DOMAIN="GModule") -target_link_libraries(gmodule glib ${LIBINTL_LIBRARY}) +target_link_libraries(gmodule PRIVATE glib ${LIBINTL_LIBRARY}) +target_include_directories(gmodule PUBLIC $) target_include_directories(gmodule PRIVATE ${LIBINTL_INCLUDE_DIR}) list(APPEND GLIB_TARGETS gmodule) +if(NOT GLIB_SKIP_HEADERS) + install(FILES gmodule/gmodule.h DESTINATION include) +endif() + +# gio subdirs +if(NOT WIN32) + file(GLOB XDGMIME_SOURCES gio/xdgmime/*.c) + add_library(xdgmime ${XDGMIME_SOURCES}) + target_compile_definitions(xdgmime PRIVATE -DXDG_PREFIX=_gio_xdg) + list(APPEND GLIB_TARGETS xdgmime) +endif() + +if(NOT WIN32 AND NOT APPLE) + file(GLOB INOTIFY_SOURCES gio/inotify/*.c) + add_library(inotify ${INOTIFY_SOURCES}) + target_link_libraries(inotify PRIVATE gmodule) + target_compile_definitions(inotify PRIVATE -DG_LOG_DOMAIN=\"GLib-GIO\" -DGIO_COMPILATION -DG_DISABLE_DEPRECATED) + list(APPEND GLIB_TARGETS inotify) +endif() + +if(APPLE) + file(GLOB KQUEUE_SOURCES gio/kqueue/*.c) + add_library(kqueue ${KQUEUE_SOURCES}) + target_link_libraries(kqueue PRIVATE gmodule) + target_compile_definitions(kqueue PRIVATE -DG_LOG_DOMAIN=\"GLib-GIO\" -DGIO_COMPILATION -DG_DISABLE_DEPRECATED) + list(APPEND GLIB_TARGETS kqueue) +endif() # gio extract_vcproj_sources(win32/vs14/gio.vcxproj GIO_SOURCES) +if(NOT WIN32) + file(GLOB GIO_UNIX_SOURCES "gio/gunix*.c" "gio/g*notificationbackend.c" "gio/g*portal*.c") + list(APPEND GIO_SOURCES ${GIO_UNIX_SOURCES}) + list(APPEND GIO_SOURCES + "gio/gcontenttype.c" + "gio/gfiledescriptorbased.c" + "gio/gnetworkmonitornm.c" + "gio/xdp-dbus.c" + ) + list(FILTER GIO_SOURCES EXCLUDE REGEX "/gwin32[^/]+\$|win32/[^/]+\$|win32.c\$|gregistrysettingsbackend.c\$") + if(APPLE) + set_property(SOURCE + gio/gcocoanotificationbackend.c + gio/gosxappinfo.c + gio/gnextstepsettingsbackend.c + PROPERTY COMPILE_FLAGS "-x objective-c") + list(APPEND GIO_SOURCES + "gio/gnextstepsettingsbackend.c" + "gio/gosxappinfo.c" + ) + else() + list(APPEND GIO_SOURCES + "gio/gnetworkmonitornetlink.c" + "gio/gdesktopappinfo.c" + ) + list(FILTER GIO_SOURCES EXCLUDE REGEX "gcocoanotificationbackend.c\$") + endif() +endif() +if(NOT GLIB_SKIP_HEADERS) + file(GLOB GIO_HEADERS gio/*.h) + list(FILTER GIO_HEADERS EXCLUDE REGEX "private.h\$") + install(FILES ${GIO_HEADERS} ${CMAKE_BINARY_DIR}/config/gio/gnetworking.h DESTINATION include/gio) +endif() add_library(gio ${GIO_SOURCES}) -target_compile_definitions(gio PRIVATE GIO_COMPILATION ${GLIB_EXPORT_MACRO} G_LOG_DOMAIN="GLib-GIO") -target_link_libraries(gio glib gmodule gobject ws2_32 shlwapi dnsapi iphlpapi ${ZLIB_LIBRARIES}) -target_include_directories(gio PRIVATE ./gio ./gmodule ${ZLIB_INCLUDE_DIRS}) +target_compile_definitions(gio PRIVATE GIO_COMPILATION G_LOG_DOMAIN="GLib-GIO") +target_link_libraries(gio PRIVATE glib gmodule gobject ZLIB::ZLIB ${LIBRESOLV_LIBRARY} ${LIBINTL_LIBRARY}) +target_include_directories(gio PUBLIC $) +if(WIN32) + target_link_libraries(gio PRIVATE ws2_32 shlwapi dnsapi iphlpapi) +elseif(APPLE) + target_link_libraries(gio PRIVATE xdgmime kqueue) +else() + target_link_libraries(gio PRIVATE xdgmime inotify) +endif() list(APPEND GLIB_TARGETS gio) foreach(GTARGET ${GLIB_TARGETS}) - set_target_properties(${GTARGET} PROPERTIES + set_target_properties(${GTARGET} PROPERTIES OUTPUT_NAME ${GTARGET}-${GLIB_DLL_SUFFIX} ARCHIVE_OUTPUT_NAME ${GTARGET}-${GLIB_LIB_SUFFIX}) endforeach() macro(add_glib_tool TOOL_NAME) add_executable(${TOOL_NAME} ${ARGN}) - target_link_libraries(${TOOL_NAME} glib) + target_link_libraries(${TOOL_NAME} glib ${LIBINTL_LIBRARY}) target_compile_definitions(${TOOL_NAME} PRIVATE GLIB_COMPILATION) list(APPEND GLIB_TOOLS ${TOOL_NAME}) endmacro() macro(add_gio_tool TOOL_NAME) add_executable(${TOOL_NAME} ${ARGN}) - target_link_libraries(${TOOL_NAME} glib gio gobject gmodule) - target_include_directories(${TOOL_NAME} PRIVATE ./gmodule ./gio) + target_link_libraries(${TOOL_NAME} PRIVATE glib gio gobject gmodule ${LIBINTL_LIBRARY}) + target_include_directories(${TOOL_NAME} PRIVATE gmodule gio) target_compile_definitions(${TOOL_NAME} PRIVATE GIO_COMPILATION) list(APPEND GLIB_TOOLS ${TOOL_NAME}) endmacro() @@ -125,22 +266,22 @@ endmacro() if(NOT GLIB_SKIP_TOOLS) configure_file(gobject/glib-mkenums.in ${CMAKE_SOURCE_DIR}/gobject/glib-mkenums @ONLY) # uses GLIB_VERSION install(FILES gobject/glib-mkenums DESTINATION tools/glib) - + configure_file(gio/gdbus-2.0/codegen/gdbus-codegen.in ${CMAKE_SOURCE_DIR}/gio/gdbus-2.0/codegen/gdbus-codegen COPYONLY) install(FILES gio/gdbus-2.0/codegen/gdbus-codegen DESTINATION tools/glib) file(GLOB CODEGEN_SOURCES gio/gdbus-2.0/codegen/*.py) install(FILES ${CODEGEN_SOURCES} DESTINATION tools/glib/codegen) - - add_gio_tool(gdbus gio/gdbus-tool.c) + + add_gio_tool(gdbus gio/gdbus-tool.c) add_gio_tool(gio-querymodules gio/gio-querymodules.c) file(GLOB GIO_TOOL_SOURCES gio/gio-tool*.c) add_gio_tool(gio-tool ${GIO_TOOL_SOURCES}) set_target_properties(gio-tool PROPERTIES OUTPUT_NAME gio) add_gio_tool(glib-compile-resources gio/glib-compile-resources.c gio/gvdb/gvdb-builder.c) - add_gio_tool(glib-compile-schemas gio/glib-compile-schemas.c gio/gvdb/gvdb-builder.c) + add_gio_tool(glib-compile-schemas gio/glib-compile-schemas.c gio/gvdb/gvdb-builder.c) add_gio_tool(gresource gio/gresource-tool.c) add_gio_tool(gsettings gio/gsettings-tool.c) - + if(CMAKE_SIZEOF_VOID_P EQUAL 4) set(WIN win32) else() @@ -148,16 +289,15 @@ if(NOT GLIB_SKIP_TOOLS) endif() add_glib_tool(glib-genmarshal gobject/glib-genmarshal.c) - add_glib_tool(gspawn-${WIN}-helper WIN32 glib/gspawn-win32-helper.c) - add_glib_tool(gspawn-${WIN}-helper-console glib/gspawn-win32-helper-console.c) - + if(WIN32) + add_glib_tool(gspawn-${WIN}-helper WIN32 glib/gspawn-win32-helper.c) + add_glib_tool(gspawn-${WIN}-helper-console glib/gspawn-win32-helper-console.c) + endif() + install(TARGETS ${GLIB_TOOLS} RUNTIME DESTINATION tools/glib) endif() install(TARGETS ${GLIB_TARGETS} RUNTIME DESTINATION bin ARCHIVE DESTINATION lib LIBRARY DESTINATION lib) -if(NOT GLIB_SKIP_HEADERS) - include(install_headers) -endif() message(STATUS "Link-time dependencies:") message(STATUS " " ${ZLIB_LIBRARIES}) diff --git a/ports/glib/CONTROL b/ports/glib/CONTROL index 4f06e4e2e..f37b794cb 100644 --- a/ports/glib/CONTROL +++ b/ports/glib/CONTROL @@ -1,4 +1,4 @@ Source: glib -Version: 2.52.3-2 +Version: 2.52.3-9 Description: Portable, general-purpose utility library. Build-Depends: zlib, pcre, libffi, gettext, libiconv diff --git a/ports/glib/cmake/install_headers.cmake b/ports/glib/cmake/install_headers.cmake index 0cfc207a4..7840f34ab 100644 --- a/ports/glib/cmake/install_headers.cmake +++ b/ports/glib/cmake/install_headers.cmake @@ -1,7 +1,6 @@ # generated from glib-install.props install(FILES glib/glib.h DESTINATION include) -install(FILES glib/glibconfig.h DESTINATION include) -install(FILES glib/glib.h DESTINATION include) +install(FILES ${CMAKE_BINARY_DIR}/config/glib/glibconfig.h DESTINATION include) install(FILES glib/glib-object.h DESTINATION include) install(FILES glib/deprecated/gallocator.h DESTINATION include/glib/deprecated) install(FILES glib/deprecated/gcache.h DESTINATION include/glib/deprecated) @@ -251,6 +250,6 @@ install(FILES gio/gdbusobjectmanagerclient.h DESTINATION include/gio) install(FILES gio/gdbusobjectmanagerserver.h DESTINATION include/gio) install(FILES gio/gtestdbus.h DESTINATION include/gio) install(FILES gio/gioenumtypes.h DESTINATION include/gio) -install(FILES gio/gnetworking.h DESTINATION include/gio) +install(FILES ${CMAKE_BINARY_DIR}/config/gio/gnetworking.h DESTINATION include/gio) install(FILES gio/gwin32inputstream.h DESTINATION include/gio) install(FILES gio/gwin32outputstream.h DESTINATION include/gio) diff --git a/ports/glib/portfile.cmake b/ports/glib/portfile.cmake index 9618b6686..a500cbd24 100644 --- a/ports/glib/portfile.cmake +++ b/ports/glib/portfile.cmake @@ -3,9 +3,15 @@ if(VCPKG_CMAKE_SYSTEM_NAME STREQUAL WindowsStore) message(FATAL_ERROR "Error: UWP builds are currently not supported.") endif() -# Glib relies on DllMain -if(VCPKG_LIBRARY_LINKAGE STREQUAL "static" OR VCPKG_CRT_LINKAGE STREQUAL "static") - message(FATAL_ERROR "Glib only supports dynamic library and crt linkage") +# Glib relies on DllMain on Windows +if(NOT VCPKG_CMAKE_SYSTEM_NAME) + if(VCPKG_LIBRARY_LINKAGE STREQUAL "static") + message("Glib relies on DllMain and therefore cannot be built statically") + set(VCPKG_LIBRARY_LINKAGE "dynamic") + endif() + if(VCPKG_CRT_LINKAGE STREQUAL "static") + message(FATAL_ERROR "Glib only supports dynamic library and crt linkage") + endif() endif() include(vcpkg_common_functions) @@ -25,6 +31,7 @@ vcpkg_apply_patches( file(COPY ${CMAKE_CURRENT_LIST_DIR}/CMakeLists.txt DESTINATION ${SOURCE_PATH}) file(COPY ${CMAKE_CURRENT_LIST_DIR}/cmake DESTINATION ${SOURCE_PATH}) file(REMOVE_RECURSE ${SOURCE_PATH}/glib/pcre) +file(WRITE ${SOURCE_PATH}/glib/pcre/Makefile.in) file(REMOVE ${SOURCE_PATH}/glib/win_iconv.c) vcpkg_configure_cmake( @@ -34,7 +41,8 @@ vcpkg_configure_cmake( -DGLIB_VERSION=${GLIB_VERSION} OPTIONS_DEBUG -DGLIB_SKIP_HEADERS=ON - -DGLIB_SKIP_TOOLS=ON) + -DGLIB_SKIP_TOOLS=ON + ) vcpkg_install_cmake() vcpkg_copy_pdbs() diff --git a/ports/glibmm/CMakeLists.txt b/ports/glibmm/CMakeLists.txt new file mode 100644 index 000000000..9f0165786 --- /dev/null +++ b/ports/glibmm/CMakeLists.txt @@ -0,0 +1,121 @@ +cmake_minimum_required(VERSION 3.9) +project(glibmm) + +set(CMAKE_CXX_STANDARD 17) + +find_path(GLIB_INCLUDE_DIR NAMES glib.h) +find_library(GLIB_LIBRARY NAMES glib-2.0) +find_library(GIO_LIBRARY NAMES gio-2.0) +find_library(GOBJECT_LIBRARY NAMES gobject-2.0) +find_library(GMODULE_LIBRARY NAMES gmodule-2.0) +find_library(GTHREAD_LIBRARY NAMES gthread-2.0) +find_program(GLIB_COMPILE_SCHEMAS NAMES glib-compile-schemas) +find_library(PCRE_LIBRARY NAMES pcre) +find_library(SIGC_LIBRARY NAMES sigc-2.0) +find_library(FFI_LIBRARY NAMES ffi libffi) + +include_directories(${GLIB_INCLUDE_DIR}) +link_libraries( + ${GIO_LIBRARY} + ${GOBJECT_LIBRARY} + ${GMODULE_LIBRARY} + ${GTHREAD_LIBRARY} + ${GLIB_LIBRARY} + ${PCRE_LIBRARY} + ${SIGC_LIBRARY} + ${FFI_LIBRARY} +) + +if(APPLE) + find_library(LIBINTL_LIBRARY NAMES intl) +endif() + +find_package(unofficial-iconv REQUIRED) +link_libraries(${LIBINTL_LIBRARY} unofficial::iconv::libiconv) + +if(APPLE) + find_library(COREFOUNDATION_LIBRARY CoreFoundation) + find_library(CORESERVICES_LIBRARY CoreServices) + find_library(FOUNDATION_LIBRARY Foundation) + link_libraries(${COREFOUNDATION_LIBRARY} ${CORESERVICES_LIBRARY} ${FOUNDATION_LIBRARY}) +endif() + +set(CMAKE_WINDOWS_EXPORT_ALL_SYMBOLS TRUE) + +if(BUILD_SHARED_LIBS) + add_definitions(-DGLIBMM_DLL -DGIOMM_DLL) +else() + add_definitions(-DGLIBMM_STATIC_LIB -DGIOMM_STATIC_LIB) +endif() + +if(WIN32) + add_compile_options(/FI${WARNINGS_HEADER} -DSIZEOF_WCHAR_T=2) +else() + set(THREADS_PREFER_PTHREAD_FLAG ON) + find_package(Threads REQUIRED) + link_libraries(Threads::Threads ${CMAKE_DL_LIBS}) +endif() + +if(WIN32) + configure_file(MSVC_Net2013/giomm/giommconfig.h ${CMAKE_BINARY_DIR}/config/gio/giommconfig.h COPYONLY) + configure_file(MSVC_Net2013/glibmm/glibmmconfig.h ${CMAKE_BINARY_DIR}/config/glib/glibmmconfig.h COPYONLY) +else() + set(ENV{GLIB_COMPILE_SCHEMAS} "${GLIB_COMPILE_SCHEMAS}") + set(ENV{GLIBMM_CFLAGS} -I${GLIB_INCLUDE_DIR}) + set(ENV{GLIBMM_LIBS} "${GLIB_LIBRARY}") + set(ENV{GIOMM_CFLAGS} -I${GLIB_INCLUDE_DIR}) + set(ENV{GIOMM_LIBS} "${GIO_LIBRARY}") + set(ENV{PKG_CONFIG} "echo") + + file(MAKE_DIRECTORY ${CMAKE_BINARY_DIR}/config) + execute_process( + COMMAND "${CMAKE_SOURCE_DIR}/configure" + WORKING_DIRECTORY ${CMAKE_BINARY_DIR}/config + RESULT_VARIABLE res + ) + if(NOT res EQUAL 0) + message(FATAL_ERROR "Configure failed.") + endif() +endif() + +file(GLOB GLIBMM_SOURCES glib/glibmm/*.cc) +add_library(glibmm ${GLIBMM_SOURCES}) +target_compile_definitions(glibmm PRIVATE -DGLIBMM_BUILD) +target_include_directories(glibmm PUBLIC glib ${CMAKE_BINARY_DIR}/config/glib) + +file(GLOB GIOMM_SOURCES gio/giomm/*.cc) +if(WIN32) + list(FILTER GIOMM_SOURCES EXCLUDE REGEX "desktopappinfo.cc\$|/unix[^/]+.cc\$") +endif() +add_library(giomm ${GIOMM_SOURCES}) +target_compile_definitions(giomm PRIVATE -DGIOMM_BUILD) +target_link_libraries(giomm PUBLIC glibmm) +target_include_directories(giomm PUBLIC gio ${CMAKE_BINARY_DIR}/config/gio) + +install( + TARGETS glibmm giomm + RUNTIME DESTINATION bin + ARCHIVE DESTINATION lib + LIBRARY DESTINATION lib +) + +if(NOT DISABLE_INSTALL_HEADERS) + install( + FILES + ${CMAKE_BINARY_DIR}/config/gio/giommconfig.h + gio/giomm.h + ${CMAKE_BINARY_DIR}/config/glib/glibmmconfig.h + glib/glibmm.h + DESTINATION include + ) + install( + DIRECTORY gio/giomm glib/glibmm + DESTINATION include + FILES_MATCHING PATTERN *.h + ) +endif() + +if(NOT DISABLE_EXAMPLES) + add_executable(options examples/options/main.cc) + target_link_libraries(options PRIVATE giomm) +endif() diff --git a/ports/glibmm/CONTROL b/ports/glibmm/CONTROL index 52a4e0e05..a7ccbe937 100644 --- a/ports/glibmm/CONTROL +++ b/ports/glibmm/CONTROL @@ -1,4 +1,4 @@ Source: glibmm -Version: 2.52.1 +Version: 2.52.1-7 Description: This is glibmm, a C++ API for parts of glib that are useful for C++. See http://www.gtkmm.org. Build-Depends: zlib, pcre, libffi, gettext, libiconv, glib, libsigcpp diff --git a/ports/glibmm/COPYING b/ports/glibmm/COPYING deleted file mode 100644 index 5e1f37e13..000000000 --- a/ports/glibmm/COPYING +++ /dev/null @@ -1,514 +0,0 @@ - - GNU LESSER GENERAL PUBLIC LICENSE - Version 2.1, February 1999 - - Copyright (C) 1991, 1999 Free Software Foundation, Inc. - 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA - Everyone is permitted to copy and distribute verbatim copies - of this license document, but changing it is not allowed. - -[This is the first released version of the Lesser GPL. It also counts - as the successor of the GNU Library Public License, version 2, hence - the version number 2.1.] - - Preamble - - The licenses for most software are designed to take away your -freedom to share and change it. By contrast, the GNU General Public -Licenses are intended to guarantee your freedom to share and change -free software--to make sure the software is free for all its users. - - This license, the Lesser General Public License, applies to some -specially designated software packages--typically libraries--of the -Free Software Foundation and other authors who decide to use it. You -can use it too, but we suggest you first think carefully about whether -this license or the ordinary General Public License is the better -strategy to use in any particular case, based on the explanations -below. - - When we speak of free software, we are referring to freedom of use, -not price. Our General Public Licenses are designed to make sure that -you have the freedom to distribute copies of free software (and charge -for this service if you wish); that you receive source code or can get -it if you want it; that you can change the software and use pieces of -it in new free programs; and that you are informed that you can do -these things. - - To protect your rights, we need to make restrictions that forbid -distributors to deny you these rights or to ask you to surrender these -rights. These restrictions translate to certain responsibilities for -you if you distribute copies of the library or if you modify it. - - For example, if you distribute copies of the library, whether gratis -or for a fee, you must give the recipients all the rights that we gave -you. You must make sure that they, too, receive or can get the source -code. If you link other code with the library, you must provide -complete object files to the recipients, so that they can relink them -with the library after making changes to the library and recompiling -it. And you must show them these terms so they know their rights. - - We protect your rights with a two-step method: (1) we copyright the -library, and (2) we offer you this license, which gives you legal -permission to copy, distribute and/or modify the library. - - To protect each distributor, we want to make it very clear that -there is no warranty for the free library. Also, if the library is -modified by someone else and passed on, the recipients should know -that what they have is not the original version, so that the original -author's reputation will not be affected by problems that might be -introduced by others. -^L - Finally, software patents pose a constant threat to the existence of -any free program. We wish to make sure that a company cannot -effectively restrict the users of a free program by obtaining a -restrictive license from a patent holder. Therefore, we insist that -any patent license obtained for a version of the library must be -consistent with the full freedom of use specified in this license. - - Most GNU software, including some libraries, is covered by the -ordinary GNU General Public License. This license, the GNU Lesser -General Public License, applies to certain designated libraries, and -is quite different from the ordinary General Public License. We use -this license for certain libraries in order to permit linking those -libraries into non-free programs. - - When a program is linked with a library, whether statically or using -a shared library, the combination of the two is legally speaking a -combined work, a derivative of the original library. The ordinary -General Public License therefore permits such linking only if the -entire combination fits its criteria of freedom. The Lesser General -Public License permits more lax criteria for linking other code with -the library. - - We call this license the "Lesser" General Public License because it -does Less to protect the user's freedom than the ordinary General -Public License. It also provides other free software developers Less -of an advantage over competing non-free programs. These disadvantages -are the reason we use the ordinary General Public License for many -libraries. However, the Lesser license provides advantages in certain -special circumstances. - - For example, on rare occasions, there may be a special need to -encourage the widest possible use of a certain library, so that it -becomes -a de-facto standard. To achieve this, non-free programs must be -allowed to use the library. A more frequent case is that a free -library does the same job as widely used non-free libraries. In this -case, there is little to gain by limiting the free library to free -software only, so we use the Lesser General Public License. - - In other cases, permission to use a particular library in non-free -programs enables a greater number of people to use a large body of -free software. For example, permission to use the GNU C Library in -non-free programs enables many more people to use the whole GNU -operating system, as well as its variant, the GNU/Linux operating -system. - - Although the Lesser General Public License is Less protective of the -users' freedom, it does ensure that the user of a program that is -linked with the Library has the freedom and the wherewithal to run -that program using a modified version of the Library. - - The precise terms and conditions for copying, distribution and -modification follow. Pay close attention to the difference between a -"work based on the library" and a "work that uses the library". The -former contains code derived from the library, whereas the latter must -be combined with the library in order to run. -^L - GNU LESSER GENERAL PUBLIC LICENSE - TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION - - 0. This License Agreement applies to any software library or other -program which contains a notice placed by the copyright holder or -other authorized party saying it may be distributed under the terms of -this Lesser General Public License (also called "this License"). -Each licensee is addressed as "you". - - A "library" means a collection of software functions and/or data -prepared so as to be conveniently linked with application programs -(which use some of those functions and data) to form executables. - - The "Library", below, refers to any such software library or work -which has been distributed under these terms. A "work based on the -Library" means either the Library or any derivative work under -copyright law: that is to say, a work containing the Library or a -portion of it, either verbatim or with modifications and/or translated -straightforwardly into another language. (Hereinafter, translation is -included without limitation in the term "modification".) - - "Source code" for a work means the preferred form of the work for -making modifications to it. For a library, complete source code means -all the source code for all modules it contains, plus any associated -interface definition files, plus the scripts used to control -compilation -and installation of the library. - - Activities other than copying, distribution and modification are not -covered by this License; they are outside its scope. The act of -running a program using the Library is not restricted, and output from -such a program is covered only if its contents constitute a work based -on the Library (independent of the use of the Library in a tool for -writing it). Whether that is true depends on what the Library does -and what the program that uses the Library does. - - 1. You may copy and distribute verbatim copies of the Library's -complete source code as you receive it, in any medium, provided that -you conspicuously and appropriately publish on each copy an -appropriate copyright notice and disclaimer of warranty; keep intact -all the notices that refer to this License and to the absence of any -warranty; and distribute a copy of this License along with the -Library. - - You may charge a fee for the physical act of transferring a copy, -and you may at your option offer warranty protection in exchange for a -fee. - - 2. You may modify your copy or copies of the Library or any portion -of it, thus forming a work based on the Library, and copy and -distribute such modifications or work under the terms of Section 1 -above, provided that you also meet all of these conditions: - - a) The modified work must itself be a software library. - - b) You must cause the files modified to carry prominent notices - stating that you changed the files and the date of any change. - - c) You must cause the whole of the work to be licensed at no - charge to all third parties under the terms of this License. - - d) If a facility in the modified Library refers to a function or a - table of data to be supplied by an application program that uses - the facility, other than as an argument passed when the facility - is invoked, then you must make a good faith effort to ensure that, - in the event an application does not supply such function or - table, the facility still operates, and performs whatever part of - its purpose remains meaningful. - - (For example, a function in a library to compute square roots has - a purpose that is entirely well-defined independent of the - application. Therefore, Subsection 2d requires that any - application-supplied function or table used by this function must - be optional: if the application does not supply it, the square - root function must still compute square roots.) - -These requirements apply to the modified work as a whole. If -identifiable sections of that work are not derived from the Library, -and can be reasonably considered independent and separate works in -themselves, then this License, and its terms, do not apply to those -sections when you distribute them as separate works. But when you -distribute the same sections as part of a whole which is a work based -on the Library, the distribution of the whole must be on the terms of -this License, whose permissions for other licensees extend to the -entire whole, and thus to each and every part regardless of who wrote -it. - -Thus, it is not the intent of this section to claim rights or contest -your rights to work written entirely by you; rather, the intent is to -exercise the right to control the distribution of derivative or -collective works based on the Library. - -In addition, mere aggregation of another work not based on the Library -with the Library (or with a work based on the Library) on a volume of -a storage or distribution medium does not bring the other work under -the scope of this License. - - 3. You may opt to apply the terms of the ordinary GNU General Public -License instead of this License to a given copy of the Library. To do -this, you must alter all the notices that refer to this License, so -that they refer to the ordinary GNU General Public License, version 2, -instead of to this License. (If a newer version than version 2 of the -ordinary GNU General Public License has appeared, then you can specify -that version instead if you wish.) Do not make any other change in -these notices. -^L - Once this change is made in a given copy, it is irreversible for -that copy, so the ordinary GNU General Public License applies to all -subsequent copies and derivative works made from that copy. - - This option is useful when you wish to copy part of the code of -the Library into a program that is not a library. - - 4. You may copy and distribute the Library (or a portion or -derivative of it, under Section 2) in object code or executable form -under the terms of Sections 1 and 2 above provided that you accompany -it with the complete corresponding machine-readable source code, which -must be distributed under the terms of Sections 1 and 2 above on a -medium customarily used for software interchange. - - If distribution of object code is made by offering access to copy -from a designated place, then offering equivalent access to copy the -source code from the same place satisfies the requirement to -distribute the source code, even though third parties are not -compelled to copy the source along with the object code. - - 5. A program that contains no derivative of any portion of the -Library, but is designed to work with the Library by being compiled or -linked with it, is called a "work that uses the Library". Such a -work, in isolation, is not a derivative work of the Library, and -therefore falls outside the scope of this License. - - However, linking a "work that uses the Library" with the Library -creates an executable that is a derivative of the Library (because it -contains portions of the Library), rather than a "work that uses the -library". The executable is therefore covered by this License. -Section 6 states terms for distribution of such executables. - - When a "work that uses the Library" uses material from a header file -that is part of the Library, the object code for the work may be a -derivative work of the Library even though the source code is not. -Whether this is true is especially significant if the work can be -linked without the Library, or if the work is itself a library. The -threshold for this to be true is not precisely defined by law. - - If such an object file uses only numerical parameters, data -structure layouts and accessors, and small macros and small inline -functions (ten lines or less in length), then the use of the object -file is unrestricted, regardless of whether it is legally a derivative -work. (Executables containing this object code plus portions of the -Library will still fall under Section 6.) - - Otherwise, if the work is a derivative of the Library, you may -distribute the object code for the work under the terms of Section 6. -Any executables containing that work also fall under Section 6, -whether or not they are linked directly with the Library itself. -^L - 6. As an exception to the Sections above, you may also combine or -link a "work that uses the Library" with the Library to produce a -work containing portions of the Library, and distribute that work -under terms of your choice, provided that the terms permit -modification of the work for the customer's own use and reverse -engineering for debugging such modifications. - - You must give prominent notice with each copy of the work that the -Library is used in it and that the Library and its use are covered by -this License. You must supply a copy of this License. If the work -during execution displays copyright notices, you must include the -copyright notice for the Library among them, as well as a reference -directing the user to the copy of this License. Also, you must do one -of these things: - - a) Accompany the work with the complete corresponding - machine-readable source code for the Library including whatever - changes were used in the work (which must be distributed under - Sections 1 and 2 above); and, if the work is an executable linked - with the Library, with the complete machine-readable "work that - uses the Library", as object code and/or source code, so that the - user can modify the Library and then relink to produce a modified - executable containing the modified Library. (It is understood - that the user who changes the contents of definitions files in the - Library will not necessarily be able to recompile the application - to use the modified definitions.) - - b) Use a suitable shared library mechanism for linking with the - Library. A suitable mechanism is one that (1) uses at run time a - copy of the library already present on the user's computer system, - rather than copying library functions into the executable, and (2) - will operate properly with a modified version of the library, if - the user installs one, as long as the modified version is - interface-compatible with the version that the work was made with. - - c) Accompany the work with a written offer, valid for at - least three years, to give the same user the materials - specified in Subsection 6a, above, for a charge no more - than the cost of performing this distribution. - - d) If distribution of the work is made by offering access to copy - from a designated place, offer equivalent access to copy the above - specified materials from the same place. - - e) Verify that the user has already received a copy of these - materials or that you have already sent this user a copy. - - For an executable, the required form of the "work that uses the -Library" must include any data and utility programs needed for -reproducing the executable from it. However, as a special exception, -the materials to be distributed need not include anything that is -normally distributed (in either source or binary form) with the major -components (compiler, kernel, and so on) of the operating system on -which the executable runs, unless that component itself accompanies -the executable. - - It may happen that this requirement contradicts the license -restrictions of other proprietary libraries that do not normally -accompany the operating system. Such a contradiction means you cannot -use both them and the Library together in an executable that you -distribute. -^L - 7. You may place library facilities that are a work based on the -Library side-by-side in a single library together with other library -facilities not covered by this License, and distribute such a combined -library, provided that the separate distribution of the work based on -the Library and of the other library facilities is otherwise -permitted, and provided that you do these two things: - - a) Accompany the combined library with a copy of the same work - based on the Library, uncombined with any other library - facilities. This must be distributed under the terms of the - Sections above. - - b) Give prominent notice with the combined library of the fact - that part of it is a work based on the Library, and explaining - where to find the accompanying uncombined form of the same work. - - 8. You may not copy, modify, sublicense, link with, or distribute -the Library except as expressly provided under this License. Any -attempt otherwise to copy, modify, sublicense, link with, or -distribute the Library is void, and will automatically terminate your -rights under this License. However, parties who have received copies, -or rights, from you under this License will not have their licenses -terminated so long as such parties remain in full compliance. - - 9. You are not required to accept this License, since you have not -signed it. However, nothing else grants you permission to modify or -distribute the Library or its derivative works. These actions are -prohibited by law if you do not accept this License. Therefore, by -modifying or distributing the Library (or any work based on the -Library), you indicate your acceptance of this License to do so, and -all its terms and conditions for copying, distributing or modifying -the Library or works based on it. - - 10. Each time you redistribute the Library (or any work based on the -Library), the recipient automatically receives a license from the -original licensor to copy, distribute, link with or modify the Library -subject to these terms and conditions. You may not impose any further -restrictions on the recipients' exercise of the rights granted herein. -You are not responsible for enforcing compliance by third parties with -this License. -^L - 11. If, as a consequence of a court judgment or allegation of patent -infringement or for any other reason (not limited to patent issues), -conditions are imposed on you (whether by court order, agreement or -otherwise) that contradict the conditions of this License, they do not -excuse you from the conditions of this License. If you cannot -distribute so as to satisfy simultaneously your obligations under this -License and any other pertinent obligations, then as a consequence you -may not distribute the Library at all. For example, if a patent -license would not permit royalty-free redistribution of the Library by -all those who receive copies directly or indirectly through you, then -the only way you could satisfy both it and this License would be to -refrain entirely from distribution of the Library. - -If any portion of this section is held invalid or unenforceable under -any particular circumstance, the balance of the section is intended to -apply, and the section as a whole is intended to apply in other -circumstances. - -It is not the purpose of this section to induce you to infringe any -patents or other property right claims or to contest validity of any -such claims; this section has the sole purpose of protecting the -integrity of the free software distribution system which is -implemented by public license practices. Many people have made -generous contributions to the wide range of software distributed -through that system in reliance on consistent application of that -system; it is up to the author/donor to decide if he or she is willing -to distribute software through any other system and a licensee cannot -impose that choice. - -This section is intended to make thoroughly clear what is believed to -be a consequence of the rest of this License. - - 12. If the distribution and/or use of the Library is restricted in -certain countries either by patents or by copyrighted interfaces, the -original copyright holder who places the Library under this License -may add an explicit geographical distribution limitation excluding those -countries, so that distribution is permitted only in or among -countries not thus excluded. In such case, this License incorporates -the limitation as if written in the body of this License. - - 13. The Free Software Foundation may publish revised and/or new -versions of the Lesser General Public License from time to time. -Such new versions will be similar in spirit to the present version, -but may differ in detail to address new problems or concerns. - -Each version is given a distinguishing version number. If the Library -specifies a version number of this License which applies to it and -"any later version", you have the option of following the terms and -conditions either of that version or of any later version published by -the Free Software Foundation. If the Library does not specify a -license version number, you may choose any version ever published by -the Free Software Foundation. -^L - 14. If you wish to incorporate parts of the Library into other free -programs whose distribution conditions are incompatible with these, -write to the author to ask for permission. For software which is -copyrighted by the Free Software Foundation, write to the Free -Software Foundation; we sometimes make exceptions for this. Our -decision will be guided by the two goals of preserving the free status -of all derivatives of our free software and of promoting the sharing -and reuse of software generally. - - NO WARRANTY - - 15. BECAUSE THE LIBRARY IS LICENSED FREE OF CHARGE, THERE IS NO -WARRANTY FOR THE LIBRARY, TO THE EXTENT PERMITTED BY APPLICABLE LAW. -EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR -OTHER PARTIES PROVIDE THE LIBRARY "AS IS" WITHOUT WARRANTY OF ANY -KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE -IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR -PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE -LIBRARY IS WITH YOU. SHOULD THE LIBRARY PROVE DEFECTIVE, YOU ASSUME -THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION. - - 16. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN -WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY -AND/OR REDISTRIBUTE THE LIBRARY AS PERMITTED ABOVE, BE LIABLE TO YOU -FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR -CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE -LIBRARY (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING -RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A -FAILURE OF THE LIBRARY TO OPERATE WITH ANY OTHER SOFTWARE), EVEN IF -SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH -DAMAGES. - - END OF TERMS AND CONDITIONS -^L - How to Apply These Terms to Your New Libraries - - If you develop a new library, and you want it to be of the greatest -possible use to the public, we recommend making it free software that -everyone can redistribute and change. You can do so by permitting -redistribution under these terms (or, alternatively, under the terms -of the ordinary General Public License). - - To apply these terms, attach the following notices to the library. -It is safest to attach them to the start of each source file to most -effectively convey the exclusion of warranty; and each file should -have at least the "copyright" line and a pointer to where the full -notice is found. - - - - Copyright (C) - - This library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. - - This library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with this library; if not, write to the Free Software - Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA - -Also add information on how to contact you by electronic and paper -mail. - -You should also get your employer (if you work as a programmer) or -your -school, if any, to sign a "copyright disclaimer" for the library, if -necessary. Here is a sample; alter the names: - - Yoyodyne, Inc., hereby disclaims all copyright interest in the - library `Frob' (a library for tweaking knobs) written by James -Random Hacker. - - , 1 April 1990 - Ty Coon, President of Vice - -That's all there is to it! - - diff --git a/ports/glibmm/README b/ports/glibmm/README deleted file mode 100644 index 341c67e43..000000000 --- a/ports/glibmm/README +++ /dev/null @@ -1,4 +0,0 @@ -This is glibmm, a C++ API for parts of glib that are useful for C++. -See http://www.gtkmm.org - - diff --git a/ports/glibmm/fix_charset.patch b/ports/glibmm/fix_charset.patch deleted file mode 100644 index 8831fc946..000000000 --- a/ports/glibmm/fix_charset.patch +++ /dev/null @@ -1,2702 +0,0 @@ -diff --git a/MSVC_Net2013/compose.vcxproj b/MSVC_Net2013/compose.vcxproj -index 4775af3..72a7054 100644 ---- a/MSVC_Net2013/compose.vcxproj -+++ b/MSVC_Net2013/compose.vcxproj -@@ -23,26 +23,27 @@ - {D1C74410-023C-48DE-B636-E8B6D177C306} - compose - Win32Proj -+ 8.1 - - - - Application -- MultiByte -+ Unicode - v120 - - - Application -- MultiByte -+ Unicode - v120 - - - Application -- MultiByte -+ Unicode - v120 - - - Application -- MultiByte -+ Unicode - v120 - - -@@ -189,4 +190,4 @@ - - - -- -+ -\ No newline at end of file -diff --git a/MSVC_Net2013/dispatcher.vcxproj b/MSVC_Net2013/dispatcher.vcxproj -index 6c403c0..90d254a 100644 ---- a/MSVC_Net2013/dispatcher.vcxproj -+++ b/MSVC_Net2013/dispatcher.vcxproj -@@ -23,26 +23,27 @@ - {129ECC08-6D30-4884-B824-4AF96EF0A45C} - dispatcher - Win32Proj -+ 8.1 - - - - Application -- MultiByte -+ Unicode - v120 - - - Application -- MultiByte -+ Unicode - v120 - - - Application -- MultiByte -+ Unicode - v120 - - - Application -- MultiByte -+ Unicode - v120 - - -@@ -189,4 +190,4 @@ - - - -- -+ -\ No newline at end of file -diff --git a/MSVC_Net2013/dispatcher2.vcxproj b/MSVC_Net2013/dispatcher2.vcxproj -index db6a5fd..9cf6b57 100644 ---- a/MSVC_Net2013/dispatcher2.vcxproj -+++ b/MSVC_Net2013/dispatcher2.vcxproj -@@ -22,26 +22,27 @@ - dispatcher2 - {18A82706-B645-4DF5-AB09-06B90128BAC5} - Win32Proj -+ 8.1 - - - - Application -- MultiByte -+ Unicode - v120 - - - Application -- MultiByte -+ Unicode - v120 - - - Application -- MultiByte -+ Unicode - v120 - - - Application -- MultiByte -+ Unicode - v120 - - -@@ -188,4 +189,4 @@ - - - -- -+ -\ No newline at end of file -diff --git a/MSVC_Net2013/gendef.vcxproj b/MSVC_Net2013/gendef.vcxproj -index 8894039..0b2cb08 100644 ---- a/MSVC_Net2013/gendef.vcxproj -+++ b/MSVC_Net2013/gendef.vcxproj -@@ -1,168 +1,169 @@ --??? -- -- -- -- Debug -- Win32 -- -- -- Debug -- x64 -- -- -- Release -- Win32 -- -- -- Release -- x64 -- -- -- -- {07324745-C9BE-4D65-B08A-9C88188C0C28} -- Win32Proj -- -- -- -- Application -- MultiByte -- v120 -- -- -- Application -- MultiByte -- v120 -- -- -- Application -- MultiByte -- v120 -- -- -- Application -- MultiByte -- v120 -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- true -- true -- false -- true -- true -- true -- false -- true -- -- -- -- Disabled -- _DEBUG;%(PreprocessorDefinitions) -- true -- EnableFastChecks -- MultiThreadedDebug -- Level3 -- EditAndContinue -- -- -- true -- $(OutDir)\$(TargetName).pdb -- Console -- false -- -- -- MachineX86 -+??? -+ -+ -+ -+ Debug -+ Win32 -+ -+ -+ Debug -+ x64 -+ -+ -+ Release -+ Win32 -+ -+ -+ Release -+ x64 -+ -+ -+ -+ {07324745-C9BE-4D65-B08A-9C88188C0C28} -+ Win32Proj -+ 8.1 -+ -+ -+ -+ Application -+ Unicode -+ v120 -+ -+ -+ Application -+ Unicode -+ v120 -+ -+ -+ Application -+ Unicode -+ v120 -+ -+ -+ Application -+ Unicode -+ v120 -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ true -+ true -+ false -+ true -+ true -+ true -+ false -+ true -+ -+ -+ -+ Disabled -+ _DEBUG;%(PreprocessorDefinitions) -+ true -+ EnableFastChecks -+ MultiThreadedDebug -+ Level3 -+ EditAndContinue -+ -+ -+ true -+ $(OutDir)\$(TargetName).pdb -+ Console -+ false -+ -+ -+ MachineX86 - %(AdditionalDependencies) -- -- -- -- -- ;%(PreprocessorDefinitions) -- MultiThreaded -- Level3 -- ProgramDatabase -- -- -- true -- Console -- true -- true -- false -- -- -- MachineX86 -+ -+ -+ -+ -+ ;%(PreprocessorDefinitions) -+ MultiThreaded -+ Level3 -+ ProgramDatabase -+ -+ -+ true -+ Console -+ true -+ true -+ false -+ -+ -+ MachineX86 - %(AdditionalDependencies) -- -- -- -- -- X64 -- -- -- Disabled -- _DEBUG;%(PreprocessorDefinitions) -- true -- EnableFastChecks -- MultiThreadedDebug -- Level3 -- ProgramDatabase -- -- -- true -- $(OutDir)\$(TargetName).pdb -- Console -- false -- -- -- MachineX64 -+ -+ -+ -+ -+ X64 -+ -+ -+ Disabled -+ _DEBUG;%(PreprocessorDefinitions) -+ true -+ EnableFastChecks -+ MultiThreadedDebug -+ Level3 -+ ProgramDatabase -+ -+ -+ true -+ $(OutDir)\$(TargetName).pdb -+ Console -+ false -+ -+ -+ MachineX64 - %(AdditionalDependencies) -- -- -- -- -- X64 -- -- -- ;%(PreprocessorDefinitions) -- MultiThreaded -- Level3 -- ProgramDatabase -- -- -- true -- Console -- true -- true -- false -- -- -- MachineX64 -+ -+ -+ -+ -+ X64 -+ -+ -+ ;%(PreprocessorDefinitions) -+ MultiThreaded -+ Level3 -+ ProgramDatabase -+ -+ -+ true -+ Console -+ true -+ true -+ false -+ -+ -+ MachineX64 - %(AdditionalDependencies) -- -- -- -- -- -- -- -- -- -\ No newline at end of file -+ -+ -+ -+ -+ -+ -+ -+ -+ -\ No newline at end of file -diff --git a/MSVC_Net2013/giomm.vcxproj b/MSVC_Net2013/giomm.vcxproj -index df3c4f8..f9baf6b 100644 ---- a/MSVC_Net2013/giomm.vcxproj -+++ b/MSVC_Net2013/giomm.vcxproj -@@ -1,458 +1,459 @@ --??? -- -- -- -- Debug -- Win32 -- -- -- Debug -- x64 -- -- -- Release -- Win32 -- -- -- Release -- x64 -- -- -- -- giomm -- {EE6C0430-C2C9-425C-8EBA-963FAC3E9832} -- -- -- -- DynamicLibrary -- MultiByte -- v120 -- -- -- DynamicLibrary -- MultiByte -- v120 -- -- -- DynamicLibrary -- MultiByte -- v120 -- -- -- DynamicLibrary -- MultiByte -- v120 -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- %(AdditionalOptions) -- Disabled -+??? -+ -+ -+ -+ Debug -+ Win32 -+ -+ -+ Debug -+ x64 -+ -+ -+ Release -+ Win32 -+ -+ -+ Release -+ x64 -+ -+ -+ -+ giomm -+ {EE6C0430-C2C9-425C-8EBA-963FAC3E9832} -+ 8.1 -+ -+ -+ -+ DynamicLibrary -+ Unicode -+ v120 -+ -+ -+ DynamicLibrary -+ Unicode -+ v120 -+ -+ -+ DynamicLibrary -+ Unicode -+ v120 -+ -+ -+ DynamicLibrary -+ Unicode -+ v120 -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ %(AdditionalOptions) -+ Disabled - .\giomm;..\gio;%(AdditionalIncludeDirectories) -- _DEBUG;$(GioMMBuildDefs);%(PreprocessorDefinitions) -- true -- EnableFastChecks -- MultiThreadedDebugDLL -- Level3 -- EditAndContinue -- -- -- Generate giomm def file -- $(OutDir)\gendef.exe $(DefDir)\$(ProjectName).def $(ProjectName)$(DebugDllSuffix).dll $(IntDir)*.obj -- -- -+ _DEBUG;$(GioMMBuildDefs);%(PreprocessorDefinitions) -+ true -+ EnableFastChecks -+ MultiThreadedDebugDLL -+ Level3 -+ EditAndContinue -+ -+ -+ Generate giomm def file -+ $(OutDir)\gendef.exe $(DefDir)\$(ProjectName).def $(ProjectName)$(DebugDllSuffix).dll $(IntDir)*.obj -+ -+ - %(AdditionalDependencies) -- %(AdditionalLibraryDirectories) -- $(OutDir)\$(ProjectName)$(DebugDllSuffix).dll -- $(TargetDir)$(ProjectName)$(DebugDllSuffix).lib -- $(IntDir)\$(ProjectName).def -- true -- false -- -- -- -- -- -- -- X64 -- -- -- %(AdditionalOptions) -- Disabled -+ %(AdditionalLibraryDirectories) -+ $(OutDir)\$(ProjectName)$(DebugDllSuffix).dll -+ $(TargetDir)$(ProjectName)$(DebugDllSuffix).lib -+ $(IntDir)\$(ProjectName).def -+ true -+ false -+ -+ -+ -+ -+ -+ -+ X64 -+ -+ -+ %(AdditionalOptions) -+ Disabled - .\giomm;..\gio;%(AdditionalIncludeDirectories) -- _DEBUG;$(GioMMBuildDefs);%(PreprocessorDefinitions) -- true -- EnableFastChecks -- MultiThreadedDebugDLL -- Level3 -- ProgramDatabase -- -- -- Generate giomm def file -- $(OutDir)\gendef.exe $(DefDir)\$(ProjectName).def $(ProjectName)$(DebugDllSuffix).dll $(IntDir)*.obj -- -- -+ _DEBUG;$(GioMMBuildDefs);%(PreprocessorDefinitions) -+ true -+ EnableFastChecks -+ MultiThreadedDebugDLL -+ Level3 -+ ProgramDatabase -+ -+ -+ Generate giomm def file -+ $(OutDir)\gendef.exe $(DefDir)\$(ProjectName).def $(ProjectName)$(DebugDllSuffix).dll $(IntDir)*.obj -+ -+ - %(AdditionalDependencies) -- %(AdditionalLibraryDirectories) -- $(OutDir)\$(ProjectName)$(DebugDllSuffix).dll -- $(TargetDir)$(ProjectName)$(DebugDllSuffix).lib -- $(IntDir)\$(ProjectName).def -- true -- false -- -- -- MachineX64 -- -- -- -- -- %(AdditionalOptions) -+ %(AdditionalLibraryDirectories) -+ $(OutDir)\$(ProjectName)$(DebugDllSuffix).dll -+ $(TargetDir)$(ProjectName)$(DebugDllSuffix).lib -+ $(IntDir)\$(ProjectName).def -+ true -+ false -+ -+ -+ MachineX64 -+ -+ -+ -+ -+ %(AdditionalOptions) - .\giomm;..\gio;%(AdditionalIncludeDirectories) -- $(GioMMBuildDefs);%(PreprocessorDefinitions) -- MultiThreadedDLL -- Level3 -- ProgramDatabase -- -- -- Generate giomm def file -- $(OutDir)\gendef.exe $(DefDir)\$(ProjectName).def $(ProjectName)$(ReleaseDllSuffix).dll $(IntDir)*.obj -- -- -+ $(GioMMBuildDefs);%(PreprocessorDefinitions) -+ MultiThreadedDLL -+ Level3 -+ ProgramDatabase -+ -+ -+ Generate giomm def file -+ $(OutDir)\gendef.exe $(DefDir)\$(ProjectName).def $(ProjectName)$(ReleaseDllSuffix).dll $(IntDir)*.obj -+ -+ - %(AdditionalDependencies) -- %(AdditionalLibraryDirectories) -- $(OutDir)\$(ProjectName)$(ReleaseDllSuffix).dll -- $(TargetDir)$(ProjectName)$(ReleaseDllSuffix).lib -- $(IntDir)\$(ProjectName).def -- false -- true -- $(OutDir)\$(ProjectName)$(ReleaseDllSuffix).pdb -- true -- -- -- -- -- -- -- X64 -- -- -- %(AdditionalOptions) -+ %(AdditionalLibraryDirectories) -+ $(OutDir)\$(ProjectName)$(ReleaseDllSuffix).dll -+ $(TargetDir)$(ProjectName)$(ReleaseDllSuffix).lib -+ $(IntDir)\$(ProjectName).def -+ false -+ true -+ $(OutDir)\$(ProjectName)$(ReleaseDllSuffix).pdb -+ true -+ -+ -+ -+ -+ -+ -+ X64 -+ -+ -+ %(AdditionalOptions) - .\giomm;..\gio;%(AdditionalIncludeDirectories) -- $(GioMMBuildDefs);%(PreprocessorDefinitions) -- MultiThreadedDLL -- Level3 -- ProgramDatabase -- -- -- Generate giomm def file -- $(OutDir)\gendef.exe $(DefDir)\$(ProjectName).def $(ProjectName)$(ReleaseDllSuffix).dll $(IntDir)*.obj -- -- -+ $(GioMMBuildDefs);%(PreprocessorDefinitions) -+ MultiThreadedDLL -+ Level3 -+ ProgramDatabase -+ -+ -+ Generate giomm def file -+ $(OutDir)\gendef.exe $(DefDir)\$(ProjectName).def $(ProjectName)$(ReleaseDllSuffix).dll $(IntDir)*.obj -+ -+ - %(AdditionalDependencies) -- %(AdditionalLibraryDirectories) -- $(OutDir)\$(ProjectName)$(ReleaseDllSuffix).dll -- $(TargetDir)$(ProjectName)$(ReleaseDllSuffix).lib -- $(IntDir)\$(ProjectName).def -- false -- true -- $(OutDir)\$(ProjectName)$(ReleaseDllSuffix).pdb -- true -- -- -- MachineX64 -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- {58b2b53c-c4ff-47fd-817b-095e45b7f7d4} -- false -- -- -- -- -- -- -\ No newline at end of file -+ %(AdditionalLibraryDirectories) -+ $(OutDir)\$(ProjectName)$(ReleaseDllSuffix).dll -+ $(TargetDir)$(ProjectName)$(ReleaseDllSuffix).lib -+ $(IntDir)\$(ProjectName).def -+ false -+ true -+ $(OutDir)\$(ProjectName)$(ReleaseDllSuffix).pdb -+ true -+ -+ -+ MachineX64 -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ {58b2b53c-c4ff-47fd-817b-095e45b7f7d4} -+ false -+ -+ -+ -+ -+ -+ -\ No newline at end of file -diff --git a/MSVC_Net2013/giomm_simple.vcxproj b/MSVC_Net2013/giomm_simple.vcxproj -index 1eb6124..2db412e 100644 ---- a/MSVC_Net2013/giomm_simple.vcxproj -+++ b/MSVC_Net2013/giomm_simple.vcxproj -@@ -23,26 +23,27 @@ - {F4F66980-51D4-4CC2-A529-9AD2C9F7D143} - tests_giomm_simple - Win32Proj -+ 8.1 - - - - Application -- MultiByte -+ Unicode - v120 - - - Application -- MultiByte -+ Unicode - v120 - - - Application -- MultiByte -+ Unicode - v120 - - - Application -- MultiByte -+ Unicode - v120 - - -@@ -189,4 +190,4 @@ - - - -- -+ -\ No newline at end of file -diff --git a/MSVC_Net2013/glibmm.vcxproj b/MSVC_Net2013/glibmm.vcxproj -index cf86400..e3df6a8 100644 ---- a/MSVC_Net2013/glibmm.vcxproj -+++ b/MSVC_Net2013/glibmm.vcxproj -@@ -1,362 +1,363 @@ --??? -- -- -- -- Debug -- Win32 -- -- -- Debug -- x64 -- -- -- Release -- Win32 -- -- -- Release -- x64 -- -- -- -- glibmm -- {58B2B53C-C4FF-47FD-817B-095E45B7F7D4} -- glibmm -- Win32Proj -- -- -- -- DynamicLibrary -- MultiByte -- v120 -- -- -- DynamicLibrary -- MultiByte -- v120 -- -- -- DynamicLibrary -- MultiByte -- v120 -- -- -- DynamicLibrary -- MultiByte -- v120 -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- true -- true -- true -- true -- true -- true -- true -- true -- -- -- -- %(AdditionalOptions) -- Disabled -- %(AdditionalIncludeDirectories) -- _DEBUG;$(GLibMMBuildDefs);%(PreprocessorDefinitions) -- true -- EnableFastChecks -- MultiThreadedDebugDLL -- true -- Level3 -- EditAndContinue -- -- -- Generate glibmm def file -- $(OutDir)\gendef.exe $(DefDir)\$(ProjectName).def $(ProjectName)$(DebugDllSuffix).dll $(IntDir)*.obj -- -- -+??? -+ -+ -+ -+ Debug -+ Win32 -+ -+ -+ Debug -+ x64 -+ -+ -+ Release -+ Win32 -+ -+ -+ Release -+ x64 -+ -+ -+ -+ glibmm -+ {58B2B53C-C4FF-47FD-817B-095E45B7F7D4} -+ glibmm -+ Win32Proj -+ 8.1 -+ -+ -+ -+ DynamicLibrary -+ Unicode -+ v120 -+ -+ -+ DynamicLibrary -+ Unicode -+ v120 -+ -+ -+ DynamicLibrary -+ Unicode -+ v120 -+ -+ -+ DynamicLibrary -+ Unicode -+ v120 -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ true -+ true -+ true -+ true -+ true -+ true -+ true -+ true -+ -+ -+ -+ %(AdditionalOptions) -+ Disabled -+ %(AdditionalIncludeDirectories) -+ _DEBUG;$(GLibMMBuildDefs);%(PreprocessorDefinitions) -+ true -+ EnableFastChecks -+ MultiThreadedDebugDLL -+ true -+ Level3 -+ EditAndContinue -+ -+ -+ Generate glibmm def file -+ $(OutDir)\gendef.exe $(DefDir)\$(ProjectName).def $(ProjectName)$(DebugDllSuffix).dll $(IntDir)*.obj -+ -+ - %(AdditionalDependencies) -- %(AdditionalLibraryDirectories) -- $(OutDir)\$(ProjectName)$(DebugDllSuffix).dll -- $(TargetDir)$(ProjectName)$(DebugDllSuffix).lib -- $(IntDir)\$(ProjectName).def -- true -- false -- -- -- -- -- -- -- X64 -- -- -- %(AdditionalOptions) -- Disabled -- %(AdditionalIncludeDirectories) -- _DEBUG;$(GLibMMBuildDefs);%(PreprocessorDefinitions) -- true -- EnableFastChecks -- MultiThreadedDebugDLL -- true -- Level3 -- ProgramDatabase -- -- -- Generate glibmm def file -- $(OutDir)\gendef.exe $(DefDir)\$(ProjectName).def $(ProjectName)$(DebugDllSuffix).dll $(IntDir)*.obj -- -- -+ %(AdditionalLibraryDirectories) -+ $(OutDir)\$(ProjectName)$(DebugDllSuffix).dll -+ $(TargetDir)$(ProjectName)$(DebugDllSuffix).lib -+ $(IntDir)\$(ProjectName).def -+ true -+ false -+ -+ -+ -+ -+ -+ -+ X64 -+ -+ -+ %(AdditionalOptions) -+ Disabled -+ %(AdditionalIncludeDirectories) -+ _DEBUG;$(GLibMMBuildDefs);%(PreprocessorDefinitions) -+ true -+ EnableFastChecks -+ MultiThreadedDebugDLL -+ true -+ Level3 -+ ProgramDatabase -+ -+ -+ Generate glibmm def file -+ $(OutDir)\gendef.exe $(DefDir)\$(ProjectName).def $(ProjectName)$(DebugDllSuffix).dll $(IntDir)*.obj -+ -+ - %(AdditionalDependencies) -- %(AdditionalLibraryDirectories) -- $(OutDir)\$(ProjectName)$(DebugDllSuffix).dll -- $(TargetDir)$(ProjectName)$(DebugDllSuffix).lib -- $(IntDir)\$(ProjectName).def -- true -- false -- -- -- MachineX64 -- -- -- -- -- %(AdditionalOptions) -- %(AdditionalIncludeDirectories) -- $(GLibMMBuildDefs);%(PreprocessorDefinitions) -- MultiThreadedDLL -- true -- Level3 -- ProgramDatabase -- -- -- Generate glibmm def file -- $(OutDir)\gendef.exe $(DefDir)\$(ProjectName).def $(ProjectName)$(ReleaseDllSuffix).dll $(IntDir)*.obj -- -- -+ %(AdditionalLibraryDirectories) -+ $(OutDir)\$(ProjectName)$(DebugDllSuffix).dll -+ $(TargetDir)$(ProjectName)$(DebugDllSuffix).lib -+ $(IntDir)\$(ProjectName).def -+ true -+ false -+ -+ -+ MachineX64 -+ -+ -+ -+ -+ %(AdditionalOptions) -+ %(AdditionalIncludeDirectories) -+ $(GLibMMBuildDefs);%(PreprocessorDefinitions) -+ MultiThreadedDLL -+ true -+ Level3 -+ ProgramDatabase -+ -+ -+ Generate glibmm def file -+ $(OutDir)\gendef.exe $(DefDir)\$(ProjectName).def $(ProjectName)$(ReleaseDllSuffix).dll $(IntDir)*.obj -+ -+ - %(AdditionalDependencies) -- %(AdditionalLibraryDirectories) -- $(OutDir)\$(ProjectName)$(ReleaseDllSuffix).dll -- $(TargetDir)$(ProjectName)$(ReleaseDllSuffix).lib -- $(IntDir)\$(ProjectName).def -- true -- $(OutDir)\$(ProjectName)$(ReleaseDllSuffix).pdb -- false -- true -- -- -- -- -- -- -- X64 -- -- -- %(AdditionalOptions) -- %(AdditionalIncludeDirectories) -- $(GLibMMBuildDefs);%(PreprocessorDefinitions) -- MultiThreadedDLL -- true -- Level3 -- ProgramDatabase -- -- -- Generate glibmm def file -- $(OutDir)\gendef.exe $(DefDir)\$(ProjectName).def $(ProjectName)$(ReleaseDllSuffix).dll $(IntDir)*.obj -- -- -+ %(AdditionalLibraryDirectories) -+ $(OutDir)\$(ProjectName)$(ReleaseDllSuffix).dll -+ $(TargetDir)$(ProjectName)$(ReleaseDllSuffix).lib -+ $(IntDir)\$(ProjectName).def -+ true -+ $(OutDir)\$(ProjectName)$(ReleaseDllSuffix).pdb -+ false -+ true -+ -+ -+ -+ -+ -+ -+ X64 -+ -+ -+ %(AdditionalOptions) -+ %(AdditionalIncludeDirectories) -+ $(GLibMMBuildDefs);%(PreprocessorDefinitions) -+ MultiThreadedDLL -+ true -+ Level3 -+ ProgramDatabase -+ -+ -+ Generate glibmm def file -+ $(OutDir)\gendef.exe $(DefDir)\$(ProjectName).def $(ProjectName)$(ReleaseDllSuffix).dll $(IntDir)*.obj -+ -+ - %(AdditionalDependencies) -- %(AdditionalLibraryDirectories) -- $(OutDir)\$(ProjectName)$(ReleaseDllSuffix).dll -- $(TargetDir)$(ProjectName)$(ReleaseDllSuffix).lib -- $(IntDir)\$(ProjectName).def -- true -- $(OutDir)\$(ProjectName)$(ReleaseDllSuffix).pdb -- false -- true -- -- -- MachineX64 -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- {07324745-c9be-4d65-b08a-9c88188c0c28} -- false -- -- -- -- -- -- -\ No newline at end of file -+ %(AdditionalLibraryDirectories) -+ $(OutDir)\$(ProjectName)$(ReleaseDllSuffix).dll -+ $(TargetDir)$(ProjectName)$(ReleaseDllSuffix).lib -+ $(IntDir)\$(ProjectName).def -+ true -+ $(OutDir)\$(ProjectName)$(ReleaseDllSuffix).pdb -+ false -+ true -+ -+ -+ MachineX64 -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ {07324745-c9be-4d65-b08a-9c88188c0c28} -+ false -+ -+ -+ -+ -+ -+ -\ No newline at end of file -diff --git a/MSVC_Net2013/glibmm_value.vcxproj b/MSVC_Net2013/glibmm_value.vcxproj -index 9639003..7e12415 100644 ---- a/MSVC_Net2013/glibmm_value.vcxproj -+++ b/MSVC_Net2013/glibmm_value.vcxproj -@@ -23,26 +23,27 @@ - {22277003-3228-486E-A6A8-994B8B13AF30} - tests_glibmm_value - Win32Proj -+ 8.1 - - - - Application -- MultiByte -+ Unicode - v120 - - - Application -- MultiByte -+ Unicode - v120 - - - Application -- MultiByte -+ Unicode - v120 - - - Application -- MultiByte -+ Unicode - v120 - - -@@ -186,4 +187,4 @@ - - - -- -+ -\ No newline at end of file -diff --git a/MSVC_Net2013/install.vcxproj b/MSVC_Net2013/install.vcxproj -index 059ceec..b6f2843 100644 ---- a/MSVC_Net2013/install.vcxproj -+++ b/MSVC_Net2013/install.vcxproj -@@ -22,28 +22,29 @@ - {2093D218-190E-4194-9421-3BA7CBF33B10} - install - Win32Proj -+ 8.1 - - - - Utility -- MultiByte -+ Unicode - true - v120 - - - Utility -- MultiByte -+ Unicode - v120 - - - Utility -- MultiByte -+ Unicode - true - v120 - - - Utility -- MultiByte -+ Unicode - v120 - - -@@ -113,4 +114,4 @@ - - - -- -+ -\ No newline at end of file -diff --git a/MSVC_Net2013/keyfile.vcxproj b/MSVC_Net2013/keyfile.vcxproj -index 0993e6a..ee23bae 100644 ---- a/MSVC_Net2013/keyfile.vcxproj -+++ b/MSVC_Net2013/keyfile.vcxproj -@@ -23,26 +23,27 @@ - {569A24AB-8D81-4427-B40D-85485AA7F3CD} - dispatcher - Win32Proj -+ 8.1 - - - - Application -- MultiByte -+ Unicode - v120 - - - Application -- MultiByte -+ Unicode - v120 - - - Application -- MultiByte -+ Unicode - v120 - - - Application -- MultiByte -+ Unicode - v120 - - -@@ -189,4 +190,4 @@ - - - -- -+ -\ No newline at end of file -diff --git a/MSVC_Net2013/markup.vcxproj b/MSVC_Net2013/markup.vcxproj -index 03b3295..db2dfab 100644 ---- a/MSVC_Net2013/markup.vcxproj -+++ b/MSVC_Net2013/markup.vcxproj -@@ -22,26 +22,27 @@ - markup - {6300FCFA-97F1-4967-802E-E354D95DB0EB} - Win32Proj -+ 8.1 - - - - Application -- MultiByte -+ Unicode - v120 - - - Application -- MultiByte -+ Unicode - v120 - - - Application -- MultiByte -+ Unicode - v120 - - - Application -- MultiByte -+ Unicode - v120 - - -@@ -188,4 +189,4 @@ - - - -- -+ -\ No newline at end of file -diff --git a/MSVC_Net2013/options.vcxproj b/MSVC_Net2013/options.vcxproj -index f627c4e..dda25b9 100644 ---- a/MSVC_Net2013/options.vcxproj -+++ b/MSVC_Net2013/options.vcxproj -@@ -23,26 +23,27 @@ - {46962B9A-C5E9-4863-9408-97514D63F420} - dispatcher - Win32Proj -+ 8.1 - - - - Application -- MultiByte -+ Unicode - v120 - - - Application -- MultiByte -+ Unicode - v120 - - - Application -- MultiByte -+ Unicode - v120 - - - Application -- MultiByte -+ Unicode - v120 - - -@@ -189,4 +190,4 @@ - - - -- -+ -\ No newline at end of file -diff --git a/MSVC_Net2013/properties.vcxproj b/MSVC_Net2013/properties.vcxproj -index 6858140..d8a95c2 100644 ---- a/MSVC_Net2013/properties.vcxproj -+++ b/MSVC_Net2013/properties.vcxproj -@@ -23,26 +23,27 @@ - {206CC821-8BE3-4455-B09E-63F93E30F20C} - dispatcher - Win32Proj -+ 8.1 - - - - Application -- MultiByte -+ Unicode - v120 - - - Application -- MultiByte -+ Unicode - v120 - - - Application -- MultiByte -+ Unicode - v120 - - - Application -- MultiByte -+ Unicode - v120 - - -@@ -189,4 +190,4 @@ - - - -- -+ -\ No newline at end of file -diff --git a/MSVC_Net2013/regex.vcxproj b/MSVC_Net2013/regex.vcxproj -index 84418df..c4c0cf0 100644 ---- a/MSVC_Net2013/regex.vcxproj -+++ b/MSVC_Net2013/regex.vcxproj -@@ -23,26 +23,27 @@ - {7374A5A1-4E74-44BD-918C-FDF80B97FA3F} - dispatcher - Win32Proj -+ 8.1 - - - - Application -- MultiByte -+ Unicode - v120 - - - Application -- MultiByte -+ Unicode - v120 - - - Application -- MultiByte -+ Unicode - v120 - - - Application -- MultiByte -+ Unicode - v120 - - -@@ -189,4 +190,4 @@ - - - -- -+ -\ No newline at end of file -diff --git a/MSVC_Net2013/resolver.vcxproj b/MSVC_Net2013/resolver.vcxproj -index 113d86a..9fa59a4 100644 ---- a/MSVC_Net2013/resolver.vcxproj -+++ b/MSVC_Net2013/resolver.vcxproj -@@ -23,26 +23,27 @@ - {E4D320F1-7D2D-43AF-874F-14524220EF92} - resolver - Win32Proj -+ 8.1 - - - - Application -- MultiByte -+ Unicode - v120 - - - Application -- MultiByte -+ Unicode - v120 - - - Application -- MultiByte -+ Unicode - v120 - - - Application -- MultiByte -+ Unicode - v120 - - -@@ -193,4 +194,4 @@ - - - -- -+ -\ No newline at end of file -diff --git a/MSVC_Net2013/socket-client.vcxproj b/MSVC_Net2013/socket-client.vcxproj -index 3743708..bfb8330 100644 ---- a/MSVC_Net2013/socket-client.vcxproj -+++ b/MSVC_Net2013/socket-client.vcxproj -@@ -23,26 +23,27 @@ - {1E38D900-90AC-4E18-B34C-7B08E3383087} - socket-client - Win32Proj -+ 8.1 - - - - Application -- MultiByte -+ Unicode - v120 - - - Application -- MultiByte -+ Unicode - v120 - - - Application -- MultiByte -+ Unicode - v120 - - - Application -- MultiByte -+ Unicode - v120 - - -@@ -193,4 +194,4 @@ - - - -- -+ -\ No newline at end of file -diff --git a/MSVC_Net2013/socket-client.vcxproj.filters b/MSVC_Net2013/socket-client.vcxproj.filters -index edb14c1..8d41b33 100644 ---- a/MSVC_Net2013/socket-client.vcxproj.filters -+++ b/MSVC_Net2013/socket-client.vcxproj.filters -@@ -15,6 +15,6 @@ - - - -- Source Files -+ - -- -+ -\ No newline at end of file -diff --git a/MSVC_Net2013/socket-server.vcxproj b/MSVC_Net2013/socket-server.vcxproj -index 4116263..e6744af 100644 ---- a/MSVC_Net2013/socket-server.vcxproj -+++ b/MSVC_Net2013/socket-server.vcxproj -@@ -23,26 +23,27 @@ - {7A4EB8C4-4784-4E9E-96E6-CA6FF4CE1D20} - socket-server - Win32Proj -+ 8.1 - - - - Application -- MultiByte -+ Unicode - v120 - - - Application -- MultiByte -+ Unicode - v120 - - - Application -- MultiByte -+ Unicode - v120 - - - Application -- MultiByte -+ Unicode - v120 - - -@@ -193,4 +194,4 @@ - - - -- -+ -\ No newline at end of file -diff --git a/MSVC_Net2013/socket-server.vcxproj.filters b/MSVC_Net2013/socket-server.vcxproj.filters -index 66a88d3..8d41b33 100644 ---- a/MSVC_Net2013/socket-server.vcxproj.filters -+++ b/MSVC_Net2013/socket-server.vcxproj.filters -@@ -15,6 +15,6 @@ - - - -- Source Files -+ - -- -+ -\ No newline at end of file -diff --git a/MSVC_Net2013/thread.vcxproj b/MSVC_Net2013/thread.vcxproj -index 9950bbb..d1824e8 100644 ---- a/MSVC_Net2013/thread.vcxproj -+++ b/MSVC_Net2013/thread.vcxproj -@@ -22,26 +22,27 @@ - thread - {5357AB2B-A5F9-463C-92D8-00357CCC3ECE} - Win32Proj -+ 8.1 - - - - Application -- MultiByte -+ Unicode - v120 - - - Application -- MultiByte -+ Unicode - v120 - - - Application -- MultiByte -+ Unicode - v120 - - - Application -- MultiByte -+ Unicode - v120 - - -@@ -184,4 +185,4 @@ - - - -- -+ -\ No newline at end of file -diff --git a/MSVC_Net2013/threadpool.vcxproj b/MSVC_Net2013/threadpool.vcxproj -index 9ab9748..d0a0d15 100644 ---- a/MSVC_Net2013/threadpool.vcxproj -+++ b/MSVC_Net2013/threadpool.vcxproj -@@ -22,26 +22,27 @@ - threadpool - {962484DB-2111-48A4-BEF0-194433719D0D} - Win32Proj -+ 8.1 - - - - Application -- MultiByte -+ Unicode - v120 - - - Application -- MultiByte -+ Unicode - v120 - - - Application -- MultiByte -+ Unicode - v120 - - - Application -- MultiByte -+ Unicode - v120 - - -@@ -192,4 +193,4 @@ - - - -- -+ -\ No newline at end of file diff --git a/ports/glibmm/fix_properties.patch b/ports/glibmm/fix_properties.patch deleted file mode 100644 index 51044a27f..000000000 --- a/ports/glibmm/fix_properties.patch +++ /dev/null @@ -1,1721 +0,0 @@ -diff --git a/MSVC_Net2013/gendef.vcxproj b/MSVC_Net2013/gendef.vcxproj -index 62dbcc8..7da2fbd 100644 ---- a/MSVC_Net2013/gendef.vcxproj -+++ b/MSVC_Net2013/gendef.vcxproj -@@ -91,6 +91,7 @@ - - - MachineX86 -+ %(AdditionalDependencies) - - - -@@ -109,6 +110,7 @@ - - - MachineX86 -+ %(AdditionalDependencies) - - - -@@ -132,6 +134,7 @@ - - - MachineX64 -+ %(AdditionalDependencies) - - - -@@ -153,6 +156,7 @@ - - - MachineX64 -+ %(AdditionalDependencies) - - - -@@ -161,4 +165,4 @@ - - - -- -+ -\ No newline at end of file -diff --git a/MSVC_Net2013/giomm.vcxproj b/MSVC_Net2013/giomm.vcxproj -index bc4fc3d..078fcb2 100644 ---- a/MSVC_Net2013/giomm.vcxproj -+++ b/MSVC_Net2013/giomm.vcxproj -@@ -69,7 +69,7 @@ - - %(AdditionalOptions) - Disabled -- .\giomm;..\gio;$(GlibEtcInstallRoot)\include\gio-win32-2.0;%(AdditionalIncludeDirectories) -+ .\giomm;..\gio;%(AdditionalIncludeDirectories) - _DEBUG;$(GioMMBuildDefs);%(PreprocessorDefinitions) - true - EnableFastChecks -@@ -82,7 +82,7 @@ - $(OutDir)\gendef.exe $(DefDir)\$(ProjectName).def $(ProjectName)$(DebugDllSuffix).dll $(IntDir)*.obj - - -- gio-2.0.lib;$(CPPDepLibsDebug);%(AdditionalDependencies) -+ %(AdditionalDependencies) - %(AdditionalLibraryDirectories) - $(OutDir)\$(ProjectName)$(DebugDllSuffix).dll - $(TargetDir)$(ProjectName)$(DebugDllSuffix).lib -@@ -100,7 +100,7 @@ - - %(AdditionalOptions) - Disabled -- .;../..;../../glib;../../gio;$(SolutionDir)\glibmm;..\..\..\vs10\x64\include\gio-win32-2.0;..\..\..\vs10\x64\include\glib-2.0;..\..\..\vs10\x64\lib\glib-2.0\include;..\..\..\vs10\x64\include\sigc++-2.0;..\..\..\vs10\x64\lib\sigc++-2.0\include;..\..\..\vs10\x64\include;%(AdditionalIncludeDirectories) -+ .\giomm;..\gio;%(AdditionalIncludeDirectories) - _DEBUG;$(GioMMBuildDefs);%(PreprocessorDefinitions) - true - EnableFastChecks -@@ -113,7 +113,7 @@ - $(OutDir)\gendef.exe $(DefDir)\$(ProjectName).def $(ProjectName)$(DebugDllSuffix).dll $(IntDir)*.obj - - -- gio-2.0.lib;$(CPPDepLibsDebug);%(AdditionalDependencies) -+ %(AdditionalDependencies) - %(AdditionalLibraryDirectories) - $(OutDir)\$(ProjectName)$(DebugDllSuffix).dll - $(TargetDir)$(ProjectName)$(DebugDllSuffix).lib -@@ -128,7 +128,7 @@ - - - %(AdditionalOptions) -- .\giomm;..\gio;$(GlibEtcInstallRoot)\include\gio-win32-2.0;%(AdditionalIncludeDirectories) -+ .\giomm;..\gio;%(AdditionalIncludeDirectories) - $(GioMMBuildDefs);%(PreprocessorDefinitions) - MultiThreadedDLL - Level3 -@@ -139,7 +139,7 @@ - $(OutDir)\gendef.exe $(DefDir)\$(ProjectName).def $(ProjectName)$(ReleaseDllSuffix).dll $(IntDir)*.obj - - -- gio-2.0.lib;$(CPPDepLibsRelease);%(AdditionalDependencies) -+ %(AdditionalDependencies) - %(AdditionalLibraryDirectories) - $(OutDir)\$(ProjectName)$(ReleaseDllSuffix).dll - $(TargetDir)$(ProjectName)$(ReleaseDllSuffix).lib -@@ -158,7 +158,7 @@ - - - %(AdditionalOptions) -- .\giomm;..\gio;$(GlibEtcInstallRoot)\include\gio-win32-2.0;%(AdditionalIncludeDirectories) -+ .\giomm;..\gio;%(AdditionalIncludeDirectories) - $(GioMMBuildDefs);%(PreprocessorDefinitions) - MultiThreadedDLL - Level3 -@@ -169,7 +169,7 @@ - $(OutDir)\gendef.exe $(DefDir)\$(ProjectName).def $(ProjectName)$(ReleaseDllSuffix).dll $(IntDir)*.obj - - -- gio-2.0.lib;$(CPPDepLibsRelease);%(AdditionalDependencies) -+ %(AdditionalDependencies) - %(AdditionalLibraryDirectories) - $(OutDir)\$(ProjectName)$(ReleaseDllSuffix).dll - $(TargetDir)$(ProjectName)$(ReleaseDllSuffix).lib -@@ -455,4 +455,4 @@ - - - -- -+ -\ No newline at end of file -diff --git a/MSVC_Net2013/giomm.vcxproj.filters b/MSVC_Net2013/giomm.vcxproj.filters -index 4f01b13..934eddc 100644 ---- a/MSVC_Net2013/giomm.vcxproj.filters -+++ b/MSVC_Net2013/giomm.vcxproj.filters -@@ -15,266 +15,780 @@ - - - -- Source Files -- Source Files -- Source Files -- Source Files -- Source Files -- Source Files -- Source Files -- Source Files -- Source Files -- Source Files -- Source Files -- Source Files -- Source Files -- Source Files -- Source Files -- Source Files -- Source Files -- Source Files -- Source Files -- Source Files -- Source Files -- Source Files -- Source Files -- Source Files -- Source Files -- Source Files -- Source Files -- Source Files -- Source Files -- Source Files -- Source Files -- Source Files -- Source Files -- Source Files -- Source Files -- Source Files -- Source Files -- Source Files -- Source Files -- Source Files -- Source Files -- Source Files -- Source Files -- Source Files -- Source Files -- Source Files -- Source Files -- Source Files -- Source Files -- Source Files -- Source Files -- Source Files -- Source Files -- Source Files -- Source Files -- Source Files -- Source Files -- Source Files -- Source Files -- Source Files -- Source Files -- Source Files -- Source Files -- Source Files -- Source Files -- Source Files -- Source Files -- Source Files -- Source Files -- Source Files -- Source Files -- Source Files -- Source Files -- Source Files -- Source Files -- Source Files -- Source Files -- Source Files -- Source Files -- Source Files -- Source Files -- Source Files -- Source Files -- Source Files -- Source Files -- Source Files -- Source Files -- Source Files -- Source Files -- Source Files -- Source Files -- Source Files -- Source Files -- Source Files -- Source Files -- Source Files -- Source Files -- Source Files -- Source Files -- Source Files -- Source Files -- Source Files -- Source Files -- Source Files -- Source Files -- Source Files -- Source Files -- Source Files -- Source Files -- Source Files -- Source Files -- Source Files -- Source Files -- Source Files -- Source Files -- Source Files -- Source Files -- Source Files -- Source Files -- Source Files -- Source Files -- Source Files -- Source Files -- Source Files -- Source Files -- Source Files -- Source Files -+ -+ Source Files -+ -+ -+ Source Files -+ -+ -+ Source Files -+ -+ -+ Source Files -+ -+ -+ Source Files -+ -+ -+ Source Files -+ -+ -+ Source Files -+ -+ -+ Source Files -+ -+ -+ Source Files -+ -+ -+ Source Files -+ -+ -+ Source Files -+ -+ -+ Source Files -+ -+ -+ Source Files -+ -+ -+ Source Files -+ -+ -+ Source Files -+ -+ -+ Source Files -+ -+ -+ Source Files -+ -+ -+ Source Files -+ -+ -+ Source Files -+ -+ -+ Source Files -+ -+ -+ Source Files -+ -+ -+ Source Files -+ -+ -+ Source Files -+ -+ -+ Source Files -+ -+ -+ Source Files -+ -+ -+ Source Files -+ -+ -+ Source Files -+ -+ -+ Source Files -+ -+ -+ Source Files -+ -+ -+ Source Files -+ -+ -+ Source Files -+ -+ -+ Source Files -+ -+ -+ Source Files -+ -+ -+ Source Files -+ -+ -+ Source Files -+ -+ -+ Source Files -+ -+ -+ Source Files -+ -+ -+ Source Files -+ -+ -+ Source Files -+ -+ -+ Source Files -+ -+ -+ Source Files -+ -+ -+ Source Files -+ -+ -+ Source Files -+ -+ -+ Source Files -+ -+ -+ Source Files -+ -+ -+ Source Files -+ -+ -+ Source Files -+ -+ -+ Source Files -+ -+ -+ Source Files -+ -+ -+ Source Files -+ -+ -+ Source Files -+ -+ -+ Source Files -+ -+ -+ Source Files -+ -+ -+ Source Files -+ -+ -+ Source Files -+ -+ -+ Source Files -+ -+ -+ Source Files -+ -+ -+ Source Files -+ -+ -+ Source Files -+ -+ -+ Source Files -+ -+ -+ Source Files -+ -+ -+ Source Files -+ -+ -+ Source Files -+ -+ -+ Source Files -+ -+ -+ Source Files -+ -+ -+ Source Files -+ -+ -+ Source Files -+ -+ -+ Source Files -+ -+ -+ Source Files -+ -+ -+ Source Files -+ -+ -+ Source Files -+ -+ -+ Source Files -+ -+ -+ Source Files -+ -+ -+ Source Files -+ -+ -+ Source Files -+ -+ -+ Source Files -+ -+ -+ Source Files -+ -+ -+ Source Files -+ -+ -+ Source Files -+ -+ -+ Source Files -+ -+ -+ Source Files -+ -+ -+ Source Files -+ -+ -+ Source Files -+ -+ -+ Source Files -+ -+ -+ Source Files -+ -+ -+ Source Files -+ -+ -+ Source Files -+ -+ -+ Source Files -+ -+ -+ Source Files -+ -+ -+ Source Files -+ -+ -+ Source Files -+ -+ -+ Source Files -+ -+ -+ Source Files -+ -+ -+ Source Files -+ -+ -+ Source Files -+ -+ -+ Source Files -+ -+ -+ Source Files -+ -+ -+ Source Files -+ -+ -+ Source Files -+ -+ -+ Source Files -+ -+ -+ Source Files -+ -+ -+ Source Files -+ -+ -+ Source Files -+ -+ -+ Source Files -+ -+ -+ Source Files -+ -+ -+ Source Files -+ -+ -+ Source Files -+ -+ -+ Source Files -+ -+ -+ Source Files -+ -+ -+ Source Files -+ -+ -+ Source Files -+ -+ -+ Source Files -+ -+ -+ Source Files -+ -+ -+ Source Files -+ -+ -+ Source Files -+ -+ -+ Source Files -+ -+ -+ Source Files -+ -+ -+ Source Files -+ -+ -+ Source Files -+ -+ -+ Source Files -+ -+ -+ Source Files -+ -+ -+ Source Files -+ -+ -+ Source Files -+ -+ -+ Source Files -+ -+ -+ Source Files -+ -+ -+ Source Files -+ -+ -+ Source Files -+ -+ -+ Source Files -+ - - -- Header Files -- Header Files -- Header Files -- Header Files -- Header Files -- Header Files -- Header Files -- Header Files -- Header Files -- Header Files -- Header Files -- Header Files -- Header Files -- Header Files -- Header Files -- Header Files -- Header Files -- Header Files -- Header Files -- Header Files -- Header Files -- Header Files -- Header Files -- Header Files -- Header Files -- Header Files -- Header Files -- Header Files -- Header Files -- Header Files -- Header Files -- Header Files -- Header Files -- Header Files -- Header Files -- Header Files -- Header Files -- Header Files -- Header Files -- Header Files -- Header Files -- Header Files -- Header Files -- Header Files -- Header Files -- Header Files -- Header Files -- Header Files -- Header Files -- Header Files -- Header Files -- Header Files -- Header Files -- Header Files -- Header Files -- Header Files -- Header Files -- Header Files -- Header Files -- Header Files -- Header Files -- Header Files -- Header Files -- Header Files -- Header Files -- Header Files -- Header Files -- Header Files -- Header Files -- Header Files -- Header Files -- Header Files -- Header Files -- Header Files -- Header Files -- Header Files -- Header Files -- Header Files -- Header Files -- Header Files -- Header Files -- Header Files -- Source Files -- Header Files -- Header Files -- Header Files -- Header Files -- Header Files -- Header Files -- Header Files -- Header Files -- Header Files -- Header Files -- Header Files -- Header Files -- Header Files -- Header Files -- Header Files -- Source Files -- Source Files -- Header Files -- Header Files -- Header Files -- Header Files -- Header Files -- Header Files -- Header Files -- Header Files -- Header Files -- Header Files -- Source Files -- Header Files -- Header Files -- Header Files -- Header Files -- Header Files -- Header Files -- Header Files -- Header Files -- Header Files -- Header Files -- Header Files -- Header Files -- Header Files -- Header Files -- Header Files -- Header Files -- Header Files -+ -+ Header Files -+ -+ -+ Header Files -+ -+ -+ Header Files -+ -+ -+ Header Files -+ -+ -+ Header Files -+ -+ -+ Header Files -+ -+ -+ Header Files -+ -+ -+ Header Files -+ -+ -+ Header Files -+ -+ -+ Header Files -+ -+ -+ Header Files -+ -+ -+ Header Files -+ -+ -+ Header Files -+ -+ -+ Header Files -+ -+ -+ Header Files -+ -+ -+ Header Files -+ -+ -+ Header Files -+ -+ -+ Header Files -+ -+ -+ Header Files -+ -+ -+ Header Files -+ -+ -+ Header Files -+ -+ -+ Header Files -+ -+ -+ Header Files -+ -+ -+ Header Files -+ -+ -+ Header Files -+ -+ -+ Header Files -+ -+ -+ Header Files -+ -+ -+ Header Files -+ -+ -+ Header Files -+ -+ -+ Header Files -+ -+ -+ Header Files -+ -+ -+ Header Files -+ -+ -+ Header Files -+ -+ -+ Header Files -+ -+ -+ Header Files -+ -+ -+ Header Files -+ -+ -+ Header Files -+ -+ -+ Header Files -+ -+ -+ Header Files -+ -+ -+ Header Files -+ -+ -+ Header Files -+ -+ -+ Header Files -+ -+ -+ Header Files -+ -+ -+ Header Files -+ -+ -+ Header Files -+ -+ -+ Header Files -+ -+ -+ Header Files -+ -+ -+ Header Files -+ -+ -+ Header Files -+ -+ -+ Header Files -+ -+ -+ Header Files -+ -+ -+ Header Files -+ -+ -+ Header Files -+ -+ -+ Header Files -+ -+ -+ Header Files -+ -+ -+ Header Files -+ -+ -+ Header Files -+ -+ -+ Header Files -+ -+ -+ Header Files -+ -+ -+ Header Files -+ -+ -+ Header Files -+ -+ -+ Header Files -+ -+ -+ Header Files -+ -+ -+ Header Files -+ -+ -+ Header Files -+ -+ -+ Header Files -+ -+ -+ Header Files -+ -+ -+ Header Files -+ -+ -+ Header Files -+ -+ -+ Header Files -+ -+ -+ Header Files -+ -+ -+ Header Files -+ -+ -+ Header Files -+ -+ -+ Header Files -+ -+ -+ Header Files -+ -+ -+ Header Files -+ -+ -+ Header Files -+ -+ -+ Header Files -+ -+ -+ Header Files -+ -+ -+ Header Files -+ -+ -+ Header Files -+ -+ -+ Header Files -+ -+ -+ Source Files -+ -+ -+ Header Files -+ -+ -+ Header Files -+ -+ -+ Header Files -+ -+ -+ Header Files -+ -+ -+ Header Files -+ -+ -+ Header Files -+ -+ -+ Header Files -+ -+ -+ Header Files -+ -+ -+ Header Files -+ -+ -+ Header Files -+ -+ -+ Header Files -+ -+ -+ Header Files -+ -+ -+ Header Files -+ -+ -+ Header Files -+ -+ -+ Header Files -+ -+ -+ Source Files -+ -+ -+ Source Files -+ -+ -+ Header Files -+ -+ -+ Header Files -+ -+ -+ Header Files -+ -+ -+ Header Files -+ -+ -+ Header Files -+ -+ -+ Header Files -+ -+ -+ Header Files -+ -+ -+ Header Files -+ -+ -+ Header Files -+ -+ -+ Header Files -+ -+ -+ Source Files -+ -+ -+ Header Files -+ -+ -+ Header Files -+ -+ -+ Header Files -+ -+ -+ Header Files -+ -+ -+ Header Files -+ -+ -+ Header Files -+ -+ -+ Header Files -+ -+ -+ Header Files -+ -+ -+ Header Files -+ -+ -+ Header Files -+ -+ -+ Header Files -+ -+ -+ Header Files -+ -+ -+ Header Files -+ -+ -+ Header Files -+ -+ -+ Header Files -+ -+ -+ Header Files -+ -+ -+ Header Files -+ - - -- Resource Files -+ -+ Resource Files - - -- -+ -\ No newline at end of file -diff --git a/MSVC_Net2013/glibmm-build-defines.props b/MSVC_Net2013/glibmm-build-defines.props -index 5cbde3c..9a027c5 100644 ---- a/MSVC_Net2013/glibmm-build-defines.props -+++ b/MSVC_Net2013/glibmm-build-defines.props -@@ -6,8 +6,8 @@ - - SIZEOF_WCHAR_T=2;GLIBMM_BUILD - GIOMM_BUILD -- sigc-vc$(VSVer)0-2_0.lib -- sigc-vc$(VSVer)0-d-2_0.lib -+ sigc-2_0.lib -+ sigc-2_0.lib - - - <_PropertySheetDisplayName>glibmmbuilddefinesprops -@@ -16,28 +16,10 @@ - - - -- .\glibmm;..;..\glib;$(GlibEtcInstallRoot)\include\sigc++-2.0;$(GlibEtcInstallRoot)\lib\sigc++-2.0\include;$(GlibEtcInstallRoot)\include\gio-win32-2.0;$(GlibEtcInstallRoot)\include\glib-2.0;$(GlibEtcInstallRoot)\lib\glib-2.0\include;$(GlibEtcInstallRoot)\include;%(AdditionalIncludeDirectories) -+ .\glibmm;..;.;..\glib;%(AdditionalIncludeDirectories) - msvc_recommended_pragmas.h;%(ForcedIncludeFiles) - true - /d2Zi+ %(AdditionalOptions) - -- -- glib-2.0.lib;gobject-2.0.lib;gmodule-2.0.lib;%(AdditionalDependencies) -- $(GlibEtcInstallRoot)\lib;%(AdditionalLibraryDirectories) -- - -- -- -- $(GLibMMBuildDefs) -- -- -- $(GioMMBuildDefs) -- -- -- $(CPPDepLibsRelease) -- -- -- $(CPPDepLibsDebug) -- -- -- -+ -\ No newline at end of file -diff --git a/MSVC_Net2013/glibmm-install.props b/MSVC_Net2013/glibmm-install.props -index f28a0c8..9283a7b 100644 ---- a/MSVC_Net2013/glibmm-install.props -+++ b/MSVC_Net2013/glibmm-install.props -@@ -3,410 +3,4 @@ - - - -- -- $(SolutionDir)$(Configuration)\$(Platform)\bin -- $(BinDir)\glibmm$(ReleaseDllSuffix).dll;$(BinDir)\giomm$(ReleaseDllSuffix).dll -- $(BinDir)\glibmm$(DebugDllSuffix).dll;$(BinDir)\giomm$(DebugDllSuffix).dll -- --mkdir $(CopyDir) --mkdir $(CopyDir)\bin --copy $(BinDir)\glibmm-vc$(VSVer)0-$(ApiMajorVersion)_$(ApiMinorVersion).dll $(CopyDir)\bin --copy $(BinDir)\glibmm-vc$(VSVer)0-$(ApiMajorVersion)_$(ApiMinorVersion).pdb $(CopyDir)\bin --copy $(BinDir)\giomm-vc$(VSVer)0-$(ApiMajorVersion)_$(ApiMinorVersion).dll $(CopyDir)\bin --copy $(BinDir)\giomm-vc$(VSVer)0-$(ApiMajorVersion)_$(ApiMinorVersion).pdb $(CopyDir)\bin -- --mkdir $(CopyDir)\lib\glibmm-$(ApiMajorVersion).$(ApiMinorVersion)\include --mkdir $(CopyDir)\lib\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\include --copy $(BinDir)\glibmm-vc$(VSVer)0-$(ApiMajorVersion)_$(ApiMinorVersion).lib $(CopyDir)\lib --copy $(BinDir)\giomm-vc$(VSVer)0-$(ApiMajorVersion)_$(ApiMinorVersion).lib $(CopyDir)\lib -- --mkdir $(CopyDir)\include\glibmm-$(ApiMajorVersion).$(ApiMinorVersion)\glibmm\private --mkdir $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm\private --copy ..\glib\glibmm.h $(CopyDir)\include\glibmm-$(ApiMajorVersion).$(ApiMinorVersion) --copy ..\gio\giomm.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion) -- --copy ..\glib\glibmm\arrayhandle.h $(CopyDir)\include\glibmm-$(ApiMajorVersion).$(ApiMinorVersion)\glibmm --copy ..\glib\glibmm\balancedtree.h $(CopyDir)\include\glibmm-$(ApiMajorVersion).$(ApiMinorVersion)\glibmm --copy ..\glib\glibmm\base64.h $(CopyDir)\include\glibmm-$(ApiMajorVersion).$(ApiMinorVersion)\glibmm --copy ..\glib\glibmm\binding.h $(CopyDir)\include\glibmm-$(ApiMajorVersion).$(ApiMinorVersion)\glibmm --copy ..\glib\glibmm\bytes.h $(CopyDir)\include\glibmm-$(ApiMajorVersion).$(ApiMinorVersion)\glibmm --copy ..\glib\glibmm\bytearray.h $(CopyDir)\include\glibmm-$(ApiMajorVersion).$(ApiMinorVersion)\glibmm --copy ..\glib\glibmm\checksum.h $(CopyDir)\include\glibmm-$(ApiMajorVersion).$(ApiMinorVersion)\glibmm --copy ..\glib\glibmm\class.h $(CopyDir)\include\glibmm-$(ApiMajorVersion).$(ApiMinorVersion)\glibmm --copy ..\glib\glibmm\containerhandle_shared.h $(CopyDir)\include\glibmm-$(ApiMajorVersion).$(ApiMinorVersion)\glibmm --copy ..\glib\glibmm\containers.h $(CopyDir)\include\glibmm-$(ApiMajorVersion).$(ApiMinorVersion)\glibmm --copy ..\glib\glibmm\convert.h $(CopyDir)\include\glibmm-$(ApiMajorVersion).$(ApiMinorVersion)\glibmm --copy ..\glib\glibmm\date.h $(CopyDir)\include\glibmm-$(ApiMajorVersion).$(ApiMinorVersion)\glibmm --copy ..\glib\glibmm\datetime.h $(CopyDir)\include\glibmm-$(ApiMajorVersion).$(ApiMinorVersion)\glibmm --copy ..\glib\glibmm\debug.h $(CopyDir)\include\glibmm-$(ApiMajorVersion).$(ApiMinorVersion)\glibmm --copy ..\glib\glibmm\enums.h $(CopyDir)\include\glibmm-$(ApiMajorVersion).$(ApiMinorVersion)\glibmm --copy ..\glib\glibmm\dispatcher.h $(CopyDir)\include\glibmm-$(ApiMajorVersion).$(ApiMinorVersion)\glibmm --copy ..\glib\glibmm\error.h $(CopyDir)\include\glibmm-$(ApiMajorVersion).$(ApiMinorVersion)\glibmm --copy ..\glib\glibmm\exception.h $(CopyDir)\include\glibmm-$(ApiMajorVersion).$(ApiMinorVersion)\glibmm --copy ..\glib\glibmm\exceptionhandler.h $(CopyDir)\include\glibmm-$(ApiMajorVersion).$(ApiMinorVersion)\glibmm --copy ..\glib\glibmm\fileutils.h $(CopyDir)\include\glibmm-$(ApiMajorVersion).$(ApiMinorVersion)\glibmm --copy ..\glib\glibmm\helperlist.h $(CopyDir)\include\glibmm-$(ApiMajorVersion).$(ApiMinorVersion)\glibmm --copy ..\glib\glibmm\i18n-lib.h $(CopyDir)\include\glibmm-$(ApiMajorVersion).$(ApiMinorVersion)\glibmm --copy ..\glib\glibmm\i18n.h $(CopyDir)\include\glibmm-$(ApiMajorVersion).$(ApiMinorVersion)\glibmm --copy ..\glib\glibmm\init.h $(CopyDir)\include\glibmm-$(ApiMajorVersion).$(ApiMinorVersion)\glibmm --copy ..\glib\glibmm\interface.h $(CopyDir)\include\glibmm-$(ApiMajorVersion).$(ApiMinorVersion)\glibmm --copy ..\glib\glibmm\iochannel.h $(CopyDir)\include\glibmm-$(ApiMajorVersion).$(ApiMinorVersion)\glibmm --copy ..\glib\glibmm\keyfile.h $(CopyDir)\include\glibmm-$(ApiMajorVersion).$(ApiMinorVersion)\glibmm --copy ..\glib\glibmm\listhandle.h $(CopyDir)\include\glibmm-$(ApiMajorVersion).$(ApiMinorVersion)\glibmm --copy ..\glib\glibmm\main.h $(CopyDir)\include\glibmm-$(ApiMajorVersion).$(ApiMinorVersion)\glibmm --copy ..\glib\glibmm\markup.h $(CopyDir)\include\glibmm-$(ApiMajorVersion).$(ApiMinorVersion)\glibmm --copy ..\glib\glibmm\miscutils.h $(CopyDir)\include\glibmm-$(ApiMajorVersion).$(ApiMinorVersion)\glibmm --copy ..\glib\glibmm\module.h $(CopyDir)\include\glibmm-$(ApiMajorVersion).$(ApiMinorVersion)\glibmm --copy ..\glib\glibmm\nodetree.h $(CopyDir)\include\glibmm-$(ApiMajorVersion).$(ApiMinorVersion)\glibmm --copy ..\glib\glibmm\object.h $(CopyDir)\include\glibmm-$(ApiMajorVersion).$(ApiMinorVersion)\glibmm --copy ..\glib\glibmm\objectbase.h $(CopyDir)\include\glibmm-$(ApiMajorVersion).$(ApiMinorVersion)\glibmm --copy ..\glib\glibmm\optioncontext.h $(CopyDir)\include\glibmm-$(ApiMajorVersion).$(ApiMinorVersion)\glibmm --copy ..\glib\glibmm\optionentry.h $(CopyDir)\include\glibmm-$(ApiMajorVersion).$(ApiMinorVersion)\glibmm --copy ..\glib\glibmm\optiongroup.h $(CopyDir)\include\glibmm-$(ApiMajorVersion).$(ApiMinorVersion)\glibmm --copy ..\glib\glibmm\pattern.h $(CopyDir)\include\glibmm-$(ApiMajorVersion).$(ApiMinorVersion)\glibmm --copy ..\glib\glibmm\priorities.h $(CopyDir)\include\glibmm-$(ApiMajorVersion).$(ApiMinorVersion)\glibmm --copy ..\glib\glibmm\property.h $(CopyDir)\include\glibmm-$(ApiMajorVersion).$(ApiMinorVersion)\glibmm --copy ..\glib\glibmm\propertyproxy.h $(CopyDir)\include\glibmm-$(ApiMajorVersion).$(ApiMinorVersion)\glibmm --copy ..\glib\glibmm\propertyproxy_base.h $(CopyDir)\include\glibmm-$(ApiMajorVersion).$(ApiMinorVersion)\glibmm --copy ..\glib\glibmm\quark.h $(CopyDir)\include\glibmm-$(ApiMajorVersion).$(ApiMinorVersion)\glibmm --copy ..\glib\glibmm\random.h $(CopyDir)\include\glibmm-$(ApiMajorVersion).$(ApiMinorVersion)\glibmm --copy ..\glib\glibmm\refptr.h $(CopyDir)\include\glibmm-$(ApiMajorVersion).$(ApiMinorVersion)\glibmm --copy ..\glib\glibmm\regex.h $(CopyDir)\include\glibmm-$(ApiMajorVersion).$(ApiMinorVersion)\glibmm --copy ..\glib\glibmm\sarray.h $(CopyDir)\include\glibmm-$(ApiMajorVersion).$(ApiMinorVersion)\glibmm --copy ..\glib\glibmm\shell.h $(CopyDir)\include\glibmm-$(ApiMajorVersion).$(ApiMinorVersion)\glibmm --copy ..\glib\glibmm\signalproxy.h $(CopyDir)\include\glibmm-$(ApiMajorVersion).$(ApiMinorVersion)\glibmm --copy ..\glib\glibmm\signalproxy_connectionnode.h $(CopyDir)\include\glibmm-$(ApiMajorVersion).$(ApiMinorVersion)\glibmm --copy ..\glib\glibmm\slisthandle.h $(CopyDir)\include\glibmm-$(ApiMajorVersion).$(ApiMinorVersion)\glibmm --copy ..\glib\glibmm\spawn.h $(CopyDir)\include\glibmm-$(ApiMajorVersion).$(ApiMinorVersion)\glibmm --copy ..\glib\glibmm\streamiochannel.h $(CopyDir)\include\glibmm-$(ApiMajorVersion).$(ApiMinorVersion)\glibmm --copy ..\glib\glibmm\stringutils.h $(CopyDir)\include\glibmm-$(ApiMajorVersion).$(ApiMinorVersion)\glibmm --copy ..\glib\glibmm\threadpool.h $(CopyDir)\include\glibmm-$(ApiMajorVersion).$(ApiMinorVersion)\glibmm --copy ..\glib\glibmm\threads.h $(CopyDir)\include\glibmm-$(ApiMajorVersion).$(ApiMinorVersion)\glibmm --copy ..\glib\glibmm\timer.h $(CopyDir)\include\glibmm-$(ApiMajorVersion).$(ApiMinorVersion)\glibmm --copy ..\glib\glibmm\timeval.h $(CopyDir)\include\glibmm-$(ApiMajorVersion).$(ApiMinorVersion)\glibmm --copy ..\glib\glibmm\timezone.h $(CopyDir)\include\glibmm-$(ApiMajorVersion).$(ApiMinorVersion)\glibmm --copy ..\glib\glibmm\unicode.h $(CopyDir)\include\glibmm-$(ApiMajorVersion).$(ApiMinorVersion)\glibmm --copy ..\glib\glibmm\uriutils.h $(CopyDir)\include\glibmm-$(ApiMajorVersion).$(ApiMinorVersion)\glibmm --copy ..\glib\glibmm\ustring.h $(CopyDir)\include\glibmm-$(ApiMajorVersion).$(ApiMinorVersion)\glibmm --copy ..\glib\glibmm\utility.h $(CopyDir)\include\glibmm-$(ApiMajorVersion).$(ApiMinorVersion)\glibmm --copy ..\glib\glibmm\variant.h $(CopyDir)\include\glibmm-$(ApiMajorVersion).$(ApiMinorVersion)\glibmm --copy ..\glib\glibmm\variantdict.h $(CopyDir)\include\glibmm-$(ApiMajorVersion).$(ApiMinorVersion)\glibmm --copy ..\glib\glibmm\variantiter.h $(CopyDir)\include\glibmm-$(ApiMajorVersion).$(ApiMinorVersion)\glibmm --copy ..\glib\glibmm\varianttype.h $(CopyDir)\include\glibmm-$(ApiMajorVersion).$(ApiMinorVersion)\glibmm --copy ..\glib\glibmm\variant_basictypes.h $(CopyDir)\include\glibmm-$(ApiMajorVersion).$(ApiMinorVersion)\glibmm --copy ..\glib\glibmm\thread.h $(CopyDir)\include\glibmm-$(ApiMajorVersion).$(ApiMinorVersion)\glibmm --copy ..\glib\glibmm\value.h $(CopyDir)\include\glibmm-$(ApiMajorVersion).$(ApiMinorVersion)\glibmm --copy ..\glib\glibmm\valuearray.h $(CopyDir)\include\glibmm-$(ApiMajorVersion).$(ApiMinorVersion)\glibmm --copy ..\glib\glibmm\value_basictypes.h $(CopyDir)\include\glibmm-$(ApiMajorVersion).$(ApiMinorVersion)\glibmm --copy ..\glib\glibmm\value_custom.h $(CopyDir)\include\glibmm-$(ApiMajorVersion).$(ApiMinorVersion)\glibmm --copy ..\glib\glibmm\vectorutils.h $(CopyDir)\include\glibmm-$(ApiMajorVersion).$(ApiMinorVersion)\glibmm --copy ..\glib\glibmm\weakref.h $(CopyDir)\include\glibmm-$(ApiMajorVersion).$(ApiMinorVersion)\glibmm --copy ..\glib\glibmm\wrap.h $(CopyDir)\include\glibmm-$(ApiMajorVersion).$(ApiMinorVersion)\glibmm --copy ..\glib\glibmm\wrap_init.h $(CopyDir)\include\glibmm-$(ApiMajorVersion).$(ApiMinorVersion)\glibmm -- --copy ..\glib\glibmm\private\balancedtree_p.h $(CopyDir)\include\glibmm-$(ApiMajorVersion).$(ApiMinorVersion)\glibmm\private --copy ..\glib\glibmm\private\binding_p.h $(CopyDir)\include\glibmm-$(ApiMajorVersion).$(ApiMinorVersion)\glibmm\private --copy ..\glib\glibmm\private\bytes_p.h $(CopyDir)\include\glibmm-$(ApiMajorVersion).$(ApiMinorVersion)\glibmm\private --copy ..\glib\glibmm\private\bytearray_p.h $(CopyDir)\include\glibmm-$(ApiMajorVersion).$(ApiMinorVersion)\glibmm\private --copy ..\glib\glibmm\private\checksum_p.h $(CopyDir)\include\glibmm-$(ApiMajorVersion).$(ApiMinorVersion)\glibmm\private --copy ..\glib\glibmm\private\convert_p.h $(CopyDir)\include\glibmm-$(ApiMajorVersion).$(ApiMinorVersion)\glibmm\private --copy ..\glib\glibmm\private\date_p.h $(CopyDir)\include\glibmm-$(ApiMajorVersion).$(ApiMinorVersion)\glibmm\private --copy ..\glib\glibmm\private\datetime_p.h $(CopyDir)\include\glibmm-$(ApiMajorVersion).$(ApiMinorVersion)\glibmm\private --copy ..\glib\glibmm\private\enums_p.h $(CopyDir)\include\glibmm-$(ApiMajorVersion).$(ApiMinorVersion)\glibmm\private --copy ..\glib\glibmm\private\fileutils_p.h $(CopyDir)\include\glibmm-$(ApiMajorVersion).$(ApiMinorVersion)\glibmm\private --copy ..\glib\glibmm\private\interface_p.h $(CopyDir)\include\glibmm-$(ApiMajorVersion).$(ApiMinorVersion)\glibmm\private --copy ..\glib\glibmm\private\iochannel_p.h $(CopyDir)\include\glibmm-$(ApiMajorVersion).$(ApiMinorVersion)\glibmm\private --copy ..\glib\glibmm\private\keyfile_p.h $(CopyDir)\include\glibmm-$(ApiMajorVersion).$(ApiMinorVersion)\glibmm\private --copy ..\glib\glibmm\private\markup_p.h $(CopyDir)\include\glibmm-$(ApiMajorVersion).$(ApiMinorVersion)\glibmm\private --copy ..\glib\glibmm\private\miscutils_p.h $(CopyDir)\include\glibmm-$(ApiMajorVersion).$(ApiMinorVersion)\glibmm\private --copy ..\glib\glibmm\private\module_p.h $(CopyDir)\include\glibmm-$(ApiMajorVersion).$(ApiMinorVersion)\glibmm\private --copy ..\glib\glibmm\private\nodetree_p.h $(CopyDir)\include\glibmm-$(ApiMajorVersion).$(ApiMinorVersion)\glibmm\private --copy ..\glib\glibmm\private\object_p.h $(CopyDir)\include\glibmm-$(ApiMajorVersion).$(ApiMinorVersion)\glibmm\private --copy ..\glib\glibmm\private\optioncontext_p.h $(CopyDir)\include\glibmm-$(ApiMajorVersion).$(ApiMinorVersion)\glibmm\private --copy ..\glib\glibmm\private\optionentry_p.h $(CopyDir)\include\glibmm-$(ApiMajorVersion).$(ApiMinorVersion)\glibmm\private --copy ..\glib\glibmm\private\optiongroup_p.h $(CopyDir)\include\glibmm-$(ApiMajorVersion).$(ApiMinorVersion)\glibmm\private --copy ..\glib\glibmm\private\regex_p.h $(CopyDir)\include\glibmm-$(ApiMajorVersion).$(ApiMinorVersion)\glibmm\private --copy ..\glib\glibmm\private\shell_p.h $(CopyDir)\include\glibmm-$(ApiMajorVersion).$(ApiMinorVersion)\glibmm\private --copy ..\glib\glibmm\private\spawn_p.h $(CopyDir)\include\glibmm-$(ApiMajorVersion).$(ApiMinorVersion)\glibmm\private --copy ..\glib\glibmm\private\threads_p.h $(CopyDir)\include\glibmm-$(ApiMajorVersion).$(ApiMinorVersion)\glibmm\private --copy ..\glib\glibmm\private\timezone_p.h $(CopyDir)\include\glibmm-$(ApiMajorVersion).$(ApiMinorVersion)\glibmm\private --copy ..\glib\glibmm\private\unicode_p.h $(CopyDir)\include\glibmm-$(ApiMajorVersion).$(ApiMinorVersion)\glibmm\private --copy ..\glib\glibmm\private\uriutils_p.h $(CopyDir)\include\glibmm-$(ApiMajorVersion).$(ApiMinorVersion)\glibmm\private --copy ..\glib\glibmm\private\variant_p.h $(CopyDir)\include\glibmm-$(ApiMajorVersion).$(ApiMinorVersion)\glibmm\private --copy ..\glib\glibmm\private\variantdict_p.h $(CopyDir)\include\glibmm-$(ApiMajorVersion).$(ApiMinorVersion)\glibmm\private --copy ..\glib\glibmm\private\variantiter_p.h $(CopyDir)\include\glibmm-$(ApiMajorVersion).$(ApiMinorVersion)\glibmm\private --copy ..\glib\glibmm\private\varianttype_p.h $(CopyDir)\include\glibmm-$(ApiMajorVersion).$(ApiMinorVersion)\glibmm\private --copy ..\glib\glibmm\private\thread_p.h $(CopyDir)\include\glibmm-$(ApiMajorVersion).$(ApiMinorVersion)\glibmm\private --copy ..\glib\glibmm\private\valuearray_p.h $(CopyDir)\include\glibmm-$(ApiMajorVersion).$(ApiMinorVersion)\glibmm\private -- --copy ..\gio\giomm\action.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm --copy ..\gio\giomm\actiongroup.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm --copy ..\gio\giomm\actionmap.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm --copy ..\gio\giomm\applaunchcontext.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm --copy ..\gio\giomm\appinfo.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm --copy ..\gio\giomm\application.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm --copy ..\gio\giomm\applicationcommandline.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm --copy ..\gio\giomm\asyncinitable.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm --copy ..\gio\giomm\asyncresult.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm --copy ..\gio\giomm\bufferedinputstream.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm --copy ..\gio\giomm\bufferedoutputstream.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm --copy ..\gio\giomm\cancellable.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm --copy ..\gio\giomm\charsetconverter.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm --copy ..\gio\giomm\contenttype.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm --copy ..\gio\giomm\converter.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm --copy ..\gio\giomm\converterinputstream.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm --copy ..\gio\giomm\converteroutputstream.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm --copy ..\gio\giomm\credentials.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm --copy ..\gio\giomm\datainputstream.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm --copy ..\gio\giomm\dataoutputstream.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm --copy ..\gio\giomm\dbusactiongroup.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm --copy ..\gio\giomm\dbusaddress.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm --copy ..\gio\giomm\dbusauthobserver.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm --copy ..\gio\giomm\dbusconnection.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm --copy ..\gio\giomm\dbuserror.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm --copy ..\gio\giomm\dbuserrorutils.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm --copy ..\gio\giomm\dbusinterface.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm --copy ..\gio\giomm\dbusinterfaceskeleton.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm --copy ..\gio\giomm\dbusinterfacevtable.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm --copy ..\gio\giomm\dbusintrospection.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm --copy ..\gio\giomm\dbusmenumodel.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm --copy ..\gio\giomm\dbusmessage.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm --copy ..\gio\giomm\dbusmethodinvocation.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm --copy ..\gio\giomm\dbusobject.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm --copy ..\gio\giomm\dbusownname.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm --copy ..\gio\giomm\dbusproxy.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm --copy ..\gio\giomm\dbusserver.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm --copy ..\gio\giomm\dbussubtreevtable.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm --copy ..\gio\giomm\dbusutils.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm --copy ..\gio\giomm\dbuswatchname.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm --copy ..\gio\giomm\drive.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm --copy ..\gio\giomm\emblem.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm --copy ..\gio\giomm\emblemedicon.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm --copy ..\gio\giomm\enums.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm --copy ..\gio\giomm\error.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm --copy ..\gio\giomm\file.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm --copy ..\gio\giomm\fileattributeinfo.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm --copy ..\gio\giomm\fileattributeinfolist.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm --copy ..\gio\giomm\fileenumerator.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm --copy ..\gio\giomm\fileicon.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm --copy ..\gio\giomm\fileinfo.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm --copy ..\gio\giomm\fileinputstream.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm --copy ..\gio\giomm\fileiostream.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm --copy ..\gio\giomm\filemonitor.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm --copy ..\gio\giomm\filenamecompleter.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm --copy ..\gio\giomm\fileoutputstream.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm --copy ..\gio\giomm\filterinputstream.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm --copy ..\gio\giomm\filteroutputstream.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm --copy ..\gio\giomm\icon.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm --copy ..\gio\giomm\inetaddress.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm --copy ..\gio\giomm\inetsocketaddress.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm --copy ..\gio\giomm\init.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm --copy ..\gio\giomm\initable.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm --copy ..\gio\giomm\inputstream.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm --copy ..\gio\giomm\iostream.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm --copy ..\gio\giomm\listmodel.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm --copy ..\gio\giomm\liststore.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm --copy ..\gio\giomm\loadableicon.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm --copy ..\gio\giomm\memoryinputstream.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm --copy ..\gio\giomm\memoryoutputstream.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm --copy ..\gio\giomm\menuattributeiter.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm --copy ..\gio\giomm\menulinkiter.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm --copy ..\gio\giomm\menu.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm --copy ..\gio\giomm\menuitem.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm --copy ..\gio\giomm\menumodel.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm --copy ..\gio\giomm\mount.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm --copy ..\gio\giomm\mountoperation.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm --copy ..\gio\giomm\networkaddress.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm --copy ..\gio\giomm\networkmonitor.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm --copy ..\gio\giomm\networkservice.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm --copy ..\gio\giomm\notification.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm --copy ..\gio\giomm\outputstream.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm --copy ..\gio\giomm\permission.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm --copy ..\gio\giomm\pollableinputstream.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm --copy ..\gio\giomm\pollableoutputstream.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm --copy ..\gio\giomm\proxy.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm --copy ..\gio\giomm\proxyaddress.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm --copy ..\gio\giomm\proxyresolver.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm --copy ..\gio\giomm\remoteactiongroup.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm --copy ..\gio\giomm\resolver.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm --copy ..\gio\giomm\resource.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm --copy ..\gio\giomm\seekable.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm --copy ..\gio\giomm\settings.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm --copy ..\gio\giomm\settingsschema.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm --copy ..\gio\giomm\settingsschemakey.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm --copy ..\gio\giomm\settingsschemasource.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm --copy ..\gio\giomm\simpleaction.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm --copy ..\gio\giomm\simpleactiongroup.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm --copy ..\gio\giomm\simpleiostream.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm --copy ..\gio\giomm\simplepermission.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm --copy ..\gio\giomm\socket.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm --copy ..\gio\giomm\socketaddress.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm --copy ..\gio\giomm\socketaddressenumerator.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm --copy ..\gio\giomm\socketclient.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm --copy ..\gio\giomm\socketconnectable.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm --copy ..\gio\giomm\socketconnection.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm --copy ..\gio\giomm\socketcontrolmessage.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm --copy ..\gio\giomm\socketlistener.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm --copy ..\gio\giomm\socketservice.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm --copy ..\gio\giomm\socketsource.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm --copy ..\gio\giomm\srvtarget.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm --copy ..\gio\giomm\tcpconnection.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm --copy ..\gio\giomm\tcpwrapperconnection.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm --copy ..\gio\giomm\threadedsocketservice.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm --copy ..\gio\giomm\themedicon.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm --copy ..\gio\giomm\tlscertificate.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm --copy ..\gio\giomm\tlsclientconnection.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm --copy ..\gio\giomm\tlsconnection.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm --copy ..\gio\giomm\tlsdatabase.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm --copy ..\gio\giomm\tlsinteraction.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm --copy ..\gio\giomm\tlspassword.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm --copy ..\gio\giomm\tlsserverconnection.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm --copy ..\gio\giomm\volume.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm --copy ..\gio\giomm\volumemonitor.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm --copy ..\gio\giomm\wrap_init.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm --copy ..\gio\giomm\zlibdecompressor.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm --copy ..\gio\giomm\zlibcompressor.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm -- --copy ..\gio\giomm\private\action_p.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm\private --copy ..\gio\giomm\private\actiongroup_p.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm\private --copy ..\gio\giomm\private\actionmap_p.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm\private --copy ..\gio\giomm\private\appinfo_p.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm\private --copy ..\gio\giomm\private\applaunchcontext_p.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm\private --copy ..\gio\giomm\private\application_p.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm\private --copy ..\gio\giomm\private\applicationcommandline_p.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm\private --copy ..\gio\giomm\private\asyncinitable_p.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm\private --copy ..\gio\giomm\private\asyncresult_p.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm\private --copy ..\gio\giomm\private\bufferedinputstream_p.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm\private --copy ..\gio\giomm\private\bufferedoutputstream_p.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm\private --copy ..\gio\giomm\private\cancellable_p.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm\private --copy ..\gio\giomm\private\charsetconverter_p.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm\private --copy ..\gio\giomm\private\converter_p.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm\private --copy ..\gio\giomm\private\converterinputstream_p.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm\private --copy ..\gio\giomm\private\converteroutputstream_p.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm\private --copy ..\gio\giomm\private\credentials_p.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm\private --copy ..\gio\giomm\private\datainputstream_p.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm\private --copy ..\gio\giomm\private\dataoutputstream_p.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm\private --copy ..\gio\giomm\private\dbusactiongroup_p.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm\private --copy ..\gio\giomm\private\dbusaddress_p.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm\private --copy ..\gio\giomm\private\dbusauthobserver_p.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm\private --copy ..\gio\giomm\private\dbusconnection_p.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm\private --copy ..\gio\giomm\private\dbuserror_p.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm\private --copy ..\gio\giomm\private\dbuserrorutils_p.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm\private --copy ..\gio\giomm\private\dbusinterface_p.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm\private --copy ..\gio\giomm\private\dbusinterfaceskeleton_p.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm\private --copy ..\gio\giomm\private\dbusinterfacevtable_p.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm\private --copy ..\gio\giomm\private\dbusintrospection_p.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm\private --copy ..\gio\giomm\private\dbusmenumodel_p.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm\private --copy ..\gio\giomm\private\dbusmessage_p.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm\private --copy ..\gio\giomm\private\dbusmethodinvocation_p.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm\private --copy ..\gio\giomm\private\dbusobject_p.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm\private --copy ..\gio\giomm\private\dbusownname_p.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm\private --copy ..\gio\giomm\private\dbusproxy_p.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm\private --copy ..\gio\giomm\private\dbusserver_p.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm\private --copy ..\gio\giomm\private\dbussubtreevtable_p.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm\private --copy ..\gio\giomm\private\dbusutils_p.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm\private --copy ..\gio\giomm\private\dbuswatchname_p.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm\private --copy ..\gio\giomm\private\drive_p.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm\private --copy ..\gio\giomm\private\emblem_p.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm\private --copy ..\gio\giomm\private\emblemedicon_p.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm\private --copy ..\gio\giomm\private\enums_p.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm\private --copy ..\gio\giomm\private\error_p.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm\private --copy ..\gio\giomm\private\file_p.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm\private --copy ..\gio\giomm\private\fileattributeinfo_p.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm\private --copy ..\gio\giomm\private\fileattributeinfolist_p.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm\private --copy ..\gio\giomm\private\fileenumerator_p.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm\private --copy ..\gio\giomm\private\fileicon_p.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm\private --copy ..\gio\giomm\private\fileinfo_p.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm\private --copy ..\gio\giomm\private\fileinputstream_p.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm\private --copy ..\gio\giomm\private\fileiostream_p.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm\private --copy ..\gio\giomm\private\filemonitor_p.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm\private --copy ..\gio\giomm\private\filenamecompleter_p.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm\private --copy ..\gio\giomm\private\fileoutputstream_p.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm\private --copy ..\gio\giomm\private\filterinputstream_p.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm\private --copy ..\gio\giomm\private\filteroutputstream_p.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm\private --copy ..\gio\giomm\private\icon_p.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm\private --copy ..\gio\giomm\private\inetaddress_p.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm\private --copy ..\gio\giomm\private\inetsocketaddress_p.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm\private --copy ..\gio\giomm\private\initable_p.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm\private --copy ..\gio\giomm\private\inputstream_p.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm\private --copy ..\gio\giomm\private\iostream_p.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm\private --copy ..\gio\giomm\private\listmodel_p.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm\private --copy ..\gio\giomm\private\liststore_p.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm\private --copy ..\gio\giomm\private\loadableicon_p.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm\private --copy ..\gio\giomm\private\memoryinputstream_p.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm\private --copy ..\gio\giomm\private\memoryoutputstream_p.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm\private --copy ..\gio\giomm\private\menu_p.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm\private --copy ..\gio\giomm\private\menuattributeiter_p.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm\private --copy ..\gio\giomm\private\menuitem_p.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm\private --copy ..\gio\giomm\private\menulinkiter_p.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm\private --copy ..\gio\giomm\private\menumodel_p.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm\private --copy ..\gio\giomm\private\mount_p.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm\private --copy ..\gio\giomm\private\mountoperation_p.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm\private --copy ..\gio\giomm\private\networkaddress_p.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm\private --copy ..\gio\giomm\private\networkmonitor_p.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm\private --copy ..\gio\giomm\private\networkservice_p.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm\private --copy ..\gio\giomm\private\notification_p.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm\private --copy ..\gio\giomm\private\outputstream_p.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm\private --copy ..\gio\giomm\private\pollableinputstream_p.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm\private --copy ..\gio\giomm\private\pollableoutputstream_p.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm\private --copy ..\gio\giomm\private\proxy_p.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm\private --copy ..\gio\giomm\private\proxyaddress_p.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm\private --copy ..\gio\giomm\private\proxyresolver_p.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm\private --copy ..\gio\giomm\private\remoteactiongroup_p.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm\private --copy ..\gio\giomm\private\resolver_p.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm\private --copy ..\gio\giomm\private\resource_p.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm\private --copy ..\gio\giomm\private\seekable_p.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm\private --copy ..\gio\giomm\private\settings_p.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm\private --copy ..\gio\giomm\private\settingsschema_p.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm\private --copy ..\gio\giomm\private\settingsschemakey_p.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm\private --copy ..\gio\giomm\private\settingsschemasource_p.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm\private --copy ..\gio\giomm\private\simpleaction_p.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm\private --copy ..\gio\giomm\private\simpleactiongroup_p.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm\private --copy ..\gio\giomm\private\simpleiostream_p.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm\private --copy ..\gio\giomm\private\socket_p.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm\private --copy ..\gio\giomm\private\socketaddress_p.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm\private --copy ..\gio\giomm\private\socketaddressenumerator_p.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm\private --copy ..\gio\giomm\private\socketclient_p.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm\private --copy ..\gio\giomm\private\socketconnectable_p.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm\private --copy ..\gio\giomm\private\socketconnection_p.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm\private --copy ..\gio\giomm\private\socketcontrolmessage_p.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm\private --copy ..\gio\giomm\private\socketlistener_p.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm\private --copy ..\gio\giomm\private\socketservice_p.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm\private --copy ..\gio\giomm\private\srvtarget_p.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm\private --copy ..\gio\giomm\private\tcpconnection_p.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm\private --copy ..\gio\giomm\private\tcpwrapperconnection_p.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm\private --copy ..\gio\giomm\private\themedicon_p.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm\private --copy ..\gio\giomm\private\threadedsocketservice_p.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm\private --copy ..\gio\giomm\private\tlscertificate_p.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm\private --copy ..\gio\giomm\private\tlsclientconnection_p.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm\private --copy ..\gio\giomm\private\tlsconnection_p.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm\private --copy ..\gio\giomm\private\tlsdatabase_p.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm\private --copy ..\gio\giomm\private\tlsinteraction_p.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm\private --copy ..\gio\giomm\private\tlspassword_p.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm\private --copy ..\gio\giomm\private\tlsserverconnection_p.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm\private --copy ..\gio\giomm\private\volume_p.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm\private --copy ..\gio\giomm\private\volumemonitor_p.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm\private --copy ..\gio\giomm\private\zlibcompressor_p.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm\private --copy ..\gio\giomm\private\zlibdecompressor_p.h $(CopyDir)\include\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\giomm\private --copy .\glibmm\glibmmconfig.h $(CopyDir)\lib\glibmm-$(ApiMajorVersion).$(ApiMinorVersion)\include --copy .\giomm\giommconfig.h $(CopyDir)\lib\giomm-$(ApiMajorVersion).$(ApiMinorVersion)\include -- -- -- -- <_PropertySheetDisplayName>glibmminstallprops -- -- -- -- $(BinDir) -- -- -- $(InstalledReleaseDlls) -- -- -- $(InstalledDebugDlls) -- -- -- $(GLibmmDoInstall) -- -- - -diff --git a/MSVC_Net2013/glibmm-version-paths.props b/MSVC_Net2013/glibmm-version-paths.props -index 216731b..e5f0f6a 100644 ---- a/MSVC_Net2013/glibmm-version-paths.props -+++ b/MSVC_Net2013/glibmm-version-paths.props -@@ -2,13 +2,9 @@ - - - 12 -- $(SolutionDir)\..\..\vs$(VSVer)\$(Platform) -- $(GlibEtcInstallRoot) - $(SolutionDir)$(Configuration)\$(Platform)\obj\$(ProjectName)\ - 2 - 4 -- -vc$(VSVer)0-$(ApiMajorVersion)_$(ApiMinorVersion) -- -vc$(VSVer)0-d-$(ApiMajorVersion)_$(ApiMinorVersion) - - - <_PropertySheetDisplayName>glibmmversionpathsprops -@@ -17,12 +13,6 @@ - - $(VSVer) - -- -- $(GlibEtcInstallRoot) -- -- -- $(CopyDir) -- - - $(DefDir) - -@@ -32,11 +22,5 @@ - - $(ApiMinorVersion) - -- -- $(ReleaseDllSuffix) -- -- -- $(DebugDllSuffix) -- - - -diff --git a/MSVC_Net2013/glibmm.vcxproj b/MSVC_Net2013/glibmm.vcxproj -index 6594edc..c611561 100644 ---- a/MSVC_Net2013/glibmm.vcxproj -+++ b/MSVC_Net2013/glibmm.vcxproj -@@ -93,7 +93,7 @@ - $(OutDir)\gendef.exe $(DefDir)\$(ProjectName).def $(ProjectName)$(DebugDllSuffix).dll $(IntDir)*.obj - - -- $(CPPDepLibsDebug);%(AdditionalDependencies) -+ %(AdditionalDependencies) - %(AdditionalLibraryDirectories) - $(OutDir)\$(ProjectName)$(DebugDllSuffix).dll - $(TargetDir)$(ProjectName)$(DebugDllSuffix).lib -@@ -125,7 +125,7 @@ - $(OutDir)\gendef.exe $(DefDir)\$(ProjectName).def $(ProjectName)$(DebugDllSuffix).dll $(IntDir)*.obj - - -- $(CPPDepLibsDebug);%(AdditionalDependencies) -+ %(AdditionalDependencies) - %(AdditionalLibraryDirectories) - $(OutDir)\$(ProjectName)$(DebugDllSuffix).dll - $(TargetDir)$(ProjectName)$(DebugDllSuffix).lib -@@ -152,7 +152,7 @@ - $(OutDir)\gendef.exe $(DefDir)\$(ProjectName).def $(ProjectName)$(ReleaseDllSuffix).dll $(IntDir)*.obj - - -- $(CPPDepLibsRelease);%(AdditionalDependencies) -+ %(AdditionalDependencies) - %(AdditionalLibraryDirectories) - $(OutDir)\$(ProjectName)$(ReleaseDllSuffix).dll - $(TargetDir)$(ProjectName)$(ReleaseDllSuffix).lib -@@ -183,7 +183,7 @@ - $(OutDir)\gendef.exe $(DefDir)\$(ProjectName).def $(ProjectName)$(ReleaseDllSuffix).dll $(IntDir)*.obj - - -- $(CPPDepLibsRelease);%(AdditionalDependencies) -+ %(AdditionalDependencies) - %(AdditionalLibraryDirectories) - $(OutDir)\$(ProjectName)$(ReleaseDllSuffix).dll - $(TargetDir)$(ProjectName)$(ReleaseDllSuffix).lib -@@ -359,4 +359,4 @@ - - - -- -+ -\ No newline at end of file diff --git a/ports/glibmm/glibmm-api-variant.patch b/ports/glibmm/glibmm-api-variant.patch new file mode 100644 index 000000000..bb00ac3f5 --- /dev/null +++ b/ports/glibmm/glibmm-api-variant.patch @@ -0,0 +1,84 @@ +diff --git a/glib/glibmm/varianttype.h b/glib/glibmm/varianttype.h +index a232e70..64eb4a1 100644 +--- a/glib/glibmm/varianttype.h ++++ b/glib/glibmm/varianttype.h +@@ -500,54 +500,79 @@ public: + + }; + ++GLIBMM_API + extern const VariantType VARIANT_TYPE_BOOL; + ++GLIBMM_API + extern const VariantType VARIANT_TYPE_BYTE; + ++GLIBMM_API + extern const VariantType VARIANT_TYPE_INT16; + ++GLIBMM_API + extern const VariantType VARIANT_TYPE_UINT16; + ++GLIBMM_API + extern const VariantType VARIANT_TYPE_INT32; + ++GLIBMM_API + extern const VariantType VARIANT_TYPE_UINT32; + ++GLIBMM_API + extern const VariantType VARIANT_TYPE_INT64; + ++GLIBMM_API + extern const VariantType VARIANT_TYPE_UINT64; + ++GLIBMM_API + extern const VariantType VARIANT_TYPE_DOUBLE; + ++GLIBMM_API + extern const VariantType VARIANT_TYPE_STRING; + ++GLIBMM_API + extern const VariantType VARIANT_TYPE_OBJECT_PATH; + ++GLIBMM_API + extern const VariantType VARIANT_TYPE_SIGNATURE; + ++GLIBMM_API + extern const VariantType VARIANT_TYPE_VARIANT; + ++GLIBMM_API + extern const VariantType VARIANT_TYPE_HANDLE; + ++GLIBMM_API + extern const VariantType VARIANT_TYPE_UNIT; + ++GLIBMM_API + extern const VariantType VARIANT_TYPE_ANY; + ++GLIBMM_API + extern const VariantType VARIANT_TYPE_BASIC; + ++GLIBMM_API + extern const VariantType VARIANT_TYPE_MAYBE; + ++GLIBMM_API + extern const VariantType VARIANT_TYPE_ARRAY; + ++GLIBMM_API + extern const VariantType VARIANT_TYPE_TUPLE; + ++GLIBMM_API + extern const VariantType VARIANT_TYPE_DICT_ENTRY; + ++GLIBMM_API + extern const VariantType VARIANT_TYPE_DICTIONARY; + ++GLIBMM_API + extern const VariantType VARIANT_TYPE_STRING_ARRAY; + ++GLIBMM_API + extern const VariantType VARIANT_TYPE_BYTESTRING; + ++GLIBMM_API + extern const VariantType VARIANT_TYPE_BYTESTRING_ARRAY; + + diff --git a/ports/glibmm/portfile.cmake b/ports/glibmm/portfile.cmake index 7586c40a3..792bf3dde 100644 --- a/ports/glibmm/portfile.cmake +++ b/ports/glibmm/portfile.cmake @@ -1,15 +1,8 @@ -# Glib uses winapi functions not available in WindowsStore, so glibmm -# also +# Glib uses winapi functions not available in WindowsStore, so glibmm also if (VCPKG_CMAKE_SYSTEM_NAME STREQUAL WindowsStore) message(FATAL_ERROR "Error: UWP builds are currently not supported.") endif() -# Glib relies on DllMain, so glibmm also -if (VCPKG_LIBRARY_LINKAGE STREQUAL static) - message(STATUS "Warning: Static building not supported. Building dynamic.") - set(VCPKG_LIBRARY_LINKAGE dynamic) -endif() - include(vcpkg_common_functions) set(SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src/glibmm-2.52.1) vcpkg_download_distfile(ARCHIVE @@ -21,81 +14,21 @@ vcpkg_extract_source_archive(${ARCHIVE}) vcpkg_apply_patches( SOURCE_PATH ${SOURCE_PATH} - PATCHES ${CMAKE_CURRENT_LIST_DIR}/fix_properties.patch ${CMAKE_CURRENT_LIST_DIR}/fix_charset.patch + PATCHES ${CMAKE_CURRENT_LIST_DIR}/glibmm-api-variant.patch ) -file(COPY ${CMAKE_CURRENT_LIST_DIR}/msvc_recommended_pragmas.h DESTINATION ${SOURCE_PATH}/MSVC_Net2013) - -set(VS_PLATFORM ${VCPKG_TARGET_ARCHITECTURE}) -if(${VCPKG_TARGET_ARCHITECTURE} STREQUAL x86) - set(VS_PLATFORM "Win32") -endif(${VCPKG_TARGET_ARCHITECTURE} STREQUAL x86) -vcpkg_build_msbuild( - PROJECT_PATH ${SOURCE_PATH}/MSVC_Net2013/glibmm.sln - TARGET giomm - PLATFORM ${VS_PLATFORM} - USE_VCPKG_INTEGRATION -) +file(COPY ${CMAKE_CURRENT_LIST_DIR}/CMakeLists.txt DESTINATION ${SOURCE_PATH}) -# Handle headers -file(COPY ${SOURCE_PATH}/MSVC_Net2013/giomm/giommconfig.h DESTINATION ${CURRENT_PACKAGES_DIR}/include) -file(COPY ${SOURCE_PATH}/gio/giomm.h DESTINATION ${CURRENT_PACKAGES_DIR}/include) -file( - COPY - ${SOURCE_PATH}/gio/giomm - DESTINATION ${CURRENT_PACKAGES_DIR}/include - FILES_MATCHING PATTERN *.h -) -file(COPY ${SOURCE_PATH}/MSVC_Net2013/glibmm/glibmmconfig.h DESTINATION ${CURRENT_PACKAGES_DIR}/include) -file(COPY ${SOURCE_PATH}/glib/glibmm.h DESTINATION ${CURRENT_PACKAGES_DIR}/include) -file( - COPY - ${SOURCE_PATH}/glib/glibmm - DESTINATION ${CURRENT_PACKAGES_DIR}/include - FILES_MATCHING PATTERN *.h +vcpkg_configure_cmake( + SOURCE_PATH ${SOURCE_PATH} + PREFER_NINJA + OPTIONS + -DWARNINGS_HEADER=${CMAKE_CURRENT_LIST_DIR}/msvc_recommended_pragmas.h + OPTIONS_DEBUG + -DDISABLE_INSTALL_HEADERS=ON ) -# Handle libraries -file( - COPY - ${SOURCE_PATH}/MSVC_Net2013/Release/${VS_PLATFORM}/bin/giomm.dll - DESTINATION ${CURRENT_PACKAGES_DIR}/bin -) -file( - COPY - ${SOURCE_PATH}/MSVC_Net2013/Release/${VS_PLATFORM}/bin/giomm.lib - DESTINATION ${CURRENT_PACKAGES_DIR}/lib -) -file( - COPY - ${SOURCE_PATH}/MSVC_Net2013/Release/${VS_PLATFORM}/bin/glibmm.dll - DESTINATION ${CURRENT_PACKAGES_DIR}/bin -) -file( - COPY - ${SOURCE_PATH}/MSVC_Net2013/Release/${VS_PLATFORM}/bin/glibmm.lib - DESTINATION ${CURRENT_PACKAGES_DIR}/lib -) -file( - COPY - ${SOURCE_PATH}/MSVC_Net2013/Debug/${VS_PLATFORM}/bin/giomm.dll - DESTINATION ${CURRENT_PACKAGES_DIR}/debug/bin -) -file( - COPY - ${SOURCE_PATH}/MSVC_Net2013/Debug/${VS_PLATFORM}/bin/giomm.lib - DESTINATION ${CURRENT_PACKAGES_DIR}/debug/lib -) -file( - COPY - ${SOURCE_PATH}/MSVC_Net2013/Debug/${VS_PLATFORM}/bin/glibmm.dll - DESTINATION ${CURRENT_PACKAGES_DIR}/debug/bin -) -file( - COPY - ${SOURCE_PATH}/MSVC_Net2013/Debug/${VS_PLATFORM}/bin/glibmm.lib - DESTINATION ${CURRENT_PACKAGES_DIR}/debug/lib -) +vcpkg_install_cmake() vcpkg_copy_pdbs() -- cgit v1.2.3 From b9009fff1b5f9541119d764927abb5bfabc8f9fc Mon Sep 17 00:00:00 2001 From: Robert Schumacher Date: Tue, 17 Apr 2018 16:22:00 -0700 Subject: [libxmlpp] Initial commit of 2.40.1 --- ports/libxmlpp/CMakeLists.txt | 97 +++++++++++++++++++++++++++++++++++++++++++ ports/libxmlpp/CONTROL | 4 ++ ports/libxmlpp/portfile.cmake | 26 ++++++++++++ 3 files changed, 127 insertions(+) create mode 100644 ports/libxmlpp/CMakeLists.txt create mode 100644 ports/libxmlpp/CONTROL create mode 100644 ports/libxmlpp/portfile.cmake diff --git a/ports/libxmlpp/CMakeLists.txt b/ports/libxmlpp/CMakeLists.txt new file mode 100644 index 000000000..697d6bbc2 --- /dev/null +++ b/ports/libxmlpp/CMakeLists.txt @@ -0,0 +1,97 @@ +cmake_minimum_required(VERSION 3.9) +project(libxmlpp) + +set(CMAKE_CXX_STANDARD 17) + +set(CMAKE_WINDOWS_EXPORT_ALL_SYMBOLS TRUE) + +find_path(GLIBMM_INCLUDE_DIR NAMES glibmm.h) +find_library(GLIBMM_LIBRARY NAMES glibmm) +find_library(GIOMM_LIBRARY NAMES giomm) +find_library(GLIB_LIBRARY NAMES glib glib-2.0) +find_library(GIO_LIBRARY NAMES gio gio-2.0) +find_library(GMODULE_LIBRARY NAMES gmodule gmodule-2.0) +find_library(GOBJECT_LIBRARY NAMES gobject gobject-2.0) +find_library(SIGCPP_LIBRARY NAMES sigc sigc-2.0) +find_library(FFI_LIBRARY NAMES ffi libffi) +find_library(PCRE_LIBRARY NAMES pcre libpcre) +find_package(LibXml2 REQUIRED) +find_package(LibLZMA REQUIRED) +find_package(ZLIB REQUIRED) + +if(APPLE) + find_library(LIBINTL_LIBRARY NAMES intl) +endif() + +find_package(unofficial-iconv REQUIRED) +link_libraries(${LIBINTL_LIBRARY} unofficial::iconv::libiconv) + +if(APPLE) + find_library(COREFOUNDATION_LIBRARY CoreFoundation) + find_library(CORESERVICES_LIBRARY CoreServices) + find_library(FOUNDATION_LIBRARY Foundation) + link_libraries(${COREFOUNDATION_LIBRARY} ${CORESERVICES_LIBRARY} ${FOUNDATION_LIBRARY}) +endif() + +link_libraries( + ${GIOMM_LIBRARY} + ${GLIBMM_LIBRARY} + ${GMODULE_LIBRARY} + ${GOBJECT_LIBRARY} + ${GIO_LIBRARY} + ${GLIB_LIBRARY} + ${SIGCPP_LIBRARY} + ${FFI_LIBRARY} + ${LIBXML2_LIBRARIES} + ${PCRE_LIBRARY} + ${LIBLZMA_LIBRARIES} + ZLIB::ZLIB +) +include_directories(${GLIBMM_INCLUDE_DIR} ${LIBXML2_INCLUDE_DIRS} ${LIBLZMA_INCLUDE_DIRS}) +include_directories(. ${CMAKE_BINARY_DIR}/config) +if(NOT WIN32) + set(THREADS_PREFER_PTHREAD_FLAG ON) + find_package(Threads REQUIRED) + link_libraries(Threads::Threads ${CMAKE_DL_LIBS}) +endif() + +# config file +if(WIN32) + configure_file(MSVC_Net2010/libxml++/libxml++config.h ${CMAKE_BINARY_DIR}/config/libxml++config.h COPYONLY) +else() + set(ENV{GLIBMM_CFLAGS} -I${GLIBMM_INCLUDE_DIR}) + set(ENV{GLIBMM_LIBS} "${GLIBMM_LIBRARY}") + set(ENV{GIOMM_CFLAGS} -I${GLIBMM_INCLUDE_DIR}) + set(ENV{GIOMM_LIBS} "${GIOMM_LIBRARY}") + set(ENV{PKG_CONFIG} "echo") + + file(MAKE_DIRECTORY ${CMAKE_BINARY_DIR}/config) + execute_process( + COMMAND "${CMAKE_SOURCE_DIR}/configure" + WORKING_DIRECTORY ${CMAKE_BINARY_DIR}/config + RESULT_VARIABLE res + ) + if(NOT res EQUAL 0) + message(FATAL_ERROR "Configure failed.") + endif() +endif() + +file(GLOB_RECURSE SOURCES libxml++/*.cc) +add_library(xml++ ${SOURCES}) +target_compile_definitions(xml++ PRIVATE -DLIBXMLPP_BUILD) + +if(NOT DISABLE_INSTALL_HEADERS) + install(FILES ${CMAKE_BINARY_DIR}/config/libxml++config.h DESTINATION include) + install(DIRECTORY libxml++ DESTINATION include FILES_MATCHING PATTERN *.h) +endif() +install( + TARGETS xml++ + RUNTIME DESTINATION bin + ARCHIVE DESTINATION lib + LIBRARY DESTINATION lib +) + +if(NOT DISABLE_EXAMPLES) + add_executable(dom_build examples/dom_build/main.cc) + target_link_libraries(dom_build xml++) +endif() diff --git a/ports/libxmlpp/CONTROL b/ports/libxmlpp/CONTROL new file mode 100644 index 000000000..46ec26ea1 --- /dev/null +++ b/ports/libxmlpp/CONTROL @@ -0,0 +1,4 @@ +Source: libxmlpp +Version: 2.40.1-1 +Description: a C++ wrapper for the libxml XML parser library. +Build-Depends: libxml2, glibmm diff --git a/ports/libxmlpp/portfile.cmake b/ports/libxmlpp/portfile.cmake new file mode 100644 index 000000000..8b6c758ac --- /dev/null +++ b/ports/libxmlpp/portfile.cmake @@ -0,0 +1,26 @@ +include(vcpkg_common_functions) +set(LIBXMLPP_VERSION 2.40.1) +set(SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src/libxml++-${LIBXMLPP_VERSION}) +vcpkg_download_distfile(ARCHIVE + URLS "http://ftp.gnome.org/pub/GNOME/sources/libxml++/2.40/libxml++-${LIBXMLPP_VERSION}.tar.xz" + FILENAME "libxml++-${LIBXMLPP_VERSION}.tar.xz" + SHA512 a4ec2e8182d981c57bdcb8f0a203a3161f8c735ceb59fd212408b7a539d1dc826adf6717bed8f4d544ab08afd9c2fc861efe518e24bbd3a1c4b158e2ca48183a +) +vcpkg_extract_source_archive(${ARCHIVE}) + +file(COPY ${CMAKE_CURRENT_LIST_DIR}/CMakeLists.txt DESTINATION ${SOURCE_PATH}) + +vcpkg_configure_cmake( + SOURCE_PATH ${SOURCE_PATH} + PREFER_NINJA + OPTIONS_DEBUG + -DDISABLE_INSTALL_HEADERS=ON +) + +vcpkg_install_cmake() + +vcpkg_copy_pdbs() + +# Handle copyright and readme +file(INSTALL ${SOURCE_PATH}/COPYING DESTINATION ${CURRENT_PACKAGES_DIR}/share/libxmlpp RENAME copyright) +file(INSTALL ${SOURCE_PATH}/README DESTINATION ${CURRENT_PACKAGES_DIR}/share/libxmlpp) -- cgit v1.2.3 From b831381cf569436177ada02366c4850a665b8465 Mon Sep 17 00:00:00 2001 From: Robert Schumacher Date: Tue, 17 Apr 2018 16:26:01 -0700 Subject: [boost] Improve non-windows support --- ports/boost-asio/CONTROL | 2 +- ports/boost-atomic/CONTROL | 2 +- ports/boost-chrono/CONTROL | 2 +- ports/boost-compute/CONTROL | 2 +- ports/boost-container/CONTROL | 2 +- ports/boost-context/CONTROL | 2 +- ports/boost-coroutine/CONTROL | 2 +- ports/boost-coroutine2/CONTROL | 2 +- ports/boost-date-time/CONTROL | 2 +- ports/boost-dll/CONTROL | 2 +- ports/boost-exception/CONTROL | 2 +- ports/boost-fiber/CONTROL | 2 +- ports/boost-filesystem/CONTROL | 2 +- ports/boost-graph-parallel/CONTROL | 2 +- ports/boost-graph-parallel/portfile.cmake | 2 -- ports/boost-graph/CONTROL | 2 +- ports/boost-interval/CONTROL | 2 +- ports/boost-iostreams/CONTROL | 2 +- ports/boost-locale/CONTROL | 2 +- ports/boost-locale/cmake-fragment.cmake | 10 ++++++++++ ports/boost-locale/portfile.cmake | 1 + ports/boost-log/CONTROL | 2 +- ports/boost-math/CONTROL | 2 +- ports/boost-modular-build-helper/CMakeLists.txt | 14 +++++++++++++- ports/boost-modular-build-helper/CONTROL | 2 +- .../boost-modular-build.cmake | 10 +++++++++- ports/boost-modular-build-helper/user-config.jam | 3 +++ ports/boost-mpi/CONTROL | 2 +- ports/boost-poly-collection/CONTROL | 2 +- ports/boost-pool/CONTROL | 2 +- ports/boost-process/CONTROL | 2 +- ports/boost-program-options/CONTROL | 2 +- ports/boost-random/CONTROL | 2 +- ports/boost-regex/CONTROL | 2 +- ports/boost-serialization/CONTROL | 2 +- ports/boost-signals/CONTROL | 2 +- ports/boost-spirit/CONTROL | 2 +- ports/boost-stacktrace/CONTROL | 2 +- ports/boost-system/CONTROL | 2 +- ports/boost-test/CONTROL | 2 +- ports/boost-test/portfile.cmake | 2 +- ports/boost-thread/CONTROL | 2 +- ports/boost-timer/CONTROL | 2 +- ports/boost-type-erasure/CONTROL | 2 +- ports/boost-vcpkg-helpers/generate-ports.ps1 | 22 ++++++++++++++++++---- ports/boost-wave/CONTROL | 2 +- ports/boost/CONTROL | 2 +- 47 files changed, 94 insertions(+), 48 deletions(-) create mode 100644 ports/boost-locale/cmake-fragment.cmake diff --git a/ports/boost-asio/CONTROL b/ports/boost-asio/CONTROL index 8335a6dd8..169640a9b 100644 --- a/ports/boost-asio/CONTROL +++ b/ports/boost-asio/CONTROL @@ -1,5 +1,5 @@ # Automatically generated by boost-vcpkg-helpers/generate-ports.ps1 Source: boost-asio Version: 1.66.0-1 -Build-Depends: boost-coroutine (windows), boost-date-time, boost-regex, boost-system, boost-vcpkg-helpers, openssl +Build-Depends: boost-coroutine (!uwp), boost-date-time, boost-regex, boost-system, boost-vcpkg-helpers, openssl Description: Boost asio module diff --git a/ports/boost-atomic/CONTROL b/ports/boost-atomic/CONTROL index 4a625b6df..6289fb560 100644 --- a/ports/boost-atomic/CONTROL +++ b/ports/boost-atomic/CONTROL @@ -1,5 +1,5 @@ # Automatically generated by boost-vcpkg-helpers/generate-ports.ps1 Source: boost-atomic Version: 1.66.0 -Build-Depends: boost-assert, boost-build, boost-modular-build-helper, boost-config, boost-integer, boost-type-traits, boost-vcpkg-helpers +Build-Depends: boost-assert, boost-build, boost-config, boost-integer, boost-modular-build-helper, boost-type-traits, boost-vcpkg-helpers Description: Boost atomic module diff --git a/ports/boost-chrono/CONTROL b/ports/boost-chrono/CONTROL index b5fb892cd..563547137 100644 --- a/ports/boost-chrono/CONTROL +++ b/ports/boost-chrono/CONTROL @@ -1,5 +1,5 @@ # Automatically generated by boost-vcpkg-helpers/generate-ports.ps1 Source: boost-chrono Version: 1.66.0 -Build-Depends: boost-assert, boost-build, boost-modular-build-helper, boost-config, boost-detail, boost-integer, boost-move, boost-mpl, boost-predef, boost-ratio, boost-static-assert, boost-system, boost-throw-exception, boost-typeof, boost-type-traits, boost-utility, boost-vcpkg-helpers, boost-winapi +Build-Depends: boost-assert, boost-build, boost-config, boost-detail, boost-integer, boost-modular-build-helper, boost-move, boost-mpl, boost-predef, boost-ratio, boost-static-assert, boost-system, boost-throw-exception, boost-typeof, boost-type-traits, boost-utility, boost-vcpkg-helpers, boost-winapi Description: Boost chrono module diff --git a/ports/boost-compute/CONTROL b/ports/boost-compute/CONTROL index 3c7b1c17e..9c90be96e 100644 --- a/ports/boost-compute/CONTROL +++ b/ports/boost-compute/CONTROL @@ -1,5 +1,5 @@ # Automatically generated by boost-vcpkg-helpers/generate-ports.ps1 Source: boost-compute Version: 1.66.0 -Build-Depends: boost-algorithm, boost-array, boost-assert, boost-chrono, boost-config, boost-core, boost-filesystem (windows), boost-function, boost-function-types, boost-fusion, boost-iterator, boost-lexical-cast, boost-math, boost-mpl, boost-optional, boost-preprocessor, boost-property-tree, boost-proto, boost-range, boost-smart-ptr, boost-static-assert, boost-throw-exception, boost-tuple, boost-typeof, boost-type-traits, boost-utility, boost-uuid, boost-vcpkg-helpers +Build-Depends: boost-algorithm, boost-array, boost-assert, boost-chrono, boost-config, boost-core, boost-filesystem (!uwp), boost-function, boost-function-types, boost-fusion, boost-iterator, boost-lexical-cast, boost-math, boost-mpl, boost-optional, boost-preprocessor, boost-property-tree, boost-proto, boost-range, boost-smart-ptr, boost-static-assert, boost-throw-exception, boost-tuple, boost-typeof, boost-type-traits, boost-utility, boost-uuid, boost-vcpkg-helpers Description: Boost compute module diff --git a/ports/boost-container/CONTROL b/ports/boost-container/CONTROL index 69e641d36..2fbed7951 100644 --- a/ports/boost-container/CONTROL +++ b/ports/boost-container/CONTROL @@ -1,5 +1,5 @@ # Automatically generated by boost-vcpkg-helpers/generate-ports.ps1 Source: boost-container Version: 1.66.0 -Build-Depends: boost-assert, boost-build, boost-modular-build-helper, boost-config, boost-core, boost-functional, boost-integer, boost-intrusive, boost-move, boost-static-assert, boost-type-traits, boost-vcpkg-helpers +Build-Depends: boost-assert, boost-build, boost-config, boost-core, boost-functional, boost-integer, boost-intrusive, boost-modular-build-helper, boost-move, boost-static-assert, boost-type-traits, boost-vcpkg-helpers Description: Boost container module diff --git a/ports/boost-context/CONTROL b/ports/boost-context/CONTROL index 22295dddc..bd72d021c 100644 --- a/ports/boost-context/CONTROL +++ b/ports/boost-context/CONTROL @@ -1,5 +1,5 @@ # Automatically generated by boost-vcpkg-helpers/generate-ports.ps1 Source: boost-context Version: 1.66.0 -Build-Depends: boost-assert, boost-build, boost-modular-build-helper, boost-config, boost-detail, boost-integer, boost-pool, boost-predef, boost-smart-ptr, boost-vcpkg-helpers +Build-Depends: boost-assert, boost-build, boost-config, boost-detail, boost-integer, boost-modular-build-helper, boost-pool, boost-predef, boost-smart-ptr, boost-vcpkg-helpers Description: Boost context module diff --git a/ports/boost-coroutine/CONTROL b/ports/boost-coroutine/CONTROL index 77683890a..998958b5f 100644 --- a/ports/boost-coroutine/CONTROL +++ b/ports/boost-coroutine/CONTROL @@ -1,5 +1,5 @@ # Automatically generated by boost-vcpkg-helpers/generate-ports.ps1 Source: boost-coroutine Version: 1.66.0 -Build-Depends: boost-assert, boost-build, boost-modular-build-helper, boost-config, boost-context (windows), boost-detail, boost-exception, boost-integer, boost-move, boost-range, boost-system, boost-thread (windows), boost-throw-exception, boost-type-traits, boost-utility, boost-vcpkg-helpers +Build-Depends: boost-assert, boost-build, boost-config, boost-context (!uwp), boost-detail, boost-exception, boost-integer, boost-modular-build-helper, boost-move, boost-range, boost-system, boost-thread (!uwp), boost-throw-exception, boost-type-traits, boost-utility, boost-vcpkg-helpers Description: Boost coroutine module diff --git a/ports/boost-coroutine2/CONTROL b/ports/boost-coroutine2/CONTROL index fd52e362a..bd1156825 100644 --- a/ports/boost-coroutine2/CONTROL +++ b/ports/boost-coroutine2/CONTROL @@ -1,5 +1,5 @@ # Automatically generated by boost-vcpkg-helpers/generate-ports.ps1 Source: boost-coroutine2 Version: 1.66.0 -Build-Depends: boost-assert, boost-config, boost-context (windows), boost-detail, boost-vcpkg-helpers +Build-Depends: boost-assert, boost-config, boost-context (!uwp), boost-detail, boost-vcpkg-helpers Description: Boost coroutine2 module diff --git a/ports/boost-date-time/CONTROL b/ports/boost-date-time/CONTROL index 8e8738e8d..6814dc0e1 100644 --- a/ports/boost-date-time/CONTROL +++ b/ports/boost-date-time/CONTROL @@ -1,5 +1,5 @@ # Automatically generated by boost-vcpkg-helpers/generate-ports.ps1 Source: boost-date-time Version: 1.66.0 -Build-Depends: boost-algorithm, boost-assert, boost-build, boost-modular-build-helper, boost-compatibility, boost-config, boost-detail, boost-integer, boost-io, boost-lexical-cast, boost-math, boost-mpl, boost-range, boost-smart-ptr, boost-static-assert, boost-throw-exception, boost-tokenizer, boost-type-traits, boost-utility, boost-vcpkg-helpers, boost-winapi +Build-Depends: boost-algorithm, boost-assert, boost-build, boost-compatibility, boost-config, boost-detail, boost-integer, boost-io, boost-lexical-cast, boost-math, boost-modular-build-helper, boost-mpl, boost-range, boost-smart-ptr, boost-static-assert, boost-throw-exception, boost-tokenizer, boost-type-traits, boost-utility, boost-vcpkg-helpers, boost-winapi Description: Boost date_time module diff --git a/ports/boost-dll/CONTROL b/ports/boost-dll/CONTROL index 96c9f59dc..cfb7e5e6e 100644 --- a/ports/boost-dll/CONTROL +++ b/ports/boost-dll/CONTROL @@ -1,5 +1,5 @@ # Automatically generated by boost-vcpkg-helpers/generate-ports.ps1 Source: boost-dll Version: 1.66.0 -Build-Depends: boost-config, boost-core, boost-filesystem (windows), boost-integer, boost-move, boost-mpl, boost-predef, boost-smart-ptr, boost-spirit, boost-static-assert, boost-system, boost-throw-exception, boost-type-index, boost-type-traits, boost-utility, boost-vcpkg-helpers, boost-winapi +Build-Depends: boost-config, boost-core, boost-filesystem (!uwp), boost-integer, boost-move, boost-mpl, boost-predef, boost-smart-ptr, boost-spirit, boost-static-assert, boost-system, boost-throw-exception, boost-type-index, boost-type-traits, boost-utility, boost-vcpkg-helpers, boost-winapi Description: Boost dll module diff --git a/ports/boost-exception/CONTROL b/ports/boost-exception/CONTROL index 476c53cf4..2f807d992 100644 --- a/ports/boost-exception/CONTROL +++ b/ports/boost-exception/CONTROL @@ -1,5 +1,5 @@ # Automatically generated by boost-vcpkg-helpers/generate-ports.ps1 Source: boost-exception Version: 1.66.0 -Build-Depends: boost-assert, boost-build, boost-modular-build-helper, boost-config, boost-core, boost-smart-ptr, boost-tuple, boost-type-traits, boost-utility, boost-vcpkg-helpers +Build-Depends: boost-assert, boost-build, boost-config, boost-core, boost-modular-build-helper, boost-smart-ptr, boost-tuple, boost-type-traits, boost-utility, boost-vcpkg-helpers Description: Boost exception module diff --git a/ports/boost-fiber/CONTROL b/ports/boost-fiber/CONTROL index b02c94a3b..a3b230904 100644 --- a/ports/boost-fiber/CONTROL +++ b/ports/boost-fiber/CONTROL @@ -1,5 +1,5 @@ # Automatically generated by boost-vcpkg-helpers/generate-ports.ps1 Source: boost-fiber Version: 1.66.0 -Build-Depends: boost-algorithm, boost-assert, boost-build, boost-modular-build-helper, boost-config, boost-context (windows), boost-core, boost-detail, boost-filesystem (windows), boost-format, boost-intrusive, boost-predef, boost-smart-ptr, boost-vcpkg-helpers +Build-Depends: boost-algorithm, boost-assert, boost-build, boost-config, boost-context (!uwp), boost-core, boost-detail, boost-filesystem (!uwp), boost-format, boost-intrusive, boost-modular-build-helper, boost-predef, boost-smart-ptr, boost-vcpkg-helpers Description: Boost fiber module diff --git a/ports/boost-filesystem/CONTROL b/ports/boost-filesystem/CONTROL index 4717d608b..d50e6a177 100644 --- a/ports/boost-filesystem/CONTROL +++ b/ports/boost-filesystem/CONTROL @@ -1,5 +1,5 @@ # Automatically generated by boost-vcpkg-helpers/generate-ports.ps1 Source: boost-filesystem Version: 1.66.0 -Build-Depends: boost-assert, boost-build, boost-modular-build-helper, boost-config, boost-detail, boost-functional, boost-integer, boost-io, boost-iterator, boost-range, boost-smart-ptr, boost-static-assert, boost-system, boost-type-traits, boost-utility, boost-vcpkg-helpers +Build-Depends: boost-assert, boost-build, boost-config, boost-detail, boost-functional, boost-integer, boost-io, boost-iterator, boost-modular-build-helper, boost-range, boost-smart-ptr, boost-static-assert, boost-system, boost-type-traits, boost-utility, boost-vcpkg-helpers Description: Boost filesystem module diff --git a/ports/boost-graph-parallel/CONTROL b/ports/boost-graph-parallel/CONTROL index 3f1e8e1ed..13f28ffd5 100644 --- a/ports/boost-graph-parallel/CONTROL +++ b/ports/boost-graph-parallel/CONTROL @@ -1,5 +1,5 @@ # Automatically generated by boost-vcpkg-helpers/generate-ports.ps1 Source: boost-graph-parallel Version: 1.66.0 -Build-Depends: boost-assert, boost-build, boost-modular-build-helper, boost-compatibility, boost-config, boost-detail, boost-dynamic-bitset, boost-function, boost-functional, boost-graph, boost-iterator, boost-lexical-cast, boost-math, boost-mpl, boost-optional, boost-property-map, boost-random, boost-serialization, boost-smart-ptr, boost-static-assert, boost-tuple, boost-type-traits, boost-utility, boost-variant, boost-vcpkg-helpers +Build-Depends: boost-assert, boost-compatibility, boost-config, boost-detail, boost-dynamic-bitset, boost-function, boost-functional, boost-graph, boost-iterator, boost-lexical-cast, boost-math, boost-mpl, boost-optional, boost-property-map, boost-random, boost-serialization, boost-smart-ptr, boost-static-assert, boost-tuple, boost-type-traits, boost-utility, boost-variant, boost-vcpkg-helpers Description: Boost graph_parallel module diff --git a/ports/boost-graph-parallel/portfile.cmake b/ports/boost-graph-parallel/portfile.cmake index 8d2fdb2eb..32e083f05 100644 --- a/ports/boost-graph-parallel/portfile.cmake +++ b/ports/boost-graph-parallel/portfile.cmake @@ -10,7 +10,5 @@ vcpkg_from_github( HEAD_REF master ) -include(${CURRENT_INSTALLED_DIR}/share/boost-build/boost-modular-build.cmake) -boost_modular_build(SOURCE_PATH ${SOURCE_PATH}) include(${CURRENT_INSTALLED_DIR}/share/boost-vcpkg-helpers/boost-modular-headers.cmake) boost_modular_headers(SOURCE_PATH ${SOURCE_PATH}) diff --git a/ports/boost-graph/CONTROL b/ports/boost-graph/CONTROL index 12d74bc1e..a7dd22633 100644 --- a/ports/boost-graph/CONTROL +++ b/ports/boost-graph/CONTROL @@ -1,5 +1,5 @@ # Automatically generated by boost-vcpkg-helpers/generate-ports.ps1 Source: boost-graph Version: 1.66.0 -Build-Depends: boost-algorithm, boost-any, boost-array, boost-assert, boost-bimap, boost-bind, boost-build, boost-modular-build-helper, boost-compatibility, boost-concept-check, boost-config, boost-conversion, boost-core, boost-detail, boost-foreach, boost-function, boost-functional, boost-integer, boost-iterator, boost-lexical-cast, boost-math, boost-move, boost-mpl, boost-multi-index, boost-optional, boost-parameter, boost-preprocessor, boost-property-map, boost-property-tree, boost-random, boost-range, boost-regex, boost-serialization, boost-smart-ptr, boost-spirit, boost-static-assert, boost-test (windows), boost-throw-exception, boost-tti, boost-tuple, boost-typeof, boost-type-traits, boost-unordered, boost-utility, boost-vcpkg-helpers, boost-xpressive +Build-Depends: boost-algorithm, boost-any, boost-array, boost-assert, boost-bimap, boost-bind, boost-build, boost-compatibility, boost-concept-check, boost-config, boost-conversion, boost-core, boost-detail, boost-foreach, boost-function, boost-functional, boost-integer, boost-iterator, boost-lexical-cast, boost-math, boost-modular-build-helper, boost-move, boost-mpl, boost-multi-index, boost-optional, boost-parameter, boost-preprocessor, boost-property-map, boost-property-tree, boost-random, boost-range, boost-regex, boost-serialization, boost-smart-ptr, boost-spirit, boost-static-assert, boost-test (!uwp), boost-throw-exception, boost-tti, boost-tuple, boost-typeof, boost-type-traits, boost-unordered, boost-utility, boost-vcpkg-helpers, boost-xpressive Description: Boost graph module diff --git a/ports/boost-interval/CONTROL b/ports/boost-interval/CONTROL index 644558413..cfd096adc 100644 --- a/ports/boost-interval/CONTROL +++ b/ports/boost-interval/CONTROL @@ -1,5 +1,5 @@ # Automatically generated by boost-vcpkg-helpers/generate-ports.ps1 Source: boost-interval Version: 1.66.0 -Build-Depends: boost-compatibility, boost-config, boost-logic (windows), boost-vcpkg-helpers +Build-Depends: boost-compatibility, boost-config, boost-logic (!uwp), boost-vcpkg-helpers Description: Boost interval module diff --git a/ports/boost-iostreams/CONTROL b/ports/boost-iostreams/CONTROL index d48fdfd24..d0d82f8b6 100644 --- a/ports/boost-iostreams/CONTROL +++ b/ports/boost-iostreams/CONTROL @@ -1,5 +1,5 @@ # Automatically generated by boost-vcpkg-helpers/generate-ports.ps1 Source: boost-iostreams Version: 1.66.0 -Build-Depends: boost-assert, boost-bind, boost-build, boost-modular-build-helper, boost-config, boost-core, boost-detail, boost-function, boost-integer, boost-iterator, boost-mpl, boost-preprocessor, boost-range, boost-regex, boost-smart-ptr, boost-static-assert, boost-throw-exception, boost-type-traits, boost-utility, boost-vcpkg-helpers, bzip2, zlib +Build-Depends: boost-assert, boost-bind, boost-build, boost-config, boost-core, boost-detail, boost-function, boost-integer, boost-iterator, boost-modular-build-helper, boost-mpl, boost-preprocessor, boost-range, boost-regex, boost-smart-ptr, boost-static-assert, boost-throw-exception, boost-type-traits, boost-utility, boost-vcpkg-helpers, bzip2, zlib Description: Boost iostreams module diff --git a/ports/boost-locale/CONTROL b/ports/boost-locale/CONTROL index 0a37505b1..5ed156bdd 100644 --- a/ports/boost-locale/CONTROL +++ b/ports/boost-locale/CONTROL @@ -1,7 +1,7 @@ # Automatically generated by boost-vcpkg-helpers/generate-ports.ps1 Source: boost-locale Version: 1.66.0 -Build-Depends: boost-assert, boost-build, boost-modular-build-helper, boost-config, boost-function, boost-integer, boost-iterator, boost-smart-ptr, boost-static-assert, boost-thread (windows), boost-type-traits, boost-unordered, boost-vcpkg-helpers +Build-Depends: boost-assert, boost-build, boost-config, boost-function, boost-integer, boost-iterator, boost-modular-build-helper, boost-smart-ptr, boost-static-assert, boost-thread (!uwp), boost-type-traits, boost-unordered, boost-vcpkg-helpers, libiconv (!uwp&!windows) Description: Boost locale module Feature: icu diff --git a/ports/boost-locale/cmake-fragment.cmake b/ports/boost-locale/cmake-fragment.cmake new file mode 100644 index 000000000..11d3ed70e --- /dev/null +++ b/ports/boost-locale/cmake-fragment.cmake @@ -0,0 +1,10 @@ +find_library(LIBICONV_LIBRARY iconv) +get_filename_component(LIBICONV_DIR "${LIBICONV_LIBRARY}" DIRECTORY) + +list(APPEND B2_OPTIONS + boost.locale.iconv=on + boost.locale.posix=on + /boost/locale//boost_locale + boost.locale.icu=off + -sICONV_PATH=${LIBICONV_LIBRARY} +) diff --git a/ports/boost-locale/portfile.cmake b/ports/boost-locale/portfile.cmake index 9c1aa2ff4..e6d82a1a6 100644 --- a/ports/boost-locale/portfile.cmake +++ b/ports/boost-locale/portfile.cmake @@ -19,6 +19,7 @@ endif() include(${CURRENT_INSTALLED_DIR}/share/boost-build/boost-modular-build.cmake) boost_modular_build( SOURCE_PATH ${SOURCE_PATH} + BOOST_CMAKE_FRAGMENT "${CMAKE_CURRENT_LIST_DIR}/cmake-fragment.cmake" OPTIONS boost.locale.iconv=off boost.locale.posix=off diff --git a/ports/boost-log/CONTROL b/ports/boost-log/CONTROL index e8ac68f44..f8398c7ca 100644 --- a/ports/boost-log/CONTROL +++ b/ports/boost-log/CONTROL @@ -1,5 +1,5 @@ # Automatically generated by boost-vcpkg-helpers/generate-ports.ps1 Source: boost-log Version: 1.66.0 -Build-Depends: boost-align, boost-array, boost-asio, boost-assert, boost-atomic, boost-bind, boost-build, boost-modular-build-helper, boost-compatibility, boost-config, boost-core, boost-date-time, boost-detail, boost-exception, boost-filesystem (windows), boost-function-types, boost-fusion, boost-integer, boost-interprocess, boost-intrusive, boost-io, boost-iterator, boost-lexical-cast, boost-locale (windows), boost-math, boost-move, boost-mpl, boost-optional, boost-parameter, boost-phoenix, boost-predef, boost-preprocessor, boost-property-tree, boost-proto, boost-random, boost-range, boost-regex, boost-smart-ptr, boost-spirit, boost-static-assert, boost-system, boost-thread (windows), boost-throw-exception, boost-type-index, boost-type-traits, boost-utility, boost-vcpkg-helpers, boost-winapi, boost-xpressive +Build-Depends: boost-align, boost-array, boost-asio, boost-assert, boost-atomic, boost-bind, boost-build, boost-compatibility, boost-config, boost-core, boost-date-time, boost-detail, boost-exception, boost-filesystem (!uwp), boost-function-types, boost-fusion, boost-integer, boost-interprocess, boost-intrusive, boost-io, boost-iterator, boost-lexical-cast, boost-locale (!uwp), boost-math, boost-modular-build-helper, boost-move, boost-mpl, boost-optional, boost-parameter, boost-phoenix, boost-predef, boost-preprocessor, boost-property-tree, boost-proto, boost-random, boost-range, boost-regex, boost-smart-ptr, boost-spirit, boost-static-assert, boost-system, boost-thread (!uwp), boost-throw-exception, boost-type-index, boost-type-traits, boost-utility, boost-vcpkg-helpers, boost-winapi, boost-xpressive Description: Boost log module diff --git a/ports/boost-math/CONTROL b/ports/boost-math/CONTROL index 33b230a22..2617f4412 100644 --- a/ports/boost-math/CONTROL +++ b/ports/boost-math/CONTROL @@ -1,5 +1,5 @@ # Automatically generated by boost-vcpkg-helpers/generate-ports.ps1 Source: boost-math Version: 1.66.0 -Build-Depends: boost-array, boost-assert, boost-atomic, boost-build, boost-modular-build-helper, boost-compatibility, boost-concept-check, boost-config, boost-core, boost-detail, boost-fusion, boost-integer, boost-lambda, boost-lexical-cast, boost-mpl, boost-predef, boost-range, boost-static-assert, boost-throw-exception, boost-tuple, boost-type-traits, boost-utility, boost-vcpkg-helpers +Build-Depends: boost-array, boost-assert, boost-atomic, boost-build, boost-compatibility, boost-concept-check, boost-config, boost-core, boost-detail, boost-fusion, boost-integer, boost-lambda, boost-lexical-cast, boost-modular-build-helper, boost-mpl, boost-predef, boost-range, boost-static-assert, boost-throw-exception, boost-tuple, boost-type-traits, boost-utility, boost-vcpkg-helpers Description: Boost math module diff --git a/ports/boost-modular-build-helper/CMakeLists.txt b/ports/boost-modular-build-helper/CMakeLists.txt index 20306e7ed..4153f0132 100644 --- a/ports/boost-modular-build-helper/CMakeLists.txt +++ b/ports/boost-modular-build-helper/CMakeLists.txt @@ -9,6 +9,10 @@ set(VCPKG_PLATFORM_TOOLSET external) set(B2_OPTIONS) +if(DEFINED BOOST_CMAKE_FRAGMENT) + include(${BOOST_CMAKE_FRAGMENT}) +endif() + # Add build type specific options if(BUILD_SHARED_LIBS) list(APPEND B2_OPTIONS runtime-link=shared) @@ -28,7 +32,11 @@ if(CMAKE_SYSTEM_PROCESSOR STREQUAL "AMD64") list(APPEND B2_OPTIONS address-model=64) endif() -list(APPEND B2_OPTIONS target-os=linux toolset=gcc) +if(APPLE) + list(APPEND B2_OPTIONS target-os=darwin toolset=clang) +else() + list(APPEND B2_OPTIONS target-os=linux toolset=gcc) +endif() string(REPLACE " " " " CXXFLAGS "${CMAKE_CXX_FLAGS}") #set(CXXFLAGS "${CXXFLAGS} -Wno-error=unused-command-line-argument") @@ -45,6 +53,10 @@ foreach(INCDIR ${CMAKE_CXX_STANDARD_INCLUDE_DIRECTORIES}) set(CXXFLAGS "${CXXFLAGS} ${CMAKE_INCLUDE_FLAG_C}${CMAKE_INCLUDE_FLAG_C_SEP}${INCDIR}") endforeach() +if(APPLE) + set(CXXFLAGS "${CXXFLAGS} -D_DARWIN_C_SOURCE") +endif() + find_library(ZLIB_LIBPATH z) list(APPEND B2_OPTIONS -sZLIB_BINARY=z diff --git a/ports/boost-modular-build-helper/CONTROL b/ports/boost-modular-build-helper/CONTROL index d57815738..a7f1ecf61 100644 --- a/ports/boost-modular-build-helper/CONTROL +++ b/ports/boost-modular-build-helper/CONTROL @@ -1,2 +1,2 @@ Source: boost-modular-build-helper -Version: 2 +Version: 2018-04-15 diff --git a/ports/boost-modular-build-helper/boost-modular-build.cmake b/ports/boost-modular-build-helper/boost-modular-build.cmake index 222fc7fe9..2833c51a6 100644 --- a/ports/boost-modular-build-helper/boost-modular-build.cmake +++ b/ports/boost-modular-build-helper/boost-modular-build.cmake @@ -1,5 +1,5 @@ function(boost_modular_build) - cmake_parse_arguments(_bm "" "SOURCE_PATH;REQUIREMENTS" "OPTIONS" ${ARGN}) + cmake_parse_arguments(_bm "" "SOURCE_PATH;REQUIREMENTS;BOOST_CMAKE_FRAGMENT" "OPTIONS" ${ARGN}) if(NOT DEFINED _bm_SOURCE_PATH) message(FATAL_ERROR "SOURCE_PATH is a required argument to boost_modular_build.") @@ -80,6 +80,9 @@ function(boost_modular_build) configure_file(${_bm_DIR}/Jamroot.jam ${_bm_SOURCE_PATH}/Jamroot.jam @ONLY) if(VCPKG_CMAKE_SYSTEM_NAME AND NOT VCPKG_CMAKE_SYSTEM_NAME STREQUAL "WindowsStore") + if(DEFINED _bm_BOOST_CMAKE_FRAGMENT) + set(fragment_option "-DBOOST_CMAKE_FRAGMENT=${_bm_BOOST_CMAKE_FRAGMENT}") + endif() vcpkg_configure_cmake( SOURCE_PATH ${CURRENT_INSTALLED_DIR}/share/boost-build PREFER_NINJA @@ -87,8 +90,13 @@ function(boost_modular_build) "-DB2_EXE=${B2_EXE}" "-DSOURCE_PATH=${_bm_SOURCE_PATH}" "-DBOOST_BUILD_PATH=${BOOST_BUILD_PATH}" + ${fragment_option} ) vcpkg_install_cmake() + + if(NOT EXISTS ${CURRENT_PACKAGES_DIR}/lib) + message(FATAL_ERROR "No libraries were produced. This indicates a failure while building the boost library.") + endif() return() endif() diff --git a/ports/boost-modular-build-helper/user-config.jam b/ports/boost-modular-build-helper/user-config.jam index bd3797283..abefc7fae 100644 --- a/ports/boost-modular-build-helper/user-config.jam +++ b/ports/boost-modular-build-helper/user-config.jam @@ -45,3 +45,6 @@ lib icuin : : "@CURRENT_INSTALLED_DIR@/debug/lib/icuind.lib" debu lib icudt : : "@CURRENT_INSTALLED_DIR@/lib/icudt.lib" release : : ; lib icudt : : "@CURRENT_INSTALLED_DIR@/debug/lib/icudtd.lib" debug : : ; + +lib iconv : : "@LIBICONV_LIBRARY@" shared shared release : : ; +lib iconv : : "@LIBICONV_LIBRARY@" shared shared debug : : ; diff --git a/ports/boost-mpi/CONTROL b/ports/boost-mpi/CONTROL index 30ce81a1d..b5cfcd106 100644 --- a/ports/boost-mpi/CONTROL +++ b/ports/boost-mpi/CONTROL @@ -1,5 +1,5 @@ # Automatically generated by boost-vcpkg-helpers/generate-ports.ps1 Source: boost-mpi Version: 1.66.0-1 -Build-Depends: boost-assert, boost-build, boost-modular-build-helper, boost-compatibility, boost-config, boost-core, boost-function, boost-graph, boost-integer, boost-iterator, boost-lexical-cast, boost-math, boost-mpl, boost-optional, boost-property-map, boost-python (windows), boost-serialization, boost-smart-ptr, boost-static-assert, boost-throw-exception, boost-type-traits, boost-utility, boost-vcpkg-helpers, msmpi +Build-Depends: boost-assert, boost-build, boost-compatibility, boost-config, boost-core, boost-function, boost-graph, boost-integer, boost-iterator, boost-lexical-cast, boost-math, boost-modular-build-helper, boost-mpl, boost-optional, boost-property-map, boost-python (windows), boost-serialization, boost-smart-ptr, boost-static-assert, boost-throw-exception, boost-type-traits, boost-utility, boost-vcpkg-helpers, msmpi Description: Boost mpi module diff --git a/ports/boost-poly-collection/CONTROL b/ports/boost-poly-collection/CONTROL index 66679c5c9..d8b2b34ec 100644 --- a/ports/boost-poly-collection/CONTROL +++ b/ports/boost-poly-collection/CONTROL @@ -1,5 +1,5 @@ # Automatically generated by boost-vcpkg-helpers/generate-ports.ps1 Source: boost-poly-collection Version: 1.66.0 -Build-Depends: boost-assert, boost-config, boost-core, boost-detail, boost-iterator, boost-mpl, boost-type-erasure (windows), boost-type-traits, boost-vcpkg-helpers +Build-Depends: boost-assert, boost-config, boost-core, boost-detail, boost-iterator, boost-mpl, boost-type-erasure (!uwp), boost-type-traits, boost-vcpkg-helpers Description: Boost poly_collection module diff --git a/ports/boost-pool/CONTROL b/ports/boost-pool/CONTROL index 141cc45c3..8c054f8a9 100644 --- a/ports/boost-pool/CONTROL +++ b/ports/boost-pool/CONTROL @@ -1,5 +1,5 @@ # Automatically generated by boost-vcpkg-helpers/generate-ports.ps1 Source: boost-pool Version: 1.66.0 -Build-Depends: boost-assert, boost-compatibility, boost-config, boost-detail, boost-integer, boost-thread (windows), boost-throw-exception, boost-type-traits, boost-vcpkg-helpers +Build-Depends: boost-assert, boost-compatibility, boost-config, boost-detail, boost-integer, boost-thread (!uwp), boost-throw-exception, boost-type-traits, boost-vcpkg-helpers Description: Boost pool module diff --git a/ports/boost-process/CONTROL b/ports/boost-process/CONTROL index 28d9c027d..25ddd60ef 100644 --- a/ports/boost-process/CONTROL +++ b/ports/boost-process/CONTROL @@ -1,5 +1,5 @@ # Automatically generated by boost-vcpkg-helpers/generate-ports.ps1 Source: boost-process Version: 1.66.0 -Build-Depends: boost-algorithm, boost-asio, boost-config, boost-core, boost-filesystem (windows), boost-fusion, boost-iterator, boost-move, boost-optional, boost-system, boost-tokenizer, boost-type-index, boost-vcpkg-helpers, boost-winapi +Build-Depends: boost-algorithm, boost-asio, boost-config, boost-core, boost-filesystem (!uwp), boost-fusion, boost-iterator, boost-move, boost-optional, boost-system, boost-tokenizer, boost-type-index, boost-vcpkg-helpers, boost-winapi Description: Boost process module diff --git a/ports/boost-program-options/CONTROL b/ports/boost-program-options/CONTROL index b43937e55..931843a34 100644 --- a/ports/boost-program-options/CONTROL +++ b/ports/boost-program-options/CONTROL @@ -1,5 +1,5 @@ # Automatically generated by boost-vcpkg-helpers/generate-ports.ps1 Source: boost-program-options Version: 1.66.0 -Build-Depends: boost-any, boost-bind, boost-build, boost-modular-build-helper, boost-compatibility, boost-config, boost-core, boost-detail, boost-function, boost-iterator, boost-lexical-cast, boost-math, boost-smart-ptr, boost-static-assert, boost-throw-exception, boost-tokenizer, boost-type-traits, boost-vcpkg-helpers +Build-Depends: boost-any, boost-bind, boost-build, boost-compatibility, boost-config, boost-core, boost-detail, boost-function, boost-iterator, boost-lexical-cast, boost-math, boost-modular-build-helper, boost-smart-ptr, boost-static-assert, boost-throw-exception, boost-tokenizer, boost-type-traits, boost-vcpkg-helpers Description: Boost program_options module diff --git a/ports/boost-random/CONTROL b/ports/boost-random/CONTROL index 1efeeaafa..2fa6b682c 100644 --- a/ports/boost-random/CONTROL +++ b/ports/boost-random/CONTROL @@ -1,5 +1,5 @@ # Automatically generated by boost-vcpkg-helpers/generate-ports.ps1 Source: boost-random Version: 1.66.0 -Build-Depends: boost-assert, boost-build, boost-modular-build-helper, boost-compatibility, boost-config, boost-core, boost-detail, boost-integer, boost-math, boost-mpl, boost-range, boost-static-assert, boost-system, boost-throw-exception, boost-type-traits, boost-utility, boost-vcpkg-helpers +Build-Depends: boost-assert, boost-build, boost-compatibility, boost-config, boost-core, boost-detail, boost-integer, boost-math, boost-modular-build-helper, boost-mpl, boost-range, boost-static-assert, boost-system, boost-throw-exception, boost-type-traits, boost-utility, boost-vcpkg-helpers Description: Boost random module diff --git a/ports/boost-regex/CONTROL b/ports/boost-regex/CONTROL index efd3e7f7e..1ff1473ac 100644 --- a/ports/boost-regex/CONTROL +++ b/ports/boost-regex/CONTROL @@ -1,7 +1,7 @@ # Automatically generated by boost-vcpkg-helpers/generate-ports.ps1 Source: boost-regex Version: 1.66.0 -Build-Depends: boost-assert, boost-build, boost-modular-build-helper, boost-compatibility, boost-concept-check, boost-config, boost-core, boost-detail, boost-functional, boost-integer, boost-iterator, boost-mpl, boost-smart-ptr, boost-static-assert, boost-throw-exception, boost-type-traits, boost-vcpkg-helpers +Build-Depends: boost-assert, boost-build, boost-compatibility, boost-concept-check, boost-config, boost-core, boost-detail, boost-functional, boost-integer, boost-iterator, boost-modular-build-helper, boost-mpl, boost-smart-ptr, boost-static-assert, boost-throw-exception, boost-type-traits, boost-vcpkg-helpers Description: Boost regex module Feature: icu diff --git a/ports/boost-serialization/CONTROL b/ports/boost-serialization/CONTROL index ae97a8c30..1cfc392e9 100644 --- a/ports/boost-serialization/CONTROL +++ b/ports/boost-serialization/CONTROL @@ -1,5 +1,5 @@ # Automatically generated by boost-vcpkg-helpers/generate-ports.ps1 Source: boost-serialization Version: 1.66.0 -Build-Depends: boost-array, boost-assert, boost-build, boost-modular-build-helper, boost-compatibility, boost-config, boost-core, boost-detail, boost-function, boost-integer, boost-io, boost-iterator, boost-move, boost-mpl, boost-optional, boost-preprocessor, boost-smart-ptr, boost-spirit, boost-static-assert, boost-type-traits, boost-unordered, boost-utility, boost-variant, boost-vcpkg-helpers +Build-Depends: boost-array, boost-assert, boost-build, boost-compatibility, boost-config, boost-core, boost-detail, boost-function, boost-integer, boost-io, boost-iterator, boost-modular-build-helper, boost-move, boost-mpl, boost-optional, boost-preprocessor, boost-smart-ptr, boost-spirit, boost-static-assert, boost-type-traits, boost-unordered, boost-utility, boost-variant, boost-vcpkg-helpers Description: Boost serialization module diff --git a/ports/boost-signals/CONTROL b/ports/boost-signals/CONTROL index 160f73c51..1b3743e2f 100644 --- a/ports/boost-signals/CONTROL +++ b/ports/boost-signals/CONTROL @@ -1,5 +1,5 @@ # Automatically generated by boost-vcpkg-helpers/generate-ports.ps1 Source: boost-signals Version: 1.66.0 -Build-Depends: boost-any, boost-build, boost-modular-build-helper, boost-config, boost-core, boost-function, boost-iterator, boost-optional, boost-smart-ptr, boost-type-traits, boost-utility, boost-vcpkg-helpers +Build-Depends: boost-any, boost-build, boost-config, boost-core, boost-function, boost-iterator, boost-modular-build-helper, boost-optional, boost-smart-ptr, boost-type-traits, boost-utility, boost-vcpkg-helpers Description: Boost signals module diff --git a/ports/boost-spirit/CONTROL b/ports/boost-spirit/CONTROL index ed71760c0..f79535e4c 100644 --- a/ports/boost-spirit/CONTROL +++ b/ports/boost-spirit/CONTROL @@ -1,5 +1,5 @@ # Automatically generated by boost-vcpkg-helpers/generate-ports.ps1 Source: boost-spirit Version: 1.66.0 -Build-Depends: boost-algorithm, boost-array, boost-assert, boost-compatibility, boost-concept-check, boost-config, boost-core, boost-detail, boost-endian, boost-filesystem (windows), boost-foreach, boost-function, boost-function-types, boost-fusion, boost-integer, boost-io, boost-iostreams (windows), boost-iterator, boost-lexical-cast, boost-locale (windows), boost-math, boost-move, boost-mpl, boost-optional, boost-phoenix, boost-pool, boost-preprocessor, boost-proto, boost-range, boost-regex, boost-smart-ptr, boost-static-assert, boost-thread (windows), boost-throw-exception, boost-tti, boost-typeof, boost-type-traits, boost-unordered, boost-utility, boost-variant, boost-vcpkg-helpers +Build-Depends: boost-algorithm, boost-array, boost-assert, boost-compatibility, boost-concept-check, boost-config, boost-core, boost-detail, boost-endian, boost-filesystem (!uwp), boost-foreach, boost-function, boost-function-types, boost-fusion, boost-integer, boost-io, boost-iostreams (!uwp), boost-iterator, boost-lexical-cast, boost-locale (!uwp), boost-math, boost-move, boost-mpl, boost-optional, boost-phoenix, boost-pool, boost-preprocessor, boost-proto, boost-range, boost-regex, boost-smart-ptr, boost-static-assert, boost-thread (!uwp), boost-throw-exception, boost-tti, boost-typeof, boost-type-traits, boost-unordered, boost-utility, boost-variant, boost-vcpkg-helpers Description: Boost spirit module diff --git a/ports/boost-stacktrace/CONTROL b/ports/boost-stacktrace/CONTROL index 9979ef4e1..c55b3ea01 100644 --- a/ports/boost-stacktrace/CONTROL +++ b/ports/boost-stacktrace/CONTROL @@ -1,5 +1,5 @@ # Automatically generated by boost-vcpkg-helpers/generate-ports.ps1 Source: boost-stacktrace Version: 1.66.0 -Build-Depends: boost-array, boost-build, boost-modular-build-helper, boost-config, boost-core, boost-lexical-cast, boost-math, boost-static-assert, boost-type-traits, boost-vcpkg-helpers, boost-winapi +Build-Depends: boost-array, boost-build, boost-config, boost-core, boost-lexical-cast, boost-math, boost-modular-build-helper, boost-static-assert, boost-type-traits, boost-vcpkg-helpers, boost-winapi Description: Boost stacktrace module diff --git a/ports/boost-system/CONTROL b/ports/boost-system/CONTROL index 953782bfb..95f01a09c 100644 --- a/ports/boost-system/CONTROL +++ b/ports/boost-system/CONTROL @@ -1,5 +1,5 @@ # Automatically generated by boost-vcpkg-helpers/generate-ports.ps1 Source: boost-system Version: 1.66.0 -Build-Depends: boost-assert, boost-build, boost-modular-build-helper, boost-config, boost-core, boost-integer, boost-predef, boost-utility, boost-vcpkg-helpers, boost-winapi +Build-Depends: boost-assert, boost-build, boost-config, boost-core, boost-integer, boost-modular-build-helper, boost-predef, boost-utility, boost-vcpkg-helpers, boost-winapi Description: Boost system module diff --git a/ports/boost-test/CONTROL b/ports/boost-test/CONTROL index 95b0d8fe9..f77ae6c94 100644 --- a/ports/boost-test/CONTROL +++ b/ports/boost-test/CONTROL @@ -1,5 +1,5 @@ # Automatically generated by boost-vcpkg-helpers/generate-ports.ps1 Source: boost-test Version: 1.66.0-2 -Build-Depends: boost-algorithm, boost-assert, boost-bind, boost-build, boost-modular-build-helper, boost-compatibility, boost-config, boost-core, boost-detail, boost-exception, boost-function, boost-io, boost-iterator, boost-mpl, boost-numeric-conversion, boost-optional, boost-preprocessor, boost-range, boost-smart-ptr, boost-static-assert, boost-timer, boost-type-traits, boost-utility, boost-vcpkg-helpers +Build-Depends: boost-algorithm, boost-assert, boost-bind, boost-build, boost-compatibility, boost-config, boost-core, boost-detail, boost-exception, boost-function, boost-io, boost-iterator, boost-modular-build-helper, boost-mpl, boost-numeric-conversion, boost-optional, boost-preprocessor, boost-range, boost-smart-ptr, boost-static-assert, boost-timer, boost-type-traits, boost-utility, boost-vcpkg-helpers Description: Boost test module diff --git a/ports/boost-test/portfile.cmake b/ports/boost-test/portfile.cmake index acb28c7d4..329256a83 100644 --- a/ports/boost-test/portfile.cmake +++ b/ports/boost-test/portfile.cmake @@ -14,7 +14,6 @@ include(${CURRENT_INSTALLED_DIR}/share/boost-build/boost-modular-build.cmake) boost_modular_build(SOURCE_PATH ${SOURCE_PATH}) include(${CURRENT_INSTALLED_DIR}/share/boost-vcpkg-helpers/boost-modular-headers.cmake) boost_modular_headers(SOURCE_PATH ${SOURCE_PATH}) - if(NOT DEFINED VCPKG_BUILD_TYPE OR VCPKG_BUILD_TYPE STREQUAL "release") file(MAKE_DIRECTORY ${CURRENT_PACKAGES_DIR}/lib/manual-link) file(GLOB MONITOR_LIBS ${CURRENT_PACKAGES_DIR}/lib/*_exec_monitor*) @@ -28,3 +27,4 @@ if(NOT DEFINED VCPKG_BUILD_TYPE OR VCPKG_BUILD_TYPE STREQUAL "debug") file(COPY ${DEBUG_MONITOR_LIBS} DESTINATION ${CURRENT_PACKAGES_DIR}/debug/lib/manual-link) file(REMOVE ${DEBUG_MONITOR_LIBS}) endif() + diff --git a/ports/boost-thread/CONTROL b/ports/boost-thread/CONTROL index 33bc787a1..963eaa5bc 100644 --- a/ports/boost-thread/CONTROL +++ b/ports/boost-thread/CONTROL @@ -1,5 +1,5 @@ # Automatically generated by boost-vcpkg-helpers/generate-ports.ps1 Source: boost-thread Version: 1.66.0 -Build-Depends: boost-algorithm, boost-assert, boost-atomic, boost-bind, boost-build, boost-modular-build-helper, boost-chrono, boost-concept-check, boost-config, boost-container, boost-core, boost-date-time, boost-detail, boost-exception, boost-function, boost-functional, boost-integer, boost-intrusive, boost-io, boost-lexical-cast, boost-math, boost-move, boost-mpl, boost-optional, boost-predef, boost-preprocessor, boost-smart-ptr, boost-static-assert, boost-system, boost-throw-exception, boost-tuple, boost-type-traits, boost-utility, boost-vcpkg-helpers, boost-winapi +Build-Depends: boost-algorithm, boost-assert, boost-atomic, boost-bind, boost-build, boost-chrono, boost-concept-check, boost-config, boost-container, boost-core, boost-date-time, boost-detail, boost-exception, boost-function, boost-functional, boost-integer, boost-intrusive, boost-io, boost-lexical-cast, boost-math, boost-modular-build-helper, boost-move, boost-mpl, boost-optional, boost-predef, boost-preprocessor, boost-smart-ptr, boost-static-assert, boost-system, boost-throw-exception, boost-tuple, boost-type-traits, boost-utility, boost-vcpkg-helpers, boost-winapi Description: Boost thread module diff --git a/ports/boost-timer/CONTROL b/ports/boost-timer/CONTROL index b24137fbb..328b78579 100644 --- a/ports/boost-timer/CONTROL +++ b/ports/boost-timer/CONTROL @@ -1,5 +1,5 @@ # Automatically generated by boost-vcpkg-helpers/generate-ports.ps1 Source: boost-timer Version: 1.66.0 -Build-Depends: boost-build, boost-modular-build-helper, boost-chrono, boost-compatibility, boost-config, boost-core, boost-integer, boost-io, boost-system, boost-throw-exception, boost-vcpkg-helpers +Build-Depends: boost-build, boost-chrono, boost-compatibility, boost-config, boost-core, boost-integer, boost-io, boost-modular-build-helper, boost-system, boost-throw-exception, boost-vcpkg-helpers Description: Boost timer module diff --git a/ports/boost-type-erasure/CONTROL b/ports/boost-type-erasure/CONTROL index 786acf596..b8e6bc4dd 100644 --- a/ports/boost-type-erasure/CONTROL +++ b/ports/boost-type-erasure/CONTROL @@ -1,5 +1,5 @@ # Automatically generated by boost-vcpkg-helpers/generate-ports.ps1 Source: boost-type-erasure Version: 1.66.0 -Build-Depends: boost-assert, boost-build, boost-modular-build-helper, boost-config, boost-detail, boost-fusion, boost-iterator, boost-mpl, boost-preprocessor, boost-smart-ptr, boost-thread (windows), boost-throw-exception, boost-typeof, boost-type-traits, boost-utility, boost-vcpkg-helpers +Build-Depends: boost-assert, boost-build, boost-config, boost-detail, boost-fusion, boost-iterator, boost-modular-build-helper, boost-mpl, boost-preprocessor, boost-smart-ptr, boost-thread (!uwp), boost-throw-exception, boost-typeof, boost-type-traits, boost-utility, boost-vcpkg-helpers Description: Boost type_erasure module diff --git a/ports/boost-vcpkg-helpers/generate-ports.ps1 b/ports/boost-vcpkg-helpers/generate-ports.ps1 index 55fa476f4..7f5ecc9fb 100644 --- a/ports/boost-vcpkg-helpers/generate-ports.ps1 +++ b/ports/boost-vcpkg-helpers/generate-ports.ps1 @@ -6,7 +6,8 @@ param ( $scriptsDir = split-path -parent $MyInvocation.MyCommand.Definition -$libsDisabledInUWP = "iostreams|filesystem|thread|context|python|stacktrace|program-options|program_options|coroutine`$|fiber|locale|test|type-erasure|type_erasure|wave|log" +$libsDisabledInLinux = "python|fiber" +$libsDisabledInUWP = "iostreams|filesystem|thread|context|python|stacktrace|program[_-]options|coroutine`$|fiber|locale|test|type[_-]erasure|wave|log" function Generate() { @@ -100,6 +101,7 @@ function Generate() "include(`${CURRENT_INSTALLED_DIR}/share/boost-build/boost-modular-build.cmake)" "boost_modular_build(" " SOURCE_PATH `${SOURCE_PATH}" + " BOOST_CMAKE_FRAGMENT `"`${CMAKE_CURRENT_LIST_DIR}/cmake-fragment.cmake`"" " OPTIONS" " boost.locale.iconv=off" " boost.locale.posix=off" @@ -307,10 +309,14 @@ foreach ($library in $libraries) -and ` (($library -notmatch "utility|concept_check") -or ($_ -notmatch "iterator")) } | % { "boost-$_" -replace "_","-" } | % { - if ($_ -match $libsDisabledInUWP) + if ($_ -match $libsDisabledInLinux -and $_ -match $libsDisabledInUWP) { "$_ (windows)" } + elseif ($_ -match $libsDisabledInUWP) + { + "$_ (!uwp)" + } else { $_ @@ -320,7 +326,7 @@ foreach ($library in $libraries) $deps += @("boost-vcpkg-helpers") $needsBuild = $false - if ((Test-Path $unpacked/build/Jamfile.v2) -and $library -ne "metaparse") + if ((Test-Path $unpacked/build/Jamfile.v2) -and $library -ne "metaparse" -and $library -ne "graph_parallel") { $deps += @("boost-build", "boost-modular-build-helper") $needsBuild = $true @@ -335,6 +341,10 @@ foreach ($library in $libraries) { $deps += @("zlib", "bzip2") } + elseif ($library -eq "locale") + { + $deps += @("libiconv (!uwp&!windows)") + } elseif ($library -eq "asio") { $deps += @("openssl") @@ -350,10 +360,14 @@ foreach ($library in $libraries) -Depends $deps ` -NeedsBuild $needsBuild - if ($library -match $libsDisabledInUWP) + if ($library -match $libsDisabledInLinux -and $library -match $libsDisabledInUWP) { $libraries_in_boost_port += @("$library (windows)") } + elseif ($library -match $libsDisabledInUWP) + { + $libraries_in_boost_port += @("$library (!uwp)") + } else { $libraries_in_boost_port += @($library) diff --git a/ports/boost-wave/CONTROL b/ports/boost-wave/CONTROL index 4fffc2e71..251703103 100644 --- a/ports/boost-wave/CONTROL +++ b/ports/boost-wave/CONTROL @@ -1,5 +1,5 @@ # Automatically generated by boost-vcpkg-helpers/generate-ports.ps1 Source: boost-wave Version: 1.66.0 -Build-Depends: boost-assert, boost-build, boost-modular-build-helper, boost-concept-check, boost-config, boost-core, boost-detail, boost-filesystem (windows), boost-integer, boost-iterator, boost-mpl, boost-multi-index, boost-pool, boost-preprocessor, boost-serialization, boost-smart-ptr, boost-spirit, boost-static-assert, boost-throw-exception, boost-type-traits, boost-vcpkg-helpers +Build-Depends: boost-assert, boost-build, boost-concept-check, boost-config, boost-core, boost-detail, boost-filesystem (!uwp), boost-integer, boost-iterator, boost-modular-build-helper, boost-mpl, boost-multi-index, boost-pool, boost-preprocessor, boost-serialization, boost-smart-ptr, boost-spirit, boost-static-assert, boost-throw-exception, boost-type-traits, boost-vcpkg-helpers Description: Boost wave module diff --git a/ports/boost/CONTROL b/ports/boost/CONTROL index 0153a151a..72993bba6 100644 --- a/ports/boost/CONTROL +++ b/ports/boost/CONTROL @@ -2,7 +2,7 @@ Source: boost Version: 1.66.0 Description: Peer-reviewed portable C++ source libraries -Build-Depends: boost-accumulators, boost-algorithm, boost-align, boost-any, boost-array, boost-asio, boost-assert, boost-assign, boost-atomic, boost-beast, boost-bimap, boost-bind, boost-callable-traits, boost-chrono, boost-circular-buffer, boost-compatibility, boost-compute, boost-concept-check, boost-config, boost-container, boost-context (windows), boost-conversion, boost-convert, boost-core, boost-coroutine (windows), boost-coroutine2, boost-crc, boost-date-time, boost-detail, boost-disjoint-sets, boost-dll, boost-dynamic-bitset, boost-endian, boost-exception, boost-fiber (windows), boost-filesystem (windows), boost-flyweight, boost-foreach, boost-format, boost-function, boost-functional, boost-function-types, boost-fusion, boost-geometry, boost-gil, boost-graph, boost-graph-parallel, boost-hana, boost-heap, boost-icl, boost-integer, boost-interprocess, boost-intrusive, boost-io, boost-iostreams (windows), boost-iterator, boost-lambda, boost-lexical-cast, boost-locale (windows), boost-local-function, boost-lockfree, boost-log (windows), boost-logic (windows), boost-math, boost-metaparse, boost-move, boost-mp11, boost-mpl, boost-msm, boost-multiprecision, boost-multi-array, boost-multi-index, boost-numeric-conversion, boost-interval, boost-odeint, boost-ublas, boost-optional, boost-parameter, boost-phoenix, boost-polygon, boost-poly-collection, boost-pool, boost-predef, boost-preprocessor, boost-process, boost-program-options (windows), boost-property-map, boost-property-tree, boost-proto, boost-ptr-container, boost-python (windows), boost-qvm, boost-random, boost-range, boost-ratio, boost-rational, boost-regex, boost-scope-exit, boost-serialization, boost-signals, boost-signals2, boost-smart-ptr, boost-sort, boost-spirit, boost-stacktrace (windows), boost-statechart, boost-static-assert, boost-system, boost-test (windows), boost-thread (windows), boost-throw-exception, boost-timer, boost-tokenizer, boost-tti, boost-tuple, boost-typeof, boost-type-erasure (windows), boost-type-index, boost-type-traits, boost-units, boost-unordered, boost-utility, boost-uuid, boost-variant, boost-vmd, boost-wave (windows), boost-winapi, boost-xpressive +Build-Depends: boost-accumulators, boost-algorithm, boost-align, boost-any, boost-array, boost-asio, boost-assert, boost-assign, boost-atomic, boost-beast, boost-bimap, boost-bind, boost-callable-traits, boost-chrono, boost-circular-buffer, boost-compatibility, boost-compute, boost-concept-check, boost-config, boost-container, boost-context (!uwp), boost-conversion, boost-convert, boost-core, boost-coroutine (!uwp), boost-coroutine2, boost-crc, boost-date-time, boost-detail, boost-disjoint-sets, boost-dll, boost-dynamic-bitset, boost-endian, boost-exception, boost-fiber (windows), boost-filesystem (!uwp), boost-flyweight, boost-foreach, boost-format, boost-function, boost-functional, boost-function-types, boost-fusion, boost-geometry, boost-gil, boost-graph, boost-graph-parallel, boost-hana, boost-heap, boost-icl, boost-integer, boost-interprocess, boost-intrusive, boost-io, boost-iostreams (!uwp), boost-iterator, boost-lambda, boost-lexical-cast, boost-locale (!uwp), boost-local-function, boost-lockfree, boost-log (!uwp), boost-logic (!uwp), boost-math, boost-metaparse, boost-move, boost-mp11, boost-mpl, boost-msm, boost-multiprecision, boost-multi-array, boost-multi-index, boost-numeric-conversion, boost-interval, boost-odeint, boost-ublas, boost-optional, boost-parameter, boost-phoenix, boost-polygon, boost-poly-collection, boost-pool, boost-predef, boost-preprocessor, boost-process, boost-program-options (!uwp), boost-property-map, boost-property-tree, boost-proto, boost-ptr-container, boost-python (windows), boost-qvm, boost-random, boost-range, boost-ratio, boost-rational, boost-regex, boost-scope-exit, boost-serialization, boost-signals, boost-signals2, boost-smart-ptr, boost-sort, boost-spirit, boost-stacktrace (!uwp), boost-statechart, boost-static-assert, boost-system, boost-test (!uwp), boost-thread (!uwp), boost-throw-exception, boost-timer, boost-tokenizer, boost-tti, boost-tuple, boost-typeof, boost-type-erasure (!uwp), boost-type-index, boost-type-traits, boost-units, boost-unordered, boost-utility, boost-uuid, boost-variant, boost-vmd, boost-wave (!uwp), boost-winapi, boost-xpressive Feature: mpi Description: Build with MPI support -- cgit v1.2.3 From fb0c047b4d78c3150d16e401f0714475a02009b5 Mon Sep 17 00:00:00 2001 From: Robert Schumacher Date: Tue, 17 Apr 2018 16:26:20 -0700 Subject: [azure-storage-cpp] Support non-windows --- ports/azure-storage-cpp/CONTROL | 2 +- ports/azure-storage-cpp/glibmm-cmake.patch | 13 ++++++++ ports/azure-storage-cpp/portfile.cmake | 3 ++ ports/azure-storage-cpp/pplx-do-while.patch | 52 +++++++++++++++++++++++++++++ 4 files changed, 69 insertions(+), 1 deletion(-) create mode 100644 ports/azure-storage-cpp/glibmm-cmake.patch create mode 100644 ports/azure-storage-cpp/pplx-do-while.patch diff --git a/ports/azure-storage-cpp/CONTROL b/ports/azure-storage-cpp/CONTROL index 0da717ba7..c68552bba 100644 --- a/ports/azure-storage-cpp/CONTROL +++ b/ports/azure-storage-cpp/CONTROL @@ -1,5 +1,5 @@ Source: azure-storage-cpp Version: 3.2.1 -Build-Depends: cpprestsdk, atlmfc +Build-Depends: cpprestsdk, atlmfc (windows), boost-log (!windows&!uwp), boost-locale (!windows&!uwp), glibmm (!windows&!uwp), libxmlpp (!windows&!uwp), libuuid (!windows&!uwp) Description: Microsoft Azure Storage Client SDK for C++ A client library for working with Microsoft Azure storage services including blobs, files, tables, and queues. This client library enables working with the Microsoft Azure storage services which include the blob service for storing binary and text data, the file service for storing binary and text data, the table service for storing structured non-relational data, and the queue service for storing messages that may be accessed by a client. Microsoft Azure Storage team's blog - http://blogs.msdn.com/b/windowsazurestorage/ diff --git a/ports/azure-storage-cpp/glibmm-cmake.patch b/ports/azure-storage-cpp/glibmm-cmake.patch new file mode 100644 index 000000000..4d3e4a8cd --- /dev/null +++ b/ports/azure-storage-cpp/glibmm-cmake.patch @@ -0,0 +1,13 @@ +diff --git a/Microsoft.WindowsAzure.Storage/cmake/Modules/FindGlibmm.cmake b/Microsoft.WindowsAzure.Storage/cmake/Modules/FindGlibmm.cmake +index 79a4bcb..fe130bd 100644 +--- a/Microsoft.WindowsAzure.Storage/cmake/Modules/FindGlibmm.cmake ++++ b/Microsoft.WindowsAzure.Storage/cmake/Modules/FindGlibmm.cmake +@@ -36,7 +36,7 @@ find_path(GlibmmConfig_INCLUDE_DIR + ) + + find_library(Glibmm_LIBRARY +- NAMES glibmm-2.4 ++ NAMES glibmm glibmm-2.4 + PATHS + ${Glibmm_PKGCONF_LIBRARY_DIRS} + /usr diff --git a/ports/azure-storage-cpp/portfile.cmake b/ports/azure-storage-cpp/portfile.cmake index edac1e2a2..2f8e921a5 100644 --- a/ports/azure-storage-cpp/portfile.cmake +++ b/ports/azure-storage-cpp/portfile.cmake @@ -18,11 +18,14 @@ vcpkg_apply_patches( ${CMAKE_CURRENT_LIST_DIR}/cmake.patch ${CMAKE_CURRENT_LIST_DIR}/static-builds.patch ${CMAKE_CURRENT_LIST_DIR}/support-cpprest-findpackage.patch + ${CMAKE_CURRENT_LIST_DIR}/glibmm-cmake.patch + ${CMAKE_CURRENT_LIST_DIR}/pplx-do-while.patch ) vcpkg_configure_cmake( SOURCE_PATH ${SOURCE_PATH}/Microsoft.WindowsAzure.Storage OPTIONS + -DCMAKE_FIND_FRAMEWORK=LAST -DBUILD_TESTS=OFF -DBUILD_SAMPLES=OFF ) diff --git a/ports/azure-storage-cpp/pplx-do-while.patch b/ports/azure-storage-cpp/pplx-do-while.patch new file mode 100644 index 000000000..0c2163442 --- /dev/null +++ b/ports/azure-storage-cpp/pplx-do-while.patch @@ -0,0 +1,52 @@ +diff --git a/Microsoft.WindowsAzure.Storage/includes/wascore/executor.h b/Microsoft.WindowsAzure.Storage/includes/wascore/executor.h +index 756163d..6fbfd44 100644 +--- a/Microsoft.WindowsAzure.Storage/includes/wascore/executor.h ++++ b/Microsoft.WindowsAzure.Storage/includes/wascore/executor.h +@@ -366,7 +366,7 @@ namespace azure { namespace storage { namespace core { + // TODO: Reduce usage of auto variable types + + auto instance = std::make_shared(command, options, context); +- return pplx::details::do_while([instance]() -> pplx::task ++ return details::_do_while([instance]() -> pplx::task + { + // 0. Begin request + instance->validate_location_mode(); +diff --git a/Microsoft.WindowsAzure.Storage/includes/wascore/util.h b/Microsoft.WindowsAzure.Storage/includes/wascore/util.h +index f3401f2..6a6aa48 100644 +--- a/Microsoft.WindowsAzure.Storage/includes/wascore/util.h ++++ b/Microsoft.WindowsAzure.Storage/includes/wascore/util.h +@@ -127,6 +127,21 @@ namespace azure { namespace storage { namespace core { + }; + #endif + ++ namespace details ++ { ++ template ++ pplx::task _do_while(F func) ++ { ++ pplx::task first = func(); ++ return first.then([=](bool guard) -> pplx::task { ++ if (guard) ++ return azure::storage::core::details::_do_while(func); ++ else ++ return first; ++ }); ++ } ++ } ++ + }}} // namespace azure::storage::core + + #pragma pop_macro("max") +diff --git a/Microsoft.WindowsAzure.Storage/src/util.cpp b/Microsoft.WindowsAzure.Storage/src/util.cpp +index dd2250a..b8d1341 100644 +--- a/Microsoft.WindowsAzure.Storage/src/util.cpp ++++ b/Microsoft.WindowsAzure.Storage/src/util.cpp +@@ -98,7 +98,7 @@ namespace azure { namespace storage { namespace core { + auto obuffer = ostream.streambuf(); + auto length_ptr = (length != std::numeric_limits::max()) ? std::make_shared(length) : nullptr; + auto total_ptr = std::make_shared(0); +- return pplx::details::do_while([istream, obuffer, buffer_size, length_ptr, total_ptr, max_length] () -> pplx::task ++ return azure::storage::core::details::_do_while([istream, obuffer, buffer_size, length_ptr, total_ptr, max_length] () -> pplx::task + { + size_t read_length = buffer_size; + if ((length_ptr != nullptr) && (*length_ptr < read_length)) -- cgit v1.2.3 From 751015f6a44d6f89ca71ac63d7c5cab83cf531c0 Mon Sep 17 00:00:00 2001 From: Robert Schumacher Date: Tue, 17 Apr 2018 15:18:09 -0700 Subject: [boost] Update to 1.67 --- ports/boost-accumulators/CONTROL | 2 +- ports/boost-accumulators/portfile.cmake | 4 +- ports/boost-algorithm/CONTROL | 2 +- ports/boost-algorithm/portfile.cmake | 4 +- ports/boost-align/CONTROL | 2 +- ports/boost-align/portfile.cmake | 4 +- ports/boost-any/CONTROL | 2 +- ports/boost-any/portfile.cmake | 4 +- ports/boost-array/CONTROL | 2 +- ports/boost-array/portfile.cmake | 4 +- ports/boost-asio/CONTROL | 2 +- ports/boost-asio/portfile.cmake | 4 +- ports/boost-assert/CONTROL | 2 +- ports/boost-assert/portfile.cmake | 4 +- ports/boost-assign/CONTROL | 4 +- ports/boost-assign/portfile.cmake | 4 +- ports/boost-atomic/CONTROL | 2 +- ports/boost-atomic/portfile.cmake | 4 +- ports/boost-beast/CONTROL | 4 +- ports/boost-beast/portfile.cmake | 4 +- ports/boost-bimap/CONTROL | 2 +- ports/boost-bimap/portfile.cmake | 4 +- ports/boost-bind/CONTROL | 2 +- ports/boost-bind/portfile.cmake | 4 +- ports/boost-build/CONTROL | 2 +- ports/boost-build/portfile.cmake | 12 +++--- ports/boost-callable-traits/CONTROL | 2 +- ports/boost-callable-traits/portfile.cmake | 4 +- ports/boost-chrono/CONTROL | 2 +- ports/boost-chrono/portfile.cmake | 4 +- ports/boost-circular-buffer/CONTROL | 2 +- ports/boost-circular-buffer/portfile.cmake | 4 +- ports/boost-compatibility/CONTROL | 2 +- ports/boost-compatibility/portfile.cmake | 4 +- ports/boost-compute/CONTROL | 2 +- ports/boost-compute/portfile.cmake | 4 +- ports/boost-concept-check/CONTROL | 2 +- ports/boost-concept-check/portfile.cmake | 4 +- ports/boost-config/CONTROL | 2 +- ports/boost-config/portfile.cmake | 5 ++- ports/boost-container-hash/CONTROL | 5 +++ ports/boost-container-hash/portfile.cmake | 14 +++++++ ports/boost-container/CONTROL | 2 +- ports/boost-container/portfile.cmake | 4 +- ports/boost-context/CONTROL | 2 +- ports/boost-context/portfile.cmake | 9 +++- ports/boost-contract/CONTROL | 5 +++ ports/boost-contract/portfile.cmake | 16 ++++++++ ports/boost-conversion/CONTROL | 2 +- ports/boost-conversion/portfile.cmake | 4 +- ports/boost-convert/CONTROL | 2 +- ports/boost-convert/portfile.cmake | 4 +- ports/boost-core/CONTROL | 2 +- ports/boost-core/portfile.cmake | 4 +- ports/boost-coroutine/CONTROL | 2 +- ports/boost-coroutine/portfile.cmake | 4 +- ports/boost-coroutine2/CONTROL | 2 +- ports/boost-coroutine2/portfile.cmake | 4 +- ports/boost-crc/CONTROL | 2 +- ports/boost-crc/portfile.cmake | 4 +- ports/boost-date-time/CONTROL | 4 +- ports/boost-date-time/portfile.cmake | 4 +- ports/boost-detail/CONTROL | 2 +- ports/boost-detail/portfile.cmake | 4 +- ports/boost-disjoint-sets/CONTROL | 2 +- ports/boost-disjoint-sets/portfile.cmake | 4 +- ports/boost-dll/CONTROL | 4 +- ports/boost-dll/portfile.cmake | 4 +- ports/boost-dynamic-bitset/CONTROL | 2 +- ports/boost-dynamic-bitset/portfile.cmake | 4 +- ports/boost-endian/CONTROL | 2 +- ports/boost-endian/portfile.cmake | 4 +- ports/boost-exception/CONTROL | 2 +- ports/boost-exception/portfile.cmake | 4 +- ports/boost-fiber/CONTROL | 2 +- ports/boost-fiber/portfile.cmake | 9 +++- ports/boost-filesystem/CONTROL | 2 +- ports/boost-filesystem/portfile.cmake | 4 +- ports/boost-flyweight/CONTROL | 2 +- ports/boost-flyweight/portfile.cmake | 4 +- ports/boost-foreach/CONTROL | 2 +- ports/boost-foreach/portfile.cmake | 4 +- ports/boost-format/CONTROL | 2 +- ports/boost-format/portfile.cmake | 4 +- ports/boost-function-types/CONTROL | 2 +- ports/boost-function-types/portfile.cmake | 4 +- ports/boost-function/CONTROL | 2 +- ports/boost-function/portfile.cmake | 4 +- ports/boost-functional/CONTROL | 4 +- ports/boost-functional/portfile.cmake | 4 +- ports/boost-fusion/CONTROL | 2 +- ports/boost-fusion/portfile.cmake | 4 +- ports/boost-geometry/CONTROL | 2 +- ports/boost-geometry/portfile.cmake | 4 +- ports/boost-gil/CONTROL | 2 +- ports/boost-gil/portfile.cmake | 4 +- ports/boost-graph-parallel/CONTROL | 2 +- ports/boost-graph-parallel/portfile.cmake | 4 +- ports/boost-graph/CONTROL | 2 +- ports/boost-graph/portfile.cmake | 4 +- ports/boost-hana/CONTROL | 2 +- ports/boost-hana/portfile.cmake | 4 +- ports/boost-heap/CONTROL | 2 +- ports/boost-heap/portfile.cmake | 4 +- ports/boost-hof/CONTROL | 5 +++ ports/boost-hof/portfile.cmake | 14 +++++++ ports/boost-icl/CONTROL | 2 +- ports/boost-icl/portfile.cmake | 4 +- ports/boost-integer/CONTROL | 2 +- ports/boost-integer/portfile.cmake | 4 +- ports/boost-interprocess/CONTROL | 2 +- ports/boost-interprocess/portfile.cmake | 4 +- ports/boost-interval/CONTROL | 2 +- ports/boost-interval/portfile.cmake | 4 +- ports/boost-intrusive/CONTROL | 2 +- ports/boost-intrusive/portfile.cmake | 4 +- ports/boost-io/CONTROL | 2 +- ports/boost-io/portfile.cmake | 4 +- ports/boost-iostreams/CMakeLists.txt | 37 +++++++++++++++++ ports/boost-iostreams/CONTROL | 4 +- ports/boost-iostreams/portfile.cmake | 26 +++++++++--- ports/boost-iterator/CONTROL | 2 +- ports/boost-iterator/portfile.cmake | 4 +- ports/boost-lambda/CONTROL | 2 +- ports/boost-lambda/portfile.cmake | 4 +- ports/boost-lexical-cast/CONTROL | 2 +- ports/boost-lexical-cast/portfile.cmake | 4 +- ports/boost-local-function/CONTROL | 2 +- ports/boost-local-function/portfile.cmake | 4 +- ports/boost-locale/CONTROL | 2 +- ports/boost-locale/portfile.cmake | 4 +- ports/boost-lockfree/CONTROL | 2 +- ports/boost-lockfree/portfile.cmake | 4 +- ports/boost-log/CONTROL | 4 +- ports/boost-log/portfile.cmake | 17 +++++++- ports/boost-logic/CONTROL | 2 +- ports/boost-logic/portfile.cmake | 4 +- ports/boost-math/CONTROL | 2 +- ports/boost-math/portfile.cmake | 4 +- ports/boost-metaparse/CONTROL | 2 +- ports/boost-metaparse/portfile.cmake | 4 +- ports/boost-modular-build-helper/CMakeLists.txt | 2 +- ports/boost-modular-build-helper/CONTROL | 2 +- ports/boost-modular-build-helper/Jamroot.jam | 7 +++- .../boost-modular-build.cmake | 35 +++++----------- ports/boost-move/CONTROL | 2 +- ports/boost-move/portfile.cmake | 4 +- ports/boost-mp11/CONTROL | 4 +- ports/boost-mp11/portfile.cmake | 4 +- ports/boost-mpi/CONTROL | 4 +- ports/boost-mpi/portfile.cmake | 4 +- ports/boost-mpl/CONTROL | 2 +- ports/boost-mpl/portfile.cmake | 4 +- ports/boost-msm/CONTROL | 2 +- ports/boost-msm/portfile.cmake | 4 +- ports/boost-multi-array/CONTROL | 2 +- ports/boost-multi-array/portfile.cmake | 4 +- ports/boost-multi-index/CONTROL | 2 +- ports/boost-multi-index/portfile.cmake | 4 +- ports/boost-multiprecision/CONTROL | 2 +- ports/boost-multiprecision/portfile.cmake | 4 +- ports/boost-numeric-conversion/CONTROL | 2 +- ports/boost-numeric-conversion/portfile.cmake | 4 +- ports/boost-odeint/CONTROL | 2 +- ports/boost-odeint/portfile.cmake | 4 +- ports/boost-optional/CONTROL | 2 +- ports/boost-optional/portfile.cmake | 4 +- ports/boost-parameter/CONTROL | 2 +- ports/boost-parameter/portfile.cmake | 4 +- ports/boost-phoenix/CONTROL | 2 +- ports/boost-phoenix/portfile.cmake | 4 +- ports/boost-poly-collection/CONTROL | 2 +- ports/boost-poly-collection/portfile.cmake | 4 +- ports/boost-polygon/CONTROL | 2 +- ports/boost-polygon/portfile.cmake | 4 +- ports/boost-pool/CONTROL | 2 +- ports/boost-pool/portfile.cmake | 4 +- ports/boost-predef/CONTROL | 2 +- ports/boost-predef/portfile.cmake | 6 ++- ports/boost-preprocessor/CONTROL | 2 +- ports/boost-preprocessor/portfile.cmake | 4 +- ports/boost-process/CONTROL | 2 +- ports/boost-process/portfile.cmake | 4 +- ports/boost-program-options/CONTROL | 2 +- ports/boost-program-options/portfile.cmake | 4 +- ports/boost-property-map/CONTROL | 2 +- ports/boost-property-map/portfile.cmake | 4 +- ports/boost-property-tree/CONTROL | 2 +- ports/boost-property-tree/portfile.cmake | 4 +- ports/boost-proto/CONTROL | 2 +- ports/boost-proto/portfile.cmake | 4 +- ports/boost-ptr-container/CONTROL | 2 +- ports/boost-ptr-container/portfile.cmake | 4 +- ports/boost-python/CONTROL | 2 +- ports/boost-python/portfile.cmake | 4 +- ports/boost-qvm/CONTROL | 2 +- ports/boost-qvm/portfile.cmake | 4 +- ports/boost-random/CONTROL | 4 +- ports/boost-random/portfile.cmake | 4 +- ports/boost-range/CONTROL | 2 +- ports/boost-range/portfile.cmake | 4 +- ports/boost-ratio/CONTROL | 2 +- ports/boost-ratio/portfile.cmake | 4 +- ports/boost-rational/CONTROL | 2 +- ports/boost-rational/portfile.cmake | 4 +- ports/boost-regex/CONTROL | 4 +- ports/boost-regex/portfile.cmake | 4 +- ports/boost-scope-exit/CONTROL | 2 +- ports/boost-scope-exit/portfile.cmake | 4 +- ports/boost-serialization/CONTROL | 2 +- ports/boost-serialization/portfile.cmake | 4 +- ports/boost-signals/CONTROL | 2 +- ports/boost-signals/portfile.cmake | 4 +- ports/boost-signals2/CONTROL | 2 +- ports/boost-signals2/portfile.cmake | 4 +- ports/boost-smart-ptr/CONTROL | 2 +- ports/boost-smart-ptr/portfile.cmake | 4 +- ports/boost-sort/CONTROL | 4 +- ports/boost-sort/portfile.cmake | 4 +- ports/boost-spirit/CONTROL | 2 +- ports/boost-spirit/portfile.cmake | 4 +- ports/boost-stacktrace/CONTROL | 4 +- ports/boost-stacktrace/portfile.cmake | 4 +- ports/boost-statechart/CONTROL | 2 +- ports/boost-statechart/portfile.cmake | 4 +- ports/boost-static-assert/CONTROL | 2 +- ports/boost-static-assert/portfile.cmake | 4 +- ports/boost-system/CONTROL | 2 +- ports/boost-system/portfile.cmake | 4 +- ports/boost-test/CONTROL | 4 +- ports/boost-test/portfile.cmake | 9 +++- ports/boost-thread/CONTROL | 2 +- ports/boost-thread/b2-options.cmake | 1 + ports/boost-thread/portfile.cmake | 11 +++-- ports/boost-throw-exception/CONTROL | 2 +- ports/boost-throw-exception/portfile.cmake | 4 +- ports/boost-timer/CONTROL | 2 +- ports/boost-timer/portfile.cmake | 4 +- ports/boost-tokenizer/CONTROL | 2 +- ports/boost-tokenizer/portfile.cmake | 4 +- ports/boost-tti/CONTROL | 2 +- ports/boost-tti/portfile.cmake | 4 +- ports/boost-tuple/CONTROL | 2 +- ports/boost-tuple/portfile.cmake | 4 +- ports/boost-type-erasure/CONTROL | 4 +- ports/boost-type-erasure/portfile.cmake | 4 +- ports/boost-type-index/CONTROL | 4 +- ports/boost-type-index/portfile.cmake | 4 +- ports/boost-type-traits/CONTROL | 2 +- ports/boost-type-traits/portfile.cmake | 4 +- ports/boost-typeof/CONTROL | 2 +- ports/boost-typeof/portfile.cmake | 4 +- ports/boost-ublas/CONTROL | 2 +- ports/boost-ublas/portfile.cmake | 4 +- ports/boost-units/CONTROL | 2 +- ports/boost-units/portfile.cmake | 4 +- ports/boost-unordered/CONTROL | 4 +- ports/boost-unordered/portfile.cmake | 4 +- ports/boost-utility/CONTROL | 4 +- ports/boost-utility/portfile.cmake | 4 +- ports/boost-uuid/CONTROL | 4 +- ports/boost-uuid/portfile.cmake | 4 +- ports/boost-variant/CONTROL | 4 +- ports/boost-variant/portfile.cmake | 4 +- ports/boost-vcpkg-helpers/generate-ports.ps1 | 44 ++++++++++++++------ .../post-source-stubs/context.cmake | 5 +++ .../post-source-stubs/fiber.cmake | 5 +++ .../post-source-stubs/log.cmake | 13 ++++++ .../post-source-stubs/python.cmake | 5 +++ .../post-source-stubs/test.cmake | 5 +++ ports/boost-vmd/CONTROL | 2 +- ports/boost-vmd/portfile.cmake | 4 +- ports/boost-wave/CONTROL | 4 +- ports/boost-wave/portfile.cmake | 4 +- ports/boost-winapi/CONTROL | 2 +- ports/boost-winapi/portfile.cmake | 4 +- ports/boost-xpressive/CONTROL | 2 +- ports/boost-xpressive/portfile.cmake | 4 +- ports/boost/CONTROL | 4 +- ports/cartographer/CONTROL | 2 +- ports/cartographer/portfile.cmake | 5 ++- ports/libtorrent/CONTROL | 4 +- ports/libtorrent/boost-167.patch | 48 ++++++++++++++++++++++ ports/libtorrent/portfile.cmake | 4 +- 284 files changed, 709 insertions(+), 468 deletions(-) create mode 100644 ports/boost-container-hash/CONTROL create mode 100644 ports/boost-container-hash/portfile.cmake create mode 100644 ports/boost-contract/CONTROL create mode 100644 ports/boost-contract/portfile.cmake create mode 100644 ports/boost-hof/CONTROL create mode 100644 ports/boost-hof/portfile.cmake create mode 100644 ports/boost-iostreams/CMakeLists.txt create mode 100644 ports/boost-thread/b2-options.cmake create mode 100644 ports/boost-vcpkg-helpers/post-source-stubs/context.cmake create mode 100644 ports/boost-vcpkg-helpers/post-source-stubs/fiber.cmake create mode 100644 ports/boost-vcpkg-helpers/post-source-stubs/log.cmake create mode 100644 ports/boost-vcpkg-helpers/post-source-stubs/python.cmake create mode 100644 ports/boost-vcpkg-helpers/post-source-stubs/test.cmake create mode 100644 ports/libtorrent/boost-167.patch diff --git a/ports/boost-accumulators/CONTROL b/ports/boost-accumulators/CONTROL index dda6adfc0..7c3b8aedc 100644 --- a/ports/boost-accumulators/CONTROL +++ b/ports/boost-accumulators/CONTROL @@ -1,5 +1,5 @@ # Automatically generated by boost-vcpkg-helpers/generate-ports.ps1 Source: boost-accumulators -Version: 1.66.0 +Version: 1.67.0 Build-Depends: boost-array, boost-assert, boost-circular-buffer, boost-concept-check, boost-config, boost-core, boost-detail, boost-fusion, boost-interval, boost-iterator, boost-mpl, boost-numeric-conversion, boost-odeint, boost-parameter, boost-preprocessor, boost-range, boost-static-assert, boost-throw-exception, boost-tuple, boost-typeof, boost-type-traits, boost-ublas, boost-utility, boost-vcpkg-helpers Description: Boost accumulators module diff --git a/ports/boost-accumulators/portfile.cmake b/ports/boost-accumulators/portfile.cmake index 9c13dcc52..f4e5abf16 100644 --- a/ports/boost-accumulators/portfile.cmake +++ b/ports/boost-accumulators/portfile.cmake @@ -5,8 +5,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO boostorg/accumulators - REF boost-1.66.0 - SHA512 8413fb2c8f52ae8ec0253847ae01bd1a99d3746bd24bafb9707c243119055e3fbb7da848048db8493c80b8f1bb149d18cd03d8be22ffd2465165fb644cdfd12e + REF boost-1.67.0 + SHA512 f68e35b502f22af605d8d5c1648b856cbdeaa2f592ad1a7732ea2be6d9207271f4842320875bde693651479c39a394055fb2315e5422a6ebb623412fb44b2a04 HEAD_REF master ) diff --git a/ports/boost-algorithm/CONTROL b/ports/boost-algorithm/CONTROL index 50534ac12..bf9846b26 100644 --- a/ports/boost-algorithm/CONTROL +++ b/ports/boost-algorithm/CONTROL @@ -1,5 +1,5 @@ # Automatically generated by boost-vcpkg-helpers/generate-ports.ps1 Source: boost-algorithm -Version: 1.66.0 +Version: 1.67.0 Build-Depends: boost-array, boost-assert, boost-bind, boost-concept-check, boost-config, boost-core, boost-detail, boost-exception, boost-function, boost-iterator, boost-mpl, boost-range, boost-regex, boost-static-assert, boost-throw-exception, boost-tuple, boost-type-traits, boost-unordered, boost-utility, boost-vcpkg-helpers Description: Boost algorithm module diff --git a/ports/boost-algorithm/portfile.cmake b/ports/boost-algorithm/portfile.cmake index 2f6803405..55f8ddad1 100644 --- a/ports/boost-algorithm/portfile.cmake +++ b/ports/boost-algorithm/portfile.cmake @@ -5,8 +5,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO boostorg/algorithm - REF boost-1.66.0 - SHA512 46779a82175b89da21789e332befb89972320652bafcdacf76f456d3d9ff3635a2db0693dd035bd6651262f762f591d026387682f3c0764315e40d5f007e72ee + REF boost-1.67.0 + SHA512 74509b979d71c1aa21734555022c056b4ab508e01e715d469b0021704654cc27db91ce41266bb567b62d5cfafe0f92d1c0fda67f917b5198b0326713240c2e77 HEAD_REF master ) diff --git a/ports/boost-align/CONTROL b/ports/boost-align/CONTROL index e3009e539..11f7f2090 100644 --- a/ports/boost-align/CONTROL +++ b/ports/boost-align/CONTROL @@ -1,5 +1,5 @@ # Automatically generated by boost-vcpkg-helpers/generate-ports.ps1 Source: boost-align -Version: 1.66.0 +Version: 1.67.0 Build-Depends: boost-assert, boost-config, boost-core, boost-static-assert, boost-throw-exception, boost-vcpkg-helpers Description: Boost align module diff --git a/ports/boost-align/portfile.cmake b/ports/boost-align/portfile.cmake index 80a2a7ab7..28c878dc4 100644 --- a/ports/boost-align/portfile.cmake +++ b/ports/boost-align/portfile.cmake @@ -5,8 +5,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO boostorg/align - REF boost-1.66.0 - SHA512 3f358344470f797e093fd5db80a6d332e960b7301188e346771e06acc620d97d0e02562eb417eb4627a2200967af4eda74931fc61c8746df16d754f4b578b958 + REF boost-1.67.0 + SHA512 4dfbe372e977787067b7d270bd54f66919e48620300552f76ec3075e02e4514214d3bd8b5ff83599b7f277a8cafa95e550620231bfe366f38aa26ee51c6ef942 HEAD_REF master ) diff --git a/ports/boost-any/CONTROL b/ports/boost-any/CONTROL index c0f854590..c420de0d9 100644 --- a/ports/boost-any/CONTROL +++ b/ports/boost-any/CONTROL @@ -1,5 +1,5 @@ # Automatically generated by boost-vcpkg-helpers/generate-ports.ps1 Source: boost-any -Version: 1.66.0 +Version: 1.67.0 Build-Depends: boost-config, boost-core, boost-mpl, boost-static-assert, boost-throw-exception, boost-type-index, boost-type-traits, boost-utility, boost-vcpkg-helpers Description: Boost any module diff --git a/ports/boost-any/portfile.cmake b/ports/boost-any/portfile.cmake index 47de0a492..a5fbf5279 100644 --- a/ports/boost-any/portfile.cmake +++ b/ports/boost-any/portfile.cmake @@ -5,8 +5,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO boostorg/any - REF boost-1.66.0 - SHA512 57f24a2532e31e664415642c2e125263964eae6798dfc31eae586a3e4fe516edc1adea882883d34613744ae79acfbc0bed9c8fd823153bafc25d9c3c1ec1e5ef + REF boost-1.67.0 + SHA512 1fd58fdd94cb08078f77d9131568255f35afb63e52a66379d14b35d5d9572f97468fc8a70b966d2c13b28149ccc8659ec0ba70c3cbda62ae08b8f8f1961c15e4 HEAD_REF master ) diff --git a/ports/boost-array/CONTROL b/ports/boost-array/CONTROL index 549e3b979..429743ad5 100644 --- a/ports/boost-array/CONTROL +++ b/ports/boost-array/CONTROL @@ -1,5 +1,5 @@ # Automatically generated by boost-vcpkg-helpers/generate-ports.ps1 Source: boost-array -Version: 1.66.0 +Version: 1.67.0 Build-Depends: boost-assert, boost-config, boost-core, boost-detail, boost-static-assert, boost-throw-exception, boost-vcpkg-helpers Description: Boost array module diff --git a/ports/boost-array/portfile.cmake b/ports/boost-array/portfile.cmake index 299bf6ff3..e0245f551 100644 --- a/ports/boost-array/portfile.cmake +++ b/ports/boost-array/portfile.cmake @@ -5,8 +5,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO boostorg/array - REF boost-1.66.0 - SHA512 67ca3644cdea6c2ac1791707e93c517cb1cc5aa593ead675bcfa844a27bcbb61ae4c1c35dc1cbb099e45041275e0ca70c99726a9f70319358057bc448f538425 + REF boost-1.67.0 + SHA512 db8ae6ffa7b29405d3e140acc22dd5bba9c7eade435fa2235b4c54e1c45c1bb28b927e4168ce4811a0206b83fe99580feffc6ae36a8c6cf99f6b13a2eb0682cd HEAD_REF master ) diff --git a/ports/boost-asio/CONTROL b/ports/boost-asio/CONTROL index 169640a9b..2fdc3dc0a 100644 --- a/ports/boost-asio/CONTROL +++ b/ports/boost-asio/CONTROL @@ -1,5 +1,5 @@ # Automatically generated by boost-vcpkg-helpers/generate-ports.ps1 Source: boost-asio -Version: 1.66.0-1 +Version: 1.67.0-1 Build-Depends: boost-coroutine (!uwp), boost-date-time, boost-regex, boost-system, boost-vcpkg-helpers, openssl Description: Boost asio module diff --git a/ports/boost-asio/portfile.cmake b/ports/boost-asio/portfile.cmake index f513ae43c..de750d6d3 100644 --- a/ports/boost-asio/portfile.cmake +++ b/ports/boost-asio/portfile.cmake @@ -5,8 +5,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO boostorg/asio - REF boost-1.66.0 - SHA512 7d9989bd96b2940183a1aa75e7f7a6cec0ecf630922009d440ba876802411eba80ddc9b22bd4af65d6f12e3414eb130dc27a884c53bceabdfe8bafb9772db01f + REF boost-1.67.0 + SHA512 b7497608afa49580eeb9a74feefc624eb66a3e6db21f2a65291ccb287fe60dc8d923a9143bc10e73b8508ec2ef094e6caf2ef96528790c5324b6aceced55f29f HEAD_REF master ) diff --git a/ports/boost-assert/CONTROL b/ports/boost-assert/CONTROL index 70f7769c3..701ae791f 100644 --- a/ports/boost-assert/CONTROL +++ b/ports/boost-assert/CONTROL @@ -1,5 +1,5 @@ # Automatically generated by boost-vcpkg-helpers/generate-ports.ps1 Source: boost-assert -Version: 1.66.0 +Version: 1.67.0 Build-Depends: boost-config, boost-vcpkg-helpers Description: Boost assert module diff --git a/ports/boost-assert/portfile.cmake b/ports/boost-assert/portfile.cmake index cd0e8267f..d37ed3bee 100644 --- a/ports/boost-assert/portfile.cmake +++ b/ports/boost-assert/portfile.cmake @@ -5,8 +5,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO boostorg/assert - REF boost-1.66.0 - SHA512 a00e17793c94d8d9e616bc5e80433fd68e4e4e51abf23956b6a7c977b01300d6a2200e9f6a8d249d7813b57d20fb2e6a844f5d2eb7504add99d748f89c2f39d5 + REF boost-1.67.0 + SHA512 e0559f543bffc1acd6a95bf54978a29eff42c6e8c5f825a7b93cb652a5260bcfd5eb1a09b2859e9a3621c3438e7670e4e4132735acdce4d43608cfdf426e5444 HEAD_REF master ) diff --git a/ports/boost-assign/CONTROL b/ports/boost-assign/CONTROL index 88deae645..1f3046320 100644 --- a/ports/boost-assign/CONTROL +++ b/ports/boost-assign/CONTROL @@ -1,5 +1,5 @@ # Automatically generated by boost-vcpkg-helpers/generate-ports.ps1 Source: boost-assign -Version: 1.66.0 -Build-Depends: boost-array, boost-config, boost-detail, boost-mpl, boost-preprocessor, boost-ptr-container, boost-range, boost-static-assert, boost-tuple, boost-type-traits, boost-vcpkg-helpers +Version: 1.67.0 +Build-Depends: boost-array, boost-config, boost-detail, boost-mpl, boost-preprocessor, boost-ptr-container, boost-range, boost-static-assert, boost-throw-exception, boost-tuple, boost-type-traits, boost-vcpkg-helpers Description: Boost assign module diff --git a/ports/boost-assign/portfile.cmake b/ports/boost-assign/portfile.cmake index e2d0a7e20..a8b01985b 100644 --- a/ports/boost-assign/portfile.cmake +++ b/ports/boost-assign/portfile.cmake @@ -5,8 +5,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO boostorg/assign - REF boost-1.66.0 - SHA512 501e11279f672a24585a6189438f2310358cc67a8838995abb0f1454f230242fdd8f206ec294cdbb39ebe7e606a8a4ef2a96e0fe236d5e044ab4708eae030264 + REF boost-1.67.0 + SHA512 e7fd39fc4bcf7cc97c3f987a2cc7434c51d23fe47dbd480ac9203209c61db0883b479582adcfdef22b9f007df3467b43da72bef8b186ea8c5883a85013394dd2 HEAD_REF master ) diff --git a/ports/boost-atomic/CONTROL b/ports/boost-atomic/CONTROL index 6289fb560..488cbe7de 100644 --- a/ports/boost-atomic/CONTROL +++ b/ports/boost-atomic/CONTROL @@ -1,5 +1,5 @@ # Automatically generated by boost-vcpkg-helpers/generate-ports.ps1 Source: boost-atomic -Version: 1.66.0 +Version: 1.67.0 Build-Depends: boost-assert, boost-build, boost-config, boost-integer, boost-modular-build-helper, boost-type-traits, boost-vcpkg-helpers Description: Boost atomic module diff --git a/ports/boost-atomic/portfile.cmake b/ports/boost-atomic/portfile.cmake index feb671183..12f253805 100644 --- a/ports/boost-atomic/portfile.cmake +++ b/ports/boost-atomic/portfile.cmake @@ -5,8 +5,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO boostorg/atomic - REF boost-1.66.0 - SHA512 2f13902827ea0639ec37e514d87cfc9081bca6f4f6d98e0ad84f19b2042900e03bb3f5c2fb4891864174ae5abb743315af27062d7b10de861e91a7e92df91f98 + REF boost-1.67.0 + SHA512 4a4ab037e17c6c2a5a1ae5acb880392f863daa4cc87ca22349d9da565b229d68ce1befe96d7457778dddd40afb95266d6cb45552a46d9679f7bc935e8fb16b85 HEAD_REF master ) diff --git a/ports/boost-beast/CONTROL b/ports/boost-beast/CONTROL index 13f1d67f6..867f09008 100644 --- a/ports/boost-beast/CONTROL +++ b/ports/boost-beast/CONTROL @@ -1,5 +1,5 @@ # Automatically generated by boost-vcpkg-helpers/generate-ports.ps1 Source: boost-beast -Version: 1.66.0 -Build-Depends: boost-asio, boost-assert, boost-config, boost-container, boost-core, boost-endian, boost-intrusive, boost-optional, boost-smart-ptr, boost-static-assert, boost-system, boost-throw-exception, boost-type-traits, boost-utility, boost-vcpkg-helpers, boost-winapi +Version: 1.67.0 +Build-Depends: boost-asio, boost-assert, boost-bind, boost-config, boost-container, boost-core, boost-endian, boost-intrusive, boost-optional, boost-smart-ptr, boost-static-assert, boost-system, boost-throw-exception, boost-type-traits, boost-utility, boost-vcpkg-helpers, boost-winapi Description: Boost beast module diff --git a/ports/boost-beast/portfile.cmake b/ports/boost-beast/portfile.cmake index 16d782d94..355d5bc3e 100644 --- a/ports/boost-beast/portfile.cmake +++ b/ports/boost-beast/portfile.cmake @@ -5,8 +5,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO boostorg/beast - REF boost-1.66.0 - SHA512 0559721217469b3862c6653488de245841f351098766d2cbf4d0fd3a2ecdd96460ecaf5591166dc59f7c5a9806edab9101c9939c98b294c3cbd2d738dd07f6c6 + REF boost-1.67.0 + SHA512 7530553985c8beee0b24b1ba77b8c6e2279315c74c20f8d6d2f2028fb6fed6c80f81eacb8a2de6fce651fcb6bf0c9d67f65234cb2e1fd433e0f6ceda1566e5b6 HEAD_REF master ) diff --git a/ports/boost-bimap/CONTROL b/ports/boost-bimap/CONTROL index 7c84d3103..9bffc6bbc 100644 --- a/ports/boost-bimap/CONTROL +++ b/ports/boost-bimap/CONTROL @@ -1,5 +1,5 @@ # Automatically generated by boost-vcpkg-helpers/generate-ports.ps1 Source: boost-bimap -Version: 1.66.0 +Version: 1.67.0 Build-Depends: boost-concept-check, boost-config, boost-functional, boost-iterator, boost-lambda, boost-mpl, boost-multi-index, boost-preprocessor, boost-property-map, boost-serialization, boost-static-assert, boost-throw-exception, boost-type-traits, boost-utility, boost-vcpkg-helpers Description: Boost bimap module diff --git a/ports/boost-bimap/portfile.cmake b/ports/boost-bimap/portfile.cmake index eda19317a..a9b8e0e12 100644 --- a/ports/boost-bimap/portfile.cmake +++ b/ports/boost-bimap/portfile.cmake @@ -5,8 +5,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO boostorg/bimap - REF boost-1.66.0 - SHA512 f0784a2fd2be60b404d8a3bb43fa4685ab75a17a18e9e9fb0a8e8d1df18323ad02ad12720f5cfb310c93a33fd3bdec09d8ac92cbc4ff875f9ff4c3a6263d4f8b + REF boost-1.67.0 + SHA512 c142c149fcfd0a33e130779a0a9f9be41d077703137b6537bfc8c8ed7ff9031fd8e196f076791e00450a286c1ace56979ee7a0c59348f304f2d41daf12aba355 HEAD_REF master ) diff --git a/ports/boost-bind/CONTROL b/ports/boost-bind/CONTROL index 1c9875b2f..bdc97f096 100644 --- a/ports/boost-bind/CONTROL +++ b/ports/boost-bind/CONTROL @@ -1,5 +1,5 @@ # Automatically generated by boost-vcpkg-helpers/generate-ports.ps1 Source: boost-bind -Version: 1.66.0 +Version: 1.67.0 Build-Depends: boost-config, boost-core, boost-detail, boost-vcpkg-helpers Description: Boost bind module diff --git a/ports/boost-bind/portfile.cmake b/ports/boost-bind/portfile.cmake index 8f6ee1cfb..e55b91055 100644 --- a/ports/boost-bind/portfile.cmake +++ b/ports/boost-bind/portfile.cmake @@ -5,8 +5,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO boostorg/bind - REF boost-1.66.0 - SHA512 a3366e1d30b6d69fe1ce9a7daeabb5e32a64dea3c043be44327941e93a19a3bfa78a1a552c189edf7490f743d1e5686555d3caaf6826aeb6c7be4900e9c2368c + REF boost-1.67.0 + SHA512 4172a426fad408f06f7e36f90396158b8fb345ff7b4147ec3471771d465335c9b01f7e7dda040c842684a5c6eef596ea4c8f7b803489fbddfb016e48e3fcf8fd HEAD_REF master ) diff --git a/ports/boost-build/CONTROL b/ports/boost-build/CONTROL index ef59d386c..678914811 100644 --- a/ports/boost-build/CONTROL +++ b/ports/boost-build/CONTROL @@ -1,3 +1,3 @@ Source: boost-build -Version: 1.66.0-8 +Version: 1.67.0 Description: Boost.Build diff --git a/ports/boost-build/portfile.cmake b/ports/boost-build/portfile.cmake index fdd559ebe..dfd507997 100644 --- a/ports/boost-build/portfile.cmake +++ b/ports/boost-build/portfile.cmake @@ -11,21 +11,21 @@ endif() vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO boostorg/build - REF boost-1.66.0 - SHA512 db94eefa0c2fe410cfdf7599102670377a069d52a7c8d4181f6209e3e65860e9d92f86ec5994e402b8a773a47a4ad5c074acf9763eabbe293266af19380e7ca9 + REF boost-1.67.0 + SHA512 93aa3f0c76245fefe2ceabde9c287e7738f79cdab71eeb42ba426f06e7846b5da5c00fc7581d7f31135687e10660521d34c7ffb1ce7299b70d7330a81b0e5acc HEAD_REF master ) vcpkg_download_distfile(ARCHIVE - URLS "https://raw.githubusercontent.com/boostorg/boost/boost-1.66.0/LICENSE_1_0.txt" + URLS "https://raw.githubusercontent.com/boostorg/boost/boost-1.67.0/LICENSE_1_0.txt" FILENAME "boost_LICENSE_1_0.txt" SHA512 d6078467835dba8932314c1c1e945569a64b065474d7aced27c9a7acc391d52e9f234138ed9f1aa9cd576f25f12f557e0b733c14891d42c16ecdc4a7bd4d60b8 ) vcpkg_download_distfile(BOOSTCPP_ARCHIVE - URLS "https://raw.githubusercontent.com/boostorg/boost/boost-1.66.0/boostcpp.jam" - FILENAME "boost-1.66.0-boostcpp.jam" - SHA512 ef2ae1d6a53a7f93654950e2e8e679da6b0359f02baafc03db970801634c1f5d4229633b5b6d74ad96a306e6efe3429d436669dc165b1fa655917e0ec74714e4 + URLS "https://raw.githubusercontent.com/boostorg/boost/boost-1.67.0/boostcpp.jam" + FILENAME "boost-1.67.0-boostcpp.jam" + SHA512 4d887b05b4873e651fd9bc20f04fc072c7d801fd50445c989517cd39c3a8aa132ed46c407fb0efb35825fc0fc1035393d5ac0da5922be2c120cf2bfff952b3bc ) file(INSTALL ${ARCHIVE} DESTINATION ${CURRENT_PACKAGES_DIR}/share/boost-build RENAME copyright) diff --git a/ports/boost-callable-traits/CONTROL b/ports/boost-callable-traits/CONTROL index dbe301198..4951e77c5 100644 --- a/ports/boost-callable-traits/CONTROL +++ b/ports/boost-callable-traits/CONTROL @@ -1,5 +1,5 @@ # Automatically generated by boost-vcpkg-helpers/generate-ports.ps1 Source: boost-callable-traits -Version: 1.66.0 +Version: 1.67.0 Build-Depends: boost-vcpkg-helpers Description: Boost callable_traits module diff --git a/ports/boost-callable-traits/portfile.cmake b/ports/boost-callable-traits/portfile.cmake index 0a0a670b3..7d262945f 100644 --- a/ports/boost-callable-traits/portfile.cmake +++ b/ports/boost-callable-traits/portfile.cmake @@ -5,8 +5,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO boostorg/callable_traits - REF boost-1.66.0 - SHA512 87a0f4de9a8cf2652addca6b3b685cea242bf55e1609409f41360813761ad3078b414761cf34856223fe60f460616e13e7b2e6017afc3d053879c7ec8292b9b0 + REF boost-1.67.0 + SHA512 5a6dedd5b8c4f57d4e896dbd963927459a42cc2488dd09628b5cc484327d21b32d7f5f2d976a55b4a62783faa4688b6f020983030bfc1f4307acf7f66b179fbc HEAD_REF master ) diff --git a/ports/boost-chrono/CONTROL b/ports/boost-chrono/CONTROL index 563547137..529526653 100644 --- a/ports/boost-chrono/CONTROL +++ b/ports/boost-chrono/CONTROL @@ -1,5 +1,5 @@ # Automatically generated by boost-vcpkg-helpers/generate-ports.ps1 Source: boost-chrono -Version: 1.66.0 +Version: 1.67.0 Build-Depends: boost-assert, boost-build, boost-config, boost-detail, boost-integer, boost-modular-build-helper, boost-move, boost-mpl, boost-predef, boost-ratio, boost-static-assert, boost-system, boost-throw-exception, boost-typeof, boost-type-traits, boost-utility, boost-vcpkg-helpers, boost-winapi Description: Boost chrono module diff --git a/ports/boost-chrono/portfile.cmake b/ports/boost-chrono/portfile.cmake index d1cb98af1..2918d3e9d 100644 --- a/ports/boost-chrono/portfile.cmake +++ b/ports/boost-chrono/portfile.cmake @@ -5,8 +5,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO boostorg/chrono - REF boost-1.66.0 - SHA512 edbc8c16bcdc4b79c47885e720c96781e6737d31c54e2c051596e693390c5a8efca4e16e253db0db5a996c72c1d0fb6482dda7dc58f78fd67edb09ad12f3a25b + REF boost-1.67.0 + SHA512 ce86585c30b7500dd9f75074325428b57278e5bd88e6accbee235477ff73a0056fffae40ec0d88bcd28bfa59c4b37f290a618dc5af684dc6fc89302358d5d049 HEAD_REF master ) diff --git a/ports/boost-circular-buffer/CONTROL b/ports/boost-circular-buffer/CONTROL index 56be43c12..53c0acf58 100644 --- a/ports/boost-circular-buffer/CONTROL +++ b/ports/boost-circular-buffer/CONTROL @@ -1,5 +1,5 @@ # Automatically generated by boost-vcpkg-helpers/generate-ports.ps1 Source: boost-circular-buffer -Version: 1.66.0 +Version: 1.67.0 Build-Depends: boost-assert, boost-compatibility, boost-concept-check, boost-config, boost-container, boost-core, boost-detail, boost-iterator, boost-move, boost-static-assert, boost-throw-exception, boost-type-traits, boost-utility, boost-vcpkg-helpers Description: Boost circular_buffer module diff --git a/ports/boost-circular-buffer/portfile.cmake b/ports/boost-circular-buffer/portfile.cmake index 85b46c0d4..ad1753f8e 100644 --- a/ports/boost-circular-buffer/portfile.cmake +++ b/ports/boost-circular-buffer/portfile.cmake @@ -5,8 +5,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO boostorg/circular_buffer - REF boost-1.66.0 - SHA512 78d74fa417da8d19b8344feccff009ed90eb07e36251f2a18dcd58716c230c7faade68faf2b7b98c2fc43fea8186c38e5a81c1d2c981841b59e35b0dc6026943 + REF boost-1.67.0 + SHA512 1c1f085f81def77135b95fd3255ef0280c84c7f899b632b91c28bdc33dcfff8eaef3f9f233a356499756305a11c4a33022b72a46b990ec56db73ac4036711c45 HEAD_REF master ) diff --git a/ports/boost-compatibility/CONTROL b/ports/boost-compatibility/CONTROL index acb31e6f1..3379e76da 100644 --- a/ports/boost-compatibility/CONTROL +++ b/ports/boost-compatibility/CONTROL @@ -1,5 +1,5 @@ # Automatically generated by boost-vcpkg-helpers/generate-ports.ps1 Source: boost-compatibility -Version: 1.66.0 +Version: 1.67.0 Build-Depends: boost-vcpkg-helpers Description: Boost compatibility module diff --git a/ports/boost-compatibility/portfile.cmake b/ports/boost-compatibility/portfile.cmake index e59db2e84..41f9b81fb 100644 --- a/ports/boost-compatibility/portfile.cmake +++ b/ports/boost-compatibility/portfile.cmake @@ -5,8 +5,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO boostorg/compatibility - REF boost-1.66.0 - SHA512 3f78455431974ca24fe48a6fce22eb9f374455560f2e9442c921e082e23ceb82b9ac2a443e6c4dbba2d24531dd0752ef854d3548340e3dba42b31aa795885fe3 + REF boost-1.67.0 + SHA512 d8733176ab4d208d5d44fe2a14c73d0309f62be5c2b9b9f50558c44c034c4f727260787185696bbaf5051b359bb14435cdc467644251e5d67b0b945d8f3b84a1 HEAD_REF master ) diff --git a/ports/boost-compute/CONTROL b/ports/boost-compute/CONTROL index 9c90be96e..094eae8b6 100644 --- a/ports/boost-compute/CONTROL +++ b/ports/boost-compute/CONTROL @@ -1,5 +1,5 @@ # Automatically generated by boost-vcpkg-helpers/generate-ports.ps1 Source: boost-compute -Version: 1.66.0 +Version: 1.67.0 Build-Depends: boost-algorithm, boost-array, boost-assert, boost-chrono, boost-config, boost-core, boost-filesystem (!uwp), boost-function, boost-function-types, boost-fusion, boost-iterator, boost-lexical-cast, boost-math, boost-mpl, boost-optional, boost-preprocessor, boost-property-tree, boost-proto, boost-range, boost-smart-ptr, boost-static-assert, boost-throw-exception, boost-tuple, boost-typeof, boost-type-traits, boost-utility, boost-uuid, boost-vcpkg-helpers Description: Boost compute module diff --git a/ports/boost-compute/portfile.cmake b/ports/boost-compute/portfile.cmake index 2c70ac5ef..a31f9d897 100644 --- a/ports/boost-compute/portfile.cmake +++ b/ports/boost-compute/portfile.cmake @@ -5,8 +5,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO boostorg/compute - REF boost-1.66.0 - SHA512 c540200a62faf4e4b5895177d9b33f9316d0d5e4052f3bfea7eb33d9faa9446bd5015c55f59c923134c59d635f1078e1e7e50e013636efc65820056bb6bdb704 + REF boost-1.67.0 + SHA512 d7f470eb2dcf96198d68d61edf8d53491819f8e29452f80e4140e34a11e044ecd45cfdbcd28cc29da2e905c6f324872704d4a834c62242050a0d5fc46deda029 HEAD_REF master ) diff --git a/ports/boost-concept-check/CONTROL b/ports/boost-concept-check/CONTROL index c56fc9fae..c5f814b20 100644 --- a/ports/boost-concept-check/CONTROL +++ b/ports/boost-concept-check/CONTROL @@ -1,5 +1,5 @@ # Automatically generated by boost-vcpkg-helpers/generate-ports.ps1 Source: boost-concept-check -Version: 1.66.0 +Version: 1.67.0 Build-Depends: boost-config, boost-mpl, boost-vcpkg-helpers Description: Boost concept_check module diff --git a/ports/boost-concept-check/portfile.cmake b/ports/boost-concept-check/portfile.cmake index 36d7bac9c..fae7c074c 100644 --- a/ports/boost-concept-check/portfile.cmake +++ b/ports/boost-concept-check/portfile.cmake @@ -5,8 +5,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO boostorg/concept_check - REF boost-1.66.0 - SHA512 bec39bf040752414e08f7f6222b8557ea27df0e48c57fc2a1ad680ee15256a37a4e6a8cad1b39bb5f8800bfc7a32c39f89321669d04be9698775e77cd26e2fee + REF boost-1.67.0 + SHA512 82b67cf07b455b4775bc10a872d3b181af6bf689c7b3cd14160da9434965607840dd200a33f9286cde6c8aabad13a0af863c584d93eb1510bfb8a099d0169076 HEAD_REF master ) diff --git a/ports/boost-config/CONTROL b/ports/boost-config/CONTROL index ed053950a..ba249ccb3 100644 --- a/ports/boost-config/CONTROL +++ b/ports/boost-config/CONTROL @@ -1,5 +1,5 @@ # Automatically generated by boost-vcpkg-helpers/generate-ports.ps1 Source: boost-config -Version: 1.66.0 +Version: 1.67.0 Build-Depends: boost-vcpkg-helpers Description: Boost config module diff --git a/ports/boost-config/portfile.cmake b/ports/boost-config/portfile.cmake index 21d1c4083..0e705c2b7 100644 --- a/ports/boost-config/portfile.cmake +++ b/ports/boost-config/portfile.cmake @@ -5,8 +5,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO boostorg/config - REF boost-1.66.0 - SHA512 7754f48170ceb06fce2961bf7ecf85d7601eccdaf1949fc5730a2bfb4524ff32b703be053059defcfb1c08d21573e8184a38283c59b6091f69e565eade06d9c1 + REF boost-1.67.0 + SHA512 517dc632e009c052f7d594c715342a2d94a95e0bcf466c3e3fbab1de38b7314846733f98e7010c386a5bab81d365fb6a08be04d21bee8c93450df97c53a12791 HEAD_REF master ) @@ -18,3 +18,4 @@ file(APPEND ${CURRENT_PACKAGES_DIR}/include/boost/config/user.hpp "\n#undef BOOS if (VCPKG_LIBRARY_LINKAGE STREQUAL dynamic) file(APPEND ${CURRENT_PACKAGES_DIR}/include/boost/config/user.hpp "\n#define BOOST_ALL_DYN_LINK\n") endif() +file(COPY ${SOURCE_PATH}/checks DESTINATION ${CURRENT_PACKAGES_DIR}/share/boost-config) diff --git a/ports/boost-container-hash/CONTROL b/ports/boost-container-hash/CONTROL new file mode 100644 index 000000000..1e50b4400 --- /dev/null +++ b/ports/boost-container-hash/CONTROL @@ -0,0 +1,5 @@ +# Automatically generated by boost-vcpkg-helpers/generate-ports.ps1 +Source: boost-container-hash +Version: 1.67.0 +Build-Depends: boost-assert, boost-compatibility, boost-config, boost-core, boost-detail, boost-integer, boost-static-assert, boost-type-traits, boost-vcpkg-helpers +Description: Boost container_hash module diff --git a/ports/boost-container-hash/portfile.cmake b/ports/boost-container-hash/portfile.cmake new file mode 100644 index 000000000..c9692bd76 --- /dev/null +++ b/ports/boost-container-hash/portfile.cmake @@ -0,0 +1,14 @@ +# Automatically generated by boost-vcpkg-helpers/generate-ports.ps1 + +include(vcpkg_common_functions) + +vcpkg_from_github( + OUT_SOURCE_PATH SOURCE_PATH + REPO boostorg/container_hash + REF boost-1.67.0 + SHA512 6d9916c1ad2483c6877ecf5141c724319a9d65b672ad1c0d7cf5ee396755788cee78955b8cd4a1bf5f5351c68d78b0cc8a4993c70379639eb1a85cae940c06f3 + HEAD_REF master +) + +include(${CURRENT_INSTALLED_DIR}/share/boost-vcpkg-helpers/boost-modular-headers.cmake) +boost_modular_headers(SOURCE_PATH ${SOURCE_PATH}) diff --git a/ports/boost-container/CONTROL b/ports/boost-container/CONTROL index 2fbed7951..bd2afdfc1 100644 --- a/ports/boost-container/CONTROL +++ b/ports/boost-container/CONTROL @@ -1,5 +1,5 @@ # Automatically generated by boost-vcpkg-helpers/generate-ports.ps1 Source: boost-container -Version: 1.66.0 +Version: 1.67.0 Build-Depends: boost-assert, boost-build, boost-config, boost-core, boost-functional, boost-integer, boost-intrusive, boost-modular-build-helper, boost-move, boost-static-assert, boost-type-traits, boost-vcpkg-helpers Description: Boost container module diff --git a/ports/boost-container/portfile.cmake b/ports/boost-container/portfile.cmake index d2cc5c209..58ab998b4 100644 --- a/ports/boost-container/portfile.cmake +++ b/ports/boost-container/portfile.cmake @@ -5,8 +5,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO boostorg/container - REF boost-1.66.0 - SHA512 805421c56ace8786803a572e6047f0ab2de74973d7b04d603080b007c6ee7f288364dfe91f6d11be6128e8d5b0d9b2554237a6f77ee3855f3b598c3d5e20f3d1 + REF boost-1.67.0 + SHA512 559479466cf75ee7ce8f88d1c465f9c375722c954f2a833e842c732ba3dfc70bd30ae10e42e11afc043edc52767cddcf1f925b3c88f9d2c026f3e422ababd397 HEAD_REF master ) diff --git a/ports/boost-context/CONTROL b/ports/boost-context/CONTROL index bd72d021c..5797590fe 100644 --- a/ports/boost-context/CONTROL +++ b/ports/boost-context/CONTROL @@ -1,5 +1,5 @@ # Automatically generated by boost-vcpkg-helpers/generate-ports.ps1 Source: boost-context -Version: 1.66.0 +Version: 1.67.0 Build-Depends: boost-assert, boost-build, boost-config, boost-detail, boost-integer, boost-modular-build-helper, boost-pool, boost-predef, boost-smart-ptr, boost-vcpkg-helpers Description: Boost context module diff --git a/ports/boost-context/portfile.cmake b/ports/boost-context/portfile.cmake index b749a9d80..ecdfe4d69 100644 --- a/ports/boost-context/portfile.cmake +++ b/ports/boost-context/portfile.cmake @@ -5,11 +5,16 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO boostorg/context - REF boost-1.66.0 - SHA512 73efe1ab2c3b589e0ec7a095ab4a62090d8a980efbc81ac915823d1015fec215647a558bf0102fb42dbcdb05e9a4f70bd145bba095f09f1f4aec24eceddef3d4 + REF boost-1.67.0 + SHA512 4d6f7c0211c6941c8089d844b4ceae45322c2089ce41c029a21ef9b4fabdc0030a0c99fcc6c6be43d10372a171726b03a62aecae0241b8f2427439a2a283c306 HEAD_REF master ) +file(READ "${SOURCE_PATH}/build/Jamfile.v2" _contents) +string(REPLACE "import ../../config/checks/config" "import config/checks/config" _contents "${_contents}") +file(WRITE "${SOURCE_PATH}/build/Jamfile.v2" "${_contents}") +file(COPY "${CURRENT_INSTALLED_DIR}/share/boost-config/checks" DESTINATION "${SOURCE_PATH}/build/config") + include(${CURRENT_INSTALLED_DIR}/share/boost-build/boost-modular-build.cmake) boost_modular_build(SOURCE_PATH ${SOURCE_PATH}) include(${CURRENT_INSTALLED_DIR}/share/boost-vcpkg-helpers/boost-modular-headers.cmake) diff --git a/ports/boost-contract/CONTROL b/ports/boost-contract/CONTROL new file mode 100644 index 000000000..b881538b1 --- /dev/null +++ b/ports/boost-contract/CONTROL @@ -0,0 +1,5 @@ +# Automatically generated by boost-vcpkg-helpers/generate-ports.ps1 +Source: boost-contract +Version: 1.67.0 +Build-Depends: boost-any, boost-assert, boost-build, boost-config, boost-core, boost-detail, boost-exception, boost-function, boost-function-types, boost-modular-build-helper, boost-mpl, boost-optional, boost-preprocessor, boost-smart-ptr, boost-static-assert, boost-thread (!uwp), boost-typeof, boost-type-traits, boost-utility, boost-vcpkg-helpers +Description: Boost contract module diff --git a/ports/boost-contract/portfile.cmake b/ports/boost-contract/portfile.cmake new file mode 100644 index 000000000..a83fe112d --- /dev/null +++ b/ports/boost-contract/portfile.cmake @@ -0,0 +1,16 @@ +# Automatically generated by boost-vcpkg-helpers/generate-ports.ps1 + +include(vcpkg_common_functions) + +vcpkg_from_github( + OUT_SOURCE_PATH SOURCE_PATH + REPO boostorg/contract + REF boost-1.67.0 + SHA512 f0d069773d9c152be01ef803f05f134ee85190f44eec3147b8d9c025b7bf21f8b674141add0e249b0d8bb66b8d5d24f4f0e2d5b6e838ea72e38d3c64aa76c436 + HEAD_REF master +) + +include(${CURRENT_INSTALLED_DIR}/share/boost-build/boost-modular-build.cmake) +boost_modular_build(SOURCE_PATH ${SOURCE_PATH}) +include(${CURRENT_INSTALLED_DIR}/share/boost-vcpkg-helpers/boost-modular-headers.cmake) +boost_modular_headers(SOURCE_PATH ${SOURCE_PATH}) diff --git a/ports/boost-conversion/CONTROL b/ports/boost-conversion/CONTROL index 916585c42..516434726 100644 --- a/ports/boost-conversion/CONTROL +++ b/ports/boost-conversion/CONTROL @@ -1,5 +1,5 @@ # Automatically generated by boost-vcpkg-helpers/generate-ports.ps1 Source: boost-conversion -Version: 1.66.0 +Version: 1.67.0 Build-Depends: boost-vcpkg-helpers Description: Boost conversion module diff --git a/ports/boost-conversion/portfile.cmake b/ports/boost-conversion/portfile.cmake index 00ce64df7..067f58c66 100644 --- a/ports/boost-conversion/portfile.cmake +++ b/ports/boost-conversion/portfile.cmake @@ -5,8 +5,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO boostorg/conversion - REF boost-1.66.0 - SHA512 685308e332cbcf94fa9788d36bbfcbbfe384010761b581df913f259c87add3041fba122fb0bd38ad6b706d64918f88e5b13730a4ab0e8e6f450aed82df4edd6d + REF boost-1.67.0 + SHA512 6a8bdcec46a08b6b29a9288c24e6dd868c694ebd33ae8062c8ee9784be91d12031cda27841ea9f6212cdb8f0e9b9b21d68ccb96c3d38011cad5c93bfc62a568d HEAD_REF master ) diff --git a/ports/boost-convert/CONTROL b/ports/boost-convert/CONTROL index e4219cb68..807fe0380 100644 --- a/ports/boost-convert/CONTROL +++ b/ports/boost-convert/CONTROL @@ -1,5 +1,5 @@ # Automatically generated by boost-vcpkg-helpers/generate-ports.ps1 Source: boost-convert -Version: 1.66.0 +Version: 1.67.0 Build-Depends: boost-config, boost-core, boost-function-types, boost-lexical-cast, boost-math, boost-mpl, boost-optional, boost-parameter, boost-range, boost-spirit, boost-type-traits, boost-utility, boost-vcpkg-helpers Description: Boost convert module diff --git a/ports/boost-convert/portfile.cmake b/ports/boost-convert/portfile.cmake index a3c10172a..693a9178d 100644 --- a/ports/boost-convert/portfile.cmake +++ b/ports/boost-convert/portfile.cmake @@ -5,8 +5,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO boostorg/convert - REF boost-1.66.0 - SHA512 5edd73c5f78471a567f03e7772834656295acd6897f4674950a5064053d1c8de019050141d5109cc2bba13a94d2a06e2c7020d09af9eb78174f5bf8dc2ba2220 + REF boost-1.67.0 + SHA512 c51909030b2263a7f837e3732824d75b2fdf8b585c560f58e90ca8d2e6e3c48584cdc52e70f1058ef1e7fbe66085abd6053484025d14fb26201beddcf89c91ff HEAD_REF master ) diff --git a/ports/boost-core/CONTROL b/ports/boost-core/CONTROL index 785f2e2fd..2a765e76f 100644 --- a/ports/boost-core/CONTROL +++ b/ports/boost-core/CONTROL @@ -1,5 +1,5 @@ # Automatically generated by boost-vcpkg-helpers/generate-ports.ps1 Source: boost-core -Version: 1.66.0 +Version: 1.67.0 Build-Depends: boost-assert, boost-config, boost-vcpkg-helpers Description: Boost core module diff --git a/ports/boost-core/portfile.cmake b/ports/boost-core/portfile.cmake index 70c989e16..29a2b6a1f 100644 --- a/ports/boost-core/portfile.cmake +++ b/ports/boost-core/portfile.cmake @@ -5,8 +5,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO boostorg/core - REF boost-1.66.0 - SHA512 a8705d00b2f6803f924d73dc47ec9084824e9b80d19e281da632aed60abd2c60cf8b32bca92ea3ef1b8039100a7ac61d761a0eff521e3a182a6cd7a9de8b5710 + REF boost-1.67.0 + SHA512 3b00c5893012e420c0faf6de3b43c0c4ae4645ced19b7f10403c6a7cd194954df7a4462999ca78226b29858848690223657e4eef9b6cf36d92828d5642057381 HEAD_REF master ) diff --git a/ports/boost-coroutine/CONTROL b/ports/boost-coroutine/CONTROL index 998958b5f..6a0a4a69e 100644 --- a/ports/boost-coroutine/CONTROL +++ b/ports/boost-coroutine/CONTROL @@ -1,5 +1,5 @@ # Automatically generated by boost-vcpkg-helpers/generate-ports.ps1 Source: boost-coroutine -Version: 1.66.0 +Version: 1.67.0 Build-Depends: boost-assert, boost-build, boost-config, boost-context (!uwp), boost-detail, boost-exception, boost-integer, boost-modular-build-helper, boost-move, boost-range, boost-system, boost-thread (!uwp), boost-throw-exception, boost-type-traits, boost-utility, boost-vcpkg-helpers Description: Boost coroutine module diff --git a/ports/boost-coroutine/portfile.cmake b/ports/boost-coroutine/portfile.cmake index 14c8dbe3b..4b0e88cd1 100644 --- a/ports/boost-coroutine/portfile.cmake +++ b/ports/boost-coroutine/portfile.cmake @@ -5,8 +5,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO boostorg/coroutine - REF boost-1.66.0 - SHA512 f42318076c1547797dd9427c47eb6a6dc5e2407f788d6e8c7e8b6092632238a6e33f1c4d02c25af00bb85f89c82a6f8f2d10911620b5d53cbc0bf931c7fdd160 + REF boost-1.67.0 + SHA512 c636fc88a981d983f29cf5721c056d4c2cedbd48fe54d0aa4f2069ccb2c7438ee661167ff87298c22d7d84f6c61b1dd677d1ea91733e5e8fb04f7033d1559f63 HEAD_REF master ) diff --git a/ports/boost-coroutine2/CONTROL b/ports/boost-coroutine2/CONTROL index bd1156825..b9701bcb1 100644 --- a/ports/boost-coroutine2/CONTROL +++ b/ports/boost-coroutine2/CONTROL @@ -1,5 +1,5 @@ # Automatically generated by boost-vcpkg-helpers/generate-ports.ps1 Source: boost-coroutine2 -Version: 1.66.0 +Version: 1.67.0 Build-Depends: boost-assert, boost-config, boost-context (!uwp), boost-detail, boost-vcpkg-helpers Description: Boost coroutine2 module diff --git a/ports/boost-coroutine2/portfile.cmake b/ports/boost-coroutine2/portfile.cmake index 19ad0fecc..55d637732 100644 --- a/ports/boost-coroutine2/portfile.cmake +++ b/ports/boost-coroutine2/portfile.cmake @@ -5,8 +5,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO boostorg/coroutine2 - REF boost-1.66.0 - SHA512 2ecc05325b7870e1d315e488b9f463f56f9959e6ae98277363176f32d80ba8dbd5d6b706e7cc60c896f53708fb25841ed5ef9f0520dba22c5f1a32ac120559f2 + REF boost-1.67.0 + SHA512 9ff6607abb4006a503da52915d2f8f653d68a64fd0501962eee49393229be7d9fa35f0f4564306413271f08d33317e55475c0789e36639a178044f1424215097 HEAD_REF master ) diff --git a/ports/boost-crc/CONTROL b/ports/boost-crc/CONTROL index fdc424db6..2c51d0629 100644 --- a/ports/boost-crc/CONTROL +++ b/ports/boost-crc/CONTROL @@ -1,5 +1,5 @@ # Automatically generated by boost-vcpkg-helpers/generate-ports.ps1 Source: boost-crc -Version: 1.66.0 +Version: 1.67.0 Build-Depends: boost-compatibility, boost-config, boost-integer, boost-vcpkg-helpers Description: Boost crc module diff --git a/ports/boost-crc/portfile.cmake b/ports/boost-crc/portfile.cmake index 435ec9ad5..a045eedee 100644 --- a/ports/boost-crc/portfile.cmake +++ b/ports/boost-crc/portfile.cmake @@ -5,8 +5,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO boostorg/crc - REF boost-1.66.0 - SHA512 887a1ee59535f150a6166432e8b9fdd124d604363c3609f9958d25ce3f265c42f1d749b52075d4e617acf552f68a56d92d249f562ad6475b53b15ca364e4e5b4 + REF boost-1.67.0 + SHA512 9168aed67125e955abd8e689bbbcb780adc16345447e1b781344b13d66827ab24ad2af038e10153c64bc458b66cf2cfe2961ddb22a3c494a86429dab60349a18 HEAD_REF master ) diff --git a/ports/boost-date-time/CONTROL b/ports/boost-date-time/CONTROL index 6814dc0e1..89af5c17e 100644 --- a/ports/boost-date-time/CONTROL +++ b/ports/boost-date-time/CONTROL @@ -1,5 +1,5 @@ # Automatically generated by boost-vcpkg-helpers/generate-ports.ps1 Source: boost-date-time -Version: 1.66.0 -Build-Depends: boost-algorithm, boost-assert, boost-build, boost-compatibility, boost-config, boost-detail, boost-integer, boost-io, boost-lexical-cast, boost-math, boost-modular-build-helper, boost-mpl, boost-range, boost-smart-ptr, boost-static-assert, boost-throw-exception, boost-tokenizer, boost-type-traits, boost-utility, boost-vcpkg-helpers, boost-winapi +Version: 1.67.0 +Build-Depends: boost-algorithm, boost-assert, boost-build, boost-compatibility, boost-config, boost-core, boost-detail, boost-integer, boost-io, boost-lexical-cast, boost-math, boost-modular-build-helper, boost-mpl, boost-numeric-conversion, boost-range, boost-smart-ptr, boost-static-assert, boost-throw-exception, boost-tokenizer, boost-type-traits, boost-utility, boost-vcpkg-helpers, boost-winapi Description: Boost date_time module diff --git a/ports/boost-date-time/portfile.cmake b/ports/boost-date-time/portfile.cmake index a171018c4..fd5ce947d 100644 --- a/ports/boost-date-time/portfile.cmake +++ b/ports/boost-date-time/portfile.cmake @@ -5,8 +5,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO boostorg/date_time - REF boost-1.66.0 - SHA512 5c8ddf94d1c5a0bc5c216c9cbb4560a2e0aa7b116966a9a9250a517fb4c83f2fb9ad0c37c65f65e8cad2c7f21f621d696e1efd6d2bd557c1bfaa8b9d8c566f7d + REF boost-1.67.0 + SHA512 e164bc45bb7e4836521b31cb75a0fa3e960d0bdd0c7dabc4f8f457056c54b54bbd06f44a934aa5c7f2ee680f2f994b9fba47a0e460287c8e2d22b49450fc0872 HEAD_REF master ) diff --git a/ports/boost-detail/CONTROL b/ports/boost-detail/CONTROL index 21ae5d726..ab5e1efd3 100644 --- a/ports/boost-detail/CONTROL +++ b/ports/boost-detail/CONTROL @@ -1,5 +1,5 @@ # Automatically generated by boost-vcpkg-helpers/generate-ports.ps1 Source: boost-detail -Version: 1.66.0 +Version: 1.67.0 Build-Depends: boost-compatibility, boost-config, boost-vcpkg-helpers Description: Boost detail module diff --git a/ports/boost-detail/portfile.cmake b/ports/boost-detail/portfile.cmake index eec646472..93fe10eb1 100644 --- a/ports/boost-detail/portfile.cmake +++ b/ports/boost-detail/portfile.cmake @@ -5,8 +5,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO boostorg/detail - REF boost-1.66.0 - SHA512 9ad69f2d032535207748680e635b5c5cfeb2921f67f6d711d5083fd67686f63476fa04c03e0abf63bc58405b4a38b542686192398930154df716ea9381c7a43f + REF boost-1.67.0 + SHA512 3746e61719cee4e7307677633edf170f8824b8fbd9aa7f159c9ff1feac662fc73f9a4bbe06fad9d9c5fbe356d6ec398d53223ddb7d85c01f906fe698f217f8b4 HEAD_REF master ) diff --git a/ports/boost-disjoint-sets/CONTROL b/ports/boost-disjoint-sets/CONTROL index 7ab636e2d..a3ea6717d 100644 --- a/ports/boost-disjoint-sets/CONTROL +++ b/ports/boost-disjoint-sets/CONTROL @@ -1,5 +1,5 @@ # Automatically generated by boost-vcpkg-helpers/generate-ports.ps1 Source: boost-disjoint-sets -Version: 1.66.0 +Version: 1.67.0 Build-Depends: boost-graph, boost-vcpkg-helpers Description: Boost disjoint_sets module diff --git a/ports/boost-disjoint-sets/portfile.cmake b/ports/boost-disjoint-sets/portfile.cmake index 223339e95..8115c4d8b 100644 --- a/ports/boost-disjoint-sets/portfile.cmake +++ b/ports/boost-disjoint-sets/portfile.cmake @@ -5,8 +5,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO boostorg/disjoint_sets - REF boost-1.66.0 - SHA512 608239f39a11995ebd930d250a39c92971b6547b853eabe49938f6bbdadfbdb4f2220ccaf98e3516fe817284dc310dfb579f6fd7ae082dda9e7a5f80ce53abe6 + REF boost-1.67.0 + SHA512 cc792b79935983656b40785520e3eef9b578a69fcc3c54b3ba24d60a8a36fccc86722dfc4ea621aec727d6c73b22586dbd38f253293dc46730cc418f6832bc33 HEAD_REF master ) diff --git a/ports/boost-dll/CONTROL b/ports/boost-dll/CONTROL index cfb7e5e6e..f5b9f1b63 100644 --- a/ports/boost-dll/CONTROL +++ b/ports/boost-dll/CONTROL @@ -1,5 +1,5 @@ # Automatically generated by boost-vcpkg-helpers/generate-ports.ps1 Source: boost-dll -Version: 1.66.0 -Build-Depends: boost-config, boost-core, boost-filesystem (!uwp), boost-integer, boost-move, boost-mpl, boost-predef, boost-smart-ptr, boost-spirit, boost-static-assert, boost-system, boost-throw-exception, boost-type-index, boost-type-traits, boost-utility, boost-vcpkg-helpers, boost-winapi +Version: 1.67.0 +Build-Depends: boost-config, boost-core, boost-filesystem (!uwp), boost-integer, boost-move, boost-mpl, boost-predef, boost-smart-ptr, boost-spirit, boost-static-assert, boost-system, boost-throw-exception, boost-type-index, boost-type-traits, boost-vcpkg-helpers, boost-winapi Description: Boost dll module diff --git a/ports/boost-dll/portfile.cmake b/ports/boost-dll/portfile.cmake index 063b979f5..51ce40f96 100644 --- a/ports/boost-dll/portfile.cmake +++ b/ports/boost-dll/portfile.cmake @@ -5,8 +5,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO boostorg/dll - REF boost-1.66.0 - SHA512 42e4442fbf50f33528e389ca463042c9155df970a7725a6d10213e3a8c311b638006271d1b5691e0ccdeb71652034568b2b5fa299a5b1580ad4433db0371138a + REF boost-1.67.0 + SHA512 bf8bb5e422abd2cded6aa1181570db487f2db786ce8261ed1816eae7e6a8386795f91d8c5ded981a691c19d82a5bffb2aabfe6f5c95ceccc6e22de35c854b21c HEAD_REF master ) diff --git a/ports/boost-dynamic-bitset/CONTROL b/ports/boost-dynamic-bitset/CONTROL index 1170b0099..7910a4010 100644 --- a/ports/boost-dynamic-bitset/CONTROL +++ b/ports/boost-dynamic-bitset/CONTROL @@ -1,5 +1,5 @@ # Automatically generated by boost-vcpkg-helpers/generate-ports.ps1 Source: boost-dynamic-bitset -Version: 1.66.0 +Version: 1.67.0 Build-Depends: boost-serialization, boost-vcpkg-helpers Description: Boost dynamic_bitset module diff --git a/ports/boost-dynamic-bitset/portfile.cmake b/ports/boost-dynamic-bitset/portfile.cmake index 414f7b304..a612a4a7e 100644 --- a/ports/boost-dynamic-bitset/portfile.cmake +++ b/ports/boost-dynamic-bitset/portfile.cmake @@ -5,8 +5,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO boostorg/dynamic_bitset - REF boost-1.66.0 - SHA512 fa9bc10bbcd7ea907acf11abfd245fa70e4d82e5f7fe5b295b65e404ed19b276c06cd68ccec36a2276e76985a20c2a788c99e8cee095f24c04d0c8c5f5952135 + REF boost-1.67.0 + SHA512 242c7f79a50c98357017bfd09a3d2b27b2a9f1f8e12518eb497bd684ac9cf2dd6afdffb417a135a3648e40f4efb10c0f45703cff302212b8bdcf35ab1428955f HEAD_REF master ) diff --git a/ports/boost-endian/CONTROL b/ports/boost-endian/CONTROL index cfcb7cb52..80aff90ad 100644 --- a/ports/boost-endian/CONTROL +++ b/ports/boost-endian/CONTROL @@ -1,5 +1,5 @@ # Automatically generated by boost-vcpkg-helpers/generate-ports.ps1 Source: boost-endian -Version: 1.66.0 +Version: 1.67.0 Build-Depends: boost-assert, boost-config, boost-core, boost-integer, boost-predef, boost-static-assert, boost-system, boost-type-traits, boost-utility, boost-vcpkg-helpers Description: Boost endian module diff --git a/ports/boost-endian/portfile.cmake b/ports/boost-endian/portfile.cmake index 911d90971..18ff7dfaa 100644 --- a/ports/boost-endian/portfile.cmake +++ b/ports/boost-endian/portfile.cmake @@ -5,8 +5,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO boostorg/endian - REF boost-1.66.0 - SHA512 5b23ff8f2fd2f59dc56637bef628328e8b99e261ce421809363cdfeb203646667f10b624b114e8e70d1fdfce0d53055dd03376d21ef4b5cba0f51b600091f2f3 + REF boost-1.67.0 + SHA512 198cb5eb9b9f9a4ca6bd069c79f9222e748248d7f7f8231ab9b288334f3f77c37b398abc5d097463a4ce69b4f0de209f247d5f15b1ccdd0fcbf036009ddd73ad HEAD_REF master ) diff --git a/ports/boost-exception/CONTROL b/ports/boost-exception/CONTROL index 2f807d992..0a64b7cb9 100644 --- a/ports/boost-exception/CONTROL +++ b/ports/boost-exception/CONTROL @@ -1,5 +1,5 @@ # Automatically generated by boost-vcpkg-helpers/generate-ports.ps1 Source: boost-exception -Version: 1.66.0 +Version: 1.67.0 Build-Depends: boost-assert, boost-build, boost-config, boost-core, boost-modular-build-helper, boost-smart-ptr, boost-tuple, boost-type-traits, boost-utility, boost-vcpkg-helpers Description: Boost exception module diff --git a/ports/boost-exception/portfile.cmake b/ports/boost-exception/portfile.cmake index eda3644a7..19c6c2058 100644 --- a/ports/boost-exception/portfile.cmake +++ b/ports/boost-exception/portfile.cmake @@ -5,8 +5,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO boostorg/exception - REF boost-1.66.0 - SHA512 ab4bd5df7250847c866e5b6db99930d190c04b2c2a46e49eb62e9ed9467b6f5aa60aa2db87e9fe27145321bf429a23e94a83bb28ea9f574d01b02ea06dd89571 + REF boost-1.67.0 + SHA512 b5b27177ea5e434b7d8898b281a43ad1e74b02ce80b9cc184b34bebc3d43e39fe72b84003096f320b2fade1d0cfaa0a56d0a228fd96782cdd32c2fb143b78ae2 HEAD_REF master ) diff --git a/ports/boost-fiber/CONTROL b/ports/boost-fiber/CONTROL index a3b230904..1e200489f 100644 --- a/ports/boost-fiber/CONTROL +++ b/ports/boost-fiber/CONTROL @@ -1,5 +1,5 @@ # Automatically generated by boost-vcpkg-helpers/generate-ports.ps1 Source: boost-fiber -Version: 1.66.0 +Version: 1.67.0 Build-Depends: boost-algorithm, boost-assert, boost-build, boost-config, boost-context (!uwp), boost-core, boost-detail, boost-filesystem (!uwp), boost-format, boost-intrusive, boost-modular-build-helper, boost-predef, boost-smart-ptr, boost-vcpkg-helpers Description: Boost fiber module diff --git a/ports/boost-fiber/portfile.cmake b/ports/boost-fiber/portfile.cmake index ef8751a53..244192dca 100644 --- a/ports/boost-fiber/portfile.cmake +++ b/ports/boost-fiber/portfile.cmake @@ -5,11 +5,16 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO boostorg/fiber - REF boost-1.66.0 - SHA512 ba3980846e6602999a2187fb40c9c17d0bd0a8b7681bcdb2c9695ec5e218b6306c52680b565e176f170a7219aedf86596e356e92612bee87bf1ad8123261ccaf + REF boost-1.67.0 + SHA512 2f29021b781a853fb0b00cb7a6e0a541f17d71af4f33e9a47fd875e06d3073e703dfba5cdc7a349b735a1083eff5039ebb227204f7e56f4ad949cafc485095b0 HEAD_REF master ) +file(READ "${SOURCE_PATH}/build/Jamfile.v2" _contents) +string(REPLACE "import ../../config/checks/config" "import config/checks/config" _contents "${_contents}") +file(WRITE "${SOURCE_PATH}/build/Jamfile.v2" "${_contents}") +file(COPY "${CURRENT_INSTALLED_DIR}/share/boost-config/checks" DESTINATION "${SOURCE_PATH}/build/config") + include(${CURRENT_INSTALLED_DIR}/share/boost-build/boost-modular-build.cmake) boost_modular_build(SOURCE_PATH ${SOURCE_PATH}) include(${CURRENT_INSTALLED_DIR}/share/boost-vcpkg-helpers/boost-modular-headers.cmake) diff --git a/ports/boost-filesystem/CONTROL b/ports/boost-filesystem/CONTROL index d50e6a177..503a4af37 100644 --- a/ports/boost-filesystem/CONTROL +++ b/ports/boost-filesystem/CONTROL @@ -1,5 +1,5 @@ # Automatically generated by boost-vcpkg-helpers/generate-ports.ps1 Source: boost-filesystem -Version: 1.66.0 +Version: 1.67.0 Build-Depends: boost-assert, boost-build, boost-config, boost-detail, boost-functional, boost-integer, boost-io, boost-iterator, boost-modular-build-helper, boost-range, boost-smart-ptr, boost-static-assert, boost-system, boost-type-traits, boost-utility, boost-vcpkg-helpers Description: Boost filesystem module diff --git a/ports/boost-filesystem/portfile.cmake b/ports/boost-filesystem/portfile.cmake index 5a964b7a1..c80609e37 100644 --- a/ports/boost-filesystem/portfile.cmake +++ b/ports/boost-filesystem/portfile.cmake @@ -5,8 +5,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO boostorg/filesystem - REF boost-1.66.0 - SHA512 16c6c692485e02515fc09da5672cad4eb3c313e3a9ed9854d52ad1ba97a38d7346e4d0cf70baacba8468628bc1348350404151c3ff8984397a819d2cde3e4974 + REF boost-1.67.0 + SHA512 a81dbf5dcf1b7bde572b02276ee25f78c5673d64aee8b5f864e6b2e04f29cdbf8ecd469b1f039bcda3b490372d3387121a896bf7faf30f767f63c107a1cf581d HEAD_REF master ) diff --git a/ports/boost-flyweight/CONTROL b/ports/boost-flyweight/CONTROL index fb4378501..49feb377c 100644 --- a/ports/boost-flyweight/CONTROL +++ b/ports/boost-flyweight/CONTROL @@ -1,5 +1,5 @@ # Automatically generated by boost-vcpkg-helpers/generate-ports.ps1 Source: boost-flyweight -Version: 1.66.0 +Version: 1.67.0 Build-Depends: boost-assert, boost-config, boost-core, boost-detail, boost-functional, boost-interprocess, boost-mpl, boost-multi-index, boost-parameter, boost-preprocessor, boost-serialization, boost-throw-exception, boost-type-traits, boost-utility, boost-vcpkg-helpers Description: Boost flyweight module diff --git a/ports/boost-flyweight/portfile.cmake b/ports/boost-flyweight/portfile.cmake index 25c0f65f5..ab0e36ed3 100644 --- a/ports/boost-flyweight/portfile.cmake +++ b/ports/boost-flyweight/portfile.cmake @@ -5,8 +5,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO boostorg/flyweight - REF boost-1.66.0 - SHA512 4c0faaafe0143404d6eabc57ee5089840290c865ab00b7b3c81d4ab37c1603aaec77bc7f592e4566ed20786a14bc6bb9a6623384fdf6886168cac2696224c6df + REF boost-1.67.0 + SHA512 eec64c8c0d473e6bb07968c8cb2dd9c12788a72008d59c8b53b14ea15ada18e740c518df6bcece1cecd13f9511898c69e00693a769404d4e51e2f7efb6c00754 HEAD_REF master ) diff --git a/ports/boost-foreach/CONTROL b/ports/boost-foreach/CONTROL index e2ecd2aae..72cc98a56 100644 --- a/ports/boost-foreach/CONTROL +++ b/ports/boost-foreach/CONTROL @@ -1,5 +1,5 @@ # Automatically generated by boost-vcpkg-helpers/generate-ports.ps1 Source: boost-foreach -Version: 1.66.0 +Version: 1.67.0 Build-Depends: boost-config, boost-core, boost-detail, boost-iterator, boost-mpl, boost-range, boost-type-traits, boost-utility, boost-vcpkg-helpers Description: Boost foreach module diff --git a/ports/boost-foreach/portfile.cmake b/ports/boost-foreach/portfile.cmake index 21c688318..59977a213 100644 --- a/ports/boost-foreach/portfile.cmake +++ b/ports/boost-foreach/portfile.cmake @@ -5,8 +5,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO boostorg/foreach - REF boost-1.66.0 - SHA512 17ae42db9b9b13841133cb35ccd1b0a2bf6121e72ef53b7f06d8715d0ef2d9c6daee631df1c8eb87013b1415ec4ed7481b3d67aa86122c84bfc560b0815f81c6 + REF boost-1.67.0 + SHA512 67cce17f58564a1ab09f85f9da3c73135dab2171be9487723e69d1bf10cb1abef2aae3747d39ca605510505510943a114d7637d49dd5f3b097c191b4993052b5 HEAD_REF master ) diff --git a/ports/boost-format/CONTROL b/ports/boost-format/CONTROL index 264544399..0b8cf858d 100644 --- a/ports/boost-format/CONTROL +++ b/ports/boost-format/CONTROL @@ -1,5 +1,5 @@ # Automatically generated by boost-vcpkg-helpers/generate-ports.ps1 Source: boost-format -Version: 1.66.0 +Version: 1.67.0 Build-Depends: boost-assert, boost-compatibility, boost-config, boost-core, boost-detail, boost-optional, boost-smart-ptr, boost-throw-exception, boost-utility, boost-vcpkg-helpers Description: Boost format module diff --git a/ports/boost-format/portfile.cmake b/ports/boost-format/portfile.cmake index a80e1c7e6..d88559d64 100644 --- a/ports/boost-format/portfile.cmake +++ b/ports/boost-format/portfile.cmake @@ -5,8 +5,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO boostorg/format - REF boost-1.66.0 - SHA512 f730b56c3c56e85d5f467b7c9b60b29b112990ac29ecfbd6cdcd41ac6c931b71067a88d35ba688c8b80b9f4636a5f6010448f470cd3c0c7cad7c8c1d933c1a67 + REF boost-1.67.0 + SHA512 31d355d0986f18f32373a45ee6a5d4d8f688dcc3bd13fdf388dd77166459871deb33bc7ecc9dbbc46fcf546ba3ed8a475c5f4fdcf6377af320ec18d15a9a35d4 HEAD_REF master ) diff --git a/ports/boost-function-types/CONTROL b/ports/boost-function-types/CONTROL index a091f72c4..bad8d7e56 100644 --- a/ports/boost-function-types/CONTROL +++ b/ports/boost-function-types/CONTROL @@ -1,5 +1,5 @@ # Automatically generated by boost-vcpkg-helpers/generate-ports.ps1 Source: boost-function-types -Version: 1.66.0 +Version: 1.67.0 Build-Depends: boost-config, boost-core, boost-detail, boost-mpl, boost-preprocessor, boost-type-traits, boost-vcpkg-helpers Description: Boost function_types module diff --git a/ports/boost-function-types/portfile.cmake b/ports/boost-function-types/portfile.cmake index 2a679a25a..ee327ef33 100644 --- a/ports/boost-function-types/portfile.cmake +++ b/ports/boost-function-types/portfile.cmake @@ -5,8 +5,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO boostorg/function_types - REF boost-1.66.0 - SHA512 ecac32195728a38bb83ee553d25567bca3a4075948fbffdf2f5d6cd7c4df7ca1b90ed32ec2811e6aa7eea264d6a1e63c8fc2fc9a091d081e231aadb513ed1646 + REF boost-1.67.0 + SHA512 843c87d527615c70524cd537252619187aa8088aa5e7f46bffa7d1bd75ba8852901ee89a15490ea90b0be331712d0e8b4db369f9aede83c150b7201b430f0adc HEAD_REF master ) diff --git a/ports/boost-function/CONTROL b/ports/boost-function/CONTROL index 78e68d4a9..c9b474fd9 100644 --- a/ports/boost-function/CONTROL +++ b/ports/boost-function/CONTROL @@ -1,5 +1,5 @@ # Automatically generated by boost-vcpkg-helpers/generate-ports.ps1 Source: boost-function -Version: 1.66.0 +Version: 1.67.0 Build-Depends: boost-assert, boost-config, boost-core, boost-detail, boost-integer, boost-mpl, boost-preprocessor, boost-type-index, boost-typeof, boost-type-traits, boost-vcpkg-helpers Description: Boost function module diff --git a/ports/boost-function/portfile.cmake b/ports/boost-function/portfile.cmake index decf00686..b8c0a6841 100644 --- a/ports/boost-function/portfile.cmake +++ b/ports/boost-function/portfile.cmake @@ -5,8 +5,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO boostorg/function - REF boost-1.66.0 - SHA512 7efe61484e99bf4b68bd70415411fe4b22da6c76c7bb2e4b86fc766a98f5bca02d3911c81763893edfabfe6dc3fd4e0b125656a518e4b46449ef2620c1278454 + REF boost-1.67.0 + SHA512 8484b7bcab099a0c96dc021a0a33551ecb0b56fee4bbc6c5a43becc0a82f307f3836204857bfc45aa2db255c7faf61831e8a46f537ebf9bd5730a408c7103c7c HEAD_REF master ) diff --git a/ports/boost-functional/CONTROL b/ports/boost-functional/CONTROL index 1c5b17ccd..7b5b90be4 100644 --- a/ports/boost-functional/CONTROL +++ b/ports/boost-functional/CONTROL @@ -1,5 +1,5 @@ # Automatically generated by boost-vcpkg-helpers/generate-ports.ps1 Source: boost-functional -Version: 1.66.0 -Build-Depends: boost-assert, boost-compatibility, boost-config, boost-detail, boost-integer, boost-mpl, boost-preprocessor, boost-static-assert, boost-typeof, boost-type-traits, boost-utility, boost-vcpkg-helpers +Version: 1.67.0 +Build-Depends: boost-config, boost-mpl, boost-typeof, boost-type-traits, boost-utility, boost-vcpkg-helpers Description: Boost functional module diff --git a/ports/boost-functional/portfile.cmake b/ports/boost-functional/portfile.cmake index 5de067de4..89ac3b17a 100644 --- a/ports/boost-functional/portfile.cmake +++ b/ports/boost-functional/portfile.cmake @@ -5,8 +5,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO boostorg/functional - REF boost-1.66.0 - SHA512 d909a4d4696ece5ebaff97a743c5f9fec2ce27b72de46a96252a07a021ad689ce73aab1f1828ca2925bac0ef48ccbe99bdd5f6a56186061fdecdb416f72cc98f + REF boost-1.67.0 + SHA512 05f8149975166b68a32e0e98b08b91e41b19d2304416afd62dfceaabf76323ee4b711aedc0e5379520d9e4decaeead1e6b8121737732f524d31664a3777670ba HEAD_REF master ) diff --git a/ports/boost-fusion/CONTROL b/ports/boost-fusion/CONTROL index 29864c681..62c087b14 100644 --- a/ports/boost-fusion/CONTROL +++ b/ports/boost-fusion/CONTROL @@ -1,5 +1,5 @@ # Automatically generated by boost-vcpkg-helpers/generate-ports.ps1 Source: boost-fusion -Version: 1.66.0 +Version: 1.67.0 Build-Depends: boost-config, boost-core, boost-detail, boost-functional, boost-function-types, boost-mpl, boost-preprocessor, boost-static-assert, boost-tuple, boost-typeof, boost-type-traits, boost-utility, boost-vcpkg-helpers Description: Boost fusion module diff --git a/ports/boost-fusion/portfile.cmake b/ports/boost-fusion/portfile.cmake index 3923f82bc..164c4f70d 100644 --- a/ports/boost-fusion/portfile.cmake +++ b/ports/boost-fusion/portfile.cmake @@ -5,8 +5,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO boostorg/fusion - REF boost-1.66.0 - SHA512 2c965b3ad18f4b2551af4595de415c3c1354296c1244675a354b74de12106bf10ddea07c7e55e93469f3af0de64cb00e1d353e569af40de506d68b88adeba7d0 + REF boost-1.67.0 + SHA512 2ac1af4f1a9aa9b90fb7057a8133e668207225a46e23c5ec1e65020b8a63c6daeabbf799f0b7aa9946fc5f9dded1003e00c68645363fa9e15014f2af7ea1498b HEAD_REF master ) diff --git a/ports/boost-geometry/CONTROL b/ports/boost-geometry/CONTROL index 009e7e1c1..52879d024 100644 --- a/ports/boost-geometry/CONTROL +++ b/ports/boost-geometry/CONTROL @@ -1,5 +1,5 @@ # Automatically generated by boost-vcpkg-helpers/generate-ports.ps1 Source: boost-geometry -Version: 1.66.0 +Version: 1.67.0 Build-Depends: boost-algorithm, boost-array, boost-assert, boost-concept-check, boost-config, boost-container, boost-core, boost-detail, boost-function-types, boost-fusion, boost-integer, boost-iterator, boost-lexical-cast, boost-math, boost-move, boost-mpl, boost-multiprecision, boost-numeric-conversion, boost-polygon, boost-qvm, boost-range, boost-rational, boost-serialization, boost-smart-ptr, boost-static-assert, boost-throw-exception, boost-tokenizer, boost-tuple, boost-type-traits, boost-utility, boost-variant, boost-vcpkg-helpers Description: Boost geometry module diff --git a/ports/boost-geometry/portfile.cmake b/ports/boost-geometry/portfile.cmake index c2f1d20ab..9b63741e9 100644 --- a/ports/boost-geometry/portfile.cmake +++ b/ports/boost-geometry/portfile.cmake @@ -5,8 +5,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO boostorg/geometry - REF boost-1.66.0 - SHA512 05f983d9258ddc663139a46ecb2f8a14988ad74fcc623af713bc486de2c9241896ca5f6a85d47cd02911f5f1f2f5acc439bb6f45ae9ef13667a30d27d9b5c123 + REF boost-1.67.0 + SHA512 25a2a758804597054442747f9a3288989aee92e42212b1837562d3c629aa1ed0c210e86cb83f4501f7e4280550b194a727ef26ed222ef627a8d260549781bcd3 HEAD_REF master ) diff --git a/ports/boost-gil/CONTROL b/ports/boost-gil/CONTROL index 71bf438b8..94770b5ee 100644 --- a/ports/boost-gil/CONTROL +++ b/ports/boost-gil/CONTROL @@ -1,5 +1,5 @@ # Automatically generated by boost-vcpkg-helpers/generate-ports.ps1 Source: boost-gil -Version: 1.66.0 +Version: 1.67.0 Build-Depends: boost-bind, boost-concept-check, boost-config, boost-integer, boost-iterator, boost-mpl, boost-preprocessor, boost-smart-ptr, boost-static-assert, boost-type-traits, boost-utility, boost-vcpkg-helpers Description: Boost gil module diff --git a/ports/boost-gil/portfile.cmake b/ports/boost-gil/portfile.cmake index deb977a20..94e470ac9 100644 --- a/ports/boost-gil/portfile.cmake +++ b/ports/boost-gil/portfile.cmake @@ -5,8 +5,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO boostorg/gil - REF boost-1.66.0 - SHA512 f60c452740e56810ee967aab68b61277af0b467085bb7594dfbdea07e02354f2533983f88867c788862bc30c027720f8aeff2ab8f5a251c1a2b7c686b43064bc + REF boost-1.67.0 + SHA512 a40b89a97444d62ed1c6ba2c4ccf6442df9d8afddd7a9af8eacb0a587eb2952faabbd608ebd17030c10a3ce77f32dc6d4bed846fa78a0f57f4b992c0333a2d33 HEAD_REF master ) diff --git a/ports/boost-graph-parallel/CONTROL b/ports/boost-graph-parallel/CONTROL index 13f28ffd5..e7435bd2a 100644 --- a/ports/boost-graph-parallel/CONTROL +++ b/ports/boost-graph-parallel/CONTROL @@ -1,5 +1,5 @@ # Automatically generated by boost-vcpkg-helpers/generate-ports.ps1 Source: boost-graph-parallel -Version: 1.66.0 +Version: 1.67.0 Build-Depends: boost-assert, boost-compatibility, boost-config, boost-detail, boost-dynamic-bitset, boost-function, boost-functional, boost-graph, boost-iterator, boost-lexical-cast, boost-math, boost-mpl, boost-optional, boost-property-map, boost-random, boost-serialization, boost-smart-ptr, boost-static-assert, boost-tuple, boost-type-traits, boost-utility, boost-variant, boost-vcpkg-helpers Description: Boost graph_parallel module diff --git a/ports/boost-graph-parallel/portfile.cmake b/ports/boost-graph-parallel/portfile.cmake index 32e083f05..71b44bef2 100644 --- a/ports/boost-graph-parallel/portfile.cmake +++ b/ports/boost-graph-parallel/portfile.cmake @@ -5,8 +5,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO boostorg/graph_parallel - REF boost-1.66.0 - SHA512 0f897d52610827b352c509d9d3400a9424f2e927fe5bce7ba1a39884938ca9ae1c9d362277828d3e77fa727676bfeb993f3d9bc7f11815cc119c0dabbd5a2ed4 + REF boost-1.67.0 + SHA512 f83c9bfb65c519e545657bd2e2752b37ce45d5e21877dd8a8fc36c895c5612cf0284508188be6b46719a5a5b771d5ad1e0fcb00a3082f7f9c5fb0788f2b9d560 HEAD_REF master ) diff --git a/ports/boost-graph/CONTROL b/ports/boost-graph/CONTROL index a7dd22633..a3345ffa0 100644 --- a/ports/boost-graph/CONTROL +++ b/ports/boost-graph/CONTROL @@ -1,5 +1,5 @@ # Automatically generated by boost-vcpkg-helpers/generate-ports.ps1 Source: boost-graph -Version: 1.66.0 +Version: 1.67.0 Build-Depends: boost-algorithm, boost-any, boost-array, boost-assert, boost-bimap, boost-bind, boost-build, boost-compatibility, boost-concept-check, boost-config, boost-conversion, boost-core, boost-detail, boost-foreach, boost-function, boost-functional, boost-integer, boost-iterator, boost-lexical-cast, boost-math, boost-modular-build-helper, boost-move, boost-mpl, boost-multi-index, boost-optional, boost-parameter, boost-preprocessor, boost-property-map, boost-property-tree, boost-random, boost-range, boost-regex, boost-serialization, boost-smart-ptr, boost-spirit, boost-static-assert, boost-test (!uwp), boost-throw-exception, boost-tti, boost-tuple, boost-typeof, boost-type-traits, boost-unordered, boost-utility, boost-vcpkg-helpers, boost-xpressive Description: Boost graph module diff --git a/ports/boost-graph/portfile.cmake b/ports/boost-graph/portfile.cmake index 21670d647..75048b8b6 100644 --- a/ports/boost-graph/portfile.cmake +++ b/ports/boost-graph/portfile.cmake @@ -5,8 +5,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO boostorg/graph - REF boost-1.66.0 - SHA512 49f0292a4cbb26c4f9ada0e85f717a7848a81812957b891f72e99c9b7a62025bce244a2f7ef56aaf42f44ab11c41a02be4f1f70df41d3605da45becf370ca81b + REF boost-1.67.0 + SHA512 afcfa95744da4f4ceefced30601d64a40fa600e3d41311f6140588d8a23e54fcb05226c381fcef0b8b992d61b95a915c867e50221c5290b6c54b915546b3935e HEAD_REF master ) diff --git a/ports/boost-hana/CONTROL b/ports/boost-hana/CONTROL index 9c9524e01..0cdc62ad6 100644 --- a/ports/boost-hana/CONTROL +++ b/ports/boost-hana/CONTROL @@ -1,5 +1,5 @@ # Automatically generated by boost-vcpkg-helpers/generate-ports.ps1 Source: boost-hana -Version: 1.66.0 +Version: 1.67.0 Build-Depends: boost-config, boost-core, boost-fusion, boost-mpl, boost-tuple, boost-vcpkg-helpers Description: Boost hana module diff --git a/ports/boost-hana/portfile.cmake b/ports/boost-hana/portfile.cmake index 05ce047aa..5a48a4e9e 100644 --- a/ports/boost-hana/portfile.cmake +++ b/ports/boost-hana/portfile.cmake @@ -5,8 +5,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO boostorg/hana - REF boost-1.66.0 - SHA512 cf105931ad59147edd97aaee29d9af4f069ada58c1c0f49eba7c3f921c5a412c90609853603504207526cf80c728f188ba4ee024fc2b7c8c924f98faf543167a + REF boost-1.67.0 + SHA512 45e8b9da8c09bd6cb74f52068f0e4af43f40126227ad5c557e111c8edce2e8857f5a11c6ecc6c57833041a38d9355a7c0263f9b84cc335725c994a9cb029411b HEAD_REF master ) diff --git a/ports/boost-heap/CONTROL b/ports/boost-heap/CONTROL index 588ee634c..5724d68e8 100644 --- a/ports/boost-heap/CONTROL +++ b/ports/boost-heap/CONTROL @@ -1,5 +1,5 @@ # Automatically generated by boost-vcpkg-helpers/generate-ports.ps1 Source: boost-heap -Version: 1.66.0 +Version: 1.67.0 Build-Depends: boost-array, boost-assert, boost-bind, boost-concept-check, boost-integer, boost-intrusive, boost-iterator, boost-mpl, boost-parameter, boost-static-assert, boost-throw-exception, boost-type-traits, boost-vcpkg-helpers Description: Boost heap module diff --git a/ports/boost-heap/portfile.cmake b/ports/boost-heap/portfile.cmake index 02a25bab9..bdccbce0d 100644 --- a/ports/boost-heap/portfile.cmake +++ b/ports/boost-heap/portfile.cmake @@ -5,8 +5,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO boostorg/heap - REF boost-1.66.0 - SHA512 3c7f14860e6456144f1282024bdf8c99415fe2c9395a01dea9000b26e9587430a73e133e7c72f3d40b5eab9c891e86ea3fa420a84e7d187a349f869f721b4587 + REF boost-1.67.0 + SHA512 e8c511c8e1cdf0f9f20cf5923657f5a6dff2348a50570b0590444764106030bb40d7efa6e2087818ca71a11bf5fe62642ea08a4a8d7b2b25051f68a46c383a6d HEAD_REF master ) diff --git a/ports/boost-hof/CONTROL b/ports/boost-hof/CONTROL new file mode 100644 index 000000000..886630ca5 --- /dev/null +++ b/ports/boost-hof/CONTROL @@ -0,0 +1,5 @@ +# Automatically generated by boost-vcpkg-helpers/generate-ports.ps1 +Source: boost-hof +Version: 1.67.0 +Build-Depends: boost-vcpkg-helpers +Description: Boost hof module diff --git a/ports/boost-hof/portfile.cmake b/ports/boost-hof/portfile.cmake new file mode 100644 index 000000000..59fc83381 --- /dev/null +++ b/ports/boost-hof/portfile.cmake @@ -0,0 +1,14 @@ +# Automatically generated by boost-vcpkg-helpers/generate-ports.ps1 + +include(vcpkg_common_functions) + +vcpkg_from_github( + OUT_SOURCE_PATH SOURCE_PATH + REPO boostorg/hof + REF boost-1.67.0 + SHA512 797240bb1a3ac0ed5335dd858db7816f7f07ce99794e5d7b16b08de82ae1d80e7de9f029673569d9f880cc616037299d50571ad7ffb94e30b2d7b08392b4d1c3 + HEAD_REF master +) + +include(${CURRENT_INSTALLED_DIR}/share/boost-vcpkg-helpers/boost-modular-headers.cmake) +boost_modular_headers(SOURCE_PATH ${SOURCE_PATH}) diff --git a/ports/boost-icl/CONTROL b/ports/boost-icl/CONTROL index d5d8aba74..2923589ef 100644 --- a/ports/boost-icl/CONTROL +++ b/ports/boost-icl/CONTROL @@ -1,5 +1,5 @@ # Automatically generated by boost-vcpkg-helpers/generate-ports.ps1 Source: boost-icl -Version: 1.66.0 +Version: 1.67.0 Build-Depends: boost-assert, boost-concept-check, boost-config, boost-date-time, boost-detail, boost-iterator, boost-move, boost-mpl, boost-rational, boost-static-assert, boost-type-traits, boost-utility, boost-vcpkg-helpers Description: Boost icl module diff --git a/ports/boost-icl/portfile.cmake b/ports/boost-icl/portfile.cmake index 1f6bac41b..087769896 100644 --- a/ports/boost-icl/portfile.cmake +++ b/ports/boost-icl/portfile.cmake @@ -5,8 +5,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO boostorg/icl - REF boost-1.66.0 - SHA512 3e240adbc815215d58c45978a52cf9e5ee8df1b457634d53f403dfc7785372f1711e407d6b1ccd48f6e4383455a5dc2c5a35923b6ac9ae722b91094902b8a599 + REF boost-1.67.0 + SHA512 1234057200f4329631041a6c1bc644e3096cb24df3e3b3c19bddbe9915e2b2e27148640666befa61e165e6143f47f83280e3a89f84b70c93fa07e6ab38d7c854 HEAD_REF master ) diff --git a/ports/boost-integer/CONTROL b/ports/boost-integer/CONTROL index 6f6773b8c..adde53632 100644 --- a/ports/boost-integer/CONTROL +++ b/ports/boost-integer/CONTROL @@ -1,5 +1,5 @@ # Automatically generated by boost-vcpkg-helpers/generate-ports.ps1 Source: boost-integer -Version: 1.66.0 +Version: 1.67.0 Build-Depends: boost-assert, boost-compatibility, boost-config, boost-core, boost-detail, boost-static-assert, boost-vcpkg-helpers Description: Boost integer module diff --git a/ports/boost-integer/portfile.cmake b/ports/boost-integer/portfile.cmake index 4afba50e8..17bd4fbcb 100644 --- a/ports/boost-integer/portfile.cmake +++ b/ports/boost-integer/portfile.cmake @@ -5,8 +5,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO boostorg/integer - REF boost-1.66.0 - SHA512 ed22f30132300985361c3176b0e308c9ed2d0a2f470c3686898c66f90dfa21912edb92477f82f75b77b3409a21ea317442ab4d21889af45ebb2bc86bf88ce67f + REF boost-1.67.0 + SHA512 bac11eb68d0f0a29919df25e29352daca3f24ab4c183f2f052fbbe1e4c93ac15657b24f9bd450b31910b33c68234581e834d51651585bbba7e69b10646ab224f HEAD_REF master ) diff --git a/ports/boost-interprocess/CONTROL b/ports/boost-interprocess/CONTROL index 75d524e61..72f7f45a6 100644 --- a/ports/boost-interprocess/CONTROL +++ b/ports/boost-interprocess/CONTROL @@ -1,5 +1,5 @@ # Automatically generated by boost-vcpkg-helpers/generate-ports.ps1 Source: boost-interprocess -Version: 1.66.0 +Version: 1.67.0 Build-Depends: boost-assert, boost-compatibility, boost-config, boost-container, boost-core, boost-date-time, boost-detail, boost-integer, boost-intrusive, boost-move, boost-static-assert, boost-type-traits, boost-unordered, boost-utility, boost-vcpkg-helpers Description: Boost interprocess module diff --git a/ports/boost-interprocess/portfile.cmake b/ports/boost-interprocess/portfile.cmake index c10635499..b46d0dd91 100644 --- a/ports/boost-interprocess/portfile.cmake +++ b/ports/boost-interprocess/portfile.cmake @@ -5,8 +5,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO boostorg/interprocess - REF boost-1.66.0 - SHA512 e3c7f4fb49d126671354212fdb079c418847061a33589ab92c8cb600b469b98c658533307e1d0322c97568eb2716caccbf43b4b2d8eab520eab4d0f50b4df773 + REF boost-1.67.0 + SHA512 ea4ece14b396220549bd3887330cd4a49149f303c936c03e27e232683235f62f759f44f0a473e24d3466bbadfd785633589caacaf620f861cddf03750c270467 HEAD_REF master ) diff --git a/ports/boost-interval/CONTROL b/ports/boost-interval/CONTROL index cfd096adc..c9f43b7d1 100644 --- a/ports/boost-interval/CONTROL +++ b/ports/boost-interval/CONTROL @@ -1,5 +1,5 @@ # Automatically generated by boost-vcpkg-helpers/generate-ports.ps1 Source: boost-interval -Version: 1.66.0 +Version: 1.67.0 Build-Depends: boost-compatibility, boost-config, boost-logic (!uwp), boost-vcpkg-helpers Description: Boost interval module diff --git a/ports/boost-interval/portfile.cmake b/ports/boost-interval/portfile.cmake index 9fe190197..373fe4777 100644 --- a/ports/boost-interval/portfile.cmake +++ b/ports/boost-interval/portfile.cmake @@ -5,8 +5,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO boostorg/interval - REF boost-1.66.0 - SHA512 adc8e7cf75de4f07607b2a13f38c4bb442780e7ad2e5a73f831803101f61f3d93d8d26407d68b1f811309e9a1362613fd29b5ff49e013341d421b0e76d6f4a69 + REF boost-1.67.0 + SHA512 fb02438e6e29ab3ce21fbb87cd8562d278f9f352b3964cb7a62a6f0ea0b38567af5bfd12973cdd48c6235283b0b7b6ef9ecfd9c9a130b14c22a9764aec6c2102 HEAD_REF master ) diff --git a/ports/boost-intrusive/CONTROL b/ports/boost-intrusive/CONTROL index 966c775c3..d7d7ae3f0 100644 --- a/ports/boost-intrusive/CONTROL +++ b/ports/boost-intrusive/CONTROL @@ -1,5 +1,5 @@ # Automatically generated by boost-vcpkg-helpers/generate-ports.ps1 Source: boost-intrusive -Version: 1.66.0 +Version: 1.67.0 Build-Depends: boost-assert, boost-config, boost-core, boost-functional, boost-move, boost-static-assert, boost-vcpkg-helpers Description: Boost intrusive module diff --git a/ports/boost-intrusive/portfile.cmake b/ports/boost-intrusive/portfile.cmake index 2fc9fd32a..73f5d7673 100644 --- a/ports/boost-intrusive/portfile.cmake +++ b/ports/boost-intrusive/portfile.cmake @@ -5,8 +5,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO boostorg/intrusive - REF boost-1.66.0 - SHA512 b61e88d38c9ee6cd174380c53fc3422f72824c895b3723c4ac7b3b3e0bd52d52fe40d349db5f8eff3b23413950ae872fa7634514ac072111614875922580c493 + REF boost-1.67.0 + SHA512 9181b1c7ea651c4c8aa0ae226b2a35cb65521da105249b12af899e294ed1f20868002846a3f200b40d51c795c0a6e6b3b2b2f41ea59e817a842cb09aadcf9f9e HEAD_REF master ) diff --git a/ports/boost-io/CONTROL b/ports/boost-io/CONTROL index e146c12a6..26764cae4 100644 --- a/ports/boost-io/CONTROL +++ b/ports/boost-io/CONTROL @@ -1,5 +1,5 @@ # Automatically generated by boost-vcpkg-helpers/generate-ports.ps1 Source: boost-io -Version: 1.66.0 +Version: 1.67.0 Build-Depends: boost-detail, boost-vcpkg-helpers Description: Boost io module diff --git a/ports/boost-io/portfile.cmake b/ports/boost-io/portfile.cmake index 0991872ff..729e22175 100644 --- a/ports/boost-io/portfile.cmake +++ b/ports/boost-io/portfile.cmake @@ -5,8 +5,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO boostorg/io - REF boost-1.66.0 - SHA512 33926210420fa6bd83006e6d2de3bad4c1094c179309402d78aea906cdb301e652b32438472a29b195fac7e007146fbb081c722cc2ebf2c63acb0d0e44f73f20 + REF boost-1.67.0 + SHA512 a0549634a0d2afe1646437dab5b018a139f9e1b98fb3cb2a5730262700d64aa54a87a9676901ac192676fc5ee4b61aee11205f20acaa0da5746844ac292a913a HEAD_REF master ) diff --git a/ports/boost-iostreams/CMakeLists.txt b/ports/boost-iostreams/CMakeLists.txt new file mode 100644 index 000000000..17e0af6de --- /dev/null +++ b/ports/boost-iostreams/CMakeLists.txt @@ -0,0 +1,37 @@ +cmake_minimum_required(VERSION 3.5) +project(boost-iostreams) + +if(BUILD_SHARED_LIBS) + add_definitions(-DBOOST_IOSTREAMS_DYN_LINK=1) +endif() +add_definitions( + -DBOOST_ALL_NO_LIB=1 + -DBOOST_IOSTREAMS_USE_DEPRECATED +) +include_directories(include) +file(GLOB SOURCES src/*.cpp) +add_library(boost_iostreams ${SOURCES}) + +if(MSVC) + set_property(TARGET boost_iostreams PROPERTY OUTPUT_NAME_RELEASE boost_iostreams-vc140-mt) + set_property(TARGET boost_iostreams PROPERTY OUTPUT_NAME_DEBUG boost_iostreams-vc140-mt-gd) + + set_property(TARGET boost_iostreams PROPERTY RUNTIME_OUTPUT_NAME_RELEASE boost_iostreams-vc141-mt-x32-1_67) + set_property(TARGET boost_iostreams PROPERTY RUNTIME_OUTPUT_NAME_DEBUG boost_iostreams-vc141-mt-gd-x32-1_67) +endif() + +find_package(ZLIB REQUIRED) +target_link_libraries(boost_iostreams PRIVATE ZLIB::ZLIB) + +find_package(BZip2 REQUIRED) +target_link_libraries(boost_iostreams PRIVATE BZip2::BZip2) + +find_package(LibLZMA REQUIRED) +target_include_directories(boost_iostreams PRIVATE ${LIBLZMA_INCLUDE_DIRS}) +target_link_libraries(boost_iostreams PRIVATE ${LIBLZMA_LIBRARIES}) + +install(TARGETS boost_iostreams + RUNTIME DESTINATION bin + ARCHIVE DESTINATION lib + LIBRARY DESTINATION lib +) diff --git a/ports/boost-iostreams/CONTROL b/ports/boost-iostreams/CONTROL index d0d82f8b6..249031a5a 100644 --- a/ports/boost-iostreams/CONTROL +++ b/ports/boost-iostreams/CONTROL @@ -1,5 +1,5 @@ # Automatically generated by boost-vcpkg-helpers/generate-ports.ps1 Source: boost-iostreams -Version: 1.66.0 -Build-Depends: boost-assert, boost-bind, boost-build, boost-config, boost-core, boost-detail, boost-function, boost-integer, boost-iterator, boost-modular-build-helper, boost-mpl, boost-preprocessor, boost-range, boost-regex, boost-smart-ptr, boost-static-assert, boost-throw-exception, boost-type-traits, boost-utility, boost-vcpkg-helpers, bzip2, zlib +Version: 1.67.0 +Build-Depends: boost-assert, boost-bind, boost-build, boost-config, boost-core, boost-detail, boost-function, boost-integer, boost-iterator, boost-modular-build-helper, boost-mpl, boost-preprocessor, boost-range, boost-regex, boost-smart-ptr, boost-static-assert, boost-throw-exception, boost-type-traits, boost-utility, boost-vcpkg-helpers, bzip2, zlib, liblzma Description: Boost iostreams module diff --git a/ports/boost-iostreams/portfile.cmake b/ports/boost-iostreams/portfile.cmake index 782a7cb40..c929f9ed7 100644 --- a/ports/boost-iostreams/portfile.cmake +++ b/ports/boost-iostreams/portfile.cmake @@ -5,12 +5,26 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO boostorg/iostreams - REF boost-1.66.0 - SHA512 d2d603013dd952a550850c986fc18ded90a483d9eccd80aec4bb421187f6d8ba8fc2c82926f60d4e4f777c67eab1b8dc3708058147dcdd1ab259aa13cee26fd9 + REF boost-1.67.0 + SHA512 73fada0b6e236e0b86f28d8cf75e71dfb6b6a84622986cd72f39de3a310442e6122c91d22ba95bd29381dd559f5cac52a1e28cf97e7e8a6f0c70ccc4f38ceeba HEAD_REF master ) -include(${CURRENT_INSTALLED_DIR}/share/boost-build/boost-modular-build.cmake) -boost_modular_build(SOURCE_PATH ${SOURCE_PATH}) -include(${CURRENT_INSTALLED_DIR}/share/boost-vcpkg-helpers/boost-modular-headers.cmake) -boost_modular_headers(SOURCE_PATH ${SOURCE_PATH}) +vcpkg_download_distfile(LICENSE + URLS "https://raw.githubusercontent.com/boostorg/boost/boost-1.67.0/LICENSE_1_0.txt" + FILENAME "boost_LICENSE_1_0.txt" + SHA512 d6078467835dba8932314c1c1e945569a64b065474d7aced27c9a7acc391d52e9f234138ed9f1aa9cd576f25f12f557e0b733c14891d42c16ecdc4a7bd4d60b8 +) + +file(COPY ${CMAKE_CURRENT_LIST_DIR}/CMakeLists.txt DESTINATION ${SOURCE_PATH}) + +vcpkg_configure_cmake( + SOURCE_PATH ${SOURCE_PATH} + PREFER_NINJA +) + +vcpkg_install_cmake() +vcpkg_copy_pdbs() + +file(COPY ${SOURCE_PATH}/include DESTINATION ${CURRENT_PACKAGES_DIR}) +file(INSTALL ${LICENSE} DESTINATION ${CURRENT_PACKAGES_DIR}/share/boost-iostreams RENAME copyright) diff --git a/ports/boost-iterator/CONTROL b/ports/boost-iterator/CONTROL index 416c85d53..f6acb2afa 100644 --- a/ports/boost-iterator/CONTROL +++ b/ports/boost-iterator/CONTROL @@ -1,5 +1,5 @@ # Automatically generated by boost-vcpkg-helpers/generate-ports.ps1 Source: boost-iterator -Version: 1.66.0 +Version: 1.67.0 Build-Depends: boost-assert, boost-compatibility, boost-concept-check, boost-config, boost-core, boost-detail, boost-function-types, boost-fusion, boost-mpl, boost-optional, boost-static-assert, boost-type-traits, boost-utility, boost-vcpkg-helpers Description: Boost iterator module diff --git a/ports/boost-iterator/portfile.cmake b/ports/boost-iterator/portfile.cmake index 365938407..e2163a620 100644 --- a/ports/boost-iterator/portfile.cmake +++ b/ports/boost-iterator/portfile.cmake @@ -5,8 +5,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO boostorg/iterator - REF boost-1.66.0 - SHA512 33a3ffd242769bf55325516346193db0d5ddb69e9da1f7805c35953e4ec7f090fb60faeea8d19c17e651148ba93d48b4a634533de9b5cb13af2a5e9cd0fd0e15 + REF boost-1.67.0 + SHA512 245a63416ae578b494328798d578fe3f253e339abd10c047a14137181759b99d02a9eef4fa4872b794154378a1b80b12fd502849d67b8b13012e6b08b66b650e HEAD_REF master ) diff --git a/ports/boost-lambda/CONTROL b/ports/boost-lambda/CONTROL index dd83f0048..a1996dfbf 100644 --- a/ports/boost-lambda/CONTROL +++ b/ports/boost-lambda/CONTROL @@ -1,5 +1,5 @@ # Automatically generated by boost-vcpkg-helpers/generate-ports.ps1 Source: boost-lambda -Version: 1.66.0 +Version: 1.67.0 Build-Depends: boost-bind, boost-config, boost-detail, boost-mpl, boost-type-traits, boost-utility, boost-vcpkg-helpers Description: Boost lambda module diff --git a/ports/boost-lambda/portfile.cmake b/ports/boost-lambda/portfile.cmake index bb9d68c6f..b14d46c97 100644 --- a/ports/boost-lambda/portfile.cmake +++ b/ports/boost-lambda/portfile.cmake @@ -5,8 +5,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO boostorg/lambda - REF boost-1.66.0 - SHA512 2f5fd6c55c686528971c9e021779f39217952b279e5bef46879233fb1c516895a4fcdc6eddf43cd0fb73aa7ee5f868d6f4d51fdc74c9f68515ef6735ff31a349 + REF boost-1.67.0 + SHA512 d95b3df3321639c4ced7db0fa10e5f204d20961a95d185080a40477520a591b5806974ec7cb28256bbb8b58e2f635cac60fff47eefabe29c5c3fabda211e276f HEAD_REF master ) diff --git a/ports/boost-lexical-cast/CONTROL b/ports/boost-lexical-cast/CONTROL index a7c913996..68b6e1e05 100644 --- a/ports/boost-lexical-cast/CONTROL +++ b/ports/boost-lexical-cast/CONTROL @@ -1,5 +1,5 @@ # Automatically generated by boost-vcpkg-helpers/generate-ports.ps1 Source: boost-lexical-cast -Version: 1.66.0 +Version: 1.67.0 Build-Depends: boost-array, boost-assert, boost-compatibility, boost-config, boost-container, boost-core, boost-detail, boost-integer, boost-mpl, boost-numeric-conversion, boost-range, boost-static-assert, boost-throw-exception, boost-type-traits, boost-vcpkg-helpers Description: Boost lexical_cast module diff --git a/ports/boost-lexical-cast/portfile.cmake b/ports/boost-lexical-cast/portfile.cmake index b86e06415..877a8cf84 100644 --- a/ports/boost-lexical-cast/portfile.cmake +++ b/ports/boost-lexical-cast/portfile.cmake @@ -5,8 +5,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO boostorg/lexical_cast - REF boost-1.66.0 - SHA512 93afc3a296ca30ebb3f48aaf7752a4da33d3e621b56f0f574e98a21aceb7c402fc7512ac65895c8bf473b6962222d0022a6d2aadad5ce2cdbfdf5318967dc76b + REF boost-1.67.0 + SHA512 b3c0c4e94265784001d8b9fc317a2bafe4c83aede9311a7172a76b1c0bf47cc811f7963e9580d0d3f0527f16531abb204b9201c0cc611dd322bcfce2671fa54d HEAD_REF master ) diff --git a/ports/boost-local-function/CONTROL b/ports/boost-local-function/CONTROL index 512cb0f7d..415cba13d 100644 --- a/ports/boost-local-function/CONTROL +++ b/ports/boost-local-function/CONTROL @@ -1,5 +1,5 @@ # Automatically generated by boost-vcpkg-helpers/generate-ports.ps1 Source: boost-local-function -Version: 1.66.0 +Version: 1.67.0 Build-Depends: boost-config, boost-mpl, boost-preprocessor, boost-scope-exit, boost-typeof, boost-type-traits, boost-utility, boost-vcpkg-helpers Description: Boost local_function module diff --git a/ports/boost-local-function/portfile.cmake b/ports/boost-local-function/portfile.cmake index a4f378933..95d8334f6 100644 --- a/ports/boost-local-function/portfile.cmake +++ b/ports/boost-local-function/portfile.cmake @@ -5,8 +5,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO boostorg/local_function - REF boost-1.66.0 - SHA512 3f76fda169f11ceca60c8e1857643d7bf7eea85fdb615635469e28cdc6e02f022d5f698ec53608d6f1068be653ceda40f33f4c832782e347037b924208fc5d20 + REF boost-1.67.0 + SHA512 dfe717ff4fd46a44422162fa00289a1f57aaed42215d238b4219d493bf4945564e1d6103599c0c3d90ed196eff2dc7ad6f0949e284ddfc9c6f400620b63ebaf8 HEAD_REF master ) diff --git a/ports/boost-locale/CONTROL b/ports/boost-locale/CONTROL index 5ed156bdd..eca61edd4 100644 --- a/ports/boost-locale/CONTROL +++ b/ports/boost-locale/CONTROL @@ -1,6 +1,6 @@ # Automatically generated by boost-vcpkg-helpers/generate-ports.ps1 Source: boost-locale -Version: 1.66.0 +Version: 1.67.0 Build-Depends: boost-assert, boost-build, boost-config, boost-function, boost-integer, boost-iterator, boost-modular-build-helper, boost-smart-ptr, boost-static-assert, boost-thread (!uwp), boost-type-traits, boost-unordered, boost-vcpkg-helpers, libiconv (!uwp&!windows) Description: Boost locale module diff --git a/ports/boost-locale/portfile.cmake b/ports/boost-locale/portfile.cmake index e6d82a1a6..c4dbf9229 100644 --- a/ports/boost-locale/portfile.cmake +++ b/ports/boost-locale/portfile.cmake @@ -5,8 +5,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO boostorg/locale - REF boost-1.66.0 - SHA512 558c84fe83909b9eb410ed5b846d2393733811e3765e99e41884a7fc7020163437a42584911b4f634706c1a0e79e23bb09bd6a3ffa219c9e524a10ace02728af + REF boost-1.67.0 + SHA512 220ed43884722e7a342b8fa5010e8659ccebcd106907c38052b411d710f110924a2b4622cb10e1302ad0553cf350430f02c63e3e66d45bb38b47d7eb022d01d9 HEAD_REF master ) diff --git a/ports/boost-lockfree/CONTROL b/ports/boost-lockfree/CONTROL index 7a6eaef4d..ca9746fdc 100644 --- a/ports/boost-lockfree/CONTROL +++ b/ports/boost-lockfree/CONTROL @@ -1,5 +1,5 @@ # Automatically generated by boost-vcpkg-helpers/generate-ports.ps1 Source: boost-lockfree -Version: 1.66.0 +Version: 1.67.0 Build-Depends: boost-align, boost-array, boost-assert, boost-atomic, boost-config, boost-core, boost-integer, boost-mpl, boost-parameter, boost-predef, boost-static-assert, boost-tuple, boost-type-traits, boost-utility, boost-vcpkg-helpers Description: Boost lockfree module diff --git a/ports/boost-lockfree/portfile.cmake b/ports/boost-lockfree/portfile.cmake index 989729d14..af6f80454 100644 --- a/ports/boost-lockfree/portfile.cmake +++ b/ports/boost-lockfree/portfile.cmake @@ -5,8 +5,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO boostorg/lockfree - REF boost-1.66.0 - SHA512 f4c5c146fd2e457e6ee4090a4492eef7cd204ec594349c239c3f50e348a161b8598d7445ca03daea8720b58f0eb1eb5ec8332b078f8dcd9d8133b0d17796e21e + REF boost-1.67.0 + SHA512 d4287c5782191469a077f7cebfa64d72733f186fe627e9fa97a3856168423f9f606168bb67b47814ef2047f0b7434c02dc6ff93ba3f817923d3dff22f46360f9 HEAD_REF master ) diff --git a/ports/boost-log/CONTROL b/ports/boost-log/CONTROL index f8398c7ca..6f4116b03 100644 --- a/ports/boost-log/CONTROL +++ b/ports/boost-log/CONTROL @@ -1,5 +1,5 @@ # Automatically generated by boost-vcpkg-helpers/generate-ports.ps1 Source: boost-log -Version: 1.66.0 -Build-Depends: boost-align, boost-array, boost-asio, boost-assert, boost-atomic, boost-bind, boost-build, boost-compatibility, boost-config, boost-core, boost-date-time, boost-detail, boost-exception, boost-filesystem (!uwp), boost-function-types, boost-fusion, boost-integer, boost-interprocess, boost-intrusive, boost-io, boost-iterator, boost-lexical-cast, boost-locale (!uwp), boost-math, boost-modular-build-helper, boost-move, boost-mpl, boost-optional, boost-parameter, boost-phoenix, boost-predef, boost-preprocessor, boost-property-tree, boost-proto, boost-random, boost-range, boost-regex, boost-smart-ptr, boost-spirit, boost-static-assert, boost-system, boost-thread (!uwp), boost-throw-exception, boost-type-index, boost-type-traits, boost-utility, boost-vcpkg-helpers, boost-winapi, boost-xpressive +Version: 1.67.0 +Build-Depends: boost-align, boost-array, boost-asio, boost-assert, boost-atomic, boost-bind, boost-build, boost-compatibility, boost-config, boost-container, boost-core, boost-date-time, boost-detail, boost-exception, boost-filesystem (!uwp), boost-function-types, boost-fusion, boost-integer, boost-interprocess, boost-intrusive, boost-io, boost-iterator, boost-lexical-cast, boost-locale (!uwp), boost-math, boost-modular-build-helper, boost-move, boost-mpl, boost-optional, boost-parameter, boost-phoenix, boost-predef, boost-preprocessor, boost-property-tree, boost-proto, boost-random, boost-range, boost-regex, boost-smart-ptr, boost-spirit, boost-static-assert, boost-system, boost-thread (!uwp), boost-throw-exception, boost-type-index, boost-type-traits, boost-utility, boost-vcpkg-helpers, boost-winapi, boost-xpressive Description: Boost log module diff --git a/ports/boost-log/portfile.cmake b/ports/boost-log/portfile.cmake index 302fb786a..5d9dbb622 100644 --- a/ports/boost-log/portfile.cmake +++ b/ports/boost-log/portfile.cmake @@ -5,11 +5,24 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO boostorg/log - REF boost-1.66.0 - SHA512 cb0b7ac7136c1066c6dd10a27873febbf983b9c7b7d141ba5e1076a0984cb83609a3c8d38d13e7641002d460f868c2593fecdfd86d9eb75078f14597ab965fa1 + REF boost-1.67.0 + SHA512 68046c749156e11c8c1aa256a54bc89d809b2fa627565051ef09481378cb401eeaec533585f34ce065abb1e416381be536ca19ad972d35b3096e4332d1ffee9d HEAD_REF master ) +file(READ "${SOURCE_PATH}/build/Jamfile.v2" _contents) +string(REPLACE "import ../../config/checks/config" "import config/checks/config" _contents "${_contents}") +string(REPLACE " @select-arch-specific-sources" "#@select-arch-specific-sources" _contents "${_contents}") +file(WRITE "${SOURCE_PATH}/build/Jamfile.v2" "${_contents}") +file(COPY "${CURRENT_INSTALLED_DIR}/share/boost-config/checks" DESTINATION "${SOURCE_PATH}/build/config") + +file(READ ${SOURCE_PATH}/build/log-architecture.jam _contents) +string(REPLACE + "\nproject.load [ path.join [ path.make $(here:D) ] ../../config/checks/architecture ] ;" + "\nproject.load [ path.join [ path.make $(here:D) ] config/checks/architecture ] ;" + _contents "${_contents}") +file(WRITE ${SOURCE_PATH}/build/log-architecture.jam "${_contents}") + include(${CURRENT_INSTALLED_DIR}/share/boost-build/boost-modular-build.cmake) boost_modular_build(SOURCE_PATH ${SOURCE_PATH}) include(${CURRENT_INSTALLED_DIR}/share/boost-vcpkg-helpers/boost-modular-headers.cmake) diff --git a/ports/boost-logic/CONTROL b/ports/boost-logic/CONTROL index 535a53caa..32310be7c 100644 --- a/ports/boost-logic/CONTROL +++ b/ports/boost-logic/CONTROL @@ -1,5 +1,5 @@ # Automatically generated by boost-vcpkg-helpers/generate-ports.ps1 Source: boost-logic -Version: 1.66.0 +Version: 1.67.0 Build-Depends: boost-config, boost-core, boost-detail, boost-vcpkg-helpers Description: Boost logic module diff --git a/ports/boost-logic/portfile.cmake b/ports/boost-logic/portfile.cmake index 08a578ccd..fce91a705 100644 --- a/ports/boost-logic/portfile.cmake +++ b/ports/boost-logic/portfile.cmake @@ -5,8 +5,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO boostorg/logic - REF boost-1.66.0 - SHA512 76e8534127da09c7b70e14927dae03696e251e1c9a825f466d6848dfd0ba14e0d4e8b7bd00dfebe4caf9ef10c591e0d50140b1d4c9c638e0b3f7ae7bf353b8af + REF boost-1.67.0 + SHA512 2a82bbfcea9d1a4ed8563374dc8796873b05ab474edebaea9a9e983148c80ce9bd76625d2bf7e40942c328321cf259ddc70f89550f43a4c6c3e36cb7e5cbe569 HEAD_REF master ) diff --git a/ports/boost-math/CONTROL b/ports/boost-math/CONTROL index 2617f4412..d9cc1cf1a 100644 --- a/ports/boost-math/CONTROL +++ b/ports/boost-math/CONTROL @@ -1,5 +1,5 @@ # Automatically generated by boost-vcpkg-helpers/generate-ports.ps1 Source: boost-math -Version: 1.66.0 +Version: 1.67.0 Build-Depends: boost-array, boost-assert, boost-atomic, boost-build, boost-compatibility, boost-concept-check, boost-config, boost-core, boost-detail, boost-fusion, boost-integer, boost-lambda, boost-lexical-cast, boost-modular-build-helper, boost-mpl, boost-predef, boost-range, boost-static-assert, boost-throw-exception, boost-tuple, boost-type-traits, boost-utility, boost-vcpkg-helpers Description: Boost math module diff --git a/ports/boost-math/portfile.cmake b/ports/boost-math/portfile.cmake index 2ad0b28e2..cfeb034fa 100644 --- a/ports/boost-math/portfile.cmake +++ b/ports/boost-math/portfile.cmake @@ -5,8 +5,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO boostorg/math - REF boost-1.66.0 - SHA512 0fbeea0cb3303fe66e42b54d3db81e92d6b05a5dec90bd36e1365db738b33790e9bc6ff56a8ead0a2e2d578606702eb364d023bce0f1f42a454f60d0626e8737 + REF boost-1.67.0 + SHA512 7d84aacd9a39daf61f836cf522331ea21b18413b28716a2620fcf49c05b32e0e2f7e14f7bd207fc1df7a6b450356158891ef2576335911b0d6a3f78326eb8c62 HEAD_REF master ) diff --git a/ports/boost-metaparse/CONTROL b/ports/boost-metaparse/CONTROL index 7f18a1f45..86ddf75f1 100644 --- a/ports/boost-metaparse/CONTROL +++ b/ports/boost-metaparse/CONTROL @@ -1,5 +1,5 @@ # Automatically generated by boost-vcpkg-helpers/generate-ports.ps1 Source: boost-metaparse -Version: 1.66.0 +Version: 1.67.0 Build-Depends: boost-config, boost-mpl, boost-predef, boost-preprocessor, boost-static-assert, boost-type-traits, boost-vcpkg-helpers Description: Boost metaparse module diff --git a/ports/boost-metaparse/portfile.cmake b/ports/boost-metaparse/portfile.cmake index 22742179c..d25238629 100644 --- a/ports/boost-metaparse/portfile.cmake +++ b/ports/boost-metaparse/portfile.cmake @@ -5,8 +5,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO boostorg/metaparse - REF boost-1.66.0 - SHA512 919c0f198b19114fe1ed457fead502cee729b7c14de460b176784e9778b0040a960d916b4c7fbeb3e7c3ec285b7b1a0d90de8d0dfcca5c14c9d810ab17da5717 + REF boost-1.67.0 + SHA512 d92a78f3dd56083464bb2544427e87c5208d716f509452ada3150fb1beb43caae4dba16daf6626ae0783d1ae0812bbe49be23a638138bccdca873037857ec7a4 HEAD_REF master ) diff --git a/ports/boost-modular-build-helper/CMakeLists.txt b/ports/boost-modular-build-helper/CMakeLists.txt index 4153f0132..f75a6ee66 100644 --- a/ports/boost-modular-build-helper/CMakeLists.txt +++ b/ports/boost-modular-build-helper/CMakeLists.txt @@ -124,7 +124,7 @@ add_custom_target(boost ALL threading=multi threadapi=pthread debug-symbols=on - WORKING_DIRECTORY ${SOURCE_PATH} + WORKING_DIRECTORY ${SOURCE_PATH}/build ) install( diff --git a/ports/boost-modular-build-helper/CONTROL b/ports/boost-modular-build-helper/CONTROL index a7f1ecf61..7324d6ba0 100644 --- a/ports/boost-modular-build-helper/CONTROL +++ b/ports/boost-modular-build-helper/CONTROL @@ -1,2 +1,2 @@ Source: boost-modular-build-helper -Version: 2018-04-15 +Version: 2018-04-16-4 diff --git a/ports/boost-modular-build-helper/Jamroot.jam b/ports/boost-modular-build-helper/Jamroot.jam index 1e3dce89c..8c24fff86 100644 --- a/ports/boost-modular-build-helper/Jamroot.jam +++ b/ports/boost-modular-build-helper/Jamroot.jam @@ -1,5 +1,5 @@ -constant BOOST_VERSION : 1.66.0 ; -constant BOOST_VERSION_ABI_TAG : 1_66 ; +constant BOOST_VERSION : 1.67.0 ; +constant BOOST_VERSION_ABI_TAG : 1_67 ; constant BOOST_JAMROOT_MODULE : $(__name__) ; import boostcpp ; @@ -39,6 +39,9 @@ if "@PORT@" != "boost-system" lib boost_system : : "@CURRENT_INSTALLED_DIR@/lib/@BOOST_LIB_PREFIX@boost_system@BOOST_LIB_RELEASE_SUFFIX@" release ; lib boost_system : : "@CURRENT_INSTALLED_DIR@/debug/lib/@BOOST_LIB_PREFIX@boost_system@BOOST_LIB_DEBUG_SUFFIX@" debug ; explicit boost_system ; + + use-project /boost : . ; + alias system : boost_system ; } if "@PORT@" != "boost-chrono" diff --git a/ports/boost-modular-build-helper/boost-modular-build.cmake b/ports/boost-modular-build-helper/boost-modular-build.cmake index 2833c51a6..d28762175 100644 --- a/ports/boost-modular-build-helper/boost-modular-build.cmake +++ b/ports/boost-modular-build-helper/boost-modular-build.cmake @@ -32,10 +32,6 @@ function(boost_modular_build) set(_bm_DIR ${CURRENT_INSTALLED_DIR}/share/boost-build) - if(EXISTS "${_bm_SOURCE_PATH}/Jamfile.v2") - file(REMOVE_RECURSE "${_bm_SOURCE_PATH}/Jamfile.v2") - endif() - set(REQUIREMENTS ${_bm_REQUIREMENTS}) if(NOT VCPKG_CMAKE_SYSTEM_NAME OR VCPKG_CMAKE_SYSTEM_NAME STREQUAL "WindowsStore") @@ -48,16 +44,10 @@ function(boost_modular_build) set(BOOST_LIB_DEBUG_SUFFIX .a) endif() - # boost thread superfluously builds has_atomic_flag_lockfree on windows. if(EXISTS "${_bm_SOURCE_PATH}/build/Jamfile.v2") file(READ ${_bm_SOURCE_PATH}/build/Jamfile.v2 _contents) - string(REPLACE - "\n\nexe has_atomic_flag_lockfree" - "\n\nexplicit has_atomic_flag_lockfree ;\nexe has_atomic_flag_lockfree" - _contents - "${_contents}" - ) - string(REPLACE "\nimport ../../config/checks/config : requires ;" "\n# import ../../config/checks/config : requires ;" _contents "${_contents}") + #string(REPLACE "import ../../predef/check/predef" "import predef/check/predef" _contents "${_contents}") + #string(REPLACE "import ../../config/checks/config" "import config/checks/config" _contents "${_contents}") string(REGEX REPLACE "\.\./\.\./([^/ ]+)/build//(boost_[^/ ]+)" "/boost/\\1//\\2" @@ -68,16 +58,13 @@ function(boost_modular_build) file(WRITE ${_bm_SOURCE_PATH}/build/Jamfile.v2 "${_contents}") endif() - if(EXISTS "${_bm_SOURCE_PATH}/build/log-architecture.jam") - file(READ ${_bm_SOURCE_PATH}/build/log-architecture.jam _contents) - string(REPLACE - "\nproject.load [ path.join [ path.make $(here:D) ] ../../config/checks/architecture ] ;" - "\n# project.load [ path.join [ path.make $(here:D) ] ../../config/checks/architecture ] ;" - _contents "${_contents}") - file(WRITE ${_bm_SOURCE_PATH}/build/log-architecture.jam "${_contents}") - endif() - configure_file(${_bm_DIR}/Jamroot.jam ${_bm_SOURCE_PATH}/Jamroot.jam @ONLY) + # if(EXISTS "${CURRENT_INSTALLED_DIR}/share/boost-config/checks") + # file(COPY "${CURRENT_INSTALLED_DIR}/share/boost-config/checks" DESTINATION "${_bm_SOURCE_PATH}/build/config") + # endif() + # if(EXISTS "${CURRENT_INSTALLED_DIR}/share/boost-predef/check") + # file(COPY "${CURRENT_INSTALLED_DIR}/share/boost-predef/check" DESTINATION "${_bm_SOURCE_PATH}/build/predef") + # endif() if(VCPKG_CMAKE_SYSTEM_NAME AND NOT VCPKG_CMAKE_SYSTEM_NAME STREQUAL "WindowsStore") if(DEFINED _bm_BOOST_CMAKE_FRAGMENT) @@ -250,7 +237,7 @@ function(boost_modular_build) ${_bm_OPTIONS_REL} variant=release debug-symbols=on - WORKING_DIRECTORY ${_bm_SOURCE_PATH} + WORKING_DIRECTORY ${_bm_SOURCE_PATH}/build LOGNAME build-${TARGET_TRIPLET}-rel ) message(STATUS "Building ${TARGET_TRIPLET}-rel done") @@ -267,7 +254,7 @@ function(boost_modular_build) ${_bm_OPTIONS} ${_bm_OPTIONS_DBG} variant=debug - WORKING_DIRECTORY ${_bm_SOURCE_PATH} + WORKING_DIRECTORY ${_bm_SOURCE_PATH}/build LOGNAME build-${TARGET_TRIPLET}-dbg ) message(STATUS "Building ${TARGET_TRIPLET}-dbg done") @@ -322,7 +309,7 @@ function(boost_modular_build) string(REPLACE "-x64-" "-" NEW_FILENAME ${NEW_FILENAME}) # To enable CMake 3.10 and earlier to locate the binaries string(REPLACE "-a32-" "-" NEW_FILENAME ${NEW_FILENAME}) # To enable CMake 3.10 and earlier to locate the binaries string(REPLACE "-a64-" "-" NEW_FILENAME ${NEW_FILENAME}) # To enable CMake 3.10 and earlier to locate the binaries - string(REPLACE "-1_66" "" NEW_FILENAME ${NEW_FILENAME}) # To enable CMake > 3.10 to locate the binaries + string(REPLACE "-1_67" "" NEW_FILENAME ${NEW_FILENAME}) # To enable CMake > 3.10 to locate the binaries string(REPLACE "_python3-" "_python-" NEW_FILENAME ${NEW_FILENAME}) if("${DIRECTORY_OF_LIB_FILE}/${NEW_FILENAME}" STREQUAL "${DIRECTORY_OF_LIB_FILE}/${OLD_FILENAME}") # nothing to do diff --git a/ports/boost-move/CONTROL b/ports/boost-move/CONTROL index ec9de26e9..4f68406d4 100644 --- a/ports/boost-move/CONTROL +++ b/ports/boost-move/CONTROL @@ -1,5 +1,5 @@ # Automatically generated by boost-vcpkg-helpers/generate-ports.ps1 Source: boost-move -Version: 1.66.0 +Version: 1.67.0 Build-Depends: boost-assert, boost-config, boost-detail, boost-integer, boost-static-assert, boost-vcpkg-helpers Description: Boost move module diff --git a/ports/boost-move/portfile.cmake b/ports/boost-move/portfile.cmake index c340db6e3..f0b02398d 100644 --- a/ports/boost-move/portfile.cmake +++ b/ports/boost-move/portfile.cmake @@ -5,8 +5,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO boostorg/move - REF boost-1.66.0 - SHA512 e431ca8c709f6acb205f93e3c1de1a3b46325e183726bd9b862f4fba436af92b3f5a945eddfe04c3fa775fd88311f98eafa9e81f5014f3a0309096f18b837286 + REF boost-1.67.0 + SHA512 4ff739fbd59db18b4e8ec6b2bd85072422a6253b964d5f12c49e8c0f022ad5760927f753c4b1e75bcb7c38fd8e6f7a9b31aa58b5f8672eb273011a8602dfeb80 HEAD_REF master ) diff --git a/ports/boost-mp11/CONTROL b/ports/boost-mp11/CONTROL index 70bd30300..fa92b50d1 100644 --- a/ports/boost-mp11/CONTROL +++ b/ports/boost-mp11/CONTROL @@ -1,5 +1,5 @@ # Automatically generated by boost-vcpkg-helpers/generate-ports.ps1 Source: boost-mp11 -Version: 1.66.0 -Build-Depends: boost-config, boost-detail, boost-vcpkg-helpers +Version: 1.67.0 +Build-Depends: boost-config, boost-vcpkg-helpers Description: Boost mp11 module diff --git a/ports/boost-mp11/portfile.cmake b/ports/boost-mp11/portfile.cmake index a350e333e..95aa349b2 100644 --- a/ports/boost-mp11/portfile.cmake +++ b/ports/boost-mp11/portfile.cmake @@ -5,8 +5,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO boostorg/mp11 - REF boost-1.66.0 - SHA512 40eb7813f7821d584733b5499270b8ef26619502a3eac78b026587477be881a55efbb99769a0818c50413facb12f583b459df121c8d01dc06ceb4ea50a5f7029 + REF boost-1.67.0 + SHA512 baf1127b837db0902576bbb7f4bb09ad8f38f19ae45025879ae49ba9fef723647460b35a58f81d6bb7cf7dbbf94ff81cd32a948540e276660c8b8de5318f474b HEAD_REF master ) diff --git a/ports/boost-mpi/CONTROL b/ports/boost-mpi/CONTROL index b5cfcd106..c6d33eb26 100644 --- a/ports/boost-mpi/CONTROL +++ b/ports/boost-mpi/CONTROL @@ -1,5 +1,5 @@ # Automatically generated by boost-vcpkg-helpers/generate-ports.ps1 Source: boost-mpi -Version: 1.66.0-1 -Build-Depends: boost-assert, boost-build, boost-compatibility, boost-config, boost-core, boost-function, boost-graph, boost-integer, boost-iterator, boost-lexical-cast, boost-math, boost-modular-build-helper, boost-mpl, boost-optional, boost-property-map, boost-python (windows), boost-serialization, boost-smart-ptr, boost-static-assert, boost-throw-exception, boost-type-traits, boost-utility, boost-vcpkg-helpers, msmpi +Version: 1.67.0-1 +Build-Depends: boost-assert, boost-build, boost-compatibility, boost-config, boost-core, boost-foreach, boost-function, boost-graph, boost-integer, boost-iterator, boost-lexical-cast, boost-math, boost-modular-build-helper, boost-mpl, boost-optional, boost-property-map, boost-python (windows), boost-serialization, boost-smart-ptr, boost-static-assert, boost-throw-exception, boost-type-traits, boost-utility, boost-vcpkg-helpers, msmpi Description: Boost mpi module diff --git a/ports/boost-mpi/portfile.cmake b/ports/boost-mpi/portfile.cmake index 0ac40b4a6..ac67bd677 100644 --- a/ports/boost-mpi/portfile.cmake +++ b/ports/boost-mpi/portfile.cmake @@ -5,8 +5,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO boostorg/mpi - REF boost-1.66.0 - SHA512 bd6385274f291c905ba0239f8399058e4bf76a07d5b984a10fe737e895495c92190ef468be48c32247d4bcb3dd844a5b72b9370ebd2a95945aa38be60bdd3465 + REF boost-1.67.0 + SHA512 fd9c5795db268dbd16bfc051344f6f58ca691dafefb05e2f89521db84d57c6f0ee3f750a75d06b3aaefb14261d0bc40f5e002932383ae0f03c6456d0086c6b8e HEAD_REF master ) diff --git a/ports/boost-mpl/CONTROL b/ports/boost-mpl/CONTROL index f082844d6..350007a53 100644 --- a/ports/boost-mpl/CONTROL +++ b/ports/boost-mpl/CONTROL @@ -1,5 +1,5 @@ # Automatically generated by boost-vcpkg-helpers/generate-ports.ps1 Source: boost-mpl -Version: 1.66.0 +Version: 1.67.0 Build-Depends: boost-config, boost-core, boost-detail, boost-predef, boost-preprocessor, boost-type-traits, boost-vcpkg-helpers Description: Boost mpl module diff --git a/ports/boost-mpl/portfile.cmake b/ports/boost-mpl/portfile.cmake index 44fc12d93..92f6df54b 100644 --- a/ports/boost-mpl/portfile.cmake +++ b/ports/boost-mpl/portfile.cmake @@ -5,8 +5,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO boostorg/mpl - REF boost-1.66.0 - SHA512 e88fa03fbc0f876f838826c5ccfd3866425fa87fd81b9aeb83e4c0afded189a66b06206230f07d1177bdbc39ea5b15cb050ad6285d7704ea83bb43c7d608cc1b + REF boost-1.67.0 + SHA512 90143065ae6a180dd542ad50ceb111d221b587e6e109707c3421582996f0918828f42df69d1e44071981996f30fe59e969efa2271a8b70e70a10516f9b83b1f4 HEAD_REF master ) diff --git a/ports/boost-msm/CONTROL b/ports/boost-msm/CONTROL index f51a7993f..704e55def 100644 --- a/ports/boost-msm/CONTROL +++ b/ports/boost-msm/CONTROL @@ -1,5 +1,5 @@ # Automatically generated by boost-vcpkg-helpers/generate-ports.ps1 Source: boost-msm -Version: 1.66.0 +Version: 1.67.0 Build-Depends: boost-any, boost-assert, boost-bind, boost-circular-buffer, boost-config, boost-core, boost-detail, boost-function, boost-fusion, boost-mpl, boost-parameter, boost-phoenix, boost-preprocessor, boost-proto, boost-serialization, boost-tuple, boost-typeof, boost-type-traits, boost-utility, boost-vcpkg-helpers Description: Boost msm module diff --git a/ports/boost-msm/portfile.cmake b/ports/boost-msm/portfile.cmake index c16c3a962..c22d53aa3 100644 --- a/ports/boost-msm/portfile.cmake +++ b/ports/boost-msm/portfile.cmake @@ -5,8 +5,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO boostorg/msm - REF boost-1.66.0 - SHA512 722360bb58971b52ca2078f908d439544d577fbcba0a99328a000be59772e492c5243192641cc91fe6b3ed95885b209a30f47fd1dd7246889b0552cdc1246b3d + REF boost-1.67.0 + SHA512 073afc97247d0cf6eb579cffafbd43696390b28125d7e104cba4b5e2ac6120b24f64c5fa167f5e5958d7e7fb93eb7ea698b660f9fcee781bd84068919f6512e7 HEAD_REF master ) diff --git a/ports/boost-multi-array/CONTROL b/ports/boost-multi-array/CONTROL index 68ac4410b..efa6049e7 100644 --- a/ports/boost-multi-array/CONTROL +++ b/ports/boost-multi-array/CONTROL @@ -1,5 +1,5 @@ # Automatically generated by boost-vcpkg-helpers/generate-ports.ps1 Source: boost-multi-array -Version: 1.66.0 +Version: 1.67.0 Build-Depends: boost-compatibility, boost-config, boost-vcpkg-helpers Description: Boost multi_array module diff --git a/ports/boost-multi-array/portfile.cmake b/ports/boost-multi-array/portfile.cmake index ead468c54..93ff6b0aa 100644 --- a/ports/boost-multi-array/portfile.cmake +++ b/ports/boost-multi-array/portfile.cmake @@ -5,8 +5,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO boostorg/multi_array - REF boost-1.66.0 - SHA512 6240a90a020f1a6dda1be9e5d5d3743d6f5c50cea1a8b8f75151e60314822e8469db7c0d134a1b1ff50af40833017ee087673894e7e8bd6c394d68547ae68d62 + REF boost-1.67.0 + SHA512 a1f58b1223ffc6935d3ff9dd599dea294af36e9532adef471be0c971450ffd5ebafed6b0ab61637663df22e933b066eccac1fa50c783961d7a4bcf209c7d0fbb HEAD_REF master ) diff --git a/ports/boost-multi-index/CONTROL b/ports/boost-multi-index/CONTROL index d6da63dcd..86e7733dd 100644 --- a/ports/boost-multi-index/CONTROL +++ b/ports/boost-multi-index/CONTROL @@ -1,5 +1,5 @@ # Automatically generated by boost-vcpkg-helpers/generate-ports.ps1 Source: boost-multi-index -Version: 1.66.0 +Version: 1.67.0 Build-Depends: boost-assert, boost-bind, boost-compatibility, boost-config, boost-core, boost-detail, boost-foreach, boost-functional, boost-integer, boost-iterator, boost-move, boost-mpl, boost-preprocessor, boost-serialization, boost-static-assert, boost-throw-exception, boost-tuple, boost-type-traits, boost-utility, boost-vcpkg-helpers Description: Boost multi_index module diff --git a/ports/boost-multi-index/portfile.cmake b/ports/boost-multi-index/portfile.cmake index 7b8f35aff..cc458c95a 100644 --- a/ports/boost-multi-index/portfile.cmake +++ b/ports/boost-multi-index/portfile.cmake @@ -5,8 +5,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO boostorg/multi_index - REF boost-1.66.0 - SHA512 a96c5f7f6a31236462a06c11320232d5aeb16a4df9ff8af972d03c27fb35d6cf17789d8ea6b6d155b55ea435335e605ec7a049c418c529ed48f99b31a4f34423 + REF boost-1.67.0 + SHA512 6630d086a99b5e36d344643030a1639ab1d9393ccc93b112d56cb6c674e97f67b4a9245e51d0b43416274f50d2af094551c814822c9b17abc19b52227042ad91 HEAD_REF master ) diff --git a/ports/boost-multiprecision/CONTROL b/ports/boost-multiprecision/CONTROL index 241880570..b78a02113 100644 --- a/ports/boost-multiprecision/CONTROL +++ b/ports/boost-multiprecision/CONTROL @@ -1,5 +1,5 @@ # Automatically generated by boost-vcpkg-helpers/generate-ports.ps1 Source: boost-multiprecision -Version: 1.66.0 +Version: 1.67.0 Build-Depends: boost-array, boost-assert, boost-config, boost-detail, boost-functional, boost-integer, boost-lexical-cast, boost-math, boost-mpl, boost-random, boost-rational, boost-smart-ptr, boost-static-assert, boost-throw-exception, boost-type-traits, boost-utility, boost-vcpkg-helpers Description: Boost multiprecision module diff --git a/ports/boost-multiprecision/portfile.cmake b/ports/boost-multiprecision/portfile.cmake index 43423e6c3..5ded1a0d8 100644 --- a/ports/boost-multiprecision/portfile.cmake +++ b/ports/boost-multiprecision/portfile.cmake @@ -5,8 +5,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO boostorg/multiprecision - REF boost-1.66.0 - SHA512 3ba38ec20855a0f2f363c34e3c958a7e2e93cbb45d1ab995c26a38e06751192ada95e1a28ea0e9106002cef6250b68dcdecf83a8c6b42676c467ec2d7626288e + REF boost-1.67.0 + SHA512 a2481ad9856ab5024d86097967f187596f18eada71effa51313fb72b02809f5177582fe13bfa5db647f31b5a667b209bf044bc0598385408494c0f6284d0c8a2 HEAD_REF master ) diff --git a/ports/boost-numeric-conversion/CONTROL b/ports/boost-numeric-conversion/CONTROL index 8bc729ec9..674e4ca0a 100644 --- a/ports/boost-numeric-conversion/CONTROL +++ b/ports/boost-numeric-conversion/CONTROL @@ -1,5 +1,5 @@ # Automatically generated by boost-vcpkg-helpers/generate-ports.ps1 Source: boost-numeric-conversion -Version: 1.66.0 +Version: 1.67.0 Build-Depends: boost-config, boost-core, boost-detail, boost-integer, boost-preprocessor, boost-throw-exception, boost-vcpkg-helpers Description: Boost numeric_conversion module diff --git a/ports/boost-numeric-conversion/portfile.cmake b/ports/boost-numeric-conversion/portfile.cmake index c525b2e1f..b14d24011 100644 --- a/ports/boost-numeric-conversion/portfile.cmake +++ b/ports/boost-numeric-conversion/portfile.cmake @@ -5,8 +5,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO boostorg/numeric_conversion - REF boost-1.66.0 - SHA512 3f20e7adf501d69544fe5a4e8b52efa8e7b4327c0c371f1abc22f6aa6035931bcf0597853690b59140378e158462b0ba1d85d2c8ba978c2a5185cac7acefd313 + REF boost-1.67.0 + SHA512 0c1d46e4529bcec8eeb5b138f9ded9974688e14923eb148dc8e89f7fce93d07236be5448d28d9812f7b87bdd11391f0ab8ca57b659b7bedc820d0080b3a3f5d1 HEAD_REF master ) diff --git a/ports/boost-odeint/CONTROL b/ports/boost-odeint/CONTROL index 4ab8a7814..86baeb6a6 100644 --- a/ports/boost-odeint/CONTROL +++ b/ports/boost-odeint/CONTROL @@ -1,5 +1,5 @@ # Automatically generated by boost-vcpkg-helpers/generate-ports.ps1 Source: boost-odeint -Version: 1.66.0 +Version: 1.67.0 Build-Depends: boost-array, boost-assert, boost-bind, boost-compute, boost-config, boost-core, boost-function, boost-fusion, boost-iterator, boost-math, boost-mpl, boost-multi-array, boost-preprocessor, boost-range, boost-static-assert, boost-throw-exception, boost-type-traits, boost-units, boost-utility, boost-vcpkg-helpers Description: Boost odeint module diff --git a/ports/boost-odeint/portfile.cmake b/ports/boost-odeint/portfile.cmake index 5309f3663..38293012e 100644 --- a/ports/boost-odeint/portfile.cmake +++ b/ports/boost-odeint/portfile.cmake @@ -5,8 +5,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO boostorg/odeint - REF boost-1.66.0 - SHA512 f4d1a0d689c64bbd3dc93060e0e787aa39940b4ca0baf557ea7cb1c28225af5388d24b1654be04103427ba3b943f83dc34be1c0acedcdc2a9b8ac63acbe6946c + REF boost-1.67.0 + SHA512 9c18b9ec2f02c9b36afb06c80ad9e881ab7c41580c2fca5b5c5a62c0aa6e1c3e9bb72c8a28670749e3723ce4bce4397db45547ba4db76acd6088f07644cadaa0 HEAD_REF master ) diff --git a/ports/boost-optional/CONTROL b/ports/boost-optional/CONTROL index 752708636..d20c879af 100644 --- a/ports/boost-optional/CONTROL +++ b/ports/boost-optional/CONTROL @@ -1,5 +1,5 @@ # Automatically generated by boost-vcpkg-helpers/generate-ports.ps1 Source: boost-optional -Version: 1.66.0 +Version: 1.67.0 Build-Depends: boost-assert, boost-config, boost-core, boost-detail, boost-move, boost-mpl, boost-static-assert, boost-throw-exception, boost-type-traits, boost-utility, boost-vcpkg-helpers Description: Boost optional module diff --git a/ports/boost-optional/portfile.cmake b/ports/boost-optional/portfile.cmake index af2b6641c..261634e12 100644 --- a/ports/boost-optional/portfile.cmake +++ b/ports/boost-optional/portfile.cmake @@ -5,8 +5,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO boostorg/optional - REF boost-1.66.0 - SHA512 489e8a10abcd906e2bf12d1019f16c02e64ca32df5611351d6a512ff3fdd742f726820a1b6f9de66de78363f8a6a964d1f06905c91382342b5320effd7991b89 + REF boost-1.67.0 + SHA512 a161c9bc69cb39d9828be89d9113766d930ef0c1b12de113b5d103e8139fceabdaac0081664f14ef96f1f9df1fac0b36469010766da3ba4c054910244c452bc8 HEAD_REF master ) diff --git a/ports/boost-parameter/CONTROL b/ports/boost-parameter/CONTROL index aaee2abfc..360daf3a3 100644 --- a/ports/boost-parameter/CONTROL +++ b/ports/boost-parameter/CONTROL @@ -1,5 +1,5 @@ # Automatically generated by boost-vcpkg-helpers/generate-ports.ps1 Source: boost-parameter -Version: 1.66.0 +Version: 1.67.0 Build-Depends: boost-detail, boost-mpl, boost-preprocessor, boost-type-traits, boost-vcpkg-helpers Description: Boost parameter module diff --git a/ports/boost-parameter/portfile.cmake b/ports/boost-parameter/portfile.cmake index 871f7198b..3e5ae71bc 100644 --- a/ports/boost-parameter/portfile.cmake +++ b/ports/boost-parameter/portfile.cmake @@ -5,8 +5,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO boostorg/parameter - REF boost-1.66.0 - SHA512 042be1f9030f4561295a8fcdd252c094d7e17cfd7cc237dfcab6d131c568466fa5ee86a57746d8b254a577251922c7dfa5c1913529743936b8ec90cbb6e7939c + REF boost-1.67.0 + SHA512 f49f1cbedc0b09de484af7ffd9d00e129e9e8cc88fd82d47a95f89b06eae909973843347d1fe09936d686d026d2266384cf23b7dd9a5d7df2d8889629fea1684 HEAD_REF master ) diff --git a/ports/boost-phoenix/CONTROL b/ports/boost-phoenix/CONTROL index ad3236dde..f6cf5316b 100644 --- a/ports/boost-phoenix/CONTROL +++ b/ports/boost-phoenix/CONTROL @@ -1,5 +1,5 @@ # Automatically generated by boost-vcpkg-helpers/generate-ports.ps1 Source: boost-phoenix -Version: 1.66.0 +Version: 1.67.0 Build-Depends: boost-assert, boost-bind, boost-config, boost-core, boost-detail, boost-function, boost-fusion, boost-mpl, boost-predef, boost-preprocessor, boost-proto, boost-range, boost-smart-ptr, boost-type-traits, boost-utility, boost-vcpkg-helpers Description: Boost phoenix module diff --git a/ports/boost-phoenix/portfile.cmake b/ports/boost-phoenix/portfile.cmake index 74e290f1e..3df599d31 100644 --- a/ports/boost-phoenix/portfile.cmake +++ b/ports/boost-phoenix/portfile.cmake @@ -5,8 +5,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO boostorg/phoenix - REF boost-1.66.0 - SHA512 dbffb57041607e90dfea2113192e1a8fc73934faefe00a00d50542e102b8659f55b4491cc2066fd181444bd04f2a610d75bb67773c205742d8def3516d9148aa + REF boost-1.67.0 + SHA512 38095cd0de7a2fb03e4acaf27364a9f9797e1c92315b956f78a5f3d478fbd65a0b97dba53e9081418223864222f9a560f679b6c973ed994233e68b39fd3a5d63 HEAD_REF master ) diff --git a/ports/boost-poly-collection/CONTROL b/ports/boost-poly-collection/CONTROL index d8b2b34ec..9cdae8e73 100644 --- a/ports/boost-poly-collection/CONTROL +++ b/ports/boost-poly-collection/CONTROL @@ -1,5 +1,5 @@ # Automatically generated by boost-vcpkg-helpers/generate-ports.ps1 Source: boost-poly-collection -Version: 1.66.0 +Version: 1.67.0 Build-Depends: boost-assert, boost-config, boost-core, boost-detail, boost-iterator, boost-mpl, boost-type-erasure (!uwp), boost-type-traits, boost-vcpkg-helpers Description: Boost poly_collection module diff --git a/ports/boost-poly-collection/portfile.cmake b/ports/boost-poly-collection/portfile.cmake index 7edccef50..f6d495b04 100644 --- a/ports/boost-poly-collection/portfile.cmake +++ b/ports/boost-poly-collection/portfile.cmake @@ -5,8 +5,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO boostorg/poly_collection - REF boost-1.66.0 - SHA512 110af2363b0ca7f6941ebd45d67edda865b704cbf8e7009349e1487f7c0303e3d2d891576ff7004a74bafd66cf913d91e83166c54a9c34770e58c574e288d688 + REF boost-1.67.0 + SHA512 9ebf5a9a682f0d79ee80dbc1a097dbd06f7c7d064798e25d72a369fa771beb6c37ed9553bc3b8cdbbcb40bc89a628155a850807f5487c714655d2fdb85102b66 HEAD_REF master ) diff --git a/ports/boost-polygon/CONTROL b/ports/boost-polygon/CONTROL index 8c95d707e..ea01f4bb0 100644 --- a/ports/boost-polygon/CONTROL +++ b/ports/boost-polygon/CONTROL @@ -1,5 +1,5 @@ # Automatically generated by boost-vcpkg-helpers/generate-ports.ps1 Source: boost-polygon -Version: 1.66.0 +Version: 1.67.0 Build-Depends: boost-config, boost-integer, boost-mpl, boost-utility, boost-vcpkg-helpers Description: Boost polygon module diff --git a/ports/boost-polygon/portfile.cmake b/ports/boost-polygon/portfile.cmake index 1244b3abb..83d6d5b5e 100644 --- a/ports/boost-polygon/portfile.cmake +++ b/ports/boost-polygon/portfile.cmake @@ -5,8 +5,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO boostorg/polygon - REF boost-1.66.0 - SHA512 7d8b3b275ab5c010a3c1736e59290b514d44080a7fec9e26b28d39c3df2346ac9f5d762b84c6f55296452bbcdf3a8cff5ac3f2895a99be90c4630efb04229157 + REF boost-1.67.0 + SHA512 d6fbf84a808065a5d6946ff0eae8af41d280dc6e30d34c1d1e6f9e5860884f94466d976db4b9537e94c40a76129ae0567cebd05a1116b80ff66629c423520753 HEAD_REF master ) diff --git a/ports/boost-pool/CONTROL b/ports/boost-pool/CONTROL index 8c054f8a9..7013cb6c4 100644 --- a/ports/boost-pool/CONTROL +++ b/ports/boost-pool/CONTROL @@ -1,5 +1,5 @@ # Automatically generated by boost-vcpkg-helpers/generate-ports.ps1 Source: boost-pool -Version: 1.66.0 +Version: 1.67.0 Build-Depends: boost-assert, boost-compatibility, boost-config, boost-detail, boost-integer, boost-thread (!uwp), boost-throw-exception, boost-type-traits, boost-vcpkg-helpers Description: Boost pool module diff --git a/ports/boost-pool/portfile.cmake b/ports/boost-pool/portfile.cmake index 2b70b4c24..e85dd3329 100644 --- a/ports/boost-pool/portfile.cmake +++ b/ports/boost-pool/portfile.cmake @@ -5,8 +5,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO boostorg/pool - REF boost-1.66.0 - SHA512 1b54515a075ff2039ff18ac615a3e172cd7e703d7d27970c12f507aaa32cf36ac79b5fc4e808df10e076175036d953fff601c8814ef286b61fcc41ac1a708c3b + REF boost-1.67.0 + SHA512 fe6f9a5e147806e80fa706e7f02a1b4b6f48e044c6b2a7d7fce6685ec2ada960c17a1ae3fb8cf19661ca8e9e3b1b3a49a30328f9e5ca12f15514810733a1c299 HEAD_REF master ) diff --git a/ports/boost-predef/CONTROL b/ports/boost-predef/CONTROL index 9419ab7b5..92b0e35cd 100644 --- a/ports/boost-predef/CONTROL +++ b/ports/boost-predef/CONTROL @@ -1,5 +1,5 @@ # Automatically generated by boost-vcpkg-helpers/generate-ports.ps1 Source: boost-predef -Version: 1.66.0 +Version: 1.67.0 Build-Depends: boost-vcpkg-helpers Description: Boost predef module diff --git a/ports/boost-predef/portfile.cmake b/ports/boost-predef/portfile.cmake index 289bc4988..5b495ed8d 100644 --- a/ports/boost-predef/portfile.cmake +++ b/ports/boost-predef/portfile.cmake @@ -5,10 +5,12 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO boostorg/predef - REF boost-1.66.0 - SHA512 24f9ddb4ff5f16ae6a8764e940aa85f703c924e550423d7ff58c0e6b97568ecc78b6e97cbcc4ea0489ff2272501130db33e80bf86f071f1bad1d4b0f8c8665ae + REF boost-1.67.0 + SHA512 c67076cb04de0ad0bfdc2fabc4112fe4a1ffb6c21a42e4e11a63e173ef3573e614fe515e7ad7af0cf6628a90fa44aad45013f79ae68d5f35df034953f84b75e1 HEAD_REF master ) include(${CURRENT_INSTALLED_DIR}/share/boost-vcpkg-helpers/boost-modular-headers.cmake) boost_modular_headers(SOURCE_PATH ${SOURCE_PATH}) + +file(COPY ${SOURCE_PATH}/tools/check DESTINATION ${CURRENT_PACKAGES_DIR}/share/boost-predef) diff --git a/ports/boost-preprocessor/CONTROL b/ports/boost-preprocessor/CONTROL index 6cc22c054..f6f683423 100644 --- a/ports/boost-preprocessor/CONTROL +++ b/ports/boost-preprocessor/CONTROL @@ -1,5 +1,5 @@ # Automatically generated by boost-vcpkg-helpers/generate-ports.ps1 Source: boost-preprocessor -Version: 1.66.0 +Version: 1.67.0 Build-Depends: boost-vcpkg-helpers Description: Boost preprocessor module diff --git a/ports/boost-preprocessor/portfile.cmake b/ports/boost-preprocessor/portfile.cmake index 0a2a62ad4..0626080f4 100644 --- a/ports/boost-preprocessor/portfile.cmake +++ b/ports/boost-preprocessor/portfile.cmake @@ -5,8 +5,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO boostorg/preprocessor - REF boost-1.66.0 - SHA512 233c46132d69499d96d8cf47fd41e7b80a558b43ace57a654be9bf4aad8c46907bf2fcc0e5698c0df4c8006bcd1e51a72b69c9269e128f360477481ff8cb2451 + REF boost-1.67.0 + SHA512 9bb18c25144c1428c6e9a32a670c041bc6165b862636b5c626e8b66959906988605f75548fc61539f91c32282b72c150b8b398f7fcee2fa2e5720032b74fd80f HEAD_REF master ) diff --git a/ports/boost-process/CONTROL b/ports/boost-process/CONTROL index 25ddd60ef..a5654c920 100644 --- a/ports/boost-process/CONTROL +++ b/ports/boost-process/CONTROL @@ -1,5 +1,5 @@ # Automatically generated by boost-vcpkg-helpers/generate-ports.ps1 Source: boost-process -Version: 1.66.0 +Version: 1.67.0 Build-Depends: boost-algorithm, boost-asio, boost-config, boost-core, boost-filesystem (!uwp), boost-fusion, boost-iterator, boost-move, boost-optional, boost-system, boost-tokenizer, boost-type-index, boost-vcpkg-helpers, boost-winapi Description: Boost process module diff --git a/ports/boost-process/portfile.cmake b/ports/boost-process/portfile.cmake index 3b5fac7cf..d59399e5f 100644 --- a/ports/boost-process/portfile.cmake +++ b/ports/boost-process/portfile.cmake @@ -5,8 +5,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO boostorg/process - REF boost-1.66.0 - SHA512 4e9b4709c9c46eade2b2ac572b323928cbb793168b3a6ae78387ce7f224daa6a8358c8902547066f5ab2ab34705cb2b1a854cc33144e5459ce95acee96be1d6e + REF boost-1.67.0 + SHA512 a279fcd351c2f8a2087438b67e973f74e150c24585cf586fd59f81c0ec712f8c042768549823268618c7c9c106ed5d8153a7d020fc415ac40f5d78a2a7e93bb6 HEAD_REF master ) diff --git a/ports/boost-program-options/CONTROL b/ports/boost-program-options/CONTROL index 931843a34..f37b745ba 100644 --- a/ports/boost-program-options/CONTROL +++ b/ports/boost-program-options/CONTROL @@ -1,5 +1,5 @@ # Automatically generated by boost-vcpkg-helpers/generate-ports.ps1 Source: boost-program-options -Version: 1.66.0 +Version: 1.67.0 Build-Depends: boost-any, boost-bind, boost-build, boost-compatibility, boost-config, boost-core, boost-detail, boost-function, boost-iterator, boost-lexical-cast, boost-math, boost-modular-build-helper, boost-smart-ptr, boost-static-assert, boost-throw-exception, boost-tokenizer, boost-type-traits, boost-vcpkg-helpers Description: Boost program_options module diff --git a/ports/boost-program-options/portfile.cmake b/ports/boost-program-options/portfile.cmake index 2eb6086f1..4f8624361 100644 --- a/ports/boost-program-options/portfile.cmake +++ b/ports/boost-program-options/portfile.cmake @@ -5,8 +5,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO boostorg/program_options - REF boost-1.66.0 - SHA512 8c196b4c784def8cedb9c591e364e1759d1c90ff41a536c4c2f0dcc4cae58fb82ab3b6640438b6e98988eba7f6517e2baa5ce67738e9aad7db5924b71a7937fe + REF boost-1.67.0 + SHA512 eccb93bbc8ba6808afb06764577184c3b58cb260e0a5ead5a79c43300379744b4c9649ecf18b9c88b3c22c9f1a28d4c7bcf77f638693a97f38bfd15e48b58804 HEAD_REF master ) diff --git a/ports/boost-property-map/CONTROL b/ports/boost-property-map/CONTROL index 2b88e8c12..f8142fa41 100644 --- a/ports/boost-property-map/CONTROL +++ b/ports/boost-property-map/CONTROL @@ -1,5 +1,5 @@ # Automatically generated by boost-vcpkg-helpers/generate-ports.ps1 Source: boost-property-map -Version: 1.66.0 +Version: 1.67.0 Build-Depends: boost-any, boost-assert, boost-bind, boost-concept-check, boost-config, boost-core, boost-detail, boost-function, boost-integer, boost-iterator, boost-lexical-cast, boost-math, boost-mpl, boost-multi-index, boost-optional, boost-serialization, boost-smart-ptr, boost-static-assert, boost-throw-exception, boost-type-traits, boost-utility, boost-vcpkg-helpers Description: Boost property_map module diff --git a/ports/boost-property-map/portfile.cmake b/ports/boost-property-map/portfile.cmake index 6f6739aa9..c2c4561fd 100644 --- a/ports/boost-property-map/portfile.cmake +++ b/ports/boost-property-map/portfile.cmake @@ -5,8 +5,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO boostorg/property_map - REF boost-1.66.0 - SHA512 3a935f14bf87a8c469b39a9fc4457f11d932caede6558d49868073ad35113a6285c48fed4fe3f2e6c8d743f1cf28ac0e8c4bb83b230a55035a89a60e24d43441 + REF boost-1.67.0 + SHA512 07360357577815c6545473d3b5ac64e6851031cc926bcc72419e0bbc49b291477a1e15663e79916044f2e8b946dee397dc1aede7eb2286d506fd86c87e81db48 HEAD_REF master ) diff --git a/ports/boost-property-tree/CONTROL b/ports/boost-property-tree/CONTROL index c1f329ea3..cbb168eae 100644 --- a/ports/boost-property-tree/CONTROL +++ b/ports/boost-property-tree/CONTROL @@ -1,5 +1,5 @@ # Automatically generated by boost-vcpkg-helpers/generate-ports.ps1 Source: boost-property-tree -Version: 1.66.0 +Version: 1.67.0 Build-Depends: boost-any, boost-assert, boost-bind, boost-compatibility, boost-config, boost-core, boost-format, boost-iterator, boost-mpl, boost-multi-index, boost-optional, boost-range, boost-serialization, boost-static-assert, boost-throw-exception, boost-type-traits, boost-utility, boost-vcpkg-helpers Description: Boost property_tree module diff --git a/ports/boost-property-tree/portfile.cmake b/ports/boost-property-tree/portfile.cmake index 8632df529..8a87f7410 100644 --- a/ports/boost-property-tree/portfile.cmake +++ b/ports/boost-property-tree/portfile.cmake @@ -5,8 +5,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO boostorg/property_tree - REF boost-1.66.0 - SHA512 257f3ae750d71c82c0585766e1a35ac90dfced98fdccde8fe5fc504f26e42e7c6629c83fa6cae098271f7cf0cbe669f00246248b548740b303e32c63e79b0492 + REF boost-1.67.0 + SHA512 b22b596af0a6a39a4671c44aa099cd4c2235a5f51e1400f14df2925a5a17487d8910253228c61b1198f0184e58e6e2940c7fde5c193549c21efe737bed363d67 HEAD_REF master ) diff --git a/ports/boost-proto/CONTROL b/ports/boost-proto/CONTROL index 3fc404fa4..9b6adca8f 100644 --- a/ports/boost-proto/CONTROL +++ b/ports/boost-proto/CONTROL @@ -1,5 +1,5 @@ # Automatically generated by boost-vcpkg-helpers/generate-ports.ps1 Source: boost-proto -Version: 1.66.0 +Version: 1.67.0 Build-Depends: boost-config, boost-core, boost-detail, boost-fusion, boost-mpl, boost-preprocessor, boost-range, boost-static-assert, boost-typeof, boost-type-traits, boost-utility, boost-vcpkg-helpers Description: Boost proto module diff --git a/ports/boost-proto/portfile.cmake b/ports/boost-proto/portfile.cmake index c6ba949a2..34691bdf3 100644 --- a/ports/boost-proto/portfile.cmake +++ b/ports/boost-proto/portfile.cmake @@ -5,8 +5,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO boostorg/proto - REF boost-1.66.0 - SHA512 bf15dc60d07be6e0198c3afd9ca232561e7e919957a0c28b8558bc6bea25e9c3b64af7efa573daeda657e8f6657dc3c11570776261dc29cc4e50356a5b67333a + REF boost-1.67.0 + SHA512 ed20abaad9b61d9a82f544a9ae3d05e1f908551958ea0a86b6325a2440a30c94c30caddc5354b603428df070a9eb418adad487d2cc3f2ea0c9a4bf361e8b2ca8 HEAD_REF master ) diff --git a/ports/boost-ptr-container/CONTROL b/ports/boost-ptr-container/CONTROL index d55c82ae0..9c664a05d 100644 --- a/ports/boost-ptr-container/CONTROL +++ b/ports/boost-ptr-container/CONTROL @@ -1,5 +1,5 @@ # Automatically generated by boost-vcpkg-helpers/generate-ports.ps1 Source: boost-ptr-container -Version: 1.66.0 +Version: 1.67.0 Build-Depends: boost-array, boost-assert, boost-circular-buffer, boost-config, boost-core, boost-iterator, boost-mpl, boost-range, boost-serialization, boost-smart-ptr, boost-static-assert, boost-type-traits, boost-unordered, boost-utility, boost-vcpkg-helpers Description: Boost ptr_container module diff --git a/ports/boost-ptr-container/portfile.cmake b/ports/boost-ptr-container/portfile.cmake index 8191f2c41..0f1892dda 100644 --- a/ports/boost-ptr-container/portfile.cmake +++ b/ports/boost-ptr-container/portfile.cmake @@ -5,8 +5,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO boostorg/ptr_container - REF boost-1.66.0 - SHA512 4a90951b6467a4bc97ef9426b1a3d29178084c3033664ef1717926592e515d446b4a8f0c42d1bb640d7a82d7219514f5370f16744bbd8bfbc922b2f5b2c85180 + REF boost-1.67.0 + SHA512 d8349a2b3ebff817ffc42301b61d13536c341def39dd3ec9bf5f5abfa0c7ad545f6b5f8babd3cc276b7c171e55760ea2d0a03dcc0653ac7a245246c89d1b7117 HEAD_REF master ) diff --git a/ports/boost-python/CONTROL b/ports/boost-python/CONTROL index f59353af7..36bb42387 100644 --- a/ports/boost-python/CONTROL +++ b/ports/boost-python/CONTROL @@ -1,5 +1,5 @@ # Automatically generated by boost-vcpkg-helpers/generate-ports.ps1 Source: boost-python -Version: 1.66.0-1 +Version: 1.67.0-1 Build-Depends: boost-bind, boost-config, boost-core, boost-detail, boost-graph, boost-integer, boost-iterator, boost-mpl, boost-preprocessor, boost-property-map, boost-smart-ptr, boost-static-assert, boost-tuple, boost-utility, boost-vcpkg-helpers, python3 Description: Boost python module diff --git a/ports/boost-python/portfile.cmake b/ports/boost-python/portfile.cmake index db55b3e7b..73980e640 100644 --- a/ports/boost-python/portfile.cmake +++ b/ports/boost-python/portfile.cmake @@ -5,8 +5,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO boostorg/python - REF boost-1.66.0 - SHA512 3a16f16c19bf8a97c10db5c4a39385646a49ed794e9f7a0030181c0fb163671306ca92714aeea6440f60d043736ea4c15d1256fb418f18aea164c2d09420774f + REF boost-1.67.0 + SHA512 59091af63626cc6e33f76bded8733b5fb044f7139197e6c887e8e279831954c1e8b67341b6b2f3c9dce97e67a166996321ea439609d225dab7f68762423d6211 HEAD_REF master ) diff --git a/ports/boost-qvm/CONTROL b/ports/boost-qvm/CONTROL index a7521d4ab..ee0044271 100644 --- a/ports/boost-qvm/CONTROL +++ b/ports/boost-qvm/CONTROL @@ -1,5 +1,5 @@ # Automatically generated by boost-vcpkg-helpers/generate-ports.ps1 Source: boost-qvm -Version: 1.66.0 +Version: 1.67.0 Build-Depends: boost-assert, boost-exception, boost-static-assert, boost-throw-exception, boost-utility, boost-vcpkg-helpers Description: Boost qvm module diff --git a/ports/boost-qvm/portfile.cmake b/ports/boost-qvm/portfile.cmake index b16d419d5..014723f28 100644 --- a/ports/boost-qvm/portfile.cmake +++ b/ports/boost-qvm/portfile.cmake @@ -5,8 +5,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO boostorg/qvm - REF boost-1.66.0 - SHA512 b7c1db0f7db316e6f2094185497deaf58fe45f9a11517c76a66bec65d9ee9f32167bccb36ad8388c0f06649067a89e5b1c3894af0a4b4b327ee51ae29dd86c50 + REF boost-1.67.0 + SHA512 dce723e782bb19737a51e99c3535ab7101569ad217a475b25c742d4a35fd774d5b02883a3604b75a4141f8cbb385c82ed1496051032d1d993fb6218549885095 HEAD_REF master ) diff --git a/ports/boost-random/CONTROL b/ports/boost-random/CONTROL index 2fa6b682c..e9f682433 100644 --- a/ports/boost-random/CONTROL +++ b/ports/boost-random/CONTROL @@ -1,5 +1,5 @@ # Automatically generated by boost-vcpkg-helpers/generate-ports.ps1 Source: boost-random -Version: 1.66.0 -Build-Depends: boost-assert, boost-build, boost-compatibility, boost-config, boost-core, boost-detail, boost-integer, boost-math, boost-modular-build-helper, boost-mpl, boost-range, boost-static-assert, boost-system, boost-throw-exception, boost-type-traits, boost-utility, boost-vcpkg-helpers +Version: 1.67.0 +Build-Depends: boost-assert, boost-build, boost-compatibility, boost-config, boost-core, boost-detail, boost-integer, boost-io, boost-math, boost-modular-build-helper, boost-mpl, boost-range, boost-static-assert, boost-system, boost-throw-exception, boost-type-traits, boost-utility, boost-vcpkg-helpers Description: Boost random module diff --git a/ports/boost-random/portfile.cmake b/ports/boost-random/portfile.cmake index ec99fec55..6112ed2c3 100644 --- a/ports/boost-random/portfile.cmake +++ b/ports/boost-random/portfile.cmake @@ -5,8 +5,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO boostorg/random - REF boost-1.66.0 - SHA512 ca62697080e059fa8b01e364b07fdb99bb7db078c2a5683e0f67d89705530276331a5f8706307b14b49f2621d1c158e0d1b9188aee54ab8852bab7800ca18b3e + REF boost-1.67.0 + SHA512 482a25fed9c420407cb83c8003a78dc518bb3942e23c3b206a0f0e050148fbed91aa0526b78614189d162d7c65d7a3ffb566a1735b23e1d0d5d592af0cdc499f HEAD_REF master ) diff --git a/ports/boost-range/CONTROL b/ports/boost-range/CONTROL index 2cf963bef..a9c7421ea 100644 --- a/ports/boost-range/CONTROL +++ b/ports/boost-range/CONTROL @@ -1,5 +1,5 @@ # Automatically generated by boost-vcpkg-helpers/generate-ports.ps1 Source: boost-range -Version: 1.66.0 +Version: 1.67.0 Build-Depends: boost-array, boost-assert, boost-concept-check, boost-config, boost-core, boost-detail, boost-functional, boost-integer, boost-iterator, boost-mpl, boost-optional, boost-preprocessor, boost-regex, boost-static-assert, boost-tuple, boost-type-traits, boost-utility, boost-vcpkg-helpers Description: Boost range module diff --git a/ports/boost-range/portfile.cmake b/ports/boost-range/portfile.cmake index 7b676d431..c649c87ff 100644 --- a/ports/boost-range/portfile.cmake +++ b/ports/boost-range/portfile.cmake @@ -5,8 +5,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO boostorg/range - REF boost-1.66.0 - SHA512 98b050cb3e4249c72222d0efac4edbf4cb62ff303dd1634e7e76fea7dff19c62eceb837e8cffbd088fb28b16b98e923f62c7220d5ff424f3c82383a78df97785 + REF boost-1.67.0 + SHA512 f6c400a40937b09eee02eecbd579d67530fd4cae5f5f9a02cd3914cbcf6d4170870fa6c05a5a018e070f9ddc8c75c43dd93171f57a032ff5294ed19a3cc299af HEAD_REF master ) diff --git a/ports/boost-ratio/CONTROL b/ports/boost-ratio/CONTROL index 801212d8c..a58bbdab0 100644 --- a/ports/boost-ratio/CONTROL +++ b/ports/boost-ratio/CONTROL @@ -1,5 +1,5 @@ # Automatically generated by boost-vcpkg-helpers/generate-ports.ps1 Source: boost-ratio -Version: 1.66.0 +Version: 1.67.0 Build-Depends: boost-config, boost-core, boost-integer, boost-mpl, boost-rational, boost-static-assert, boost-type-traits, boost-vcpkg-helpers Description: Boost ratio module diff --git a/ports/boost-ratio/portfile.cmake b/ports/boost-ratio/portfile.cmake index a39d80204..45caa9299 100644 --- a/ports/boost-ratio/portfile.cmake +++ b/ports/boost-ratio/portfile.cmake @@ -5,8 +5,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO boostorg/ratio - REF boost-1.66.0 - SHA512 caa2ed8f01d6f99aaa8ab8bc52c0f9a8cf2551585760abf6e1d0f129c77c58f3b68569a0db6917c0a40a38faf63935ae23e482b96a2417bd7cb3d5f61e59d887 + REF boost-1.67.0 + SHA512 0ff5a25d9e9798c52cc017df6a7b52a2c13becb84ab6dda06244a92459f1602ff3843e71cda205ed9c831b4727929cbebc688e8b028e029005ffb8f04e39f259 HEAD_REF master ) diff --git a/ports/boost-rational/CONTROL b/ports/boost-rational/CONTROL index f78bf6029..fcc4de99f 100644 --- a/ports/boost-rational/CONTROL +++ b/ports/boost-rational/CONTROL @@ -1,5 +1,5 @@ # Automatically generated by boost-vcpkg-helpers/generate-ports.ps1 Source: boost-rational -Version: 1.66.0 +Version: 1.67.0 Build-Depends: boost-assert, boost-config, boost-integer, boost-static-assert, boost-throw-exception, boost-type-traits, boost-utility, boost-vcpkg-helpers Description: Boost rational module diff --git a/ports/boost-rational/portfile.cmake b/ports/boost-rational/portfile.cmake index 437d650fa..5ced46770 100644 --- a/ports/boost-rational/portfile.cmake +++ b/ports/boost-rational/portfile.cmake @@ -5,8 +5,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO boostorg/rational - REF boost-1.66.0 - SHA512 e61b85344d3418484c044ac0d3946059a3a341cab490d1a54dbee241946c7cb5882e30fcd5e8c9a919622cee69828108d2f7dc578eae51f31c5fb1217deff152 + REF boost-1.67.0 + SHA512 27fece61a7de96bf783a5f5d5b290934f76741848466fbe256c5517fb5671105d68e3126fd4b135c73a0290cbd81cff9849b599d14cdd948897d1ecc573ab016 HEAD_REF master ) diff --git a/ports/boost-regex/CONTROL b/ports/boost-regex/CONTROL index 1ff1473ac..edfbe8672 100644 --- a/ports/boost-regex/CONTROL +++ b/ports/boost-regex/CONTROL @@ -1,7 +1,7 @@ # Automatically generated by boost-vcpkg-helpers/generate-ports.ps1 Source: boost-regex -Version: 1.66.0 -Build-Depends: boost-assert, boost-build, boost-compatibility, boost-concept-check, boost-config, boost-core, boost-detail, boost-functional, boost-integer, boost-iterator, boost-modular-build-helper, boost-mpl, boost-smart-ptr, boost-static-assert, boost-throw-exception, boost-type-traits, boost-vcpkg-helpers +Version: 1.67.0 +Build-Depends: boost-assert, boost-build, boost-compatibility, boost-concept-check, boost-config, boost-container-hash, boost-core, boost-detail, boost-functional, boost-integer, boost-iterator, boost-modular-build-helper, boost-mpl, boost-smart-ptr, boost-static-assert, boost-throw-exception, boost-type-traits, boost-vcpkg-helpers Description: Boost regex module Feature: icu diff --git a/ports/boost-regex/portfile.cmake b/ports/boost-regex/portfile.cmake index 58cd529cd..8895931d6 100644 --- a/ports/boost-regex/portfile.cmake +++ b/ports/boost-regex/portfile.cmake @@ -5,8 +5,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO boostorg/regex - REF boost-1.66.0 - SHA512 def00fc4876fd83a2581eea15228940a665cb79eff26e979079b5df568952f144b74da2f41ddffe6792784fe3fceca94d7b0f49d1a7f01a4df78948244fe86b1 + REF boost-1.67.0 + SHA512 e3b3aaaf866aa9e6a4148c545f4d4a4ab8037dc8882ed7cd4eecd7727976d1a137a4c4e5599283f5d6f3616e865369d80733070f571fdb990555e4769f59ab83 HEAD_REF master ) diff --git a/ports/boost-scope-exit/CONTROL b/ports/boost-scope-exit/CONTROL index a94cb9fd6..fff7088b2 100644 --- a/ports/boost-scope-exit/CONTROL +++ b/ports/boost-scope-exit/CONTROL @@ -1,5 +1,5 @@ # Automatically generated by boost-vcpkg-helpers/generate-ports.ps1 Source: boost-scope-exit -Version: 1.66.0 +Version: 1.67.0 Build-Depends: boost-config, boost-detail, boost-function, boost-mpl, boost-preprocessor, boost-typeof, boost-type-traits, boost-utility, boost-vcpkg-helpers Description: Boost scope_exit module diff --git a/ports/boost-scope-exit/portfile.cmake b/ports/boost-scope-exit/portfile.cmake index 1c31b1002..61add4866 100644 --- a/ports/boost-scope-exit/portfile.cmake +++ b/ports/boost-scope-exit/portfile.cmake @@ -5,8 +5,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO boostorg/scope_exit - REF boost-1.66.0 - SHA512 cb46dee821cf9f873eac9d8e937773a44c9e77b7c9972d064e1cc7b9f95e8b06509da29e2357c479f70993aae25756de1dad5d6639690f4390d466deef75b8da + REF boost-1.67.0 + SHA512 31386f5e44669a01c3396df8fa001c85c7c6231413f4ed788602bb2861db3535e0ed01c61c4b9bdccdcc0020ce92dbbf2bc02711abbbf8dbafe089305d21fb5a HEAD_REF master ) diff --git a/ports/boost-serialization/CONTROL b/ports/boost-serialization/CONTROL index 1cfc392e9..d2c4357be 100644 --- a/ports/boost-serialization/CONTROL +++ b/ports/boost-serialization/CONTROL @@ -1,5 +1,5 @@ # Automatically generated by boost-vcpkg-helpers/generate-ports.ps1 Source: boost-serialization -Version: 1.66.0 +Version: 1.67.0 Build-Depends: boost-array, boost-assert, boost-build, boost-compatibility, boost-config, boost-core, boost-detail, boost-function, boost-integer, boost-io, boost-iterator, boost-modular-build-helper, boost-move, boost-mpl, boost-optional, boost-preprocessor, boost-smart-ptr, boost-spirit, boost-static-assert, boost-type-traits, boost-unordered, boost-utility, boost-variant, boost-vcpkg-helpers Description: Boost serialization module diff --git a/ports/boost-serialization/portfile.cmake b/ports/boost-serialization/portfile.cmake index 2349283f2..b8229d3ec 100644 --- a/ports/boost-serialization/portfile.cmake +++ b/ports/boost-serialization/portfile.cmake @@ -5,8 +5,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO boostorg/serialization - REF boost-1.66.0 - SHA512 8d4908a1eba309c8e752f07e123d0c6d461e3ce87db3b3afbf4ae56340c1ead6ac874be392d8270b167be28d7dc515f98abece091b081fd4794cb375f9779880 + REF boost-1.67.0 + SHA512 719b69945ebdf9eca9849c74bfab38ce1e2c8b4a11ea7cdf98c3da6250887f1712c841b18e428c5bac421b007e3bd0efce9b2c12893395982df98826621dc3bc HEAD_REF master ) diff --git a/ports/boost-signals/CONTROL b/ports/boost-signals/CONTROL index 1b3743e2f..47f3c2382 100644 --- a/ports/boost-signals/CONTROL +++ b/ports/boost-signals/CONTROL @@ -1,5 +1,5 @@ # Automatically generated by boost-vcpkg-helpers/generate-ports.ps1 Source: boost-signals -Version: 1.66.0 +Version: 1.67.0 Build-Depends: boost-any, boost-build, boost-config, boost-core, boost-function, boost-iterator, boost-modular-build-helper, boost-optional, boost-smart-ptr, boost-type-traits, boost-utility, boost-vcpkg-helpers Description: Boost signals module diff --git a/ports/boost-signals/portfile.cmake b/ports/boost-signals/portfile.cmake index a2453b0b5..32d456803 100644 --- a/ports/boost-signals/portfile.cmake +++ b/ports/boost-signals/portfile.cmake @@ -5,8 +5,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO boostorg/signals - REF boost-1.66.0 - SHA512 4a857c2f272ccd5feef7549a9344444e30de71ca49f33d42415aad3af0659534cc46490082a3ab9d52f3bced7635cbb17b6db16216a13a4df79349f01a0fe636 + REF boost-1.67.0 + SHA512 420281efef7ad8742ead144e924b21a8aaac500e8075c0bdf9e1d835d2069b4514f9d0af9ff9b00270334413cbe501acee7cb3eb7a218a53aed0479ff4e8367b HEAD_REF master ) diff --git a/ports/boost-signals2/CONTROL b/ports/boost-signals2/CONTROL index 749be6f6b..0d90874ba 100644 --- a/ports/boost-signals2/CONTROL +++ b/ports/boost-signals2/CONTROL @@ -1,5 +1,5 @@ # Automatically generated by boost-vcpkg-helpers/generate-ports.ps1 Source: boost-signals2 -Version: 1.66.0 +Version: 1.67.0 Build-Depends: boost-assert, boost-bind, boost-config, boost-core, boost-detail, boost-function, boost-iterator, boost-mpl, boost-multi-index, boost-optional, boost-parameter, boost-predef, boost-preprocessor, boost-smart-ptr, boost-throw-exception, boost-tuple, boost-type-traits, boost-utility, boost-variant, boost-vcpkg-helpers Description: Boost signals2 module diff --git a/ports/boost-signals2/portfile.cmake b/ports/boost-signals2/portfile.cmake index 992a410c9..56ee81f08 100644 --- a/ports/boost-signals2/portfile.cmake +++ b/ports/boost-signals2/portfile.cmake @@ -5,8 +5,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO boostorg/signals2 - REF boost-1.66.0 - SHA512 e49e263836db77603b256b45c8d764b91d2ff9b1bcfa36e6b446fbaf0be2e7135b715cf00795d0a98ade48f3ff574c54fadfa58faae330261c58642c0dfaf39a + REF boost-1.67.0 + SHA512 5c691c9275ac2f640a46a1f5a03debd326ce1c64905af6475ebe6caced3ffa4fe27a3a6b91ce60c72bcf06fcd5fbeba79afaef8314f2be655b1ad648d5a046e4 HEAD_REF master ) diff --git a/ports/boost-smart-ptr/CONTROL b/ports/boost-smart-ptr/CONTROL index a4451ef05..6a6f5fb28 100644 --- a/ports/boost-smart-ptr/CONTROL +++ b/ports/boost-smart-ptr/CONTROL @@ -1,5 +1,5 @@ # Automatically generated by boost-vcpkg-helpers/generate-ports.ps1 Source: boost-smart-ptr -Version: 1.66.0 +Version: 1.67.0 Build-Depends: boost-assert, boost-config, boost-core, boost-detail, boost-integer, boost-move, boost-predef, boost-static-assert, boost-throw-exception, boost-type-traits, boost-vcpkg-helpers Description: Boost smart_ptr module diff --git a/ports/boost-smart-ptr/portfile.cmake b/ports/boost-smart-ptr/portfile.cmake index de74fd25d..a83bc4a22 100644 --- a/ports/boost-smart-ptr/portfile.cmake +++ b/ports/boost-smart-ptr/portfile.cmake @@ -5,8 +5,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO boostorg/smart_ptr - REF boost-1.66.0 - SHA512 d45d925531c5060cabd5a949612c3d1358ca92120253c04a755390fc5be80fae2f756cb358b636cf0a86d3091e5c27574a4e4f340ece94a8291acab4a0b4c8a0 + REF boost-1.67.0 + SHA512 f8e9aaf7dce69fa21c1023bd990cc10957e2965261c9ac54cc4a045a6a4675f9e6a4796ec2e359f967d9670126434ec49ff0ba72fec0d041a86a569463e16d4c HEAD_REF master ) diff --git a/ports/boost-sort/CONTROL b/ports/boost-sort/CONTROL index 6f13d05a2..9a52c06cc 100644 --- a/ports/boost-sort/CONTROL +++ b/ports/boost-sort/CONTROL @@ -1,5 +1,5 @@ # Automatically generated by boost-vcpkg-helpers/generate-ports.ps1 Source: boost-sort -Version: 1.66.0 -Build-Depends: boost-integer, boost-serialization, boost-static-assert, boost-type-traits, boost-utility, boost-vcpkg-helpers +Version: 1.67.0 +Build-Depends: boost-integer, boost-range, boost-serialization, boost-static-assert, boost-type-traits, boost-utility, boost-vcpkg-helpers Description: Boost sort module diff --git a/ports/boost-sort/portfile.cmake b/ports/boost-sort/portfile.cmake index e5e63b33d..a8f999030 100644 --- a/ports/boost-sort/portfile.cmake +++ b/ports/boost-sort/portfile.cmake @@ -5,8 +5,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO boostorg/sort - REF boost-1.66.0 - SHA512 0c4d252cf92f46b402be2d9f46f4c4b052dbbb85c83cb7e78a9f75a2e2d14225614f97f3b4e91205d55f224faef2baf939c28fb935d9dbfa140aa7a9c51836df + REF boost-1.67.0 + SHA512 dfd8f61aa342c226a88390f8b05d394fd8c019ebc8d008dbb3022bca4716d4e9623e9d2024fd3143ead3de89441b470dc234252b96d80dcd3d6e2be5ce4bd090 HEAD_REF master ) diff --git a/ports/boost-spirit/CONTROL b/ports/boost-spirit/CONTROL index f79535e4c..ee973c0b4 100644 --- a/ports/boost-spirit/CONTROL +++ b/ports/boost-spirit/CONTROL @@ -1,5 +1,5 @@ # Automatically generated by boost-vcpkg-helpers/generate-ports.ps1 Source: boost-spirit -Version: 1.66.0 +Version: 1.67.0 Build-Depends: boost-algorithm, boost-array, boost-assert, boost-compatibility, boost-concept-check, boost-config, boost-core, boost-detail, boost-endian, boost-filesystem (!uwp), boost-foreach, boost-function, boost-function-types, boost-fusion, boost-integer, boost-io, boost-iostreams (!uwp), boost-iterator, boost-lexical-cast, boost-locale (!uwp), boost-math, boost-move, boost-mpl, boost-optional, boost-phoenix, boost-pool, boost-preprocessor, boost-proto, boost-range, boost-regex, boost-smart-ptr, boost-static-assert, boost-thread (!uwp), boost-throw-exception, boost-tti, boost-typeof, boost-type-traits, boost-unordered, boost-utility, boost-variant, boost-vcpkg-helpers Description: Boost spirit module diff --git a/ports/boost-spirit/portfile.cmake b/ports/boost-spirit/portfile.cmake index 0a5ebf5aa..f7b3f04f8 100644 --- a/ports/boost-spirit/portfile.cmake +++ b/ports/boost-spirit/portfile.cmake @@ -5,8 +5,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO boostorg/spirit - REF boost-1.66.0 - SHA512 c02594dc732d8ad8d23b1ed94f7aea05e3a339d0189a224340ea882b0de68f10820ad40886e040269ce4e08a558806c48662acba0bf00d95b8cafb5a7ce0057b + REF boost-1.67.0 + SHA512 c5afd70ff38112232966e204e543b83316693a941f9da0300e9214ad3198601c805b2259f7e9ce58afc03b9e91403d98f94852b0e4eaa71b9e94157ca37aac9b HEAD_REF master ) diff --git a/ports/boost-stacktrace/CONTROL b/ports/boost-stacktrace/CONTROL index c55b3ea01..bba967212 100644 --- a/ports/boost-stacktrace/CONTROL +++ b/ports/boost-stacktrace/CONTROL @@ -1,5 +1,5 @@ # Automatically generated by boost-vcpkg-helpers/generate-ports.ps1 Source: boost-stacktrace -Version: 1.66.0 -Build-Depends: boost-array, boost-build, boost-config, boost-core, boost-lexical-cast, boost-math, boost-modular-build-helper, boost-static-assert, boost-type-traits, boost-vcpkg-helpers, boost-winapi +Version: 1.67.0 +Build-Depends: boost-array, boost-build, boost-config, boost-container-hash, boost-core, boost-lexical-cast, boost-math, boost-modular-build-helper, boost-static-assert, boost-type-traits, boost-vcpkg-helpers, boost-winapi Description: Boost stacktrace module diff --git a/ports/boost-stacktrace/portfile.cmake b/ports/boost-stacktrace/portfile.cmake index 34c6e6d31..5cb9ac5bc 100644 --- a/ports/boost-stacktrace/portfile.cmake +++ b/ports/boost-stacktrace/portfile.cmake @@ -5,8 +5,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO boostorg/stacktrace - REF boost-1.66.0 - SHA512 40b96f7c1fdaf5a5909148d7edd4f77b4991ead70d5350bc7c8451781c80020496b14688c0dff365b75941a1ba16244246a52b6a708f4b1f79c99f4d8a0556f0 + REF boost-1.67.0 + SHA512 30e425d113c155b7a1a9f5802ce5c0efa91223825e09bf6dc596e208b1fec7e1adacbabe6950f5d35037a8bd4e2c3841e95cb9a02419a652beabfb083c460edc HEAD_REF master ) diff --git a/ports/boost-statechart/CONTROL b/ports/boost-statechart/CONTROL index eafbc2db4..b98913b82 100644 --- a/ports/boost-statechart/CONTROL +++ b/ports/boost-statechart/CONTROL @@ -1,5 +1,5 @@ # Automatically generated by boost-vcpkg-helpers/generate-ports.ps1 Source: boost-statechart -Version: 1.66.0 +Version: 1.67.0 Build-Depends: boost-assert, boost-bind, boost-config, boost-conversion, boost-core, boost-detail, boost-function, boost-mpl, boost-smart-ptr, boost-static-assert, boost-type-traits, boost-vcpkg-helpers Description: Boost statechart module diff --git a/ports/boost-statechart/portfile.cmake b/ports/boost-statechart/portfile.cmake index 61680bd2b..a76882124 100644 --- a/ports/boost-statechart/portfile.cmake +++ b/ports/boost-statechart/portfile.cmake @@ -5,8 +5,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO boostorg/statechart - REF boost-1.66.0 - SHA512 c9e20deca66f896eee004d19be388857817b2d4bdf49a9a146625de091420399a7098a6ecb2020ce07a96b11092922f4623159434b04983072dad8b91d2d7187 + REF boost-1.67.0 + SHA512 2b63d4664b3fc20adf12106607ef1485700d5aeea9bbfc9005a9ac08984034a8a31c037a4ae3e99b4787187ed797844d26afb1140f73ef5009504549be64a6cf HEAD_REF master ) diff --git a/ports/boost-static-assert/CONTROL b/ports/boost-static-assert/CONTROL index e4719ff49..58be1dfc7 100644 --- a/ports/boost-static-assert/CONTROL +++ b/ports/boost-static-assert/CONTROL @@ -1,5 +1,5 @@ # Automatically generated by boost-vcpkg-helpers/generate-ports.ps1 Source: boost-static-assert -Version: 1.66.0 +Version: 1.67.0 Build-Depends: boost-config, boost-detail, boost-vcpkg-helpers Description: Boost static_assert module diff --git a/ports/boost-static-assert/portfile.cmake b/ports/boost-static-assert/portfile.cmake index 2598280af..125f80bbb 100644 --- a/ports/boost-static-assert/portfile.cmake +++ b/ports/boost-static-assert/portfile.cmake @@ -5,8 +5,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO boostorg/static_assert - REF boost-1.66.0 - SHA512 97e0007ffef86578f4877744947e4c7d90de932719df25a38a72c018112b9b6d6d2fbdbef9307c02d1d85e5d8733a0f20a903c0fc623ef969afc788cfdf8722b + REF boost-1.67.0 + SHA512 6ffffe8c9bb799851dd5b3f03ec3038c7545ee55429a2c9124c6b7c5abbe43b8cb0cc860d758fbbeaa1810775da8f0ad1bfd25362a78866c1ecf5242bdb548eb HEAD_REF master ) diff --git a/ports/boost-system/CONTROL b/ports/boost-system/CONTROL index 95f01a09c..01985fbe6 100644 --- a/ports/boost-system/CONTROL +++ b/ports/boost-system/CONTROL @@ -1,5 +1,5 @@ # Automatically generated by boost-vcpkg-helpers/generate-ports.ps1 Source: boost-system -Version: 1.66.0 +Version: 1.67.0 Build-Depends: boost-assert, boost-build, boost-config, boost-core, boost-integer, boost-modular-build-helper, boost-predef, boost-utility, boost-vcpkg-helpers, boost-winapi Description: Boost system module diff --git a/ports/boost-system/portfile.cmake b/ports/boost-system/portfile.cmake index bc35d0d93..d61109754 100644 --- a/ports/boost-system/portfile.cmake +++ b/ports/boost-system/portfile.cmake @@ -5,8 +5,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO boostorg/system - REF boost-1.66.0 - SHA512 97181610bc577182cb83c55b7c5d73aec6794543c0a7b43b4d08c7a1ed9936500f383038dbda1c0876f58d52c000f8b2e4a6bc1f68d14c7d9f015918f1c46851 + REF boost-1.67.0 + SHA512 3d7c8d9e0c4f3f5be95cf897e265adb1f2c96faa5dbc13b8050f988ddc94b9510531718b1726b147ab3484bff1ccf7bf18179084dcea968dcf80fd2f1c68686c HEAD_REF master ) diff --git a/ports/boost-test/CONTROL b/ports/boost-test/CONTROL index f77ae6c94..182c9ccf6 100644 --- a/ports/boost-test/CONTROL +++ b/ports/boost-test/CONTROL @@ -1,5 +1,5 @@ # Automatically generated by boost-vcpkg-helpers/generate-ports.ps1 Source: boost-test -Version: 1.66.0-2 -Build-Depends: boost-algorithm, boost-assert, boost-bind, boost-build, boost-compatibility, boost-config, boost-core, boost-detail, boost-exception, boost-function, boost-io, boost-iterator, boost-modular-build-helper, boost-mpl, boost-numeric-conversion, boost-optional, boost-preprocessor, boost-range, boost-smart-ptr, boost-static-assert, boost-timer, boost-type-traits, boost-utility, boost-vcpkg-helpers +Version: 1.67.0-2 +Build-Depends: boost-algorithm, boost-assert, boost-bind, boost-build, boost-compatibility, boost-config, boost-core, boost-detail, boost-exception, boost-function, boost-io, boost-iterator, boost-modular-build-helper, boost-mpl, boost-numeric-conversion, boost-optional, boost-preprocessor, boost-smart-ptr, boost-static-assert, boost-timer, boost-type-traits, boost-utility, boost-vcpkg-helpers Description: Boost test module diff --git a/ports/boost-test/portfile.cmake b/ports/boost-test/portfile.cmake index 329256a83..d5834c60d 100644 --- a/ports/boost-test/portfile.cmake +++ b/ports/boost-test/portfile.cmake @@ -5,11 +5,16 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO boostorg/test - REF boost-1.66.0 - SHA512 f5f0557fc7afb1c085765edda5ec37ce2a0f31aa39c861a7979dfd5344751978139cc3eef44d773140e4b023c0123065169fc11ae889ca1ea51f58bdf5018a5d + REF boost-1.67.0 + SHA512 9af937ef02982039b5aab54e142b877fef6c46f71b7cc8c83d81f850f4b4229ee93425ab8a88e6888952686e1e23da6591da072432a06c1bceae83c793a43cf5 HEAD_REF master ) +file(READ "${SOURCE_PATH}/build/Jamfile.v2" _contents) +string(REPLACE "import ../../predef/check/predef" "import predef/check/predef" _contents "${_contents}") +file(WRITE "${SOURCE_PATH}/build/Jamfile.v2" "${_contents}") +file(COPY "${CURRENT_INSTALLED_DIR}/share/boost-predef/check" DESTINATION "${SOURCE_PATH}/build/predef") + include(${CURRENT_INSTALLED_DIR}/share/boost-build/boost-modular-build.cmake) boost_modular_build(SOURCE_PATH ${SOURCE_PATH}) include(${CURRENT_INSTALLED_DIR}/share/boost-vcpkg-helpers/boost-modular-headers.cmake) diff --git a/ports/boost-thread/CONTROL b/ports/boost-thread/CONTROL index 963eaa5bc..6eeb13ebc 100644 --- a/ports/boost-thread/CONTROL +++ b/ports/boost-thread/CONTROL @@ -1,5 +1,5 @@ # Automatically generated by boost-vcpkg-helpers/generate-ports.ps1 Source: boost-thread -Version: 1.66.0 +Version: 1.67.0 Build-Depends: boost-algorithm, boost-assert, boost-atomic, boost-bind, boost-build, boost-chrono, boost-concept-check, boost-config, boost-container, boost-core, boost-date-time, boost-detail, boost-exception, boost-function, boost-functional, boost-integer, boost-intrusive, boost-io, boost-lexical-cast, boost-math, boost-modular-build-helper, boost-move, boost-mpl, boost-optional, boost-predef, boost-preprocessor, boost-smart-ptr, boost-static-assert, boost-system, boost-throw-exception, boost-tuple, boost-type-traits, boost-utility, boost-vcpkg-helpers, boost-winapi Description: Boost thread module diff --git a/ports/boost-thread/b2-options.cmake b/ports/boost-thread/b2-options.cmake new file mode 100644 index 000000000..07acc10b5 --- /dev/null +++ b/ports/boost-thread/b2-options.cmake @@ -0,0 +1 @@ +list(APPEND B2_OPTIONS /boost/thread//boost_thread) diff --git a/ports/boost-thread/portfile.cmake b/ports/boost-thread/portfile.cmake index e1f0a0c2f..30f203d31 100644 --- a/ports/boost-thread/portfile.cmake +++ b/ports/boost-thread/portfile.cmake @@ -5,12 +5,17 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO boostorg/thread - REF boost-1.66.0 - SHA512 35875d3feb64617b74ef1303939a9e0f8d72b9b2d7361e9a25c54431c60c17b481023006f2329e4cd8dd37206553991e40a12a20bb479ec497c475240e19776b + REF boost-1.67.0 + SHA512 e641484c2d021d0a8b77955bd9ee7f53f4a4c7f003b9260aa17c78b236a8cda4b1ec59c9fb16aab823b7be9d6da6a67c2d333308d8b1d5c9bbaa6a0de9018479 HEAD_REF master ) include(${CURRENT_INSTALLED_DIR}/share/boost-build/boost-modular-build.cmake) -boost_modular_build(SOURCE_PATH ${SOURCE_PATH} REQUIREMENTS "/boost/date_time//boost_date_time") +boost_modular_build( + SOURCE_PATH ${SOURCE_PATH} + REQUIREMENTS "/boost/date_time//boost_date_time" + OPTIONS /boost/thread//boost_thread + BOOST_CMAKE_FRAGMENT ${CMAKE_CURRENT_LIST_DIR}/b2-options.cmake +) include(${CURRENT_INSTALLED_DIR}/share/boost-vcpkg-helpers/boost-modular-headers.cmake) boost_modular_headers(SOURCE_PATH ${SOURCE_PATH}) diff --git a/ports/boost-throw-exception/CONTROL b/ports/boost-throw-exception/CONTROL index 61809bb7b..d6b606c78 100644 --- a/ports/boost-throw-exception/CONTROL +++ b/ports/boost-throw-exception/CONTROL @@ -1,5 +1,5 @@ # Automatically generated by boost-vcpkg-helpers/generate-ports.ps1 Source: boost-throw-exception -Version: 1.66.0 +Version: 1.67.0 Build-Depends: boost-config, boost-detail, boost-vcpkg-helpers Description: Boost throw_exception module diff --git a/ports/boost-throw-exception/portfile.cmake b/ports/boost-throw-exception/portfile.cmake index c4e87087e..dca2f1ac4 100644 --- a/ports/boost-throw-exception/portfile.cmake +++ b/ports/boost-throw-exception/portfile.cmake @@ -5,8 +5,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO boostorg/throw_exception - REF boost-1.66.0 - SHA512 46c1683ded42fe9b0cd44711071bee1122dbd0529648f69439cc5391d05e7e22968235bc852878441ad051b6c021b10e319b6337aff28f6acaafca7e70480ef8 + REF boost-1.67.0 + SHA512 ce049466973f338071acd51dab620c0a428eb6777384003f5ffc1a90128cf87d7f8283aeb351ca576a8cfabe46e603b7d748fbe2f03b46227b6eb9faf292f106 HEAD_REF master ) diff --git a/ports/boost-timer/CONTROL b/ports/boost-timer/CONTROL index 328b78579..67537375d 100644 --- a/ports/boost-timer/CONTROL +++ b/ports/boost-timer/CONTROL @@ -1,5 +1,5 @@ # Automatically generated by boost-vcpkg-helpers/generate-ports.ps1 Source: boost-timer -Version: 1.66.0 +Version: 1.67.0 Build-Depends: boost-build, boost-chrono, boost-compatibility, boost-config, boost-core, boost-integer, boost-io, boost-modular-build-helper, boost-system, boost-throw-exception, boost-vcpkg-helpers Description: Boost timer module diff --git a/ports/boost-timer/portfile.cmake b/ports/boost-timer/portfile.cmake index 072b701a7..1f3b9dcda 100644 --- a/ports/boost-timer/portfile.cmake +++ b/ports/boost-timer/portfile.cmake @@ -5,8 +5,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO boostorg/timer - REF boost-1.66.0 - SHA512 2b50d38e3b5ca79014f96eb8fb55d1320c0de97ba2bb632dec946690437f8a1533c3e78e25798a0f49c08a5644f7f55afcd0f85f94bea4e041cddbcd8867450d + REF boost-1.67.0 + SHA512 6028432edbdee4318d3295c9834417d31816efd8e16c5a0bcc41c0b1ffdd422c31eadb01cb0934684421bb07079476ecae41ec64d314c60d19d02ed9d995c682 HEAD_REF master ) diff --git a/ports/boost-tokenizer/CONTROL b/ports/boost-tokenizer/CONTROL index 27fb3021b..ed1cb640e 100644 --- a/ports/boost-tokenizer/CONTROL +++ b/ports/boost-tokenizer/CONTROL @@ -1,5 +1,5 @@ # Automatically generated by boost-vcpkg-helpers/generate-ports.ps1 Source: boost-tokenizer -Version: 1.66.0 +Version: 1.67.0 Build-Depends: boost-assert, boost-config, boost-detail, boost-iterator, boost-mpl, boost-throw-exception, boost-vcpkg-helpers Description: Boost tokenizer module diff --git a/ports/boost-tokenizer/portfile.cmake b/ports/boost-tokenizer/portfile.cmake index 4f4c066bf..15ebbe89c 100644 --- a/ports/boost-tokenizer/portfile.cmake +++ b/ports/boost-tokenizer/portfile.cmake @@ -5,8 +5,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO boostorg/tokenizer - REF boost-1.66.0 - SHA512 ce5f6d89fd8b61a5d8074d8cb6bbc3b9a0e3ebf96081c9dda8e67a64b7052f38ebc50581284fa182f83f6f3eb54eee5292f6e79832ffd293ef9a35af2b595a51 + REF boost-1.67.0 + SHA512 2240809c63060f267c9b62171fcc1d959a199d8de65647de767c9829068a81e600d9084a8af0681bb09152e82789df2f13975a7ff1f0cd9ab6789347fe3154c6 HEAD_REF master ) diff --git a/ports/boost-tti/CONTROL b/ports/boost-tti/CONTROL index bcab1a023..fb2d59aa3 100644 --- a/ports/boost-tti/CONTROL +++ b/ports/boost-tti/CONTROL @@ -1,5 +1,5 @@ # Automatically generated by boost-vcpkg-helpers/generate-ports.ps1 Source: boost-tti -Version: 1.66.0 +Version: 1.67.0 Build-Depends: boost-config, boost-detail, boost-function-types, boost-mpl, boost-preprocessor, boost-type-traits, boost-vcpkg-helpers Description: Boost tti module diff --git a/ports/boost-tti/portfile.cmake b/ports/boost-tti/portfile.cmake index d263b7540..4e15f4095 100644 --- a/ports/boost-tti/portfile.cmake +++ b/ports/boost-tti/portfile.cmake @@ -5,8 +5,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO boostorg/tti - REF boost-1.66.0 - SHA512 8c399d475819b68324e1a56b9ba13a3e26faf175d3180b0317e82212ce4c587d8074c597832165e81a3ed6af09026b7c5433a8cd58b6ad861dad7d9fe1d57eee + REF boost-1.67.0 + SHA512 e46b2a5cfd84c46577c499ee643f62804daf376fecaf15d3425b73d0221ab34dc2f882e31d7f8906adabafd271fc3707c6c5a2d99da8446a88951c4e828567f3 HEAD_REF master ) diff --git a/ports/boost-tuple/CONTROL b/ports/boost-tuple/CONTROL index a96059c05..7129158e3 100644 --- a/ports/boost-tuple/CONTROL +++ b/ports/boost-tuple/CONTROL @@ -1,5 +1,5 @@ # Automatically generated by boost-vcpkg-helpers/generate-ports.ps1 Source: boost-tuple -Version: 1.66.0 +Version: 1.67.0 Build-Depends: boost-config, boost-core, boost-static-assert, boost-type-traits, boost-utility, boost-vcpkg-helpers Description: Boost tuple module diff --git a/ports/boost-tuple/portfile.cmake b/ports/boost-tuple/portfile.cmake index 2c4cfe5be..be031628c 100644 --- a/ports/boost-tuple/portfile.cmake +++ b/ports/boost-tuple/portfile.cmake @@ -5,8 +5,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO boostorg/tuple - REF boost-1.66.0 - SHA512 c65bd37871256f1edb1db4d9ac158788c3a76248d7f7ff72eece874ea521d9846d55373e223d783a4c6fe3a524088fe2e4e58e533d1144671e4a1d22443f0414 + REF boost-1.67.0 + SHA512 de9e0836ec0f923483d2738de44f1738a5d9c00cd4ea3f0c61192e892bf026d16a5719f874811b04c6e9d27b0ee7ac80a3b88b30198ca06d54df181640b374b8 HEAD_REF master ) diff --git a/ports/boost-type-erasure/CONTROL b/ports/boost-type-erasure/CONTROL index b8e6bc4dd..579b091a0 100644 --- a/ports/boost-type-erasure/CONTROL +++ b/ports/boost-type-erasure/CONTROL @@ -1,5 +1,5 @@ # Automatically generated by boost-vcpkg-helpers/generate-ports.ps1 Source: boost-type-erasure -Version: 1.66.0 -Build-Depends: boost-assert, boost-build, boost-config, boost-detail, boost-fusion, boost-iterator, boost-modular-build-helper, boost-mpl, boost-preprocessor, boost-smart-ptr, boost-thread (!uwp), boost-throw-exception, boost-typeof, boost-type-traits, boost-utility, boost-vcpkg-helpers +Version: 1.67.0 +Build-Depends: boost-assert, boost-build, boost-config, boost-detail, boost-fusion, boost-iterator, boost-modular-build-helper, boost-mp11, boost-mpl, boost-preprocessor, boost-smart-ptr, boost-thread (!uwp), boost-throw-exception, boost-typeof, boost-type-traits, boost-utility, boost-vcpkg-helpers, boost-vmd Description: Boost type_erasure module diff --git a/ports/boost-type-erasure/portfile.cmake b/ports/boost-type-erasure/portfile.cmake index 95c28afc6..c6c07eb1b 100644 --- a/ports/boost-type-erasure/portfile.cmake +++ b/ports/boost-type-erasure/portfile.cmake @@ -5,8 +5,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO boostorg/type_erasure - REF boost-1.66.0 - SHA512 a64b3477478a656c0e04e897f4b9e19941b884c17cfa07ec05f96cebab0f4a377d728ddee354923c1c00bd85f2bf180a46747ccfe5eceb3fe143c2154e0be0e8 + REF boost-1.67.0 + SHA512 45bcade387e21315ea94f69981531ca38c367d6e7e8bcc82e67b86360d4f0e6a786ff94935a10a7b2e6bed21c0847008bbfa70e8adc5f3704f4eafef54664d86 HEAD_REF master ) diff --git a/ports/boost-type-index/CONTROL b/ports/boost-type-index/CONTROL index e291a6222..ec217ec27 100644 --- a/ports/boost-type-index/CONTROL +++ b/ports/boost-type-index/CONTROL @@ -1,5 +1,5 @@ # Automatically generated by boost-vcpkg-helpers/generate-ports.ps1 Source: boost-type-index -Version: 1.66.0 -Build-Depends: boost-config, boost-core, boost-functional, boost-mpl, boost-preprocessor, boost-smart-ptr, boost-static-assert, boost-throw-exception, boost-type-traits, boost-vcpkg-helpers +Version: 1.67.0 +Build-Depends: boost-config, boost-container-hash, boost-core, boost-mpl, boost-preprocessor, boost-smart-ptr, boost-static-assert, boost-throw-exception, boost-type-traits, boost-vcpkg-helpers Description: Boost type_index module diff --git a/ports/boost-type-index/portfile.cmake b/ports/boost-type-index/portfile.cmake index ae292b7e5..1554e1258 100644 --- a/ports/boost-type-index/portfile.cmake +++ b/ports/boost-type-index/portfile.cmake @@ -5,8 +5,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO boostorg/type_index - REF boost-1.66.0 - SHA512 c731d336b0b29a0dbbb12c027fe052f9cea0f06703d05e3f24c24d9feb5abcf04cfb6e867da752cdbc75056db9482b5318ee1489db54244c3fdc6e1f32899aa8 + REF boost-1.67.0 + SHA512 31a471bedaa8e30eb84e22e7f059938ffb25c649a80b203067da1c63bcb8d1fcd9cf61bff593fcdb6d463408bc6cb2775dbb589ac04bc6de7e0bc351e0b3abd9 HEAD_REF master ) diff --git a/ports/boost-type-traits/CONTROL b/ports/boost-type-traits/CONTROL index 3b88d7122..f7eab32a7 100644 --- a/ports/boost-type-traits/CONTROL +++ b/ports/boost-type-traits/CONTROL @@ -1,5 +1,5 @@ # Automatically generated by boost-vcpkg-helpers/generate-ports.ps1 Source: boost-type-traits -Version: 1.66.0 +Version: 1.67.0 Build-Depends: boost-config, boost-core, boost-detail, boost-static-assert, boost-vcpkg-helpers Description: Boost type_traits module diff --git a/ports/boost-type-traits/portfile.cmake b/ports/boost-type-traits/portfile.cmake index 5a7fb6a79..0ae0417b2 100644 --- a/ports/boost-type-traits/portfile.cmake +++ b/ports/boost-type-traits/portfile.cmake @@ -5,8 +5,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO boostorg/type_traits - REF boost-1.66.0 - SHA512 ad05d6e50914e0d9c0e8267dd3b01f090f7dd3c6370b4b59ae1bbcc50b2cb2a5f1b2647eacc15ff4f2e071da0732a6fc47508284d6d20ca0a545fd6f8d90648c + REF boost-1.67.0 + SHA512 3a2c0b3498c9a71d668fcb0f0b46b7c97275396f5fe3703ceb2534a34bc497af10a655da72570ab9073a0a92db6ed079ed4ddd14fff54c791784d734a54d24bc HEAD_REF master ) diff --git a/ports/boost-typeof/CONTROL b/ports/boost-typeof/CONTROL index 93d92c65a..25c345a3e 100644 --- a/ports/boost-typeof/CONTROL +++ b/ports/boost-typeof/CONTROL @@ -1,5 +1,5 @@ # Automatically generated by boost-vcpkg-helpers/generate-ports.ps1 Source: boost-typeof -Version: 1.66.0 +Version: 1.67.0 Build-Depends: boost-config, boost-mpl, boost-preprocessor, boost-type-traits, boost-utility, boost-vcpkg-helpers Description: Boost typeof module diff --git a/ports/boost-typeof/portfile.cmake b/ports/boost-typeof/portfile.cmake index 644b8e121..2e7aaca5b 100644 --- a/ports/boost-typeof/portfile.cmake +++ b/ports/boost-typeof/portfile.cmake @@ -5,8 +5,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO boostorg/typeof - REF boost-1.66.0 - SHA512 4436dc1b346dfaf9bd77ab386e213fb4a5fb9f3ea5f4de3e2eaaf4e7c2c6712729071e8e25c4014c36a0977f62b646900e2db7c9f65121ef32475074940e4937 + REF boost-1.67.0 + SHA512 91b29446146a44aa0983c953086e45863b40e7d053670a0ef78f703d2419db7ac1615b42b7eca70e70088b7da9e9c37687e9ac570fc3995a74a9e78cae78280c HEAD_REF master ) diff --git a/ports/boost-ublas/CONTROL b/ports/boost-ublas/CONTROL index acbd90541..a6dd9d24e 100644 --- a/ports/boost-ublas/CONTROL +++ b/ports/boost-ublas/CONTROL @@ -1,5 +1,5 @@ # Automatically generated by boost-vcpkg-helpers/generate-ports.ps1 Source: boost-ublas -Version: 1.66.0 +Version: 1.67.0 Build-Depends: boost-concept-check, boost-config, boost-core, boost-iterator, boost-mpl, boost-range, boost-serialization, boost-smart-ptr, boost-static-assert, boost-typeof, boost-type-traits, boost-utility, boost-vcpkg-helpers Description: Boost ublas module diff --git a/ports/boost-ublas/portfile.cmake b/ports/boost-ublas/portfile.cmake index 385810a3b..db221b6cd 100644 --- a/ports/boost-ublas/portfile.cmake +++ b/ports/boost-ublas/portfile.cmake @@ -5,8 +5,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO boostorg/ublas - REF boost-1.66.0 - SHA512 77d2dac6f7df56d8640e000ffce7042c828765da9a1ccb1f487559ac7ad2577246334e32e058a41ef028719c7465990d12e4fc0294ecf1747ac90bda53cf7d00 + REF boost-1.67.0 + SHA512 5ff9cbbd1e9dd33eb1230e2d5247d80526be1d5f5d3e145dbdb2f95c1f61b86438a937174936cf4489fac81111b72ee317a6e653ae6c3d84b58bdc1cd2ce7a82 HEAD_REF master ) diff --git a/ports/boost-units/CONTROL b/ports/boost-units/CONTROL index 4728dcb90..2d85d080a 100644 --- a/ports/boost-units/CONTROL +++ b/ports/boost-units/CONTROL @@ -1,5 +1,5 @@ # Automatically generated by boost-vcpkg-helpers/generate-ports.ps1 Source: boost-units -Version: 1.66.0 +Version: 1.67.0 Build-Depends: boost-assert, boost-config, boost-core, boost-integer, boost-io, boost-lambda, boost-math, boost-mpl, boost-preprocessor, boost-serialization, boost-static-assert, boost-typeof, boost-type-traits, boost-utility, boost-vcpkg-helpers Description: Boost units module diff --git a/ports/boost-units/portfile.cmake b/ports/boost-units/portfile.cmake index 1180ec01b..df480dbb5 100644 --- a/ports/boost-units/portfile.cmake +++ b/ports/boost-units/portfile.cmake @@ -5,8 +5,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO boostorg/units - REF boost-1.66.0 - SHA512 493c91b8741788c18147b0689df82e8391992797420f09fa3d90f8405c1ac7cab6a17c39231836d4410525eae3ae53899157cd48e28e3136ffc16970fc5209f6 + REF boost-1.67.0 + SHA512 33ce1386e67982d4b6f45fa78ce787332c7a753463650762a66da1064741fc6f9909fe1929416ec7918060300cedda93642fd6adb4a2d5f4c689f4d48b2a720f HEAD_REF master ) diff --git a/ports/boost-unordered/CONTROL b/ports/boost-unordered/CONTROL index f051d4f33..50cd43f5f 100644 --- a/ports/boost-unordered/CONTROL +++ b/ports/boost-unordered/CONTROL @@ -1,5 +1,5 @@ # Automatically generated by boost-vcpkg-helpers/generate-ports.ps1 Source: boost-unordered -Version: 1.66.0 -Build-Depends: boost-assert, boost-compatibility, boost-config, boost-container, boost-core, boost-detail, boost-functional, boost-iterator, boost-move, boost-predef, boost-preprocessor, boost-smart-ptr, boost-throw-exception, boost-tuple, boost-type-traits, boost-utility, boost-vcpkg-helpers +Version: 1.67.0 +Build-Depends: boost-assert, boost-compatibility, boost-config, boost-container, boost-core, boost-detail, boost-functional, boost-move, boost-predef, boost-preprocessor, boost-smart-ptr, boost-throw-exception, boost-tuple, boost-type-traits, boost-utility, boost-vcpkg-helpers Description: Boost unordered module diff --git a/ports/boost-unordered/portfile.cmake b/ports/boost-unordered/portfile.cmake index f90c8094f..02fae3899 100644 --- a/ports/boost-unordered/portfile.cmake +++ b/ports/boost-unordered/portfile.cmake @@ -5,8 +5,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO boostorg/unordered - REF boost-1.66.0 - SHA512 4abb2d6a2847c28ecd2324afd4caf46a9fe2597e3bceaf2fe430cb82688ce6584137356fd3dff5fe1ab60ab8a51460821d9dd78c14d4e0fb6e11c4dee7cc0adb + REF boost-1.67.0 + SHA512 8eb086d4993ff7079b0919b0ad39ac16b37b4951eb9cf4d5f388aff37cf2b7ae42621277a23f8d870a35ff571de44ee1dc7b0faf108fdbf1ccdd8ed2d6be51d4 HEAD_REF master ) diff --git a/ports/boost-utility/CONTROL b/ports/boost-utility/CONTROL index 1793f88f3..481427860 100644 --- a/ports/boost-utility/CONTROL +++ b/ports/boost-utility/CONTROL @@ -1,5 +1,5 @@ # Automatically generated by boost-vcpkg-helpers/generate-ports.ps1 Source: boost-utility -Version: 1.66.0 -Build-Depends: boost-config, boost-core, boost-detail, boost-mpl, boost-preprocessor, boost-static-assert, boost-throw-exception, boost-type-traits, boost-vcpkg-helpers +Version: 1.67.0 +Build-Depends: boost-config, boost-core, boost-detail, boost-integer, boost-preprocessor, boost-static-assert, boost-throw-exception, boost-type-traits, boost-vcpkg-helpers Description: Boost utility module diff --git a/ports/boost-utility/portfile.cmake b/ports/boost-utility/portfile.cmake index 42c9d1fc7..1a919c18a 100644 --- a/ports/boost-utility/portfile.cmake +++ b/ports/boost-utility/portfile.cmake @@ -5,8 +5,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO boostorg/utility - REF boost-1.66.0 - SHA512 aa72e1d32bb1575e23ec8e1dc12421e56d114532a9e7b3ebf2edf6926c79d2e2eb3c5483f241bc014b65008a9d03fbeadc85a6f0cea9013ecea2b1c1e942ea59 + REF boost-1.67.0 + SHA512 4123a71af8234789b2b68f2a3b6e13e7ad3e46484e8b06ee2159d7337d101a2b1c8b8e7ca70ce29f0b71802f45014e1db03253e1f6515a6ad2f9d5ebced77caf HEAD_REF master ) diff --git a/ports/boost-uuid/CONTROL b/ports/boost-uuid/CONTROL index 9c81b7c12..09af27bd7 100644 --- a/ports/boost-uuid/CONTROL +++ b/ports/boost-uuid/CONTROL @@ -1,5 +1,5 @@ # Automatically generated by boost-vcpkg-helpers/generate-ports.ps1 Source: boost-uuid -Version: 1.66.0 -Build-Depends: boost-assert, boost-config, boost-core, boost-integer, boost-io, boost-iterator, boost-random, boost-serialization, boost-smart-ptr, boost-static-assert, boost-throw-exception, boost-type-traits, boost-vcpkg-helpers +Version: 1.67.0 +Build-Depends: boost-assert, boost-compatibility, boost-config, boost-core, boost-integer, boost-io, boost-numeric-conversion, boost-predef, boost-random, boost-serialization, boost-smart-ptr, boost-static-assert, boost-throw-exception, boost-tti, boost-type-traits, boost-vcpkg-helpers, boost-winapi Description: Boost uuid module diff --git a/ports/boost-uuid/portfile.cmake b/ports/boost-uuid/portfile.cmake index 35b9c4c17..b68c1f68b 100644 --- a/ports/boost-uuid/portfile.cmake +++ b/ports/boost-uuid/portfile.cmake @@ -5,8 +5,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO boostorg/uuid - REF boost-1.66.0 - SHA512 5fc333c76f4d44fcbca4a7be02117015e361b85c615d3f728d9805d32f55431fca33f90bb0151a789b341606d8ce7538163a162a4c7ba29823cf7a01326685d7 + REF boost-1.67.0 + SHA512 224324198b24c4606ca0c3c370c8d344730e6851ccdff012eaa6024ede958b342c5b728ddbb0a5c52dedcd0ac628bf12213de14654348c3e18eb20aa73d8b7e4 HEAD_REF master ) diff --git a/ports/boost-variant/CONTROL b/ports/boost-variant/CONTROL index 9edcfa99e..246ee7355 100644 --- a/ports/boost-variant/CONTROL +++ b/ports/boost-variant/CONTROL @@ -1,5 +1,5 @@ # Automatically generated by boost-vcpkg-helpers/generate-ports.ps1 Source: boost-variant -Version: 1.66.0 -Build-Depends: boost-assert, boost-bind, boost-config, boost-core, boost-detail, boost-functional, boost-math, boost-move, boost-mpl, boost-preprocessor, boost-static-assert, boost-throw-exception, boost-type-index, boost-type-traits, boost-utility, boost-vcpkg-helpers +Version: 1.67.0 +Build-Depends: boost-assert, boost-bind, boost-config, boost-core, boost-detail, boost-functional, boost-integer, boost-move, boost-mpl, boost-preprocessor, boost-static-assert, boost-throw-exception, boost-type-index, boost-type-traits, boost-utility, boost-vcpkg-helpers Description: Boost variant module diff --git a/ports/boost-variant/portfile.cmake b/ports/boost-variant/portfile.cmake index 8e32a822d..8449a21aa 100644 --- a/ports/boost-variant/portfile.cmake +++ b/ports/boost-variant/portfile.cmake @@ -5,8 +5,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO boostorg/variant - REF boost-1.66.0 - SHA512 3eb3d4070bf81033c0a342956393e2e902618dc482fd3ba7c0b4f97ac3259fff31943a9b059bc25dd6d399af6d8b56a8297b462776b14b5012c6436b00c7d491 + REF boost-1.67.0 + SHA512 1fc6a0a98cdb2eca64f8a380e31724c70a9a0260ab2e433ad5812c580c9e2a867c6faf7ee17b0c6cf94b6410af1e509ac5d51e93b6fa1174b3d1c55ca62a10c7 HEAD_REF master ) diff --git a/ports/boost-vcpkg-helpers/generate-ports.ps1 b/ports/boost-vcpkg-helpers/generate-ports.ps1 index 7f5ecc9fb..0635608fd 100644 --- a/ports/boost-vcpkg-helpers/generate-ports.ps1 +++ b/ports/boost-vcpkg-helpers/generate-ports.ps1 @@ -1,13 +1,13 @@ [CmdletBinding()] param ( $libraries = @(), - $version = "1.66.0" + $version = "1.67.0" ) $scriptsDir = split-path -parent $MyInvocation.MyCommand.Definition $libsDisabledInLinux = "python|fiber" -$libsDisabledInUWP = "iostreams|filesystem|thread|context|python|stacktrace|program[_-]options|coroutine`$|fiber|locale|test|type[_-]erasure|wave|log" +$libsDisabledInUWP = "iostreams|filesystem|thread|context|contract|python|stacktrace|program[_-]options|coroutine`$|fiber|locale|test|type[_-]erasure|wave|log" function Generate() { @@ -76,15 +76,9 @@ function Generate() "" ) - if ($Name -eq "python") + if (Test-Path "$scriptsDir/post-source-stubs/$Name.cmake") { - $portfileLines += @( - "# Find Python. Can't use find_package here, but we already know where everything is" - "file(GLOB PYTHON_INCLUDE_PATH `"`${CURRENT_INSTALLED_DIR}/include/python[0-9.]*`")" - "set(PYTHONLIBS_RELEASE `"`${CURRENT_INSTALLED_DIR}/lib`")" - "set(PYTHONLIBS_DEBUG `"`${CURRENT_INSTALLED_DIR}/debug/lib`")" - "string(REGEX REPLACE `".*python([0-9\.]+)`$`" `"\\1`" PYTHON_VERSION `"`${PYTHON_INCLUDE_PATH}`")" - ) + $portfileLines += @(get-content "$scriptsDir/post-source-stubs/$Name.cmake") } if ($NeedsBuild) @@ -127,7 +121,7 @@ function Generate() { $portfileLines += @( "include(`${CURRENT_INSTALLED_DIR}/share/boost-build/boost-modular-build.cmake)" - "boost_modular_build(SOURCE_PATH `${SOURCE_PATH} REQUIREMENTS `"/boost/date_time//boost_date_time`")" + "boost_modular_build(SOURCE_PATH `${SOURCE_PATH} REQUIREMENTS `"/boost/date_time//boost_date_time`" OPTIONS /boost/thread//boost_thread)" ) } else @@ -160,6 +154,14 @@ function Generate() "if (VCPKG_LIBRARY_LINKAGE STREQUAL dynamic)" " file(APPEND `${CURRENT_PACKAGES_DIR}/include/boost/config/user.hpp `"\n#define BOOST_ALL_DYN_LINK\n`")" "endif()" + "file(COPY `${SOURCE_PATH}/checks DESTINATION `${CURRENT_PACKAGES_DIR}/share/boost-config)" + ) + } + if ($Name -eq "predef") + { + $portfileLines += @( + "" + "file(COPY `${SOURCE_PATH}/tools/check DESTINATION `${CURRENT_PACKAGES_DIR}/share/boost-predef)" ) } if ($Name -eq "test") @@ -198,6 +200,19 @@ if (!(Test-Path "$scriptsDir/boost")) popd } } +else +{ + pushd $scriptsDir/boost + try + { + git fetch + git checkout -f boost-$version + } + finally + { + popd + } +} $libraries_found = ls $scriptsDir/boost/libs -directory | % name | % { if ($_ -match "numeric") @@ -229,7 +244,7 @@ foreach ($library in $libraries) if (!(Test-Path $archive)) { "Downloading boost/$library..." - Invoke-WebRequest "https://github.com/boostorg/$library/archive/boost-$version.tar.gz" -OutFile $archive + & "$scriptsDir\..\..\downloads\tools\aria2-18.01.0-windows\aria2-1.33.1-win-32bit-build1\aria2c.exe" "https://github.com/boostorg/$library/archive/boost-$version.tar.gz" -d "$scriptsDir/downloads" -o "$library-boost-$version.tar.gz" } $hash = vcpkg hash $archive $unpacked = "$scriptsDir/libs/$library-boost-$version" @@ -293,6 +308,11 @@ foreach ($library in $libraries) $deps = @($groups | ? { $libraries_found -contains $_ }) + if ($library -eq "regex") + { + $deps += @("container_hash") + } + $deps = @($deps | ? { # Boost contains cycles, so remove a few dependencies to break the loop. (($library -notmatch "core|assert|mpl|detail|type_traits") -or ($_ -notmatch "utility")) ` diff --git a/ports/boost-vcpkg-helpers/post-source-stubs/context.cmake b/ports/boost-vcpkg-helpers/post-source-stubs/context.cmake new file mode 100644 index 000000000..9ccf34233 --- /dev/null +++ b/ports/boost-vcpkg-helpers/post-source-stubs/context.cmake @@ -0,0 +1,5 @@ +file(READ "${SOURCE_PATH}/build/Jamfile.v2" _contents) +string(REPLACE "import ../../config/checks/config" "import config/checks/config" _contents "${_contents}") +file(WRITE "${SOURCE_PATH}/build/Jamfile.v2" "${_contents}") +file(COPY "${CURRENT_INSTALLED_DIR}/share/boost-config/checks" DESTINATION "${SOURCE_PATH}/build/config") + diff --git a/ports/boost-vcpkg-helpers/post-source-stubs/fiber.cmake b/ports/boost-vcpkg-helpers/post-source-stubs/fiber.cmake new file mode 100644 index 000000000..9ccf34233 --- /dev/null +++ b/ports/boost-vcpkg-helpers/post-source-stubs/fiber.cmake @@ -0,0 +1,5 @@ +file(READ "${SOURCE_PATH}/build/Jamfile.v2" _contents) +string(REPLACE "import ../../config/checks/config" "import config/checks/config" _contents "${_contents}") +file(WRITE "${SOURCE_PATH}/build/Jamfile.v2" "${_contents}") +file(COPY "${CURRENT_INSTALLED_DIR}/share/boost-config/checks" DESTINATION "${SOURCE_PATH}/build/config") + diff --git a/ports/boost-vcpkg-helpers/post-source-stubs/log.cmake b/ports/boost-vcpkg-helpers/post-source-stubs/log.cmake new file mode 100644 index 000000000..78500ddc3 --- /dev/null +++ b/ports/boost-vcpkg-helpers/post-source-stubs/log.cmake @@ -0,0 +1,13 @@ +file(READ "${SOURCE_PATH}/build/Jamfile.v2" _contents) +string(REPLACE "import ../../config/checks/config" "import config/checks/config" _contents "${_contents}") +string(REPLACE " @select-arch-specific-sources" "#@select-arch-specific-sources" _contents "${_contents}") +file(WRITE "${SOURCE_PATH}/build/Jamfile.v2" "${_contents}") +file(COPY "${CURRENT_INSTALLED_DIR}/share/boost-config/checks" DESTINATION "${SOURCE_PATH}/build/config") + +file(READ ${SOURCE_PATH}/build/log-architecture.jam _contents) +string(REPLACE + "\nproject.load [ path.join [ path.make $(here:D) ] ../../config/checks/architecture ] ;" + "\nproject.load [ path.join [ path.make $(here:D) ] config/checks/architecture ] ;" + _contents "${_contents}") +file(WRITE ${SOURCE_PATH}/build/log-architecture.jam "${_contents}") + diff --git a/ports/boost-vcpkg-helpers/post-source-stubs/python.cmake b/ports/boost-vcpkg-helpers/post-source-stubs/python.cmake new file mode 100644 index 000000000..40b8e0a0b --- /dev/null +++ b/ports/boost-vcpkg-helpers/post-source-stubs/python.cmake @@ -0,0 +1,5 @@ +# Find Python. Can't use find_package here, but we already know where everything is +file(GLOB PYTHON_INCLUDE_PATH "${CURRENT_INSTALLED_DIR}/include/python[0-9.]*") +set(PYTHONLIBS_RELEASE "${CURRENT_INSTALLED_DIR}/lib") +set(PYTHONLIBS_DEBUG "${CURRENT_INSTALLED_DIR}/debug/lib") +string(REGEX REPLACE ".*python([0-9\.]+)$" "\\1" PYTHON_VERSION "${PYTHON_INCLUDE_PATH}") diff --git a/ports/boost-vcpkg-helpers/post-source-stubs/test.cmake b/ports/boost-vcpkg-helpers/post-source-stubs/test.cmake new file mode 100644 index 000000000..b2872338d --- /dev/null +++ b/ports/boost-vcpkg-helpers/post-source-stubs/test.cmake @@ -0,0 +1,5 @@ +file(READ "${SOURCE_PATH}/build/Jamfile.v2" _contents) +string(REPLACE "import ../../predef/check/predef" "import predef/check/predef" _contents "${_contents}") +file(WRITE "${SOURCE_PATH}/build/Jamfile.v2" "${_contents}") +file(COPY "${CURRENT_INSTALLED_DIR}/share/boost-predef/check" DESTINATION "${SOURCE_PATH}/build/predef") + diff --git a/ports/boost-vmd/CONTROL b/ports/boost-vmd/CONTROL index cbd36905a..b6bea6cff 100644 --- a/ports/boost-vmd/CONTROL +++ b/ports/boost-vmd/CONTROL @@ -1,5 +1,5 @@ # Automatically generated by boost-vcpkg-helpers/generate-ports.ps1 Source: boost-vmd -Version: 1.66.0 +Version: 1.67.0 Build-Depends: boost-preprocessor, boost-vcpkg-helpers Description: Boost vmd module diff --git a/ports/boost-vmd/portfile.cmake b/ports/boost-vmd/portfile.cmake index eab18ada3..0d96a6606 100644 --- a/ports/boost-vmd/portfile.cmake +++ b/ports/boost-vmd/portfile.cmake @@ -5,8 +5,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO boostorg/vmd - REF boost-1.66.0 - SHA512 a0112a6751d1dc9c015d8ba8a2dce5ebe13c2189cec1039a5bc57e71efad7244c39eabdb5e24c8d8111edfc1a9856154b9c3f658f36bfd935274e02229e86821 + REF boost-1.67.0 + SHA512 479b816decaf5bba27f6aee25af950bfce2df62ebd1e278cf62ad6260bb590ac93c284f09de43fc96d0504093937507d55bffd1ae751af6120a4632da02409d6 HEAD_REF master ) diff --git a/ports/boost-wave/CONTROL b/ports/boost-wave/CONTROL index 251703103..aa1a8e707 100644 --- a/ports/boost-wave/CONTROL +++ b/ports/boost-wave/CONTROL @@ -1,5 +1,5 @@ # Automatically generated by boost-vcpkg-helpers/generate-ports.ps1 Source: boost-wave -Version: 1.66.0 -Build-Depends: boost-assert, boost-build, boost-concept-check, boost-config, boost-core, boost-detail, boost-filesystem (!uwp), boost-integer, boost-iterator, boost-modular-build-helper, boost-mpl, boost-multi-index, boost-pool, boost-preprocessor, boost-serialization, boost-smart-ptr, boost-spirit, boost-static-assert, boost-throw-exception, boost-type-traits, boost-vcpkg-helpers +Version: 1.67.0 +Build-Depends: boost-assert, boost-build, boost-concept-check, boost-config, boost-core, boost-detail, boost-filesystem (!uwp), boost-integer, boost-iterator, boost-lexical-cast, boost-math, boost-modular-build-helper, boost-mpl, boost-multi-index, boost-pool, boost-preprocessor, boost-serialization, boost-smart-ptr, boost-spirit, boost-static-assert, boost-throw-exception, boost-type-traits, boost-vcpkg-helpers Description: Boost wave module diff --git a/ports/boost-wave/portfile.cmake b/ports/boost-wave/portfile.cmake index e335f6ba4..479770e92 100644 --- a/ports/boost-wave/portfile.cmake +++ b/ports/boost-wave/portfile.cmake @@ -5,8 +5,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO boostorg/wave - REF boost-1.66.0 - SHA512 2fd57aab7cbc92e7d46bc35512f2019d71f0e5af93dfcbfeada595d899bbf9ae1f1c88f915d555f2fce16419a9320164203303d00f09493cfa5f87afde002d42 + REF boost-1.67.0 + SHA512 e298b903dbeae5577938e92559b699a0f89abcff9299781c1857c401503b6c31b56420908aed6f0063b25508e97e978c39282352a1355d0924012e384994094b HEAD_REF master ) diff --git a/ports/boost-winapi/CONTROL b/ports/boost-winapi/CONTROL index f06f0c530..9f3242243 100644 --- a/ports/boost-winapi/CONTROL +++ b/ports/boost-winapi/CONTROL @@ -1,5 +1,5 @@ # Automatically generated by boost-vcpkg-helpers/generate-ports.ps1 Source: boost-winapi -Version: 1.66.0 +Version: 1.67.0 Build-Depends: boost-config, boost-integer, boost-predef, boost-vcpkg-helpers Description: Boost winapi module diff --git a/ports/boost-winapi/portfile.cmake b/ports/boost-winapi/portfile.cmake index d788dea86..30c36ee1f 100644 --- a/ports/boost-winapi/portfile.cmake +++ b/ports/boost-winapi/portfile.cmake @@ -5,8 +5,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO boostorg/winapi - REF boost-1.66.0 - SHA512 ec60e5d73d6553ca981b4a65b0edcd85dc54336e6369124204495a35c6c1c7adf79345e47425a93f1d9ed6694bfae76828162eb102bc660901fb276a3e9eb989 + REF boost-1.67.0 + SHA512 1a0935132e8058b3f592406aaf6bb6fa8df6c96c35e61e09d84e39c6ab00c50b87346789d309fdfb7de8f6252134a76a59c0dc214fe1f4ee25d82c379cf63a3c HEAD_REF master ) diff --git a/ports/boost-xpressive/CONTROL b/ports/boost-xpressive/CONTROL index e126d3c19..baa3e7216 100644 --- a/ports/boost-xpressive/CONTROL +++ b/ports/boost-xpressive/CONTROL @@ -1,5 +1,5 @@ # Automatically generated by boost-vcpkg-helpers/generate-ports.ps1 Source: boost-xpressive -Version: 1.66.0 +Version: 1.67.0 Build-Depends: boost-assert, boost-compatibility, boost-config, boost-conversion, boost-core, boost-detail, boost-exception, boost-integer, boost-iterator, boost-lexical-cast, boost-math, boost-mpl, boost-numeric-conversion, boost-optional, boost-preprocessor, boost-proto, boost-range, boost-smart-ptr, boost-static-assert, boost-throw-exception, boost-typeof, boost-type-traits, boost-utility, boost-vcpkg-helpers Description: Boost xpressive module diff --git a/ports/boost-xpressive/portfile.cmake b/ports/boost-xpressive/portfile.cmake index 2eacea441..2d4791918 100644 --- a/ports/boost-xpressive/portfile.cmake +++ b/ports/boost-xpressive/portfile.cmake @@ -5,8 +5,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO boostorg/xpressive - REF boost-1.66.0 - SHA512 99b4cab1ec6e85421dfbd8085cbdad2533e48aaff352ba920d589da328ee78a009d27b53042f08bb64d4b3b02499152928cadb5c97537c9b8ab5ce97daaf34f9 + REF boost-1.67.0 + SHA512 3883764ee2d0c5cfcf444319ae5c7ec547d27d0f54c1e2f4e4b134be25c3fbc7954bae1f783cac96386a63984dcff4197bd98176644c1d6bc50926256f39069d HEAD_REF master ) diff --git a/ports/boost/CONTROL b/ports/boost/CONTROL index 72993bba6..23fc8ef59 100644 --- a/ports/boost/CONTROL +++ b/ports/boost/CONTROL @@ -1,8 +1,8 @@ # Automatically generated by boost-vcpkg-helpers/generate-ports.ps1 Source: boost -Version: 1.66.0 +Version: 1.67.0 Description: Peer-reviewed portable C++ source libraries -Build-Depends: boost-accumulators, boost-algorithm, boost-align, boost-any, boost-array, boost-asio, boost-assert, boost-assign, boost-atomic, boost-beast, boost-bimap, boost-bind, boost-callable-traits, boost-chrono, boost-circular-buffer, boost-compatibility, boost-compute, boost-concept-check, boost-config, boost-container, boost-context (!uwp), boost-conversion, boost-convert, boost-core, boost-coroutine (!uwp), boost-coroutine2, boost-crc, boost-date-time, boost-detail, boost-disjoint-sets, boost-dll, boost-dynamic-bitset, boost-endian, boost-exception, boost-fiber (windows), boost-filesystem (!uwp), boost-flyweight, boost-foreach, boost-format, boost-function, boost-functional, boost-function-types, boost-fusion, boost-geometry, boost-gil, boost-graph, boost-graph-parallel, boost-hana, boost-heap, boost-icl, boost-integer, boost-interprocess, boost-intrusive, boost-io, boost-iostreams (!uwp), boost-iterator, boost-lambda, boost-lexical-cast, boost-locale (!uwp), boost-local-function, boost-lockfree, boost-log (!uwp), boost-logic (!uwp), boost-math, boost-metaparse, boost-move, boost-mp11, boost-mpl, boost-msm, boost-multiprecision, boost-multi-array, boost-multi-index, boost-numeric-conversion, boost-interval, boost-odeint, boost-ublas, boost-optional, boost-parameter, boost-phoenix, boost-polygon, boost-poly-collection, boost-pool, boost-predef, boost-preprocessor, boost-process, boost-program-options (!uwp), boost-property-map, boost-property-tree, boost-proto, boost-ptr-container, boost-python (windows), boost-qvm, boost-random, boost-range, boost-ratio, boost-rational, boost-regex, boost-scope-exit, boost-serialization, boost-signals, boost-signals2, boost-smart-ptr, boost-sort, boost-spirit, boost-stacktrace (!uwp), boost-statechart, boost-static-assert, boost-system, boost-test (!uwp), boost-thread (!uwp), boost-throw-exception, boost-timer, boost-tokenizer, boost-tti, boost-tuple, boost-typeof, boost-type-erasure (!uwp), boost-type-index, boost-type-traits, boost-units, boost-unordered, boost-utility, boost-uuid, boost-variant, boost-vmd, boost-wave (!uwp), boost-winapi, boost-xpressive +Build-Depends: boost-accumulators, boost-algorithm, boost-align, boost-any, boost-array, boost-asio, boost-assert, boost-assign, boost-atomic, boost-beast, boost-bimap, boost-bind, boost-callable-traits, boost-chrono, boost-circular-buffer, boost-compatibility, boost-compute, boost-concept-check, boost-config, boost-container, boost-container-hash, boost-context (!uwp), boost-contract (!uwp), boost-conversion, boost-convert, boost-core, boost-coroutine (!uwp), boost-coroutine2, boost-crc, boost-date-time, boost-detail, boost-disjoint-sets, boost-dll, boost-dynamic-bitset, boost-endian, boost-exception, boost-fiber (windows), boost-filesystem (!uwp), boost-flyweight, boost-foreach, boost-format, boost-function, boost-functional, boost-function-types, boost-fusion, boost-geometry, boost-gil, boost-graph, boost-graph-parallel, boost-hana, boost-heap, boost-hof, boost-icl, boost-integer, boost-interprocess, boost-intrusive, boost-io, boost-iostreams (!uwp), boost-iterator, boost-lambda, boost-lexical-cast, boost-locale (!uwp), boost-local-function, boost-lockfree, boost-log (!uwp), boost-logic (!uwp), boost-math, boost-metaparse, boost-move, boost-mp11, boost-mpl, boost-msm, boost-multiprecision, boost-multi-array, boost-multi-index, boost-numeric-conversion, boost-interval, boost-odeint, boost-ublas, boost-optional, boost-parameter, boost-phoenix, boost-polygon, boost-poly-collection, boost-pool, boost-predef, boost-preprocessor, boost-process, boost-program-options (!uwp), boost-property-map, boost-property-tree, boost-proto, boost-ptr-container, boost-python (windows), boost-qvm, boost-random, boost-range, boost-ratio, boost-rational, boost-regex, boost-scope-exit, boost-serialization, boost-signals, boost-signals2, boost-smart-ptr, boost-sort, boost-spirit, boost-stacktrace (!uwp), boost-statechart, boost-static-assert, boost-system, boost-test (!uwp), boost-thread (!uwp), boost-throw-exception, boost-timer, boost-tokenizer, boost-tti, boost-tuple, boost-typeof, boost-type-erasure (!uwp), boost-type-index, boost-type-traits, boost-units, boost-unordered, boost-utility, boost-uuid, boost-variant, boost-vmd, boost-wave (!uwp), boost-winapi, boost-xpressive Feature: mpi Description: Build with MPI support diff --git a/ports/cartographer/CONTROL b/ports/cartographer/CONTROL index 8439ea8e6..88f0dc6b7 100644 --- a/ports/cartographer/CONTROL +++ b/ports/cartographer/CONTROL @@ -1,4 +1,4 @@ Source: cartographer -Version: 0.3.0-3 +Version: 0.3.0-4 Build-Depends: ceres[eigensparse], gflags, glog, lua, cairo, boost-iostreams, gtest, protobuf Description: Google 2D & 3D SLAM package diff --git a/ports/cartographer/portfile.cmake b/ports/cartographer/portfile.cmake index 49ca1b4b2..75f28a015 100644 --- a/ports/cartographer/portfile.cmake +++ b/ports/cartographer/portfile.cmake @@ -16,7 +16,8 @@ vcpkg_apply_patches( vcpkg_configure_cmake( SOURCE_PATH ${SOURCE_PATH} - OPTIONS + PREFER_NINJA + OPTIONS -DGFLAGS_PREFER_EXPORTED_GFLAGS_CMAKE_CONFIGURATION=OFF -DGLOG_PREFER_EXPORTED_GLOG_CMAKE_CONFIGURATION=OFF -Dgtest_disable_pthreads=ON @@ -27,7 +28,7 @@ vcpkg_configure_cmake( ) vcpkg_install_cmake() - +vcpkg_fixup_cmake_targets(CONFIG_PATH share/cartographer) vcpkg_copy_pdbs() # Clean diff --git a/ports/libtorrent/CONTROL b/ports/libtorrent/CONTROL index e0de70962..815a53497 100644 --- a/ports/libtorrent/CONTROL +++ b/ports/libtorrent/CONTROL @@ -1,4 +1,4 @@ Source: libtorrent -Version: 1.1.6 +Version: 1.1.6-1 Description: An efficient feature complete C++ BitTorrent implementation -Build-Depends: openssl, boost-system, boost-date-time, boost-chrono, boost-random, boost-asio, boost-crc, boost-config +Build-Depends: openssl, boost-system, boost-date-time, boost-chrono, boost-random, boost-asio, boost-crc, boost-config, boost-iterator diff --git a/ports/libtorrent/boost-167.patch b/ports/libtorrent/boost-167.patch new file mode 100644 index 000000000..279d517d5 --- /dev/null +++ b/ports/libtorrent/boost-167.patch @@ -0,0 +1,48 @@ +diff --git a/include/libtorrent/ip_filter.hpp b/include/libtorrent/ip_filter.hpp +index dac1cab..0b29c64 100644 +--- a/include/libtorrent/ip_filter.hpp ++++ b/include/libtorrent/ip_filter.hpp +@@ -42,6 +42,7 @@ POSSIBILITY OF SUCH DAMAGE. + + #include + #include ++#include + #include + #include + +diff --git a/src/kademlia/routing_table.cpp b/src/kademlia/routing_table.cpp +index 1ac00de..1d11617 100644 +--- a/src/kademlia/routing_table.cpp ++++ b/src/kademlia/routing_table.cpp +@@ -53,6 +53,7 @@ POSSIBILITY OF SUCH DAMAGE. + + #include + #include ++#include + + #include "libtorrent/aux_/disable_warnings_pop.hpp" + +diff --git a/src/torrent.cpp b/src/torrent.cpp +index feacfa4..7b2b920 100644 +--- a/src/torrent.cpp ++++ b/src/torrent.cpp +@@ -46,6 +46,7 @@ POSSIBILITY OF SUCH DAMAGE. + + #include + #include ++#include + #if TORRENT_USE_I2P + # include + #endif +diff --git a/test/test_ip_filter.cpp b/test/test_ip_filter.cpp +index 21ac404..40e3cd5 100644 +--- a/test/test_ip_filter.cpp ++++ b/test/test_ip_filter.cpp +@@ -32,6 +32,7 @@ POSSIBILITY OF SUCH DAMAGE. + + #include "libtorrent/ip_filter.hpp" + #include ++#include + + #include "test.hpp" + #include "settings.hpp" diff --git a/ports/libtorrent/portfile.cmake b/ports/libtorrent/portfile.cmake index bf0d851b9..792fe1dee 100644 --- a/ports/libtorrent/portfile.cmake +++ b/ports/libtorrent/portfile.cmake @@ -10,7 +10,9 @@ vcpkg_from_github( vcpkg_apply_patches( SOURCE_PATH ${SOURCE_PATH} - PATCHES ${CMAKE_CURRENT_LIST_DIR}/add-datetime-to-boost-libs.patch + PATCHES + ${CMAKE_CURRENT_LIST_DIR}/add-datetime-to-boost-libs.patch + ${CMAKE_CURRENT_LIST_DIR}/boost-167.patch ) string(COMPARE EQUAL "${VCPKG_LIBRARY_LINKAGE}" "dynamic" LIBTORRENT_SHARED) -- cgit v1.2.3 From 60e63d34472819af88bd0f4aa4ca5b502775cf04 Mon Sep 17 00:00:00 2001 From: jadedrip Date: Fri, 20 Apr 2018 01:43:10 +0800 Subject: update llvm to 6.0.0 (#3118) --- ports/llvm/CONTROL | 8 +-- ports/llvm/portfile.cmake | 164 +++++++++++++++++++++++----------------------- 2 files changed, 86 insertions(+), 86 deletions(-) diff --git a/ports/llvm/CONTROL b/ports/llvm/CONTROL index ecc6346ca..27604d397 100644 --- a/ports/llvm/CONTROL +++ b/ports/llvm/CONTROL @@ -1,4 +1,4 @@ -Source: llvm -Version: 5.0.1 -Description: The LLVM Compiler Infrastructure -Build-Depends: atlmfc +Source: llvm +Version: 6.0.0 +Description: The LLVM Compiler Infrastructure +Build-Depends: atlmfc diff --git a/ports/llvm/portfile.cmake b/ports/llvm/portfile.cmake index 60580947e..795d72d31 100644 --- a/ports/llvm/portfile.cmake +++ b/ports/llvm/portfile.cmake @@ -1,82 +1,82 @@ -# LLVM documentation recommends always using static library linkage when -# building with Microsoft toolchain; it's also the default on other platforms -set(VCPKG_LIBRARY_LINKAGE static) - -if(VCPKG_CMAKE_SYSTEM_NAME STREQUAL "WindowsStore") - message(FATAL_ERROR "llvm cannot currently be built for UWP") -endif() - -include(vcpkg_common_functions) -set(SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src/llvm-5.0.1.src) -vcpkg_download_distfile(ARCHIVE - URLS "http://releases.llvm.org/5.0.1/llvm-5.0.1.src.tar.xz" - FILENAME "llvm-5.0.1.src.tar.xz" - SHA512 bee1d45fca15ce725b1f2b1339b13eb6f750a3a321cfd099075477ec25835a8ca55b5366172c4aad46592dfd8afe372349ecf264f581463d017f9cee2d63c1cb -) -vcpkg_extract_source_archive(${ARCHIVE}) - -vcpkg_download_distfile(CLANG_ARCHIVE - URLS "http://releases.llvm.org/5.0.1/cfe-5.0.1.src.tar.xz" - FILENAME "cfe-5.0.1.src.tar.xz" - SHA512 6619177a2ff9934fe8b15d6aa229abb8e34d0b1a75228d9efba9393daf71d6419a7256de57b31e2f9f829f71f842118556f996e86ee076f1e0a7cd394dfd31a2 -) -vcpkg_extract_source_archive(${CLANG_ARCHIVE} ${SOURCE_PATH}/tools) - -if(NOT EXISTS ${SOURCE_PATH}/tools/clang) - file(RENAME ${SOURCE_PATH}/tools/cfe-5.0.1.src ${SOURCE_PATH}/tools/clang) -endif() - -vcpkg_apply_patches( - SOURCE_PATH ${SOURCE_PATH} - PATCHES ${CMAKE_CURRENT_LIST_DIR}/install-cmake-modules-to-share.patch -) - -vcpkg_find_acquire_program(PYTHON3) -get_filename_component(PYTHON3_DIR "${PYTHON3}" DIRECTORY) -set(ENV{PATH} "$ENV{PATH};${PYTHON3_DIR}") - -vcpkg_configure_cmake( - SOURCE_PATH ${SOURCE_PATH} - PREFER_NINJA - OPTIONS - -DLLVM_TARGETS_TO_BUILD=X86 - -DLLVM_INCLUDE_TOOLS=ON - -DLLVM_INCLUDE_UTILS=OFF - -DLLVM_INCLUDE_EXAMPLES=OFF - -DLLVM_INCLUDE_TESTS=OFF - -DLLVM_ABI_BREAKING_CHECKS=FORCE_OFF - -DLLVM_TOOLS_INSTALL_DIR=tools/llvm -) - -vcpkg_install_cmake() - -file(GLOB EXE ${CURRENT_PACKAGES_DIR}/bin/*) -file(GLOB DEBUG_EXE ${CURRENT_PACKAGES_DIR}/debug/bin/*) -file(COPY ${EXE} DESTINATION ${CURRENT_PACKAGES_DIR}/tools/llvm) -file(COPY ${DEBUG_EXE} DESTINATION ${CURRENT_PACKAGES_DIR}/debug/tools/llvm) -file(REMOVE ${EXE}) -file(REMOVE ${DEBUG_EXE}) - -vcpkg_fixup_cmake_targets(CONFIG_PATH lib/cmake/clang TARGET_PATH share/clang) -vcpkg_fixup_cmake_targets(CONFIG_PATH share/llvm) -vcpkg_copy_tool_dependencies(${CURRENT_PACKAGES_DIR}/tools/llvm) - -file(REMOVE_RECURSE - ${CURRENT_PACKAGES_DIR}/debug/include - ${CURRENT_PACKAGES_DIR}/debug/tools - ${CURRENT_PACKAGES_DIR}/debug/share - ${CURRENT_PACKAGES_DIR}/debug/bin - ${CURRENT_PACKAGES_DIR}/debug/msbuild-bin - ${CURRENT_PACKAGES_DIR}/bin - ${CURRENT_PACKAGES_DIR}/msbuild-bin - ${CURRENT_PACKAGES_DIR}/tools/msbuild-bin -) - -# Remove one empty include subdirectory if it is indeed empty -file(GLOB MCANALYSISFILES ${CURRENT_PACKAGES_DIR}/include/llvm/MC/MCAnalysis/*) -if(NOT MCANALYSISFILES) - file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/include/llvm/MC/MCAnalysis) -endif() - -# Handle copyright -file(INSTALL ${SOURCE_PATH}/LICENSE.TXT DESTINATION ${CURRENT_PACKAGES_DIR}/share/llvm RENAME copyright) +# LLVM documentation recommends always using static library linkage when +# building with Microsoft toolchain; it's also the default on other platforms +set(VCPKG_LIBRARY_LINKAGE static) + +if(VCPKG_CMAKE_SYSTEM_NAME STREQUAL "WindowsStore") + message(FATAL_ERROR "llvm cannot currently be built for UWP") +endif() + +include(vcpkg_common_functions) +set(SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src/llvm-6.0.0.src) +vcpkg_download_distfile(ARCHIVE + URLS "http://releases.llvm.org/6.0.0/llvm-6.0.0.src.tar.xz" + FILENAME "llvm-6.0.0.src.tar.xz" + SHA512 a71fdd5ddc46f01327ad891cfcc198febdbe10769c57f14d8a4fb7d514621ee4080e1a641200d3353c16a16731d390270499ec6cd3dc98fadc570f3eb6b52b8c +) +vcpkg_extract_source_archive(${ARCHIVE}) + +vcpkg_download_distfile(CLANG_ARCHIVE + URLS "http://releases.llvm.org/6.0.0/cfe-6.0.0.src.tar.xz" + FILENAME "cfe-6.0.0.src.tar.xz" + SHA512 e886dd27448503bbfc7fd4f68eb089c19b2f2be4f0e5b26d3df253833f60b91d70b472a6b530063386e2252075b110ce9f5942800feddf6c34b94a75cf7bd5c6 +) +vcpkg_extract_source_archive(${CLANG_ARCHIVE} ${SOURCE_PATH}/tools) + +if(NOT EXISTS ${SOURCE_PATH}/tools/clang) + file(RENAME ${SOURCE_PATH}/tools/cfe-6.0.0.src ${SOURCE_PATH}/tools/clang) +endif() + +vcpkg_apply_patches( + SOURCE_PATH ${SOURCE_PATH} + PATCHES ${CMAKE_CURRENT_LIST_DIR}/install-cmake-modules-to-share.patch +) + +vcpkg_find_acquire_program(PYTHON3) +get_filename_component(PYTHON3_DIR "${PYTHON3}" DIRECTORY) +set(ENV{PATH} "$ENV{PATH};${PYTHON3_DIR}") + +vcpkg_configure_cmake( + SOURCE_PATH ${SOURCE_PATH} + PREFER_NINJA + OPTIONS + -DLLVM_TARGETS_TO_BUILD=X86 + -DLLVM_INCLUDE_TOOLS=ON + -DLLVM_INCLUDE_UTILS=OFF + -DLLVM_INCLUDE_EXAMPLES=OFF + -DLLVM_INCLUDE_TESTS=OFF + -DLLVM_ABI_BREAKING_CHECKS=FORCE_OFF + -DLLVM_TOOLS_INSTALL_DIR=tools/llvm +) + +vcpkg_install_cmake() + +file(GLOB EXE ${CURRENT_PACKAGES_DIR}/bin/*) +file(GLOB DEBUG_EXE ${CURRENT_PACKAGES_DIR}/debug/bin/*) +file(COPY ${EXE} DESTINATION ${CURRENT_PACKAGES_DIR}/tools/llvm) +file(COPY ${DEBUG_EXE} DESTINATION ${CURRENT_PACKAGES_DIR}/debug/tools/llvm) +file(REMOVE ${EXE}) +file(REMOVE ${DEBUG_EXE}) + +vcpkg_fixup_cmake_targets(CONFIG_PATH lib/cmake/clang TARGET_PATH share/clang) +vcpkg_fixup_cmake_targets(CONFIG_PATH share/llvm) +vcpkg_copy_tool_dependencies(${CURRENT_PACKAGES_DIR}/tools/llvm) + +file(REMOVE_RECURSE + ${CURRENT_PACKAGES_DIR}/debug/include + ${CURRENT_PACKAGES_DIR}/debug/tools + ${CURRENT_PACKAGES_DIR}/debug/share + ${CURRENT_PACKAGES_DIR}/debug/bin + ${CURRENT_PACKAGES_DIR}/debug/msbuild-bin + ${CURRENT_PACKAGES_DIR}/bin + ${CURRENT_PACKAGES_DIR}/msbuild-bin + ${CURRENT_PACKAGES_DIR}/tools/msbuild-bin +) + +# Remove one empty include subdirectory if it is indeed empty +file(GLOB MCANALYSISFILES ${CURRENT_PACKAGES_DIR}/include/llvm/MC/MCAnalysis/*) +if(NOT MCANALYSISFILES) + file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/include/llvm/MC/MCAnalysis) +endif() + +# Handle copyright +file(INSTALL ${SOURCE_PATH}/LICENSE.TXT DESTINATION ${CURRENT_PACKAGES_DIR}/share/llvm RENAME copyright) -- cgit v1.2.3 From 12e21abfc77ce6b68fd47ac6faa6722e80d22977 Mon Sep 17 00:00:00 2001 From: Ashik Salim Date: Fri, 20 Apr 2018 02:56:48 +0530 Subject: [x264] Fix compilation for uwp (#3270) * [x264] borrow some code from ffmpeg portfile to fix compilation for uwp * [x264] Fix uwp configure instead of removing -RTC1 --- ports/x264/CONTROL | 2 +- ports/x264/portfile.cmake | 20 ++++++++++++++++++-- ports/x264/uwp-cflags.patch | 12 ++++++++++++ 3 files changed, 31 insertions(+), 3 deletions(-) create mode 100644 ports/x264/uwp-cflags.patch diff --git a/ports/x264/CONTROL b/ports/x264/CONTROL index b9a3a4f9b..245fb8f7f 100644 --- a/ports/x264/CONTROL +++ b/ports/x264/CONTROL @@ -1,3 +1,3 @@ Source: x264 -Version: 152-e9a5903edf8ca59 +Version: 152-e9a5903edf8ca59-1 Description: x264 is a free software library and application for encoding video streams into the H.264/MPEG-4 AVC compression format diff --git a/ports/x264/portfile.cmake b/ports/x264/portfile.cmake index b9dbfa34d..d5f85ecdd 100644 --- a/ports/x264/portfile.cmake +++ b/ports/x264/portfile.cmake @@ -10,6 +10,12 @@ vcpkg_from_github( HEAD_REF master ) +vcpkg_apply_patches( + SOURCE_PATH ${SOURCE_PATH} + PATCHES + ${CMAKE_CURRENT_LIST_DIR}/uwp-cflags.patch +) + # Acquire tools vcpkg_acquire_msys(MSYS_ROOT PACKAGES make automake1.15) @@ -25,10 +31,18 @@ set(CONFIGURE_OPTIONS "--host=i686-pc-mingw32 --enable-strip --disable-lavf --di if(VCPKG_LIBRARY_LINKAGE STREQUAL "dynamic") set(CONFIGURE_OPTIONS "${CONFIGURE_OPTIONS} --enable-shared") + if (VCPKG_CMAKE_SYSTEM_NAME STREQUAL "WindowsStore") + set(CONFIGURE_OPTIONS "${CONFIGURE_OPTIONS} --extra-ldflags=-APPCONTAINER --extra-ldflags=WindowsApp.lib") + endif() else() set(CONFIGURE_OPTIONS "${CONFIGURE_OPTIONS} --enable-static") endif() +if(VCPKG_CMAKE_SYSTEM_NAME STREQUAL "WindowsStore") + set(ENV{LIBPATH} "$ENV{LIBPATH};$ENV{_WKITS10}references\\windows.foundation.foundationcontract\\2.0.0.0\\;$ENV{_WKITS10}references\\windows.foundation.universalapicontract\\3.0.0.0\\") + set(CONFIGURE_OPTIONS "${CONFIGURE_OPTIONS} --extra-cflags=-DWINAPI_FAMILY=WINAPI_FAMILY_APP --extra-cflags=-D_WIN32_WINNT=0x0A00") +endif() + set(CONFIGURE_OPTIONS_RELEASE "--prefix=${CURRENT_PACKAGES_DIR}") set(CONFIGURE_OPTIONS_DEBUG "--enable-debug --prefix=${CURRENT_PACKAGES_DIR}/debug") @@ -86,8 +100,10 @@ vcpkg_execute_required_process( LOGNAME "build-${TARGET_TRIPLET}-dbg") message(STATUS "Package ${TARGET_TRIPLET}-dbg done") -file(MAKE_DIRECTORY ${CURRENT_PACKAGES_DIR}/tools/x264) -file(RENAME ${CURRENT_PACKAGES_DIR}/bin/x264.exe ${CURRENT_PACKAGES_DIR}/tools/x264/x264.exe) +if(NOT VCPKG_CMAKE_SYSTEM_NAME STREQUAL "WindowsStore") + file(MAKE_DIRECTORY ${CURRENT_PACKAGES_DIR}/tools/x264) + file(RENAME ${CURRENT_PACKAGES_DIR}/bin/x264.exe ${CURRENT_PACKAGES_DIR}/tools/x264/x264.exe) +endif() file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/lib/pkgconfig diff --git a/ports/x264/uwp-cflags.patch b/ports/x264/uwp-cflags.patch new file mode 100644 index 000000000..fd04755bc --- /dev/null +++ b/ports/x264/uwp-cflags.patch @@ -0,0 +1,12 @@ +diff --git a/configure b/configure +index f7b14d9..2c92b2a 100644 +--- a/configure ++++ b/configure +@@ -821,7 +821,6 @@ if [ $SYS = WINDOWS ]; then + if cpp_check "winapifamily.h" "" "!WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP)" ; then + [ $compiler = CL ] || die "WinRT requires MSVC" + define HAVE_WINRT +- CFLAGS="$CFLAGS -MD" + LDFLAGS="$LDFLAGS -appcontainer" + if ! cpp_check "" "" "defined(_WIN32_WINNT) && _WIN32_WINNT >= 0x0603" ; then + die "_WIN32_WINNT must be defined to at least 0x0603 (Windows 8.1) for WinRT" -- cgit v1.2.3 From 96dbb6c3df72b45cd81b166a6853bf341c683ab7 Mon Sep 17 00:00:00 2001 From: RT222 Date: Fri, 6 Apr 2018 01:27:20 +0200 Subject: Initial port --- ports/utf8h/CONTROL | 3 +++ ports/utf8h/portfile.cmake | 15 +++++++++++++++ 2 files changed, 18 insertions(+) create mode 100644 ports/utf8h/CONTROL create mode 100644 ports/utf8h/portfile.cmake diff --git a/ports/utf8h/CONTROL b/ports/utf8h/CONTROL new file mode 100644 index 000000000..5f1acf4c0 --- /dev/null +++ b/ports/utf8h/CONTROL @@ -0,0 +1,3 @@ +Source: utf8h +Version: 841cb2deb8eb806e73fff0e1f43a11fca4f5da45 +Description: Single header utf8 string functions for C and C++ diff --git a/ports/utf8h/portfile.cmake b/ports/utf8h/portfile.cmake new file mode 100644 index 000000000..11b35c21a --- /dev/null +++ b/ports/utf8h/portfile.cmake @@ -0,0 +1,15 @@ +include(vcpkg_common_functions) + +vcpkg_from_github( + OUT_SOURCE_PATH SOURCE_PATH + REPO sheredom/utf8.h + REF 841cb2deb8eb806e73fff0e1f43a11fca4f5da45 + SHA512 cce44011abc58556c031c0de1018b83225bdbbc0e8d7374e3fd6f0b63c8e200086c49e7caac61b559f1e6d5a7ad349a58a13876a1b1341c18349a5cee59a105b + HEAD_REF master +) + +# Copy the utf8h header files +file(COPY ${SOURCE_PATH}/utf8.h DESTINATION ${CURRENT_PACKAGES_DIR}/include/utf8h) + +# Handle copyright +file(INSTALL ${SOURCE_PATH}/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/utf8h RENAME copyright) -- cgit v1.2.3 From 8f08e64ace2bc18db78b5246711a29395c6180a1 Mon Sep 17 00:00:00 2001 From: Stephen Kyne Date: Thu, 19 Apr 2018 23:30:39 +0100 Subject: [fluidsynth] Initial port (#3016) * [portaudio] Added ASIO support to build * Update libpng to 1.6.34 * [liblo] Initial port * Revert "Update libpng to 1.6.34" This reverts commit ede0bb947b07aea119b7b05e3625c3eec1395af4. * Revert "[liblo] Initial port" This reverts commit bb819eb21841bb8cf4816af5a78e17ef58ec8ce5. * [fluidsynth] Initial port * Fixed version numbers --- ports/fluidsynth/CONTROL | 4 ++++ ports/fluidsynth/portfile.cmake | 34 ++++++++++++++++++++++++++++++++++ 2 files changed, 38 insertions(+) create mode 100644 ports/fluidsynth/CONTROL create mode 100644 ports/fluidsynth/portfile.cmake diff --git a/ports/fluidsynth/CONTROL b/ports/fluidsynth/CONTROL new file mode 100644 index 000000000..7fbb29a5b --- /dev/null +++ b/ports/fluidsynth/CONTROL @@ -0,0 +1,4 @@ +Source: fluidsynth +Version: 1.1.10 +Description: FluidSynth reads and handles MIDI events from the MIDI input device. It is the software analogue of a MIDI synthesizer. FluidSynth can also play midifiles using a Soundfont. +Build-Depends: glib \ No newline at end of file diff --git a/ports/fluidsynth/portfile.cmake b/ports/fluidsynth/portfile.cmake new file mode 100644 index 000000000..ed0cf532d --- /dev/null +++ b/ports/fluidsynth/portfile.cmake @@ -0,0 +1,34 @@ +include(vcpkg_common_functions) +set(SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src/fluidsynth-1.1.10) + +vcpkg_from_github( + OUT_SOURCE_PATH SOURCE_PATH + REPO FluidSynth/fluidsynth + REF v1.1.10 + SHA512 7ff7757baf6dee37f65a4fd214ffab1aa1434cfd1545deb4108fe2e9b0ed19d616880b2740a693b51ade0a4be998a671910b43cae26eb67fb97b16a513752cbc + HEAD_REF master +) + +vcpkg_configure_cmake( + SOURCE_PATH ${SOURCE_PATH} + PREFER_NINJA # Disable this option if project cannot be built with Ninja + OPTIONS -Denable-pkgconfig=0 +) + +vcpkg_install_cmake() + +# Copy fluidsynth.exe to tools dir +file(COPY ${CURRENT_PACKAGES_DIR}/bin/fluidsynth.exe DESTINATION ${CURRENT_PACKAGES_DIR}/tools/fluidsynth) +vcpkg_copy_tool_dependencies(${CURRENT_PACKAGES_DIR}/tools/fluidsynth) + +# Remove unnecessary files +file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include) +file(REMOVE ${CURRENT_PACKAGES_DIR}/bin/fluidsynth.exe) +file(REMOVE ${CURRENT_PACKAGES_DIR}/debug/bin/fluidsynth.exe) + +if(VCPKG_LIBRARY_LINKAGE STREQUAL static) + file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/bin ${CURRENT_PACKAGES_DIR}/debug/bin) +endif() + +# Handle copyright +file(INSTALL ${SOURCE_PATH}/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/fluidsynth RENAME copyright) -- cgit v1.2.3 From 8087d70a2d8ca1437517d7a0c742631705c096ee Mon Sep 17 00:00:00 2001 From: Robert Schumacher Date: Tue, 17 Apr 2018 16:53:41 -0700 Subject: [breakpad][jsonnet][nuklear][parson][thrift][wt][zeromq] Upgrades --- ports/breakpad/CONTROL | 2 +- ports/breakpad/portfile.cmake | 4 ++-- ports/jsonnet/CONTROL | 2 +- ports/jsonnet/portfile.cmake | 4 ++-- ports/nuklear/CONTROL | 2 +- ports/nuklear/portfile.cmake | 4 ++-- ports/parson/CONTROL | 2 +- ports/parson/portfile.cmake | 4 ++-- ports/thrift/CONTROL | 2 +- ports/thrift/portfile.cmake | 4 ++-- ports/wt/CONTROL | 2 +- ports/wt/portfile.cmake | 4 ++-- ports/zeromq/CONTROL | 2 +- ports/zeromq/portfile.cmake | 4 ++-- 14 files changed, 21 insertions(+), 21 deletions(-) diff --git a/ports/breakpad/CONTROL b/ports/breakpad/CONTROL index 9324ac2fa..d6622f15a 100644 --- a/ports/breakpad/CONTROL +++ b/ports/breakpad/CONTROL @@ -1,4 +1,4 @@ Source: breakpad -Version: 2018-04-12 +Version: 2018-04-17 Build-Depends: libdisasm Description: a set of client and server components which implement a crash-reporting system. diff --git a/ports/breakpad/portfile.cmake b/ports/breakpad/portfile.cmake index 6b21e6ee0..939988ef2 100644 --- a/ports/breakpad/portfile.cmake +++ b/ports/breakpad/portfile.cmake @@ -3,8 +3,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO google/breakpad - REF c83fcf647033cd31348b4109c2a9d8df72706361 - SHA512 680b92b1bff6c92a26a3510242f0fb083e63e0234e5a49b2df74b9c743b5a8900d800e617a4910b40748ea699c0d981c42009366a8734e5eb3af081deeb4515b + REF 9eac2058b70615519b2c4d8c6bdbfca1bd079e39 + SHA512 2bdbfc7455bde3b93c1b0e3d47250722525ffeddbe99277e48d0c2930c461162e9342ed7560b4ea5d1245baf162b1102f0e01176611b403c672435e4f518a7fd HEAD_REF master ) diff --git a/ports/jsonnet/CONTROL b/ports/jsonnet/CONTROL index 55bc73fa4..3cd30746a 100644 --- a/ports/jsonnet/CONTROL +++ b/ports/jsonnet/CONTROL @@ -1,3 +1,3 @@ Source: jsonnet -Version: 2018-04-09 +Version: 2018-04-17 Description: Jsonnet - The data templating language diff --git a/ports/jsonnet/portfile.cmake b/ports/jsonnet/portfile.cmake index 02afe21b8..3f4edbf38 100644 --- a/ports/jsonnet/portfile.cmake +++ b/ports/jsonnet/portfile.cmake @@ -3,8 +3,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO google/jsonnet - REF bdbb3b32dda55b42b1f8843acc88f7bb4e38103f - SHA512 a275b63169a24c3319029dee85ec1efec54310cbc8a347a3f791dae6c2565358b74ce48f373453abd7b57361b67388fb85b9401f014df0b132f1cf0dd9babb49 + REF 125012dd904a7d111adf1082b3dca5642dbfd418 + SHA512 1d03d92aee54862d7ae03227be290f24b283dc89d60e77ffa42bfa9485e9ff0e39a93c27cfb1049cee7015c25f6d62b27362bb0836973d2ac1f919276c33ab3c HEAD_REF master ) diff --git a/ports/nuklear/CONTROL b/ports/nuklear/CONTROL index bfa1e2ab5..82fba8753 100644 --- a/ports/nuklear/CONTROL +++ b/ports/nuklear/CONTROL @@ -1,3 +1,3 @@ Source: nuklear -Version: 2018-04-06 +Version: 2018-04-17 Description: This is a minimal state immediate mode graphical user interface toolkit written in ANSI C and licensed under public domain diff --git a/ports/nuklear/portfile.cmake b/ports/nuklear/portfile.cmake index 0722fe775..99b60f8e6 100644 --- a/ports/nuklear/portfile.cmake +++ b/ports/nuklear/portfile.cmake @@ -2,8 +2,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO vurtun/nuklear - REF bca152011e3f5839c7eb08864f76f1f900d4ffe7 - SHA512 aa3bf7f9f32fe63140505e4845a9ee22fb9feb1abc3dd36b333697548778272b817795844a8b6f5cc95a4e460afd69fd96359955ab4e8d12737ac4b46be7e4d1 + REF b91a815c826619bfcacacad090e31b2dd3e1a20c + SHA512 d1966cd01a3d6e75608426f2813ec038dff1291674d481899c031248f0469b47b78f3e35b86a78090e3f019cc478c606d2b78bcc80117fb54de9ed5df22883a0 HEAD_REF master ) file(INSTALL ${SOURCE_PATH}/nuklear.h DESTINATION ${CURRENT_PACKAGES_DIR}/include) diff --git a/ports/parson/CONTROL b/ports/parson/CONTROL index 47d1167a2..7c82a9eba 100644 --- a/ports/parson/CONTROL +++ b/ports/parson/CONTROL @@ -1,3 +1,3 @@ Source: parson -Version: 2018-03-23 +Version: 2018-04-17 Description: a lighweight json library written in C diff --git a/ports/parson/portfile.cmake b/ports/parson/portfile.cmake index f1028d9ee..87fda6451 100644 --- a/ports/parson/portfile.cmake +++ b/ports/parson/portfile.cmake @@ -8,8 +8,8 @@ endif() vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO kgabis/parson - REF 387c5665f6b20faa535a7f782dcaa49390963366 - SHA512 755d1351c2176ac75bb865e83cbbd3b8f6b3a5797cccd96e512e474100fbdaacb7d00eb857ebc4478aad40672baeafdecb5d87c26eaa16f43ef5559a0a56f431 + REF 921da6f5d7b82ac3c8c809341028daafe47e3210 + SHA512 fac1989d03148c1efec5e483704e76110c6575258c7ad0585f4598c1666b22804b8bd672fa31869227b5334fb1ba0b70eb380a971950df1a8f52e56e646956d9 HEAD_REF master ) diff --git a/ports/thrift/CONTROL b/ports/thrift/CONTROL index e544fbbe0..449a6a4ca 100644 --- a/ports/thrift/CONTROL +++ b/ports/thrift/CONTROL @@ -1,4 +1,4 @@ Source: thrift -Version: 2018-04-09 +Version: 2018-04-17 Build-Depends: zlib, libevent, openssl, boost-range, boost-smart-ptr, boost-date-time, boost-locale, boost-scope-exit Description: Apache Thrift is a software project spanning a variety of programming languages and use cases. Our goal is to make reliable, performant communication and data serialization across languages as efficient and seamless as possible. Originally developed at Facebook, Thrift was open sourced in April 2007 and entered the Apache Incubator in May, 2008. Thrift became an Apache TLP in October, 2010. diff --git a/ports/thrift/portfile.cmake b/ports/thrift/portfile.cmake index 5461f3307..81b65cea0 100644 --- a/ports/thrift/portfile.cmake +++ b/ports/thrift/portfile.cmake @@ -15,8 +15,8 @@ vcpkg_find_acquire_program(BISON) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO apache/thrift - REF 606f1ef31447526b908244933d5b716397a6bad8 - SHA512 101de834e8f19ed5f4855a3b138425ffdc8103565f04656f1544098821ad54d5e89f8275cf50b380f01d3a83f4ba7670ec1cc79ec7bd4594172f6fb06d3e034b + REF 4a00fc658a1dc90be33a223a2c7ee336679e8745 + SHA512 b5f380b195498103d0ab4612c1754b29a8dce8e9360e46f5d6dd6daead477c6d2b9b0092ef83a081d937973e21a77fa8b55d5cb7c1d2d5abe71c6b0caa4dae30 HEAD_REF master ) diff --git a/ports/wt/CONTROL b/ports/wt/CONTROL index 8b9b98aa3..d3a707343 100644 --- a/ports/wt/CONTROL +++ b/ports/wt/CONTROL @@ -1,4 +1,4 @@ Source: wt -Version: 4.0.2 +Version: 4.0.3 Description: Wt is a C++ library for developing web applications Build-Depends: openssl, sqlite3, libpq, pango, glew, boost-date-time, boost-regex, boost-program-options, boost-signals, boost-system, boost-filesystem, boost-thread, boost-random, boost-multi-index, boost-signals2, boost-asio, boost-ublas, boost-conversion, boost-array, boost-smart-ptr, boost-tuple, boost-algorithm, boost-logic diff --git a/ports/wt/portfile.cmake b/ports/wt/portfile.cmake index b3081b8a3..b33e9110b 100644 --- a/ports/wt/portfile.cmake +++ b/ports/wt/portfile.cmake @@ -3,8 +3,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO emweb/wt - REF 4.0.2 - SHA512 85e35374bec662c314b20d0699656895364386ee2e51ca99d131702f02ea5a4defeb357fdda3cf068049f077daaa7a3af1dc3d239fb73b3cf13b574778e5609c + REF 4.0.3 + SHA512 5985f72cbd3065ac696aad4d11711f2d69e066ee17141b56fd7c2616c7f7353586ab8d13db2baa90fa8f3cb116aa7c9044ee3cc42e99e8f5c8704f886ac3b2b6 HEAD_REF master ) diff --git a/ports/zeromq/CONTROL b/ports/zeromq/CONTROL index de0a3635f..b74483695 100644 --- a/ports/zeromq/CONTROL +++ b/ports/zeromq/CONTROL @@ -1,3 +1,3 @@ Source: zeromq -Version: 2018-04-05-1 +Version: 2018-04-17 Description: The ZeroMQ lightweight messaging kernel is a library which extends the standard socket interfaces with features traditionally provided by specialised messaging middleware products diff --git a/ports/zeromq/portfile.cmake b/ports/zeromq/portfile.cmake index 23bace766..a907be9af 100644 --- a/ports/zeromq/portfile.cmake +++ b/ports/zeromq/portfile.cmake @@ -3,8 +3,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO zeromq/libzmq - REF bb4fb32925c6465fd0f8e8cc89e5347bc79bc4bf - SHA512 73101b68d93fdf1eca1f83373fe4c946865978d32ca11692e9015a63af8d42ff2d2ff93c88c812f75c2d80596c986df59e62f8de3dc1a016ab24f91f518c24eb + REF c971445025535b9f989ab0b78f5ddd1c026f1878 + SHA512 4eb85e207f53de73cf5369c4c3e79d858ee380e1374ebe807dfc6f99782efc2b98984f48a2cce11b9bf22c7934ef3d1a075cb98fb9e90d5f216a4e128d6df212 HEAD_REF master ) -- cgit v1.2.3 From 9b8245e6de769499464a50362151e347c952c395 Mon Sep 17 00:00:00 2001 From: Jacob Zhong Date: Fri, 20 Apr 2018 07:17:35 +0800 Subject: Add package Fast-RTPS and enable modules for python (#2948) * [ros2] Init packages * [fastrtps] Finish porting * Add python acquiring module * [ros2] Setting up environment * [ros2] remove ros2 * [vcpkg-acquire-python] Revert to split PR --- ports/fastrtps/CONTROL | 4 ++++ ports/fastrtps/fix-install.patch | 14 ++++++++++++++ ports/fastrtps/portfile.cmake | 32 ++++++++++++++++++++++++++++++++ ports/vlpp/portfile.cmake | 2 +- 4 files changed, 51 insertions(+), 1 deletion(-) create mode 100644 ports/fastrtps/CONTROL create mode 100644 ports/fastrtps/fix-install.patch create mode 100644 ports/fastrtps/portfile.cmake diff --git a/ports/fastrtps/CONTROL b/ports/fastrtps/CONTROL new file mode 100644 index 000000000..edbe4b7d4 --- /dev/null +++ b/ports/fastrtps/CONTROL @@ -0,0 +1,4 @@ +Source: fastrtps +Version: 1.5.0 +Description: Eprosima Fast RTPS is a C++ implementation of the RTPS (Real Time Publish Subscribe) protocol, which provides publisher-subscriber communications over unreliable transports such as UDP, as defined and maintained by the Object Management Group (OMG) consortium. +Build-Depends: openssl, asio, tinyxml2 \ No newline at end of file diff --git a/ports/fastrtps/fix-install.patch b/ports/fastrtps/fix-install.patch new file mode 100644 index 000000000..4777ae3ee --- /dev/null +++ b/ports/fastrtps/fix-install.patch @@ -0,0 +1,14 @@ +diff --git a/src/cpp/CMakeLists.txt b/src/cpp/CMakeLists.txt +index a1e91fd..f5578cd 100644 +--- a/src/cpp/CMakeLists.txt ++++ b/src/cpp/CMakeLists.txt +@@ -416,7 +416,8 @@ if(MSVC OR MSVC_IDE) + PATTERN "*.pdb" + ) + +- if(NOT (("${MSVC_ARCH}" STREQUAL "i86Win32VS2013") OR ("${MSVC_ARCH}" STREQUAL "x64Win64VS2013"))) ++ if(NOT (("${MSVC_ARCH}" STREQUAL "i86Win32VS2013") OR ("${MSVC_ARCH}" STREQUAL "x64Win64VS2013") ++ OR ("${MSVC_ARCH}" STREQUAL "i86Win32VS2015") OR ("${MSVC_ARCH}" STREQUAL "x64Win64VS2015"))) + install(FILES ${CMAKE_CURRENT_BINARY_DIR}/${PROJECT_NAME}_static.dir/Debug/${PROJECT_NAME}_static.pdb + DESTINATION ${LIB_INSTALL_DIR}${DIR_EXTENSION} + COMPONENT libraries_${MSVC_ARCH} diff --git a/ports/fastrtps/portfile.cmake b/ports/fastrtps/portfile.cmake new file mode 100644 index 000000000..855d9f8b5 --- /dev/null +++ b/ports/fastrtps/portfile.cmake @@ -0,0 +1,32 @@ +include(vcpkg_common_functions) + +vcpkg_from_github( + OUT_SOURCE_PATH SOURCE_PATH + REPO eProsima/Fast-RTPS + REF b1779b608c7b5b2dcb101728f4213c58bdde74ee # waiting for next release + SHA512 9ec4a1e41296df1c0bc00926d925e0947602fabb68e9b28311e92739b0e1909a2993b15fc05eb31aeb9842ed50127f8d56571d09e57dd64ac6f37d0fed6cea73 + HEAD_REF master +) + +vcpkg_apply_patches( + SOURCE_PATH ${SOURCE_PATH} + PATCHES ${CMAKE_CURRENT_LIST_DIR}/fix-install.patch +) + +vcpkg_configure_cmake( + SOURCE_PATH ${SOURCE_PATH} + PREFER_NINJA +) + +vcpkg_install_cmake() +vcpkg_copy_pdbs() + +file(MAKE_DIRECTORY ${CURRENT_PACKAGES_DIR}/share) +file(COPY ${CURRENT_PACKAGES_DIR}/lib/fastrtps DESTINATION ${CURRENT_PACKAGES_DIR}/share) + +file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include) +file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/examples) +file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/LICENSE) +file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/examples) + +file(RENAME ${CURRENT_PACKAGES_DIR}/LICENSE ${CURRENT_PACKAGES_DIR}/share/fastrtps/copyright) diff --git a/ports/vlpp/portfile.cmake b/ports/vlpp/portfile.cmake index 1b7ec027a..1ee003ffb 100644 --- a/ports/vlpp/portfile.cmake +++ b/ports/vlpp/portfile.cmake @@ -22,7 +22,7 @@ vcpkg_configure_cmake( vcpkg_install_cmake() vcpkg_copy_pdbs() -file(REMOVE_RECURSE ${CURRENT_PACKAGE_DIR}/debug/include) +file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include) # Tools file(INSTALL ${SOURCE_PATH}/Tools/CppMerge.exe DESTINATION ${CURRENT_PACKAGES_DIR}/tools) -- cgit v1.2.3 From 90a50a950283aebb9a0b0a9ecef7f9fcae0dd256 Mon Sep 17 00:00:00 2001 From: Robert Schumacher Date: Thu, 19 Apr 2018 15:04:00 -0700 Subject: [azure-iot-sdk] Upgrades --- ports/azure-c-shared-utility/CONTROL | 2 +- ports/azure-c-shared-utility/portfile.cmake | 4 +-- ports/azure-iot-sdk-c/CONTROL | 2 +- .../azure-iot-sdk-c/improve-external-deps-2.patch | 20 +++++++++++ ports/azure-iot-sdk-c/improve-external-deps.patch | 42 ---------------------- ports/azure-iot-sdk-c/portfile.cmake | 5 +-- ports/azure-uamqp-c/CONTROL | 2 +- ports/azure-uamqp-c/portfile.cmake | 4 +-- ports/azure-umqtt-c/CONTROL | 2 +- ports/azure-umqtt-c/portfile.cmake | 4 +-- 10 files changed, 33 insertions(+), 54 deletions(-) create mode 100644 ports/azure-iot-sdk-c/improve-external-deps-2.patch diff --git a/ports/azure-c-shared-utility/CONTROL b/ports/azure-c-shared-utility/CONTROL index 97d0a9a64..08fecee67 100644 --- a/ports/azure-c-shared-utility/CONTROL +++ b/ports/azure-c-shared-utility/CONTROL @@ -1,3 +1,3 @@ Source: azure-c-shared-utility -Version: 1.1.2 +Version: 1.1.3 Description: Azure C SDKs common code diff --git a/ports/azure-c-shared-utility/portfile.cmake b/ports/azure-c-shared-utility/portfile.cmake index 6aea93dad..6b706aae3 100644 --- a/ports/azure-c-shared-utility/portfile.cmake +++ b/ports/azure-c-shared-utility/portfile.cmake @@ -8,8 +8,8 @@ endif() vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO Azure/azure-c-shared-utility - REF 1.1.2 - SHA512 23c576efe0cc6c4a47d356f1e0be9e23d2b4e22692d35efa7d0d627a05fad245c55a81d26e60e1f7f7676d547a0e28c357846d2854b31f3f6ae7c39a934cf3d4 + REF 1.1.3 + SHA512 8c69f39ccca30d11a7e665a46e3ec33826af062657a87d32f68e80c6182b15d5e02839f9e541f5dc840219e3256ac090452f4873b6a1a62b3fe6682780314056 HEAD_REF master ) diff --git a/ports/azure-iot-sdk-c/CONTROL b/ports/azure-iot-sdk-c/CONTROL index 72ecadfca..a706b195c 100644 --- a/ports/azure-iot-sdk-c/CONTROL +++ b/ports/azure-iot-sdk-c/CONTROL @@ -1,4 +1,4 @@ Source: azure-iot-sdk-c -Version: 1.2.2 +Version: 1.2.3 Build-Depends: azure-uamqp-c, azure-umqtt-c, azure-c-shared-utility, parson Description: A C99 SDK for connecting devices to Microsoft Azure IoT services diff --git a/ports/azure-iot-sdk-c/improve-external-deps-2.patch b/ports/azure-iot-sdk-c/improve-external-deps-2.patch new file mode 100644 index 000000000..04795fa1f --- /dev/null +++ b/ports/azure-iot-sdk-c/improve-external-deps-2.patch @@ -0,0 +1,20 @@ +diff --git a/CMakeLists.txt b/CMakeLists.txt +index aa2dfad..f1656ea 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -129,15 +129,6 @@ endif() + #Use solution folders. + set_property(GLOBAL PROPERTY USE_FOLDERS ON) + +-# build the parson library for json parsing +-add_library(parson +- ./deps/parson/parson.c +- ./deps/parson/parson.h +-) +-if(MSVC) +- set_source_files_properties(../deps/parson/parson.c PROPERTIES COMPILE_FLAGS "/wd4244 /wd4232") +-endif() +- + if(IN_OPENWRT) + ADD_DEFINITIONS("$ENV{TARGET_LDFLAGS}" "$ENV{TARGET_CPPFLAGS}" "$ENV{TARGET_CFLAGS}") + INCLUDE_DIRECTORIES("$ENV{TOOLCHAIN_DIR}/usr/include" "$ENV{TARGET_LDFLAGS}" "$ENV{TARGET_CPPFLAGS}" "$ENV{TARGET_CFLAGS}") diff --git a/ports/azure-iot-sdk-c/improve-external-deps.patch b/ports/azure-iot-sdk-c/improve-external-deps.patch index 5af7ef29e..d96e0fe38 100644 --- a/ports/azure-iot-sdk-c/improve-external-deps.patch +++ b/ports/azure-iot-sdk-c/improve-external-deps.patch @@ -26,33 +26,6 @@ index 063733a..71bfc7d 100644 else() add_subdirectory(c-utility) -diff --git a/iothub_client/CMakeLists.txt b/iothub_client/CMakeLists.txt -index e6d000a..70ade26 100644 ---- a/iothub_client/CMakeLists.txt -+++ b/iothub_client/CMakeLists.txt -@@ -24,22 +24,6 @@ set(install_staticlibs - iothub_client - ) - --add_library(parson -- ../deps/parson/parson.c --) -- --if(MSVC) -- set_source_files_properties(../deps/parson/parson.c PROPERTIES COMPILE_FLAGS "/wd4244 /wd4232") --endif() -- --set(install_staticlibs ${install_staticlibs} -- parson --) -- --set(iothub_client_libs ${iothub_client_libs} -- parson --) -- - if(NOT dont_use_uploadtoblob) - set(iothub_client_ll_transport_c_files - ${iothub_client_ll_transport_c_files} diff --git a/iothub_client/tests/iothubclient_amqp_dt_e2e/CMakeLists.txt b/iothub_client/tests/iothubclient_amqp_dt_e2e/CMakeLists.txt index 161872a..d53e111 100644 --- a/iothub_client/tests/iothubclient_amqp_dt_e2e/CMakeLists.txt @@ -119,18 +92,3 @@ index 11a9a9a..4097293 100644 endif() if (NOT ${ARCHITECTURE} STREQUAL "ARM") -diff --git a/serializer/CMakeLists.txt b/serializer/CMakeLists.txt -index 0f6dc74..b4f784c 100644 ---- a/serializer/CMakeLists.txt -+++ b/serializer/CMakeLists.txt -@@ -87,10 +87,6 @@ else() - endif() - setSdkTargetBuildProperties(serializer) - --target_link_libraries(serializer -- parson --) -- - if (NOT ${skip_samples}) - if(WIN32) - if (NOT ${ARCHITECTURE} STREQUAL "ARM") diff --git a/ports/azure-iot-sdk-c/portfile.cmake b/ports/azure-iot-sdk-c/portfile.cmake index a1e864ab2..0abffcb0f 100644 --- a/ports/azure-iot-sdk-c/portfile.cmake +++ b/ports/azure-iot-sdk-c/portfile.cmake @@ -8,8 +8,8 @@ endif() vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO Azure/azure-iot-sdk-c - REF 1.2.2 - SHA512 1542f8347e5efc3104eacf1696b84739299bedb4f50dce3869b3a53072b5c016aadf34223658c18fe28e87eab775a0687b5bf18b5629a7a87b8709b123b3599a + REF 1.2.3 + SHA512 6192d454bb2ecb01989f7636751acd6919021b55b772f4ea25a6d0ddd263e7f988275f7fb0b1c304d4ebd30418c9f870eb1c504a4a504f2faeb712ef8e669d5a HEAD_REF master ) @@ -17,6 +17,7 @@ vcpkg_apply_patches( SOURCE_PATH ${SOURCE_PATH} PATCHES ${CMAKE_CURRENT_LIST_DIR}/improve-external-deps.patch + ${CMAKE_CURRENT_LIST_DIR}/improve-external-deps-2.patch ) file(COPY ${CURRENT_INSTALLED_DIR}/share/azure-c-shared-utility/azure_iot_build_rules.cmake DESTINATION ${SOURCE_PATH}/deps/azure-c-shared-utility/configs/) diff --git a/ports/azure-uamqp-c/CONTROL b/ports/azure-uamqp-c/CONTROL index 832675f10..098209ac9 100644 --- a/ports/azure-uamqp-c/CONTROL +++ b/ports/azure-uamqp-c/CONTROL @@ -1,4 +1,4 @@ Source: azure-uamqp-c -Version: 1.2.2 +Version: 1.2.3 Build-Depends: azure-c-shared-utility Description: AMQP library for C diff --git a/ports/azure-uamqp-c/portfile.cmake b/ports/azure-uamqp-c/portfile.cmake index e912c30fd..c037010f1 100644 --- a/ports/azure-uamqp-c/portfile.cmake +++ b/ports/azure-uamqp-c/portfile.cmake @@ -8,8 +8,8 @@ endif() vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO Azure/azure-uamqp-c - REF 1.2.2 - SHA512 66d4169ecfa1f0bc37c1b61de34908703d1f2d49d5b6edf5aa0c208795117b614a3c0afbba95df3ffc5364f4fd45debe2c95ac7a5be86fbd42d997b4db2aaf9c + REF 1.2.3 + SHA512 18fc978517371fcb19e1c078f07d06b3bf8ec046c5cba955dd3cfe0a364d8775542acc970d81fa42384942ea4db7fb60d8939e80e90baf582c9d9e6ff0b577b5 HEAD_REF master ) diff --git a/ports/azure-umqtt-c/CONTROL b/ports/azure-umqtt-c/CONTROL index d8aff61a8..68cfaaa05 100644 --- a/ports/azure-umqtt-c/CONTROL +++ b/ports/azure-umqtt-c/CONTROL @@ -1,4 +1,4 @@ Source: azure-umqtt-c -Version: 1.1.2 +Version: 1.1.3 Build-Depends: azure-c-shared-utility Description: General purpose library for communication over the mqtt protocol diff --git a/ports/azure-umqtt-c/portfile.cmake b/ports/azure-umqtt-c/portfile.cmake index b66ab4f2e..f24e087bf 100644 --- a/ports/azure-umqtt-c/portfile.cmake +++ b/ports/azure-umqtt-c/portfile.cmake @@ -8,8 +8,8 @@ endif() vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO Azure/azure-umqtt-c - REF 1.1.2 - SHA512 e99b1292d6acdefef43b13cb2ad5b5972ed9e65fb3b2b3eacf06486e88f65fdb1e119fd0cf7dadddb1b1dffaef1aa30edda68fa5dc8aa2b22bcdad2d56e1de63 + REF 1.1.3 + SHA512 5c57fe40dce8166e1e138db45b642152a337dbbbc4d85998ac99b016627c0135b99bd7b189d249c6278837ef4af5ba4e4f964a9b65788acef37d7b37ae125b16 HEAD_REF master ) -- cgit v1.2.3 From 4f52f53b99f6a5465157958bc99f79cc0b2712ad Mon Sep 17 00:00:00 2001 From: Robert Schumacher Date: Thu, 19 Apr 2018 16:23:01 -0700 Subject: [folly] Upgrade --- ports/folly/CONTROL | 2 +- ports/folly/find-gflags.patch | 13 +++++++++++++ ports/folly/msvc-15.6-workaround.patch | 25 ------------------------- ports/folly/portfile.cmake | 7 ++++--- 4 files changed, 18 insertions(+), 29 deletions(-) create mode 100644 ports/folly/find-gflags.patch delete mode 100644 ports/folly/msvc-15.6-workaround.patch diff --git a/ports/folly/CONTROL b/ports/folly/CONTROL index 865c93ce6..13f732525 100644 --- a/ports/folly/CONTROL +++ b/ports/folly/CONTROL @@ -1,5 +1,5 @@ Source: folly -Version: 2018.04.09.00 +Version: 2018.04.16.00 Description: An open-source C++ library developed and used at Facebook. The library is UNSTABLE on Windows Build-Depends: openssl, libevent, double-conversion, glog, gflags, boost-chrono, boost-context, boost-conversion, boost-crc, boost-date-time, boost-filesystem, boost-multi-index, boost-program-options, boost-regex, boost-system, boost-thread Default-Features: zlib diff --git a/ports/folly/find-gflags.patch b/ports/folly/find-gflags.patch new file mode 100644 index 000000000..986dd6d57 --- /dev/null +++ b/ports/folly/find-gflags.patch @@ -0,0 +1,13 @@ +diff --git a/CMake/folly-deps.cmake b/CMake/folly-deps.cmake +index 396fa6c..9d80d99 100644 +--- a/CMake/folly-deps.cmake ++++ b/CMake/folly-deps.cmake +@@ -22,7 +22,7 @@ list(APPEND FOLLY_LINK_LIBRARIES ${DOUBLE_CONVERSION_LIBRARY}) + list(APPEND FOLLY_INCLUDE_DIRECTORIES ${DOUBLE_CONVERSION_INCLUDE_DIR}) + + set(FOLLY_HAVE_LIBGFLAGS OFF) +-find_package(GFlags CONFIG QUIET) ++find_package(gflags CONFIG REQUIRED) + if (gflags_FOUND) + message(STATUS "Found gflags from package config") + set(FOLLY_HAVE_LIBGFLAGS ON) diff --git a/ports/folly/msvc-15.6-workaround.patch b/ports/folly/msvc-15.6-workaround.patch deleted file mode 100644 index 6102f32ac..000000000 --- a/ports/folly/msvc-15.6-workaround.patch +++ /dev/null @@ -1,25 +0,0 @@ -diff --git a/folly/FBString.h b/folly/FBString.h -index 4882aac..6c83046 100644 ---- a/folly/FBString.h -+++ b/folly/FBString.h -@@ -1890,12 +1890,14 @@ inline basic_fbstring& basic_fbstring::operator=( - - template - template --inline typename std::enable_if< -- std::is_same< -- typename std::decay::type, -- typename basic_fbstring::value_type>::value, -- basic_fbstring&>::type --basic_fbstring::operator=(TP c) { -+inline auto -+basic_fbstring::operator=(TP c) -+ -> typename std::enable_if< -+ std::is_same< -+ typename std::decay::type, -+ typename basic_fbstring::value_type>::value, -+ basic_fbstring&>::type -+{ - Invariant checker(*this); - - if (empty()) { diff --git a/ports/folly/portfile.cmake b/ports/folly/portfile.cmake index 520ab0539..fabfd0085 100644 --- a/ports/folly/portfile.cmake +++ b/ports/folly/portfile.cmake @@ -17,15 +17,15 @@ set(ENV{PATH} "$ENV{PATH};${PYTHON3_DIR}") vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO facebook/folly - REF v2018.04.09.00 - SHA512 625034437ee6c261949652dbd6cafb50b0954b691750e4591cd0eb03cf369348cfae3b4b98c012bd906a157b7642ebcb1d8843311c74416ed51bffc5b1da3018 + REF v2018.04.16.00 + SHA512 1f14da6eece3a490bd134a40550c2a3f78356789090e19933b8f10bc356837ee774a21e6f0b88c45831a968587049092b9d0d77617f040ab8e177de224400408 HEAD_REF master ) vcpkg_apply_patches( SOURCE_PATH ${SOURCE_PATH} PATCHES - ${CMAKE_CURRENT_LIST_DIR}/msvc-15.6-workaround.patch + ${CMAKE_CURRENT_LIST_DIR}/find-gflags.patch ) file(COPY @@ -33,6 +33,7 @@ file(COPY ${CMAKE_CURRENT_LIST_DIR}/FindSnappy.cmake DESTINATION ${SOURCE_PATH}/CMake/ ) +file(REMOVE ${SOURCE_PATH}/CMake/FindGFlags.cmake) if(VCPKG_CRT_LINKAGE STREQUAL static) set(MSVC_USE_STATIC_RUNTIME ON) -- cgit v1.2.3 From cad078b6341e4be4fa292aa751104afacab68b45 Mon Sep 17 00:00:00 2001 From: Vitaliy Didik Date: Fri, 20 Apr 2018 12:26:37 +0300 Subject: Updated rhash to 1.3.6. --- ports/rhash/CONTROL | 2 +- ports/rhash/portfile.cmake | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/ports/rhash/CONTROL b/ports/rhash/CONTROL index 16b50c945..14b8768d4 100644 --- a/ports/rhash/CONTROL +++ b/ports/rhash/CONTROL @@ -1,3 +1,3 @@ Source: rhash -Version: 1.3.5-1 +Version: 1.3.6 Description: C library for computing a wide variety of hash sums diff --git a/ports/rhash/portfile.cmake b/ports/rhash/portfile.cmake index 749501375..cc1188c38 100644 --- a/ports/rhash/portfile.cmake +++ b/ports/rhash/portfile.cmake @@ -6,8 +6,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO rhash/RHash - REF v1.3.5 - SHA512 e8450aab0c16bfb975bf4aeee218740fb4d86d5514e426b70c3edb84e4d63865cd4051939aa95c24a87a78baaedc49e40bb509b2610e89ca3745930808b3ef6c + REF v1.3.6 + SHA512 54f7f238ed1fdc01c29cc1338fa86be90b69beff0df8f20d24ce9cb3c48c7f4668b84a3fe0d4d8b04b54bc8145485d493435edf3219de3a637af0f9c007c85c6 HEAD_REF master) file(COPY ${CMAKE_CURRENT_LIST_DIR}/CMakeLists.txt DESTINATION ${SOURCE_PATH}/librhash) -- cgit v1.2.3 From df1eaafc1b9de5730f8f639bd140108693cf64f3 Mon Sep 17 00:00:00 2001 From: Wimok Nupphiboon Date: Sun, 22 Apr 2018 20:38:55 +0700 Subject: [uwebsockets] Update to 0.14.8 --- ports/uwebsockets/CONTROL | 2 +- ports/uwebsockets/portfile.cmake | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/ports/uwebsockets/CONTROL b/ports/uwebsockets/CONTROL index 7e636ba9c..3871e8691 100644 --- a/ports/uwebsockets/CONTROL +++ b/ports/uwebsockets/CONTROL @@ -1,4 +1,4 @@ Source: uwebsockets -Version: 0.14.7-1 +Version: 0.14.8-1 Build-Depends: libuv, openssl, zlib Description: Highly scalable cross-platform WebSocket & HTTP library for C++11 and Node.js diff --git a/ports/uwebsockets/portfile.cmake b/ports/uwebsockets/portfile.cmake index a24f49631..f9d6c43a1 100644 --- a/ports/uwebsockets/portfile.cmake +++ b/ports/uwebsockets/portfile.cmake @@ -3,8 +3,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO uWebSockets/uWebSockets - REF v0.14.7 - SHA512 1049497f7b63770dcfdc44bef562ce43b87fa553e8ec778c8ee2506f406a23f5fdcf67904f0458e38fc0843899b43b92ccef5f36cae40228cfe47b6f38fa0e15 + REF v0.14.8 + SHA512 5e78e2f10e95648ad1e7f26612f69da3bbdcdb3f17c99e3bb9775e3eb440a2741f05375dcc043b43f0f2d4de6da54e7534431c5c10c1350103a4379b55cf9081 HEAD_REF master ) -- cgit v1.2.3 From d2f69445b6394f197f986d1b6945e7960fd10b22 Mon Sep 17 00:00:00 2001 From: Alexander Karatarakis Date: Tue, 17 Apr 2018 16:21:36 -0700 Subject: Retry the wsl workaround up to 10 times --- scripts/cmake/vcpkg_build_cmake.cmake | 42 ++++++++++++++++++++--------------- 1 file changed, 24 insertions(+), 18 deletions(-) diff --git a/scripts/cmake/vcpkg_build_cmake.cmake b/scripts/cmake/vcpkg_build_cmake.cmake index 41415d9a8..983ac9221 100644 --- a/scripts/cmake/vcpkg_build_cmake.cmake +++ b/scripts/cmake/vcpkg_build_cmake.cmake @@ -131,25 +131,31 @@ function(vcpkg_build_cmake) OUTPUT_STRIP_TRAILING_WHITESPACE ERROR_STRIP_TRAILING_WHITESPACE) if (UNAME_R MATCHES "Microsoft") - message(STATUS "Restarting Build ${TARGET_TRIPLET}-${SHORT_BUILDTYPE} because of (potential) wsl subsystem issue.") - execute_process( - COMMAND ${CMAKE_COMMAND} --build . --config ${CONFIG} ${TARGET_PARAM} -- ${BUILD_ARGS} - OUTPUT_FILE "${LOGPREFIX}-out-1.log" - ERROR_FILE "${LOGPREFIX}-err-1.log" - RESULT_VARIABLE error_code - WORKING_DIRECTORY ${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-${SHORT_BUILDTYPE}) - - if(error_code) - file(READ "${LOGPREFIX}-out-1.log" out_contents) - file(READ "${LOGPREFIX}-err-1.log" err_contents) - - if(out_contents) - list(APPEND LOGS "${LOGPREFIX}-out-1.log") + set(ITERATION 0) + while (ITERATION LESS 10 AND out_contents MATCHES ": No such file or directory") + MATH(EXPR ITERATION "${ITERATION}+1") + message(STATUS "Restarting Build ${TARGET_TRIPLET}-${SHORT_BUILDTYPE} because of wsl subsystem issue. Iteration: ${ITERATION}") + execute_process( + COMMAND ${CMAKE_COMMAND} --build . --config ${CONFIG} ${TARGET_PARAM} -- ${BUILD_ARGS} + OUTPUT_FILE "${LOGPREFIX}-out-${ITERATION}.log" + ERROR_FILE "${LOGPREFIX}-err-${ITERATION}.log" + RESULT_VARIABLE error_code + WORKING_DIRECTORY ${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-${SHORT_BUILDTYPE}) + + if(error_code) + file(READ "${LOGPREFIX}-out-${ITERATION}.log" out_contents) + file(READ "${LOGPREFIX}-err-${ITERATION}.log" err_contents) + + if(out_contents) + list(APPEND LOGS "${LOGPREFIX}-out-${ITERATION}.log") + endif() + if(err_contents) + list(APPEND LOGS "${LOGPREFIX}-err-${ITERATION}.log") + endif() + else() + break() endif() - if(err_contents) - list(APPEND LOGS "${LOGPREFIX}-err-1.log") - endif() - endif() + endwhile() endif() endif() -- cgit v1.2.3 From c400cea91de1ba91183a0097b2d179d71067727d Mon Sep 17 00:00:00 2001 From: Alexander Karatarakis Date: Tue, 17 Apr 2018 16:22:44 -0700 Subject: [openssl] Add -ldl to the link line when appropriate --- ports/openssl/CONTROL | 2 +- ports/openssl/portfile-nonwindows.cmake | 4 ++++ ports/openssl/vcpkg-cmake-wrapper.cmake | 7 +++++++ 3 files changed, 12 insertions(+), 1 deletion(-) create mode 100644 ports/openssl/vcpkg-cmake-wrapper.cmake diff --git a/ports/openssl/CONTROL b/ports/openssl/CONTROL index d5ac7c890..fe7ea5c01 100644 --- a/ports/openssl/CONTROL +++ b/ports/openssl/CONTROL @@ -1,3 +1,3 @@ Source: openssl -Version: 1.0.2o-1 +Version: 1.0.2o-2 Description: OpenSSL is an open source project that provides a robust, commercial-grade, and full-featured toolkit for the Transport Layer Security (TLS) and Secure Sockets Layer (SSL) protocols. It is also a general-purpose cryptography library. diff --git a/ports/openssl/portfile-nonwindows.cmake b/ports/openssl/portfile-nonwindows.cmake index 3a4f69710..c324b132a 100644 --- a/ports/openssl/portfile-nonwindows.cmake +++ b/ports/openssl/portfile-nonwindows.cmake @@ -31,3 +31,7 @@ endforeach() file(INSTALL ${RESOLVED_HEADERS} DESTINATION ${CURRENT_PACKAGES_DIR}/include/openssl) file(INSTALL ${MASTER_COPY_SOURCE_PATH}/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/openssl RENAME copyright) + +if(VCPKG_LIBRARY_LINKAGE STREQUAL "static") + file(COPY ${CMAKE_CURRENT_LIST_DIR}/vcpkg-cmake-wrapper.cmake DESTINATION ${CURRENT_PACKAGES_DIR}/share/openssl) +endif() diff --git a/ports/openssl/vcpkg-cmake-wrapper.cmake b/ports/openssl/vcpkg-cmake-wrapper.cmake new file mode 100644 index 000000000..1e0500055 --- /dev/null +++ b/ports/openssl/vcpkg-cmake-wrapper.cmake @@ -0,0 +1,7 @@ +_find_package(${ARGS}) +if(OPENSSL_FOUND) + list(APPEND OPENSSL_LIBRARIES "dl") + if(TARGET OpenSSL::Crypto) + set_property(TARGET OpenSSL::Crypto APPEND PROPERTY INTERFACE_LINK_LIBRARIES "dl") + endif() +endif() -- cgit v1.2.3 From 14708a09a9ade27dce3329ee8453a8a2724f94b6 Mon Sep 17 00:00:00 2001 From: Alexander Karatarakis Date: Wed, 18 Apr 2018 16:32:10 -0700 Subject: [grpc] Fix build for linux Fix --- ports/grpc/CONTROL | 2 +- ports/grpc/disable-csharp-ext-2.patch | 20 ++++++++++++++++++++ ports/grpc/portfile.cmake | 9 +++++++-- 3 files changed, 28 insertions(+), 3 deletions(-) create mode 100644 ports/grpc/disable-csharp-ext-2.patch diff --git a/ports/grpc/CONTROL b/ports/grpc/CONTROL index 088d9336e..6f8f18467 100644 --- a/ports/grpc/CONTROL +++ b/ports/grpc/CONTROL @@ -1,4 +1,4 @@ Source: grpc -Version: 1.10.1 +Version: 1.10.1-1 Build-Depends: zlib, openssl, protobuf, c-ares Description: An RPC library and framework diff --git a/ports/grpc/disable-csharp-ext-2.patch b/ports/grpc/disable-csharp-ext-2.patch new file mode 100644 index 000000000..1bc863105 --- /dev/null +++ b/ports/grpc/disable-csharp-ext-2.patch @@ -0,0 +1,20 @@ +diff --git a/CMakeLists.txt b/CMakeLists.txt +index 0dc0bd3..7f702cc 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -4699,6 +4699,7 @@ endif (gRPC_BUILD_TESTS) + + option(gRPC_INSTALL_CSHARP_EXT "" ON) + ++if(gRPC_INSTALL_CSHARP_EXT) + add_library(grpc_csharp_ext SHARED + src/csharp/ext/grpc_csharp_ext.c + ) +@@ -4741,6 +4742,7 @@ if (gRPC_INSTALL AND gRPC_INSTALL_CSHARP_EXT) + ARCHIVE DESTINATION ${gRPC_INSTALL_LIBDIR} + ) + endif() ++endif() + + if (gRPC_BUILD_TESTS) + diff --git a/ports/grpc/portfile.cmake b/ports/grpc/portfile.cmake index f68f67e64..54f294896 100644 --- a/ports/grpc/portfile.cmake +++ b/ports/grpc/portfile.cmake @@ -22,6 +22,7 @@ vcpkg_apply_patches( SOURCE_PATH ${SOURCE_PATH} PATCHES ${CMAKE_CURRENT_LIST_DIR}/disable-csharp-ext.patch + ${CMAKE_CURRENT_LIST_DIR}/disable-csharp-ext-2.patch ) if(VCPKG_CRT_LINKAGE STREQUAL static) @@ -66,8 +67,12 @@ if(TOOLS) vcpkg_copy_tool_dependencies(${CURRENT_PACKAGES_DIR}/tools/grpc) endif() -file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/bin) -file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/bin) +if(NOT VCPKG_CMAKE_SYSTEM_NAME OR VCPKG_CMAKE_SYSTEM_NAME STREQUAL "WindowsStore") + file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/bin) + file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/bin) +else() + SET(VCPKG_POLICY_EMPTY_PACKAGE enabled) # Leave the executable files in bin/ and debug/bin +endif() file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include) vcpkg_copy_pdbs() -- cgit v1.2.3 From d84e86a910126e91c781af63e33e3516aa171f2a Mon Sep 17 00:00:00 2001 From: Alexander Karatarakis Date: Wed, 18 Apr 2018 18:13:11 -0700 Subject: Fix grpc lookup (case-insensitive) --- scripts/buildsystems/vcpkg.cmake | 2 ++ 1 file changed, 2 insertions(+) diff --git a/scripts/buildsystems/vcpkg.cmake b/scripts/buildsystems/vcpkg.cmake index a9f8190f7..91c196fb9 100644 --- a/scripts/buildsystems/vcpkg.cmake +++ b/scripts/buildsystems/vcpkg.cmake @@ -241,6 +241,8 @@ macro(find_package name) "optimized" "${_VCPKG_INSTALLED_DIR}/${VCPKG_TARGET_TRIPLET}/lib/nghttp2.lib") endif() endif() + elseif("${_vcpkg_lowercase_name}" STREQUAL "grpc" AND EXISTS "${_VCPKG_INSTALLED_DIR}/${VCPKG_TARGET_TRIPLET}/share/grpc") + _find_package(gRPC ${ARGN}) else() _find_package(${ARGV}) endif() -- cgit v1.2.3 From 825c22de5803db64bf2b82cbe734c26c450b1789 Mon Sep 17 00:00:00 2001 From: Alexander Karatarakis Date: Fri, 20 Apr 2018 15:31:26 -0700 Subject: [protobuf] Fix protoc permissions --- ports/protobuf/CONTROL | 2 +- ports/protobuf/portfile.cmake | 3 ++- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/ports/protobuf/CONTROL b/ports/protobuf/CONTROL index 12e508f6d..ba20ec0c9 100644 --- a/ports/protobuf/CONTROL +++ b/ports/protobuf/CONTROL @@ -1,5 +1,5 @@ Source: protobuf -Version: 3.5.1-2 +Version: 3.5.1-3 Description: Protocol Buffers - Google's data interchange format Feature: zlib diff --git a/ports/protobuf/portfile.cmake b/ports/protobuf/portfile.cmake index 765b52a1d..a6875edb9 100644 --- a/ports/protobuf/portfile.cmake +++ b/ports/protobuf/portfile.cmake @@ -116,7 +116,8 @@ if(CMAKE_HOST_WIN32) endif() else() protobuf_try_remove_recurse_wait(${CURRENT_PACKAGES_DIR}/debug/bin) - file(INSTALL ${CURRENT_PACKAGES_DIR}/bin/protoc DESTINATION ${CURRENT_PACKAGES_DIR}/tools) + file(INSTALL ${CURRENT_PACKAGES_DIR}/bin/protoc DESTINATION ${CURRENT_PACKAGES_DIR}/tools + PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE GROUP_READ GROUP_WRITE GROUP_EXECUTE WORLD_READ) protobuf_try_remove_recurse_wait(${CURRENT_PACKAGES_DIR}/bin) endif() -- cgit v1.2.3 From aff1819c796fab3e04b9dc1a4b850ef9358ed9a4 Mon Sep 17 00:00:00 2001 From: Alexander Karatarakis Date: Mon, 23 Apr 2018 18:55:52 -0700 Subject: Update CHANGELOG and bump version to v0.0.109 --- CHANGELOG.md | 76 +++++++++++++++++++++++++++++++++++++++++++++++++++++ toolsrc/VERSION.txt | 2 +- 2 files changed, 77 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 0cc88e2c2..24f6df0b9 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,79 @@ +vcpkg (0.0.109) +-------------- + * Add ports: + - boost-container-hash 1.67.0 + - boost-contract 1.67.0 + - boost-hof 1.67.0 + - fastrtps 1.5.0 + - fluidsynth 1.1.10 + - liblinear 2.20 + - libxmlpp 2.40.1-1 + - utf8h 841cb2deb8eb806e73fff0e1f43a11fca4f5da45 + - vxl 20180414-7a130cf-1 + * Update ports: + - abseil 2018-04-05 -> 2018-04-12 + - aws-sdk-cpp 1.4.30-1 -> 1.4.33 + - azure-c-shared-utility 1.1.2 -> 1.1.3 + - azure-iot-sdk-c 1.2.2 -> 1.2.3 + - azure-uamqp-c 1.2.2 -> 1.2.3 + - azure-umqtt-c 1.1.2 -> 1.1.3 + - benchmark 1.3.0-1 -> 1.4.0 + - boost 1.66.0 -> 1.67.0 + - boost-* 1.66.0 -> 1.67.0 + - breakpad 2018-04-05 -> 2018-04-17 + - cartographer 0.3.0-3 -> 0.3.0-4 + - catch2 2.2.1-1 -> 2.2.2 + - celero 2.1.0-1 -> 2.1.0-2 + - chakracore 1.8.2 -> 1.8.3 + - cimg 221 -> 2.2.2 + - cppzmq 4.2.2 -> 4.2.2-1 + - date 2.4 -> 2.4.1 + - directxmesh feb2018 -> feb2018-eb751e0b631b05aa25c36c08e7d6bbf09f5e94a9 + - exiv2 2018-04-05 -> 2018-04-12 + - folly 2018.03.19.00-2 -> 2018.04.16.00 + - forest 7.0.1 -> 7.0.6 + - gettext 0.19-2 -> 0.19-4 + - glib 2.52.3-2 -> 2.52.3-9 + - glibmm 2.52.1 -> 2.52.1-7 + - graphicsmagick 1.3.26-2 -> 1.3.28 + - grpc 1.10.1 -> 1.10.1-1 + - icu 59.1-1 -> 61.1-1 + - jsonnet 2018-03-17 -> 2018-04-17 + - libiconv 1.15-3 -> 1.15-4 + - libsigcpp 2.10 -> 2.10-1 + - libtorrent 1.1.6 -> 1.1.6-1 + - libuuid 1.0.3 -> 1.0.3-1 + - libzip rel-1-5-0 -> rel-1-5-1 + - llvm 5.0.1 -> 6.0.0 + - magnum 2018.02-1 -> 2018.02-2 + - magnum-plugins 2018.02-1 -> 2018.02-2 + - nuklear 2018-04-05 -> 2018-04-17 + - openssl 1.0.2o-1 -> 1.0.2o-2 + - openvr 1.0.13 -> 1.0.14 + - parson 2018-03-23 -> 2018-04-17 + - protobuf 3.5.1-1 -> 3.5.1-3 + - pugixml 1.8.1-3 -> 1.9-1 + - realsense2 2.10.1 -> 2.10.1-1 + - rs-core-lib 2018-04-05 -> 2018-04-12 + - sol 2.18.7 -> 2.19.5 + - sqlite3 3.21.0-1 -> 3.23.0 + - thrift 2018-04-05 -> 2018-04-17 + - tinyxml2 6.0.0-2 -> 6.2.0 + - unicorn-lib 2018-03-13 -> 2018-04-09 + - uwebsockets 0.14.6-1 -> 0.14.7-1 + - wt 4.0.2 -> 4.0.3 + - x264 152-e9a5903edf8ca59 -> 152-e9a5903edf8ca59-1 + - yoga 1.7.0-1 -> 1.8.0-1 + - zeromq 2018-04-05 -> 2018-04-17 + * Bump required version & auto-downloaded version of `nuget` to 4.6.2 + * Bump required version & auto-downloaded version of `vswhere` to 2.4.1 + * `vcpkg edit` improvements + - '--all' now will open both the buildtrees dir and the package dir + - Allow multiple ports to be specified as arguments + +-- vcpkg team MON, 23 Apr 2018 19:00:00 -0800 + + vcpkg (0.0.108) -------------- * Add ports: diff --git a/toolsrc/VERSION.txt b/toolsrc/VERSION.txt index 2cd1bf9ac..f8e183aed 100644 --- a/toolsrc/VERSION.txt +++ b/toolsrc/VERSION.txt @@ -1 +1 @@ -"0.0.108" \ No newline at end of file +"0.0.109" \ No newline at end of file -- cgit v1.2.3 From a11086e3b9d560d3b73de91175c57db658e39809 Mon Sep 17 00:00:00 2001 From: Alexander Karatarakis Date: Tue, 27 Mar 2018 03:03:26 -0700 Subject: Introduce bootstrap.sh --- bootstrap-vcpkg.sh | 2 + scripts/bootstrap.sh | 188 +++++++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 190 insertions(+) create mode 100644 bootstrap-vcpkg.sh create mode 100644 scripts/bootstrap.sh diff --git a/bootstrap-vcpkg.sh b/bootstrap-vcpkg.sh new file mode 100644 index 000000000..4bfb17308 --- /dev/null +++ b/bootstrap-vcpkg.sh @@ -0,0 +1,2 @@ +vcpkgRootDir=$(X= cd -- "$(dirname -- "$0")" && pwd -P) +$vcpkgRootDir/scripts/bootstrap.sh \ No newline at end of file diff --git a/scripts/bootstrap.sh b/scripts/bootstrap.sh new file mode 100644 index 000000000..66efb1d62 --- /dev/null +++ b/scripts/bootstrap.sh @@ -0,0 +1,188 @@ +#!/bin/sh + +# Find vcpkg-root +vcpkgRootDir=$(X= cd -- "$(dirname -- "$0")" && pwd -P) +while [ "$vcpkgRootDir" != "/" ] && ! [ -e "$vcpkgRootDir/.vcpkg-root" ]; do + vcpkgRootDir="$(dirname "$vcpkgRootDir")" +done + +downloadsDir="$vcpkgRootDir/downloads" + +extractStringBetweenDelimiters() +{ + input=$1;leftDelim=$2;rightDelim=$3 + output="${input##*$leftDelim}" + output="${output%%$rightDelim*}" + echo "$output" +} + +vcpkgCheckRepoTool() +{ + __tool=$1 + if ! command -v "$__tool" >/dev/null 2>&1 ; then + echo "Could not find $__tool. Please install it (and other dependencies) with:" + echo "sudo apt-get install curl unzip tar" + exit 1 + fi +} + +vcpkgCheckEqualFileHash() +{ + url=$1; filePath=$2; expectedHash=$3 + + actualHash=$(shasum -a 512 "$filePath") # sha512sum not available on osx + actualHash="${actualHash%% *}" # shasum returns [hash filename], so get the first word + + if ! [ "$expectedHash" = "$actualHash" ]; then + echo "" + echo "File does not have expected hash:" + echo " url: [ $url ]" + echo " File path: [ $downloadPath ]" + echo " Expected hash: [ $sha512 ]" + echo " Actual hash: [ $actualHash ]" + exit + fi +} + +vcpkgDownloadFile() +{ + url=$1; downloadPath=$2 sha512=$3 + vcpkgCheckRepoTool "curl" + rm -rf "$downloadPath.part" + curl -L $url --create-dirs --output "$downloadPath.part" || exit 1 + + vcpkgCheckEqualFileHash $url "$downloadPath.part" $sha512 + mv "$downloadPath.part" "$downloadPath" +} + +vcpkgExtractArchive() +{ + archive=$1; toPath=$2 + rm -rf "$toPath" "$toPath.partial" + mkdir -p "$toPath.partial" + + archiveType="${archive##*.}" + if [ "$archiveType" = "zip" ]; then + vcpkgCheckRepoTool "unzip" + $(cd "$toPath.partial" && unzip -qqo "$archive") + else + vcpkgCheckRepoTool "tar" + $(cd "$toPath.partial" && tar xzf "$archive") + fi + mv "$toPath.partial" "$toPath" +} + +fetchTool() +{ + tool=$1; UNAME=$2; __output=$3 + + if [ "$tool" = "" ]; then + echo "No tool name provided" + return 1 + fi + + if [ "$UNAME" = "Linux" ]; then + os="linux" + elif [ "$UNAME" = "Darwin" ]; then + os="osx" + else + echo "Unknown uname: $UNAME" + return 1 + fi + + xmlFileAsString=`cat $vcpkgRootDir/scripts/vcpkgTools.xml` + toolRegexStart="" + toolData="$(extractStringBetweenDelimiters "$xmlFileAsString" "$toolRegexStart" "")" + if [ "$toolData" = "" ]; then + echo "Unknown tool: $tool" + return 1 + fi + + version="$(extractStringBetweenDelimiters "$toolData" "" "")" + + toolPath="$downloadsDir/tools/$tool-$version-$os" + + exeRelativePath="$(extractStringBetweenDelimiters "$toolData" "" "")" + exePath="$toolPath/$exeRelativePath" + + if [ -e "$exePath" ]; then + eval $__output="'$exePath'" + return 0 + fi + + isArchive=true + if [ $isArchive = true ]; then + archiveName="$(extractStringBetweenDelimiters "$toolData" "" "")" + downloadPath="$downloadsDir/$archiveName" + else + echo "Non-archives not supported yet" + return 1 + fi + + url="$(extractStringBetweenDelimiters "$toolData" "" "")" + sha512="$(extractStringBetweenDelimiters "$toolData" "" "")" + if ! [ -e "$downloadPath" ]; then + echo "Downloading $tool..." + vcpkgDownloadFile $url "$downloadPath" $sha512 + echo "Downloading $tool... done." + else + vcpkgCheckEqualFileHash $url "$downloadPath" $sha512 + fi + + if [ $isArchive = true ]; then + echo "Extracting $tool..." + vcpkgExtractArchive "$downloadPath" "$toolPath" + echo "Extracting $tool... done." + fi + + if ! [ -e "$exePath" ]; then + echo "Could not detect or download $tool" + return 1 + fi + + eval $__output="'$exePath'" + return 0 +} + +selectCXX() +{ + __output=$1 + + if [ "x$CXX" = "x" ]; then + CXX=g++ + if which g++-7 >/dev/null 2>&1; then + CXX=g++-7 + elif which g++-6 >/dev/null 2>&1; then + CXX=g++-6 + fi + fi + + gccversion="$("$CXX" -v 2>&1)" + gccversion="$(extractStringBetweenDelimiters "$gccversion" "gcc version " ".")" + if [ "$gccversion" = "5" ]; then + echo "CXX ($CXX) is too old; please install a newer compiler such as g++-7." + echo "sudo add-apt-repository ppa:ubuntu-toolchain-r/test -y" + echo "sudo apt-get update -y" + echo "sudo apt-get install g++-7 -y" + return 1 + fi + + eval $__output="'$CXX'" +} + +# Preparation +UNAME="$(uname)" +fetchTool "cmake" "$UNAME" cmakeExe || exit 1 +fetchTool "ninja" "$UNAME" ninjaExe || exit 1 +selectCXX CXX || exit 1 + +# Do the build +buildDir="$vcpkgRootDir/toolsrc/build.rel" +rm -rf "$buildDir" +mkdir -p "$buildDir" + +(cd "$buildDir" && CXX=$CXX "$cmakeExe" .. -DCMAKE_BUILD_TYPE=Release -G "Ninja" "-DCMAKE_MAKE_PROGRAM=$ninjaExe") +(cd "$buildDir" && "$cmakeExe" --build .) + +rm -rf "$vcpkgRootDir/vcpkg" +cp "$buildDir/vcpkg" "$vcpkgRootDir/" \ No newline at end of file -- cgit v1.2.3 From f703f60bd0064c3aeb116982812a3745817d30fe Mon Sep 17 00:00:00 2001 From: Alexander Karatarakis Date: Mon, 23 Apr 2018 19:33:19 -0700 Subject: Add triplets for x64-linux and x64-osx --- .gitignore | 4 +++- triplets/x64-linux.cmake | 5 +++++ triplets/x64-osx.cmake | 5 +++++ 3 files changed, 13 insertions(+), 1 deletion(-) create mode 100644 triplets/x64-linux.cmake create mode 100644 triplets/x64-osx.cmake diff --git a/.gitignore b/.gitignore index 18384e3da..d105fd368 100644 --- a/.gitignore +++ b/.gitignore @@ -279,7 +279,7 @@ downloads/ installed*/ packages/ scripts/buildsystems/tmp/ -#ignore custom triplets +#ignore custom triplets triplets/* #add vcpkg-designed triplets back in !triplets/arm-uwp.cmake @@ -292,6 +292,8 @@ triplets/* !triplets/x86-windows-static.cmake !triplets/arm64-uwp.cmake !triplets/arm64-windows.cmake +!triplets/x64-linux.cmake +!triplets/x64-osx.cmake *.exe *.zip diff --git a/triplets/x64-linux.cmake b/triplets/x64-linux.cmake new file mode 100644 index 000000000..519618463 --- /dev/null +++ b/triplets/x64-linux.cmake @@ -0,0 +1,5 @@ +set(VCPKG_TARGET_ARCHITECTURE x64) +set(VCPKG_CRT_LINKAGE dynamic) +set(VCPKG_LIBRARY_LINKAGE static) + +set(VCPKG_CMAKE_SYSTEM_NAME Linux) diff --git a/triplets/x64-osx.cmake b/triplets/x64-osx.cmake new file mode 100644 index 000000000..af3a8c348 --- /dev/null +++ b/triplets/x64-osx.cmake @@ -0,0 +1,5 @@ +set(VCPKG_TARGET_ARCHITECTURE x64) +set(VCPKG_CRT_LINKAGE dynamic) +set(VCPKG_LIBRARY_LINKAGE static) + +set(VCPKG_CMAKE_SYSTEM_NAME Darwin) -- cgit v1.2.3 From cde623c774618d8cebed56e08dd0c0106ce0a951 Mon Sep 17 00:00:00 2001 From: pravic Date: Tue, 24 Apr 2018 07:14:53 +0300 Subject: [sqlite3] update to 3.23.1 --- ports/sqlite3/CONTROL | 2 +- ports/sqlite3/portfile.cmake | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/ports/sqlite3/CONTROL b/ports/sqlite3/CONTROL index a5d76d43b..6dc0714e0 100644 --- a/ports/sqlite3/CONTROL +++ b/ports/sqlite3/CONTROL @@ -1,5 +1,5 @@ Source: sqlite3 -Version: 3.23.0 +Version: 3.23.1 Description: SQLite is a software library that implements a self-contained, serverless, zero-configuration, transactional SQL database engine. Feature: tool diff --git a/ports/sqlite3/portfile.cmake b/ports/sqlite3/portfile.cmake index d016660ab..bd7bcc15c 100644 --- a/ports/sqlite3/portfile.cmake +++ b/ports/sqlite3/portfile.cmake @@ -1,7 +1,7 @@ include(vcpkg_common_functions) -set(SQLITE_VERSION 3230000) -set(SQLITE_HASH bfca2ec16d926c11c9ec052eae41549f1de392582227ca08eb8a01cc36e58ac528c7677fdab253250ba3e0cf6e5cd9d3d0012e5b558be7db91740ac901dae0fe) +set(SQLITE_VERSION 3230100) +set(SQLITE_HASH 5784f4dea7f14d7dcf5dd07f0e111c8f0b64ff55c68b32a23fba7a36baf1f095c7a35573fc3b57b84822878218b78f9b0187c4e3f0439d4215471ee5f556eee1) set(SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src/sqlite-amalgamation-${SQLITE_VERSION}) vcpkg_download_distfile(ARCHIVE -- cgit v1.2.3 From 90db2c72173c7398122e693d797f82736dabd109 Mon Sep 17 00:00:00 2001 From: pravic Date: Tue, 24 Apr 2018 07:29:17 +0300 Subject: [sqlite3] Fix tool feature with static builds refs #2525 --- ports/sqlite3/CMakeLists.txt | 8 ++++++-- ports/sqlite3/CONTROL | 2 +- 2 files changed, 7 insertions(+), 3 deletions(-) diff --git a/ports/sqlite3/CMakeLists.txt b/ports/sqlite3/CMakeLists.txt index 7d6e20dee..b4b105a65 100644 --- a/ports/sqlite3/CMakeLists.txt +++ b/ports/sqlite3/CMakeLists.txt @@ -9,7 +9,7 @@ else() endif() add_library(sqlite3 sqlite3.c) -target_compile_definitions(sqlite3 PRIVATE +target_compile_definitions(sqlite3 PRIVATE $<$:SQLITE_DEBUG> ${API} -DSQLITE_ENABLE_RTREE @@ -25,7 +25,11 @@ if(NOT SQLITE3_SKIP_TOOLS) add_executable(sqlite3-bin shell.c) set_target_properties(sqlite3-bin PROPERTIES OUTPUT_NAME sqlite3) target_link_libraries(sqlite3-bin PRIVATE sqlite3) - install(TARGETS sqlite3-bin sqlite3 RUNTIME DESTINATION tools) + install(TARGETS sqlite3-bin sqlite3 + RUNTIME DESTINATION tools + LIBRARY DESTINATION lib + ARCHIVE DESTINATION lib + ) endif() install(TARGETS sqlite3 EXPORT sqlite3Config diff --git a/ports/sqlite3/CONTROL b/ports/sqlite3/CONTROL index 6dc0714e0..74d70909b 100644 --- a/ports/sqlite3/CONTROL +++ b/ports/sqlite3/CONTROL @@ -1,5 +1,5 @@ Source: sqlite3 -Version: 3.23.1 +Version: 3.23.1-1 Description: SQLite is a software library that implements a self-contained, serverless, zero-configuration, transactional SQL database engine. Feature: tool -- cgit v1.2.3 From 810f79302bcfb31cc5541d2c06f9c6be9d7cc9c5 Mon Sep 17 00:00:00 2001 From: pravic Date: Tue, 24 Apr 2018 07:37:05 +0300 Subject: [sciter] Update to 4.1.6.5883 --- ports/sciter/CONTROL | 2 +- ports/sciter/portfile.cmake | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/ports/sciter/CONTROL b/ports/sciter/CONTROL index b2f19fdf0..5e573c899 100644 --- a/ports/sciter/CONTROL +++ b/ports/sciter/CONTROL @@ -1,4 +1,4 @@ Source: sciter -Version: 4.1.5 +Version: 4.1.6 Description: Sciter is an embeddable HTML/CSS/scripting engine. Maintainer: andrew.fedoniouk@gmail.com, ehysta@gmail.com diff --git a/ports/sciter/portfile.cmake b/ports/sciter/portfile.cmake index 7aeb87eee..7a10297b2 100644 --- a/ports/sciter/portfile.cmake +++ b/ports/sciter/portfile.cmake @@ -12,8 +12,8 @@ include(vcpkg_common_functions) # header-only library set(VCPKG_POLICY_DLLS_WITHOUT_LIBS enabled) -set(SCITER_REVISION 331bf886a39c1a003f61bb0c1a75037ec4c1e9e4) -set(SCITER_SHA b05b7c694fb75a3308a2684ad78587453d70d41dc0609dfec0a40b465bb8982c79867a63a898a09ed54f6fc516d0b014942824da7a642682b86710ffb23c7366) +set(SCITER_REVISION 1f6f9afc6bf3c4f60ea510fc75f89634f282d15d) +set(SCITER_SHA 53be8007c22349e9801c413483d70cad437bc3399686f2c503da9b7aa96bf212e7563b13fff8e62942b0991fa775e87e542b5ff9c3dbc4aff1fd5291200b2c8e) if(VCPKG_TARGET_ARCHITECTURE STREQUAL x64) set(SCITER_ARCH 64) -- cgit v1.2.3 From 95f0756826e4ac10edbdfb56a9e1c60681263569 Mon Sep 17 00:00:00 2001 From: Jennifer Zhao Date: Tue, 24 Apr 2018 02:30:04 -0700 Subject: Fix Clblas --- ports/clblas/portfile.cmake | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/ports/clblas/portfile.cmake b/ports/clblas/portfile.cmake index b18377cdf..98ea1e515 100644 --- a/ports/clblas/portfile.cmake +++ b/ports/clblas/portfile.cmake @@ -32,7 +32,9 @@ vcpkg_configure_cmake( ) vcpkg_install_cmake() - +if(VCPKG_LIBRARY_LINKAGE STREQUAL static) + file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/bin ${CURRENT_PACKAGES_DIR}/debug/bin) +endif() file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include) file(INSTALL -- cgit v1.2.3 From 290907f9059bac92dd59d8bbceef6a3ef728a0ae Mon Sep 17 00:00:00 2001 From: Tsukasa Sugiura Date: Tue, 24 Apr 2018 23:04:09 +0900 Subject: [realsense2] Update to v2.10.4 Update realsense2 port to librealsense v2.10.4. --- ports/realsense2/CONTROL | 5 +-- ports/realsense2/build_with_static_crt.patch | 67 ---------------------------- ports/realsense2/fix_rgb_using_avx2.patch | 12 ----- ports/realsense2/portfile.cmake | 27 +++-------- 4 files changed, 7 insertions(+), 104 deletions(-) delete mode 100644 ports/realsense2/build_with_static_crt.patch delete mode 100644 ports/realsense2/fix_rgb_using_avx2.patch diff --git a/ports/realsense2/CONTROL b/ports/realsense2/CONTROL index 2465fd1a4..f87152bc6 100644 --- a/ports/realsense2/CONTROL +++ b/ports/realsense2/CONTROL @@ -1,10 +1,7 @@ Source: realsense2 -Version: 2.10.1-1 +Version: 2.10.4 Description: Intel® RealSense™ SDK 2.0 is a cross-platform library for Intel® RealSense™ depth cameras (D400 series and the SR300). -Feature: avx2 -Description: rgb image decode using avx2 - Feature: tools Build-Depends: opengl Description: Build Intel® RealSense™ examples and tools diff --git a/ports/realsense2/build_with_static_crt.patch b/ports/realsense2/build_with_static_crt.patch deleted file mode 100644 index ab8ec426d..000000000 --- a/ports/realsense2/build_with_static_crt.patch +++ /dev/null @@ -1,67 +0,0 @@ -diff --git a/CMakeLists.txt b/CMakeLists.txt -index 9425b92d..21232504 100644 ---- a/CMakeLists.txt -+++ b/CMakeLists.txt -@@ -299,6 +299,8 @@ if(BUILD_EASYLOGGINGPP) - list(APPEND REALSENSE_HPP third-party/easyloggingpp/src/easylogging++.h) - endif() - -+option(BUILD_WITH_STATIC_CRT "Build with static link CRT" ON) -+ - if(WIN32) - source_group("Source Files\\Backend" FILES - src/win/win-helpers.cpp -@@ -484,15 +486,17 @@ if(WIN32) - src/proc/disparity-transform.h - ) - -- foreach(flag_var -- CMAKE_CXX_FLAGS CMAKE_CXX_FLAGS_DEBUG CMAKE_CXX_FLAGS_RELEASE -- CMAKE_CXX_FLAGS_MINSIZEREL CMAKE_CXX_FLAGS_RELWITHDEBINFO -- CMAKE_C_FLAGS CMAKE_C_FLAGS_DEBUG CMAKE_C_FLAGS_RELEASE -- CMAKE_C_FLAGS_MINSIZEREL CMAKE_C_FLAGS_RELWITHDEBINFO) -- if(${flag_var} MATCHES "/MD") -- string(REGEX REPLACE "/MD" "/MT" ${flag_var} "${${flag_var}}") -- endif(${flag_var} MATCHES "/MD") -- endforeach(flag_var) -+ if(BUILD_WITH_STATIC_CRT) -+ foreach(flag_var -+ CMAKE_CXX_FLAGS CMAKE_CXX_FLAGS_DEBUG CMAKE_CXX_FLAGS_RELEASE -+ CMAKE_CXX_FLAGS_MINSIZEREL CMAKE_CXX_FLAGS_RELWITHDEBINFO -+ CMAKE_C_FLAGS CMAKE_C_FLAGS_DEBUG CMAKE_C_FLAGS_RELEASE -+ CMAKE_C_FLAGS_MINSIZEREL CMAKE_C_FLAGS_RELWITHDEBINFO) -+ if(${flag_var} MATCHES "/MD") -+ string(REGEX REPLACE "/MD" "/MT" ${flag_var} "${${flag_var}}") -+ endif(${flag_var} MATCHES "/MD") -+ endforeach(flag_var) -+ endif() - else() - - endif() -@@ -652,15 +656,17 @@ if (BUILD_WITH_TM2) - list(APPEND CMAKE_MODULE_PATH ${CMAKE_CURRENT_SOURCE_DIR}/CMake) - find_package(libtm REQUIRED) - -- foreach(flag_var -- CMAKE_CXX_FLAGS CMAKE_CXX_FLAGS_DEBUG CMAKE_CXX_FLAGS_RELEASE -- CMAKE_CXX_FLAGS_MINSIZEREL CMAKE_CXX_FLAGS_RELWITHDEBINFO -- CMAKE_C_FLAGS CMAKE_C_FLAGS_DEBUG CMAKE_C_FLAGS_RELEASE -- CMAKE_C_FLAGS_MINSIZEREL CMAKE_C_FLAGS_RELWITHDEBINFO) -- if(${flag_var} MATCHES "/MD") -- string(REGEX REPLACE "/MD" "/MT" ${flag_var} "${${flag_var}}") -- endif(${flag_var} MATCHES "/MD") -- endforeach(flag_var) -+ if(BUILD_WITH_STATIC_CRT) -+ foreach(flag_var -+ CMAKE_CXX_FLAGS CMAKE_CXX_FLAGS_DEBUG CMAKE_CXX_FLAGS_RELEASE -+ CMAKE_CXX_FLAGS_MINSIZEREL CMAKE_CXX_FLAGS_RELWITHDEBINFO -+ CMAKE_C_FLAGS CMAKE_C_FLAGS_DEBUG CMAKE_C_FLAGS_RELEASE -+ CMAKE_C_FLAGS_MINSIZEREL CMAKE_C_FLAGS_RELWITHDEBINFO) -+ if(${flag_var} MATCHES "/MD") -+ string(REGEX REPLACE "/MD" "/MT" ${flag_var} "${${flag_var}}") -+ endif(${flag_var} MATCHES "/MD") -+ endforeach(flag_var) -+ endif() - - list(APPEND REALSENSE_HPP - src/tm2/tm-context.h diff --git a/ports/realsense2/fix_rgb_using_avx2.patch b/ports/realsense2/fix_rgb_using_avx2.patch deleted file mode 100644 index 38ae33a7c..000000000 --- a/ports/realsense2/fix_rgb_using_avx2.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff --git a/src/image.cpp b/src/image.cpp -index 47cc68d8..04a8afd3 100644 ---- a/src/image.cpp -+++ b/src/image.cpp -@@ -8,6 +8,7 @@ - - #ifdef __SSSE3__ - #include // For SSE3 intrinsic used in unpack_yuy2_sse -+#include - #endif - - #pragma pack(push, 1) // All structs in this file are assumed to be byte-packed diff --git a/ports/realsense2/portfile.cmake b/ports/realsense2/portfile.cmake index 8e6b57392..ed9e88ea2 100644 --- a/ports/realsense2/portfile.cmake +++ b/ports/realsense2/portfile.cmake @@ -3,28 +3,14 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO IntelRealSense/librealsense - REF v2.10.1 - SHA512 fb00a424a5bd7335cc661261e76cf623e27a89af1033692d4cb6ed523af1295359929c235e82253911e61323cb7b82551a9223862174cb0e2363ac944b2db923 + REF v2.10.4 + SHA512 35580cd4ab65b85eb7fcebac3be629960993223437e3c44b0bcc2f7572d85231e822a922b2f5e22480fcc1edb9295ab2c5893794d638c2ab6faf49a9eea57603 HEAD_REF development ) -vcpkg_apply_patches( - SOURCE_PATH ${SOURCE_PATH} - PATCHES - ${CMAKE_CURRENT_LIST_DIR}/build_with_static_crt.patch # https://github.com/IntelRealSense/librealsense/pull/1262 - ${CMAKE_CURRENT_LIST_DIR}/fix_rgb_using_avx2.patch # https://github.com/IntelRealSense/librealsense/pull/1245 -) - string(COMPARE EQUAL "${VCPKG_LIBRARY_LINKAGE}" "dynamic" BUILD_LIBRARY_LINKAGE) string(COMPARE EQUAL "${VCPKG_CRT_LINKAGE}" "static" BUILD_CRT_LINKAGE) -# This option will be deprecated in the later versions. -# Please see Pull Request #1245. https://github.com/IntelRealSense/librealsense/pull/1245 -set(RGB_USING_AVX2 OFF) -if("avx2" IN_LIST FEATURES) - set(RGB_USING_AVX2 ON) -endif() - set(BUILD_EXAMPLES OFF) set(BUILD_GRAPHICAL_EXAMPLES OFF) if("tools" IN_LIST FEATURES) @@ -36,18 +22,17 @@ endif() vcpkg_configure_cmake( SOURCE_PATH ${SOURCE_PATH} OPTIONS + #Ungrouped Entries -DENFORCE_METADATA=ON + # BUILD -DBUILD_EXAMPLES=${BUILD_EXAMPLES} -DBUILD_GRAPHICAL_EXAMPLES=${BUILD_GRAPHICAL_EXAMPLES} - -DBUILD_CV_EXAMPLES=OFF - -DBUILD_PCL_EXAMPLES=OFF - -DBUILD_PYTHON_BINDINGS=OFF + -DBUILD_SHARED_LIBS=${BUILD_LIBRARY_LINKAGE} -DBUILD_UNIT_TESTS=OFF -DBUILD_WITH_OPENMP=OFF - -DBUILD_SHARED_LIBS=${BUILD_LIBRARY_LINKAGE} -DBUILD_WITH_STATIC_CRT=${BUILD_CRT_LINKAGE} - -DRGB_USING_AVX2=${RGB_USING_AVX2} OPTIONS_DEBUG + # CMAKE "-DCMAKE_PDB_OUTPUT_DIRECTORY=${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-dbg" -DCMAKE_DEBUG_POSTFIX="_d" ) -- cgit v1.2.3 From 27a295aaf25e512192c59197ef3e98b4276402b8 Mon Sep 17 00:00:00 2001 From: Tsukasa Sugiura Date: Tue, 24 Apr 2018 23:07:37 +0900 Subject: [realsense2] Disable Build Tools when Debug Configuration to Speed-Up Install Disable build tools when debug configuration to speed-up vcpkg install. --- ports/realsense2/portfile.cmake | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/ports/realsense2/portfile.cmake b/ports/realsense2/portfile.cmake index ed9e88ea2..6a02259ba 100644 --- a/ports/realsense2/portfile.cmake +++ b/ports/realsense2/portfile.cmake @@ -16,7 +16,6 @@ set(BUILD_GRAPHICAL_EXAMPLES OFF) if("tools" IN_LIST FEATURES) set(BUILD_EXAMPLES ON) set(BUILD_GRAPHICAL_EXAMPLES ON) - set(BUILD_TOOLS ON) endif() vcpkg_configure_cmake( @@ -32,6 +31,9 @@ vcpkg_configure_cmake( -DBUILD_WITH_OPENMP=OFF -DBUILD_WITH_STATIC_CRT=${BUILD_CRT_LINKAGE} OPTIONS_DEBUG + # BUILD + -DBUILD_EXAMPLES=OFF + -DBUILD_GRAPHICAL_EXAMPLES=OFF # CMAKE "-DCMAKE_PDB_OUTPUT_DIRECTORY=${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-dbg" -DCMAKE_DEBUG_POSTFIX="_d" @@ -44,7 +46,7 @@ vcpkg_copy_pdbs() file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include) file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/share) -if(BUILD_TOOLS) +if(BUILD_EXAMPLES) file(GLOB EXEFILES_RELEASE ${CURRENT_PACKAGES_DIR}/bin/*.exe) file(GLOB EXEFILES_DEBUG ${CURRENT_PACKAGES_DIR}/debug/bin/*.exe) file(COPY ${EXEFILES_RELEASE} DESTINATION ${CURRENT_PACKAGES_DIR}/tools/realsense2) -- cgit v1.2.3 From ed9bb364468717b5b1f55980556935fac2f8e8a5 Mon Sep 17 00:00:00 2001 From: Alexander Karatarakis Date: Tue, 24 Apr 2018 10:42:38 -0700 Subject: Update CHANGELOG and bump version to v0.0.110 --- CHANGELOG.md | 7 +++++++ toolsrc/VERSION.txt | 2 +- 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 24f6df0b9..8f275866d 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,10 @@ +vcpkg (0.0.110) +-------------- + * `vcpkg` is now available for Linux and MacOS. More information [here](https://blogs.msdn.microsoft.com/vcblog/2018/04/24/announcing-a-single-c-library-manager-for-linux-macos-and-windows-vcpkg/). + +-- vcpkg team TUE, 24 Apr 2018 10:30:00 -0800 + + vcpkg (0.0.109) -------------- * Add ports: diff --git a/toolsrc/VERSION.txt b/toolsrc/VERSION.txt index f8e183aed..ca3fbdad8 100644 --- a/toolsrc/VERSION.txt +++ b/toolsrc/VERSION.txt @@ -1 +1 @@ -"0.0.109" \ No newline at end of file +"0.0.110" \ No newline at end of file -- cgit v1.2.3 From d126acab7bc5789e8f75197c2ac1fda03584caba Mon Sep 17 00:00:00 2001 From: Alexander Karatarakis Date: Tue, 24 Apr 2018 11:02:57 -0700 Subject: [vcpkg integrate] Do nothing on linux instead of showing error message --- toolsrc/src/vcpkg/commands.integrate.cpp | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/toolsrc/src/vcpkg/commands.integrate.cpp b/toolsrc/src/vcpkg/commands.integrate.cpp index 7061a3984..2e1750c80 100644 --- a/toolsrc/src/vcpkg/commands.integrate.cpp +++ b/toolsrc/src/vcpkg/commands.integrate.cpp @@ -392,8 +392,10 @@ With a project open, go to Tools->NuGet Package Manager->Package Manager Console paths.scripts / "addPoshVcpkgToPowershellProfile.ps1"); Checks::exit_success(VCPKG_LINE_INFO); } -#endif Checks::exit_with_message(VCPKG_LINE_INFO, "Unknown parameter %s for integrate", args.command_arguments[0]); +#else + Checks::exit_success(VCPKG_LINE_INFO); +#endif } } -- cgit v1.2.3 From de4edd0e8c8487158aedbf4d9cd4cd78554127c6 Mon Sep 17 00:00:00 2001 From: Alexander Karatarakis Date: Tue, 24 Apr 2018 11:03:47 -0700 Subject: [README] Show cmake instructions in the README instead of only linking to another md --- README.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index 99075569d..4983508a4 100644 --- a/README.md +++ b/README.md @@ -26,7 +26,8 @@ C:\src\vcpkg> .\vcpkg install sdl2 curl ``` Finally, create a New Project (or open an existing one) in Visual Studio 2017 or 2015. All installed libraries are immediately ready to be `#include`'d and used in your project. -For CMake projects, simply include our toolchain file. See our [using a package](docs/examples/using-sqlite.md) example for the specifics. +The best way to use installed libraries with cmake is via the toolchain file `scripts\buildsystems\vcpkg.cmake`. To use this file, you simply need to add it onto your CMake command line as `-DCMAKE_TOOLCHAIN_FILE=D:\src\vcpkg\scripts\buildsystems\vcpkg.cmake`. +For more information, see our [using a package](docs/examples/using-sqlite.md) example for the specifics. ## Tab-Completion / Auto-Completion `Vcpkg` supports auto-completion of commands, package names, options etc. To enable tab-completion in Powershell, use -- cgit v1.2.3 From f0767d3bd996553636a5cdc6bd2cad8f9aa903b5 Mon Sep 17 00:00:00 2001 From: Claudio Fantacci Date: Tue, 24 Apr 2018 20:09:12 +0200 Subject: Fix PCL compile tools (#3301) Add missing boost definition using a patch. Better compile from HEAD. --- ports/pcl/boost_uuid_random_generator_compat.patch | 13 +++++++++++++ ports/pcl/portfile.cmake | 1 + 2 files changed, 14 insertions(+) create mode 100644 ports/pcl/boost_uuid_random_generator_compat.patch diff --git a/ports/pcl/boost_uuid_random_generator_compat.patch b/ports/pcl/boost_uuid_random_generator_compat.patch new file mode 100644 index 000000000..891890b46 --- /dev/null +++ b/ports/pcl/boost_uuid_random_generator_compat.patch @@ -0,0 +1,13 @@ +diff --git a/CMakeLists.txt b/CMakeLists.txt +index 0405dca2..00e5238e 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -168,6 +168,8 @@ if(CMAKE_COMPILER_IS_MSVC) + endif() + endif() + ++add_definitions(-DBOOST_UUID_RANDOM_GENERATOR_COMPAT) ++ + if(CMAKE_COMPILER_IS_PATHSCALE) + if("${CMAKE_CXX_FLAGS}" STREQUAL "") + SET(CMAKE_CXX_FLAGS "-Wno-uninitialized -zerouv -pthread -mp") diff --git a/ports/pcl/portfile.cmake b/ports/pcl/portfile.cmake index 812e05674..12c9ec398 100644 --- a/ports/pcl/portfile.cmake +++ b/ports/pcl/portfile.cmake @@ -18,6 +18,7 @@ vcpkg_apply_patches( "${CMAKE_CURRENT_LIST_DIR}/find_openni2.patch" "${CMAKE_CURRENT_LIST_DIR}/find_cuda.patch" "${CMAKE_CURRENT_LIST_DIR}/vs2017-15.4-workaround.patch" + "${CMAKE_CURRENT_LIST_DIR}/boost_uuid_random_generator_compat.patch" ) string(COMPARE EQUAL "${VCPKG_LIBRARY_LINKAGE}" "dynamic" PCL_SHARED_LIBS) -- cgit v1.2.3 From f12ded7fd0ca91fb128ddaf20b933f8457d9c1f3 Mon Sep 17 00:00:00 2001 From: Alexander Karatarakis Date: Tue, 24 Apr 2018 22:44:46 +0000 Subject: [sh] Fix permission --- bootstrap-vcpkg.sh | 0 scripts/bootstrap.sh | 0 2 files changed, 0 insertions(+), 0 deletions(-) mode change 100644 => 100755 bootstrap-vcpkg.sh mode change 100644 => 100755 scripts/bootstrap.sh diff --git a/bootstrap-vcpkg.sh b/bootstrap-vcpkg.sh old mode 100644 new mode 100755 diff --git a/scripts/bootstrap.sh b/scripts/bootstrap.sh old mode 100644 new mode 100755 -- cgit v1.2.3 From f51b9d403a5a1bb99aa7c13e6b64f398ff423a40 Mon Sep 17 00:00:00 2001 From: Joel Clay Date: Tue, 24 Apr 2018 18:52:32 -0400 Subject: Add crossplatform announcement to docs --- docs/index.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/index.md b/docs/index.md index 3fa5784e9..1d12b282e 100644 --- a/docs/index.md +++ b/docs/index.md @@ -25,7 +25,7 @@ Vcpkg helps you get C and C++ libraries on Windows. This tool and ecosystem are - [Export](specifications/export-command.md) ### Blog posts - +- [Announcing a single C++ library manager for Linux, macOS and Windows: Vcpkg](https://blogs.msdn.microsoft.com/vcblog/2018/04/24/announcing-a-single-c-library-manager-for-linux-macos-and-windows-vcpkg/) - [Vcpkg: introducing the export command](https://blogs.msdn.microsoft.com/vcblog/2017/05/03/vcpkg-introducing-export-command/) - [Binary Compatibility and Pain-free Upgrade Why Moving to Visual Studio 2017 is almost "too easy"](https://blogs.msdn.microsoft.com/vcblog/2017/03/07/binary-compatibility-and-pain-free-upgrade-why-moving-to-visual-studio-2017-is-almost-too-easy/) - [Vcpkg recent enhancements](https://blogs.msdn.microsoft.com/vcblog/2017/02/14/vcpkg-recent-enhancements/) -- cgit v1.2.3 From b5e4c4c7cf68b807e222b09415b678d2f47a3d3b Mon Sep 17 00:00:00 2001 From: Alexander Karatarakis Date: Tue, 24 Apr 2018 16:04:14 -0700 Subject: [find_acquire.cmake] Fix ninja path for mac --- scripts/cmake/vcpkg_find_acquire_program.cmake | 2 ++ 1 file changed, 2 insertions(+) diff --git a/scripts/cmake/vcpkg_find_acquire_program.cmake b/scripts/cmake/vcpkg_find_acquire_program.cmake index 30ecb0573..39a722d93 100644 --- a/scripts/cmake/vcpkg_find_acquire_program.cmake +++ b/scripts/cmake/vcpkg_find_acquire_program.cmake @@ -115,6 +115,8 @@ function(vcpkg_find_acquire_program VAR) set(SUBDIR "ninja-1.8.2") if(CMAKE_HOST_WIN32) set(PATHS "${DOWNLOADS}/tools/ninja/${SUBDIR}") + elseif(CMAKE_HOST_SYSTEM_NAME STREQUAL "Darwin") + set(PATHS "${DOWNLOADS}/tools/${SUBDIR}-osx") else() set(PATHS "${DOWNLOADS}/tools/${SUBDIR}-linux") endif() -- cgit v1.2.3 From 967765f294f1390a9963e21c2918502e22e64caf Mon Sep 17 00:00:00 2001 From: Alexander Karatarakis Date: Tue, 24 Apr 2018 22:56:18 -0700 Subject: [osx] Ignore .DS_Store file. Fixes #3306 --- toolsrc/src/vcpkg/paragraphs.cpp | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/toolsrc/src/vcpkg/paragraphs.cpp b/toolsrc/src/vcpkg/paragraphs.cpp index 41ffceec7..77c028937 100644 --- a/toolsrc/src/vcpkg/paragraphs.cpp +++ b/toolsrc/src/vcpkg/paragraphs.cpp @@ -253,6 +253,10 @@ namespace vcpkg::Paragraphs LoadResults ret; auto port_dirs = fs.get_files_non_recursive(ports_dir); Util::sort(port_dirs); + Util::erase_remove_if(port_dirs, [&](auto&& port_dir_entry) { + return fs.is_regular_file(port_dir_entry) && port_dir_entry.filename() == ".DS_Store"; + }); + for (auto&& path : port_dirs) { auto maybe_spgh = try_load_port(fs, path); -- cgit v1.2.3 From f6530368eb31734734c0e1e7ce990c0cb93f0b24 Mon Sep 17 00:00:00 2001 From: Alexander Karatarakis Date: Wed, 25 Apr 2018 00:19:27 -0700 Subject: Remove noexcept from BinaryParagraph() --- toolsrc/include/vcpkg/binaryparagraph.h | 2 +- toolsrc/src/vcpkg/binaryparagraph.cpp | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/toolsrc/include/vcpkg/binaryparagraph.h b/toolsrc/include/vcpkg/binaryparagraph.h index 5ba2fbde3..3315151c6 100644 --- a/toolsrc/include/vcpkg/binaryparagraph.h +++ b/toolsrc/include/vcpkg/binaryparagraph.h @@ -12,7 +12,7 @@ namespace vcpkg /// struct BinaryParagraph { - BinaryParagraph() noexcept; + BinaryParagraph(); explicit BinaryParagraph(std::unordered_map fields); BinaryParagraph(const SourceParagraph& spgh, const Triplet& triplet, const std::string& abi_tag); BinaryParagraph(const SourceParagraph& spgh, const FeatureParagraph& fpgh, const Triplet& triplet); diff --git a/toolsrc/src/vcpkg/binaryparagraph.cpp b/toolsrc/src/vcpkg/binaryparagraph.cpp index 126c7df97..73ca23df1 100644 --- a/toolsrc/src/vcpkg/binaryparagraph.cpp +++ b/toolsrc/src/vcpkg/binaryparagraph.cpp @@ -24,7 +24,7 @@ namespace vcpkg static const std::string DEFAULTFEATURES = "Default-Features"; } - BinaryParagraph::BinaryParagraph() noexcept = default; + BinaryParagraph::BinaryParagraph() = default; BinaryParagraph::BinaryParagraph(std::unordered_map fields) { -- cgit v1.2.3 From 77b323a5be7215d7601b217c37ca13ec62ea2c1c Mon Sep 17 00:00:00 2001 From: Jan Niklas Hasse Date: Wed, 25 Apr 2018 09:59:55 +0200 Subject: Add Bash shebang to bootstrap script --- bootstrap-vcpkg.sh | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/bootstrap-vcpkg.sh b/bootstrap-vcpkg.sh index 4bfb17308..67102ca25 100755 --- a/bootstrap-vcpkg.sh +++ b/bootstrap-vcpkg.sh @@ -1,2 +1,4 @@ +#!/usr/bin/env bash + vcpkgRootDir=$(X= cd -- "$(dirname -- "$0")" && pwd -P) -$vcpkgRootDir/scripts/bootstrap.sh \ No newline at end of file +$vcpkgRootDir/scripts/bootstrap.sh -- cgit v1.2.3 From 83f3006b4d2361f6411d30f8af2656dae29ed991 Mon Sep 17 00:00:00 2001 From: Afnan Enayet Date: Wed, 25 Apr 2018 12:04:58 -0400 Subject: Update gitignore to exclude the `vcpkg` binary (artifact of the build script) from the git repo --- .gitignore | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.gitignore b/.gitignore index d105fd368..aa272483c 100644 --- a/.gitignore +++ b/.gitignore @@ -25,6 +25,7 @@ bld/ [Bb]in/ [Oo]bj/ [Ll]og/ +vcpkg # Visual Studio 2015 cache/options directory .vs/ @@ -299,4 +300,4 @@ triplets/* ############################################################ # vcpkg - End -############################################################ \ No newline at end of file +############################################################ -- cgit v1.2.3 From 28082c2e936137dd30ece6ea85c2cfece88f1f9d Mon Sep 17 00:00:00 2001 From: Alexey Gruzdev Date: Wed, 25 Apr 2018 19:46:18 +0100 Subject: [yato] Added yato library package --- ports/yato/CONTROL | 3 +++ ports/yato/portfile.cmake | 41 +++++++++++++++++++++++++++++++++++++++++ 2 files changed, 44 insertions(+) create mode 100644 ports/yato/CONTROL create mode 100644 ports/yato/portfile.cmake diff --git a/ports/yato/CONTROL b/ports/yato/CONTROL new file mode 100644 index 000000000..f3793fb80 --- /dev/null +++ b/ports/yato/CONTROL @@ -0,0 +1,3 @@ +Source: yato +Version: 1.0 +Description: Modern C++14 containers and utilities, actors system, typesafe config diff --git a/ports/yato/portfile.cmake b/ports/yato/portfile.cmake new file mode 100644 index 000000000..f688675ba --- /dev/null +++ b/ports/yato/portfile.cmake @@ -0,0 +1,41 @@ +include(vcpkg_common_functions) + +vcpkg_from_bitbucket( + OUT_SOURCE_PATH SOURCE_PATH + REPO alexey_gruzdev/yato + REF v1.0 + SHA512 631b870fd2704a03d9d66ef244f4e50968ae63da4fda0c7cd1f6ce2cea2b1e8b4506b0148cd1af1e133a70fd5d9cdc9d8c054edac6141118ee3c9427e186b270 + HEAD_REF master +) + +# Copy all header files +file(COPY "${SOURCE_PATH}/include/yato" + DESTINATION "${CURRENT_PACKAGES_DIR}/include" +) + +vcpkg_configure_cmake( + SOURCE_PATH ${SOURCE_PATH} + OPTIONS -DYATO_BUILD_TESTS:BOOL=OFF -DYATO_BUILD_ACTORS:BOOL=ON -DYATO_BUILD_CONFIG:BOOL=ON -DYATO_CONFIG_MANUAL:BOOL=ON +) + +vcpkg_build_cmake() + +set(BUILD_ROOT_DEBUG "${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-dbg") +set(BUILD_ROOT_RELEASE "${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-rel") + +file(COPY "${BUILD_ROOT_DEBUG}/modules/actors/Debug/YatoActors.lib" + "${BUILD_ROOT_DEBUG}/modules/config/Debug/YatoConfig.lib" + DESTINATION "${CURRENT_PACKAGES_DIR}/debug/lib/" +) + +file(COPY "${BUILD_ROOT_RELEASE}/modules/actors/Release/YatoActors.lib" + "${BUILD_ROOT_RELEASE}/modules/config/Release/YatoConfig.lib" + DESTINATION "${CURRENT_PACKAGES_DIR}/lib/" +) + +# Handle copyright +file(COPY ${SOURCE_PATH}/LICENSE.txt DESTINATION ${CURRENT_PACKAGES_DIR}/share/yato) +file(RENAME ${CURRENT_PACKAGES_DIR}/share/yato/LICENSE.txt ${CURRENT_PACKAGES_DIR}/share/yato/copyright) + + + -- cgit v1.2.3 From 237268f29d90c270f9955eb86cc5471bbb47d22a Mon Sep 17 00:00:00 2001 From: Alexander Karatarakis Date: Wed, 25 Apr 2018 13:19:49 -0700 Subject: [sh] Change to #!/bin/sh --- bootstrap-vcpkg.sh | 4 ++++ 1 file changed, 4 insertions(+) mode change 100755 => 100644 bootstrap-vcpkg.sh diff --git a/bootstrap-vcpkg.sh b/bootstrap-vcpkg.sh old mode 100755 new mode 100644 index 67102ca25..7196fbde0 --- a/bootstrap-vcpkg.sh +++ b/bootstrap-vcpkg.sh @@ -1,4 +1,8 @@ +<<<<<<< Updated upstream #!/usr/bin/env bash +======= +#!/bin/sh +>>>>>>> Stashed changes vcpkgRootDir=$(X= cd -- "$(dirname -- "$0")" && pwd -P) $vcpkgRootDir/scripts/bootstrap.sh -- cgit v1.2.3 From d1b9a8637c84d185dd2c99249bae41864987bf05 Mon Sep 17 00:00:00 2001 From: Alexander Karatarakis Date: Wed, 25 Apr 2018 14:36:31 -0700 Subject: [sh] Remove merge conflict lines --- bootstrap-vcpkg.sh | 4 ---- 1 file changed, 4 deletions(-) diff --git a/bootstrap-vcpkg.sh b/bootstrap-vcpkg.sh index 7196fbde0..92e65dc6c 100644 --- a/bootstrap-vcpkg.sh +++ b/bootstrap-vcpkg.sh @@ -1,8 +1,4 @@ -<<<<<<< Updated upstream -#!/usr/bin/env bash -======= #!/bin/sh ->>>>>>> Stashed changes vcpkgRootDir=$(X= cd -- "$(dirname -- "$0")" && pwd -P) $vcpkgRootDir/scripts/bootstrap.sh -- cgit v1.2.3 From 56d394e0979d1798f27addb2ad40a412c57eb348 Mon Sep 17 00:00:00 2001 From: Alexander Karatarakis Date: Wed, 25 Apr 2018 22:10:03 +0000 Subject: [sh] permissions --- bootstrap-vcpkg.sh | 0 1 file changed, 0 insertions(+), 0 deletions(-) mode change 100644 => 100755 bootstrap-vcpkg.sh diff --git a/bootstrap-vcpkg.sh b/bootstrap-vcpkg.sh old mode 100644 new mode 100755 -- cgit v1.2.3 From 92b565e00a8203bc8ecd9e11adc6cbffe9213203 Mon Sep 17 00:00:00 2001 From: Cheney Wang Date: Wed, 25 Apr 2018 02:57:02 -0700 Subject: Since the auto_ptr is removed in c++17, so use unique_ptr to instead of it. --- ports/libxmlpp/fixAutoPtrExpired.patch | 114 +++++++++++++++++++++++++++++++++ ports/libxmlpp/portfile.cmake | 5 ++ 2 files changed, 119 insertions(+) create mode 100644 ports/libxmlpp/fixAutoPtrExpired.patch diff --git a/ports/libxmlpp/fixAutoPtrExpired.patch b/ports/libxmlpp/fixAutoPtrExpired.patch new file mode 100644 index 000000000..98d4df6bc --- /dev/null +++ b/ports/libxmlpp/fixAutoPtrExpired.patch @@ -0,0 +1,114 @@ +diff --git a/libxml++/parsers/saxparser.h b/libxml++/parsers/saxparser.h +index 1362ca3..0bd36d2 100644 +--- a/libxml++/parsers/saxparser.h ++++ b/libxml++/parsers/saxparser.h +@@ -221,7 +221,7 @@ private: + //TODO: Remove the virtual when we can break ABI? + virtual void parse(); + +- std::auto_ptr<_xmlSAXHandler> sax_handler_; ++ std::unique_ptr<_xmlSAXHandler> sax_handler_; + + // A separate xmlpp::Document that is just used for entity resolution, + // and never seen in the API: +diff --git a/libxml++/parsers/textreader.h b/libxml++/parsers/textreader.h +index 48901b2..17f0737 100644 +--- a/libxml++/parsers/textreader.h ++++ b/libxml++/parsers/textreader.h +@@ -257,7 +257,7 @@ class TextReader: NonCopyable + void * locator); + void check_for_exceptions() const; + +- std::auto_ptr propertyreader; ++ std::unique_ptr propertyreader; + _xmlTextReader* impl_; + int severity_; + Glib::ustring error_; +diff --git a/libxml++/relaxngschema.h b/libxml++/relaxngschema.h +index 8df7089..ffe2eaa 100644 +--- a/libxml++/relaxngschema.h ++++ b/libxml++/relaxngschema.h +@@ -23,7 +23,7 @@ + + #include + #include +-#include // std::auto_ptr ++#include // std::unique_ptr + + #ifndef DOXYGEN_SHOULD_SKIP_THIS + extern "C" { +@@ -105,7 +105,7 @@ protected: + + private: + struct Impl; +- std::auto_ptr pimpl_; ++ std::unique_ptr pimpl_; + }; + + } // namespace xmlpp +diff --git a/libxml++/validators/relaxngvalidator.h b/libxml++/validators/relaxngvalidator.h +index 5cd5ad7..cd29393 100644 +--- a/libxml++/validators/relaxngvalidator.h ++++ b/libxml++/validators/relaxngvalidator.h +@@ -22,7 +22,7 @@ + #define __LIBXMLPP_VALIDATOR_RELAXNGVALIDATOR_H + + #include +-#include // std::auto_ptr ++#include // std::unique_ptr + + namespace Glib + { +@@ -156,7 +156,7 @@ protected: + + private: + struct Impl; +- std::auto_ptr pimpl_; ++ std::unique_ptr pimpl_; + }; + + } // namespace xmlpp +diff --git a/libxml++/validators/xsdvalidator.h b/libxml++/validators/xsdvalidator.h +index 941d7f1..d64b971 100644 +--- a/libxml++/validators/xsdvalidator.h ++++ b/libxml++/validators/xsdvalidator.h +@@ -20,7 +20,7 @@ + #define __LIBXMLPP_VALIDATOR_XSDVALIDATOR_H + + #include +-#include // std::auto_ptr ++#include // std::unique_ptr + + namespace Glib + { +@@ -146,7 +146,7 @@ protected: + + private: + struct Impl; +- std::auto_ptr pimpl_; ++ std::unique_ptr pimpl_; + }; + + } // namespace xmlpp +diff --git a/libxml++/xsdschema.h b/libxml++/xsdschema.h +index 1333025..8220e4e 100644 +--- a/libxml++/xsdschema.h ++++ b/libxml++/xsdschema.h +@@ -21,7 +21,7 @@ + + #include + #include +-#include // std::auto_ptr ++#include // std::unique_ptr + + #ifndef DOXYGEN_SHOULD_SKIP_THIS + extern "C" { +@@ -96,7 +96,7 @@ protected: + + private: + struct Impl; +- std::auto_ptr pimpl_; ++ std::unique_ptr pimpl_; + }; + + } // namespace xmlpp diff --git a/ports/libxmlpp/portfile.cmake b/ports/libxmlpp/portfile.cmake index 8b6c758ac..9c39d6397 100644 --- a/ports/libxmlpp/portfile.cmake +++ b/ports/libxmlpp/portfile.cmake @@ -10,6 +10,11 @@ vcpkg_extract_source_archive(${ARCHIVE}) file(COPY ${CMAKE_CURRENT_LIST_DIR}/CMakeLists.txt DESTINATION ${SOURCE_PATH}) +vcpkg_apply_patches( + SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src/libxml++-${LIBXMLPP_VERSION} + PATCHES "${CMAKE_CURRENT_LIST_DIR}/fixAutoPtrExpired.patch" +) + vcpkg_configure_cmake( SOURCE_PATH ${SOURCE_PATH} PREFER_NINJA -- cgit v1.2.3 From babc84598b673cae0ddd51d24941c902427c2dc0 Mon Sep 17 00:00:00 2001 From: Alexander Karatarakis Date: Wed, 25 Apr 2018 16:30:31 -0700 Subject: [libxmlpp] Bump version in CONTROL file --- ports/libxmlpp/CONTROL | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ports/libxmlpp/CONTROL b/ports/libxmlpp/CONTROL index 46ec26ea1..890d1471d 100644 --- a/ports/libxmlpp/CONTROL +++ b/ports/libxmlpp/CONTROL @@ -1,4 +1,4 @@ Source: libxmlpp -Version: 2.40.1-1 +Version: 2.40.1-2 Description: a C++ wrapper for the libxml XML parser library. Build-Depends: libxml2, glibmm -- cgit v1.2.3 From 6d5bf1b2006c50194c768667f86b89152435d853 Mon Sep 17 00:00:00 2001 From: Robert Schumacher Date: Wed, 25 Apr 2018 16:43:44 -0700 Subject: [readme] Add additional supported host platforms --- README.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index 4983508a4..38d01601f 100644 --- a/README.md +++ b/README.md @@ -7,8 +7,8 @@ For short description of available commands, run `vcpkg help`. ## Quick Start Prerequisites: -- Windows 10, 8.1, or 7 -- Visual Studio 2017 or Visual Studio 2015 Update 3 +- Windows 10, 8.1, 7, Linux, or OSX +- Visual Studio 2017 or Visual Studio 2015 Update 3 (on Windows) - Git - *Optional: CMake 3.10.2* -- cgit v1.2.3 From 6a3c1db30bbdc0d2580a3c787d90811e6bb7823a Mon Sep 17 00:00:00 2001 From: Rudi Lee Date: Thu, 26 Apr 2018 07:38:45 +0700 Subject: Checking for sha512sum on OS which doesn't have shasum --- scripts/bootstrap.sh | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/scripts/bootstrap.sh b/scripts/bootstrap.sh index 66efb1d62..58eb9e9fb 100755 --- a/scripts/bootstrap.sh +++ b/scripts/bootstrap.sh @@ -29,8 +29,15 @@ vcpkgCheckRepoTool() vcpkgCheckEqualFileHash() { url=$1; filePath=$2; expectedHash=$3 + + SHASUM="shasum -a 512" # sha512sum is not available on osx - actualHash=$(shasum -a 512 "$filePath") # sha512sum not available on osx + # checking for sha512sum on os which doesn't have shasum + if which sha512sum >/dev/null 2>&1; then + SHASUM=sha512sum + fi + + actualHash=$("$SHASUM" "$filePath") actualHash="${actualHash%% *}" # shasum returns [hash filename], so get the first word if ! [ "$expectedHash" = "$actualHash" ]; then -- cgit v1.2.3 From 857447263f73d494b2ce3e3d1f2a06bfaaeac68f Mon Sep 17 00:00:00 2001 From: Joel Clay Date: Wed, 25 Apr 2018 20:58:32 -0400 Subject: Update Readme to reflect cross-platform support (#3304) * Remove Windows as specific prerequisite * Add crossplatform announcement to docs * [find_acquire.cmake] Fix ninja path for mac * Another pass at making more platfrom neutral * two additional fixes * [osx] Ignore .DS_Store file. Fixes #3306 * Remove noexcept from BinaryParagraph() * Add Bash shebang to bootstrap script * Update gitignore to exclude the `vcpkg` binary (artifact of the build script) from the git repo * [sh] Change to #!/bin/sh * [sh] Remove merge conflict lines * [sh] permissions * Since the auto_ptr is removed in c++17, so use unique_ptr to instead of it. * [libxmlpp] Bump version in CONTROL file * [readme] Add additional supported host platforms * [readme] Slight packing and reformatting --- README.md | 32 ++++++++++++++++++++++---------- 1 file changed, 22 insertions(+), 10 deletions(-) diff --git a/README.md b/README.md index 38d01601f..c35c597d9 100644 --- a/README.md +++ b/README.md @@ -1,36 +1,48 @@ # Vcpkg ![](https://devdiv.visualstudio.com/_apis/public/build/definitions/0bdbc590-a062-4c3f-b0f6-9383f67865ee/8476/badge) ## Overview -Vcpkg helps you get C and C++ libraries on Windows. This tool and ecosystem are currently in a preview state; your involvement is vital to its success. +Vcpkg helps you manage C and C++ libraries on Windows, Linux and MacOS. This tool and ecosystem are currently in a preview state; your involvement is vital to its success! For short description of available commands, run `vcpkg help`. ## Quick Start Prerequisites: -- Windows 10, 8.1, 7, Linux, or OSX +- Windows 10, 8.1, 7, Linux, or MacOS - Visual Studio 2017 or Visual Studio 2015 Update 3 (on Windows) - Git - *Optional: CMake 3.10.2* -Clone this repository, then run +To get started: ``` -C:\src\vcpkg> .\bootstrap-vcpkg.bat +> git clone https://github.com/Microsoft/vcpkg +> cd vcpkg + +PS> .\bootstrap-vcpkg.bat +Ubuntu:~/$ ./bootstrap-vcpkg.sh ``` + Then, to hook up user-wide integration, run (note: requires admin on first use) ``` -C:\src\vcpkg> .\vcpkg integrate install +PS> .\vcpkg integrate install +Ubuntu:~/$ ./vcpkg integrate install ``` + Install any packages with ``` -C:\src\vcpkg> .\vcpkg install sdl2 curl +PS> .\vcpkg install sdl2 curl +Ubuntu:~/$ ./vcpkg install sdl2 curl ``` -Finally, create a New Project (or open an existing one) in Visual Studio 2017 or 2015. All installed libraries are immediately ready to be `#include`'d and used in your project. -The best way to use installed libraries with cmake is via the toolchain file `scripts\buildsystems\vcpkg.cmake`. To use this file, you simply need to add it onto your CMake command line as `-DCMAKE_TOOLCHAIN_FILE=D:\src\vcpkg\scripts\buildsystems\vcpkg.cmake`. -For more information, see our [using a package](docs/examples/using-sqlite.md) example for the specifics. +The best way to use installed libraries with CMake is via the toolchain file `scripts\buildsystems\vcpkg.cmake`. To use this file, you simply need to add it onto your CMake command line as `-DCMAKE_TOOLCHAIN_FILE=[vcpkg root]\scripts\buildsystems\vcpkg.cmake`. + +In Visual Studio, you can create a New Project (or open an existing one). All installed libraries are immediately ready to be `#include`'d and used in your project without additional configuration. + +For more information, see our [using a package](docs/examples/using-sqlite.md) example for the specifics. + +Additional notes on macOS and Linux support can be found in the [official announcement](https://blogs.msdn.microsoft.com/vcblog/2018/04/24/announcing-a-single-c-library-manager-for-linux-macos-and-windows-vcpkg/). ## Tab-Completion / Auto-Completion -`Vcpkg` supports auto-completion of commands, package names, options etc. To enable tab-completion in Powershell, use +`vcpkg` supports auto-completion of commands, package names, options etc. To enable tab-completion in Powershell, use ``` .\vcpkg integrate powershell ``` -- cgit v1.2.3 From 9167511656715c81d01cc87af5db1835f026f5b6 Mon Sep 17 00:00:00 2001 From: Alexander Karatarakis Date: Wed, 25 Apr 2018 18:14:24 -0700 Subject: Fix #3170 issue with /permissive- --- toolsrc/include/tests.utils.h | 40 ++++++++++++++++++++++++++++++++++++---- toolsrc/src/tests.paragraph.cpp | 9 --------- toolsrc/src/tests.utils.cpp | 30 ------------------------------ 3 files changed, 36 insertions(+), 43 deletions(-) diff --git a/toolsrc/include/tests.utils.h b/toolsrc/include/tests.utils.h index 970506663..7f7ec9e88 100644 --- a/toolsrc/include/tests.utils.h +++ b/toolsrc/include/tests.utils.h @@ -12,10 +12,42 @@ namespace Microsoft::VisualStudio::CppUnitTestFramework { - std::wstring ToString(const vcpkg::Dependencies::InstallPlanType& t); - std::wstring ToString(const vcpkg::Dependencies::RequestType& t); - std::wstring ToString(const vcpkg::PackageSpecParseResult& t); - std::wstring ToString(const vcpkg::PackageSpec& t); + template<> + std::wstring ToString(const vcpkg::Dependencies::InstallPlanType& t) + { + switch (t) + { + case vcpkg::Dependencies::InstallPlanType::ALREADY_INSTALLED: return L"ALREADY_INSTALLED"; + case vcpkg::Dependencies::InstallPlanType::BUILD_AND_INSTALL: return L"BUILD_AND_INSTALL"; + case vcpkg::Dependencies::InstallPlanType::EXCLUDED: return L"EXCLUDED"; + case vcpkg::Dependencies::InstallPlanType::UNKNOWN: return L"UNKNOWN"; + default: return ToString(static_cast(t)); + } + } + + template<> + std::wstring ToString(const vcpkg::Dependencies::RequestType& t) + { + switch (t) + { + case vcpkg::Dependencies::RequestType::AUTO_SELECTED: return L"AUTO_SELECTED"; + case vcpkg::Dependencies::RequestType::USER_REQUESTED: return L"USER_REQUESTED"; + case vcpkg::Dependencies::RequestType::UNKNOWN: return L"UNKNOWN"; + default: return ToString(static_cast(t)); + } + } + + template<> + std::wstring ToString(const vcpkg::PackageSpecParseResult& t) + { + return ToString(static_cast(t)); + } + + template<> + std::wstring ToString(const vcpkg::PackageSpec& t) + { + return ToString(t.to_string()); + } } std::unique_ptr make_status_pgh(const char* name, diff --git a/toolsrc/src/tests.paragraph.cpp b/toolsrc/src/tests.paragraph.cpp index dca89bc59..9a56ad9ee 100644 --- a/toolsrc/src/tests.paragraph.cpp +++ b/toolsrc/src/tests.paragraph.cpp @@ -5,15 +5,6 @@ using namespace Microsoft::VisualStudio::CppUnitTestFramework; -namespace Microsoft::VisualStudio::CppUnitTestFramework -{ - template<> - inline std::wstring ToString(const vcpkg::PackageSpecParseResult& t) - { - return ToString(static_cast(t)); - } -} - namespace Strings = vcpkg::Strings; namespace UnitTest1 diff --git a/toolsrc/src/tests.utils.cpp b/toolsrc/src/tests.utils.cpp index a3d8ffc7d..ac391f559 100644 --- a/toolsrc/src/tests.utils.cpp +++ b/toolsrc/src/tests.utils.cpp @@ -5,36 +5,6 @@ using namespace Microsoft::VisualStudio::CppUnitTestFramework; using namespace vcpkg; -namespace Microsoft::VisualStudio::CppUnitTestFramework -{ - std::wstring ToString(const vcpkg::Dependencies::InstallPlanType& t) - { - switch (t) - { - case Dependencies::InstallPlanType::ALREADY_INSTALLED: return L"ALREADY_INSTALLED"; - case Dependencies::InstallPlanType::BUILD_AND_INSTALL: return L"BUILD_AND_INSTALL"; - case Dependencies::InstallPlanType::EXCLUDED: return L"EXCLUDED"; - case Dependencies::InstallPlanType::UNKNOWN: return L"UNKNOWN"; - default: return ToString(static_cast(t)); - } - } - - std::wstring ToString(const vcpkg::Dependencies::RequestType& t) - { - switch (t) - { - case Dependencies::RequestType::AUTO_SELECTED: return L"AUTO_SELECTED"; - case Dependencies::RequestType::USER_REQUESTED: return L"USER_REQUESTED"; - case Dependencies::RequestType::UNKNOWN: return L"UNKNOWN"; - default: return ToString(static_cast(t)); - } - } - - std::wstring ToString(const vcpkg::PackageSpecParseResult& t) { return ToString(static_cast(t)); } - - std::wstring ToString(const vcpkg::PackageSpec& t) { return ToString(t.to_string()); } -} - std::unique_ptr make_status_pgh(const char* name, const char* depends, const char* default_features, -- cgit v1.2.3 From 1d351e0846475f097b6fbea0c52eb60c590f2b08 Mon Sep 17 00:00:00 2001 From: tamaroth Date: Thu, 26 Apr 2018 03:27:26 +0200 Subject: [bigint] Add missing header file #3319 (#3320) * [bigint] Add missing header file. File BigIntegerUtils.hh, which is required by the library, was not being copied. * [bigint] Bump control file version --- ports/bigint/CMakeLists.txt | 3 ++- ports/bigint/CONTROL | 2 +- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/ports/bigint/CMakeLists.txt b/ports/bigint/CMakeLists.txt index cb62597ef..e4cccbe12 100644 --- a/ports/bigint/CMakeLists.txt +++ b/ports/bigint/CMakeLists.txt @@ -13,7 +13,7 @@ set( BigInteger.cc BigIntegerAlgorithms.cc BigUnsignedInABase.cc - BigIntegerUtils.cc + BigIntegerUtils.cc ) set( @@ -24,6 +24,7 @@ set( BigIntegerAlgorithms.hh BigUnsignedInABase.hh BigIntegerLibrary.hh + BigIntegerUtils.hh ) add_library(bigint ${bigint_srcs}) diff --git a/ports/bigint/CONTROL b/ports/bigint/CONTROL index 4079363f1..5247cbf81 100644 --- a/ports/bigint/CONTROL +++ b/ports/bigint/CONTROL @@ -1,3 +1,3 @@ Source: bigint -Version: 2010.04.30-1 +Version: 2010.04.30-2 Description: C++ Big Integer Library -- cgit v1.2.3 From c78a609dabb0df43d0443452261f7c3b592b9b41 Mon Sep 17 00:00:00 2001 From: Alexander Karatarakis Date: Thu, 26 Apr 2018 02:11:04 +0000 Subject: [sh] Tweak so only the sh forwarder needs to be +x --- bootstrap-vcpkg.sh | 2 +- scripts/bootstrap.sh | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) mode change 100755 => 100644 scripts/bootstrap.sh diff --git a/bootstrap-vcpkg.sh b/bootstrap-vcpkg.sh index 92e65dc6c..b77b74890 100755 --- a/bootstrap-vcpkg.sh +++ b/bootstrap-vcpkg.sh @@ -1,4 +1,4 @@ #!/bin/sh vcpkgRootDir=$(X= cd -- "$(dirname -- "$0")" && pwd -P) -$vcpkgRootDir/scripts/bootstrap.sh +. $vcpkgRootDir/scripts/bootstrap.sh diff --git a/scripts/bootstrap.sh b/scripts/bootstrap.sh old mode 100755 new mode 100644 index 66efb1d62..c69dc0135 --- a/scripts/bootstrap.sh +++ b/scripts/bootstrap.sh @@ -185,4 +185,4 @@ mkdir -p "$buildDir" (cd "$buildDir" && "$cmakeExe" --build .) rm -rf "$vcpkgRootDir/vcpkg" -cp "$buildDir/vcpkg" "$vcpkgRootDir/" \ No newline at end of file +cp "$buildDir/vcpkg" "$vcpkgRootDir/" -- cgit v1.2.3 From ef594607829ad6ed2bd462a0ddcbb0ee698b3f4f Mon Sep 17 00:00:00 2001 From: Alexander Karatarakis Date: Wed, 25 Apr 2018 22:23:45 -0700 Subject: [bootstrap.sh] Minor refactoring for clarity --- scripts/bootstrap.sh | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/scripts/bootstrap.sh b/scripts/bootstrap.sh index 2225f029d..95ee75af1 100644 --- a/scripts/bootstrap.sh +++ b/scripts/bootstrap.sh @@ -29,15 +29,15 @@ vcpkgCheckRepoTool() vcpkgCheckEqualFileHash() { url=$1; filePath=$2; expectedHash=$3 - - SHASUM="shasum -a 512" # sha512sum is not available on osx - # checking for sha512sum on os which doesn't have shasum - if which sha512sum >/dev/null 2>&1; then - SHASUM=sha512sum + if command -v "sha512sum" >/dev/null 2>&1 ; then + actualHash=$(sha512sum "$filePath") + else + # sha512sum is not available by default on osx + # shasum is not available by default on Fedora + actualHash=$(shasum -a 512 "$filePath") fi - actualHash=$("$SHASUM" "$filePath") actualHash="${actualHash%% *}" # shasum returns [hash filename], so get the first word if ! [ "$expectedHash" = "$actualHash" ]; then -- cgit v1.2.3 From 8a624f93b7a3915616396b2f958c17b04bec45a3 Mon Sep 17 00:00:00 2001 From: Nicolai Grodzitski Date: Fri, 27 Apr 2018 00:51:13 +0300 Subject: Improve cmake routine for nodejs/http-parser. (#3283) * Improve cmake routine for nodejs/http-parser. Now it is installed as a propper target and can be searched with `find_package(http-parser REQUIRED)` and then used as a dependency like this: `target_link_libraries(main PRIVATE nodejs::http_parser)`. Also using namespace for referencing http-parser lib, which is safer, although the old name must still work, as names of the binaries remained unchanged. * Remove duplicate variable definition and add newlines at the end of files. * [http-parser] Rename exported targets to "unofficial", since they are not blessed by upstream --- ports/http-parser/CMakeLists.txt | 30 ++++++++++++++++++++---------- ports/http-parser/CONTROL | 2 +- ports/http-parser/portfile.cmake | 28 ++++++++++++---------------- 3 files changed, 33 insertions(+), 27 deletions(-) diff --git a/ports/http-parser/CMakeLists.txt b/ports/http-parser/CMakeLists.txt index d959fff79..284c8e903 100644 --- a/ports/http-parser/CMakeLists.txt +++ b/ports/http-parser/CMakeLists.txt @@ -1,8 +1,8 @@ -cmake_minimum_required (VERSION 3.4) -project (http-parser) +cmake_minimum_required(VERSION 3.4) +project(http-parser C) -if (BUILD_SHARED_LIBS) - SET(CMAKE_WINDOWS_EXPORT_ALL_SYMBOLS ON) +if(BUILD_SHARED_LIBS) + set(CMAKE_WINDOWS_EXPORT_ALL_SYMBOLS ON) endif() if(CMAKE_BUILD_TYPE MATCHES "Release") @@ -11,11 +11,21 @@ endif() add_library(http_parser http_parser.c http_parser.h) -install(TARGETS http_parser - RUNTIME DESTINATION "${CMAKE_INSTALL_PREFIX}/bin" - ARCHIVE DESTINATION "${CMAKE_INSTALL_PREFIX}/lib" +target_include_directories(http_parser PUBLIC $) + +install( + TARGETS http_parser + EXPORT NODEJS_HTTP_PARSER_ALL_TARGETS + LIBRARY DESTINATION lib + ARCHIVE DESTINATION lib + RUNTIME DESTINATION bin +) + +install( + EXPORT NODEJS_HTTP_PARSER_ALL_TARGETS + NAMESPACE unofficial::http_parser:: + FILE unofficial-http-parser-config.cmake + DESTINATION share/unofficial-http-parser ) -if (NOT SKIP_INSTALL_HEADERS) - install(FILES http_parser.h DESTINATION "${CMAKE_INSTALL_PREFIX}/include") -endif() \ No newline at end of file +install(FILES http_parser.h DESTINATION include) diff --git a/ports/http-parser/CONTROL b/ports/http-parser/CONTROL index a9edf4071..26b9f8d34 100644 --- a/ports/http-parser/CONTROL +++ b/ports/http-parser/CONTROL @@ -1,3 +1,3 @@ Source: http-parser -Version: 2.7.1-2 +Version: 2.7.1-3 Description: HTTP Parser. diff --git a/ports/http-parser/portfile.cmake b/ports/http-parser/portfile.cmake index 728293eed..49f829a53 100644 --- a/ports/http-parser/portfile.cmake +++ b/ports/http-parser/portfile.cmake @@ -1,29 +1,25 @@ -# Common Ambient Variables: -# VCPKG_ROOT_DIR = -# 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/http-parser-2.7.1) -vcpkg_download_distfile(ARCHIVE_FILE - URLS "https://github.com/nodejs/http-parser/archive/v2.7.1.zip" - FILENAME "http-parser-2.7.1.zip" - SHA512 9fb8b855ba7edb47628c91ac062d7ffce9c4bb8d6b8237d861d7926af989fb3e354c113821bdab1b8ac910f5f1064ca1339947aa20d56f6806b919b0cd6b6eae +vcpkg_from_github( + OUT_SOURCE_PATH SOURCE_PATH + REPO nodejs/http-parser + REF v2.7.1 + SHA512 c0fe86455db1a563a5c668f118dfa9a27b9a637ee1c0e2f2f18a5b816352436ed90435ea978e3f3d85b037d3c630234e47d609dc3b7086b898286c4e54d9f031 + HEAD_REF master ) -vcpkg_extract_source_archive(${ARCHIVE_FILE}) + file(COPY ${CMAKE_CURRENT_LIST_DIR}/CMakeLists.txt DESTINATION ${SOURCE_PATH}) vcpkg_configure_cmake( SOURCE_PATH ${SOURCE_PATH} - OPTIONS_DEBUG - -DSKIP_INSTALL_HEADERS=ON + PREFER_NINJA ) vcpkg_install_cmake() vcpkg_copy_pdbs() +file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include) +vcpkg_fixup_cmake_targets(CONFIG_PATH "share/unofficial-http-parser" TARGET_PATH "share/unofficial-http-parser") + # Handle copyright file(COPY ${SOURCE_PATH}/LICENSE-MIT DESTINATION ${CURRENT_PACKAGES_DIR}/share/http-parser) -file(RENAME ${CURRENT_PACKAGES_DIR}/share/http-parser/LICENSE-MIT ${CURRENT_PACKAGES_DIR}/share/http-parser/copyright) \ No newline at end of file +file(RENAME ${CURRENT_PACKAGES_DIR}/share/http-parser/LICENSE-MIT ${CURRENT_PACKAGES_DIR}/share/http-parser/copyright) -- cgit v1.2.3 From 7c51f3a1a27ca2d302ed4c414439d35973bee6fb Mon Sep 17 00:00:00 2001 From: Jason Juang Date: Thu, 26 Apr 2018 14:52:57 -0700 Subject: [llvm] fix issue #3282 (#3286) --- ports/llvm/CONTROL | 2 +- ports/llvm/portfile.cmake | 1 + 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/ports/llvm/CONTROL b/ports/llvm/CONTROL index 27604d397..37368dbc7 100644 --- a/ports/llvm/CONTROL +++ b/ports/llvm/CONTROL @@ -1,4 +1,4 @@ Source: llvm -Version: 6.0.0 +Version: 6.0.0-1 Description: The LLVM Compiler Infrastructure Build-Depends: atlmfc diff --git a/ports/llvm/portfile.cmake b/ports/llvm/portfile.cmake index 795d72d31..650e2ae92 100644 --- a/ports/llvm/portfile.cmake +++ b/ports/llvm/portfile.cmake @@ -70,6 +70,7 @@ file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/bin ${CURRENT_PACKAGES_DIR}/msbuild-bin ${CURRENT_PACKAGES_DIR}/tools/msbuild-bin + ${CURRENT_PACKAGES_DIR}/include/llvm/BinaryFormat/WasmRelocs ) # Remove one empty include subdirectory if it is indeed empty -- cgit v1.2.3 From 5ab4a6f673ccce9796579a4132d397cddafa0916 Mon Sep 17 00:00:00 2001 From: Alexander Karatarakis Date: Fri, 20 Apr 2018 17:53:57 -0700 Subject: [python3] Fix folder handling --- ports/python3/CONTROL | 2 +- ports/python3/portfile.cmake | 11 ++++++----- 2 files changed, 7 insertions(+), 6 deletions(-) diff --git a/ports/python3/CONTROL b/ports/python3/CONTROL index 0a730e517..c8331f8cf 100644 --- a/ports/python3/CONTROL +++ b/ports/python3/CONTROL @@ -1,3 +1,3 @@ Source: python3 -Version: 3.6.4 +Version: 3.6.4-1 Description: The Python programming language as an embeddable library \ No newline at end of file diff --git a/ports/python3/portfile.cmake b/ports/python3/portfile.cmake index 6285f9a9b..16b3a3db3 100644 --- a/ports/python3/portfile.cmake +++ b/ports/python3/portfile.cmake @@ -9,12 +9,12 @@ set(PYTHON_VERSION_PATCH 4) set(PYTHON_VERSION ${PYTHON_VERSION_MAJOR}.${PYTHON_VERSION_MINOR}.${PYTHON_VERSION_PATCH}) include(vcpkg_common_functions) -set(SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src-${TARGET_TRIPLET}) + vcpkg_from_github( OUT_SOURCE_PATH TEMP_SOURCE_PATH REPO python/cpython REF v${PYTHON_VERSION} - SHA512 32cca5e344ee66f08712ab5533e5518f724f978ec98d985f7612d0bd8d7f5cac25625363c9eead192faf1806d4ea3393515f72ba962a2a0bed26261e56d8c637 + SHA512 32cca5e344ee66f08712ab5533e5518f724f978ec98d985f7612d0bd8d7f5cac25625363c9eead192faf1806d4ea3393515f72ba962a2a0bed26261e56d8c637 HEAD_REF master ) @@ -26,8 +26,9 @@ vcpkg_apply_patches( # We need per-triplet directories because we need to patch the project files differently based on the linkage # Because the patches patch the same file, they have to be applied in the correct order -file(COPY ${TEMP_SOURCE_PATH} DESTINATION ${SOURCE_PATH}) -set(SOURCE_PATH ${SOURCE_PATH}/cpython-${PYTHON_VERSION}) +set(SOURCE_PATH "${TEMP_SOURCE_PATH}-Lib-${VCPKG_LIBRARY_LINKAGE}-crt-${VCPKG_CRT_LINKAGE}") +file(REMOVE_RECURSE ${SOURCE_PATH}) +file(RENAME "${TEMP_SOURCE_PATH}" ${SOURCE_PATH}) if (VCPKG_LIBRARY_LINKAGE STREQUAL static) vcpkg_apply_patches( @@ -57,7 +58,7 @@ endif() vcpkg_build_msbuild( PROJECT_PATH ${SOURCE_PATH}/PCBuild/pythoncore.vcxproj PLATFORM ${BUILD_ARCH}) - + if (VCPKG_LIBRARY_LINKAGE STREQUAL static) vcpkg_apply_patches( SOURCE_PATH ${SOURCE_PATH} -- cgit v1.2.3 From 09a5b6e365d5feec39df66308903061a731ecf95 Mon Sep 17 00:00:00 2001 From: Alexander Karatarakis Date: Fri, 20 Apr 2018 18:33:44 -0700 Subject: [ismrmrd] Use ${SOURCE_PATH} --- ports/ismrmrd/CONTROL | 2 +- ports/ismrmrd/portfile.cmake | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/ports/ismrmrd/CONTROL b/ports/ismrmrd/CONTROL index 7aaa5a42b..3fe989da9 100644 --- a/ports/ismrmrd/CONTROL +++ b/ports/ismrmrd/CONTROL @@ -1,4 +1,4 @@ Source: ismrmrd -Version: 1.3.2-1 +Version: 1.3.2-2 Description: ISMRM Raw Data Format Build-Depends: pugixml diff --git a/ports/ismrmrd/portfile.cmake b/ports/ismrmrd/portfile.cmake index a3557f0d2..1fda781b2 100644 --- a/ports/ismrmrd/portfile.cmake +++ b/ports/ismrmrd/portfile.cmake @@ -41,7 +41,7 @@ file(COPY ${CURRENT_PACKAGES_DIR}/bin/ismrmrd_info.exe DESTINATION ${CURRENT_PAC file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/bin/ismrmrd_info.exe) file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/bin/ismrmrd_info.exe) -file(COPY ${CURRENT_BUILDTREES_DIR}/src/ismrmrd-1.3.2/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/ismrmrd) +file(COPY ${SOURCE_PATH}/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/ismrmrd) file(RENAME ${CURRENT_PACKAGES_DIR}/share/ismrmrd/LICENSE ${CURRENT_PACKAGES_DIR}/share/ismrmrd/copyright) vcpkg_copy_tool_dependencies(${CURRENT_PACKAGES_DIR}/tools/ismrmrd) -- cgit v1.2.3 From 8b941c56add1a3d0acc7d860c82b8093d73a482d Mon Sep 17 00:00:00 2001 From: Alexander Karatarakis Date: Fri, 20 Apr 2018 18:41:24 -0700 Subject: [leveldb] Fix SOURCE_PATH. Warn before changing linkage. Other fixes --- ports/leveldb/CONTROL | 2 +- ports/leveldb/portfile.cmake | 19 ++++++++----------- 2 files changed, 9 insertions(+), 12 deletions(-) diff --git a/ports/leveldb/CONTROL b/ports/leveldb/CONTROL index 5953bc35d..515d7dfea 100644 --- a/ports/leveldb/CONTROL +++ b/ports/leveldb/CONTROL @@ -1,3 +1,3 @@ Source: leveldb -Version: 2017-10-25-8b1cd3753b184341e837b30383832645135d3d73-1 +Version: 2017-10-25-8b1cd3753b184341e837b30383832645135d3d73-2 Description: LevelDB is a fast key-value storage library written at Google that provides an ordered mapping from string keys to string values. diff --git a/ports/leveldb/portfile.cmake b/ports/leveldb/portfile.cmake index 387cfd96e..9d6892977 100644 --- a/ports/leveldb/portfile.cmake +++ b/ports/leveldb/portfile.cmake @@ -1,23 +1,20 @@ include(vcpkg_common_functions) -set(VCPKG_LIBRARY_LINKAGE static) - -set(SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src/leveldb-8b1cd3753b184341e837b30383832645135d3d73) +if (VCPKG_LIBRARY_LINKAGE STREQUAL dynamic) + message(STATUS "Warning: Dynamic building not supported yet. Building static.") + set(VCPKG_LIBRARY_LINKAGE static) +endif() vcpkg_from_github( - OUT_SOURCE_PATH "leveldb" - BRANCH "bitcoin-fork" - REPO "bitcoin-core/leveldb" - REF "8b1cd3753b184341e837b30383832645135d3d73" + OUT_SOURCE_PATH SOURCE_PATH + BRANCH "bitcoin-fork" + REPO "bitcoin-core/leveldb" + REF "8b1cd3753b184341e837b30383832645135d3d73" SHA512 f5ad5fd21fb28ee052a4f3873abd58dab508c71621bcd482ab9e6ef4b57eca182c81502ddfe59736f5b2a54f2d05b397dd15982b3bd5d9039cd481eae3c7b958 ) -message(STATUS "Patching") - vcpkg_apply_patches(SOURCE_PATH ${SOURCE_PATH} PATCHES ${CMAKE_CURRENT_LIST_DIR}/msvc_code_fix.diff) - -message(STATUS "Building") file(COPY ${CMAKE_CURRENT_LIST_DIR}/CMakeLists.txt DESTINATION ${SOURCE_PATH}) -- cgit v1.2.3 From 0d9158961fede526cee979e4ae29e8b521c7726b Mon Sep 17 00:00:00 2001 From: Alexander Karatarakis Date: Fri, 20 Apr 2018 18:43:52 -0700 Subject: [libqrencode] Use SOURCE_PATH --- ports/libqrencode/CONTROL | 2 +- ports/libqrencode/portfile.cmake | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/ports/libqrencode/CONTROL b/ports/libqrencode/CONTROL index 0e96c99a9..056d6a92b 100644 --- a/ports/libqrencode/CONTROL +++ b/ports/libqrencode/CONTROL @@ -1,4 +1,4 @@ Source: libqrencode -Version: 4.0.0-1 +Version: 4.0.0-2 Build-Depends: libpng, libiconv Description: libqrencode - a fast and compact QR Code encoding library diff --git a/ports/libqrencode/portfile.cmake b/ports/libqrencode/portfile.cmake index ff0c2302b..72af0103e 100644 --- a/ports/libqrencode/portfile.cmake +++ b/ports/libqrencode/portfile.cmake @@ -39,7 +39,7 @@ if(EXISTS ${CURRENT_PACKAGES_DIR}/debug/lib/qrencoded.dll) endif() file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include) file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/share) -file(COPY ${CURRENT_BUILDTREES_DIR}/src/libqrencode-4.0.0/COPYING DESTINATION ${CURRENT_PACKAGES_DIR}/share/libqrencode) +file(COPY ${SOURCE_PATH}/COPYING DESTINATION ${CURRENT_PACKAGES_DIR}/share/libqrencode) file(RENAME ${CURRENT_PACKAGES_DIR}/share/libqrencode/COPYING ${CURRENT_PACKAGES_DIR}/share/libqrencode/copyright) vcpkg_copy_pdbs() -- cgit v1.2.3 From 5baa90a615b4a99e24fba7fa2764726d6559667f Mon Sep 17 00:00:00 2001 From: Alexander Karatarakis Date: Fri, 20 Apr 2018 18:46:47 -0700 Subject: [quirc] Use SOURCE_PATH --- ports/quirc/CONTROL | 2 +- ports/quirc/portfile.cmake | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/ports/quirc/CONTROL b/ports/quirc/CONTROL index 1ba02d889..d86ea00ae 100644 --- a/ports/quirc/CONTROL +++ b/ports/quirc/CONTROL @@ -1,3 +1,3 @@ Source: quirc -Version: 1.0-1 +Version: 1.0-2 Description: quirc is one of the C library available for scanning QR Codes diff --git a/ports/quirc/portfile.cmake b/ports/quirc/portfile.cmake index 976c7bc92..fd05c3db4 100644 --- a/ports/quirc/portfile.cmake +++ b/ports/quirc/portfile.cmake @@ -11,7 +11,7 @@ vcpkg_from_github( file(COPY ${CMAKE_CURRENT_LIST_DIR}/CMakeLists.txt DESTINATION ${SOURCE_PATH}) vcpkg_apply_patches( - SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src/quirc-1.0 + SOURCE_PATH ${SOURCE_PATH} PATCHES ${CMAKE_CURRENT_LIST_DIR}/patch-for-msvc.patch ) -- cgit v1.2.3 From 402c962f755297f2829717cd2519ef87f894923d Mon Sep 17 00:00:00 2001 From: Alexander Karatarakis Date: Thu, 26 Apr 2018 19:12:26 -0700 Subject: [clblas] Also delete clBLAS-tune.pdb --- ports/clblas/portfile.cmake | 3 ++- ports/gainput/CONTROL | 2 +- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/ports/clblas/portfile.cmake b/ports/clblas/portfile.cmake index 98ea1e515..9088fc2e9 100644 --- a/ports/clblas/portfile.cmake +++ b/ports/clblas/portfile.cmake @@ -9,7 +9,7 @@ vcpkg_from_github( ) # v2.12 has a very old FindOpenCL.cmake using OPENCL_ vs. OpenCL_ var names -# conflicting with the built-in, more modern FindOpenCL.cmake +# conflicting with the built-in, more modern FindOpenCL.cmake file( REMOVE ${SOURCE_PATH}/src/FindOpenCL.cmake ) @@ -45,6 +45,7 @@ file(INSTALL ) file(REMOVE + ${CURRENT_PACKAGES_DIR}/debug/bin/clBLAS-tune.pdb ${CURRENT_PACKAGES_DIR}/debug/bin/clBLAS-tune.exe ${CURRENT_PACKAGES_DIR}/bin/clBLAS-tune.exe ${CURRENT_PACKAGES_DIR}/debug/bin/concrt140d.dll diff --git a/ports/gainput/CONTROL b/ports/gainput/CONTROL index 45b7b6afb..29ac472c5 100644 --- a/ports/gainput/CONTROL +++ b/ports/gainput/CONTROL @@ -1,3 +1,3 @@ Source: gainput -Version: 1.0.0 +Version: 1.0.0-1 Description: Gainput is a multiplatform C++ input library, supporting mouse, keyboard and controllers -- cgit v1.2.3 From da1805f3c0542d6c584eddf627b2ebc34d2ce64d Mon Sep 17 00:00:00 2001 From: jiefangxuanyan <505745416@qq.com> Date: Fri, 27 Apr 2018 14:16:47 +0800 Subject: Fix #3250 (#3284) * [rapidjson] Fix CMake target (#3250) * [rapidjson] Bump control version. Add usage information. --- ports/rapidjson/CONTROL | 2 +- ports/rapidjson/portfile.cmake | 23 ++++++++++++++++++----- ports/rapidjson/usage | 4 ++++ 3 files changed, 23 insertions(+), 6 deletions(-) create mode 100644 ports/rapidjson/usage diff --git a/ports/rapidjson/CONTROL b/ports/rapidjson/CONTROL index 0dd6333cf..7646755a5 100644 --- a/ports/rapidjson/CONTROL +++ b/ports/rapidjson/CONTROL @@ -1,3 +1,3 @@ Source: rapidjson -Version: 1.1.0 +Version: 1.1.0-1 Description: A fast JSON parser/generator for C++ with both SAX/DOM style API diff --git a/ports/rapidjson/portfile.cmake b/ports/rapidjson/portfile.cmake index 54f1c8eea..4f87ed6f4 100644 --- a/ports/rapidjson/portfile.cmake +++ b/ports/rapidjson/portfile.cmake @@ -9,10 +9,23 @@ vcpkg_from_github( HEAD_REF master ) +# Use RapidJSON's own build process, skipping examples and tests +vcpkg_configure_cmake( + SOURCE_PATH ${SOURCE_PATH} + OPTIONS + -DRAPIDJSON_BUILD_DOC:BOOL=OFF + -DRAPIDJSON_BUILD_EXAMPLES:BOOL=OFF + -DRAPIDJSON_BUILD_TESTS:BOOL=OFF + -DCMAKE_INSTALL_DIR:STRING=cmake +) +vcpkg_install_cmake() + +# Move CMake config files to the right place +vcpkg_fixup_cmake_targets(CONFIG_PATH cmake) + +# Delete redundant directories +file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug ${CURRENT_PACKAGES_DIR}/share/doc) + # Put the licence file where vcpkg expects it -file(COPY ${SOURCE_PATH}/license.txt DESTINATION ${CURRENT_PACKAGES_DIR}/share/rapidjson) +file(COPY ${SOURCE_PATH}/license.txt ${CMAKE_CURRENT_LIST_DIR}/usage DESTINATION ${CURRENT_PACKAGES_DIR}/share/rapidjson) file(RENAME ${CURRENT_PACKAGES_DIR}/share/rapidjson/license.txt ${CURRENT_PACKAGES_DIR}/share/rapidjson/copyright) - -# Copy the rapidjson header files -file(INSTALL ${SOURCE_PATH}/include DESTINATION ${CURRENT_PACKAGES_DIR} FILES_MATCHING PATTERN "*.h") -vcpkg_copy_pdbs() diff --git a/ports/rapidjson/usage b/ports/rapidjson/usage new file mode 100644 index 000000000..81e541e17 --- /dev/null +++ b/ports/rapidjson/usage @@ -0,0 +1,4 @@ +The package rapidjson provides CMake integration: + + find_package(RapidJSON REQUIRED) + target_include_directories(main PRIVATE ${RAPIDJSON_INCLUDE_DIRS}) -- cgit v1.2.3 From 576f28edf30dc720aa67ff72180ab24aed6695ec Mon Sep 17 00:00:00 2001 From: jasjuang Date: Fri, 27 Apr 2018 08:32:43 -0700 Subject: [cgal] update to 4.12 --- ports/cgal/CONTROL | 2 +- ports/cgal/portfile.cmake | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/ports/cgal/CONTROL b/ports/cgal/CONTROL index 753e30a20..b81d27c96 100644 --- a/ports/cgal/CONTROL +++ b/ports/cgal/CONTROL @@ -1,4 +1,4 @@ Source: cgal -Version: 4.11.1 +Version: 4.12 Build-Depends: mpfr, mpir, zlib, qt5, boost-format, boost-container, boost-iterator, boost-variant, boost-any, boost-unordered, boost-random Description: The Computational Geometry Algorithms Library (CGAL) is a C++ library that aims to provide easy access to efficient and reliable algorithms in computational geometry. diff --git a/ports/cgal/portfile.cmake b/ports/cgal/portfile.cmake index 4dbe9fd53..3eb0a9de7 100644 --- a/ports/cgal/portfile.cmake +++ b/ports/cgal/portfile.cmake @@ -3,8 +3,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO CGAL/cgal - REF 27859944b4d96797030fc018892d5123b7cba0b2 - SHA512 020d4398fcae0607cd3fe1bd22a190fbe1d45cba0c7e3c95d6d3dfb6d23c43949a1608069972e511f5d47fc787c350c0a0a0085faa2f4b9fd26ce101376752c6 + REF f7c3c8212b56c0d6dae63787efc99093f4383415 + SHA512 fc40483b5f0e2071c3458cbd67ee7e503f68b7f6a1bbb525b6003d1a440e662cb85c257167ce6d55a73e0cc49b27a7d2b56dcf6b5eeddc78772567fdc48ba160 HEAD_REF master ) -- cgit v1.2.3 From 540a32c8413df21bc11aa714ff3086c9520fe6f5 Mon Sep 17 00:00:00 2001 From: Francois Budin Date: Fri, 27 Apr 2018 11:14:47 -0400 Subject: Require the version of g++ to be at least 6 On Ubuntu 16.04, old versions of g++ such as 4.9 are available. Other Linux distributions may also ship with g++ versions older than 5. With the previous test, the bootstrap script was not failing fast and instead was starting to compile vcpkg before it encountered the unsupported flag -std=c++1z. The error message was not very explicit and that was making it difficult to the developer to understand what the problem was. However, when using g++ 5, an clear error message was printed to help the user. This commit shows the helpful error message anytime g++ is older than version 6. --- scripts/bootstrap.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scripts/bootstrap.sh b/scripts/bootstrap.sh index 95ee75af1..037a9136d 100644 --- a/scripts/bootstrap.sh +++ b/scripts/bootstrap.sh @@ -166,7 +166,7 @@ selectCXX() gccversion="$("$CXX" -v 2>&1)" gccversion="$(extractStringBetweenDelimiters "$gccversion" "gcc version " ".")" - if [ "$gccversion" = "5" ]; then + if [ "$gccversion" -lt "6" ]; then echo "CXX ($CXX) is too old; please install a newer compiler such as g++-7." echo "sudo add-apt-repository ppa:ubuntu-toolchain-r/test -y" echo "sudo apt-get update -y" -- cgit v1.2.3 From 08afae2a7a5cd276fd251cbeef9a27f15261fc0c Mon Sep 17 00:00:00 2001 From: Alexander Karatarakis Date: Fri, 27 Apr 2018 16:17:18 -0700 Subject: Bump version of git to 2.17.0 (was 2.16.2) --- scripts/vcpkgTools.xml | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/scripts/vcpkgTools.xml b/scripts/vcpkgTools.xml index daaf29214..1a2abae81 100644 --- a/scripts/vcpkgTools.xml +++ b/scripts/vcpkgTools.xml @@ -22,11 +22,11 @@ cmake-3.10.2-Linux-x86_64.tar.gz - 2.16.2 + 2.17.0 cmd\git.exe - https://github.com/git-for-windows/git/releases/download/v2.16.2.windows.1/MinGit-2.16.2-32-bit.zip - 004e1dc1904f2e2d5c3534d0a56f58bf030b1146f5b263d6d191e60f72cd35455977c588604708125a1e93268ee8f7a5ab32ed6115adc028257b12d5926f350a - MinGit-2.16.2-32-bit.zip + https://github.com/git-for-windows/git/releases/download/v2.17.0.windows.1/MinGit-2.17.0-32-bit.zip + a34575ab1b4f553e62535e38492904b512df4d6a837cf4abf205dbcdd05edf1eef450cc5b15a4f63f901424d5f3cd1f78b6b22437d0d4f8cd9ce4e42e82617b9 + MinGit-2.17.0-32-bit.zip 2.4.1 -- cgit v1.2.3 From 468bfeb56e29e0130a1b56adb4c23fdba403221e Mon Sep 17 00:00:00 2001 From: Alexander Karatarakis Date: Wed, 21 Feb 2018 21:17:14 -0800 Subject: [Clean patching] Each portref-patchset combo gets its own hash-based directory --- ports/azure-storage-cpp/portfile.cmake | 6 +-- ports/folly/portfile.cmake | 4 -- scripts/cmake/vcpkg_from_github.cmake | 73 +++++++++++++++++++++++++--------- 3 files changed, 56 insertions(+), 27 deletions(-) diff --git a/ports/azure-storage-cpp/portfile.cmake b/ports/azure-storage-cpp/portfile.cmake index 2f8e921a5..56dbc2ca3 100644 --- a/ports/azure-storage-cpp/portfile.cmake +++ b/ports/azure-storage-cpp/portfile.cmake @@ -10,10 +10,6 @@ vcpkg_from_github( REF v3.2.1 SHA512 8d1e8de439e52f53eb28b77e8adf394468f4861c2c4c1f79ec1437c72e3fc0bc871e4e2662ee58090748915b0f12ce6736a7cc6ede619d332686b9fb6a026c9f HEAD_REF master -) - -vcpkg_apply_patches( - SOURCE_PATH ${SOURCE_PATH} PATCHES ${CMAKE_CURRENT_LIST_DIR}/cmake.patch ${CMAKE_CURRENT_LIST_DIR}/static-builds.patch @@ -35,7 +31,7 @@ vcpkg_install_cmake() file(INSTALL ${SOURCE_PATH}/LICENSE.txt DESTINATION ${CURRENT_PACKAGES_DIR}/share/azure-storage-cpp RENAME copyright) -file(REMOVE_RECURSE +file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include) vcpkg_copy_pdbs() diff --git a/ports/folly/portfile.cmake b/ports/folly/portfile.cmake index fabfd0085..2a35561d1 100644 --- a/ports/folly/portfile.cmake +++ b/ports/folly/portfile.cmake @@ -20,10 +20,6 @@ vcpkg_from_github( REF v2018.04.16.00 SHA512 1f14da6eece3a490bd134a40550c2a3f78356789090e19933b8f10bc356837ee774a21e6f0b88c45831a968587049092b9d0d77617f040ab8e177de224400408 HEAD_REF master -) - -vcpkg_apply_patches( - SOURCE_PATH ${SOURCE_PATH} PATCHES ${CMAKE_CURRENT_LIST_DIR}/find-gflags.patch ) diff --git a/scripts/cmake/vcpkg_from_github.cmake b/scripts/cmake/vcpkg_from_github.cmake index c6a23cff6..28ada0631 100644 --- a/scripts/cmake/vcpkg_from_github.cmake +++ b/scripts/cmake/vcpkg_from_github.cmake @@ -51,7 +51,7 @@ ## * [beast](https://github.com/Microsoft/vcpkg/blob/master/ports/beast/portfile.cmake) function(vcpkg_from_github) set(oneValueArgs OUT_SOURCE_PATH REPO REF SHA512 HEAD_REF) - set(multipleValuesArgs) + set(multipleValuesArgs PATCHES) cmake_parse_arguments(_vdud "" "${oneValueArgs}" "${multipleValuesArgs}" ${ARGN}) if(NOT DEFINED _vdud_OUT_SOURCE_PATH) @@ -73,21 +73,17 @@ function(vcpkg_from_github) string(REGEX REPLACE ".*/" "" REPO_NAME ${_vdud_REPO}) string(REGEX REPLACE "/.*" "" ORG_NAME ${_vdud_REPO}) - macro(set_SOURCE_PATH BASE BASEREF) - set(SOURCE_PATH "${BASE}/${REPO_NAME}-${BASEREF}") - if(EXISTS ${SOURCE_PATH}) - set(${_vdud_OUT_SOURCE_PATH} "${SOURCE_PATH}" PARENT_SCOPE) - else() - # Sometimes GitHub strips a leading 'v' off the REF. - string(REGEX REPLACE "^v" "" REF ${BASEREF}) - string(REPLACE "/" "-" REF ${REF}) - set(SOURCE_PATH "${BASE}/${REPO_NAME}-${REF}") - if(EXISTS ${SOURCE_PATH}) - set(${_vdud_OUT_SOURCE_PATH} "${SOURCE_PATH}" PARENT_SCOPE) - else() - message(FATAL_ERROR "Could not determine source path: '${BASE}/${REPO_NAME}-${BASEREF}' does not exist") - endif() + macro(set_TEMP_SOURCE_PATH BASE BASEREF) + set(TEMP_SOURCE_PATH "${BASE}/${REPO_NAME}-${BASEREF}") + if(NOT EXISTS ${TEMP_SOURCE_PATH}) + # Sometimes GitHub strips a leading 'v' off the REF. + string(REGEX REPLACE "^v" "" REF ${BASEREF}) + string(REPLACE "/" "-" REF ${REF}) + set(TEMP_SOURCE_PATH "${BASE}/${REPO_NAME}-${REF}") + if(NOT EXISTS ${TEMP_SOURCE_PATH}) + message(FATAL_ERROR "Could not determine source path: '${BASE}/${REPO_NAME}-${BASEREF}' does not exist") endif() + endif() endmacro() if(VCPKG_USE_HEAD_VERSION AND NOT DEFINED _vdud_HEAD_REF) @@ -108,8 +104,44 @@ function(vcpkg_from_github) SHA512 "${_vdud_SHA512}" FILENAME "${ORG_NAME}-${REPO_NAME}-${SANITIZED_REF}.tar.gz" ) - vcpkg_extract_source_archive_ex(ARCHIVE "${ARCHIVE}") - set_SOURCE_PATH(${CURRENT_BUILDTREES_DIR}/src ${SANITIZED_REF}) + + # Take the last 10 chars of the REF + set(REF_MAX_LENGTH 10) + string(LENGTH ${SANITIZED_REF} REF_LENGTH) + math(EXPR FROM_REF ${REF_LENGTH}-${REF_MAX_LENGTH}) + if(FROM_REF LESS 0) + set(FROM_REF 0) + endif() + string(SUBSTRING ${SANITIZED_REF} ${FROM_REF} ${REF_LENGTH} SHORTENED_SANITIZED_REF) + + # Hash the archive hash along with the patches. Take the first 10 chars of the hash + set(PATCHSET_HASH "${_vdud_SHA512}") + foreach(PATCH IN LISTS _vdud_PATCHES) + file(SHA512 ${PATCH} CURRENT_HASH) + string(APPEND PATCHSET_HASH ${CURRENT_HASH}) + endforeach() + + string(SHA512 PATCHSET_HASH ${PATCHSET_HASH}) + string(SUBSTRING ${PATCHSET_HASH} 0 10 PATCHSET_HASH) + set(SOURCE_PATH "${CURRENT_BUILDTREES_DIR}/src/${SHORTENED_SANITIZED_REF}-${PATCHSET_HASH}") + + if(NOT EXISTS ${SOURCE_PATH}) + set(TEMP_DIR "${CURRENT_BUILDTREES_DIR}/src/TEMP") + file(REMOVE_RECURSE ${TEMP_DIR}) + vcpkg_extract_source_archive_ex(ARCHIVE "${ARCHIVE}" WORKING_DIRECTORY ${TEMP_DIR}) + set_TEMP_SOURCE_PATH(${CURRENT_BUILDTREES_DIR}/src/TEMP ${SANITIZED_REF}) + + vcpkg_apply_patches( + SOURCE_PATH ${TEMP_SOURCE_PATH} + PATCHES ${_vdud_PATCHES} + ) + + file(RENAME ${TEMP_SOURCE_PATH} ${SOURCE_PATH}) + file(REMOVE_RECURSE ${TEMP_DIR}) + endif() + + set(${_vdud_OUT_SOURCE_PATH} "${SOURCE_PATH}" PARENT_SCOPE) + return() endif() @@ -167,5 +199,10 @@ function(vcpkg_from_github) set(VCPKG_HEAD_VERSION ${_version} PARENT_SCOPE) endif() - set_SOURCE_PATH(${CURRENT_BUILDTREES_DIR}/src/head ${SANITIZED_HEAD_REF}) + set_TEMP_SOURCE_PATH(${CURRENT_BUILDTREES_DIR}/src/head ${SANITIZED_HEAD_REF}) + vcpkg_apply_patches( + SOURCE_PATH ${TEMP_SOURCE_PATH} + PATCHES ${_vdud_PATCHES} + ) + set(${_vdud_OUT_SOURCE_PATH} "${TEMP_SOURCE_PATH}" PARENT_SCOPE) endfunction() -- cgit v1.2.3 From 039abe258b956fe51b5893b3fb2d20661f2a8eb4 Mon Sep 17 00:00:00 2001 From: Alexander Karatarakis Date: Wed, 18 Apr 2018 02:32:37 -0700 Subject: [ci] Don't block binarycaching = false --- toolsrc/src/vcpkg/commands.ci.cpp | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/toolsrc/src/vcpkg/commands.ci.cpp b/toolsrc/src/vcpkg/commands.ci.cpp index 04b42ea00..e2b93dc7e 100644 --- a/toolsrc/src/vcpkg/commands.ci.cpp +++ b/toolsrc/src/vcpkg/commands.ci.cpp @@ -154,8 +154,10 @@ namespace vcpkg::Commands::CI void perform_and_exit(const VcpkgCmdArguments& args, const VcpkgPaths& paths, const Triplet& default_triplet) { - Checks::check_exit( - VCPKG_LINE_INFO, GlobalState::g_binary_caching, "The ci command requires binary caching to be enabled."); + if (!GlobalState::g_binary_caching) + { + System::println(System::Color::warning, "Warning: Running ci without binary caching!"); + } const ParsedArguments options = args.parse_arguments(COMMAND_STRUCTURE); -- cgit v1.2.3 From 38d139ceb8bca5b8bb91eddf25180e0433f40115 Mon Sep 17 00:00:00 2001 From: Alexej Harm Date: Sat, 28 Apr 2018 16:30:51 +0200 Subject: [openssl] added support for platforms without libdl (#3368) --- ports/openssl/vcpkg-cmake-wrapper.cmake | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/ports/openssl/vcpkg-cmake-wrapper.cmake b/ports/openssl/vcpkg-cmake-wrapper.cmake index 1e0500055..82313bdab 100644 --- a/ports/openssl/vcpkg-cmake-wrapper.cmake +++ b/ports/openssl/vcpkg-cmake-wrapper.cmake @@ -1,7 +1,10 @@ _find_package(${ARGS}) if(OPENSSL_FOUND) - list(APPEND OPENSSL_LIBRARIES "dl") - if(TARGET OpenSSL::Crypto) - set_property(TARGET OpenSSL::Crypto APPEND PROPERTY INTERFACE_LINK_LIBRARIES "dl") + find_library(OPENSSL_DL_LIBRARY NAMES dl) + if(OPENSSL_DL_LIBRARY) + list(APPEND OPENSSL_LIBRARIES "dl") + if(TARGET OpenSSL::Crypto) + set_property(TARGET OpenSSL::Crypto APPEND PROPERTY INTERFACE_LINK_LIBRARIES "dl") + endif() endif() endif() -- cgit v1.2.3 From ed3f943259acd4913f99891a709c8d6713f18397 Mon Sep 17 00:00:00 2001 From: Paul T Date: Sat, 28 Apr 2018 10:34:57 -0400 Subject: Add Visual Studio 2013 Support for Qt5 (#3361) Add case for toolset v120 which corresponds to visual studio 2013. --- ports/qt5-base/portfile.cmake | 2 ++ 1 file changed, 2 insertions(+) diff --git a/ports/qt5-base/portfile.cmake b/ports/qt5-base/portfile.cmake index e5bdba8a5..569540213 100644 --- a/ports/qt5-base/portfile.cmake +++ b/ports/qt5-base/portfile.cmake @@ -69,6 +69,8 @@ if(NOT VCPKG_CMAKE_SYSTEM_NAME OR VCPKG_CMAKE_SYSTEM_NAME STREQUAL "WindowsStore set(PLATFORM "win32-msvc2015") elseif(VCPKG_PLATFORM_TOOLSET MATCHES "v141") set(PLATFORM "win32-msvc2017") + elseif(VCPKG_PLATFORM_TOOLSET MATCHES "v120") + set(PLATFORM "win32-msvc2013") endif() configure_qt( SOURCE_PATH ${SOURCE_PATH} -- cgit v1.2.3 From a9d989ec056246ea320a56ca7d02b161a6fee387 Mon Sep 17 00:00:00 2001 From: Robert Schumacher Date: Sat, 28 Apr 2018 11:26:57 -0700 Subject: [vcpkg-integrate-install] Add vcpkg.path.txt to localappdata for more generic consumption. --- toolsrc/include/vcpkg/userconfig.h | 2 + toolsrc/src/vcpkg/commands.integrate.cpp | 87 ++++++++++++++++++++++---------- toolsrc/src/vcpkg/userconfig.cpp | 11 ++-- 3 files changed, 70 insertions(+), 30 deletions(-) diff --git a/toolsrc/include/vcpkg/userconfig.h b/toolsrc/include/vcpkg/userconfig.h index 63b8e5481..d044f43ef 100644 --- a/toolsrc/include/vcpkg/userconfig.h +++ b/toolsrc/include/vcpkg/userconfig.h @@ -17,4 +17,6 @@ namespace vcpkg void try_write_data(Files::Filesystem& fs) const; }; + + fs::path get_user_dir(); } diff --git a/toolsrc/src/vcpkg/commands.integrate.cpp b/toolsrc/src/vcpkg/commands.integrate.cpp index 2e1750c80..8897ea138 100644 --- a/toolsrc/src/vcpkg/commands.integrate.cpp +++ b/toolsrc/src/vcpkg/commands.integrate.cpp @@ -5,6 +5,7 @@ #include #include #include +#include namespace vcpkg::Commands::Integrate { @@ -156,8 +157,10 @@ namespace vcpkg::Commands::Integrate } #endif + static fs::path get_path_txt_path() { return get_user_dir() / "vcpkg.path.txt"; } + #if defined(_WIN32) - static void integrate_install(const VcpkgPaths& paths) + static void integrate_install_msbuild14(Files::Filesystem& fs, const fs::path& tmp_dir) { static const std::array OLD_SYSTEM_TARGET_FILES = { System::get_program_files_32_bit().value_or_exit(VCPKG_LINE_INFO) / @@ -168,8 +171,6 @@ namespace vcpkg::Commands::Integrate System::get_program_files_32_bit().value_or_exit(VCPKG_LINE_INFO) / "MSBuild/Microsoft.Cpp/v4.0/V140/ImportBefore/Default/vcpkg.system.props"; - auto& fs = paths.get_filesystem(); - // TODO: This block of code should eventually be removed for (auto&& old_system_wide_targets_file : OLD_SYSTEM_TARGET_FILES) { @@ -188,12 +189,6 @@ namespace vcpkg::Commands::Integrate } } } - - std::error_code ec; - const fs::path tmp_dir = paths.buildsystems / "tmp"; - fs.create_directory(paths.buildsystems, ec); - fs.create_directory(tmp_dir, ec); - bool should_install_system = true; const Expected system_wide_file_contents = fs.read_contents(SYSTEM_WIDE_TARGETS_FILE); static const std::regex RE(R"###()###"); @@ -232,24 +227,52 @@ namespace vcpkg::Commands::Integrate "Error: failed to copy targets file to %s", SYSTEM_WIDE_TARGETS_FILE.string()); } + } +#endif - const fs::path appdata_src_path = tmp_dir / "vcpkg.user.targets"; - fs.write_contents(appdata_src_path, - create_appdata_targets_shortcut(paths.buildsystems_msbuild_targets.string())); - auto appdata_dst_path = get_appdata_targets_path(); + static void integrate_install(const VcpkgPaths& paths) + { + auto& fs = paths.get_filesystem(); + +#if defined(_WIN32) + { + std::error_code ec; + const fs::path tmp_dir = paths.buildsystems / "tmp"; + fs.create_directory(paths.buildsystems, ec); + fs.create_directory(tmp_dir, ec); + + integrate_install_msbuild14(fs, tmp_dir); + + const fs::path appdata_src_path = tmp_dir / "vcpkg.user.targets"; + fs.write_contents(appdata_src_path, + create_appdata_targets_shortcut(paths.buildsystems_msbuild_targets.string())); + auto appdata_dst_path = get_appdata_targets_path(); - const auto rc = fs.copy_file(appdata_src_path, appdata_dst_path, fs::copy_options::overwrite_existing, ec); + const auto rc = fs.copy_file(appdata_src_path, appdata_dst_path, fs::copy_options::overwrite_existing, ec); + + if (!rc || ec) + { + System::println(System::Color::error, + "Error: Failed to copy file: %s -> %s", + appdata_src_path.string(), + appdata_dst_path.string()); + Checks::exit_fail(VCPKG_LINE_INFO); + } + } +#endif - if (!rc || ec) + const auto pathtxt = get_path_txt_path(); + std::error_code ec; + fs.write_contents(pathtxt, paths.root.generic_u8string(), ec); + if (ec) { - System::println(System::Color::error, - "Error: Failed to copy file: %s -> %s", - appdata_src_path.string(), - appdata_dst_path.string()); + System::println(System::Color::error, "Error: Failed to write file: %s", pathtxt.string()); Checks::exit_fail(VCPKG_LINE_INFO); } + System::println(System::Color::success, "Applied user-wide integration for this vcpkg root."); const fs::path cmake_toolchain = paths.buildsystems / "vcpkg.cmake"; +#if defined(_WIN32) System::println( R"( All MSBuild C++ projects can now #include any installed libraries. @@ -258,17 +281,29 @@ Installing new libraries will make them instantly available. CMake projects should use: "-DCMAKE_TOOLCHAIN_FILE=%s")", cmake_toolchain.generic_string()); +#else + System::println( + R"( +CMake projects should use: "-DCMAKE_TOOLCHAIN_FILE=%s")", + cmake_toolchain.generic_string()); +#endif Checks::exit_success(VCPKG_LINE_INFO); } static void integrate_remove(Files::Filesystem& fs) { + std::error_code ec; + bool was_deleted = false; + +#if defined(_WIN32) const fs::path path = get_appdata_targets_path(); - std::error_code ec; - const bool was_deleted = fs.remove(path, ec); + was_deleted |= fs.remove(path, ec); + Checks::check_exit(VCPKG_LINE_INFO, !ec, "Error: Unable to remove user-wide integration: %s", ec.message()); +#endif + was_deleted |= fs.remove(get_path_txt_path(), ec); Checks::check_exit(VCPKG_LINE_INFO, !ec, "Error: Unable to remove user-wide integration: %s", ec.message()); if (was_deleted) @@ -282,7 +317,6 @@ CMake projects should use: "-DCMAKE_TOOLCHAIN_FILE=%s")", Checks::exit_success(VCPKG_LINE_INFO); } -#endif #if defined(WIN32) static void integrate_project(const VcpkgPaths& paths) @@ -343,7 +377,8 @@ With a project open, go to Tools->NuGet Package Manager->Package Manager Console " vcpkg integrate powershell Enable PowerShell Tab-Completion\n"; #else const char* const INTEGRATE_COMMAND_HELPSTRING = - "No user-wide integration methods are available on this platform\n"; + " vcpkg integrate install Make installed packages available user-wide.\n" + " vcpkg integrate remove Remove user-wide integration\n"; #endif namespace Subcommand @@ -373,7 +408,6 @@ With a project open, go to Tools->NuGet Package Manager->Package Manager Console { Util::unused(args.parse_arguments(COMMAND_STRUCTURE)); -#if defined(_WIN32) if (args.command_arguments[0] == Subcommand::INSTALL) { return integrate_install(paths); @@ -382,6 +416,7 @@ With a project open, go to Tools->NuGet Package Manager->Package Manager Console { return integrate_remove(paths.get_filesystem()); } +#if defined(_WIN32) if (args.command_arguments[0] == Subcommand::PROJECT) { return integrate_project(paths); @@ -392,10 +427,8 @@ With a project open, go to Tools->NuGet Package Manager->Package Manager Console paths.scripts / "addPoshVcpkgToPowershellProfile.ps1"); Checks::exit_success(VCPKG_LINE_INFO); } +#endif Checks::exit_with_message(VCPKG_LINE_INFO, "Unknown parameter %s for integrate", args.command_arguments[0]); -#else - Checks::exit_success(VCPKG_LINE_INFO); -#endif } } diff --git a/toolsrc/src/vcpkg/userconfig.cpp b/toolsrc/src/vcpkg/userconfig.cpp index 574a97b64..4945fdaaa 100644 --- a/toolsrc/src/vcpkg/userconfig.cpp +++ b/toolsrc/src/vcpkg/userconfig.cpp @@ -29,16 +29,21 @@ namespace namespace vcpkg { - static fs::path get_config_path() + fs::path get_user_dir() { #if defined(_WIN32) - return get_localappdata() / "vcpkg" / "config"; + return get_localappdata() / "vcpkg"; #else auto maybe_home = System::get_environment_variable("HOME"); - return fs::path(maybe_home.value_or("/var")) / ".vcpkg" / "config"; + return fs::path(maybe_home.value_or("/var")) / ".vcpkg"; #endif } + static fs::path get_config_path() + { + return get_user_dir() / "config"; + } + UserConfig UserConfig::try_read_data(const Files::Filesystem& fs) { UserConfig ret; -- cgit v1.2.3 From 5ee8177e50ddf1a07daf045994d507511ea59408 Mon Sep 17 00:00:00 2001 From: pravic Date: Sun, 29 Apr 2018 12:30:04 +0300 Subject: [sciter] Update to 4.1.7.5890 --- ports/sciter/CONTROL | 2 +- ports/sciter/portfile.cmake | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/ports/sciter/CONTROL b/ports/sciter/CONTROL index 5e573c899..cfe94f7ec 100644 --- a/ports/sciter/CONTROL +++ b/ports/sciter/CONTROL @@ -1,4 +1,4 @@ Source: sciter -Version: 4.1.6 +Version: 4.1.7 Description: Sciter is an embeddable HTML/CSS/scripting engine. Maintainer: andrew.fedoniouk@gmail.com, ehysta@gmail.com diff --git a/ports/sciter/portfile.cmake b/ports/sciter/portfile.cmake index 7a10297b2..52248998c 100644 --- a/ports/sciter/portfile.cmake +++ b/ports/sciter/portfile.cmake @@ -12,8 +12,8 @@ include(vcpkg_common_functions) # header-only library set(VCPKG_POLICY_DLLS_WITHOUT_LIBS enabled) -set(SCITER_REVISION 1f6f9afc6bf3c4f60ea510fc75f89634f282d15d) -set(SCITER_SHA 53be8007c22349e9801c413483d70cad437bc3399686f2c503da9b7aa96bf212e7563b13fff8e62942b0991fa775e87e542b5ff9c3dbc4aff1fd5291200b2c8e) +set(SCITER_REVISION a33d27afd10552c1d24b78d2e539097ebf1b1f60) +set(SCITER_SHA 3d819ba0cbfbd3b0c7355e40c3e6d40806f1a281528d6225835ec2340157afc4c7378cae533a0a2824f9bdfa37c8cdd35774b1e1362cfda3f1529b7bcea4d027) if(VCPKG_TARGET_ARCHITECTURE STREQUAL x64) set(SCITER_ARCH 64) -- cgit v1.2.3 From 5897e96f9328584177fe9c13ce6b2db64d089962 Mon Sep 17 00:00:00 2001 From: Alexey Gruzdev Date: Mon, 30 Apr 2018 19:30:29 +0100 Subject: [yato] Fixed artifacts copying for non-windows platforms --- ports/yato/portfile.cmake | 34 +++++++++++++++++----------------- 1 file changed, 17 insertions(+), 17 deletions(-) diff --git a/ports/yato/portfile.cmake b/ports/yato/portfile.cmake index f688675ba..44ee93782 100644 --- a/ports/yato/portfile.cmake +++ b/ports/yato/portfile.cmake @@ -12,30 +12,30 @@ vcpkg_from_bitbucket( file(COPY "${SOURCE_PATH}/include/yato" DESTINATION "${CURRENT_PACKAGES_DIR}/include" ) +file(COPY "${SOURCE_PATH}/modules/actors/yato" + DESTINATION "${CURRENT_PACKAGES_DIR}/include" +) +file(COPY "${SOURCE_PATH}/modules/config/yato" + DESTINATION "${CURRENT_PACKAGES_DIR}/include" +) vcpkg_configure_cmake( SOURCE_PATH ${SOURCE_PATH} - OPTIONS -DYATO_BUILD_TESTS:BOOL=OFF -DYATO_BUILD_ACTORS:BOOL=ON -DYATO_BUILD_CONFIG:BOOL=ON -DYATO_CONFIG_MANUAL:BOOL=ON + OPTIONS + -DYATO_BUILD_TESTS:BOOL=OFF + -DYATO_BUILD_ACTORS:BOOL=ON + -DYATO_BUILD_CONFIG:BOOL=ON + -DYATO_CONFIG_MANUAL:BOOL=ON + -DCMAKE_ARCHIVE_OUTPUT_DIRECTORY_DEBUG:PATH=${CURRENT_PACKAGES_DIR}/debug/lib/ + -DCMAKE_LIBRARY_OUTPUT_DIRECTORY_DEBUG:PATH=${CURRENT_PACKAGES_DIR}/debug/lib/ + -DCMAKE_RUNTIME_OUTPUT_DIRECTORY_DEBUG:PATH=${CURRENT_PACKAGES_DIR}/debug/lib/ + -DCMAKE_ARCHIVE_OUTPUT_DIRECTORY_RELEASE:PATH=${CURRENT_PACKAGES_DIR}/lib/ + -DCMAKE_LIBRARY_OUTPUT_DIRECTORY_RELEASE:PATH=${CURRENT_PACKAGES_DIR}/lib/ + -DCMAKE_RUNTIME_OUTPUT_DIRECTORY_RELEASE:PATH=${CURRENT_PACKAGES_DIR}/lib/ ) vcpkg_build_cmake() -set(BUILD_ROOT_DEBUG "${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-dbg") -set(BUILD_ROOT_RELEASE "${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-rel") - -file(COPY "${BUILD_ROOT_DEBUG}/modules/actors/Debug/YatoActors.lib" - "${BUILD_ROOT_DEBUG}/modules/config/Debug/YatoConfig.lib" - DESTINATION "${CURRENT_PACKAGES_DIR}/debug/lib/" -) - -file(COPY "${BUILD_ROOT_RELEASE}/modules/actors/Release/YatoActors.lib" - "${BUILD_ROOT_RELEASE}/modules/config/Release/YatoConfig.lib" - DESTINATION "${CURRENT_PACKAGES_DIR}/lib/" -) - # Handle copyright file(COPY ${SOURCE_PATH}/LICENSE.txt DESTINATION ${CURRENT_PACKAGES_DIR}/share/yato) file(RENAME ${CURRENT_PACKAGES_DIR}/share/yato/LICENSE.txt ${CURRENT_PACKAGES_DIR}/share/yato/copyright) - - - -- cgit v1.2.3 From 7a01d4b3929c2ea337b9cf6bdbbdc7ff1ceca2c1 Mon Sep 17 00:00:00 2001 From: Alexander Karatarakis Date: Mon, 30 Apr 2018 13:45:31 -0700 Subject: [yato] Bump CONTROL file version --- ports/yato/CONTROL | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ports/yato/CONTROL b/ports/yato/CONTROL index f3793fb80..f19519315 100644 --- a/ports/yato/CONTROL +++ b/ports/yato/CONTROL @@ -1,3 +1,3 @@ Source: yato -Version: 1.0 +Version: 1.0-1 Description: Modern C++14 containers and utilities, actors system, typesafe config -- cgit v1.2.3 From 286c400417e323693cba8c6f04c1be7898cc0e75 Mon Sep 17 00:00:00 2001 From: Robert Schumacher Date: Mon, 30 Apr 2018 14:54:50 -0700 Subject: [docs] Update docs --- docs/maintainers/vcpkg_build_cmake.md | 3 +++ docs/maintainers/vcpkg_find_acquire_program.md | 1 + 2 files changed, 4 insertions(+) diff --git a/docs/maintainers/vcpkg_build_cmake.md b/docs/maintainers/vcpkg_build_cmake.md index ddfa46f6b..1e17eb975 100644 --- a/docs/maintainers/vcpkg_build_cmake.md +++ b/docs/maintainers/vcpkg_build_cmake.md @@ -15,6 +15,9 @@ The underlying buildsystem will be instructed to not parallelize The target passed to the cmake build command (`cmake --build . --target `). If not specified, no target will be passed. +### ADD_BIN_TO_PATH +Adds the appropriate Release and Debug `bin\` directories to the path during the build such that executables can run against the in-tree DLLs. + ## Notes: This command should be preceeded by a call to [`vcpkg_configure_cmake()`](vcpkg_configure_cmake.md). You can use the alias [`vcpkg_install_cmake()`](vcpkg_configure_cmake.md) function if your CMake script supports the diff --git a/docs/maintainers/vcpkg_find_acquire_program.md b/docs/maintainers/vcpkg_find_acquire_program.md index 8107c8dd2..57a2bf75a 100644 --- a/docs/maintainers/vcpkg_find_acquire_program.md +++ b/docs/maintainers/vcpkg_find_acquire_program.md @@ -25,6 +25,7 @@ The current list of programs includes: - NASM - NINJA - YASM +- ARIA2 (Downloader) Note that msys2 has a dedicated helper function: [`vcpkg_acquire_msys`](vcpkg_acquire_msys.md). -- cgit v1.2.3 From 827c893b8e8224ca7c02a0d674fa9dba626aedb8 Mon Sep 17 00:00:00 2001 From: Robert Schumacher Date: Fri, 27 Apr 2018 03:15:17 -0700 Subject: [sfml] Support Linux --- ports/freeglut/CONTROL | 2 +- ports/freeglut/portfile.cmake | 12 +++- ports/libflac/CMakeLists.txt | 30 ++++++---- ports/libflac/CONTROL | 2 +- ports/openal-soft/CONTROL | 2 +- ports/openal-soft/portfile.cmake | 16 ++++-- ports/sfml/CMakeLists.txt | 115 +++++---------------------------------- ports/sfml/CONTROL | 4 +- ports/sfml/portfile.cmake | 29 ++++++---- 9 files changed, 77 insertions(+), 135 deletions(-) diff --git a/ports/freeglut/CONTROL b/ports/freeglut/CONTROL index d7c3801f7..8baaba1dc 100644 --- a/ports/freeglut/CONTROL +++ b/ports/freeglut/CONTROL @@ -1,3 +1,3 @@ Source: freeglut -Version: 3.0.0-3 +Version: 3.0.0-4 Description: Open source implementation of GLUT with source and binary backwards compatibility. diff --git a/ports/freeglut/portfile.cmake b/ports/freeglut/portfile.cmake index 3e6248126..913fc90ff 100644 --- a/ports/freeglut/portfile.cmake +++ b/ports/freeglut/portfile.cmake @@ -7,6 +7,10 @@ vcpkg_download_distfile(ARCHIVE ) vcpkg_extract_source_archive(${ARCHIVE}) +if(VCPKG_CMAKE_SYSTEM_NAME AND NOT VCPKG_CMAKE_SYSTEM_NAME STREQUAL "WindowsStore") + message("Freeglut currently requires the following libraries from the system package manager:\n opengl\n glu\n libx11\n\nThese can be installed on Ubuntu systems via apt-get install libxi-dev libgl1-mesa-dev libglu1-mesa-dev mesa-common-dev") +endif() + # disable debug suffix, because FindGLUT.cmake from CMake 3.8 doesn't support it file(READ ${SOURCE_PATH}/CMakeLists.txt FREEGLUT_CMAKELISTS) string(REPLACE "SET( CMAKE_DEBUG_POSTFIX \"d\" )" @@ -41,9 +45,11 @@ string(REPLACE "pragma comment (lib, \"freeglutd.lib\")" file(WRITE ${CURRENT_PACKAGES_DIR}/include/GL/freeglut_std.h "${FREEGLUT_STDH}") # Rename static lib (otherwise it's incompatible with FindGLUT.cmake) -if (VCPKG_LIBRARY_LINKAGE STREQUAL static) - file(RENAME ${CURRENT_PACKAGES_DIR}/lib/freeglut_static.lib ${CURRENT_PACKAGES_DIR}/lib/freeglut.lib) - file(RENAME ${CURRENT_PACKAGES_DIR}/debug/lib/freeglut_static.lib ${CURRENT_PACKAGES_DIR}/debug/lib/freeglut.lib) +if(VCPKG_LIBRARY_LINKAGE STREQUAL "static") + if(NOT VCPKG_CMAKE_SYSTEM_NAME OR VCPKG_CMAKE_SYSTEM_NAME STREQUAL "WindowsStore") + file(RENAME ${CURRENT_PACKAGES_DIR}/lib/freeglut_static.lib ${CURRENT_PACKAGES_DIR}/lib/freeglut.lib) + file(RENAME ${CURRENT_PACKAGES_DIR}/debug/lib/freeglut_static.lib ${CURRENT_PACKAGES_DIR}/debug/lib/freeglut.lib) + endif() endif() # Clean diff --git a/ports/libflac/CMakeLists.txt b/ports/libflac/CMakeLists.txt index 518419c4f..d6f01399a 100644 --- a/ports/libflac/CMakeLists.txt +++ b/ports/libflac/CMakeLists.txt @@ -7,15 +7,22 @@ if(NOT DEFINED LIBFLAC_ARCHITECTURE) message(FATAL_ERROR "Target architecture not specified") endif() -file(GLOB LIBFLAC_SOURCES - ${PROJECT_SOURCE_DIR}/src/libFLAC/*.c - ${PROJECT_SOURCE_DIR}/src/share/win_utf8_io/win_utf8_io.c) +file(GLOB LIBFLAC_SOURCES src/libFLAC/*.c) -file(GLOB LIBFLACXX_SOURCES - ${PROJECT_SOURCE_DIR}/src/libFLAC++/*.cpp) +if(WIN32) + list(APPEND LIBFLAC_SOURCES src/share/win_utf8_io/win_utf8_io.c) +else() + list(FILTER LIBFLAC_SOURCES EXCLUDE REGEX "windows[^/]*$") + + file(WRITE ${CMAKE_CURRENT_BINARY_DIR}/config.h "#include ") + include_directories(${CMAKE_CURRENT_BINARY_DIR}) + add_definitions(-DHAVE_CONFIG_H) +endif() + +file(GLOB LIBFLACXX_SOURCES src/libFLAC++/*.cpp) -include_directories(${PROJECT_SOURCE_DIR}/include) -include_directories(${PROJECT_SOURCE_DIR}/src/libFLAC/include) +include_directories(include) +include_directories(src/libFLAC/include) if(NOT LIBFLAC_ARCHITECTURE MATCHES arm) add_definitions(-DFLAC__SSE_OS) @@ -44,14 +51,15 @@ endif() add_definitions(-DPACKAGE_VERSION="1.3.2") add_definitions(-DFLAC__HAS_OGG) add_definitions(-DFLAC__ALIGN_MALLOC_DATA) # 32 byte boundary +add_definitions(-DHAVE_LROUND) add_definitions(-D_CRT_SECURE_NO_WARNINGS) add_definitions(-D_CRT_NONSTDC_NO_WARNINGS) add_library(libFLAC ${LIBFLAC_SOURCES}) add_library(libFLACXX ${LIBFLACXX_SOURCES}) -set_target_properties(libFLAC PROPERTIES OUTPUT_NAME flac) -set_target_properties(libFLACXX PROPERTIES OUTPUT_NAME flac++) +set_target_properties(libFLAC PROPERTIES OUTPUT_NAME FLAC) +set_target_properties(libFLACXX PROPERTIES OUTPUT_NAME FLAC++) find_library(OGG_LIBRARY ogg) find_path(OGG_INCLUDE_DIR ogg/ogg.h) @@ -73,10 +81,10 @@ install(TARGETS libFLAC libFLACXX LIBRARY DESTINATION lib) if(NOT DEFINED LIBFLAC_SKIP_HEADERS) - install(DIRECTORY ${PROJECT_SOURCE_DIR}/include/FLAC/ + install(DIRECTORY include/FLAC/ DESTINATION include/FLAC FILES_MATCHING PATTERN "*.h") - install(DIRECTORY ${PROJECT_SOURCE_DIR}/include/FLAC++/ + install(DIRECTORY include/FLAC++/ DESTINATION include/FLAC++ FILES_MATCHING PATTERN "*.h") endif() diff --git a/ports/libflac/CONTROL b/ports/libflac/CONTROL index ca2995d68..1a16c7a6a 100644 --- a/ports/libflac/CONTROL +++ b/ports/libflac/CONTROL @@ -1,4 +1,4 @@ Source: libflac -Version: 1.3.2-4 +Version: 1.3.2-5 Description: Library for manipulating FLAC files Build-Depends: libogg diff --git a/ports/openal-soft/CONTROL b/ports/openal-soft/CONTROL index f7af2c687..cd7078c08 100644 --- a/ports/openal-soft/CONTROL +++ b/ports/openal-soft/CONTROL @@ -1,3 +1,3 @@ Source: openal-soft -Version: 1.18.2-1 +Version: 1.18.2-2 Description: OpenAL Soft is an LGPL-licensed, cross-platform, software implementation of the OpenAL 3D audio API. diff --git a/ports/openal-soft/portfile.cmake b/ports/openal-soft/portfile.cmake index 527b4ba60..f35e81b4e 100644 --- a/ports/openal-soft/portfile.cmake +++ b/ports/openal-soft/portfile.cmake @@ -24,6 +24,14 @@ else() set(OPENAL_LIBTYPE "STATIC") endif() +if(VCPKG_CMAKE_SYSTEM_NAME) + set(ALSOFT_REQUIRE_WINDOWS OFF) + set(ALSOFT_REQUIRE_LINUX ON) +else() + set(ALSOFT_REQUIRE_WINDOWS ON) + set(ALSOFT_REQUIRE_LINUX OFF) +endif() + vcpkg_configure_cmake( SOURCE_PATH ${SOURCE_PATH} PREFER_NINJA @@ -36,7 +44,7 @@ vcpkg_configure_cmake( -DALSOFT_CONFIG=OFF -DALSOFT_HRTF_DEFS=OFF -DALSOFT_AMBDEC_PRESETS=OFF - -DALSOFT_BACKEND_ALSA=OFF + -DALSOFT_BACKEND_ALSA=${ALSOFT_REQUIRE_LINUX} -DALSOFT_BACKEND_OSS=OFF -DALSOFT_BACKEND_SOLARIS=OFF -DALSOFT_BACKEND_SNDIO=OFF @@ -47,9 +55,9 @@ vcpkg_configure_cmake( -DALSOFT_BACKEND_JACK=OFF -DALSOFT_BACKEND_OPENSL=OFF -DALSOFT_BACKEND_WAVE=ON - -DALSOFT_REQUIRE_WINMM=ON - -DALSOFT_REQUIRE_DSOUND=ON - -DALSOFT_REQUIRE_MMDEVAPI=ON + -DALSOFT_REQUIRE_WINMM=${ALSOFT_REQUIRE_WINDOWS} + -DALSOFT_REQUIRE_DSOUND=${ALSOFT_REQUIRE_WINDOWS} + -DALSOFT_REQUIRE_MMDEVAPI=${ALSOFT_REQUIRE_WINDOWS} ) vcpkg_install_cmake() diff --git a/ports/sfml/CMakeLists.txt b/ports/sfml/CMakeLists.txt index e8e16edec..f6ab26235 100644 --- a/ports/sfml/CMakeLists.txt +++ b/ports/sfml/CMakeLists.txt @@ -1,8 +1,8 @@ cmake_minimum_required(VERSION 2.6) project(SFML) -include_directories(${PROJECT_SOURCE_DIR}/include) -include_directories(${PROJECT_SOURCE_DIR}/src) +include_directories(include) +include_directories(src) if(NOT BUILD_SHARED_LIBS) add_definitions(-DSFML_STATIC) @@ -13,110 +13,23 @@ add_definitions(-D_CRT_SECURE_NO_WARNINGS -D_SCL_SECURE_NO_WARNINGS) # import SFML's 'sfml_add_library' macro and find_package utils set(VERSION_MAJOR 2) -set(SFML_OS_WINDOWS ON) +include(cmake/Config.cmake) set(SFML_GENERATE_PDB ON) -include(cmake/macros.cmake) +include(cmake/Macros.cmake) set(CMAKE_MODULE_PATH ${PROJECT_SOURCE_DIR}/cmake/Modules/) -# system module +add_subdirectory(src/SFML/System) +add_subdirectory(src/SFML/Window) +add_subdirectory(src/SFML/Network) +add_subdirectory(src/SFML/Audio) +add_subdirectory(src/SFML/Graphics) -file(GLOB SFML_SYSTEM_SOURCES - ${PROJECT_SOURCE_DIR}/src/SFML/System/*.cpp - ${PROJECT_SOURCE_DIR}/src/SFML/System/Win32/*cpp) - -sfml_add_library(sfml-system - SOURCES ${SFML_SYSTEM_SOURCES} - EXTERNAL_LIBS winmm) - -# window module - -file(GLOB SFML_WINDOW_SOURCES - ${PROJECT_SOURCE_DIR}/src/SFML/Window/*.cpp - ${PROJECT_SOURCE_DIR}/src/SFML/Window/Win32/*cpp) - -list(REMOVE_ITEM SFML_WINDOW_SOURCES - ${PROJECT_SOURCE_DIR}/src/SFML/Window/EGLCheck.cpp - ${PROJECT_SOURCE_DIR}/src/SFML/Window/EglContext.cpp) - -sfml_add_library(sfml-window - SOURCES ${SFML_WINDOW_SOURCES} - DEPENDS sfml-system - EXTERNAL_LIBS winmm gdi32 opengl32) - -# network module - -file(GLOB SFML_NETWORK_SOURCES - ${PROJECT_SOURCE_DIR}/src/SFML/Network/*.cpp - ${PROJECT_SOURCE_DIR}/src/SFML/Network/Win32/*cpp) - -sfml_add_library(sfml-network - SOURCES ${SFML_NETWORK_SOURCES} - DEPENDS sfml-system - EXTERNAL_LIBS ws2_32) - -# audio module - -file(GLOB SFML_AUDIO_SOURCES - ${PROJECT_SOURCE_DIR}/src/SFML/Audio/*.cpp) - -find_package(OpenAL REQUIRED) -find_package(Vorbis REQUIRED) -find_package(FLAC REQUIRED) - -sfml_add_library(sfml-audio - SOURCES ${SFML_AUDIO_SOURCES} - DEPENDS sfml-system - EXTERNAL_LIBS ${OPENAL_LIBRARY} ${VORBIS_LIBRARIES} ${FLAC_LIBRARY}) - -target_include_directories(sfml-audio SYSTEM PRIVATE ${OPENAL_INCLUDE_DIR}) -target_include_directories(sfml-audio SYSTEM PRIVATE ${VORBIS_INCLUDE_DIRS}) -target_include_directories(sfml-audio SYSTEM PRIVATE ${FLAC_INCLUDE_DIR}) - -# graphics module - -file(GLOB SFML_GRAPHICS_SOURCES - ${PROJECT_SOURCE_DIR}/src/SFML/Graphics/*.cpp) - -find_package(JPEG REQUIRED) -find_package(Freetype REQUIRED) # fails to find debug lib -if(CMAKE_BUILD_TYPE MATCHES Debug) - find_library(FREETYPE_DEBUG_LIBRARY freetyped) - set(FREETYPE_ACTUAL_LIBRARY ${FREETYPE_DEBUG_LIBRARY}) -else() - set(FREETYPE_ACTUAL_LIBRARY ${FREETYPE_LIBRARY}) +if(WIN32) + set(LIB_SUFFIX /manual-link) + add_subdirectory(src/SFML/Main) + unset(LIB_SUFFIX) endif() -find_path(STB_HEADERS stb_image.h) - -sfml_add_library(sfml-graphics - SOURCES ${SFML_GRAPHICS_SOURCES} - DEPENDS sfml-system sfml-window - EXTERNAL_LIBS ${FREETYPE_ACTUAL_LIBRARY} ${JPEG_LIBRARY} opengl32) - -target_include_directories(sfml-graphics SYSTEM PRIVATE ${STB_HEADERS}) -target_include_directories(sfml-graphics SYSTEM PRIVATE ${FREETYPE_INCLUDE_DIRS}) -target_include_directories(sfml-graphics SYSTEM PRIVATE ${JPEG_INCLUDE_DIR}) -set_target_properties(sfml-graphics PROPERTIES COMPILE_FLAGS -DSTBI_FAILURE_USERMSG) - -# main module - -add_library(sfml-main STATIC ${PROJECT_SOURCE_DIR}/src/SFML/Main/MainWin32.cpp) -set_target_properties(sfml-main PROPERTIES DEBUG_POSTFIX -d) -install(TARGETS sfml-main ARCHIVE DESTINATION lib) - -# headers if(NOT DEFINED SFML_SKIP_HEADERS) - install(DIRECTORY ${PROJECT_SOURCE_DIR}/include/ DESTINATION include) + install(DIRECTORY include/ DESTINATION include) endif() - -# log linked libraries - -message(STATUS "Link-time dependencies:") -message(STATUS " " ${VORBIS_LIBRARY}) -message(STATUS " " ${VORBISFILE_LIBRARY}) -message(STATUS " " ${VORBISENC_LIBRARY}) -message(STATUS " " ${OGG_LIBRARY}) -message(STATUS " " ${OPENAL_LIBRARY}) -message(STATUS " " ${FLAC_LIBRARY}) -message(STATUS " " ${FREETYPE_ACTUAL_LIBRARY}) -message(STATUS " " ${JPEG_LIBRARY}) diff --git a/ports/sfml/CONTROL b/ports/sfml/CONTROL index 778638482..e27af6646 100644 --- a/ports/sfml/CONTROL +++ b/ports/sfml/CONTROL @@ -1,4 +1,4 @@ Source: sfml -Version: 2.4.2-2 +Version: 2.4.2-3 Description: Simple and fast multimedia library -Build-Depends: freetype, libflac, libjpeg-turbo, libogg, libvorbis, openal-soft, stb +Build-Depends: freetype, libflac, libjpeg-turbo, libogg, libvorbis, openal-soft, stb, freeglut (!uwp&&!windows) diff --git a/ports/sfml/portfile.cmake b/ports/sfml/portfile.cmake index ea4cfd138..974383eb4 100644 --- a/ports/sfml/portfile.cmake +++ b/ports/sfml/portfile.cmake @@ -1,19 +1,24 @@ include(vcpkg_common_functions) vcpkg_from_github(OUT_SOURCE_PATH SOURCE_PATH - REPO "sfml/sfml" - REF "2.4.2" + REPO SFML/SFML + REF 2.4.2 HEAD_REF master - SHA512 8acfdf320939c953a9a3413398f82d02d68a56a337f1366c2677c14ce032baa8ba059113ac3c91bb6e6fc22eef119369a265be7ef6894526e6a97a01f37e1972) - + SHA512 8acfdf320939c953a9a3413398f82d02d68a56a337f1366c2677c14ce032baa8ba059113ac3c91bb6e6fc22eef119369a265be7ef6894526e6a97a01f37e1972 +) file(REMOVE_RECURSE ${SOURCE_PATH}/extlibs) file(COPY ${CMAKE_CURRENT_LIST_DIR}/CMakeLists.txt DESTINATION ${SOURCE_PATH}) +if(VCPKG_CMAKE_SYSTEM_NAME AND NOT VCPKG_CMAKE_SYSTEM_NAME STREQUAL "WindowsStore") + message("SFML currently requires the following libraries from the system package manager:\n libudev\n libx11\n libxrandr\n opengl\n\nThese can be installed on Ubuntu systems via apt-get install libx11-dev libxrandr-dev libxi-dev libudev-dev mesa-common-dev") +endif() + vcpkg_configure_cmake( SOURCE_PATH ${SOURCE_PATH} - OPTIONS_DEBUG - -DSFML_SKIP_HEADERS=ON) + OPTIONS_DEBUG + -DSFML_SKIP_HEADERS=ON +) vcpkg_install_cmake() vcpkg_copy_pdbs() @@ -24,13 +29,15 @@ if(VCPKG_LIBRARY_LINKAGE STREQUAL static) endif() # move sfml-main to manual link dir -file(COPY ${CURRENT_PACKAGES_DIR}/lib/sfml-main.lib DESTINATION ${CURRENT_PACKAGES_DIR}/lib/manual-link) -file(REMOVE ${CURRENT_PACKAGES_DIR}/lib/sfml-main.lib) -file(COPY ${CURRENT_PACKAGES_DIR}/debug/lib/sfml-main-d.lib DESTINATION ${CURRENT_PACKAGES_DIR}/debug/lib/manual-link) -file(REMOVE ${CURRENT_PACKAGES_DIR}/debug/lib/sfml-main-d.lib) +if(EXISTS ${CURRENT_PACKAGES_DIR}/lib/sfml-main.lib) + file(COPY ${CURRENT_PACKAGES_DIR}/lib/sfml-main.lib DESTINATION ${CURRENT_PACKAGES_DIR}/lib/manual-link) + file(REMOVE ${CURRENT_PACKAGES_DIR}/lib/sfml-main.lib) + file(COPY ${CURRENT_PACKAGES_DIR}/debug/lib/sfml-main-d.lib DESTINATION ${CURRENT_PACKAGES_DIR}/debug/lib/manual-link) + file(REMOVE ${CURRENT_PACKAGES_DIR}/debug/lib/sfml-main-d.lib) +endif() # At the time of writing, HEAD has license.md instead of license.txt -if (VCPKG_HEAD_VERSION) +if(VCPKG_HEAD_VERSION) file(INSTALL ${SOURCE_PATH}/license.md DESTINATION ${CURRENT_PACKAGES_DIR}/share/sfml RENAME copyright) else() file(INSTALL ${SOURCE_PATH}/license.txt DESTINATION ${CURRENT_PACKAGES_DIR}/share/sfml RENAME copyright) -- cgit v1.2.3 From c4caf29213f54b1786102c1b4dc085b6d7142998 Mon Sep 17 00:00:00 2001 From: Robert Schumacher Date: Mon, 30 Apr 2018 19:08:34 -0700 Subject: [vcpkg] Fix temporary download directory when vcpkg is located at the root of a drive --- scripts/VcpkgPowershellUtils.ps1 | 17 ++++++++++++++--- scripts/fetchTool.ps1 | 2 ++ 2 files changed, 16 insertions(+), 3 deletions(-) diff --git a/scripts/VcpkgPowershellUtils.ps1 b/scripts/VcpkgPowershellUtils.ps1 index fdd89e7b9..3ea18116b 100644 --- a/scripts/VcpkgPowershellUtils.ps1 +++ b/scripts/VcpkgPowershellUtils.ps1 @@ -89,7 +89,13 @@ function vcpkgGetSHA512([Parameter(Mandatory=$true)][string]$filePath) if (vcpkgHasCommand -commandName 'Microsoft.PowerShell.Utility\Get-FileHash') { Write-Verbose("Hashing with Microsoft.PowerShell.Utility\Get-FileHash") - $hash = (Microsoft.PowerShell.Utility\Get-FileHash -Path $filePath -Algorithm SHA512).Hash + $hashresult = Microsoft.PowerShell.Utility\Get-FileHash -Path $filePath -Algorithm SHA512 -ErrorVariable hashError + if ($hashError) + { + Start-Sleep 3 + $hashresult = Microsoft.PowerShell.Utility\Get-FileHash -Path $filePath -Algorithm SHA512 -ErrorVariable Stop + } + $hash = $hashresult.Hash } elseif(vcpkgHasCommand -commandName 'Pscx\Get-Hash') { @@ -177,7 +183,7 @@ function vcpkgDownloadFileWithAria2( [Parameter(Mandatory=$true)][string]$ari return } - $ec = vcpkgInvokeCommand "$aria2exe" "--dir `"$parentDir`" --out `"$filename.part`" $url" + $ec = vcpkgInvokeCommand "$aria2exe" "--dir=`"$parentDir`" --out=`"$filename.part`" $url" if ($ec -ne 0) { Write-Host "Could not download $url" @@ -202,7 +208,12 @@ function vcpkgExtractFileWith7z([Parameter(Mandatory=$true)][string]$sevenZipExe Write-Host "Could not extract $archivePath" throw } - Rename-Item -Path "$destinationPartial" -NewName $destinationDir + Rename-Item -Path "$destinationPartial" -NewName $destinationDir -ErrorVariable renameResult + if ($renameResult) + { + Start-Sleep 3 + Rename-Item -Path "$destinationPartial" -NewName $destinationDir -ErrorAction Stop + } } function vcpkgExtractZipFile( [Parameter(Mandatory=$true)][string]$archivePath, diff --git a/scripts/fetchTool.ps1 b/scripts/fetchTool.ps1 index dd3f0f9f4..eca405b62 100644 --- a/scripts/fetchTool.ps1 +++ b/scripts/fetchTool.ps1 @@ -4,6 +4,7 @@ param( ) Set-StrictMode -Version Latest + $scriptsDir = split-path -parent $script:MyInvocation.MyCommand.Definition . "$scriptsDir\VcpkgPowershellUtils.ps1" @@ -12,6 +13,7 @@ $vcpkgRootDir = vcpkgFindFileRecursivelyUp $scriptsDir .vcpkg-root $downloadsDir = "$vcpkgRootDir\downloads" vcpkgCreateDirectoryIfNotExists $downloadsDir +$downloadsDir = Resolve-Path $downloadsDir function fetchToolInternal([Parameter(Mandatory=$true)][string]$tool) { -- cgit v1.2.3 From 793019b9cd362aefac06cd7f94d6e6db77d31b69 Mon Sep 17 00:00:00 2001 From: Mateusz Loskot Date: Tue, 1 May 2018 10:14:18 +0200 Subject: [GEOS] Generate debug library names with `d` suffix (#3371) * [GEOS] Generate debug library names with `d` suffix Currently geos.lib name is used for both, debug and optimised GEOS libraries. This leads to situation when: ``` find_library(GEOS_LIBRARY_DEBUG NAMES geos) find_library(GEOS_LIBRARY_RELEASE NAMES geos) ``` finds the same library for both ``` GEOS_LIBRARY_DEBUG=D:/vcpkg/installed/x64-windows/debug/lib/geos.lib GEOS_LIBRARY_RELEASE=D:/vcpkg/installed/x64-windows/debug/lib/geos.lib ``` This is minimal patch that works around the problem. Next, complete fix should be submitted to GEOS upstream, preferably using exported targets. * [libspatialite] Add missing geos suffixes in static builds --- ports/gdal/portfile.cmake | 2 +- ports/geos/CONTROL | 2 +- ports/geos/portfile.cmake | 11 +++++++---- ports/libspatialite/portfile.cmake | 4 ++-- ports/spatialite-tools/portfile.cmake | 2 +- 5 files changed, 12 insertions(+), 9 deletions(-) diff --git a/ports/gdal/portfile.cmake b/ports/gdal/portfile.cmake index 10e2ceab8..ba77b624a 100644 --- a/ports/gdal/portfile.cmake +++ b/ports/gdal/portfile.cmake @@ -55,7 +55,7 @@ file(TO_NATIVE_PATH "${CURRENT_INSTALLED_DIR}/debug/lib/libpng16d.lib" PNG_LIBRA # Setup geos libraries + include path file(TO_NATIVE_PATH "${CURRENT_INSTALLED_DIR}/include" GEOS_INCLUDE_DIR) file(TO_NATIVE_PATH "${CURRENT_INSTALLED_DIR}/lib/geos_c.lib" GEOS_LIBRARY_REL) -file(TO_NATIVE_PATH "${CURRENT_INSTALLED_DIR}/debug/lib/geos_c.lib" GEOS_LIBRARY_DBG) +file(TO_NATIVE_PATH "${CURRENT_INSTALLED_DIR}/debug/lib/geos_cd.lib" GEOS_LIBRARY_DBG) # Setup expat libraries + include path file(TO_NATIVE_PATH "${CURRENT_INSTALLED_DIR}/include" EXPAT_INCLUDE_DIR) diff --git a/ports/geos/CONTROL b/ports/geos/CONTROL index 2b192d088..1a32a8103 100644 --- a/ports/geos/CONTROL +++ b/ports/geos/CONTROL @@ -1,3 +1,3 @@ Source: geos -Version: 3.6.2-2 +Version: 3.6.2-3 Description: Geometry Engine Open Source diff --git a/ports/geos/portfile.cmake b/ports/geos/portfile.cmake index 68b4ab9f7..e5a404254 100644 --- a/ports/geos/portfile.cmake +++ b/ports/geos/portfile.cmake @@ -31,7 +31,10 @@ file(DOWNLOAD http://svn.osgeo.org/geos/branches/3.6/cmake/modules/GenerateSourc vcpkg_configure_cmake( SOURCE_PATH ${SOURCE_PATH} - OPTIONS -DGEOS_ENABLE_TESTS=False + PREFER_NINJA # Disable this option if project cannot be built with Ninja + OPTIONS + -DCMAKE_DEBUG_POSTFIX=d + -DGEOS_ENABLE_TESTS=False ) vcpkg_install_cmake() file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include) @@ -39,11 +42,11 @@ file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include) file(COPY ${SOURCE_PATH}/COPYING DESTINATION ${CURRENT_PACKAGES_DIR}/share/geos) file(RENAME ${CURRENT_PACKAGES_DIR}/share/geos/COPYING ${CURRENT_PACKAGES_DIR}/share/geos/copyright) if(VCPKG_LIBRARY_LINKAGE STREQUAL dynamic) - file(REMOVE ${CURRENT_PACKAGES_DIR}/lib/libgeos.lib ${CURRENT_PACKAGES_DIR}/debug/lib/libgeos.lib) + file(REMOVE ${CURRENT_PACKAGES_DIR}/lib/libgeos.lib ${CURRENT_PACKAGES_DIR}/debug/lib/libgeosd.lib) else() file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/bin ${CURRENT_PACKAGES_DIR}/debug/bin) - file(REMOVE ${CURRENT_PACKAGES_DIR}/lib/geos.lib ${CURRENT_PACKAGES_DIR}/debug/lib/geos.lib) - file(REMOVE ${CURRENT_PACKAGES_DIR}/lib/geos_c.lib ${CURRENT_PACKAGES_DIR}/debug/lib/geos_c.lib) + file(REMOVE ${CURRENT_PACKAGES_DIR}/lib/geos.lib ${CURRENT_PACKAGES_DIR}/debug/lib/geosd.lib) + file(REMOVE ${CURRENT_PACKAGES_DIR}/lib/geos_c.lib ${CURRENT_PACKAGES_DIR}/debug/lib/geos_cd.lib) endif() diff --git a/ports/libspatialite/portfile.cmake b/ports/libspatialite/portfile.cmake index 1c5cfed19..59a1499f4 100644 --- a/ports/libspatialite/portfile.cmake +++ b/ports/libspatialite/portfile.cmake @@ -24,14 +24,14 @@ if(VCPKG_CRT_LINKAGE STREQUAL dynamic) set(CL_FLAGS_DBG "/MDd /Zi") set(CL_FLAGS_REL "/MD /Ox") set(GEOS_LIBS_REL "${CURRENT_INSTALLED_DIR}/lib/geos_c.lib") - set(GEOS_LIBS_DBG "${CURRENT_INSTALLED_DIR}/debug/lib/geos_c.lib") + set(GEOS_LIBS_DBG "${CURRENT_INSTALLED_DIR}/debug/lib/geos_cd.lib") set(LIBXML2_LIBS_REL "${CURRENT_INSTALLED_DIR}/lib/libxml2.lib") set(LIBXML2_LIBS_DBG "${CURRENT_INSTALLED_DIR}/debug/lib/libxml2.lib") else() set(CL_FLAGS_DBG "/MTd /Zi") set(CL_FLAGS_REL "/MT /Ox") set(GEOS_LIBS_REL "${CURRENT_INSTALLED_DIR}/lib/libgeos_c.lib ${CURRENT_INSTALLED_DIR}/lib/libgeos.lib") - set(GEOS_LIBS_DBG "${CURRENT_INSTALLED_DIR}/debug/lib/libgeos_c.lib ${CURRENT_INSTALLED_DIR}/debug/lib/libgeos.lib") + set(GEOS_LIBS_DBG "${CURRENT_INSTALLED_DIR}/debug/lib/libgeos_cd.lib ${CURRENT_INSTALLED_DIR}/debug/lib/libgeosd.lib") set(LIBXML2_LIBS_REL "${CURRENT_INSTALLED_DIR}/lib/libxml2.lib ${CURRENT_INSTALLED_DIR}/lib/lzma.lib ws2_32.lib") set(LIBXML2_LIBS_DBG "${CURRENT_INSTALLED_DIR}/debug/lib/libxml2.lib ${CURRENT_INSTALLED_DIR}/debug/lib/lzma.lib ws2_32.lib") endif() diff --git a/ports/spatialite-tools/portfile.cmake b/ports/spatialite-tools/portfile.cmake index 6bfd19966..25de070ee 100644 --- a/ports/spatialite-tools/portfile.cmake +++ b/ports/spatialite-tools/portfile.cmake @@ -23,7 +23,7 @@ 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(GEOS_LIBS_DBG "${LDIR}/debug/lib/geos_cd.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") -- cgit v1.2.3 From 39d38f5aea18ef78e71a380a577970af97cbb38f Mon Sep 17 00:00:00 2001 From: Robert Schumacher Date: Mon, 30 Apr 2018 15:53:00 -0700 Subject: [poco] Suffix binaries with mt when building against static CRT --- ports/poco/CONTROL | 2 +- ports/poco/portfile.cmake | 2 ++ 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/ports/poco/CONTROL b/ports/poco/CONTROL index e979e2247..c3d177430 100644 --- a/ports/poco/CONTROL +++ b/ports/poco/CONTROL @@ -1,5 +1,5 @@ Source: poco -Version: 1.8.1-1 +Version: 1.8.1-2 Build-Depends: zlib, pcre, sqlite3, expat Description: Modern, powerful open source C++ class libraries for building network and internet-based applications that run on desktop, server, mobile and embedded systems. diff --git a/ports/poco/portfile.cmake b/ports/poco/portfile.cmake index 399f1a064..1ea06d4ff 100644 --- a/ports/poco/portfile.cmake +++ b/ports/poco/portfile.cmake @@ -18,6 +18,7 @@ vcpkg_apply_patches( ) string(COMPARE EQUAL "${VCPKG_LIBRARY_LINKAGE}" "static" POCO_STATIC) +string(COMPARE EQUAL "${VCPKG_CRT_LINKAGE}" "static" POCO_MT) if("mysql" IN_LIST FEATURES) # enabling MySQL support @@ -31,6 +32,7 @@ vcpkg_configure_cmake( PREFER_NINJA OPTIONS -DPOCO_STATIC=${POCO_STATIC} + -DPOCO_MT=${POCO_MT} -DENABLE_SEVENZIP=ON -DENABLE_TESTS=OFF -DPOCO_UNBUNDLED=ON # OFF means: using internal copy of sqlite, libz, pcre, expat, ... -- cgit v1.2.3 From 4d28651f9ea0c6681d73b133386a42e1924d4b33 Mon Sep 17 00:00:00 2001 From: Robert Schumacher Date: Sat, 28 Apr 2018 14:39:25 -0700 Subject: [range-v3] Split ports to enable newer range-v3 versions on linux --- ports/range-v3-vs2015/CONTROL | 3 ++ ports/range-v3-vs2015/portfile.cmake | 14 +++++++++ ports/range-v3/CONTROL | 3 +- ports/range-v3/portfile.cmake | 56 ++++++++++++++++++++---------------- 4 files changed, 51 insertions(+), 25 deletions(-) create mode 100644 ports/range-v3-vs2015/CONTROL create mode 100644 ports/range-v3-vs2015/portfile.cmake diff --git a/ports/range-v3-vs2015/CONTROL b/ports/range-v3-vs2015/CONTROL new file mode 100644 index 000000000..62c9f63ce --- /dev/null +++ b/ports/range-v3-vs2015/CONTROL @@ -0,0 +1,3 @@ +Source: range-v3-vs2015 +Version: 20151130-vcpkg5 +Description: Range library for C++11/14/17. diff --git a/ports/range-v3-vs2015/portfile.cmake b/ports/range-v3-vs2015/portfile.cmake new file mode 100644 index 000000000..bc7153a53 --- /dev/null +++ b/ports/range-v3-vs2015/portfile.cmake @@ -0,0 +1,14 @@ +include(vcpkg_common_functions) + +vcpkg_from_github( + OUT_SOURCE_PATH SOURCE_PATH + REPO Microsoft/Range-V3-VS2015 + REF 423bcae5cf18948591361329784d3b12ef41711b + SHA512 c6756bc6b5131c4c0ffb96550fb40decf734fc8c30e3d51c5c2bf03aae4d7426de36e896a1abf0a200a49a3906d4b60c1cf52f43504554b64d89c91de3e92746 + HEAD_REF master +) + +file(COPY ${SOURCE_PATH}/LICENSE.txt DESTINATION ${CURRENT_PACKAGES_DIR}/share/range-v3-vs2015) +file(RENAME ${CURRENT_PACKAGES_DIR}/share/range-v3-vs2015/LICENSE.txt ${CURRENT_PACKAGES_DIR}/share/range-v3-vs2015/copyright) +file(INSTALL ${SOURCE_PATH}/include DESTINATION ${CURRENT_PACKAGES_DIR} FILES_MATCHING PATTERN "*.hpp") +vcpkg_copy_pdbs() diff --git a/ports/range-v3/CONTROL b/ports/range-v3/CONTROL index 6325b3a55..ee21c16c9 100644 --- a/ports/range-v3/CONTROL +++ b/ports/range-v3/CONTROL @@ -1,3 +1,4 @@ Source: range-v3 -Version: 20151130-vcpkg5 +Version: 0.3.5 +Build-Depends: range-v3-vs2015 (windows), range-v3-vs2015 (uwp) Description: Range library for C++11/14/17. diff --git a/ports/range-v3/portfile.cmake b/ports/range-v3/portfile.cmake index b4c0c1403..cbeb38bf0 100644 --- a/ports/range-v3/portfile.cmake +++ b/ports/range-v3/portfile.cmake @@ -1,28 +1,36 @@ -#header-only library include(vcpkg_common_functions) -# set(SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src/range-v3-6eb5c831ffe12cd5cb96390dbe917ca1b248772d) -# vcpkg_download_distfile(ARCHIVE -# URLS "https://github.com/ericniebler/range-v3/archive/6eb5c831ffe12cd5cb96390dbe917ca1b248772d.zip" -# FILENAME "range-v3-6eb5c831ffe12cd5cb96390dbe917ca1b248772d.zip" -# SHA512 2605af46c2c049f66dc982b1c4e506a8f115d47cc6c61a80f08921c667e52ad3097c485280ee43711c84b84a1490929e085b89cf9ad4c83b93222315210e92aa -# ) -# vcpkg_download_distfile(DIFF -# URLS "https://github.com/Microsoft/Range-V3-VS2015/compare/fork_base...00ed689bac7a9dcd8601dbde382758675516799d.diff" -# FILENAME "range-v3-fork_base_to_00ed689bac7a9dcd8601dbde382758675516799d.diff" -# SHA512 6158cd9ee1f5957294a26dc780c881839e0bae8610688a618cd11d47df34d5e543fa09ac9a3b33d4a65af8eceae0a6a3055621206c291ef75f982e7915daf91a -# ) -# vcpkg_extract_source_archive(${ARCHIVE}) +if(VCPKG_CMAKE_SYSTEM_NAME STREQUAL "WindowsStore" OR NOT VCPKG_CMAKE_SYSTEM_NAME) + message("The current range-v3 releases are not compatible with the current MSVC releases.") + message("The latest available range-v3 fork compatible with MSVC will be used instead.") + set(VCPKG_POLICY_EMPTY_PACKAGE enabled) +else() + vcpkg_from_github( + OUT_SOURCE_PATH SOURCE_PATH + REPO ericniebler/range-v3 + REF 0.3.5 + SHA512 0b8b97c32760f19e7a3f35b0f28b0c15c7735fbd1aa54f685c58faf50bf2cf112aed4ac7cfa9154b9caf7047400a6c7fd5c33d978f2e3cec6bc392a758aeabad + HEAD_REF master + ) -vcpkg_from_github( - OUT_SOURCE_PATH SOURCE_PATH - REPO Microsoft/Range-V3-VS2015 - REF 423bcae5cf18948591361329784d3b12ef41711b - SHA512 c6756bc6b5131c4c0ffb96550fb40decf734fc8c30e3d51c5c2bf03aae4d7426de36e896a1abf0a200a49a3906d4b60c1cf52f43504554b64d89c91de3e92746 - HEAD_REF master -) + vcpkg_configure_cmake( + SOURCE_PATH ${SOURCE_PATH} + PREFER_NINJA + OPTIONS + -DRANGE_V3_NO_TESTING=ON + -DRANGE_V3_NO_EXAMPLE=ON + -DRANGE_V3_NO_PERF=ON + -DRANGE_V3_NO_HEADER_CHECK=ON + ) -file(COPY ${SOURCE_PATH}/LICENSE.txt DESTINATION ${CURRENT_PACKAGES_DIR}/share/range-v3) -file(RENAME ${CURRENT_PACKAGES_DIR}/share/range-v3/LICENSE.txt ${CURRENT_PACKAGES_DIR}/share/range-v3/copyright) -file(INSTALL ${SOURCE_PATH}/include DESTINATION ${CURRENT_PACKAGES_DIR} FILES_MATCHING PATTERN "*.hpp") -vcpkg_copy_pdbs() + vcpkg_install_cmake() + + vcpkg_fixup_cmake_targets(CONFIG_PATH lib/cmake/range-v3) + + file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug ${CURRENT_PACKAGES_DIR}/lib) + + vcpkg_copy_pdbs() + + file(COPY ${SOURCE_PATH}/LICENSE.txt DESTINATION ${CURRENT_PACKAGES_DIR}/share/range-v3) + file(RENAME ${CURRENT_PACKAGES_DIR}/share/range-v3/LICENSE.txt ${CURRENT_PACKAGES_DIR}/share/range-v3/copyright) +endif() -- cgit v1.2.3 From 316a3cb2452ab7faf8cf1d0b03d739617b5d09e7 Mon Sep 17 00:00:00 2001 From: Jozef Izso Date: Tue, 1 May 2018 10:48:16 +0200 Subject: Clarify toolset numbers and Visual Studio versions (#3355) --- docs/users/triplets.md | 3 +++ 1 file changed, 3 insertions(+) diff --git a/docs/users/triplets.md b/docs/users/triplets.md index eb83aeb10..911ab5469 100644 --- a/docs/users/triplets.md +++ b/docs/users/triplets.md @@ -35,6 +35,9 @@ Specifies the C/C++ compiler toolchain to use. This can be set to `v141`, `v140`, or left blank. If left blank, we select the latest compiler toolset available on your machine. +Visual Studio 2015 platform toolset is `v140` +Visual Studio 2017 platform toolset is `v141` + ## Per-port customization The CMake Macro `PORT` will be set when interpreting the triplet file and can be used to change settings (such as `VCPKG_LIBRARY_LINKAGE`) on a per-port basis. -- cgit v1.2.3 From 8eac56110738c06b7f0afd9f2815e1366d8ecc65 Mon Sep 17 00:00:00 2001 From: Robert Schumacher Date: Tue, 1 May 2018 15:49:11 -0700 Subject: [abseil][aws-sdk-cpp][directxmesh][directxtex][directxtk][discord-rpc][exiv2][folly][jsonnet][libuv][ms-gsl][nuklear][rocksdb][rs-core-lib][thrift][unicorn][zeromq] Upgrades --- ports/abseil/CMakeLists.txt | 1 + ports/abseil/CONTROL | 2 +- ports/abseil/portfile.cmake | 4 ++-- ports/aws-sdk-cpp/CONTROL | 2 +- ports/aws-sdk-cpp/portfile.cmake | 4 ++-- ports/directxmesh/CONTROL | 2 +- ports/directxmesh/portfile.cmake | 4 ++-- ports/directxtex/CONTROL | 2 +- ports/directxtex/portfile.cmake | 4 ++-- ports/directxtk/CONTROL | 2 +- ports/directxtk/portfile.cmake | 4 ++-- ports/discord-rpc/CONTROL | 2 +- ports/discord-rpc/portfile.cmake | 4 ++-- ports/exiv2/CONTROL | 2 +- ports/exiv2/portfile.cmake | 4 ++-- ports/folly/CONTROL | 2 +- ports/folly/portfile.cmake | 4 ++-- ports/jsonnet/CONTROL | 2 +- ports/jsonnet/portfile.cmake | 4 ++-- ports/libuv/CONTROL | 2 +- ports/libuv/portfile.cmake | 4 ++-- ports/ms-gsl/CONTROL | 2 +- ports/ms-gsl/portfile.cmake | 4 ++-- ports/nuklear/CONTROL | 2 +- ports/nuklear/portfile.cmake | 4 ++-- ports/rocksdb/CONTROL | 2 +- ports/rocksdb/portfile.cmake | 4 ++-- ports/rs-core-lib/CONTROL | 2 +- ports/rs-core-lib/portfile.cmake | 4 ++-- ports/thrift/CONTROL | 2 +- ports/thrift/portfile.cmake | 4 ++-- ports/unicorn/CONTROL | 2 +- ports/unicorn/portfile.cmake | 4 ++-- ports/zeromq/CONTROL | 2 +- ports/zeromq/portfile.cmake | 4 ++-- 35 files changed, 52 insertions(+), 51 deletions(-) diff --git a/ports/abseil/CMakeLists.txt b/ports/abseil/CMakeLists.txt index ced5b14ca..bed720843 100644 --- a/ports/abseil/CMakeLists.txt +++ b/ports/abseil/CMakeLists.txt @@ -75,6 +75,7 @@ add_sublibrary(utility) target_link_public_libraries(algorithm base meta) target_link_public_libraries(container algorithm base memory) +target_link_public_libraries(debugging base) target_link_public_libraries(memory meta) target_link_public_libraries(meta base) target_link_public_libraries(numeric base) diff --git a/ports/abseil/CONTROL b/ports/abseil/CONTROL index b1a1def7f..48e1dc27a 100644 --- a/ports/abseil/CONTROL +++ b/ports/abseil/CONTROL @@ -1,5 +1,5 @@ Source: abseil -Version: 2018-04-12 +Version: 2018-04-25-1 Description: an open-source collection designed to augment the C++ standard library. Abseil is an open-source collection of C++ library code designed to augment the C++ standard library. The Abseil library code is collected from Google's own C++ code base, has been extensively tested and used in production, and is the same code we depend on in our daily coding lives. In some cases, Abseil provides pieces missing from the C++ standard; in others, Abseil provides alternatives to the standard for special needs we've found through usage in the Google code base. We denote those cases clearly within the library code we provide you. diff --git a/ports/abseil/portfile.cmake b/ports/abseil/portfile.cmake index 71d26de69..d9568b79d 100644 --- a/ports/abseil/portfile.cmake +++ b/ports/abseil/portfile.cmake @@ -7,8 +7,8 @@ endif() vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO abseil/abseil-cpp - REF a7e522daf1ec9cda69b356472f662142dd0c1215 - SHA512 250b602fc3f5a4c3b6522ef0f49bdf63db0070289cb415cb31bb672b95b35dc9494f881adeb1b090927b1cd942c3674b6142747f601c8f7233bd12d4078583f3 + REF ea0e750e52ee223db34a242f9a7229ac04a0f473 + SHA512 1115fdf784eaa18c8287c6d40e773f0a4e8241db6fe8f71a17bb7018c715db0459803e6ebaeac31673c80fbc24505795e7b0783ef04d1e5e8d5359725f3698bf HEAD_REF master ) diff --git a/ports/aws-sdk-cpp/CONTROL b/ports/aws-sdk-cpp/CONTROL index fbc86b58f..1a4226b9a 100644 --- a/ports/aws-sdk-cpp/CONTROL +++ b/ports/aws-sdk-cpp/CONTROL @@ -1,5 +1,5 @@ Source: aws-sdk-cpp -Version: 1.4.33 +Version: 1.4.38 Description: AWS SDK for C++ Build-Depends: openssl (!uwp&!windows), curl (!uwp&!windows) Default-Features: dynamodb, ec2, kms, rds, s3, sns, sqs diff --git a/ports/aws-sdk-cpp/portfile.cmake b/ports/aws-sdk-cpp/portfile.cmake index 815926ddd..11e7a5056 100644 --- a/ports/aws-sdk-cpp/portfile.cmake +++ b/ports/aws-sdk-cpp/portfile.cmake @@ -3,8 +3,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO aws/aws-sdk-cpp - REF 1.4.33 - SHA512 ebe8e402107b7b70a9b397c94ad981ff02d97e10e6fd8337f19b732185ecbb79e132eecd513300ce733a765fd780dd765c1d2b34479e5e1d891fa771722bad81 + REF 1.4.38 + SHA512 ad0ea1fa8ca63da5d936d28b1df1e9d0a609547956b5a25c0fac4043c5ba912ef33e6ee4da7898d804eee4ccb9289540ebdf3a91a101c9d439daef78903cd087 HEAD_REF master ) diff --git a/ports/directxmesh/CONTROL b/ports/directxmesh/CONTROL index 41b26ef1a..8b8206540 100644 --- a/ports/directxmesh/CONTROL +++ b/ports/directxmesh/CONTROL @@ -1,3 +1,3 @@ Source: directxmesh -Version: feb2018-eb751e0b631b05aa25c36c08e7d6bbf09f5e94a9 +Version: apr2018 Description: DirectXMesh geometry processing library \ No newline at end of file diff --git a/ports/directxmesh/portfile.cmake b/ports/directxmesh/portfile.cmake index 6d64d3658..090e0df36 100644 --- a/ports/directxmesh/portfile.cmake +++ b/ports/directxmesh/portfile.cmake @@ -12,8 +12,8 @@ endif() vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO Microsoft/DirectXMesh - REF eb751e0b631b05aa25c36c08e7d6bbf09f5e94a9 - SHA512 35a6be07fbdf5d9a39e7f5a3716057d09643d0c4bb43d39beae4233ca6941d2e2318b826dcc4a385dfa512675c7e28f320067b88bb325943b6532c8e65ebcd1b + REF apr2018 + SHA512 960e28665e4e79358e2985923e9fc9dbebc2ae5f8acb880b1f3990f2dc86683c266d41f14b0526fc391629c608b879915f88ce091eaee619debb48fc39fa9e3d HEAD_REF master ) diff --git a/ports/directxtex/CONTROL b/ports/directxtex/CONTROL index 8d47b6302..0d428284e 100644 --- a/ports/directxtex/CONTROL +++ b/ports/directxtex/CONTROL @@ -1,3 +1,3 @@ Source: directxtex -Version: feb2018b +Version: apr2018 Description: DirectXTex texture processing library \ No newline at end of file diff --git a/ports/directxtex/portfile.cmake b/ports/directxtex/portfile.cmake index ec466e0d6..41423a6cc 100644 --- a/ports/directxtex/portfile.cmake +++ b/ports/directxtex/portfile.cmake @@ -12,8 +12,8 @@ endif() vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO Microsoft/DirectXTex - REF feb2018b - SHA512 7ab88ea863947ec279c9c83bd6dd48e15345430c750c7215c22998661fad1a711f207c57227bc5cc3cddfb5e0a89a8971d7ef3319057636e2b6f3e2e607ea0cb + REF apr2018 + SHA512 b4e55358628c13f2a8f1f3cb0258a0d126057bc1dfa45e645e0ec21203cdda091c8244deeb775ec950ed534bddd82b71aa1d00f7356bf7f7c49a072bd206b373 HEAD_REF master ) diff --git a/ports/directxtk/CONTROL b/ports/directxtk/CONTROL index 1861befc1..7c69aeba2 100644 --- a/ports/directxtk/CONTROL +++ b/ports/directxtk/CONTROL @@ -1,3 +1,3 @@ Source: directxtk -Version: feb2018 +Version: apr2018 Description: A collection of helper classes for writing DirectX 11.x code in C++. diff --git a/ports/directxtk/portfile.cmake b/ports/directxtk/portfile.cmake index 18ff47218..da7d9b40c 100644 --- a/ports/directxtk/portfile.cmake +++ b/ports/directxtk/portfile.cmake @@ -12,8 +12,8 @@ endif() vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO Microsoft/DirectXTK - REF feb2018 - SHA512 0f123f6fa26bf5aebd0d0b3139f655369726581c25eec24d804eebf5dc34b3e45476e8a1679bf1a294b011bf32e19c5e2a63a385ecb8774dfacee3e8833c5b9e + REF apr2018 + SHA512 d7e58883a7c18e239964ca0da62441446af233d99e221a6d23f1a3a89991b0bc1e4ca31205895230488abd4e65103f59ec950af42ba379e409783927ee97cc4a HEAD_REF master ) diff --git a/ports/discord-rpc/CONTROL b/ports/discord-rpc/CONTROL index 2e6f44688..82e7515ed 100644 --- a/ports/discord-rpc/CONTROL +++ b/ports/discord-rpc/CONTROL @@ -1,3 +1,3 @@ Source: discord-rpc -Version: 3.2.0 +Version: 3.3.0 Description: Rich Presence allows you to leverage the totally overhauled "Now Playing" section in a Discord user's profile to help people play your game together. diff --git a/ports/discord-rpc/portfile.cmake b/ports/discord-rpc/portfile.cmake index 8e4e090b1..5a2f04c85 100644 --- a/ports/discord-rpc/portfile.cmake +++ b/ports/discord-rpc/portfile.cmake @@ -3,8 +3,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO discordapp/discord-rpc - REF v3.2.0 - SHA512 83a32db240f30f4429c145dd400eba5b9985ea779e492ffa2be2ba2664d97e4dec1f4416ad0f3e6fc908c3c9b30aebe4a8e293e0ef3c60e01fc6f16b5f9a7c16 + REF v3.3.0 + SHA512 8bb2674edefabf75670ceca29364d69e2002152bff9fe55757f4cda03544b4d827ff33595d98e6d8acdc73ca61cef8ab8054ad0a1ffc905cb26496068b15025f HEAD_REF master ) diff --git a/ports/exiv2/CONTROL b/ports/exiv2/CONTROL index 2e7eaef26..38b8d8d85 100644 --- a/ports/exiv2/CONTROL +++ b/ports/exiv2/CONTROL @@ -1,4 +1,4 @@ Source: exiv2 -Version: 2018-04-12 +Version: 2018-04-25 Build-Depends: zlib, expat, libiconv Description: Image metadata library and tools http://www.exiv2.org diff --git a/ports/exiv2/portfile.cmake b/ports/exiv2/portfile.cmake index 3e645a91e..2e09b7076 100644 --- a/ports/exiv2/portfile.cmake +++ b/ports/exiv2/portfile.cmake @@ -3,8 +3,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO Exiv2/exiv2 - REF c80b1b9d51689692bc865f1a1d16bf7fd2a532c4 - SHA512 72c3801678424cd738423ea28e03c44f4d2bfd6a7e3c2cea53806b3705eebc5e86a293d3aa2bea51f6f426b9e280a3f7b8883bb4e4c627cc413159d9565033a0 + REF 4bcec183d52995169653f619e50cbeadab420807 + SHA512 812cace9303f6d0bb2b1e5833e1b5728316126b0a5cc14662b79a0eb14dd752862e79d4014748320696c65c1466b113c57f106b9fd25f2d7dd4e5a9d4a275d16 HEAD_REF master ) diff --git a/ports/folly/CONTROL b/ports/folly/CONTROL index 13f732525..2732747b9 100644 --- a/ports/folly/CONTROL +++ b/ports/folly/CONTROL @@ -1,5 +1,5 @@ Source: folly -Version: 2018.04.16.00 +Version: 2018.04.23.00 Description: An open-source C++ library developed and used at Facebook. The library is UNSTABLE on Windows Build-Depends: openssl, libevent, double-conversion, glog, gflags, boost-chrono, boost-context, boost-conversion, boost-crc, boost-date-time, boost-filesystem, boost-multi-index, boost-program-options, boost-regex, boost-system, boost-thread Default-Features: zlib diff --git a/ports/folly/portfile.cmake b/ports/folly/portfile.cmake index 2a35561d1..2d390a54e 100644 --- a/ports/folly/portfile.cmake +++ b/ports/folly/portfile.cmake @@ -17,8 +17,8 @@ set(ENV{PATH} "$ENV{PATH};${PYTHON3_DIR}") vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO facebook/folly - REF v2018.04.16.00 - SHA512 1f14da6eece3a490bd134a40550c2a3f78356789090e19933b8f10bc356837ee774a21e6f0b88c45831a968587049092b9d0d77617f040ab8e177de224400408 + REF v2018.04.23.00 + SHA512 7614f799fe12047070f2efe471ccbb6166dca62947d3fd5baa9a3cc50bab6238bda77ca61153779913903ad57346767b21cf59c025a0a93db39ad99e1258c45d HEAD_REF master PATCHES ${CMAKE_CURRENT_LIST_DIR}/find-gflags.patch diff --git a/ports/jsonnet/CONTROL b/ports/jsonnet/CONTROL index 3cd30746a..d559187f3 100644 --- a/ports/jsonnet/CONTROL +++ b/ports/jsonnet/CONTROL @@ -1,3 +1,3 @@ Source: jsonnet -Version: 2018-04-17 +Version: 2018-04-25 Description: Jsonnet - The data templating language diff --git a/ports/jsonnet/portfile.cmake b/ports/jsonnet/portfile.cmake index 3f4edbf38..6314800dc 100644 --- a/ports/jsonnet/portfile.cmake +++ b/ports/jsonnet/portfile.cmake @@ -3,8 +3,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO google/jsonnet - REF 125012dd904a7d111adf1082b3dca5642dbfd418 - SHA512 1d03d92aee54862d7ae03227be290f24b283dc89d60e77ffa42bfa9485e9ff0e39a93c27cfb1049cee7015c25f6d62b27362bb0836973d2ac1f919276c33ab3c + REF 33dd1c612d1026466cd37e04d3ea7d61ae07241e + SHA512 656939e57ed47a1ccb0656751176c58f575570d00a84c7b256898e25dd67f734b3cea014d328f63ece21b62f62d807643986dad65ca8cc3a7bda53f8b01f8a51 HEAD_REF master ) diff --git a/ports/libuv/CONTROL b/ports/libuv/CONTROL index e861df239..bcb1ccb3e 100644 --- a/ports/libuv/CONTROL +++ b/ports/libuv/CONTROL @@ -1,3 +1,3 @@ Source: libuv -Version: 1.20.0 +Version: 1.20.2 Description: libuv is a multi-platform support library with a focus on asynchronous I/O. diff --git a/ports/libuv/portfile.cmake b/ports/libuv/portfile.cmake index 46ce33d8d..2e3d12fa5 100644 --- a/ports/libuv/portfile.cmake +++ b/ports/libuv/portfile.cmake @@ -2,8 +2,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO libuv/libuv - REF v1.20.0 - SHA512 382309cb6e54765b956b03357cb754f49d93505ba0e0122a77f33efca07d7b87966c993a5fd9f9503edd1bcd0f49ca42bd9cd9264cce94c847aebca77d237ba0 + REF v1.20.2 + SHA512 449dfd15e2953d2a8b9c6160ab39728a87799b3e8595f9e3013467daf69d3561e2c5602172a0596e7c884237cf0d52d3b0f00edde03a7b037dc90b61bce2057c HEAD_REF v1.x) file(COPY ${CMAKE_CURRENT_LIST_DIR}/CMakeLists.txt DESTINATION ${SOURCE_PATH}) diff --git a/ports/ms-gsl/CONTROL b/ports/ms-gsl/CONTROL index bc4ac2d1d..f0bcb191b 100644 --- a/ports/ms-gsl/CONTROL +++ b/ports/ms-gsl/CONTROL @@ -1,3 +1,3 @@ Source: ms-gsl -Version: 2018-03-17 +Version: 2018-04-25 Description: Microsoft implementation of the Guidelines Support Library \ No newline at end of file diff --git a/ports/ms-gsl/portfile.cmake b/ports/ms-gsl/portfile.cmake index c2ce611df..9c5d11568 100644 --- a/ports/ms-gsl/portfile.cmake +++ b/ports/ms-gsl/portfile.cmake @@ -4,8 +4,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO Microsoft/GSL - REF d846fe50a3f0bb7767c7e087a05f4be95f4da0ec - SHA512 83560cb0c39b6a4781e916c6081ad2728296e1b19760ca1b6426a8431fb6d7093760a882c539dd77152f5892fe081b1795af6366ea91385bb10aba6adf27170f + REF 2fc94db3ebfb1b066edeafac1837f34d6111bff4 + SHA512 b64e454b66570b2139e401e5ffd6042f2d977903cba54fa100246865967457900deee92bfbfa3976bdae555017c044b384a8dfa247946afccd664e2d30204ab2 HEAD_REF master ) diff --git a/ports/nuklear/CONTROL b/ports/nuklear/CONTROL index 82fba8753..8cb502042 100644 --- a/ports/nuklear/CONTROL +++ b/ports/nuklear/CONTROL @@ -1,3 +1,3 @@ Source: nuklear -Version: 2018-04-17 +Version: 2018-04-25 Description: This is a minimal state immediate mode graphical user interface toolkit written in ANSI C and licensed under public domain diff --git a/ports/nuklear/portfile.cmake b/ports/nuklear/portfile.cmake index 99b60f8e6..5d60955d7 100644 --- a/ports/nuklear/portfile.cmake +++ b/ports/nuklear/portfile.cmake @@ -2,8 +2,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO vurtun/nuklear - REF b91a815c826619bfcacacad090e31b2dd3e1a20c - SHA512 d1966cd01a3d6e75608426f2813ec038dff1291674d481899c031248f0469b47b78f3e35b86a78090e3f019cc478c606d2b78bcc80117fb54de9ed5df22883a0 + REF 823f79f856d711eb61af17090af0a623b631e409 + SHA512 6146d2fb26e7d74f9f554619f6a378ecf19ff6a83aa71dba8ee55d194f337c67acae0de7139a4a09736b4685980c9cd85e3c1e99ebf02ee9a306b67b17f185d8 HEAD_REF master ) file(INSTALL ${SOURCE_PATH}/nuklear.h DESTINATION ${CURRENT_PACKAGES_DIR}/include) diff --git a/ports/rocksdb/CONTROL b/ports/rocksdb/CONTROL index 852281924..85e542a43 100644 --- a/ports/rocksdb/CONTROL +++ b/ports/rocksdb/CONTROL @@ -1,5 +1,5 @@ Source: rocksdb -Version: 5.12.2 +Version: 5.12.4 Description: A library that provides an embeddable, persistent key-value store for fast storage Default-Features: zlib diff --git a/ports/rocksdb/portfile.cmake b/ports/rocksdb/portfile.cmake index 92ca0c2fa..114ace627 100644 --- a/ports/rocksdb/portfile.cmake +++ b/ports/rocksdb/portfile.cmake @@ -3,8 +3,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO facebook/rocksdb - REF v5.12.2 - SHA512 53e81e87e84f0500cd09d754c39e86265a16a52d4b84f9044f8d9759c224881eb7ef4bf89f9b01fdff25f123ed4dfa7b5cb272d2311f27b322c15fe2e893bbe3 + REF v5.12.4 + SHA512 661e30a9fd2a83f2d8dbcc9f27e8ae2e83f384bb7f4f61dc41d89e85d93edc1032b70ab97063e0e3c0bda591612214793d1b075c6dcfeda2e0a32acb6e9d8689 HEAD_REF master ) diff --git a/ports/rs-core-lib/CONTROL b/ports/rs-core-lib/CONTROL index d7e583054..2cb7543f5 100644 --- a/ports/rs-core-lib/CONTROL +++ b/ports/rs-core-lib/CONTROL @@ -1,4 +1,4 @@ Source: rs-core-lib -Version: 2018-04-12 +Version: 2018-04-25 Description: Minimal common utilities by Ross Smith diff --git a/ports/rs-core-lib/portfile.cmake b/ports/rs-core-lib/portfile.cmake index 0994afa4d..f103dc631 100644 --- a/ports/rs-core-lib/portfile.cmake +++ b/ports/rs-core-lib/portfile.cmake @@ -3,8 +3,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO CaptainCrowbar/rs-core-lib - REF 529b74de173a77ba057ebc54d1f91629e7b643bd - SHA512 d836ee1c022522618f37fdeba941986977317fa68a909d8255e6abfd39564f72f47f8c78c2fa9e4ccc52da75987b56a02f8f2d5aad2890ef7b93ea843c85940c + REF ae6cde6069cae27079ec36536bc960e119d502e3 + SHA512 79014460c91fa262257e912824cf4528213cec3baebd39b104c52bc162c5fd3040ecf74156aebc428f3a4846d141475ab6a41f28f43edfc06ff7331cb3e93d4a HEAD_REF master ) diff --git a/ports/thrift/CONTROL b/ports/thrift/CONTROL index 449a6a4ca..1967007ec 100644 --- a/ports/thrift/CONTROL +++ b/ports/thrift/CONTROL @@ -1,4 +1,4 @@ Source: thrift -Version: 2018-04-17 +Version: 2018-04-25 Build-Depends: zlib, libevent, openssl, boost-range, boost-smart-ptr, boost-date-time, boost-locale, boost-scope-exit Description: Apache Thrift is a software project spanning a variety of programming languages and use cases. Our goal is to make reliable, performant communication and data serialization across languages as efficient and seamless as possible. Originally developed at Facebook, Thrift was open sourced in April 2007 and entered the Apache Incubator in May, 2008. Thrift became an Apache TLP in October, 2010. diff --git a/ports/thrift/portfile.cmake b/ports/thrift/portfile.cmake index 81b65cea0..4aaf03315 100644 --- a/ports/thrift/portfile.cmake +++ b/ports/thrift/portfile.cmake @@ -15,8 +15,8 @@ vcpkg_find_acquire_program(BISON) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO apache/thrift - REF 4a00fc658a1dc90be33a223a2c7ee336679e8745 - SHA512 b5f380b195498103d0ab4612c1754b29a8dce8e9360e46f5d6dd6daead477c6d2b9b0092ef83a081d937973e21a77fa8b55d5cb7c1d2d5abe71c6b0caa4dae30 + REF 0293c3643b0075b510b9d92b2cc39b6d5e0fadb8 + SHA512 2bf217d9317b35215d5f984ae76509ddf505459dec97fde6aae8b4a2632882df971c438a99afc87fbe28dd931e2d1283315d1dbb3eb8af92c94fa0fdffd05ac0 HEAD_REF master ) diff --git a/ports/unicorn/CONTROL b/ports/unicorn/CONTROL index 6d907bd94..7f0a41d7e 100644 --- a/ports/unicorn/CONTROL +++ b/ports/unicorn/CONTROL @@ -1,3 +1,3 @@ Source: unicorn -Version: 2018-03-20 +Version: 2018-04-25 Description: Unicorn is a lightweight multi-platform, multi-architecture CPU emulator framework diff --git a/ports/unicorn/portfile.cmake b/ports/unicorn/portfile.cmake index bec0088ed..3b0a89419 100644 --- a/ports/unicorn/portfile.cmake +++ b/ports/unicorn/portfile.cmake @@ -14,8 +14,8 @@ set(VCPKG_CRT_LINKAGE "static") vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO unicorn-engine/unicorn - REF 9a01ae8379b0a4bc37cf50f7aeba63fddeb523c4 - SHA512 04d5e850bc1ba36856052be5a4e2a433db8d229ae90b2fbf6a5bf32c9dc86829518a8882d331d0bc7d42a23e9f5c43d6609a20dcca388c717940c081ff21b3a4 + REF 2edb4b57c492d3255b4bfa9a08963657166fb311 + SHA512 e68ef5f1abd8ad2560bdf94957e6d7a3a106fbe4f3b34d8cfc75ab2f7a754df214e5fdddd34670412fc4dd652261391bb8f5976bea2476a2997ff29bc10b81e8 HEAD_REF master ) diff --git a/ports/zeromq/CONTROL b/ports/zeromq/CONTROL index b74483695..013800189 100644 --- a/ports/zeromq/CONTROL +++ b/ports/zeromq/CONTROL @@ -1,3 +1,3 @@ Source: zeromq -Version: 2018-04-17 +Version: 2018-04-25 Description: The ZeroMQ lightweight messaging kernel is a library which extends the standard socket interfaces with features traditionally provided by specialised messaging middleware products diff --git a/ports/zeromq/portfile.cmake b/ports/zeromq/portfile.cmake index a907be9af..0bdb2a47b 100644 --- a/ports/zeromq/portfile.cmake +++ b/ports/zeromq/portfile.cmake @@ -3,8 +3,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO zeromq/libzmq - REF c971445025535b9f989ab0b78f5ddd1c026f1878 - SHA512 4eb85e207f53de73cf5369c4c3e79d858ee380e1374ebe807dfc6f99782efc2b98984f48a2cce11b9bf22c7934ef3d1a075cb98fb9e90d5f216a4e128d6df212 + REF 69a894e1cb34c42026512a6a30f3ea6a0c77e675 + SHA512 215d9863545a6218b51de4c316d26fdb191164d356ae425bc3e15772954a1a96ee6f57aa13fdfb1f0e2a30dc7c3ca1d434b0e61ebbd31d0f1087306d529162d3 HEAD_REF master ) -- cgit v1.2.3 From 64c32687f357d98db0f9e1c6f0cb6cd488e6c68d Mon Sep 17 00:00:00 2001 From: Robert Schumacher Date: Tue, 1 May 2018 15:39:19 -0700 Subject: [box2d] Replace buildsystem with CMake for better cross-platform support --- ports/box2d/CMakeLists.txt | 21 +++++++++++ ports/box2d/CONTROL | 2 +- ports/box2d/portfile.cmake | 68 ++++++++---------------------------- ports/box2d/use-static-linkage.patch | 40 --------------------- 4 files changed, 36 insertions(+), 95 deletions(-) create mode 100644 ports/box2d/CMakeLists.txt delete mode 100644 ports/box2d/use-static-linkage.patch diff --git a/ports/box2d/CMakeLists.txt b/ports/box2d/CMakeLists.txt new file mode 100644 index 000000000..951554266 --- /dev/null +++ b/ports/box2d/CMakeLists.txt @@ -0,0 +1,21 @@ +cmake_minimum_required(VERSION 3.9) +project(Box2d CXX) + +file(GLOB_RECURSE SOURCES Box2D/Box2D/*.cpp) + +add_library(Box2D ${SOURCES}) +target_include_directories(Box2D PUBLIC $ $) + +install(TARGETS Box2D + EXPORT unofficial-box2d-targets + RUNTIME DESTINATION bin + ARCHIVE DESTINATION lib + LIBRARY DESTINATION lib +) + +install( + EXPORT unofficial-box2d-targets + FILE unofficial-box2d-config.cmake + NAMESPACE unofficial::box2d:: + DESTINATION share/unofficial-box2d +) diff --git a/ports/box2d/CONTROL b/ports/box2d/CONTROL index 7cfcb01a0..220a5a058 100644 --- a/ports/box2d/CONTROL +++ b/ports/box2d/CONTROL @@ -1,3 +1,3 @@ Source: box2d -Version: 2.3.1-374664b +Version: 2.3.1-374664b-1 Description: Box2D (http://box2d.org) is an open source C++ engine for simulating rigid bodies in 2D. diff --git a/ports/box2d/portfile.cmake b/ports/box2d/portfile.cmake index 87aaefc74..c35f37444 100644 --- a/ports/box2d/portfile.cmake +++ b/ports/box2d/portfile.cmake @@ -1,17 +1,8 @@ - -# Get output directory -set(PROJECT_ARCH_BITS "x64") -if(TRIPLET_SYSTEM_ARCH MATCHES "x86") - set(PROJECT_ARCH_BITS "x32") -elseif(TRIPLET_SYSTEM_ARCH MATCHES "arm") - message(FATAL_ERROR "ARM not supported") -endif(TRIPLET_SYSTEM_ARCH MATCHES "x86") - - include(vcpkg_common_functions) -if(EXISTS "${CURRENT_BUILDTREES_DIR}/src/.git") - file(REMOVE_RECURSE ${CURRENT_BUILDTREES_DIR}/src) +if(VCPKG_LIBRARY_LINKAGE STREQUAL "dynamic") + message("Box2D only supports building as a static library") + set(VCPKG_LIBRARY_LINKAGE "static") endif() vcpkg_from_github( @@ -22,54 +13,23 @@ vcpkg_from_github( HEAD_REF master ) -if(VCPKG_CRT_LINKAGE STREQUAL "static") - vcpkg_apply_patches( - SOURCE_PATH ${SOURCE_PATH} - PATCHES - ${CMAKE_CURRENT_LIST_DIR}/use-static-linkage.patch - ) -endif() - -# Put the licence and readme files where vcpkg expects it -message(STATUS "Packaging license") -file(COPY ${SOURCE_PATH}/README.md DESTINATION ${CURRENT_PACKAGES_DIR}/share/box2d) -file(COPY ${SOURCE_PATH}/Box2D/License.txt DESTINATION ${CURRENT_PACKAGES_DIR}/share/box2d) -file(RENAME ${CURRENT_PACKAGES_DIR}/share/box2d/License.txt ${CURRENT_PACKAGES_DIR}/share/box2d/copyright) -message(STATUS "Packaging license done") - -# Building: -set(OUTPUTS_PATH "${SOURCE_PATH}/Box2D/Build/vs2015/bin/${PROJECT_ARCH_BITS}") +file(COPY ${CMAKE_CURRENT_LIST_DIR}/CMakeLists.txt DESTINATION ${SOURCE_PATH}) -vcpkg_build_msbuild(PROJECT_PATH ${SOURCE_PATH}/Box2D/Build/vs2015/Box2D.vcxproj) - -if(NOT DEFINED VCPKG_BUILD_TYPE OR VCPKG_BUILD_TYPE STREQUAL "release") - message(STATUS "Packaging ${TARGET_TRIPLET}-Release lib") - file( - INSTALL ${OUTPUTS_PATH}/Release/ - DESTINATION ${CURRENT_PACKAGES_DIR}/lib - FILES_MATCHING PATTERN "*.lib" - ) - file(RENAME ${CURRENT_PACKAGES_DIR}/lib/Box2D.lib ${CURRENT_PACKAGES_DIR}/lib/box2d.lib) - message(STATUS "Packaging ${TARGET_TRIPLET}-Release lib done") -endif() +vcpkg_configure_cmake( + SOURCE_PATH ${SOURCE_PATH} + PREFER_NINJA +) +vcpkg_install_cmake() -if(NOT DEFINED VCPKG_BUILD_TYPE OR VCPKG_BUILD_TYPE STREQUAL "debug") - message(STATUS "Packaging ${TARGET_TRIPLET}-Debug lib") - file( - INSTALL ${OUTPUTS_PATH}/Debug/ - DESTINATION ${CURRENT_PACKAGES_DIR}/debug/lib - FILES_MATCHING PATTERN "*.lib" - ) - file(RENAME ${CURRENT_PACKAGES_DIR}/debug/lib/Box2D.lib ${CURRENT_PACKAGES_DIR}/debug/lib/box2d.lib) - message(STATUS "Packaging ${TARGET_TRIPLET}-Debug lib done") -endif() +vcpkg_fixup_cmake_targets(CONFIG_PATH share/unofficial-box2d TARGET_PATH share/unofficial-box2d) -message(STATUS "Packaging headers") file( COPY ${SOURCE_PATH}/Box2D/Box2D DESTINATION ${CURRENT_PACKAGES_DIR}/include - PATTERN "*.h" + FILES_MATCHING PATTERN "*.h" ) -message(STATUS "Packaging headers done") vcpkg_copy_pdbs() + +file(COPY ${SOURCE_PATH}/Box2D/License.txt ${SOURCE_PATH}/README.md DESTINATION ${CURRENT_PACKAGES_DIR}/share/box2d) +file(RENAME ${CURRENT_PACKAGES_DIR}/share/box2d/License.txt ${CURRENT_PACKAGES_DIR}/share/box2d/copyright) diff --git a/ports/box2d/use-static-linkage.patch b/ports/box2d/use-static-linkage.patch deleted file mode 100644 index 4c3fccd53..000000000 --- a/ports/box2d/use-static-linkage.patch +++ /dev/null @@ -1,40 +0,0 @@ -diff --git a/Box2D/Build/vs2015/Box2D.vcxproj b/Box2D/Build/vs2015/Box2D.vcxproj -index 830803c..5dda519 100644 ---- a/Box2D/Build/vs2015/Box2D.vcxproj -+++ b/Box2D/Build/vs2015/Box2D.vcxproj -@@ -86,7 +86,7 @@ - _CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions) - true - EnableFastChecks -- MultiThreadedDebugDLL -+ MultiThreadedDebug - true - - -@@ -115,7 +115,7 @@ - _CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions) - true - EnableFastChecks -- MultiThreadedDebugDLL -+ MultiThreadedDebug - true - - -@@ -145,7 +145,7 @@ - _CRT_SECURE_NO_WARNINGS;NDEBUG;%(PreprocessorDefinitions) - false - true -- MultiThreadedDLL -+ MultiThreaded - true - - -@@ -176,7 +176,7 @@ - _CRT_SECURE_NO_WARNINGS;NDEBUG;%(PreprocessorDefinitions) - false - true -- MultiThreadedDLL -+ MultiThreaded - true - - -- cgit v1.2.3 From ae4cd42aab41e50b1d3911f0ac844f459cdd4a4c Mon Sep 17 00:00:00 2001 From: jasjuang Date: Tue, 1 May 2018 22:52:18 -0700 Subject: [alembic] update to 1.7.8 --- ports/alembic/CONTROL | 2 +- ports/alembic/portfile.cmake | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/ports/alembic/CONTROL b/ports/alembic/CONTROL index 4e24aab9b..9a43a7b00 100644 --- a/ports/alembic/CONTROL +++ b/ports/alembic/CONTROL @@ -1,4 +1,4 @@ Source: alembic -Version: 1.7.7 +Version: 1.7.8 Build-Depends: ilmbase, hdf5 Description: Alembic is an open framework for storing and sharing scene data that includes a C++ library, a file format, and client plugins and applications. http://alembic.io/ diff --git a/ports/alembic/portfile.cmake b/ports/alembic/portfile.cmake index a44771ab2..d9720a178 100644 --- a/ports/alembic/portfile.cmake +++ b/ports/alembic/portfile.cmake @@ -8,8 +8,8 @@ endif() vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO alembic/alembic - REF 1.7.7 - SHA512 0ebcf6b9304e84bc60f1c146d0b5e5c5b1de43974ec0725293c444b48b22640945f5883eb9afd46c1ac9f0c260d6f22ff29b4866d6525c416339877be984b149 + REF 1.7.8 + SHA512 bc36e30d1aecd67da16247365a973c462e9716309d090fefe36f625c8d2ab2d517fe8ac694a9188cd6eeb623a3217f59f461c82fcfec43d0a60a07381526983a HEAD_REF master ) -- cgit v1.2.3 From 6bff657152d1aed717898088dd939b6ad3f118a5 Mon Sep 17 00:00:00 2001 From: Robert Schumacher Date: Tue, 1 May 2018 16:34:16 -0700 Subject: [poco] Upgrade to version 1.9.0 --- ports/poco/CONTROL | 2 +- ports/poco/portfile.cmake | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/ports/poco/CONTROL b/ports/poco/CONTROL index c3d177430..9656723bb 100644 --- a/ports/poco/CONTROL +++ b/ports/poco/CONTROL @@ -1,5 +1,5 @@ Source: poco -Version: 1.8.1-2 +Version: 1.9.0 Build-Depends: zlib, pcre, sqlite3, expat Description: Modern, powerful open source C++ class libraries for building network and internet-based applications that run on desktop, server, mobile and embedded systems. diff --git a/ports/poco/portfile.cmake b/ports/poco/portfile.cmake index 1ea06d4ff..271e223f8 100644 --- a/ports/poco/portfile.cmake +++ b/ports/poco/portfile.cmake @@ -3,8 +3,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO pocoproject/poco - REF poco-1.8.1-release - SHA512 ca57b30c10fc4e611dbdd90c7e36db34b8cb9a7dae675dc8aed37457a26d3433080caf26eaace85adf8d6a6ad7945c49f7c66f274b26fe9cc0c7d5107be3828e + REF poco-1.9.0-release + SHA512 de2346d62b2e89ba04abe62a83f6ede7a496e80bcbe53a880a1aa8e87a8ebd9a430dd70fdc6aada836bb1021c6df21375fd0cbcf62dbb6e29a2f65d6d90cf2b9 HEAD_REF master ) -- cgit v1.2.3 From 1e41c4377f38512d1d6c0d65a2e7b9c7c8b03bea Mon Sep 17 00:00:00 2001 From: Seo Sanghyeon Date: Wed, 2 May 2018 17:37:15 +0900 Subject: Add yajl port (#3379) * Add yajl port * [yajl] Patch cmake to fix install directories and avoid overwriting compiler flags --- ports/yajl/CONTROL | 3 +++ ports/yajl/cmake.patch | 36 ++++++++++++++++++++++++++++++++++++ ports/yajl/portfile.cmake | 34 ++++++++++++++++++++++++++++++++++ 3 files changed, 73 insertions(+) create mode 100644 ports/yajl/CONTROL create mode 100644 ports/yajl/cmake.patch create mode 100644 ports/yajl/portfile.cmake diff --git a/ports/yajl/CONTROL b/ports/yajl/CONTROL new file mode 100644 index 000000000..6811dc84a --- /dev/null +++ b/ports/yajl/CONTROL @@ -0,0 +1,3 @@ +Source: yajl +Version: 2.1.0-1 +Description: Yet Another JSON Library diff --git a/ports/yajl/cmake.patch b/ports/yajl/cmake.patch new file mode 100644 index 000000000..c631ead21 --- /dev/null +++ b/ports/yajl/cmake.patch @@ -0,0 +1,36 @@ +diff --git a/CMakeLists.txt b/CMakeLists.txt +index 4c0a9be..cbec22f 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -28,7 +28,7 @@ ENDIF (NOT CMAKE_BUILD_TYPE) + + SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS}") + +-IF (WIN32) ++IF (WIN32 AND FALSE) + SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} /W4") + ADD_DEFINITIONS(-DWIN32) + SET(linkFlags "/PDB:NONE /INCREMENTAL:NO /OPT:NOREF /OPT:NOICF") +@@ -46,7 +46,8 @@ IF (WIN32) + SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} /wd4996 /wd4255 /wd4130 /wd4100 /wd4711") + SET(CMAKE_C_FLAGS_DEBUG "/D DEBUG /Od /Z7") + SET(CMAKE_C_FLAGS_RELEASE "/D NDEBUG /O2") +-ELSE (WIN32) ++endif() ++if (NOT WIN32) + SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wall") + IF(CMAKE_COMPILER_IS_GNUCC) + INCLUDE(CheckCCompilerFlag) +diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt +index 99cf9e9..454482a 100644 +--- a/src/CMakeLists.txt ++++ b/src/CMakeLists.txt +@@ -78,7 +78,7 @@ INCLUDE_DIRECTORIES(${incDir}/..) + # at build time you may specify the cmake variable LIB_SUFFIX to handle + # 64-bit systems which use 'lib64' + INSTALL(TARGETS yajl +- RUNTIME DESTINATION lib${LIB_SUFFIX} ++ RUNTIME DESTINATION bin + LIBRARY DESTINATION lib${LIB_SUFFIX} + ARCHIVE DESTINATION lib${LIB_SUFFIX}) + INSTALL(TARGETS yajl_s ARCHIVE DESTINATION lib${LIB_SUFFIX}) diff --git a/ports/yajl/portfile.cmake b/ports/yajl/portfile.cmake new file mode 100644 index 000000000..92742e0a7 --- /dev/null +++ b/ports/yajl/portfile.cmake @@ -0,0 +1,34 @@ +include(vcpkg_common_functions) + +vcpkg_from_github( + OUT_SOURCE_PATH SOURCE_PATH + REPO lloyd/yajl + REF 2.1.0 + SHA512 9e786d080803df80ec03a9c2f447501e6e8e433a6baf636824bc1d50ecf4f5f80d7dfb1d47958aeb0a30fe459bd0ef033d41bc6a79e1dc6e6b5eade930b19b02 + HEAD_REF master + PATCHES ${CMAKE_CURRENT_LIST_DIR}/cmake.patch +) + +vcpkg_configure_cmake( + SOURCE_PATH ${SOURCE_PATH} + PREFER_NINJA +) + +vcpkg_install_cmake() + +file(INSTALL ${SOURCE_PATH}/COPYING DESTINATION ${CURRENT_PACKAGES_DIR}/share/yajl RENAME copyright) + +file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include ${CURRENT_PACKAGES_DIR}/debug/share ${CURRENT_PACKAGES_DIR}/share/pkgconfig) + +if(VCPKG_LIBRARY_LINKAGE STREQUAL "static") + file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/bin ${CURRENT_PACKAGES_DIR}/debug/bin) + file(GLOB SHAREDOBJECTS ${CURRENT_PACKAGES_DIR}/lib/libyajl.so* ${CURRENT_PACKAGES_DIR}/debug/lib/libyajl.so*) + file(REMOVE_RECURSE ${SHAREDOBJECTS} ${CURRENT_PACKAGES_DIR}/lib/yajl.lib ${CURRENT_PACKAGES_DIR}/debug/lib/yajl.lib) +else() + file(GLOB EXES ${CURRENT_PACKAGES_DIR}/bin/*.exe ${CURRENT_PACKAGES_DIR}/debug/bin/*.exe) + file(REMOVE_RECURSE + ${EXES} + ${CURRENT_PACKAGES_DIR}/lib/yajl_s.lib ${CURRENT_PACKAGES_DIR}/debug/lib/yajl_s.lib + ${CURRENT_PACKAGES_DIR}/lib/libyajl_s.a ${CURRENT_PACKAGES_DIR}/debug/lib/libyajl_s.a + ) +endif() -- cgit v1.2.3 From 3e0901a90435e26a575e8b9c747928b88a7e3539 Mon Sep 17 00:00:00 2001 From: Squareys Date: Wed, 2 May 2018 12:13:26 +0200 Subject: [corrade] Update to v2018.04 Signed-off-by: Squareys --- ports/corrade/CONTROL | 2 +- ports/corrade/portfile.cmake | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/ports/corrade/CONTROL b/ports/corrade/CONTROL index a886c8639..e719d90e4 100644 --- a/ports/corrade/CONTROL +++ b/ports/corrade/CONTROL @@ -1,5 +1,5 @@ Source: corrade -Version: 2018.02-1 +Version: 2018.04-1 Description: C++11/C++14 multiplatform utility library http://magnum.graphics/corrade/ Default-Features: interconnect, pluginmanager, testsuite, utility diff --git a/ports/corrade/portfile.cmake b/ports/corrade/portfile.cmake index 85ad3e4b0..9c407a753 100644 --- a/ports/corrade/portfile.cmake +++ b/ports/corrade/portfile.cmake @@ -2,8 +2,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO mosra/corrade - REF v2018.02 - SHA512 8fe4998dc32586386b8fa2030941f3ace6d5e76aadcf7e20a620d276cc9247324e10eb58f2c2c9e84a1a9d9b336e6bdc788f9947c9e507a053d6fd2ffcd3d58e + REF v2018.04 + SHA512 be14f0cb76c904a37f962af16b331407ec6a1f7a31245c7221f41fcbce2749a1ad67057d451736814e357eaa59e015f16996bdba819f69a1dd0f3d5a3cad34a4 HEAD_REF master ) -- cgit v1.2.3 From 3338ab613cf44f336e3d6a78bd06d5c12094d921 Mon Sep 17 00:00:00 2001 From: Squareys Date: Wed, 2 May 2018 12:17:57 +0200 Subject: [magnum,-plugins] Also install headers for dynamically built plugins While before there was no use for linking the plugins directly or using them as libraries in some other way when built dynamically, there now are intra-dependencies between plugins which to be detected, require the headers to be installed. Additionally, the folders lib/magnum and debug/lib/magnum-d are no longer empty, as we put the plugin deploy scripts there. Removing them is therefore superfluous. (Prepares upcoming release/head build) Signed-off-by: Squareys --- ports/magnum-plugins/portfile.cmake | 13 +++---------- ports/magnum/portfile.cmake | 5 ----- 2 files changed, 3 insertions(+), 15 deletions(-) diff --git a/ports/magnum-plugins/portfile.cmake b/ports/magnum-plugins/portfile.cmake index bedf9e395..acbd70861 100644 --- a/ports/magnum-plugins/portfile.cmake +++ b/ports/magnum-plugins/portfile.cmake @@ -73,16 +73,9 @@ if(VCPKG_LIBRARY_LINKAGE STREQUAL static) file(COPY ${LIB_TO_MOVE_DBG} DESTINATION ${CURRENT_PACKAGES_DIR}/debug/lib) file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/lib/magnum) else() - # remove headers and libs for plugins - file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/include) - file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/lib) - file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/lib) - # hint vcpkg - set(VCPKG_POLICY_EMPTY_INCLUDE_FOLDER enabled) - set(VCPKG_POLICY_DLLS_WITHOUT_LIBS enabled) - file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/include/MagnumPlugins) - file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/lib/magnum) - file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/lib/magnum-d) + set(VCPKG_POLICY_EMPTY_INCLUDE_FOLDER enabled) + file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/lib/magnum) + file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/lib/magnum-d) endif() # Handle copyright diff --git a/ports/magnum/portfile.cmake b/ports/magnum/portfile.cmake index af22fbb60..dece1caa9 100644 --- a/ports/magnum/portfile.cmake +++ b/ports/magnum/portfile.cmake @@ -90,11 +90,6 @@ if(VCPKG_LIBRARY_LINKAGE STREQUAL static) file(COPY ${LIB_TO_MOVE_DBG} DESTINATION ${CURRENT_PACKAGES_DIR}/debug/lib) file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/lib/magnum) else() - # remove headers and libs for plugins - file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/include/MagnumPlugins) - file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/lib/magnum) - file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/lib/magnum-d) - file(COPY ${CMAKE_CURRENT_LIST_DIR}/magnumdeploy.ps1 DESTINATION ${CURRENT_PACKAGES_DIR}/bin/magnum) file(COPY ${CMAKE_CURRENT_LIST_DIR}/magnumdeploy.ps1 DESTINATION ${CURRENT_PACKAGES_DIR}/debug/bin/magnum-d) endif() -- cgit v1.2.3 From eee593968968f479987452535d9508bc38451fb5 Mon Sep 17 00:00:00 2001 From: Squareys Date: Wed, 2 May 2018 12:21:02 +0200 Subject: [magnum,-plugins,-integration,-extras] Update to v2018.04 Signed-off-by: Squareys --- ports/magnum-extras/CONTROL | 18 +++++++++--------- ports/magnum-extras/portfile.cmake | 4 ++-- ports/magnum-integration/CONTROL | 2 +- ports/magnum-integration/portfile.cmake | 4 ++-- ports/magnum-plugins/CONTROL | 31 +++++++++---------------------- ports/magnum-plugins/portfile.cmake | 27 ++++++++++++++------------- ports/magnum/CONTROL | 22 ++++++++++------------ ports/magnum/portfile.cmake | 4 ++-- 8 files changed, 49 insertions(+), 63 deletions(-) diff --git a/ports/magnum-extras/CONTROL b/ports/magnum-extras/CONTROL index d0f9f32d0..752f7333b 100644 --- a/ports/magnum-extras/CONTROL +++ b/ports/magnum-extras/CONTROL @@ -1,9 +1,9 @@ -Source: magnum-extras -Version: 2018.02-2 -Build-Depends: magnum -Description: Extras for magnum, C++11/C++14 graphics middleware for games and data visualization http://magnum.graphics/ -Default-Features: - -Feature: ui -Description: Ui library -Build-Depends: corrade[interconnect], magnum[text] +Source: magnum-extras +Version: 2018.04-1 +Build-Depends: magnum +Description: Extras for magnum, C++11/C++14 graphics middleware for games and data visualization http://magnum.graphics/ +Default-Features: + +Feature: ui +Description: Ui library +Build-Depends: corrade[interconnect], magnum[text] diff --git a/ports/magnum-extras/portfile.cmake b/ports/magnum-extras/portfile.cmake index d97508497..61aa619cd 100644 --- a/ports/magnum-extras/portfile.cmake +++ b/ports/magnum-extras/portfile.cmake @@ -2,8 +2,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO mosra/magnum-extras - REF v2018.02 - SHA512 62c0832d19a36e0f89ffcd958356130c81f577b1091a9232d43307868caf51a1fd186c4aa196bd456d3c37cb887c9802d80eb0b332893bafa812298dbc39d7b7 + REF v2018.04 + SHA512 2c933d0cad6f0b6580a84dba22bfdadf120a302246cab404a99749e0ba7bb0d799ee606ca43cc1c39f85ae37a00dcc7374b9fd05eb2bb07945c9371a9c8a8492 HEAD_REF master ) diff --git a/ports/magnum-integration/CONTROL b/ports/magnum-integration/CONTROL index a791e5718..a7fbebb5b 100644 --- a/ports/magnum-integration/CONTROL +++ b/ports/magnum-integration/CONTROL @@ -1,5 +1,5 @@ Source: magnum-integration -Version: 2018.02-1 +Version: 2018.04-1 Build-Depends: magnum Description: Integrations for magnum, C++11/C++14 graphics middleware for games and data visualization http://magnum.graphics/ Default-Features: diff --git a/ports/magnum-integration/portfile.cmake b/ports/magnum-integration/portfile.cmake index da9c393b7..4790d07d5 100644 --- a/ports/magnum-integration/portfile.cmake +++ b/ports/magnum-integration/portfile.cmake @@ -2,8 +2,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO mosra/magnum-integration - REF v2018.02 - SHA512 b2db442d5e29c117ee30ee2c37f5087c3d360158a52eb6bc19e5c1a0388a0ec1338c53e3fdad618bb6f4aba5d88fe10d20bb1539e5f21a309b8f06f2e195279c + REF v2018.04 + SHA512 ef22309dea452de8cf63d62f4b99f3e7b5b12b3580455e8fc1d53eabd921e24ec3824ce238a2b74cf0b6fd137e238b67c6b4653e750072b1105c6571e352d9fe HEAD_REF master ) diff --git a/ports/magnum-plugins/CONTROL b/ports/magnum-plugins/CONTROL index 98e7e606d..9722245f6 100644 --- a/ports/magnum-plugins/CONTROL +++ b/ports/magnum-plugins/CONTROL @@ -1,28 +1,15 @@ Source: magnum-plugins -Version: 2018.02-2 +Version: 2018.04-1 Build-Depends: magnum Description: Plugins for magnum, C++11/C++14 graphics middleware for games and data visualization http://magnum.graphics/ -Default-Features: anyimageimporter, anysceneimporter, anyimageconverter, ddsimporter, miniexrimageconverter, opengeximporter, stanfordimporter, stbimageconverter, stbimageimporter - -Feature: anyimageimporter -Description: AnyImageImporter plugin -Build-Depends: magnum[trade] - -Feature: anyaudioimporter -Description: AnyAudioImporter plugin -Build-Depends: magnum[audio] - -Feature: anyimageconverter -Description: AnyImageConverter plugin -Build-Depends: magnum[trade] - -Feature: anysceneimporter -Description: AnySceneImporter plugin -Build-Depends: magnum[trade] +Default-Features: ddsimporter, miniexrimageconverter, opengeximporter, stanfordimporter, stbimageconverter, stbimageimporter Feature: assimpimporter Description: AssimpImporter plugin -Build-Depends: assimp, magnum-plugins[anyimageimporter], magnum[anyimageimporter], magnum[trade] +Build-Depends: assimp, magnum[anyimageimporter], magnum[trade] + +Feature: openddl +Description: OpenDdl library Feature: ddsimporter Description: DdsImporter plugin @@ -58,7 +45,7 @@ Build-Depends: magnum[trade] Feature: opengeximporter Description: OpenGexImporter plugin -Build-Depends: magnum-plugins[anyimageimporter], magnum[anyimageimporter], magnum[trade] +Build-Depends: magnum[anyimageimporter], magnum[trade], magnum-plugins[openddl] Feature: pngimageconverter Description: PngImageConverter plugin @@ -89,5 +76,5 @@ Description: StbVorbisAudioImporter plugin Build-Depends: magnum[audio] Feature: tinygltfimporter -Description: (Upcoming) TinyGltfImporter plugin -Build-Depends: magnum-plugins[anyimageimporter], magnum[anyimageimporter], magnum-plugins[stbimageimporter], magnum[trade] +Description: TinyGltfImporter plugin +Build-Depends: magnum[anyimageimporter], magnum-plugins[stbimageimporter], magnum[trade] diff --git a/ports/magnum-plugins/portfile.cmake b/ports/magnum-plugins/portfile.cmake index acbd70861..54ea7659c 100644 --- a/ports/magnum-plugins/portfile.cmake +++ b/ports/magnum-plugins/portfile.cmake @@ -2,8 +2,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO mosra/magnum-plugins - REF v2018.02 - SHA512 650d3ec26b3c72aa98ffa242b072e382445de49d4849042faf5dac800d5e4cce223cac3fa1cc079fcb230632730af1d90ac7d347d152a1f31d224732499e96b4 + REF v2018.04 + SHA512 0b8ae1488e210d111826532299d1e29c5eba32c75f7c210caff088a9a57459b6354474c7a53fccd0c78553d67d79bf041d471b5822c59cb2c9612126cf3e49ef HEAD_REF master ) @@ -53,8 +53,9 @@ file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include ${CURRENT_PACKAGES_DIR}/debug/share) -# Clean up empty directories -if(NOT FEATURES) +# Clean up empty directories, if not building anything. +# FEATURES may only contain "core", but that does not build anything. +if(NOT FEATURES OR FEATURES STREQUAL "core") file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/bin ${CURRENT_PACKAGES_DIR}/lib @@ -63,15 +64,15 @@ if(NOT FEATURES) endif() if(VCPKG_LIBRARY_LINKAGE STREQUAL static) - file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/bin) - file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/bin) - # move plugin libs to conventional place - file(GLOB_RECURSE LIB_TO_MOVE ${CURRENT_PACKAGES_DIR}/lib/magnum/*) - file(COPY ${LIB_TO_MOVE} DESTINATION ${CURRENT_PACKAGES_DIR}/lib) - file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/lib/magnum) - file(GLOB_RECURSE LIB_TO_MOVE_DBG ${CURRENT_PACKAGES_DIR}/debug/lib/magnum/*) - file(COPY ${LIB_TO_MOVE_DBG} DESTINATION ${CURRENT_PACKAGES_DIR}/debug/lib) - file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/lib/magnum) + file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/bin) + file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/bin) + # move plugin libs to conventional place + file(GLOB_RECURSE LIB_TO_MOVE ${CURRENT_PACKAGES_DIR}/lib/magnum/*) + file(COPY ${LIB_TO_MOVE} DESTINATION ${CURRENT_PACKAGES_DIR}/lib) + file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/lib/magnum) + file(GLOB_RECURSE LIB_TO_MOVE_DBG ${CURRENT_PACKAGES_DIR}/debug/lib/magnum/*) + file(COPY ${LIB_TO_MOVE_DBG} DESTINATION ${CURRENT_PACKAGES_DIR}/debug/lib) + file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/lib/magnum) else() set(VCPKG_POLICY_EMPTY_INCLUDE_FOLDER enabled) file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/lib/magnum) diff --git a/ports/magnum/CONTROL b/ports/magnum/CONTROL index 6f3aebadc..c34339938 100644 --- a/ports/magnum/CONTROL +++ b/ports/magnum/CONTROL @@ -1,5 +1,5 @@ Source: magnum -Version: 2018.02-2 +Version: 2018.04-1 Build-Depends: corrade[pluginmanager], corrade[utility] Description: C++11/C++14 graphics middleware for games and data visualization http://magnum.graphics/ Default-Features: anyimageimporter, anyaudioimporter, anyimageconverter, anysceneimporter, debugtools, gl, meshtools, primitives, scenegraph, shaders, shapes, text, texturetools, trade, sdl2application, windowlesswglapplication @@ -9,19 +9,19 @@ Description: magnum-al-info utility Build-Depends: magnum[audio] Feature: anyimageimporter -Description: (Upcoming) AnyImageImporter plugin +Description: AnyImageImporter plugin Build-Depends: magnum[trade] Feature: anyaudioimporter -Description: (Upcoming) AnyAudioImporter plugin +Description: AnyAudioImporter plugin Build-Depends: magnum[audio] Feature: anyimageconverter -Description: (Upcoming) AnyImageConverter plugin +Description: AnyImageConverter plugin Build-Depends: magnum[trade] Feature: anysceneimporter -Description: (Upcoming) AnySceneImporter plugin +Description: AnySceneImporter plugin Build-Depends: magnum[trade] Feature: audio @@ -40,10 +40,10 @@ Description: magnum-fontconverter utility Build-Depends: magnum[text], magnum[gl] Feature: gl -Description: (Upcoming) GL library +Description: GL library Feature: gl-info -Description: (Upcoming) gl-info utility +Description: gl-info utility Build-Depends: magnum[gl] Feature: glfwapplication @@ -58,9 +58,6 @@ Feature: imageconverter Description: magnum-imageconverter utility Build-Depends: magnum[trade] -Feature: magnuminfo -Description: magnum-info utility - Feature: magnumfont Description: MagnumFont plugin Build-Depends: magnum[text] @@ -101,10 +98,11 @@ Description: SceneGraph library Feature: shaders Description: Shaders library +Build-Depends: magnum[gl] Feature: text Description: Text library -Build-Depends: magnum[texturetools] +Build-Depends: magnum[texturetools], magnum[gl] Feature: texturetools Description: TextureTools library @@ -114,7 +112,7 @@ Description: TgaImporter plugin Build-Depends: magnum[trade] Feature: trade -Description: (Upcoming) Trade library +Description: Trade library Feature: wavaudioimporter Description: WavAudioImporter plugin diff --git a/ports/magnum/portfile.cmake b/ports/magnum/portfile.cmake index dece1caa9..e6b501e5a 100644 --- a/ports/magnum/portfile.cmake +++ b/ports/magnum/portfile.cmake @@ -2,8 +2,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO mosra/magnum - REF v2018.02 - SHA512 aeb0cab91ae0a7cca79c15ce98d9b2f8d46f5bc11bb90718e59188bf233154fb51668e0241112b65103f40e675736d74c86a2e5ccffcb698780ccedb1b3fb8bd + REF v2018.04 + SHA512 6ad50e782c8cb10157cf969a571f8c0c0c91161de60ac25cf86eda09106f4de73168618a1a5fe0931c3fd293c718911e14d610bd4f86fe3e073620bd7619a9eb HEAD_REF master ) -- cgit v1.2.3 From d0aeb24a44e7446f834055e06ec7c416b877c425 Mon Sep 17 00:00:00 2001 From: Nicolai Grodzitski Date: Thu, 3 May 2018 08:29:46 +0300 Subject: Add RESTinio port. (#3410) * Make restinio port. First implementation (find-module files are not installed yet). * Add current status of a port files (not working). * Prepare restinio port files. * Change restinio archive URL. * [restinio] Slim portfile --- ports/restinio/CONTROL | 4 ++++ ports/restinio/portfile.cmake | 25 +++++++++++++++++++++++++ 2 files changed, 29 insertions(+) create mode 100644 ports/restinio/CONTROL create mode 100644 ports/restinio/portfile.cmake diff --git a/ports/restinio/CONTROL b/ports/restinio/CONTROL new file mode 100644 index 000000000..516de716a --- /dev/null +++ b/ports/restinio/CONTROL @@ -0,0 +1,4 @@ +Source: restinio +Version: 0.4.5 +Description: A header-only C++14 library that gives you an embedded HTTP/Websocket server targeted primarily for asynchronous processing of HTTP-requests. +Build-Depends: asio, fmt, http-parser diff --git a/ports/restinio/portfile.cmake b/ports/restinio/portfile.cmake new file mode 100644 index 000000000..ba25481f6 --- /dev/null +++ b/ports/restinio/portfile.cmake @@ -0,0 +1,25 @@ +include(vcpkg_common_functions) + +set(SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src/restinio-0.4.5-vcpkg) +vcpkg_download_distfile(ARCHIVE + URLS "https://bitbucket.org/sobjectizerteam/restinio-0.4/downloads/restinio-0.4.5-vcpkg.zip" + FILENAME "restinio-0.4.5-vcpkg.zip" + SHA512 f5f135f761f29b2d4a9641ac1b37bb57bb6213df39b92ad349f8b73440142b2bd2a6093ee4c222417f61303ae46e960fb77b7a0c34d7e3924f3df1a50036b2da +) + +vcpkg_extract_source_archive(${ARCHIVE}) + +vcpkg_configure_cmake( + SOURCE_PATH ${SOURCE_PATH}/vcpkg + PREFER_NINJA +) + +vcpkg_install_cmake() + +vcpkg_fixup_cmake_targets(CONFIG_PATH "lib/cmake/restinio") + +file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/lib ${CURRENT_PACKAGES_DIR}/debug) + +# Handle copyright +file(COPY ${SOURCE_PATH}/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/restinio) +file(RENAME ${CURRENT_PACKAGES_DIR}/share/restinio/LICENSE ${CURRENT_PACKAGES_DIR}/share/restinio/copyright) -- cgit v1.2.3 From e011ec299313c98ba183acd051492278601bf411 Mon Sep 17 00:00:00 2001 From: Seo Sanghyeon Date: Thu, 3 May 2018 14:31:21 +0900 Subject: Add cmark port (#3406) * Add cmark port * [cmark] Only build one of static/dynamic --- ports/cmark/CONTROL | 3 +++ ports/cmark/portfile.cmake | 40 ++++++++++++++++++++++++++++++++++++++++ 2 files changed, 43 insertions(+) create mode 100644 ports/cmark/CONTROL create mode 100644 ports/cmark/portfile.cmake diff --git a/ports/cmark/CONTROL b/ports/cmark/CONTROL new file mode 100644 index 000000000..4211c9bbc --- /dev/null +++ b/ports/cmark/CONTROL @@ -0,0 +1,3 @@ +Source: cmark +Version: 0.28.3-1 +Description: CommonMark parsing and rendering library diff --git a/ports/cmark/portfile.cmake b/ports/cmark/portfile.cmake new file mode 100644 index 000000000..b452a4488 --- /dev/null +++ b/ports/cmark/portfile.cmake @@ -0,0 +1,40 @@ +include(vcpkg_common_functions) + +if(VCPKG_LIBRARY_LINKAGE STREQUAL "static") + # Note: fails due to missing cmark_export.h -- fix should be to always generate the correct export header. + message(FATAL_ERROR "cmark does not currently support static library linkage") +endif() + +vcpkg_from_github( + OUT_SOURCE_PATH SOURCE_PATH + REPO commonmark/cmark + REF 0.28.3 + SHA512 409105a3228a8ae22ba6acf95cd99bc9a2c20f8603aa0e803a33172eb6ef53f80f8f0262d2258b77f9fd6e1f2e9017a6c906b88f761e053c09ef88c9ffab7d29 + HEAD_REF master +) + +string(COMPARE EQUAL "${VCPKG_LIBRARY_LINKAGE}" "static" CMARK_STATIC) +string(COMPARE EQUAL "${VCPKG_LIBRARY_LINKAGE}" "dynamic" CMARK_SHARED) + +vcpkg_configure_cmake( + SOURCE_PATH ${SOURCE_PATH} + PREFER_NINJA + OPTIONS + -DCMARK_TESTS=OFF + -DCMARK_SHARED=${CMARK_SHARED} + -DCMARK_STATIC=${CMARK_STATIC} +) + +vcpkg_install_cmake() + +vcpkg_fixup_cmake_targets(CONFIG_PATH lib/cmake) + +file(INSTALL ${SOURCE_PATH}/COPYING DESTINATION ${CURRENT_PACKAGES_DIR}/share/cmark RENAME copyright) + +file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include ${CURRENT_PACKAGES_DIR}/debug/share) + +if(VCPKG_LIBRARY_LINKAGE STREQUAL "static") + file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/bin ${CURRENT_PACKAGES_DIR}/debug/bin) +else() + file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/bin/cmark.exe ${CURRENT_PACKAGES_DIR}/debug/bin/cmark.exe) +endif() -- cgit v1.2.3 From 68447ced17de6afff3bb1240c5f51077a34e777f Mon Sep 17 00:00:00 2001 From: yyzybb537 <289633152@qq.com> Date: Thu, 3 May 2018 13:36:19 +0800 Subject: Add libgo library packge (#3394) * Add libgo library packge * [libgo] Fix Windows and adjust cmake usage information --- ports/libgo/CONTROL | 3 ++ ports/libgo/cmake.patch | 38 ++++++++++++++++++++++++++ ports/libgo/libgo-config.cmake | 25 +++++++++++++++++ ports/libgo/portfile.cmake | 62 ++++++++++++++++++++++++++++++++++++++++++ ports/libgo/usage | 5 ++++ 5 files changed, 133 insertions(+) create mode 100644 ports/libgo/CONTROL create mode 100644 ports/libgo/cmake.patch create mode 100644 ports/libgo/libgo-config.cmake create mode 100644 ports/libgo/portfile.cmake create mode 100644 ports/libgo/usage diff --git a/ports/libgo/CONTROL b/ports/libgo/CONTROL new file mode 100644 index 000000000..5764d77fb --- /dev/null +++ b/ports/libgo/CONTROL @@ -0,0 +1,3 @@ +Source: libgo +Version: 2.7 +Description: The best stackful coroutine by c++11. diff --git a/ports/libgo/cmake.patch b/ports/libgo/cmake.patch new file mode 100644 index 000000000..f6fd5fef8 --- /dev/null +++ b/ports/libgo/cmake.patch @@ -0,0 +1,38 @@ +diff --git a/CMakeLists.txt b/CMakeLists.txt +index 0d291e4..0f6cc38 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -158,7 +158,7 @@ if (UNIX) + set(CMAKE_CXX_FLAGS "-std=c++11 -fPIC -Wall -pthread ${CMAKE_CXX_FLAGS}") + set(CMAKE_CXX_FLAGS_DEBUG "-g -pg ${CMAKE_CXX_FLAGS} -Werror") + set(CMAKE_CXX_FLAGS_RELEASE "-g -O3 ${CMAKE_CXX_FLAGS} -Werror") +-else () ++elseif (NOT DISABLE_ADJUST_COMMAND_LINE_FLAGS) + if (NOT DISABLE_DYNAMIC_LIB) + set(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} /MDd") + set(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} /MD") +@@ -180,7 +180,7 @@ set(STATIC_T "libgo_static") + add_library("${STATIC_T}" STATIC ${CO_SRC_LIST}) + set_target_properties("${STATIC_T}" PROPERTIES OUTPUT_NAME "${TARGET}") + +-if (UNIX) ++if (UNIX OR FORCE_UNIX_TARGETS) + add_subdirectory(${PROJECT_SOURCE_DIR}/libgo/main) + + if (NOT DISABLE_DYNAMIC_LIB) +@@ -201,9 +201,15 @@ if (UNIX) + PATTERN "ctx_boost_coroutine" EXCLUDE + PATTERN "ctx_ucontext" EXCLUDE + PATTERN "*.h") ++ if(UNIX) + install(DIRECTORY ${PROJECT_SOURCE_DIR}/libgo/linux/ DESTINATION "include/libgo" FILES_MATCHING PATTERN "*.h") ++ else() ++ install(DIRECTORY ${PROJECT_SOURCE_DIR}/libgo/windows/ DESTINATION "include/libgo" FILES_MATCHING PATTERN "*.h") ++ endif() ++ if(NOT DISABLE_SYSTEMWIDE) + file(WRITE ${PROJECT_SOURCE_DIR}/tools/libgo.conf "${CMAKE_INSTALL_PREFIX}/lib") + install(FILES ${PROJECT_SOURCE_DIR}/tools/libgo.conf DESTINATION "/etc/ld.so.conf.d") ++ endif() + if (DEPEND_BOOST) + install(DIRECTORY ${PROJECT_SOURCE_DIR}/libgo/ctx_boost_coroutine/ DESTINATION "include/libgo/ctx_boost_coroutine" FILES_MATCHING PATTERN "*.h") + install(DIRECTORY ${PROJECT_SOURCE_DIR}/libgo/ctx_boost_context/ DESTINATION "include/libgo/ctx_boost_context" FILES_MATCHING PATTERN "*.h") diff --git a/ports/libgo/libgo-config.cmake b/ports/libgo/libgo-config.cmake new file mode 100644 index 000000000..fd52f8dd3 --- /dev/null +++ b/ports/libgo/libgo-config.cmake @@ -0,0 +1,25 @@ +get_filename_component(_DIR "${CMAKE_CURRENT_LIST_FILE}" PATH) + +if(NOT LIBGO_FIND_COMPONENTS) + set(LIBGO_FIND_COMPONENTS libgo libgo) + if(LIBGO_FIND_REQUIRED) + set(LIBGO_FIND_REQUIRED_libgo TRUE) + endif() + + set(LIBGO_FOUND TRUE) +endif() + +set(LIBGO_INCLUDE_DIRS ${_DIR}/../../include) +set(LIBGO_LIBRARIES) +if (EXISTS ${_DIR}/../../lib/liblibgo.a) + list(APPEND LIBGO_LIBRARIES optimized ${_DIR}/../../lib/liblibgo.a) +endif() +if (EXISTS ${_DIR}/../../debug/lib/liblibgo.a) + list(APPEND LIBGO_LIBRARIES debug ${_DIR}/../../debug/lib/liblibgo.a) +endif() +if (EXISTS ${_DIR}/../../lib/libgo.lib) + list(APPEND LIBGO_LIBRARIES optimized ${_DIR}/../../lib/libgo.lib) +endif() +if (EXISTS ${_DIR}/../../debug/lib/libgo.lib) + list(APPEND LIBGO_LIBRARIES debug ${_DIR}/../../debug/lib/libgo.lib) +endif() diff --git a/ports/libgo/portfile.cmake b/ports/libgo/portfile.cmake new file mode 100644 index 000000000..6807aabfb --- /dev/null +++ b/ports/libgo/portfile.cmake @@ -0,0 +1,62 @@ +include(vcpkg_common_functions) + +if(VCPKG_LIBRARY_LINKAGE STREQUAL "dynamic") + message("libgo currently only supports static linkage") + set(VCPKG_LIBRARY_LINKAGE static) +endif() + +vcpkg_from_github( + OUT_SOURCE_PATH SOURCE_PATH + REPO yyzybb537/libgo + REF v2.7 + SHA512 eb83b87cf06464be8fc9632b69c14fd6e0612bedbf5b2e04c0a9c178d554ece85e3673b4e6076d7d8801d308d5975f6347662f2c2c4682cc8583b3096cced574 + HEAD_REF master + PATCHES ${CMAKE_CURRENT_LIST_DIR}/cmake.patch +) + +vcpkg_download_distfile(ARCHIVE + URLS "https://github.com/XBased/xhook/archive/e18c450541892212ca4f11dc91fa269fabf9646f.tar.gz" + FILENAME "xhook-e18c450541892212ca4f11dc91fa269fabf9646f.tar.gz" + SHA512 1bcf320f50cff13d92013a9f0ab5c818c2b6b63e9c1ac18c5dd69189e448d7a848f1678389d8b2c08c65f907afb3909e743f6c593d9cfb21e2bb67d5c294a166 +) + +file(REMOVE_RECURSE ${SOURCE_PATH}/third_party) + +vcpkg_extract_source_archive(${ARCHIVE} ${SOURCE_PATH}/third_party) +file(RENAME ${SOURCE_PATH}/third_party/xhook-e18c450541892212ca4f11dc91fa269fabf9646f ${SOURCE_PATH}/third_party/xhook) + +vcpkg_configure_cmake( + SOURCE_PATH ${SOURCE_PATH} + PREFER_NINJA + OPTIONS + -DDISABLE_ADJUST_COMMAND_LINE_FLAGS=ON + -DDISABLE_DYNAMIC_LIB=ON + -DFORCE_UNIX_TARGETS=ON + -DDISABLE_SYSTEMWIDE=ON +) + +vcpkg_install_cmake() + +# remove duplicated include files +file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include) +file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/include/libgo/disable_hook) + +file(GLOB REL_MAIN ${CURRENT_PACKAGES_DIR}/lib/libgo_main.lib ${CURRENT_PACKAGES_DIR}/lib/liblibgo_main.a) +if(REL_MAIN) + file(MAKE_DIRECTORY ${CURRENT_PACKAGES_DIR}/lib/manual-link) + file(COPY ${REL_MAIN} DESTINATION ${CURRENT_PACKAGES_DIR}/lib/manual-link) + file(REMOVE ${REL_MAIN}) +endif() + +file(GLOB DBG_MAIN ${CURRENT_PACKAGES_DIR}/debug/lib/libgo_main.lib ${CURRENT_PACKAGES_DIR}/debug/lib/liblibgo_main.a) +if(DBG_MAIN) + file(MAKE_DIRECTORY ${CURRENT_PACKAGES_DIR}/debug/lib/manual-link) + file(COPY ${DBG_MAIN} DESTINATION ${CURRENT_PACKAGES_DIR}/debug/lib/manual-link) + file(REMOVE ${DBG_MAIN}) +endif() + +# Handle copyright +file(INSTALL ${SOURCE_PATH}/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/libgo RENAME copyright) +file(INSTALL ${CURRENT_PORT_DIR}/libgo-config.cmake DESTINATION ${CURRENT_PACKAGES_DIR}/share/libgo) + +file(COPY ${CMAKE_CURRENT_LIST_DIR}/usage DESTINATION ${CURRENT_PACKAGES_DIR}/share/${PORT}) diff --git a/ports/libgo/usage b/ports/libgo/usage new file mode 100644 index 000000000..a8f072947 --- /dev/null +++ b/ports/libgo/usage @@ -0,0 +1,5 @@ +The package libgo provides CMake integration: + + find_package(libgo REQUIRED) + target_include_directories(main PRIVATE ${LIBGO_INCLUDE_DIRS}) + target_link_libraries(main PRIVATE ${LIBGO_LIBRARIES}) -- cgit v1.2.3 From 6ec3a486332bd50500decee0aeaa166fa37ba8d2 Mon Sep 17 00:00:00 2001 From: Jay Carlson Date: Thu, 3 May 2018 00:38:08 -0500 Subject: [treehopper] Add package for Treehopper C++ API (#3330) * Add package definition for Treehopper's C++ API * Bump to 1.11.2 * Bump to 1.11.3 * [treehopper] Fix cmake targets. Block non-dynamic usage. --- ports/treehopper/CONTROL | 3 +++ ports/treehopper/portfile.cmake | 32 ++++++++++++++++++++++++++++++++ 2 files changed, 35 insertions(+) create mode 100644 ports/treehopper/CONTROL create mode 100644 ports/treehopper/portfile.cmake diff --git a/ports/treehopper/CONTROL b/ports/treehopper/CONTROL new file mode 100644 index 000000000..336a42250 --- /dev/null +++ b/ports/treehopper/CONTROL @@ -0,0 +1,3 @@ +Source: treehopper +Version: 1.11.3-1 +Description: Treehopper connects the physical world to your computer, tablet, or smartphone. For more information, visit https://treehopper.io. diff --git a/ports/treehopper/portfile.cmake b/ports/treehopper/portfile.cmake new file mode 100644 index 000000000..fd90f0392 --- /dev/null +++ b/ports/treehopper/portfile.cmake @@ -0,0 +1,32 @@ +include(vcpkg_common_functions) + +if(VCPKG_LIBRARY_LINKAGE STREQUAL "static") + message("treehopper only supports dynamic library linkage") + set(VCPKG_LIBRARY_LINKAGE dynamic) +endif() +if(VCPKG_CRT_LINKAGE STREQUAL "static") + message(FATAL_ERROR "treehopper does not support static crt linkage") +endif() + +vcpkg_from_github( + OUT_SOURCE_PATH SOURCE_PATH + REPO treehopper-electronics/treehopper-sdk + REF 1.11.3 + SHA512 65b748375b798787c8b59f9657151f340920c939c3f079105b9b78f4e3b775125598106c6dfa4feba111a64d30f007003a70110ac767802a7dd1127a25c9fb14 + HEAD_REF master) + +vcpkg_configure_cmake( + SOURCE_PATH ${SOURCE_PATH}/C++/API/ + PREFER_NINJA +) + +vcpkg_install_cmake() +vcpkg_copy_pdbs() + +vcpkg_fixup_cmake_targets(CONFIG_PATH share/treehopper) + +file(INSTALL ${SOURCE_PATH}/C++/API/inc/ DESTINATION ${CURRENT_PACKAGES_DIR}/include/Treehopper/) + +file(INSTALL ${SOURCE_PATH}/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/treehopper RENAME copyright) + +file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/share) \ No newline at end of file -- cgit v1.2.3 From 8f0ebdf8d561ef8402db44cd9abb2c912cff276d Mon Sep 17 00:00:00 2001 From: Robert Schumacher Date: Thu, 3 May 2018 15:03:35 -0700 Subject: [vcpkg] Remove utf16 usage from non-Windows --- toolsrc/include/vcpkg/base/strings.h | 2 ++ toolsrc/src/vcpkg.cpp | 4 +++- toolsrc/src/vcpkg/base/files.cpp | 7 ++++--- toolsrc/src/vcpkg/base/strings.cpp | 12 ++++-------- 4 files changed, 13 insertions(+), 12 deletions(-) diff --git a/toolsrc/include/vcpkg/base/strings.h b/toolsrc/include/vcpkg/base/strings.h index 4cc17bcf4..e165c69da 100644 --- a/toolsrc/include/vcpkg/base/strings.h +++ b/toolsrc/include/vcpkg/base/strings.h @@ -34,9 +34,11 @@ namespace vcpkg::Strings return details::format_internal(fmtstr, to_printf_arg(to_printf_arg(args))...); } +#if defined(_WIN32) std::wstring to_utf16(const CStringView& s); std::string to_utf8(const wchar_t* w); +#endif std::string escape_string(const CStringView& s, char char_to_escape, char escape_char); diff --git a/toolsrc/src/vcpkg.cpp b/toolsrc/src/vcpkg.cpp index 06c99e9a8..ac2eec876 100644 --- a/toolsrc/src/vcpkg.cpp +++ b/toolsrc/src/vcpkg.cpp @@ -70,7 +70,7 @@ static void inner(const VcpkgCmdArguments& args) fs::path vcpkg_root_dir; if (args.vcpkg_root_dir != nullptr) { - vcpkg_root_dir = fs::stdfs::absolute(Strings::to_utf16(*args.vcpkg_root_dir)); + vcpkg_root_dir = fs::stdfs::absolute(fs::u8path(*args.vcpkg_root_dir)); } else { @@ -94,6 +94,8 @@ static void inner(const VcpkgCmdArguments& args) Checks::check_exit(VCPKG_LINE_INFO, !vcpkg_root_dir.empty(), "Error: Could not detect vcpkg-root."); + Debug::println("Using vcpkg-root: %s", vcpkg_root_dir.u8string()); + auto default_vs_path = System::get_environment_variable("VCPKG_DEFAULT_VS_PATH").value_or(""); const Expected expected_paths = VcpkgPaths::create(vcpkg_root_dir, default_vs_path); diff --git a/toolsrc/src/vcpkg/base/files.cpp b/toolsrc/src/vcpkg/base/files.cpp index 1723b467e..0542af1e7 100644 --- a/toolsrc/src/vcpkg/base/files.cpp +++ b/toolsrc/src/vcpkg/base/files.cpp @@ -56,16 +56,17 @@ namespace vcpkg::Files const std::string& filename) const override { fs::path current_dir = starting_dir; - for (; !current_dir.empty(); current_dir = current_dir.parent_path()) + fs::path unix_root = "/"; + for (; !current_dir.empty() && current_dir != unix_root; current_dir = current_dir.parent_path()) { const fs::path candidate = current_dir / filename; if (exists(candidate)) { - break; + return current_dir; } } - return current_dir; + return fs::path(); } virtual std::vector get_files_recursive(const fs::path& dir) const override diff --git a/toolsrc/src/vcpkg/base/strings.cpp b/toolsrc/src/vcpkg/base/strings.cpp index fbc33ca42..48dc5ed09 100644 --- a/toolsrc/src/vcpkg/base/strings.cpp +++ b/toolsrc/src/vcpkg/base/strings.cpp @@ -49,33 +49,29 @@ namespace vcpkg::Strings::details namespace vcpkg::Strings { +#if defined(_WIN32) std::wstring to_utf16(const CStringView& s) { -#if defined(_WIN32) std::wstring output; const size_t size = MultiByteToWideChar(CP_UTF8, 0, s.c_str(), -1, nullptr, 0); if (size == 0) return output; output.resize(size - 1); MultiByteToWideChar(CP_UTF8, 0, s.c_str(), -1, output.data(), static_cast(size) - 1); return output; -#else - Checks::unreachable(VCPKG_LINE_INFO); -#endif } +#endif +#if defined(_WIN32) std::string to_utf8(const wchar_t* w) { -#if defined(_WIN32) std::string output; const size_t size = WideCharToMultiByte(CP_UTF8, 0, w, -1, nullptr, 0, nullptr, nullptr); if (size == 0) return output; output.resize(size - 1); WideCharToMultiByte(CP_UTF8, 0, w, -1, output.data(), static_cast(size) - 1, nullptr, nullptr); return output; -#else - Checks::unreachable(VCPKG_LINE_INFO); -#endif } +#endif std::string escape_string(const CStringView& s, char char_to_escape, char escape_char) { -- cgit v1.2.3 From 120f444af37f4b6e2cb4205b0ef5f8c6b97e8637 Mon Sep 17 00:00:00 2001 From: Robert Schumacher Date: Thu, 3 May 2018 15:51:02 -0700 Subject: [vcpkg] Add missing debug statement and fix libc++ Filesystem TS issue. --- toolsrc/src/vcpkg/base/system.cpp | 5 ++++- toolsrc/src/vcpkg/build.cpp | 2 +- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/toolsrc/src/vcpkg/base/system.cpp b/toolsrc/src/vcpkg/base/system.cpp index d4210fe6d..95c9511f9 100644 --- a/toolsrc/src/vcpkg/base/system.cpp +++ b/toolsrc/src/vcpkg/base/system.cpp @@ -274,8 +274,11 @@ namespace vcpkg::System Debug::println("CreateProcessW() returned %lu", exit_code); return static_cast(exit_code); #else + Debug::println("system(%s)", cmd_line.c_str()); fflush(nullptr); - return system(cmd_line.c_str()); + int rc = system(cmd_line.c_str()); + Debug::println("system() returned %d", rc); + return rc; #endif } diff --git a/toolsrc/src/vcpkg/build.cpp b/toolsrc/src/vcpkg/build.cpp index 7a9d35667..3616348d6 100644 --- a/toolsrc/src/vcpkg/build.cpp +++ b/toolsrc/src/vcpkg/build.cpp @@ -357,7 +357,7 @@ namespace vcpkg::Build { {"CMD", "BUILD"}, {"PORT", config.scf.core_paragraph->name}, - {"CURRENT_PORT_DIR", config.port_dir / "/."}, + {"CURRENT_PORT_DIR", config.port_dir}, {"TARGET_TRIPLET", spec.triplet().canonical_name()}, {"VCPKG_PLATFORM_TOOLSET", toolset.version.c_str()}, {"VCPKG_USE_HEAD_VERSION", -- cgit v1.2.3 From 9265fe76bf3ed53db03eb31cad9be1c7594bfcb3 Mon Sep 17 00:00:00 2001 From: Alexander Karatarakis Date: Fri, 4 May 2018 16:49:07 -0700 Subject: unix_root -> UNIX_ROOT static const --- toolsrc/src/vcpkg/base/files.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/toolsrc/src/vcpkg/base/files.cpp b/toolsrc/src/vcpkg/base/files.cpp index 0542af1e7..3d96e834b 100644 --- a/toolsrc/src/vcpkg/base/files.cpp +++ b/toolsrc/src/vcpkg/base/files.cpp @@ -55,9 +55,9 @@ namespace vcpkg::Files virtual fs::path find_file_recursively_up(const fs::path& starting_dir, const std::string& filename) const override { + static const fs::path UNIX_ROOT = "/"; fs::path current_dir = starting_dir; - fs::path unix_root = "/"; - for (; !current_dir.empty() && current_dir != unix_root; current_dir = current_dir.parent_path()) + for (; !current_dir.empty() && current_dir != UNIX_ROOT; current_dir = current_dir.parent_path()) { const fs::path candidate = current_dir / filename; if (exists(candidate)) -- cgit v1.2.3 From ab58f531ccf6da9895502cb8ae7bd85b29823d1d Mon Sep 17 00:00:00 2001 From: Alexander Karatarakis Date: Fri, 4 May 2018 18:14:54 -0700 Subject: git for linux/osx version moved to vcpkgTools.xml --- scripts/vcpkgTools.xml | 12 ++++++++++++ toolsrc/src/vcpkg/commands.fetch.cpp | 18 ++++++++++-------- 2 files changed, 22 insertions(+), 8 deletions(-) diff --git a/scripts/vcpkgTools.xml b/scripts/vcpkgTools.xml index 1a2abae81..1f17102d2 100644 --- a/scripts/vcpkgTools.xml +++ b/scripts/vcpkgTools.xml @@ -28,6 +28,18 @@ a34575ab1b4f553e62535e38492904b512df4d6a837cf4abf205dbcdd05edf1eef450cc5b15a4f63f901424d5f3cd1f78b6b22437d0d4f8cd9ce4e42e82617b9 MinGit-2.17.0-32-bit.zip + + 2.7.4 + + + + + + 2.7.4 + + + + 2.4.1 vswhere.exe diff --git a/toolsrc/src/vcpkg/commands.fetch.cpp b/toolsrc/src/vcpkg/commands.fetch.cpp index 1e31e6bc4..a6cfec3f0 100644 --- a/toolsrc/src/vcpkg/commands.fetch.cpp +++ b/toolsrc/src/vcpkg/commands.fetch.cpp @@ -83,7 +83,8 @@ namespace vcpkg::Commands::Fetch right_delim, XML_PATH.generic_string()); - return *result.get(); + auto r = *result.get(); + return Strings::trim(std::move(r)); }; static const std::regex XML_VERSION_REGEX{R"###()###"}; @@ -255,8 +256,8 @@ namespace vcpkg::Commands::Fetch const std::string download_path_part = download_path.u8string() + ".part"; std::error_code ec; fs.remove(download_path_part, ec); - const auto code = System::cmd_execute(Strings::format( - R"(curl -L '%s' --create-dirs --output '%s')", url, download_path_part)); + const auto code = System::cmd_execute( + Strings::format(R"(curl -L '%s' --create-dirs --output '%s')", url, download_path_part)); Checks::check_exit(VCPKG_LINE_INFO, code == 0, "Could not download %s", url); verify_hash(paths, url, download_path_part, sha512); @@ -267,8 +268,13 @@ namespace vcpkg::Commands::Fetch static fs::path fetch_tool(const VcpkgPaths& paths, const std::string& tool_name, const ToolData& tool_data) { const std::array& version = tool_data.version; - const std::string version_as_string = Strings::format("%d.%d.%d", version[0], version[1], version[2]); + Checks::check_exit(VCPKG_LINE_INFO, + !tool_data.url.empty(), + "A suitable version of %s was not found (required v%s) and unable to automatically " + "download a portable one. Please install a newer version of git.", + tool_name, + version_as_string); System::println("A suitable version of %s was not found (required v%s). Downloading portable %s v%s...", tool_name, version_as_string, @@ -401,11 +407,7 @@ namespace vcpkg::Commands::Fetch static fs::path get_git_path(const VcpkgPaths& paths) { -#if defined(_WIN32) static const ToolData TOOL_DATA = parse_tool_data_from_xml(paths, "git"); -#else - static const ToolData TOOL_DATA = ToolData{{2, 7, 4}, ""}; -#endif static const std::string VERSION_CHECK_ARGUMENTS = "--version"; std::vector candidate_paths; -- cgit v1.2.3 From 44b894326246dfd6114cd70d6373a9253e0a604c Mon Sep 17 00:00:00 2001 From: Nicolai Grodzitski Date: Sun, 6 May 2018 02:42:06 +0300 Subject: Update RESTinio (#3423) * Make restinio port. First implementation (find-module files are not installed yet). * Add current status of a port files (not working). * Prepare restinio port files. * Change restinio archive URL. * [restinio] Slim portfile * Update RESTinio version. --- ports/restinio/CONTROL | 2 +- ports/restinio/portfile.cmake | 10 ++++++---- 2 files changed, 7 insertions(+), 5 deletions(-) diff --git a/ports/restinio/CONTROL b/ports/restinio/CONTROL index 516de716a..eed60e4c3 100644 --- a/ports/restinio/CONTROL +++ b/ports/restinio/CONTROL @@ -1,4 +1,4 @@ Source: restinio -Version: 0.4.5 +Version: 0.4.5.1 Description: A header-only C++14 library that gives you an embedded HTTP/Websocket server targeted primarily for asynchronous processing of HTTP-requests. Build-Depends: asio, fmt, http-parser diff --git a/ports/restinio/portfile.cmake b/ports/restinio/portfile.cmake index ba25481f6..b2c496dfb 100644 --- a/ports/restinio/portfile.cmake +++ b/ports/restinio/portfile.cmake @@ -1,10 +1,12 @@ include(vcpkg_common_functions) -set(SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src/restinio-0.4.5-vcpkg) +set(RESTINIO_VERSION 0.4.5.1) + +set(SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src/restinio-${RESTINIO_VERSION}-vcpkg) vcpkg_download_distfile(ARCHIVE - URLS "https://bitbucket.org/sobjectizerteam/restinio-0.4/downloads/restinio-0.4.5-vcpkg.zip" - FILENAME "restinio-0.4.5-vcpkg.zip" - SHA512 f5f135f761f29b2d4a9641ac1b37bb57bb6213df39b92ad349f8b73440142b2bd2a6093ee4c222417f61303ae46e960fb77b7a0c34d7e3924f3df1a50036b2da + URLS "https://bitbucket.org/sobjectizerteam/restinio-0.4/downloads/restinio-${RESTINIO_VERSION}-vcpkg.zip" + FILENAME "restinio-${RESTINIO_VERSION}-vcpkg.zip" + SHA512 198153f9b8d866c2aa57932720b31ff1f8e523d9640ad0c8becb911afed1fa12caa636847234cfc83d584a15bdc4b05fb98cbc4730af2520b453c5de468eb7fa ) vcpkg_extract_source_archive(${ARCHIVE}) -- cgit v1.2.3 From 541f2e2ea547e9223d9500992bbb3ebea085aee9 Mon Sep 17 00:00:00 2001 From: Erwan BERNARD Date: Sun, 6 May 2018 01:44:32 +0200 Subject: [inja] add inja (#3428) --- ports/inja/CONTROL | 4 ++++ ports/inja/portfile.cmake | 11 +++++++++++ 2 files changed, 15 insertions(+) create mode 100644 ports/inja/CONTROL create mode 100644 ports/inja/portfile.cmake diff --git a/ports/inja/CONTROL b/ports/inja/CONTROL new file mode 100644 index 000000000..a905ab796 --- /dev/null +++ b/ports/inja/CONTROL @@ -0,0 +1,4 @@ +Source: inja +Version: 1.0.0 +Build-Depends: nlohmann-json +Description: Inja - A Template Engine for Modern C++ diff --git a/ports/inja/portfile.cmake b/ports/inja/portfile.cmake new file mode 100644 index 000000000..dc9dc1a6b --- /dev/null +++ b/ports/inja/portfile.cmake @@ -0,0 +1,11 @@ +include(vcpkg_common_functions) +vcpkg_from_github( + OUT_SOURCE_PATH SOURCE_PATH + REPO pantor/inja + REF v1.0.0 + SHA512 39598df84766a0d2a28dc92e083e27b7072600372e0313727cd5dd1fe6ad1efc055dc98055247f5cb1fc4096ffb37b59995107f3456a4495bd01381ac6c74a2b + HEAD_REF master +) +file(INSTALL ${SOURCE_PATH}/src/inja.hpp DESTINATION ${CURRENT_PACKAGES_DIR}/include) +file(INSTALL ${SOURCE_PATH}/src/inja.hpp DESTINATION ${CURRENT_PACKAGES_DIR}/share/inja RENAME copyright) +vcpkg_copy_pdbs() -- cgit v1.2.3 From 1c49195f789b7b8d7eaeb2542730a1f72cfbefcf Mon Sep 17 00:00:00 2001 From: Coraline Date: Sat, 5 May 2018 16:44:48 -0700 Subject: physfs: fix-up CONTROL for v3.0.1 (#3421) Changed [Version] in .../ports/physfs/CONTROL to match current version in portfile.cmake --- ports/physfs/CONTROL | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ports/physfs/CONTROL b/ports/physfs/CONTROL index 20d973f18..a937d38bf 100644 --- a/ports/physfs/CONTROL +++ b/ports/physfs/CONTROL @@ -1,4 +1,4 @@ Source: physfs -Version: 2.0.3-2 +Version: 3.0.1 Description: a library to provide abstract access to various archives Build-Depends: zlib -- cgit v1.2.3 From ee469d525d835d56c97509d17e237d741d34b60c Mon Sep 17 00:00:00 2001 From: Seo Sanghyeon Date: Mon, 7 May 2018 15:23:11 +0900 Subject: [vlpp] Fix Linux build --- ports/vlpp/CMakeLists.txt | 5 ++++- ports/vlpp/CONTROL | 2 +- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/ports/vlpp/CMakeLists.txt b/ports/vlpp/CMakeLists.txt index 238600f6e..d5fec60c4 100644 --- a/ports/vlpp/CMakeLists.txt +++ b/ports/vlpp/CMakeLists.txt @@ -7,7 +7,10 @@ set(SRCS Import/Vlpp.cpp Import/VlppWorkflow.cpp Import/VlppWorkflowCompiler.cpp) -set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /bigobj") + +if(CMAKE_CXX_COMPILER_ID STREQUAL "MSVC") + set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /bigobj") +endif() # Create and configure the target add_library(Vlpp ${SRCS}) diff --git a/ports/vlpp/CONTROL b/ports/vlpp/CONTROL index aa8381cae..392beec5e 100644 --- a/ports/vlpp/CONTROL +++ b/ports/vlpp/CONTROL @@ -1,3 +1,3 @@ Source: vlpp -Version: 0.9.3.1 +Version: 0.9.3.1-1 Description: Common C++ construction, including string operation / generic container / linq / General-LR parser generator / multithreading / reflection for C++ / etc -- cgit v1.2.3 From 0591034a2a0a63029821344372ed7349dabf5a36 Mon Sep 17 00:00:00 2001 From: Mateusz Loskot Date: Mon, 7 May 2018 13:25:52 +0200 Subject: Add VSCode workspace file to .gitignore [ci skip] --- .gitignore | 1 + 1 file changed, 1 insertion(+) diff --git a/.gitignore b/.gitignore index aa272483c..796739b31 100644 --- a/.gitignore +++ b/.gitignore @@ -274,6 +274,7 @@ __pycache__/ ############################################################ .vscode/ +*.code-workspace buildtrees/ build*/ downloads/ -- cgit v1.2.3 From ee1b4d525a52605767c3d038d59e736ea1155d7c Mon Sep 17 00:00:00 2001 From: Thomas Margier Date: Mon, 7 May 2018 21:08:01 +0200 Subject: [imgui] Update to 1.60 --- ports/imgui/CONTROL | 2 +- ports/imgui/portfile.cmake | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/ports/imgui/CONTROL b/ports/imgui/CONTROL index 6b6a82476..640dece87 100644 --- a/ports/imgui/CONTROL +++ b/ports/imgui/CONTROL @@ -1,3 +1,3 @@ Source: imgui -Version: 1.53 +Version: 1.60 Description: Bloat-free Immediate Mode Graphical User interface for C++ with minimal dependencies. diff --git a/ports/imgui/portfile.cmake b/ports/imgui/portfile.cmake index 1ca99841d..7b18fc9ed 100644 --- a/ports/imgui/portfile.cmake +++ b/ports/imgui/portfile.cmake @@ -3,8 +3,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO ocornut/imgui - REF v1.53 - SHA512 3e1ebf3844eaca3471064fa3d5792525c696b39f502c75235fae469038b73ae0eff198f13d5e1a35f86c011903cd379066afe1e22b6df769b9b16dc390f8b0c3 + REF v1.60 + SHA512 405b79ced59b4e4e45eebdbf278435f325a553e04338702dbdd3f30c7a39cb52a4dad91443bd99d19f61e60cd78d544fc1436ae2d10fef7c3a8a46cbb62685d9 HEAD_REF master ) -- cgit v1.2.3 From 6b9bfcb6cff3b9c3e566e2ae9677c8dae7bb81de Mon Sep 17 00:00:00 2001 From: ArashPartow Date: Tue, 8 May 2018 21:19:26 +1000 Subject: Update for ExprTk package --- ports/exprtk/CONTROL | 2 +- ports/exprtk/portfile.cmake | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/ports/exprtk/CONTROL b/ports/exprtk/CONTROL index 2ebcfab28..4df1a2e2b 100644 --- a/ports/exprtk/CONTROL +++ b/ports/exprtk/CONTROL @@ -1,3 +1,3 @@ Source: exprtk -Version: 2018.01.01-f32d2b4 +Version: 2018.04.30-46877b6 Description: Simple to use, easy to integrate and extremely efficient run-time C++ mathematical expression parser and evaluation engine. diff --git a/ports/exprtk/portfile.cmake b/ports/exprtk/portfile.cmake index 1178a3e12..69d9921ec 100644 --- a/ports/exprtk/portfile.cmake +++ b/ports/exprtk/portfile.cmake @@ -3,8 +3,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO ArashPartow/exprtk - REF f32d2b4bbb640ea4732b8a7fce1bd9717e9c998b - SHA512 22c977dc2514bd525856ed26b8895687601e79784486efe9d4f27466e1e1932c4a947297d83e9b98a6c82df9eaf5b0f82990741bbb699d565ca11e5755a55dd6 + REF 46877b604cfcc0a0e592fc7a8a874cf2a9f90cf4 + SHA512 1043b5b6aa64bc3f8d989d2aac3e3a125188b1526ab92e245ad526ab1fe37e10cb275f2b77d311b4d91bd4ea32e1d81dfcd8abf8373b723a8b664842690ee1ae ) file(COPY ${SOURCE_PATH}/exprtk.hpp DESTINATION ${CURRENT_PACKAGES_DIR}/include) -- cgit v1.2.3 From f6fe7fcc07f63db7f2991dafdde515cabfa1d227 Mon Sep 17 00:00:00 2001 From: ArashPartow Date: Tue, 8 May 2018 21:34:06 +1000 Subject: Update for StrTk package --- ports/strtk/CONTROL | 2 +- ports/strtk/portfile.cmake | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/ports/strtk/CONTROL b/ports/strtk/CONTROL index 2fbac5743..0c9cf1720 100644 --- a/ports/strtk/CONTROL +++ b/ports/strtk/CONTROL @@ -1,4 +1,4 @@ Source: strtk -Version: 2018.01.01-5579ed1 +Version: 2018.05.07-48c9554 Description: robust, optimized and portable string processing algorithms for the C++ language Build-Depends: boost diff --git a/ports/strtk/portfile.cmake b/ports/strtk/portfile.cmake index c5998a538..f98f06930 100644 --- a/ports/strtk/portfile.cmake +++ b/ports/strtk/portfile.cmake @@ -3,8 +3,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO ArashPartow/strtk - REF 5579ed1fa9766a5f9b67ed4773a3f59e7b107093 - SHA512 552ada7aa36fd057003a0fcaeabd3b457bb7b4dbc05ae595b905503d254c95334569c63b7c9f014a174489e56902a38744417b14eaa08f86558e3c66063863b3 + REF 48c9554b3f079e34205c0af661c81c6f75f1da05 + SHA512 92a1b34808f20489d9b8c94aed384b08fcf2586967185c23a0027ee6d7170d5998e255d6aedc1fbb68327f48c0b106b8efd39f476e4041d6bcc5685c73fc1015 ) file(COPY ${SOURCE_PATH}/strtk.hpp DESTINATION ${CURRENT_PACKAGES_DIR}/include) -- cgit v1.2.3 From 7e7958739ed7e87617465235f8f9306ae521e82e Mon Sep 17 00:00:00 2001 From: Alexander Karatarakis Date: Tue, 8 May 2018 17:22:37 -0700 Subject: Use CMAKE_EXECUTABLE_SUFFIX --- ports/protobuf/portfile.cmake | 10 ++-------- 1 file changed, 2 insertions(+), 8 deletions(-) diff --git a/ports/protobuf/portfile.cmake b/ports/protobuf/portfile.cmake index a6875edb9..cf30b97a1 100644 --- a/ports/protobuf/portfile.cmake +++ b/ports/protobuf/portfile.cmake @@ -85,22 +85,16 @@ endfunction() protobuf_try_remove_recurse_wait(${CURRENT_PACKAGES_DIR}/debug/include) -if(CMAKE_HOST_WIN32) - set(EXECUTABLE_SUFFIX ".exe") -else() - set(EXECUTABLE_SUFFIX "") -endif() - if(NOT DEFINED VCPKG_BUILD_TYPE OR VCPKG_BUILD_TYPE STREQUAL "release") file(READ ${CURRENT_PACKAGES_DIR}/share/protobuf/protobuf-targets-release.cmake RELEASE_MODULE) - string(REPLACE "\${_IMPORT_PREFIX}/bin/protoc${EXECUTABLE_SUFFIX}" "\${_IMPORT_PREFIX}/tools/protoc${EXECUTABLE_SUFFIX}" RELEASE_MODULE "${RELEASE_MODULE}") + string(REPLACE "\${_IMPORT_PREFIX}/bin/protoc${CMAKE_EXECUTABLE_SUFFIX}" "\${_IMPORT_PREFIX}/tools/protoc${CMAKE_EXECUTABLE_SUFFIX}" RELEASE_MODULE "${RELEASE_MODULE}") file(WRITE ${CURRENT_PACKAGES_DIR}/share/protobuf/protobuf-targets-release.cmake "${RELEASE_MODULE}") endif() if(NOT DEFINED VCPKG_BUILD_TYPE OR VCPKG_BUILD_TYPE STREQUAL "debug") file(READ ${CURRENT_PACKAGES_DIR}/debug/share/protobuf/protobuf-targets-debug.cmake DEBUG_MODULE) string(REPLACE "\${_IMPORT_PREFIX}" "\${_IMPORT_PREFIX}/debug" DEBUG_MODULE "${DEBUG_MODULE}") - string(REPLACE "\${_IMPORT_PREFIX}/debug/bin/protoc${EXECUTABLE_SUFFIX}" "\${_IMPORT_PREFIX}/tools/protoc${EXECUTABLE_SUFFIX}" DEBUG_MODULE "${DEBUG_MODULE}") + string(REPLACE "\${_IMPORT_PREFIX}/debug/bin/protoc${CMAKE_EXECUTABLE_SUFFIX}" "\${_IMPORT_PREFIX}/tools/protoc${CMAKE_EXECUTABLE_SUFFIX}" DEBUG_MODULE "${DEBUG_MODULE}") file(WRITE ${CURRENT_PACKAGES_DIR}/share/protobuf/protobuf-targets-debug.cmake "${DEBUG_MODULE}") endif() -- cgit v1.2.3 From a0d1713f8ca85037edfc2be6546e5803b06ff68f Mon Sep 17 00:00:00 2001 From: Parker Snell Date: Wed, 9 May 2018 08:46:57 -0700 Subject: Update sol2 to 2.20.0 --- ports/sol/CONTROL | 2 +- ports/sol/portfile.cmake | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/ports/sol/CONTROL b/ports/sol/CONTROL index 42b1be455..3f56b4e09 100644 --- a/ports/sol/CONTROL +++ b/ports/sol/CONTROL @@ -1,3 +1,3 @@ Source: sol -Version: 2.19.5 +Version: 2.20.0 Description: Sol v2.0 - a C++ <-> Lua API wrapper with advanced features and top notch performance - is here, and it's great diff --git a/ports/sol/portfile.cmake b/ports/sol/portfile.cmake index c65202380..a7791efe9 100644 --- a/ports/sol/portfile.cmake +++ b/ports/sol/portfile.cmake @@ -14,8 +14,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO ThePhD/sol2 - REF v2.19.5 - SHA512 c004c2331e2eb0aae4467c10609f73879246c3ab5b7421e5b6fcb91b0c6595d999e5fd4c70b1859af1febb374631640d6727bf236a0cd176e40f631813e243a9 + REF v2.20.0 + SHA512 b7b5d7c2c30d54325f9f8f99eeea815afdf159b1193d1ee4b9510ab605d9fa0bc088041b3d6f1f704ce94741ffd9f01d174991007ecec7043a3fd1b93d4dd91b HEAD_REF develop ) -- cgit v1.2.3 From 6c4c7c0d78f4dd71aa75785fbc09004bbfe345ca Mon Sep 17 00:00:00 2001 From: Alexander Karatarakis Date: Wed, 9 May 2018 19:26:12 -0700 Subject: Improve unsupported toolchain error message --- toolsrc/src/vcpkg/build.cpp | 20 ++++++++++++-------- 1 file changed, 12 insertions(+), 8 deletions(-) diff --git a/toolsrc/src/vcpkg/build.cpp b/toolsrc/src/vcpkg/build.cpp index 3616348d6..1ed5e744a 100644 --- a/toolsrc/src/vcpkg/build.cpp +++ b/toolsrc/src/vcpkg/build.cpp @@ -217,7 +217,12 @@ namespace vcpkg::Build if (it != toolset.supported_architectures.end()) return it->name; } - Checks::exit_with_message(VCPKG_LINE_INFO, "Unsupported toolchain combination %s", target_architecture); + Checks::exit_with_message(VCPKG_LINE_INFO, + "Unsupported toolchain combination. Target was: %s but supported ones were:\n%s", + target_architecture, + Strings::join(",", toolset.supported_architectures, [](const ToolsetArchOption& t) { + return t.name.c_str(); + })); } std::string make_build_env_cmd(const PreBuildInfo& pre_build_info, const Toolset& toolset) @@ -520,8 +525,8 @@ namespace vcpkg::Build System::cmd_execute_clean(Strings::format( R"("%s" x "%s" -o"%s" -y >nul)", seven_zip_exe.u8string(), archive_path.u8string(), pkg_path.u8string())); #else - System::cmd_execute_clean(Strings::format( - R"(unzip -qq "%s" "-d%s")", archive_path.u8string(), pkg_path.u8string())); + System::cmd_execute_clean( + Strings::format(R"(unzip -qq "%s" "-d%s")", archive_path.u8string(), pkg_path.u8string())); #endif } @@ -537,11 +542,10 @@ namespace vcpkg::Build #if defined(_WIN32) auto&& seven_zip_exe = paths.get_tool_exe(Tools::SEVEN_ZIP); - System::cmd_execute_clean(Strings::format( - R"("%s" a "%s" "%s\*" >nul)", - seven_zip_exe.u8string(), - tmp_archive_path.u8string(), - paths.package_dir(spec).u8string())); + System::cmd_execute_clean(Strings::format(R"("%s" a "%s" "%s\*" >nul)", + seven_zip_exe.u8string(), + tmp_archive_path.u8string(), + paths.package_dir(spec).u8string())); #else System::cmd_execute_clean(Strings::format( R"(cd '%s' && zip --quiet -r '%s' *)", paths.package_dir(spec).u8string(), tmp_archive_path.u8string())); -- cgit v1.2.3 From e7f2efbb83f68b849aa6f4e09e711db8904d3cc3 Mon Sep 17 00:00:00 2001 From: Seo Sanghyeon Date: Thu, 10 May 2018 13:08:18 +0900 Subject: [brotli] Fix Linux build --- ports/brotli/CONTROL | 2 +- ports/brotli/portfile.cmake | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/ports/brotli/CONTROL b/ports/brotli/CONTROL index 0c4d7eb0c..86d7a948b 100644 --- a/ports/brotli/CONTROL +++ b/ports/brotli/CONTROL @@ -1,3 +1,3 @@ Source: brotli -Version: 1.0.2-1 +Version: 1.0.2-2 Description: a generic-purpose lossless compression algorithm that compresses data using a combination of a modern variant of the LZ77 algorithm, Huffman coding and 2nd order context modeling. diff --git a/ports/brotli/portfile.cmake b/ports/brotli/portfile.cmake index b4e33086e..1663f3b23 100644 --- a/ports/brotli/portfile.cmake +++ b/ports/brotli/portfile.cmake @@ -17,8 +17,8 @@ vcpkg_configure_cmake( vcpkg_install_cmake() file(MAKE_DIRECTORY ${CURRENT_PACKAGES_DIR}/tools/brotli) -file(RENAME ${CURRENT_PACKAGES_DIR}/bin/brotli.exe ${CURRENT_PACKAGES_DIR}/tools/brotli/brotli.exe) -file(REMOVE ${CURRENT_PACKAGES_DIR}/debug/bin/brotli.exe) +file(RENAME ${CURRENT_PACKAGES_DIR}/bin/brotli${CMAKE_EXECUTABLE_SUFFIX} ${CURRENT_PACKAGES_DIR}/tools/brotli/brotli${CMAKE_EXECUTABLE_SUFFIX}) +file(REMOVE ${CURRENT_PACKAGES_DIR}/debug/bin/brotli${CMAKE_EXECUTABLE_SUFFIX}) vcpkg_copy_tool_dependencies(${CURRENT_PACKAGES_DIR}/tools/brotli) -- cgit v1.2.3 From 4c32ca65417776dbdde980a3fcabcabc4abb2e54 Mon Sep 17 00:00:00 2001 From: Koby Kahane Date: Thu, 10 May 2018 23:15:00 +0300 Subject: [lz4] update to 1.8.2 --- ports/lz4/portfile.cmake | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/ports/lz4/portfile.cmake b/ports/lz4/portfile.cmake index 6150a35e6..bbeee708f 100644 --- a/ports/lz4/portfile.cmake +++ b/ports/lz4/portfile.cmake @@ -2,8 +2,8 @@ include(vcpkg_common_functions) vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO lz4/lz4 - REF v1.8.1.2 - SHA512 f4ed450bc05477cc6c2b42e6fe1fbb1fb0907f1d05b68b1d69d975b555ddb385550f204258e6d91642e14ce373815141dc218cda03b711793935d5458bc45c7f + REF v1.8.2 + SHA512 5fadc79334d37739c947d6dfc24f48ce82989fc5ee4f2bb8201ccf7ee3230b9e6e7c8488beb64050a035369f4247161d258bdb539578bec224ccebfef1b8a763 HEAD_REF dev) file(COPY ${CMAKE_CURRENT_LIST_DIR}/CMakeLists.txt DESTINATION ${SOURCE_PATH}) -- cgit v1.2.3