Skip to content

cryptoauth target does not propagate header path to other projects #379

Closed
@jacobschloss

Description

@jacobschloss

Describe the bug
The cmake target "cryptoauth" does not declare its headers with target_include_directories, so other projects that use this library do not automatically pick up all of the needed header paths when linking.

To Reproduce
Create a new cmake project that uses this library as a submodule. Create a small executable and link with target_link_libraries(foo PUBLIC cryptoauth).

As the needed header dirs are not exported with the cryptoauth target, the build will fail with
fatal error: cryptoauthlib.h: No such file or directory

Expected behavior
Clean build

Additional context
Changing include_directories to target_include_directories at cryptoauthlib/lib/CMakeLists.txt

include_directories(cryptoauth PUBLIC ${CMAKE_CURRENT_BINARY_DIR}

seems to work, the headers are correctly propagated to another exe that links to cryptoauth and it builds without manually setting the header search path. May also need to change something for OPENSSL support / L326 if ATCA_OPENSSL is set.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions