|
@@ -8,17 +8,22 @@ set(CMAKE_VERBOSE_MAKEFILE ON) |
|
|
set(UPQCL_LIBRARY_VER ${PROJECT_VERSION_MAJOR}.${PROJECT_VERSION_MINOR}.${PROJECT_VERSION_PATCH}) |
|
|
set(UPQCL_LIBRARY_VER ${PROJECT_VERSION_MAJOR}.${PROJECT_VERSION_MINOR}.${PROJECT_VERSION_PATCH}) |
|
|
set(CMAKE_C_STANDARD 99) |
|
|
set(CMAKE_C_STANDARD 99) |
|
|
|
|
|
|
|
|
|
|
|
if(PLATFORM STREQUAL "stm32disco") |
|
|
|
|
|
include_directories(${PROJECT_SOURCE_DIR}/platform/stm32disco) |
|
|
|
|
|
endif() |
|
|
|
|
|
|
|
|
# Global configuration |
|
|
# Global configuration |
|
|
string(APPEND CMAKE_C_FLAGS "-Os ") |
|
|
string(APPEND CMAKE_C_FLAGS "-Os ") |
|
|
string(APPEND CMAKE_C_FLAGS "-Wno-ignored-qualifiers ") |
|
|
string(APPEND CMAKE_C_FLAGS "-Wno-ignored-qualifiers ") |
|
|
string(APPEND CMAKE_C_FLAGS "-Wall ") |
|
|
string(APPEND CMAKE_C_FLAGS "-Wall ") |
|
|
string(APPEND CMAKE_C_FLAGS "-Werror ") |
|
|
string(APPEND CMAKE_C_FLAGS "-Werror ") |
|
|
string(APPEND CMAKE_C_FLAGS "-Wextra ") |
|
|
|
|
|
string(APPEND CMAKE_C_FLAGS "-Wpedantic ") |
|
|
|
|
|
|
|
|
#string(APPEND CMAKE_C_FLAGS "-Wextra ") |
|
|
|
|
|
#string(APPEND CMAKE_C_FLAGS "-Wpedantic ") |
|
|
string(APPEND CMAKE_C_FLAGS "-Wshadow ") |
|
|
string(APPEND CMAKE_C_FLAGS "-Wshadow ") |
|
|
string(APPEND CMAKE_C_FLAGS "-Wno-variadic-macros ") |
|
|
string(APPEND CMAKE_C_FLAGS "-Wno-variadic-macros ") |
|
|
string(APPEND CMAKE_C_FLAGS "-Wno-undef ") |
|
|
string(APPEND CMAKE_C_FLAGS "-Wno-undef ") |
|
|
string(APPEND CMAKE_C_FLAGS "-Wunused-result ") |
|
|
|
|
|
|
|
|
string(APPEND CMAKE_C_FLAGS "-Wno-unused ") |
|
|
|
|
|
#string(APPEND CMAKE_C_FLAGS "-Wunused-result ") |
|
|
string(APPEND CMAKE_C_FLAGS "-Wmissing-prototypes ") |
|
|
string(APPEND CMAKE_C_FLAGS "-Wmissing-prototypes ") |
|
|
string(APPEND CMAKE_C_FLAGS "-Wvla ") |
|
|
string(APPEND CMAKE_C_FLAGS "-Wvla ") |
|
|
string(APPEND CMAKE_C_FLAGS "-Wredundant-decls ") |
|
|
string(APPEND CMAKE_C_FLAGS "-Wredundant-decls ") |
|
@@ -31,7 +36,7 @@ set(uEXAMPLE_SRC |
|
|
${PROJECT_SOURCE_DIR}/src/common/crypto_hashblocks_sha512_inner32.s |
|
|
${PROJECT_SOURCE_DIR}/src/common/crypto_hashblocks_sha512_inner32.s |
|
|
${PROJECT_SOURCE_DIR}/src/common/crypto_hashblocks_sha512.c |
|
|
${PROJECT_SOURCE_DIR}/src/common/crypto_hashblocks_sha512.c |
|
|
${PROJECT_SOURCE_DIR}/src/common/randombytes.c |
|
|
${PROJECT_SOURCE_DIR}/src/common/randombytes.c |
|
|
${PROJECT_SOURCE_DIR}/src/common/hal-stm32f4.c |
|
|
|
|
|
|
|
|
#${PROJECT_SOURCE_DIR}/src/common/hal-stm32f4.c |
|
|
${PROJECT_SOURCE_DIR}/src/saber/cbd.c |
|
|
${PROJECT_SOURCE_DIR}/src/saber/cbd.c |
|
|
${PROJECT_SOURCE_DIR}/src/saber/kem.c |
|
|
${PROJECT_SOURCE_DIR}/src/saber/kem.c |
|
|
${PROJECT_SOURCE_DIR}/src/saber/mul.S |
|
|
${PROJECT_SOURCE_DIR}/src/saber/mul.S |
|
@@ -47,9 +52,10 @@ set(uEXAMPLE_SRC |
|
|
add_library( |
|
|
add_library( |
|
|
uexample_obj OBJECT |
|
|
uexample_obj OBJECT |
|
|
${uEXAMPLE_SRC}) |
|
|
${uEXAMPLE_SRC}) |
|
|
|
|
|
|
|
|
target_include_directories( |
|
|
target_include_directories( |
|
|
uexample_obj PRIVATE |
|
|
uexample_obj PRIVATE |
|
|
${PROJECT_SOURCE_DIR}/3rd/libopencm3/include |
|
|
|
|
|
|
|
|
#${PROJECT_SOURCE_DIR}/3rd/libopencm3/include |
|
|
${PROJECT_SOURCE_DIR}/src/common |
|
|
${PROJECT_SOURCE_DIR}/src/common |
|
|
${PROJECT_SOURCE_DIR}/src/sabre) |
|
|
${PROJECT_SOURCE_DIR}/src/sabre) |
|
|
|
|
|
|
|
@@ -61,24 +67,6 @@ add_executable( |
|
|
|
|
|
|
|
|
target_include_directories( |
|
|
target_include_directories( |
|
|
uexample_test PRIVATE |
|
|
uexample_test PRIVATE |
|
|
${PROJECT_SOURCE_DIR}/3rd/libopencm3/include |
|
|
|
|
|
|
|
|
#${PROJECT_SOURCE_DIR}/3rd/libopencm3/include |
|
|
${PROJECT_SOURCE_DIR}/src/common |
|
|
${PROJECT_SOURCE_DIR}/src/common |
|
|
${PROJECT_SOURCE_DIR}/src/saber) |
|
|
${PROJECT_SOURCE_DIR}/src/saber) |
|
|
|
|
|
|
|
|
target_link_libraries( |
|
|
|
|
|
uexample_test PRIVATE |
|
|
|
|
|
--static -Wl,--start-group -lc -lgcc -lnosys -Wl,--end-group |
|
|
|
|
|
-T${PROJECT_SOURCE_DIR}/src/stm32f405x6.ld |
|
|
|
|
|
-nostartfiles -Wl,--gc-sections |
|
|
|
|
|
-L${PROJECT_SOURCE_DIR}/3rd/libopencm3/lib -lm -lopencm3_stm32f4 |
|
|
|
|
|
) |
|
|
|
|
|
|
|
|
|
|
|
add_custom_command( |
|
|
|
|
|
TARGET uexample_test POST_BUILD |
|
|
|
|
|
COMMAND ${OBJCOPY} -Obinary uexample_test uexample_test.bin |
|
|
|
|
|
COMMENT "Invoking: objcopy") |
|
|
|
|
|
|
|
|
|
|
|
add_custom_target( |
|
|
|
|
|
flash |
|
|
|
|
|
COMMAND st-flash write uexample_test.bin 0x8000000 |
|
|
|
|
|
COMMENT "Flashing device") |
|
|
|