From 4fbe9f86104a1321e57998e3b37e2ca3c554a9c9 Mon Sep 17 00:00:00 2001 From: Alberto Mardegan Date: Tue, 1 May 2018 22:49:13 +0300 Subject: [PATCH 1/2] [botan] Update to 2.6.0 --- ports/botan/0001-fix-crt-linking.patch | 56 -------------------------- ports/botan/CONTROL | 4 +- ports/botan/portfile.cmake | 7 +--- 3 files changed, 4 insertions(+), 63 deletions(-) delete mode 100644 ports/botan/0001-fix-crt-linking.patch diff --git a/ports/botan/0001-fix-crt-linking.patch b/ports/botan/0001-fix-crt-linking.patch deleted file mode 100644 index d1fdc2d70..000000000 --- a/ports/botan/0001-fix-crt-linking.patch +++ /dev/null @@ -1,56 +0,0 @@ -From b41cc93b63c99525e71291424466cdd45d92f770 Mon Sep 17 00:00:00 2001 -From: Mikhail Paulyshka -Date: Sun, 12 Mar 2017 04:34:10 +0300 -Subject: [PATCH] fix CRT linking for static library for MSVC - ---- - configure.py | 15 +++++++++++++++ - src/build-data/cc/msvc.txt | 8 ++++++-- - 2 files changed, 21 insertions(+), 2 deletions(-) - -diff --git a/configure.py b/configure.py -index faf5120c5..9c545cf5f 100755 ---- a/configure.py -+++ b/configure.py -@@ -976,6 +976,21 @@ class CompilerInfo(object): - if flag != None and flag != '' and flag not in abi_link: - abi_link.append(flag) - -+ if options.build_shared_lib: -+ if options.with_debug_info: -+ if 'dynamic-debug' in self.mach_abi_linking: -+ abi_link.append(self.mach_abi_linking['dynamic-debug']) -+ else: -+ if 'dynamic' in self.mach_abi_linking: -+ abi_link.append(self.mach_abi_linking['dynamic']) -+ else: -+ if options.with_debug_info: -+ if 'static-debug' in self.mach_abi_linking: -+ abi_link.append(self.mach_abi_linking['static-debug']) -+ else: -+ if 'static' in self.mach_abi_linking: -+ abi_link.append(self.mach_abi_linking['static']) -+ - if options.with_coverage_info: - if self.coverage_flags == '': - raise ConfigureError('No coverage handling for %s' % (self.basename)) -diff --git a/src/build-data/cc/msvc.txt b/src/build-data/cc/msvc.txt -index c1b820b91..e6182b0fa 100644 ---- a/src/build-data/cc/msvc.txt -+++ b/src/build-data/cc/msvc.txt -@@ -53,6 +53,10 @@ default-debug -> "$(LINKER) /DEBUG" - - - --all -> "/MD /bigobj" --all-debug -> "/MDd /bigobj" -+all -> "/bigobj" -+all-debug -> "/bigobj" -+static -> "/MT" -+static-debug -> "/MTd" -+dynamic -> "/MD" -+dynamic-debug -> "/MDd" - --- -2.11.0.windows.1 - diff --git a/ports/botan/CONTROL b/ports/botan/CONTROL index 1ff010118..0f170b3f4 100644 --- a/ports/botan/CONTROL +++ b/ports/botan/CONTROL @@ -1,3 +1,3 @@ Source: botan -Version: 2.0.1 -Description: A cryptography library written in C++11 \ No newline at end of file +Version: 2.6.0 +Description: A cryptography library written in C++11 diff --git a/ports/botan/portfile.cmake b/ports/botan/portfile.cmake index a9a9ca547..fee0a0e2a 100644 --- a/ports/botan/portfile.cmake +++ b/ports/botan/portfile.cmake @@ -1,7 +1,7 @@ include(vcpkg_common_functions) -set(BOTAN_VERSION 2.0.1) -set(BOTAN_HASH c5062ce92a6e6e333b4e6af095ed54d0c4ffacefc6ac87ec651dd1e0937793c9956b7c9c0d3acf49f059505526584168364e01c55ab72c953ad255e8396aed35) +set(BOTAN_VERSION 2.6.0) +set(BOTAN_HASH 2082b4aaac0802f117a5f75c67a69e6d364b436a0ebe543032e370c3f085752bbe1ca48051462066e13bd42e47573ebc532d1d45074fe406df032f33346ee645) set(SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src/Botan-${BOTAN_VERSION}) vcpkg_download_distfile(ARCHIVE @@ -10,9 +10,6 @@ vcpkg_download_distfile(ARCHIVE SHA512 ${BOTAN_HASH} ) vcpkg_extract_source_archive(${ARCHIVE}) -vcpkg_apply_patches( - SOURCE_PATH ${SOURCE_PATH} - PATCHES "${CMAKE_CURRENT_LIST_DIR}/0001-fix-crt-linking.patch") vcpkg_find_acquire_program(JOM) vcpkg_find_acquire_program(PYTHON3) From d65e5703cce63561663f021dbe0927ab97994b0d Mon Sep 17 00:00:00 2001 From: Alexander Karatarakis Date: Fri, 29 Jun 2018 21:41:08 -0700 Subject: [PATCH 2/2] [botan] Fix 2.6.0 issues --- ports/botan/CONTROL | 2 +- ports/botan/portfile.cmake | 48 ++++++++++++++++++++++++-------------- 2 files changed, 32 insertions(+), 18 deletions(-) diff --git a/ports/botan/CONTROL b/ports/botan/CONTROL index 0f170b3f4..0f34f1bcd 100644 --- a/ports/botan/CONTROL +++ b/ports/botan/CONTROL @@ -1,3 +1,3 @@ Source: botan -Version: 2.6.0 +Version: 2.6.0-1 Description: A cryptography library written in C++11 diff --git a/ports/botan/portfile.cmake b/ports/botan/portfile.cmake index fee0a0e2a..272679019 100644 --- a/ports/botan/portfile.cmake +++ b/ports/botan/portfile.cmake @@ -13,9 +13,21 @@ vcpkg_extract_source_archive(${ARCHIVE}) vcpkg_find_acquire_program(JOM) vcpkg_find_acquire_program(PYTHON3) +get_filename_component(PYTHON3_DIR "${PYTHON3}" DIRECTORY) +set(ENV{PATH} "$ENV{PATH};${PYTHON3_DIR}") -if(VCPKG_LIBRARY_LINKAGE STREQUAL static) - set(BOTAN_FLAG_SHARED --disable-shared) +if(VCPKG_LIBRARY_LINKAGE STREQUAL dynamic) + set(BOTAN_FLAG_SHARED --enable-shared-library) + set(BOTAN_FLAG_STATIC --disable-static-library) +else() + set(BOTAN_FLAG_SHARED --disable-shared-library) + set(BOTAN_FLAG_STATIC --enable-static-library) +endif() + +if(VCPKG_CRT_LINKAGE STREQUAL dynamic) + set(BOTAN_MSVC_RUNTIME "--msvc-runtime=MD") +else() + set(BOTAN_MSVC_RUNTIME "--msvc-runtime=MT") endif() if(VCPKG_TARGET_ARCHITECTURE STREQUAL "x86") @@ -31,12 +43,14 @@ function(BOTAN_BUILD BOTAN_BUILD_TYPE) if(BOTAN_BUILD_TYPE STREQUAL "dbg") set(BOTAN_FLAG_PREFIX ${CURRENT_PACKAGES_DIR}/debug) set(BOTAN_FLAG_DEBUGMODE --debug-mode) - set(BOTAN_DEBUG_PREFIX d) + set(BOTAN_DEBUG_SUFFIX "") + set(BOTAN_MSVC_RUNTIME_SUFFIX "d") else() set(BOTAN_FLAG_DEBUGMODE) set(BOTAN_FLAG_PREFIX ${CURRENT_PACKAGES_DIR}) + set(BOTAN_MSVC_RUNTIME_SUFFIX "") endif() - + message(STATUS "Configure ${TARGET_TRIPLET}-${BOTAN_BUILD_TYPE}") if(EXISTS ${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-${BOTAN_BUILD_TYPE}) @@ -45,16 +59,16 @@ function(BOTAN_BUILD BOTAN_BUILD_TYPE) make_directory(${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-${BOTAN_BUILD_TYPE}) vcpkg_execute_required_process( - COMMAND "${PYTHON3}" "${SOURCE_PATH}/configure.py" + COMMAND "${PYTHON3}" "${SOURCE_PATH}/configure.py" --cc=msvc --cpu=${BOTAN_FLAG_CPU} - ${BOTAN_FLAG_SHARED} + ${BOTAN_FLAG_SHARED} + ${BOTAN_FLAG_STATIC} + ${BOTAN_MSVC_RUNTIME}${BOTAN_MSVC_RUNTIME_SUFFIX} ${BOTAN_FLAG_DEBUGMODE} "--distribution-info=vcpkg ${TARGET_TRIPLET}" - --makefile-style=nmake - --with-pkcs11 --prefix=${BOTAN_FLAG_PREFIX} - --link-method=copy + --link-method=copy WORKING_DIRECTORY "${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-${BOTAN_BUILD_TYPE}" LOGNAME configure-${TARGET_TRIPLET}-${BOTAN_BUILD_TYPE}) message(STATUS "Configure ${TARGET_TRIPLET}-${BOTAN_BUILD_TYPE} done") @@ -68,18 +82,18 @@ function(BOTAN_BUILD BOTAN_BUILD_TYPE) message(STATUS "Package ${TARGET_TRIPLET}-${BOTAN_BUILD_TYPE}") vcpkg_execute_required_process( - COMMAND "${PYTHON3}" "${SOURCE_PATH}/src/scripts/install.py" - --destdir=${BOTAN_FLAG_PREFIX} - --docdir=share + COMMAND "${PYTHON3}" "${SOURCE_PATH}/src/scripts/install.py" + --prefix=${BOTAN_FLAG_PREFIX} + --docdir=share WORKING_DIRECTORY "${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-${BOTAN_BUILD_TYPE}" LOGNAME install-${TARGET_TRIPLET}-${BOTAN_BUILD_TYPE}) if(VCPKG_LIBRARY_LINKAGE STREQUAL dynamic) - file(RENAME ${BOTAN_FLAG_PREFIX}/lib/botan${BOTAN_DEBUG_PREFIX}.dll ${BOTAN_FLAG_PREFIX}/bin/botan${BOTAN_DEBUG_PREFIX}.dll) + file(RENAME ${BOTAN_FLAG_PREFIX}/lib/botan${BOTAN_DEBUG_SUFFIX}.dll ${BOTAN_FLAG_PREFIX}/bin/botan${BOTAN_DEBUG_SUFFIX}.dll) endif() - + message(STATUS "Package ${TARGET_TRIPLET}-${BOTAN_BUILD_TYPE} done") -endfunction() +endfunction() BOTAN_BUILD(rel) BOTAN_BUILD(dbg) @@ -90,14 +104,14 @@ file(REMOVE ${CURRENT_PACKAGES_DIR}/debug/bin/botan-cli.exe) file(RENAME ${CURRENT_PACKAGES_DIR}/include/botan-2/botan ${CURRENT_PACKAGES_DIR}/include/botan) -file(REMOVE_RECURSE +file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include ${CURRENT_PACKAGES_DIR}/debug/share ${CURRENT_PACKAGES_DIR}/include/botan-2 ${CURRENT_PACKAGES_DIR}/share/botan-${BOTAN_VERSION}/manual) if(VCPKG_LIBRARY_LINKAGE STREQUAL static) - file(REMOVE_RECURSE + file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/bin ${CURRENT_PACKAGES_DIR}/debug/bin) endif()