build: fix CMake out-of-tree config includes

This commit is contained in:
Mario Fetka
2026-06-03 07:05:28 +00:00
parent 04692f322c
commit d8c15d2272

View File

@@ -252,12 +252,22 @@ function(matrixssl_configure_target target_name)
target_sources(${target_name} PRIVATE ${MATRIXSSL_ALL_SOURCES})
target_include_directories(${target_name}
PUBLIC
$<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/matrixssl>
$<BUILD_INTERFACE:${MATRIXSSL_GENERATED_DIR}/core/config>
$<BUILD_INTERFACE:${MATRIXSSL_GENERATED_DIR}/crypto>
$<BUILD_INTERFACE:${MATRIXSSL_GENERATED_DIR}/matrixssl>
$<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}>
$<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/crypto/aead/chacha20poly1305ietf>
$<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/crypto/scalarmult/include/sodium>
$<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/crypto/crypto_sign/include/sodium>
$<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/core/include>
$<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/core/osdep/include>
$<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/crypto>
$<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/matrixssl>
$<INSTALL_INTERFACE:${CMAKE_INSTALL_INCLUDEDIR}/${MATRIXSSL_INSTALL_INCLUDE_SUBDIR}>
PRIVATE
${MATRIXSSL_COMMON_INCLUDE_DIRS})
target_compile_features(${target_name} PRIVATE c_std_99)
target_compile_definitions(${target_name} PUBLIC MATRIX_CONFIGURATION_INCDIR_FIRST)
target_compile_options(${target_name} PRIVATE -ffunction-sections -fdata-sections -fno-math-errno)
if(CMAKE_SYSTEM_PROCESSOR MATCHES "^(x86_64|amd64|AMD64|i[3-6]86)$")
target_compile_options(${target_name} PRIVATE -maes)
@@ -296,16 +306,22 @@ if(MATRIXSSL_BUILD_STATIC)
endif()
install(FILES
matrixssl/matrixsslApi.h
matrixssl/matrixsslApiLimits.h
matrixssl/matrixsslApiPre.h
matrixssl/matrixsslApiRet.h
matrixssl/matrixsslApiTypes.h
matrixssl/matrixsslApiVer.h
matrixssl/matrixssllib.h
crypto/cryptoApi.h
crypto/cryptolib.h
"${MATRIXSSL_GENERATED_DIR}/core/config/coreConfig.h"
"${MATRIXSSL_GENERATED_DIR}/crypto/cryptoConfig.h"
"${MATRIXSSL_GENERATED_DIR}/matrixssl/matrixsslConfig.h"
DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/${MATRIXSSL_INSTALL_INCLUDE_SUBDIR})
install(DIRECTORY core/include/
DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/${MATRIXSSL_INSTALL_INCLUDE_SUBDIR}
FILES_MATCHING PATTERN "*.h")
install(DIRECTORY core/osdep/include/
DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/${MATRIXSSL_INSTALL_INCLUDE_SUBDIR}
FILES_MATCHING PATTERN "*.h")
install(DIRECTORY crypto/
DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/${MATRIXSSL_INSTALL_INCLUDE_SUBDIR}/crypto
FILES_MATCHING PATTERN "*.h")
install(DIRECTORY matrixssl/
DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/${MATRIXSSL_INSTALL_INCLUDE_SUBDIR}/matrixssl
FILES_MATCHING PATTERN "*.h")
install(EXPORT matrixsslTargets
NAMESPACE MATRIXSSL::
DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake/matrixssl)