mirror of
https://github.com/polhenarejos/pico-keys-sdk
synced 2026-05-27 08:35:12 +02:00
24
config/esp32/components/mldsa44/CMakeLists.txt
Normal file
24
config/esp32/components/mldsa44/CMakeLists.txt
Normal file
@@ -0,0 +1,24 @@
|
||||
set(MLKEM_DIR ${CMAKE_CURRENT_LIST_DIR}/../../../../third-party/mlkem/mlkem)
|
||||
|
||||
file(GLOB_RECURSE MLKEM_SOURCES
|
||||
${MLKEM_DIR}/src/*.c
|
||||
)
|
||||
list(FILTER MLKEM_SOURCES EXCLUDE REGEX "/native/")
|
||||
|
||||
idf_component_register(
|
||||
SRCS ${MLKEM_SOURCES}
|
||||
INCLUDE_DIRS ${MLKEM_DIR}
|
||||
)
|
||||
idf_component_set_property(${COMPONENT_NAME} WHOLE_ARCHIVE ON)
|
||||
|
||||
target_compile_definitions(${COMPONENT_LIB} PRIVATE
|
||||
MLK_CONFIG_PARAMETER_SET=512
|
||||
MLK_CONFIG_MULTILEVEL_WITH_SHARED
|
||||
MLK_CONFIG_NAMESPACE_PREFIX=mlkem
|
||||
)
|
||||
|
||||
target_compile_options(${COMPONENT_LIB} PRIVATE
|
||||
-O2
|
||||
-fno-builtin
|
||||
-fno-strict-aliasing
|
||||
)
|
||||
24
config/esp32/components/mldsa65/CMakeLists.txt
Normal file
24
config/esp32/components/mldsa65/CMakeLists.txt
Normal file
@@ -0,0 +1,24 @@
|
||||
set(MLDSA_DIR ${CMAKE_CURRENT_LIST_DIR}/../../../../third-party/mldsa/mldsa)
|
||||
|
||||
file(GLOB_RECURSE MLDSA_SOURCES
|
||||
${MLDSA_DIR}/src/*.c
|
||||
)
|
||||
list(FILTER MLDSA_SOURCES EXCLUDE REGEX "/native/")
|
||||
|
||||
idf_component_register(
|
||||
SRCS ${MLDSA_SOURCES}
|
||||
INCLUDE_DIRS ${MLDSA_DIR}
|
||||
)
|
||||
idf_component_set_property(${COMPONENT_NAME} WHOLE_ARCHIVE ON)
|
||||
|
||||
target_compile_definitions(${COMPONENT_LIB} PRIVATE
|
||||
MLD_CONFIG_PARAMETER_SET=65
|
||||
MLD_CONFIG_MULTILEVEL_WITH_SHARED
|
||||
MLD_CONFIG_NAMESPACE_PREFIX=mldsa
|
||||
)
|
||||
|
||||
target_compile_options(${COMPONENT_LIB} PRIVATE
|
||||
-O2
|
||||
-fno-builtin
|
||||
-fno-strict-aliasing
|
||||
)
|
||||
24
config/esp32/components/mldsa87/CMakeLists.txt
Normal file
24
config/esp32/components/mldsa87/CMakeLists.txt
Normal file
@@ -0,0 +1,24 @@
|
||||
set(MLDSA_DIR ${CMAKE_CURRENT_LIST_DIR}/../../../../third-party/mldsa/mldsa)
|
||||
|
||||
file(GLOB_RECURSE MLDSA_SOURCES
|
||||
${MLDSA_DIR}/src/*.c
|
||||
)
|
||||
list(FILTER MLDSA_SOURCES EXCLUDE REGEX "/native/")
|
||||
|
||||
idf_component_register(
|
||||
SRCS ${MLDSA_SOURCES}
|
||||
INCLUDE_DIRS ${MLDSA_DIR}
|
||||
)
|
||||
idf_component_set_property(${COMPONENT_NAME} WHOLE_ARCHIVE ON)
|
||||
|
||||
target_compile_definitions(${COMPONENT_LIB} PRIVATE
|
||||
MLD_CONFIG_PARAMETER_SET=87
|
||||
MLD_CONFIG_MULTILEVEL_WITH_SHARED
|
||||
MLD_CONFIG_NAMESPACE_PREFIX=mldsa
|
||||
)
|
||||
|
||||
target_compile_options(${COMPONENT_LIB} PRIVATE
|
||||
-O2
|
||||
-fno-builtin
|
||||
-fno-strict-aliasing
|
||||
)
|
||||
@@ -24,11 +24,16 @@ if(ENABLE_PQC)
|
||||
list(APPEND PICOKEYS_INCLUDE_DIRS
|
||||
${PICOKEYS_SDK_DIR}/third-party/mlkem/mlkem
|
||||
${PICOKEYS_SDK_DIR}/config/mlkem
|
||||
${PICOKEYS_SDK_DIR}/third-party/mldsa/mldsa
|
||||
${PICOKEYS_SDK_DIR}/config/mldsa
|
||||
)
|
||||
list(APPEND PICOKEYS_REQUIRES
|
||||
mlkem512
|
||||
mlkem768
|
||||
mlkem1024
|
||||
mldsa44
|
||||
mldsa65
|
||||
mldsa87
|
||||
)
|
||||
endif()
|
||||
|
||||
|
||||
29
config/mldsa/mldsa_native_all.h
Normal file
29
config/mldsa/mldsa_native_all.h
Normal file
@@ -0,0 +1,29 @@
|
||||
/*
|
||||
* Copyright (c) The mlkem-native project authors
|
||||
* Copyright (c) The mldsa-native project authors
|
||||
* SPDX-License-Identifier: Apache-2.0 OR ISC OR MIT
|
||||
*/
|
||||
|
||||
#ifndef MLD_ALL_H
|
||||
#define MLD_ALL_H
|
||||
|
||||
|
||||
/* API for MLDSA-44 */
|
||||
#define MLD_CONFIG_PARAMETER_SET 44
|
||||
#include "mldsa_native/mldsa_native.h"
|
||||
#undef MLD_CONFIG_PARAMETER_SET
|
||||
#undef MLD_H
|
||||
|
||||
/* API for MLDSA-65 */
|
||||
#define MLD_CONFIG_PARAMETER_SET 65
|
||||
#include "mldsa_native/mldsa_native.h"
|
||||
#undef MLD_CONFIG_PARAMETER_SET
|
||||
#undef MLD_H
|
||||
|
||||
/* API for MLDSA-87 */
|
||||
#define MLD_CONFIG_PARAMETER_SET 87
|
||||
#include "mldsa_native/mldsa_native.h"
|
||||
#undef MLD_CONFIG_PARAMETER_SET
|
||||
#undef MLD_H
|
||||
|
||||
#endif /* !MLD_ALL_H */
|
||||
10
config/mldsa/mldsa_native_config.h
Normal file
10
config/mldsa/mldsa_native_config.h
Normal file
@@ -0,0 +1,10 @@
|
||||
#pragma once
|
||||
|
||||
/* Disable all native/asm backends */
|
||||
// #define MLD_CONFIG_USE_NATIVE_BACKEND_ARITH
|
||||
|
||||
/* No SuperCop */
|
||||
#define MLD_CONFIG_NO_SUPERCOP
|
||||
|
||||
/* No verification API */
|
||||
#define MLD_CONFIG_NO_VERIFY_API
|
||||
Reference in New Issue
Block a user