create initial structure + cmakelists (thanks claude)

This commit is contained in:
2026-10-08 08:17:13 +02:00
parent df1d041e59
commit d2879b730c
6 changed files with 1303 additions and 0 deletions
+12
View File
@@ -0,0 +1,12 @@
prefix=@CMAKE_INSTALL_PREFIX@
exec_prefix=${prefix}
libdir=${prefix}/@CMAKE_INSTALL_LIBDIR@
includedir=${prefix}/@CMAKE_INSTALL_INCLUDEDIR@
Name: bravais
Description: @CMAKE_PROJECT_DESCRIPTION@
URL: @CMAKE_PROJECT_HOMEPAGE_URL@
Version: @PROJECT_VERSION@
Libs: -L${libdir} -lbravais
Libs.private: -lsodium -loqs
Cflags: -I${includedir}
+18
View File
@@ -0,0 +1,18 @@
@PACKAGE_INIT@
include(CMakeFindDependencyMacro)
# libsodium and liboqs are PRIVATE link dependencies, so a consumer of the
# shared library never sees them. A consumer of the *static* library does: the
# archive carries unresolved crypto_* and OQS_* symbols that only the final link
# line can satisfy, and CMake recorded them as $<LINK_ONLY:...> in the export
# set. Resolve them here so `find_package(bravais)` works for both.
if(@BRAVAIS_ENABLE_CRYPTO@)
find_dependency(PkgConfig)
pkg_check_modules(SODIUM REQUIRED IMPORTED_TARGET libsodium>=1.0.18)
find_dependency(liboqs CONFIG)
endif()
include("${CMAKE_CURRENT_LIST_DIR}/bravaisTargets.cmake")
check_required_components(bravais)