mirror of https://github.com/wolfSSL/wolfBoot.git
Added missing symbols, change fix for double def
parent
cb9d1b0b28
commit
068f1acfc9
151
CMakeLists.txt
151
CMakeLists.txt
|
@ -128,8 +128,6 @@ add_option(
|
||||||
add_option("DEBUG_UART" "Enable trace debugging over a UART (default: disabled)" "no" "yes;no")
|
add_option("DEBUG_UART" "Enable trace debugging over a UART (default: disabled)" "no" "yes;no")
|
||||||
add_option("BUILD_TEST_APPS" "Build the wolfBoot image and test apps (default: disabled)" "no" "yes;no")
|
add_option("BUILD_TEST_APPS" "Build the wolfBoot image and test apps (default: disabled)" "no" "yes;no")
|
||||||
add_option("BUILD_IMAGE" "Build the wolfBoot image (default: disabled)" "no" "yes;no")
|
add_option("BUILD_IMAGE" "Build the wolfBoot image (default: disabled)" "no" "yes;no")
|
||||||
add_option("PYTHON_KEYTOOLS" "Use wolfCrypt-py for key generation and signing (default: disabled)"
|
|
||||||
"no" "yes;no")
|
|
||||||
add_option(
|
add_option(
|
||||||
"PULL_LINKER_DEFINES"
|
"PULL_LINKER_DEFINES"
|
||||||
"Pull partition addresses from the linker script instead of defining fixed addresses in target.h (default: disabled)"
|
"Pull partition addresses from the linker script instead of defining fixed addresses in target.h (default: disabled)"
|
||||||
|
@ -633,15 +631,9 @@ target_compile_definitions(wolfboothal PRIVATE ${WOLFBOOT_DEFS})
|
||||||
target_include_directories(wolfboothal PRIVATE ${WOLFBOOT_ROOT} include)
|
target_include_directories(wolfboothal PRIVATE ${WOLFBOOT_ROOT} include)
|
||||||
target_compile_options(wolfboothal PRIVATE ${WOLFBOOT_COMPILE_OPTIONS} ${EXTRA_COMPILE_OPTIONS})
|
target_compile_options(wolfboothal PRIVATE ${WOLFBOOT_COMPILE_OPTIONS} ${EXTRA_COMPILE_OPTIONS})
|
||||||
|
|
||||||
if(PYTHON_KEYTOOLS)
|
message(STATUS "Using C Keytools")
|
||||||
message(STATUS "Using Python Keytools")
|
set(SIGN_TOOL ${CMAKE_CURRENT_BINARY_DIR}/sign)
|
||||||
set(SIGN_TOOL ${WOLFBOOT_ROOT}/tools/keytools/sign.py)
|
set(KEYGEN_TOOL ${CMAKE_CURRENT_BINARY_DIR}/keygen)
|
||||||
set(KEYGEN_TOOL ${WOLFBOOT_ROOT}/tools/keytools/keygen.py)
|
|
||||||
else()
|
|
||||||
message(STATUS "Using C Keytools")
|
|
||||||
set(SIGN_TOOL ${CMAKE_CURRENT_BINARY_DIR}/sign)
|
|
||||||
set(KEYGEN_TOOL ${CMAKE_CURRENT_BINARY_DIR}/keygen)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
list(APPEND WOLFBOOT_INCLUDE_DIRS ${WOLFBOOT_ROOT} ${WOLFBOOT_ROOT}/include)
|
list(APPEND WOLFBOOT_INCLUDE_DIRS ${WOLFBOOT_ROOT} ${WOLFBOOT_ROOT}/include)
|
||||||
|
|
||||||
|
@ -711,76 +703,75 @@ target_include_directories(target BEFORE INTERFACE ${CMAKE_CURRENT_BINARY_DIR})
|
||||||
|
|
||||||
set(KEYSTORE ${CMAKE_CURRENT_BINARY_DIR}/keystore.c)
|
set(KEYSTORE ${CMAKE_CURRENT_BINARY_DIR}/keystore.c)
|
||||||
|
|
||||||
if(NOT PYTHON_KEYTOOLS)
|
list(
|
||||||
list(
|
APPEND
|
||||||
APPEND
|
KEYTOOL_SOURCES
|
||||||
KEYTOOL_SOURCES
|
src/delta.c
|
||||||
src/delta.c
|
lib/wolfssl/wolfcrypt/src/asn.c
|
||||||
lib/wolfssl/wolfcrypt/src/asn.c
|
lib/wolfssl/wolfcrypt/src/aes.c
|
||||||
lib/wolfssl/wolfcrypt/src/aes.c
|
lib/wolfssl/wolfcrypt/src/ecc.c
|
||||||
lib/wolfssl/wolfcrypt/src/ecc.c
|
lib/wolfssl/wolfcrypt/src/coding.c
|
||||||
lib/wolfssl/wolfcrypt/src/coding.c
|
lib/wolfssl/wolfcrypt/src/chacha.c
|
||||||
lib/wolfssl/wolfcrypt/src/chacha.c
|
lib/wolfssl/wolfcrypt/src/ed25519.c
|
||||||
lib/wolfssl/wolfcrypt/src/ed25519.c
|
lib/wolfssl/wolfcrypt/src/ed448.c
|
||||||
lib/wolfssl/wolfcrypt/src/ed448.c
|
lib/wolfssl/wolfcrypt/src/fe_operations.c
|
||||||
lib/wolfssl/wolfcrypt/src/fe_operations.c
|
lib/wolfssl/wolfcrypt/src/ge_operations.c
|
||||||
lib/wolfssl/wolfcrypt/src/ge_operations.c
|
lib/wolfssl/wolfcrypt/src/fe_448.c
|
||||||
lib/wolfssl/wolfcrypt/src/fe_448.c
|
lib/wolfssl/wolfcrypt/src/ge_448.c
|
||||||
lib/wolfssl/wolfcrypt/src/ge_448.c
|
lib/wolfssl/wolfcrypt/src/hash.c
|
||||||
lib/wolfssl/wolfcrypt/src/hash.c
|
lib/wolfssl/wolfcrypt/src/logging.c
|
||||||
lib/wolfssl/wolfcrypt/src/logging.c
|
lib/wolfssl/wolfcrypt/src/memory.c
|
||||||
lib/wolfssl/wolfcrypt/src/memory.c
|
lib/wolfssl/wolfcrypt/src/random.c
|
||||||
lib/wolfssl/wolfcrypt/src/random.c
|
lib/wolfssl/wolfcrypt/src/rsa.c
|
||||||
lib/wolfssl/wolfcrypt/src/rsa.c
|
lib/wolfssl/wolfcrypt/src/sp_int.c
|
||||||
lib/wolfssl/wolfcrypt/src/sp_int.c
|
lib/wolfssl/wolfcrypt/src/sp_c32.c
|
||||||
lib/wolfssl/wolfcrypt/src/sp_c32.c
|
lib/wolfssl/wolfcrypt/src/sp_c64.c
|
||||||
lib/wolfssl/wolfcrypt/src/sp_c64.c
|
lib/wolfssl/wolfcrypt/src/sha3.c
|
||||||
lib/wolfssl/wolfcrypt/src/sha3.c
|
lib/wolfssl/wolfcrypt/src/sha256.c
|
||||||
lib/wolfssl/wolfcrypt/src/sha256.c
|
lib/wolfssl/wolfcrypt/src/sha512.c
|
||||||
lib/wolfssl/wolfcrypt/src/sha512.c
|
lib/wolfssl/wolfcrypt/src/tfm.c
|
||||||
lib/wolfssl/wolfcrypt/src/tfm.c
|
lib/wolfssl/wolfcrypt/src/wc_port.c
|
||||||
lib/wolfssl/wolfcrypt/src/wc_port.c
|
lib/wolfssl/wolfcrypt/src/wolfmath.c
|
||||||
lib/wolfssl/wolfcrypt/src/wolfmath.c)
|
lib/wolfssl/wolfcrypt/src/dilithium.c
|
||||||
|
lib/wolfssl/wolfcrypt/src/wc_lms.c
|
||||||
|
lib/wolfssl/wolfcrypt/src/wc_lms_impl.c
|
||||||
|
lib/wolfssl/wolfcrypt/src/wc_xmss.c
|
||||||
|
lib/wolfssl/wolfcrypt/src/wc_xmss_impl.c
|
||||||
|
)
|
||||||
|
|
||||||
list(
|
list(
|
||||||
APPEND
|
APPEND
|
||||||
KEYTOOL_FLAGS
|
KEYTOOL_FLAGS
|
||||||
-Wall
|
-Wall
|
||||||
-Wextra
|
-Wextra
|
||||||
-Werror
|
-Werror
|
||||||
-Itools/keytools
|
-Itools/keytools
|
||||||
-DWOLFSSL_USER_SETTINGS
|
-DWOLFSSL_USER_SETTINGS
|
||||||
-Ilib/wolfssl/
|
-Ilib/wolfssl/
|
||||||
-Iinclude
|
-Iinclude
|
||||||
-I${CMAKE_CURRENT_BINARY_DIR}
|
-I${CMAKE_CURRENT_BINARY_DIR}
|
||||||
-DWOLFBOOT_KEYTOOLS
|
-O2
|
||||||
-O2
|
-DIMAGE_HEADER_SIZE=${IMAGE_HEADER_SIZE}
|
||||||
-DIMAGE_HEADER_SIZE=${IMAGE_HEADER_SIZE}
|
-DDELTA_UPDATES)
|
||||||
-DDELTA_UPDATES)
|
|
||||||
|
|
||||||
add_custom_command(
|
add_custom_command(
|
||||||
OUTPUT ${SIGN_TOOL}
|
OUTPUT ${SIGN_TOOL}
|
||||||
COMMAND gcc -o ${CMAKE_CURRENT_BINARY_DIR}/sign tools/keytools/sign.c ${KEYTOOL_SOURCES}
|
COMMAND gcc -o ${CMAKE_CURRENT_BINARY_DIR}/sign tools/keytools/sign.c ${KEYTOOL_SOURCES}
|
||||||
${KEYTOOL_FLAGS}
|
${KEYTOOL_FLAGS}
|
||||||
WORKING_DIRECTORY ${WOLFBOOT_ROOT}
|
WORKING_DIRECTORY ${WOLFBOOT_ROOT}
|
||||||
COMMENT "Building signing tool")
|
COMMENT "Building signing tool")
|
||||||
|
|
||||||
add_custom_command(
|
add_custom_command(
|
||||||
OUTPUT ${KEYGEN_TOOL}
|
OUTPUT ${KEYGEN_TOOL}
|
||||||
COMMAND gcc -o ${CMAKE_CURRENT_BINARY_DIR}/keygen tools/keytools/keygen.c ${KEYTOOL_SOURCES}
|
COMMAND gcc -o ${CMAKE_CURRENT_BINARY_DIR}/keygen tools/keytools/keygen.c ${KEYTOOL_SOURCES}
|
||||||
${KEYTOOL_FLAGS}
|
${KEYTOOL_FLAGS}
|
||||||
WORKING_DIRECTORY ${WOLFBOOT_ROOT}
|
WORKING_DIRECTORY ${WOLFBOOT_ROOT}
|
||||||
COMMENT "Building keygen tool")
|
COMMENT "Building keygen tool")
|
||||||
|
|
||||||
add_custom_target(keytools ALL DEPENDS ${SIGN_TOOL} ${KEYGEN_TOOL})
|
add_custom_target(keytools ALL DEPENDS ${SIGN_TOOL} ${KEYGEN_TOOL})
|
||||||
endif()
|
|
||||||
|
|
||||||
if(NOT SIGN STREQUAL "NONE")
|
if(NOT SIGN STREQUAL "NONE")
|
||||||
if(PYTHON_KEYTOOLS)
|
add_custom_target(keystore DEPENDS ${SIGN_TOOL} ${KEYGEN_TOOL} ${KEYSTORE})
|
||||||
add_custom_target(keystore DEPENDS ${KEYSTORE})
|
|
||||||
else()
|
|
||||||
add_custom_target(keystore DEPENDS ${SIGN_TOOL} ${KEYGEN_TOOL} ${KEYSTORE})
|
|
||||||
endif()
|
|
||||||
|
|
||||||
# generate keystore if it does not already exist
|
# generate keystore if it does not already exist
|
||||||
if(NOT EXISTS ${KEYSTORE})
|
if(NOT EXISTS ${KEYSTORE})
|
||||||
|
@ -791,12 +782,10 @@ if(NOT SIGN STREQUAL "NONE")
|
||||||
WORKING_DIRECTORY ${WOLFBOOT_ROOT}
|
WORKING_DIRECTORY ${WOLFBOOT_ROOT}
|
||||||
COMMENT "Generating keystore.c and signing private key")
|
COMMENT "Generating keystore.c and signing private key")
|
||||||
|
|
||||||
if(NOT PYTHON_KEYTOOLS)
|
add_custom_command(
|
||||||
add_custom_command(
|
OUTPUT ${KEYSTORE} ${WOLFBOOT_SIGNING_PRIVATE_KEY}
|
||||||
OUTPUT ${KEYSTORE} ${WOLFBOOT_SIGNING_PRIVATE_KEY}
|
DEPENDS ${KEYGEN_TOOL}
|
||||||
DEPENDS ${KEYGEN_TOOL}
|
APPEND)
|
||||||
APPEND)
|
|
||||||
endif()
|
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
add_library(public_key)
|
add_library(public_key)
|
||||||
|
|
|
@ -120,7 +120,7 @@ if(BUILD_TEST_APPS)
|
||||||
target_compile_definitions(image PRIVATE TARGET_${WOLFBOOT_TARGET}
|
target_compile_definitions(image PRIVATE TARGET_${WOLFBOOT_TARGET}
|
||||||
${TEST_APP_COMPILE_DEFINITIONS} ${WOLFBOOT_DEFS})
|
${TEST_APP_COMPILE_DEFINITIONS} ${WOLFBOOT_DEFS})
|
||||||
|
|
||||||
target_compile_options(image PRIVATE -Wall -Wstack-usage=1024 -ffreestanding -Wno-unused
|
target_compile_options(image PRIVATE -Wall -Wstack-usage=1024 -ffreestanding -Wno-unused -nostartfiles -fomit-frame-pointer
|
||||||
-nostartfiles)
|
-nostartfiles)
|
||||||
|
|
||||||
if(WOLFBOOT_TARGET STREQUAL "sim")
|
if(WOLFBOOT_TARGET STREQUAL "sim")
|
||||||
|
|
|
@ -29,9 +29,7 @@
|
||||||
#include <stdint.h>
|
#include <stdint.h>
|
||||||
|
|
||||||
/* System */
|
/* System */
|
||||||
#ifndef WOLFBOOT_KEYTOOLS
|
#define WOLFBOOT_KEYTOOLS
|
||||||
#define WOLFBOOT_KEYTOOLS
|
|
||||||
#endif
|
|
||||||
#define SINGLE_THREADED
|
#define SINGLE_THREADED
|
||||||
#define WOLFCRYPT_ONLY
|
#define WOLFCRYPT_ONLY
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue