summaryrefslogtreecommitdiffstats
path: root/CMakeLists.txt
diff options
context:
space:
mode:
Diffstat (limited to 'CMakeLists.txt')
-rw-r--r--CMakeLists.txt95
1 files changed, 95 insertions, 0 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt
new file mode 100644
index 000000000..ba04c261a
--- /dev/null
+++ b/CMakeLists.txt
@@ -0,0 +1,95 @@
+###############################################################################
+# Trinity KOffice #
+# --------------- #
+# This file is licensed under the terms of GNU GPL v3 or later. #
+# Improvements and feedback are welcome. #
+###############################################################################
+
+project(koffice)
+
+### Includes ##################################################################
+include(FindPkgConfig)
+include(CheckFunctionExists)
+include(CheckSymbolExists)
+include(CheckIncludeFile)
+include(CheckLibraryExists)
+include(CheckCSourceCompiles)
+include(CheckCXXSourceCompiles)
+
+include(TDEMacros)
+include(TDESetupPaths)
+include(TDEVersion)
+
+### Basic project setup ########################################################
+cmake_minimum_required(VERSION ${TDE_CMAKE_MINIMUM_VERSION})
+tde_set_project_version()
+tde_setup_paths()
+
+### Options ####################################################################
+option(WITH_ALL_OPTIONS "Enable all optional support" ON)
+option(WITH_LIBEXIF "Enable libexif support" ${WITH_ALL_OPTIONS})
+option(WITH_GRAPHICSMAGICK "Enable GraphicsMagick filter" ${WITH_ALL_OPTIONS})
+option(WITH_IMAGEMAGICK "Enable ImageMagick filter" ${WITH_ALL_OPTIONS})
+option(WITH_OPENEXR "Enable OpenEXR support" ${WITH_ALL_OPTIONS})
+option(WITH_KEXI_MYSQL "Enable Kexi MySQL plugin" ${WITH_ALL_OPTIONS})
+option(WITH_KEXI_PGSQL "Enable Kexi PostgreSQL plugin" ${WITH_ALL_OPTIONS})
+option(WITH_KEXI_MACROS "Enable Kexi macro plugin" ${WITH_ALL_OPTIONS})
+option(WITH_KROSS_PYTHON "Enable Kross Python plugin" OFF)
+option(WITH_KROSS_RUBY "Enable Kross Ruby plugin" ${WITH_ALL_OPTIONS})
+
+### Components #################################################################
+option(BUILD_ALL "Build all" ON)
+option(BUILD_DOC "Build documentation" ${BUILD_ALL})
+option(BUILD_TRANSLATIONS "Build translations" ${BUILD_ALL})
+option(BUILD_CHALK "Build Chalk" ${BUILD_ALL})
+option(BUILD_KARBON "Build Karbon" ${BUILD_ALL})
+option(BUILD_KCHART "Build KChart" ${BUILD_ALL})
+option(BUILD_KDGANTT "Build KDGantt" ${BUILD_ALL})
+option(BUILD_KEXI "Build Kexi" ${BUILD_ALL})
+option(BUILD_KFORMULA "Build KFormula" ${BUILD_ALL})
+option(BUILD_KIVIO "Build Kivio" ${BUILD_ALL})
+option(BUILD_KOSHELL "Build KOffice Workspace" ${BUILD_ALL})
+option(BUILD_KPLATO "Build KPlato" ${BUILD_ALL})
+option(BUILD_KPRESENTER "Build KPresenter" ${BUILD_ALL})
+option(BUILD_KSPREAD "Build KSpread" ${BUILD_ALL})
+option(BUILD_KUGAR "Build Kugar" ${BUILD_ALL})
+option(BUILD_KWORD "Build KWord" ${BUILD_ALL})
+option(BUILD_KROSS "Build Kross scripting library" ${BUILD_ALL})
+option(BUILD_EXAMPLE "Build KOffice example part" OFF)
+option(BUILD_TESTS "Build KOffice tests" OFF)
+
+### Configuration #############################################################
+include(ConfigureChecks.cmake)
+configure_file(config.h.cmake config.h @ONLY)
+
+### Subdirectories ############################################################
+add_subdirectory(lib)
+add_subdirectory(interfaces)
+add_subdirectory(autocorrect)
+add_subdirectory(kounavail)
+add_subdirectory(pics)
+# add_subdirectory(plugins)
+add_subdirectory(servicetypes)
+add_subdirectory(templates)
+# add_subdirectory(tools)
+# add_subdirectory(filters)
+#
+tde_conditional_add_project_docs(BUILD_DOC)
+tde_conditional_add_project_translations(BUILD_TRANSLATIONS)
+#
+# tde_conditional_add_subdirectory(BUILD_CHALK chalk)
+tde_conditional_add_subdirectory(BUILD_EXAMPLE example)
+# tde_conditional_add_subdirectory(BUILD_KARBON karbon)
+tde_conditional_add_subdirectory(BUILD_KCHART kchart)
+# tde_conditional_add_subdirectory(BUILD_KDGANTT kdgantt)
+tde_conditional_add_subdirectory(BUILD_KFORMULA kformula)
+# tde_conditional_add_subdirectory(BUILD_KIVIO kivio)
+# tde_conditional_add_subdirectory(BUILD_KOSHELL koshell)
+tde_conditional_add_subdirectory(BUILD_KPRESENTER kpresenter)
+# tde_conditional_add_subdirectory(BUILD_KSPREAD kspread)
+# tde_conditional_add_subdirectory(BUILD_KUGAR kugar)
+tde_conditional_add_subdirectory(BUILD_KWORD kword)
+# tde_conditional_add_subdirectory(BUILD_KPLATO kplato)
+# tde_conditional_add_subdirectory(BUILD_KEXI kexi)
+
+# kate: indent-width 2; replace-tabs true; \ No newline at end of file