diff --git a/c8_libpayload/CMakeLists.txt b/c8_libpayload/CMakeLists.txt index 86b7e65..0c02d72 100644 --- a/c8_libpayload/CMakeLists.txt +++ b/c8_libpayload/CMakeLists.txt @@ -1,6 +1,6 @@ project(checkm8_libpayload) -set(PL_NAMES_SHORT +set(PL_NAMES aes aes_busy aes_sw @@ -8,29 +8,28 @@ set(PL_NAMES_SHORT sysreg task_sleep_test) -foreach(NAME ${PL_NAMES_SHORT}) +foreach(NAME ${PL_NAMES}) list(APPEND PL_TARGETS "payload_${NAME}") - list(APPEND PL_SRC_SHORT "${CMAKE_CURRENT_LIST_DIR}/pl/src/${NAME}.c") + list(APPEND PL_SRC_BIN "${CMAKE_CURRENT_LIST_DIR}/pl/src/${NAME}.c") endforeach(NAME) -foreach(NAME ${PL_TARGETS}) - list(APPEND PL_SRC_LONG "${CMAKE_CURRENT_BINARY_DIR}/lib/${NAME}.c") - list(APPEND PL_BIN "${CMAKE_CURRENT_BINARY_DIR}/pl/bin/${NAME}.bin") - list(APPEND PL_TARGETS_BIN ${NAME}_bin) -endforeach(NAME) +foreach(TARGET ${PL_TARGETS}) + list(APPEND PL_SRC_LIB "${CMAKE_CURRENT_BINARY_DIR}/lib/${TARGET}.c") + list(APPEND PL_BIN "${CMAKE_CURRENT_BINARY_DIR}/pl/bin/${TARGET}.bin") +endforeach(TARGET) add_subdirectory(pl) file(MAKE_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/lib) add_custom_target(payload_sources - BYPRODUCTS ${PL_SRC_LONG} - DEPENDS ${PL_TARGETS_BIN} + BYPRODUCTS ${PL_SRC_LIB} + DEPENDS ${PL_TARGETS} COMMENT "Refreshing payload library" COMMAND python3 ${CMAKE_CURRENT_LIST_DIR}/scripts/librarize.py - ${CMAKE_CURRENT_BINARY_DIR}/pl/bin - ${CMAKE_CURRENT_BINARY_DIR}/lib) + ${CMAKE_CURRENT_BINARY_DIR}/pl/bin + ${CMAKE_CURRENT_BINARY_DIR}/lib) -add_library(payload ${PL_SRC_LONG}) +add_library(payload ${PL_SRC_LIB}) add_dependencies(payload payload_sources) add_custom_command(TARGET payload POST_BUILD diff --git a/c8_libpayload/pl/CMakeLists.txt b/c8_libpayload/pl/CMakeLists.txt index b99dde6..1b3471b 100644 --- a/c8_libpayload/pl/CMakeLists.txt +++ b/c8_libpayload/pl/CMakeLists.txt @@ -11,14 +11,12 @@ endif() set(CMAKE_C_FLAGS "-nostdlib -O") file(MAKE_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/bin) -foreach(PL ${PL_NAMES_SHORT}) - add_executable(payload_${PL} src/${PL}.c) - add_custom_command(TARGET payload_${PL} POST_BUILD - BYPRODUCTS ${CMAKE_CURRENT_BINARY_DIR}/bin/payload_${PL}.bin +foreach(NAME ${PL_NAMES}) + add_executable(payload_${NAME} src/${NAME}.c) + add_custom_command(TARGET payload_${NAME} POST_BUILD + BYPRODUCTS ${CMAKE_CURRENT_BINARY_DIR}/bin/payload_${NAME}.bin COMMAND ${CMAKE_OBJCOPY} ARGS -O binary -j .text -j .payload_text -j .payload_data - ${CMAKE_CURRENT_BINARY_DIR}/payload_${PL} - ${CMAKE_CURRENT_BINARY_DIR}/bin/payload_${PL}.bin) - - add_custom_target(payload_${PL}_bin DEPENDS payload_${PL}) -endforeach(PL) \ No newline at end of file + ${CMAKE_CURRENT_BINARY_DIR}/payload_${NAME} + ${CMAKE_CURRENT_BINARY_DIR}/bin/payload_${NAME}.bin) +endforeach(NAME) \ No newline at end of file