summaryrefslogtreecommitdiff
path: root/CMakeLists.txt
diff options
context:
space:
mode:
authorFelix Morgner <felix.morgner@gmail.com>2026-06-04 18:14:19 +0200
committerFelix Morgner <felix.morgner@gmail.com>2026-06-04 18:14:19 +0200
commita95acc4d382cbb4937097e7fa2f6526974a26fcc (patch)
tree71b922a413fad15d4796ee613a91240f4ae59df0 /CMakeLists.txt
parent0ff3f826d9772d3695f481e0a3d0bc1517dd3ae4 (diff)
downloadcabinet-a95acc4d382cbb4937097e7fa2f6526974a26fcc.tar.xz
cabinet-a95acc4d382cbb4937097e7fa2f6526974a26fcc.zip
core: add basic libmagic abstraction skeleton
Diffstat (limited to 'CMakeLists.txt')
-rw-r--r--CMakeLists.txt27
1 files changed, 27 insertions, 0 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 9647816..f2970ac 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -10,9 +10,36 @@ set(CMAKE_CXX_STANDARD_REQUIRED YES)
set(CMAKE_CXX_EXTENSIONS NO)
set(CMAKE_INTERPROCEDURAL_OPTIMIZATION ON)
+find_package("PkgConfig")
+
+pkg_check_modules("magic" REQUIRED
+ IMPORTED_TARGET
+ GLOBAL
+ "libmagic"
+)
+
+add_library("core" STATIC)
+add_library("cabinet::core" ALIAS "core")
+
+target_sources("core" PRIVATE
+ "cabinet/magic.cpp"
+)
+
+target_include_directories("core" PUBLIC
+ "${CMAKE_CURRENT_SOURCE_DIR}"
+)
+
+target_link_libraries("core" PUBLIC
+ "PkgConfig::magic"
+)
+
add_executable("cabinet")
add_executable("cabinet::app" ALIAS "cabinet")
target_sources("cabinet" PRIVATE
"cabinet/main.cpp"
)
+
+target_link_libraries("cabinet" PRIVATE
+ "cabinet::core"
+)