mirror of
https://github.com/openwrt/packages.git
synced 2025-12-10 12:41:22 +00:00
liboqs: Add library for quantum-safe cryptographic algorithms
liboqs is an open source C library for quantum-safe cryptographic algorithms. liboqs provides: - a collection of open source implementations of quantum-safe key encapsulation mechanisms (KEMs) and digital signature algorithms - a common API for these algorithms - a test harness and benchmarking routines liboqs is part of the Open Quantum Safe (OQS) project, which aims to develop and integrate into applications quantum-safe cryptography to facilitate deployment and testing in real world contexts. In particular, OQS provides prototype integrations of liboqs into protocols like TLS, X.509, and S/MIME, through our OpenSSL 3 Provider and we provide a variety of other post-quantum-enabled demos. Signed-off-by: Christian Marangi <ansuelsmth@gmail.com> Tested-by: Eneas U de Queiroz <cotequeiroz@gmail.com>
This commit is contained in:
80
libs/liboqs/Makefile
Normal file
80
libs/liboqs/Makefile
Normal file
@@ -0,0 +1,80 @@
|
|||||||
|
#
|
||||||
|
# This is free software, licensed under the GNU General Public License v2.
|
||||||
|
# See /LICENSE for more information.
|
||||||
|
#
|
||||||
|
|
||||||
|
include $(TOPDIR)/rules.mk
|
||||||
|
|
||||||
|
PKG_NAME:=liboqs
|
||||||
|
PKG_VERSION:=0.14.0
|
||||||
|
PKG_RELEASE:=1
|
||||||
|
|
||||||
|
PKG_SOURCE_PROTO:=git
|
||||||
|
PKG_SOURCE_URL:=https://github.com/open-quantum-safe/liboqs.git
|
||||||
|
PKG_SOURCE_VERSION:=94b421ebb82405c843dba4e9aa521a56ee5a333d
|
||||||
|
PKG_MIRROR_HASH:=c57180c12968b5798e39c97780aab2a51d988c8710125406ab22b3c5ddceba1c
|
||||||
|
|
||||||
|
PKG_MAINTAINER:=Christian Marangi <ansuelsmth@gmail.com>
|
||||||
|
PKG_LICENSE:=MIT
|
||||||
|
PKG_LICENSE_FILES:=LICENSE.txt
|
||||||
|
|
||||||
|
include $(INCLUDE_DIR)/package.mk
|
||||||
|
include $(INCLUDE_DIR)/cmake.mk
|
||||||
|
|
||||||
|
define Package/liboqs
|
||||||
|
SECTION:=libs
|
||||||
|
CATEGORY:=Libraries
|
||||||
|
TITLE:=Library for quantum-safe cryptographic algorithms
|
||||||
|
DEPENDS:=+libopenssl
|
||||||
|
URL:=https://openquantumsafe.org/
|
||||||
|
endef
|
||||||
|
|
||||||
|
define Package/liboqs/description
|
||||||
|
liboqs is an open source C library for quantum-safe cryptographic
|
||||||
|
algorithms.
|
||||||
|
|
||||||
|
liboqs provides:
|
||||||
|
|
||||||
|
- a collection of open source implementations of quantum-safe key
|
||||||
|
encapsulation mechanisms (KEMs) and digital signature algorithms
|
||||||
|
- a common API for these algorithms
|
||||||
|
- a test harness and benchmarking routines
|
||||||
|
|
||||||
|
liboqs is part of the Open Quantum Safe (OQS) project, which aims to
|
||||||
|
develop and integrate into applications quantum-safe cryptography to
|
||||||
|
facilitate deployment and testing in real world contexts. In particular,
|
||||||
|
OQS provides prototype integrations of liboqs into protocols like TLS,
|
||||||
|
X.509, and S/MIME, through our OpenSSL 3 Provider and we provide a
|
||||||
|
variety of other post-quantum-enabled demos.
|
||||||
|
endef
|
||||||
|
|
||||||
|
CMAKE_OPTIONS += \
|
||||||
|
-DBUILD_SHARED_LIBS=ON \
|
||||||
|
-DOQS_BUILD_ONLY_LIB=ON \
|
||||||
|
-DOQS_PERMIT_UNSUPPORTED_ARCHITECTURE=ON
|
||||||
|
|
||||||
|
define Build/InstallDev
|
||||||
|
|
||||||
|
$(INSTALL_DIR) $(1)/usr/include/oqs
|
||||||
|
$(INSTALL_DATA) $(PKG_INSTALL_DIR)/usr/include/oqs/*.h \
|
||||||
|
$(1)/usr/include/oqs/
|
||||||
|
|
||||||
|
$(INSTALL_DIR) $(1)/usr/lib
|
||||||
|
$(CP) $(PKG_INSTALL_DIR)/usr/lib/liboqs.so.* \
|
||||||
|
$(1)/usr/lib/
|
||||||
|
|
||||||
|
$(INSTALL_DIR) $(1)/usr/lib/pkgconfig
|
||||||
|
$(INSTALL_DATA) $(PKG_INSTALL_DIR)/usr/lib/pkgconfig/liboqs.pc \
|
||||||
|
$(1)/usr/lib/pkgconfig/liboqs.pc
|
||||||
|
|
||||||
|
$(INSTALL_DIR) $(1)/usr/lib/cmake/liboqs
|
||||||
|
$(INSTALL_DATA) $(PKG_INSTALL_DIR)/usr/lib/cmake/liboqs/*.cmake \
|
||||||
|
$(1)/usr/lib/cmake/liboqs/
|
||||||
|
endef
|
||||||
|
|
||||||
|
define Package/liboqs/install
|
||||||
|
$(INSTALL_DIR) $(1)/usr/lib
|
||||||
|
$(CP) $(PKG_INSTALL_DIR)/usr/lib/liboqs.so.* $(1)/usr/lib/
|
||||||
|
endef
|
||||||
|
|
||||||
|
$(eval $(call BuildPackage,liboqs))
|
||||||
Reference in New Issue
Block a user