Skip to content

Commit

Permalink
vcpkg-ports/pkcs11-helper: Backport MinGW series from master to relea…
Browse files Browse the repository at this point in the history
…se/2.6

Contains the following commits:
- Make compatible with mingw build
  (commit 17746e5)
- Convert CONTROL to vcpkg.json
  (commit a2160d3)
- reference upstream PRs in patches
  (commit 9577ffe)
- rename patches to make file names shorter
  (commit 0c25a54)

Change-Id: Ie61fed8758e44576939a8bb0a04bc95245a3ce18
Signed-off-by: Frank Lichtenheld <[email protected]>
Acked-by: Heiko Hund <[email protected]>
Message-Id: <[email protected]>
URL: https://www.mail-archive.com/[email protected]/msg27083.html
Signed-off-by: Gert Doering <[email protected]>
  • Loading branch information
flichtenheld authored and cron2 committed Sep 25, 2023
1 parent 2ecad24 commit cce957a
Show file tree
Hide file tree
Showing 11 changed files with 104 additions and 13 deletions.
1 change: 1 addition & 0 deletions .github/workflows/build.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -441,6 +441,7 @@ jobs:
uses: lukka/run-vcpkg@v10
with:
vcpkgGitCommitId: 'd10d511f25620ca0f315cd83dcef6485efc63010'
vcpkgJsonGlob: '**/openvpn/vcpkg.json'
appendedCacheKey: '${{matrix.triplet}}'

- name: Run MSBuild consuming vcpkg.json
Expand Down
4 changes: 0 additions & 4 deletions contrib/vcpkg-ports/pkcs11-helper/CONTROL

This file was deleted.

Original file line number Diff line number Diff line change
@@ -0,0 +1,48 @@
From 7171396a151a2edb3474c7a321b7ae4ff7e171fc Mon Sep 17 00:00:00 2001
From: Frank Lichtenheld <[email protected]>
Date: Wed, 29 Mar 2023 12:44:44 +0200
Subject: [PATCH] Allow the build to succeed if configured with
--disable-shared

Do not try to install a file that does not exist.

Signed-off-by: Frank Lichtenheld <[email protected]>
---
configure.ac | 1 +
lib/Makefile.am | 2 ++
2 files changed, 3 insertions(+)

upstream PR: https://github.com/OpenSC/pkcs11-helper/pull/62

diff --git a/configure.ac b/configure.ac
index a7e9760..f154ae3 100644
--- a/configure.ac
+++ b/configure.ac
@@ -581,6 +581,7 @@ AC_SUBST([LIBPKCS11_HELPER_LT_AGE])
AC_SUBST([LIBPKCS11_HELPER_LT_OLDEST])
AC_SUBST([WIN_LIBPREFIX])
AC_SUBST([PKCS11H_FEATURES])
+AM_CONDITIONAL([ENABLE_SHARED], [test "${enable_shared}" = "yes" ])
AM_CONDITIONAL([WIN32], [test "${WIN32}" = "yes"])
AM_CONDITIONAL([CYGWIN], [test "${CYGWIN}" = "yes"])
AM_CONDITIONAL([ENABLE_DOC], [test "${enable_doc}" = "yes"])
diff --git a/lib/Makefile.am b/lib/Makefile.am
index 31b928f..3cba32f 100644
--- a/lib/Makefile.am
+++ b/lib/Makefile.am
@@ -128,10 +128,12 @@ if ENABLE_PKCS11H_TOKEN
endif

if WIN32
+if ENABLE_SHARED
mylibdir=$(libdir)
mylib_DATA=.libs/@WIN_LIBPREFIX@pkcs11-helper-@[email protected]
.libs/@WIN_LIBPREFIX@pkcs11-helper-@[email protected]: libpkcs11-helper.la
endif
+endif

