[packages/canokey-qemu] - updated to 1 (new soname)
qboosh
qboosh at pld-linux.org
Mon May 18 21:15:32 CEST 2026
commit 0f4e38e007b30d9a5a7f1b0e7209a20a0730eb89
Author: Jakub Bogusz <qboosh at pld-linux.org>
Date: Mon May 18 21:15:26 2026 +0200
- updated to 1 (new soname)
canokey-qemu-system-libs.patch | 215 +++++++++++++++++++----------------------
canokey-qemu.spec | 39 ++++----
2 files changed, 120 insertions(+), 134 deletions(-)
---
diff --git a/canokey-qemu.spec b/canokey-qemu.spec
index 5bc8df5..d2fd5b3 100644
--- a/canokey-qemu.spec
+++ b/canokey-qemu.spec
@@ -1,26 +1,26 @@
-%define core_gitref e216aa00b95b27c8e6bc5f2907a05e49a0ddafad
-%define crypto_gitref 8fab8813ce2603ba198a9beeb32c06ad08ae0865
-%define mbedtls_gitref f71e2878084126737cc39083e1e15afc459bd93d
+%define core_gitref 6c8cbf0f68e16f71f3d66d9cbc76115af93324ec
+%define crypto_gitref 2217732a29d750400778900d17adf8aa6dd77bda
+%define tfpsacrypto_gitref 76920edddcad00ac41b248e12d937b845df7bedb
+%define mbedtlsframework_gitref 457996474728cb8e968ed21953b72f74d2f536b2
Summary: CanoKey library for QEMU
Summary(pl.UTF-8): Biblioteka CanoKey dla QEMU
Name: canokey-qemu
-Version: 0
-%define gitref 151568c34f5e92b086b7a3a62a11c43dd39f628b
-%define snap 20230606
-%define rel 1
-Release: 0.%{snap}.%{rel}
+Version: 1
+Release: 1
License: Apache v2.0
Group: Libraries
#Source0Download: https://github.com/canokeys/canokey-qemu/tags
-Source0: https://github.com/canokeys/canokey-qemu/archive/%{gitref}/%{name}-%{snap}.tar.gz
-# Source0-md5: 02b14bbbdbe0e0774f3b8bdb3e201a40
+Source0: https://github.com/canokeys/canokey-qemu/archive/v%{version}/%{name}-%{version}.tar.gz
+# Source0-md5: 7fb9bdb65d568890a18207a6ddfb757d
Source1: https://github.com/canokeys/canokey-core/archive/%{core_gitref}/canokey-core-%{core_gitref}.tar.gz
-# Source1-md5: 68d90de51a4279965e172dc58f3beb5f
+# Source1-md5: a9fd4f1cf856e6acbea59c70eb7f90d6
Source2: https://github.com/canokeys/canokey-crypto/archive/%{crypto_gitref}/canokey-crypto-%{crypto_gitref}.tar.gz
-# Source2-md5: 2f0b6d9c6ededec1fb57f04c2c5b0b7e
-## private mbedtls is patched for MBEDTLS_ECP_DP_ED25519 support
-Source3: https://github.com/ARMmbed/mbedtls/archive/%{mbedtls_gitref}/mbedtls-%{mbedtls_gitref}.tar.gz
-# Source3-md5: 80fe94ab2e3eb4213d00ba0473dbe71c
+# Source2-md5: ac72eed51184d4a3d4e27d7f733a66e1
+## private TF-PSA-Crypto is patched for MBEDTLS_ECP_DP_ED25519 support
+Source3: https://github.com/Mbed-TLS/TF-PSA-Crypto/archive/%{tfpsacrypto_gitref}/TF-PSA-Crypto-%{tfpsacrypto_gitref}.tar.gz
+# Source3-md5: 494ddf8152ee258a831e23db6c54f672
+Source4: https://github.com/Mbed-TLS/mbedtls-framework/archive/%{mbedtlsframework_gitref}/mbedtls-framework-%{mbedtlsframework_gitref}.tar.gz
+# Source4-md5: 66f38441a31249afed5b34b9d6d95021
Patch0: %{name}-system-libs.patch
URL: https://github.com/canokeys/canokey-core/
BuildRequires: cmake >= 3.7
@@ -62,11 +62,12 @@ Header files for canokey-qemu library.
Pliki nagłówkowe biblioteki canokey-qemu.
%prep
-%setup -q -n %{name}-%{gitref}
+%setup -q
%{__tar} xf %{SOURCE1} -C canokey-core --strip-components=1
%{__tar} xf %{SOURCE2} -C canokey-core/canokey-crypto --strip-components=1
-%{__tar} xf %{SOURCE3} -C canokey-core/canokey-crypto/mbedtls --strip-components=1
+%{__tar} xf %{SOURCE3} -C canokey-core/canokey-crypto/tf-psa-crypto --strip-components=1
+%{__tar} xf %{SOURCE4} -C canokey-core/canokey-crypto/tf-psa-crypto/framework --strip-components=1
%patch -P0 -p1
@@ -96,10 +97,10 @@ rm -rf $RPM_BUILD_ROOT
%files
%defattr(644,root,root,755)
%doc README.md
-%attr(755,root,root) %{_libdir}/libcanokey-qemu.so.0
+%{_libdir}/libcanokey-qemu.so.1
%files devel
%defattr(644,root,root,755)
-%attr(755,root,root) %{_libdir}/libcanokey-qemu.so
+%{_libdir}/libcanokey-qemu.so
%{_includedir}/canokey-qemu.h
%{_pkgconfigdir}/canokey-qemu.pc
diff --git a/canokey-qemu-system-libs.patch b/canokey-qemu-system-libs.patch
index 2ffb9f5..2204be8 100644
--- a/canokey-qemu-system-libs.patch
+++ b/canokey-qemu-system-libs.patch
@@ -1,111 +1,130 @@
---- canokey-qemu-151568c34f5e92b086b7a3a62a11c43dd39f628b/CMakeLists.txt.orig 2023-06-05 19:09:03.000000000 +0200
-+++ canokey-qemu-151568c34f5e92b086b7a3a62a11c43dd39f628b/CMakeLists.txt 2024-04-01 21:47:48.581666791 +0200
-@@ -27,18 +27,18 @@ if(${APPLE})
- add_library(canokey-qemu STATIC ${SRC}
- canokey-core/virt-card/device-sim.c
- canokey-core/virt-card/fabrication.c
-- canokey-core/littlefs/bd/lfs_filebd.c)
-+ )
- else()
- add_library(canokey-qemu SHARED ${SRC}
- canokey-core/virt-card/device-sim.c
- canokey-core/virt-card/fabrication.c
-- canokey-core/littlefs/bd/lfs_filebd.c)
-+ )
- endif()
- set_target_properties(canokey-qemu PROPERTIES PUBLIC_HEADER Inc/canokey-qemu.h)
- set_target_properties(canokey-qemu PROPERTIES SOVERSION ${LIBCANOKEY_QEMU_SO_VERSION})
+--- canokey-qemu-1/CMakeLists.txt.orig 2026-03-24 02:10:51.000000000 +0100
++++ canokey-qemu-1/CMakeLists.txt 2026-05-18 20:19:22.101959275 +0200
+@@ -25,7 +25,6 @@ set(LIBCANOKEY_QEMU_INCLUDEDIR ${CMAKE_I
+ set(QEMU_VIRT_SRCS
+ canokey-core/virt-card/device-sim.c
+ canokey-core/virt-card/fabrication.c
+- canokey-core/littlefs/bd/lfs_filebd.c
+ )
+ file(GLOB_RECURSE SRC Src/*.c)
+
+@@ -40,7 +39,7 @@ set_target_properties(canokey-qemu PROPE
+ )
target_include_directories(canokey-qemu SYSTEM PRIVATE Inc canokey-core/virt-card canokey-core)
target_compile_definitions(canokey-qemu PRIVATE HW_VARIANT_NAME="CanoKey QEMU")
--target_link_libraries(canokey-qemu general canokey-core)
-+target_link_libraries(canokey-qemu general canokey-core lfs)
+-target_link_libraries(canokey-qemu PRIVATE canokey-core)
++target_link_libraries(canokey-qemu PRIVATE canokey-core lfs)
add_dependencies(canokey-qemu gitrev)
- install(TARGETS canokey-qemu LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
- PUBLIC_HEADER DESTINATION ${CMAKE_INSTALL_INCLUDEDIR})
---- canokey-qemu-151568c34f5e92b086b7a3a62a11c43dd39f628b/canokey-core/CMakeLists.txt.orig 2022-05-11 16:15:56.000000000 +0200
-+++ canokey-qemu-151568c34f5e92b086b7a3a62a11c43dd39f628b/canokey-core/CMakeLists.txt 2024-04-01 21:54:24.789520349 +0200
-@@ -29,8 +29,8 @@ if (DEFINED USBD_PRODUCT_STRING)
- endif ()
- file(GLOB_RECURSE SRC src/*.c applets/*.c interfaces/*.c
-- littlefs/lfs.c littlefs/lfs_util.c
-- tinycbor/src/cborencoder.c tinycbor/src/cborparser.c)
-+ )
-+include_directories("/usr/include/tinycbor")
+ install(TARGETS canokey-qemu
+--- canokey-qemu-1/canokey-core/CMakeLists.txt.orig 2026-03-15 13:33:33.000000000 +0100
++++ canokey-qemu-1/canokey-core/CMakeLists.txt 2026-05-18 20:22:16.204349415 +0200
+@@ -78,11 +78,8 @@ file(
+ src/*.c
+ applets/*.c
+ interfaces/*.c
+- littlefs/lfs.c
+- littlefs/lfs_util.c
+- tinycbor/src/cborencoder.c
+- tinycbor/src/cborparser.c
+ )
++#include_directories("/usr/include/tinycbor")
add_library(canokey-core ${SRC})
+ add_dependencies(canokey-core generate_ctap_get_info_cbor)
- if (ENABLE_TESTS)
-@@ -47,15 +46,13 @@ endif (ENABLE_FUZZING)
- target_include_directories(canokey-core SYSTEM
- PUBLIC
+@@ -102,9 +99,7 @@ target_include_directories(
+ SYSTEM
+ PUBLIC
include
- littlefs
- tinycbor/src
+- ${CMAKE_CURRENT_BINARY_DIR}/tinycbor
++ /usr/include/tinycbor
+ ${CMAKE_CURRENT_BINARY_DIR}
interfaces/USB/device
interfaces/USB/core/inc
- interfaces/USB/class/ccid
- interfaces/USB/class/ctaphid
- interfaces/USB/class/kbdhid
- interfaces/USB/class/webusb)
+@@ -114,7 +109,7 @@ target_include_directories(
+ interfaces/USB/class/webusb
+ )
+ target_compile_definitions(canokey-core PRIVATE CBOR_NO_FLOATING_POINT CBOR_STATIC_DEFINE)
-target_link_libraries(canokey-core canokey-crypto)
+target_link_libraries(canokey-core canokey-crypto lfs tinycbor)
list(APPEND CMAKE_MODULE_PATH "${CMAKE_CURRENT_SOURCE_DIR}/cmake/Modules")
-@@ -81,9 +78,9 @@ if (ENABLE_TESTS)
+@@ -146,17 +141,17 @@ if(ENABLE_TESTS)
+ virt-card/device-sim.c
+ virt-card/fabrication.c
+ virt-card/fido-hid-over-udp.c
+- littlefs/bd/lfs_filebd.c
+ )
+ target_include_directories(
+ fido-hid-over-udp
+ SYSTEM
+- PRIVATE virt-card littlefs
++ PRIVATE virt-card
+ )
+ target_link_libraries(
+ fido-hid-over-udp
+ general
+ canokey-core
++ lfs
+ "-fsanitize=address"
+ )
+ add_dependencies(fido-hid-over-udp gitrev)
+@@ -170,14 +165,13 @@ if(ENABLE_TESTS)
virt-card/device-sim.c
+ virt-card/ifdhandler.c
virt-card/fabrication.c
- virt-card/fido-hid-over-udp.c
-- littlefs/bd/lfs_filebd.c)
-- target_include_directories(fido-hid-over-udp SYSTEM PRIVATE virt-card littlefs)
-- target_link_libraries(fido-hid-over-udp general canokey-core "-fsanitize=address")
-+ )
-+ target_include_directories(fido-hid-over-udp SYSTEM PRIVATE virt-card)
-+ target_link_libraries(fido-hid-over-udp general canokey-core lfs "-fsanitize=address")
-
- pkg_search_module(PCSCLITE libpcsclite)
- if (PCSCLITE_FOUND)
-@@ -92,9 +89,9 @@ if (ENABLE_TESTS)
- virt-card/device-sim.c
- virt-card/ifdhandler.c
- virt-card/fabrication.c
-- littlefs/bd/lfs_filebd.c)
-- target_include_directories(u2f-virt-card SYSTEM PRIVATE virt-card ${PCSCLITE_INCLUDE_DIRS} littlefs)
+- littlefs/bd/lfs_filebd.c
+ )
+ target_include_directories(
+ u2f-virt-card
+ SYSTEM
+- PRIVATE virt-card ${PCSCLITE_INCLUDE_DIRS} littlefs
++ PRIVATE virt-card ${PCSCLITE_INCLUDE_DIRS}
+ )
- target_link_libraries(u2f-virt-card ${PCSCLITE_LIBRARIES} canokey-core)
-+ )
-+ target_include_directories(u2f-virt-card SYSTEM PRIVATE virt-card ${PCSCLITE_INCLUDE_DIRS})
-+ target_link_libraries(u2f-virt-card ${PCSCLITE_LIBRARIES} lfs canokey-core)
++ target_link_libraries(u2f-virt-card ${PCSCLITE_LIBRARIES} canokey-core lfs)
add_dependencies(u2f-virt-card gitrev)
- endif ()
- endif (ENABLE_TESTS)
-@@ -105,9 +102,9 @@ if (ENABLE_FUZZING)
- virt-card/usb-dummy.c
- virt-card/device-sim.c
- virt-card/fabrication.c
-- littlefs/bd/lfs_filebd.c)
-- target_include_directories(honggfuzz-fuzzer SYSTEM PRIVATE virt-card littlefs)
+ endif()
+ endif(ENABLE_TESTS)
+@@ -189,14 +183,13 @@ if(ENABLE_FUZZING)
+ virt-card/usb-dummy.c
+ virt-card/device-sim.c
+ virt-card/fabrication.c
+- littlefs/bd/lfs_filebd.c
+ )
+ target_include_directories(
+ honggfuzz-fuzzer
+ SYSTEM
+- PRIVATE virt-card littlefs
++ PRIVATE virt-card
+ )
- target_link_libraries(honggfuzz-fuzzer canokey-core)
-+ )
-+ target_include_directories(honggfuzz-fuzzer SYSTEM PRIVATE virt-card)
+ target_link_libraries(honggfuzz-fuzzer canokey-core lfs)
add_dependencies(honggfuzz-fuzzer gitrev)
- add_executable(honggfuzz-debug
-@@ -116,8 +113,8 @@ if (ENABLE_FUZZING)
- virt-card/usb-dummy.c
- virt-card/device-sim.c
- virt-card/fabrication.c
-- littlefs/bd/lfs_filebd.c)
-- target_include_directories(honggfuzz-debug SYSTEM PRIVATE virt-card littlefs)
+ add_executable(
+@@ -206,13 +199,12 @@ if(ENABLE_FUZZING)
+ virt-card/usb-dummy.c
+ virt-card/device-sim.c
+ virt-card/fabrication.c
+- littlefs/bd/lfs_filebd.c
+ )
+ target_include_directories(
+ honggfuzz-debug
+ SYSTEM
+- PRIVATE virt-card littlefs
++ PRIVATE virt-card
+ )
- target_link_libraries(honggfuzz-debug canokey-core)
-+ )
-+ target_include_directories(honggfuzz-debug SYSTEM PRIVATE virt-card)
+ target_link_libraries(honggfuzz-debug canokey-core lfs)
add_dependencies(honggfuzz-debug gitrev)
- endif (ENABLE_FUZZING)
---- canokey-qemu-151568c34f5e92b086b7a3a62a11c43dd39f628b/canokey-core/virt-card/fabrication.c.orig 2022-05-11 16:15:56.000000000 +0200
-+++ canokey-qemu-151568c34f5e92b086b7a3a62a11c43dd39f628b/canokey-core/virt-card/fabrication.c 2024-04-01 21:55:06.385961668 +0200
-@@ -9,7 +9,7 @@
+ endif(ENABLE_FUZZING)
+--- canokey-qemu-1/canokey-core/virt-card/fabrication.c.orig 2026-03-15 13:33:33.000000000 +0100
++++ canokey-qemu-1/canokey-core/virt-card/fabrication.c 2026-05-18 20:22:59.920779249 +0200
+@@ -10,7 +10,7 @@
#include <aes.h>
#include <apdu.h>
#include <assert.h>
@@ -114,37 +133,3 @@
#include <ctap.h>
#include <fs.h>
#include <lfs.h>
-@@ -15,6 +15,7 @@
- #include <lfs.h>
-
- static struct lfs_config cfg;
-+static struct lfs_filebd_config bdcfg;
- static lfs_filebd_t bd;
-
- uint8_t private_key[] = {0x46, 0x5b, 0x44, 0x5d, 0x8e, 0x78, 0x34, 0x53, 0xf7, 0x4b, 0x90,
-@@ -104,19 +105,20 @@ static void oath_init() {
-
- int card_fs_init(const char *lfs_root) {
- memset(&cfg, 0, sizeof(cfg));
-+ memset(&bdcfg, 0, sizeof(bdcfg));
- cfg.context = &bd;
- cfg.read = &lfs_filebd_read;
- cfg.prog = &lfs_filebd_prog;
- cfg.erase = &lfs_filebd_erase;
- cfg.sync = &lfs_filebd_sync;
-- cfg.read_size = 1;
-- cfg.prog_size = 512;
-- cfg.block_size = 512;
-- cfg.block_count = 256;
-+ bdcfg.read_size = cfg.read_size = 1;
-+ bdcfg.prog_size = cfg.prog_size = 512;
-+ bdcfg.erase_size = cfg.block_size = 512;
-+ bdcfg.erase_count = cfg.block_count = 256;
- cfg.block_cycles = 50000;
- cfg.cache_size = 512;
- cfg.lookahead_size = 16;
-- if (lfs_filebd_create(&cfg, lfs_root)) return 1;
-+ if (lfs_filebd_create(&cfg, lfs_root, &bdcfg)) return 1;
-
- int err = fs_mount(&cfg);
- if (err) { // should happen for the first boot
================================================================
---- gitweb:
http://git.pld-linux.org/gitweb.cgi/packages/canokey-qemu.git/commitdiff/0f4e38e007b30d9a5a7f1b0e7209a20a0730eb89
More information about the pld-cvs-commit
mailing list