arch-repo-manager/CMakeLists.txt

46 lines
1.7 KiB
CMake
Raw Permalink Normal View History

cmake_minimum_required(VERSION 3.17.0 FATAL_ERROR)
2021-01-25 00:24:31 +01:00
# metadata
set(META_PROJECT_NAME repomgr)
set(META_PROJECT_TYPE application)
set(META_APP_AUTHOR "Martchus")
set(META_APP_URL "https://github.com/${META_APP_AUTHOR}/arch-repo-manager")
2021-01-25 00:24:31 +01:00
set(META_APP_DESCRIPTION "Repository manager and package builder for Arch Linux")
set(META_APP_CATEGORIES "System;Utility;Network;FileTransfer")
set(META_VERSION_MAJOR 0)
set(META_VERSION_MINOR 0)
2024-03-11 12:32:59 +01:00
set(META_VERSION_PATCH 4)
2021-01-25 00:24:31 +01:00
set(META_VERSION_EXACT_SONAME ON)
#set(META_CXX_STANDARD 20)
set(META_CXX_STANDARD "any")
list(APPEND META_PUBLIC_COMPILE_OPTIONS "-std=c++2b")
2021-01-25 00:24:31 +01:00
project(${META_PROJECT_NAME})
# allow using non-default configuration
set(CONFIGURATION_PACKAGE_SUFFIX "" CACHE STRING "sets the suffix for find_package() calls to packages configured via c++utilities")
2021-01-25 00:24:31 +01:00
enable_testing()
# add subdirectories
option(INCLUDE_TABULATE_PROJECT "includes the CMake project of tabulate" OFF)
if (INCLUDE_TABULATE_PROJECT)
add_subdirectory(3rdparty/tabulate)
endif ()
option(INCLUDE_LMDB_SAFE_PROJECT "includes the CMake project of lmdb-safe" ON)
if (INCLUDE_LMDB_SAFE_PROJECT)
set(META_NO_INSTALL_TARGETS ON)
set(LMDB_SAFE_BUILD_SHARED_LIBS OFF CACHE BOOL "whether to build lmdb-safe as shared library")
add_subdirectory(3rdparty/lmdb-safe)
set(${NAMESPACE_PREFIX}lmdb-safe${CONFIGURATION_PACKAGE_SUFFIX}_DIR "${CMAKE_CURRENT_BINARY_DIR}/3rdparty/lmdb-safe")
unset(META_NO_INSTALL_TARGETS)
endif ()
2021-01-25 00:24:31 +01:00
add_subdirectory(libpkg)
link_directories(${LIBPKG_BINARY_DIR})
add_subdirectory(librepomgr)
link_directories(${LIBREPOMGR_BINARY_DIR})
add_subdirectory(srv)
add_subdirectory(cli)
add_subdirectory(pacfind)
add_subdirectory(pacparse)