From 804701d4e6d862f67a6b17c5162beefd309f7bbf Mon Sep 17 00:00:00 2001 From: Matt Strapp Date: Mon, 13 May 2024 12:02:03 -0500 Subject: Add CMake Signed-off-by: Matt Strapp --- CMakeLists.txt | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) create mode 100644 CMakeLists.txt (limited to 'CMakeLists.txt') diff --git a/CMakeLists.txt b/CMakeLists.txt new file mode 100644 index 0000000..4740aec --- /dev/null +++ b/CMakeLists.txt @@ -0,0 +1,23 @@ +cmake_minimum_required(VERSION 3.14) +project(libocusts VERSION 1.0.0 DESCRIPTION "A completely normal C library" LANGUAGES C) + +include(GNUInstallDirs) + +add_library(objlib OBJECT include/locusts.h) +target_include_directories(objlib PUBLIC include) +set_target_properties(objlib PROPERTIES LINKER_LANGUAGE C) + +add_library(ocusts SHARED $ include/locusts.h) +target_link_libraries(ocusts PUBLIC objlib) +set_target_properties(ocusts PROPERTIES LINKER_LANGUAGE C) + +add_library(ocusts_static STATIC $ include/locusts.h) +target_link_libraries(ocusts_static PUBLIC objlib) +set_target_properties(ocusts_static PROPERTIES LINKER_LANGUAGE C) + +set(prefix ${CMAKE_INSTALL_PREFIX}) +set(libdir $\${prefix}/${CMAKE_INSTALL_LIBDIR}) +set(includedir \${prefix}/${CMAKE_INSTALL_INCLUDEDIR}) +set(VERSION ${PROJECT_VERSION}) +configure_file(${CMAKE_CURRENT_SOURCE_DIR}/ocusts.pc.in ${CMAKE_CURRENT_BINARY_DIR}/ocusts.pc @ONLY) +install(FILES ${CMAKE_CURRENT_BINARY_DIR}/ocusts.pc DESTINATION ${CMAKE_INSTALL_LIBDIR}/pkgconfig) \ No newline at end of file -- cgit v1.2.3