cryptoauthlib icon indicating copy to clipboard operation
cryptoauthlib copied to clipboard

cryptoauth target does not propagate header path to other projects

Open jacobschloss opened this issue 8 months ago • 7 comments

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 https://github.com/MicrochipTech/cryptoauthlib/blob/405d8311a203e61657597c81b23ae7a370f485d9/lib/CMakeLists.txt#L309

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.

jacobschloss avatar Jun 19 '24 00:06 jacobschloss