RCCOMPILE = $(RC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \
$(AM_CPPFLAGS) $(CPPFLAGS)
--
2.34.1

Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
upstream PR: https://github.com/OpenSC/pkcs11-helper/pull/4

commit 90590b02085edc3830bdfe0942a46c4e7bf3f1ab (HEAD -> master)
Author: David Woodhouse <[email protected]>
Date: Thu Apr 30 14:58:24 2015 +0100
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,8 @@ set original values as defaults, use verbatim (user-supplied) value
lib/pkcs11h-core.c | 13 +++++++++++--
3 files changed, 23 insertions(+), 3 deletions(-)

upstream PR: https://github.com/OpenSC/pkcs11-helper/pull/59

diff --git a/include/pkcs11-helper-1.0/pkcs11h-core.h b/include/pkcs11-helper-1.0/pkcs11h-core.h
index 9028c277..56f87718 100644
--- a/include/pkcs11-helper-1.0/pkcs11h-core.h
Expand Down
37 changes: 28 additions & 9 deletions contrib/vcpkg-ports/pkcs11-helper/portfile.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -11,26 +11,45 @@ vcpkg_extract_source_archive_ex(
ARCHIVE ${ARCHIVE}
REF ${VERSION}
PATCHES
0001-nmake-compatibility-with-vcpkg-nmake.patch
0002-config-w32-vc.h.in-indicate-OpenSSL.patch
nmake-compatibility-with-vcpkg-nmake.patch
config-w32-vc.h.in-indicate-OpenSSL.patch
Fix-build-with-disable-shared.patch
pkcs11-helper-001-RFC7512.patch
pkcs11-helper-002-dynamic_loader_flags.patch
)

vcpkg_build_nmake(
if(VCPKG_TARGET_IS_WINDOWS AND NOT VCPKG_TARGET_IS_MINGW)
vcpkg_build_nmake(
SOURCE_PATH ${SOURCE_PATH}
PROJECT_SUBPATH lib
PROJECT_NAME Makefile.w32-vc
OPTIONS
OPENSSL=1
OPENSSL_HOME=${CURRENT_PACKAGES_DIR}/../openssl_${TARGET_TRIPLET}
)
)

file(INSTALL ${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-rel/lib/pkcs11-helper.dll.lib DESTINATION ${CURRENT_PACKAGES_DIR}/lib)
file(INSTALL ${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-dbg/lib/pkcs11-helper.dll.lib DESTINATION ${CURRENT_PACKAGES_DIR}/debug/lib)

file(INSTALL ${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-rel/lib/libpkcs11-helper-1.dll DESTINATION ${CURRENT_PACKAGES_DIR}/bin)
file(INSTALL ${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-dbg/lib/libpkcs11-helper-1.dll DESTINATION ${CURRENT_PACKAGES_DIR}/debug/bin)

file(INSTALL ${SOURCE_PATH}/include/pkcs11-helper-1.0 DESTINATION ${CURRENT_PACKAGES_DIR}/include/)

else()
find_program(man_to_html man2html REQUIRED)

vcpkg_configure_make(
SOURCE_PATH ${SOURCE_PATH}
OPTIONS --disable-crypto-engine-gnutls --disable-crypto-engine-nss
--disable-crypto-engine-polarssl --disable-crypto-engine-mbedtls
)
vcpkg_install_make()
vcpkg_fixup_pkgconfig()

file(INSTALL ${SOURCE_PATH}/include/pkcs11-helper-1.0 DESTINATION ${CURRENT_PACKAGES_DIR}/include/)
file(INSTALL ${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-rel/lib/pkcs11-helper.dll.lib DESTINATION ${CURRENT_PACKAGES_DIR}/lib)
file(INSTALL ${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-dbg/lib/pkcs11-helper.dll.lib DESTINATION ${CURRENT_PACKAGES_DIR}/debug/lib)
file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/share")
endif()

file(INSTALL ${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-rel/lib/libpkcs11-helper-1.dll DESTINATION ${CURRENT_PACKAGES_DIR}/bin)
file(INSTALL ${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-dbg/lib/libpkcs11-helper-1.dll DESTINATION ${CURRENT_PACKAGES_DIR}/debug/bin)
vcpkg_copy_pdbs()

file(INSTALL ${SOURCE_PATH}/COPYING DESTINATION ${CURRENT_PACKAGES_DIR}/share/${PORT} RENAME copyright)
7 changes: 7 additions & 0 deletions contrib/vcpkg-ports/pkcs11-helper/vcpkg.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
{
"name": "pkcs11-helper",
"version": "1.29.0",
"description": "pkcs11-helper is a library that simplifies the interaction with PKCS#11 providers for end-user applications.",
"homepage": "https://github.com/OpenSC/pkcs11-helper",
"license": "BSD-3-Clause OR GPL-2.0-only"
}
8 changes: 8 additions & 0 deletions contrib/vcpkg-triplets/x64-mingw-ovpn.cmake
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
set(VCPKG_TARGET_ARCHITECTURE x64)
set(VCPKG_CRT_LINKAGE dynamic)
set(VCPKG_LIBRARY_LINKAGE static)
set(VCPKG_ENV_PASSTHROUGH PATH)

set(VCPKG_CMAKE_SYSTEM_NAME MinGW)

set(VCPKG_MAKE_BUILD_TRIPLET --host=x86_64-w64-mingw32)
8 changes: 8 additions & 0 deletions contrib/vcpkg-triplets/x86-mingw-ovpn.cmake
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
set(VCPKG_TARGET_ARCHITECTURE x86)
set(VCPKG_CRT_LINKAGE dynamic)
set(VCPKG_LIBRARY_LINKAGE static)
set(VCPKG_ENV_PASSTHROUGH PATH)

set(VCPKG_CMAKE_SYSTEM_NAME MinGW)

set(VCPKG_MAKE_BUILD_TRIPLET --host=i686-w64-mingw32)

0 comments on commit cce957a

Please sign in to comment.