Files
bongo/cmake/Directories.cmake
T
Mario Fetka 1fac495ded
Debian Trixie package bundle / packages (push) Successful in 22m19s
Place local maildrop in protected spool
2026-07-24 11:16:50 +02:00

92 lines
4.1 KiB
CMake

# various directory definitions we use throughout Bongo
if(EXISTS /lib64)
set(_LIB_DIR_NAME lib64)
else(EXISTS /lib64)
set(_LIB_DIR_NAME lib)
endif(EXISTS /lib64)
set(LIB_DIR_NAME ${_LIB_DIR_NAME} CACHE STRING
"Name of library location (arch-specific), usually 'lib' or 'lib64'")
# 'default' locations for where objects get built
set(BINDIR ${PROJECT_BINARY_DIR}/bin)
set(SBINDIR ${PROJECT_BINARY_DIR}/sbin)
set(LIBDIR ${PROJECT_BINARY_DIR}/${LIB_DIR_NAME})
set(LIBEXECDIR ${PROJECT_BINARY_DIR}/libexec)
set(DATAROOTDIR ${PROJECT_BINARY_DIR}/share)
set(DATADIR ${PROJECT_BINARY_DIR}/share)
set(LOCALSTATEDIR ${PROJECT_BINARY_DIR}/var)
set(INCLUDEDIR ${PROJECT_BINARY_DIR}/include)
# various paths for where objects get installed / work from
set(XPL_DEFAULT_DATA_DIR ${CMAKE_INSTALL_PREFIX}/share/bongo)
set(BONGO_STATE_DIR /var/lib/bongo CACHE PATH
"Persistent Bongo state directory")
set(XPL_DEFAULT_STATE_DIR ${BONGO_STATE_DIR})
set(BONGO_RUNTIME_DIR /run/bongo CACHE PATH
"Volatile Bongo runtime directory")
set(XPL_DEFAULT_RUNTIME_DIR ${BONGO_RUNTIME_DIR})
set(BONGO_MAILDROP_DIR /var/spool/bongo/maildrop CACHE PATH
"Protected local mail submission directory")
get_filename_component(BONGO_MAILDROP_ROOT
"${BONGO_MAILDROP_DIR}" DIRECTORY)
set(XPL_DEFAULT_BIN_DIR ${CMAKE_INSTALL_PREFIX}/sbin)
set(XPL_DEFAULT_LIB_DIR ${CMAKE_INSTALL_PREFIX}/${LIB_DIR_NAME})
# A distribution install below /usr still keeps host configuration in /etc.
# A self-contained /usr/local (or another custom-prefix) installation keeps
# configuration below that prefix instead.
if(CMAKE_INSTALL_PREFIX STREQUAL "/" OR
CMAKE_INSTALL_PREFIX STREQUAL "/usr")
set(_BONGO_SYSCONF_DEFAULT /etc)
else()
set(_BONGO_SYSCONF_DEFAULT ${CMAKE_INSTALL_PREFIX}/etc)
endif()
if(DEFINED SYSCONF_INSTALL_DIR)
set(_BONGO_SYSCONF_DEFAULT ${SYSCONF_INSTALL_DIR})
endif()
set(BONGO_CONFIG_DIR ${_BONGO_SYSCONF_DEFAULT}/bongo CACHE PATH
"Bongo configuration directory")
unset(_BONGO_SYSCONF_DEFAULT)
set(XPL_DEFAULT_CONF_DIR ${BONGO_CONFIG_DIR})
set(XPL_DEFAULT_CONFIG_DIR ${BONGO_CONFIG_DIR}/config.d)
set(XPL_DEFAULT_ALIASES_DIR ${BONGO_CONFIG_DIR}/aliases.d)
set(XPL_DEFAULT_SSL_DIR ${BONGO_CONFIG_DIR}/ssl.d)
set(XPL_DEFAULT_DKIM_DIR ${BONGO_CONFIG_DIR}/dkim.d)
set(XPL_DEFAULT_DMARC_DIR ${BONGO_CONFIG_DIR}/dmarc.d)
set(XPL_DEFAULT_ACME_CONFIG_DIR ${BONGO_CONFIG_DIR}/acme.d)
set(XPL_DEFAULT_ACME_PROVIDER_CONFIG ${XPL_DEFAULT_ACME_CONFIG_DIR}/providers)
set(XPL_DEFAULT_ACME_DNS_HELPER
${CMAKE_INSTALL_PREFIX}/libexec/bongo/bongo-acme-dns-provider)
set(XPL_DEFAULT_NLS_DIR ${CMAKE_INSTALL_PREFIX}/share/bongo/nls)
set(XPL_DEFAULT_DBF_DIR ${XPL_DEFAULT_STATE_DIR}/dbf)
set(XPL_DEFAULT_WORK_DIR ${XPL_DEFAULT_STATE_DIR}/work)
set(XPL_DEFAULT_CACHE_DIR ${XPL_DEFAULT_STATE_DIR}/cache)
set(XPL_DEFAULT_SCMS_DIR ${XPL_DEFAULT_STATE_DIR}/scms)
set(XPL_DEFAULT_SPOOL_DIR ${XPL_DEFAULT_STATE_DIR}/spool)
set(XPL_DEFAULT_MAILDROP_DIR ${BONGO_MAILDROP_DIR})
set(XPL_DEFAULT_STORE_SYSTEM_DIR ${XPL_DEFAULT_STATE_DIR}/system)
set(XPL_DEFAULT_SYSTEM_DIR ${XPL_DEFAULT_STATE_DIR}/system)
set(XPL_DEFAULT_MAIL_DIR ${XPL_DEFAULT_STATE_DIR}/users)
set(XPL_DEFAULT_COOKIE_DIR ${XPL_DEFAULT_STATE_DIR}/dbf/cookies)
set(XPL_DEFAULT_WORKER_DIR ${XPL_DEFAULT_STATE_DIR}/worker)
set(XPL_DEFAULT_WORKER_DB ${XPL_DEFAULT_WORKER_DIR}/jobs.sqlite)
set(XPL_DEFAULT_ACME_DIR ${XPL_DEFAULT_STATE_DIR}/acme)
set(XPL_DEFAULT_ACME_CHALLENGE_DIR ${XPL_DEFAULT_ACME_DIR}/challenges)
set(XPL_DEFAULT_ACME_ACCOUNT_KEY ${XPL_DEFAULT_ACME_DIR}/account.key)
set(XPL_DEFAULT_ACME_NEXT_KEY ${XPL_DEFAULT_ACME_DIR}/server.key.next)
set(XPL_DEFAULT_ACME_NEXT_CERT ${XPL_DEFAULT_ACME_DIR}/server.crt.next)
set(XPL_DEFAULT_CERT_PATH ${XPL_DEFAULT_SSL_DIR}/server.crt)
set(XPL_DEFAULT_RSAPARAMS_PATH ${XPL_DEFAULT_STATE_DIR}/dbf/rsaparams.pem)
set(XPL_DEFAULT_DHPARAMS_PATH ${XPL_DEFAULT_STATE_DIR}/dbf/dhparams.pem)
set(XPL_DEFAULT_RANDSEED_PATH ${XPL_DEFAULT_STATE_DIR}/dbf/randomseed)
set(XPL_DEFAULT_KEY_PATH ${XPL_DEFAULT_SSL_DIR}/server.key)
# FIXME: where did these get defined before?
set(LOCALEDIR ${CMAKE_INSTALL_PREFIX}/share/locale)
set(ZONEINFODIR ${XPL_DEFAULT_DATA_DIR}/zoneinfo)