Members of the KDE Community are recommended to subscribe to the kde-community mailing list at https://mail.kde.org/mailman/listinfo/kde-community to allow them to participate in important discussions and receive other important announcements

CMakeLists.txt 4.06 KB
Newer Older
Laurent Montel's avatar
Laurent Montel committed
1 2 3 4 5 6
project(koffice)

set(CMAKE_MODULE_PATH ${CMAKE_SOURCE_DIR}/cmake/modules )

# search packages used by KDE
find_package(KDE4 REQUIRED)
7
include(KDE4Defaults)
Laurent Montel's avatar
Laurent Montel committed
8 9
find_package(Perl REQUIRED)
find_package(ZLIB REQUIRED)
Laurent Montel's avatar
Laurent Montel committed
10
macro_optional_find_package(OpenEXR)
11
macro_optional_find_package(Exif)
12
macro_optional_find_package(PythonLibs)
13
macro_optional_find_package(LibArt)
Laurent Montel's avatar
Laurent Montel committed
14 15 16 17 18 19

if (APPLE)
   find_package(Carbon REQUIRED)
endif (APPLE)


20
add_definitions(${QT_DEFINITIONS} ${KDE4_DEFINITIONS} -DHAVE_CONFIG_H=1)
Laurent Montel's avatar
Laurent Montel committed
21 22 23 24 25 26
link_directories(${KDE4_LIB_DIR})


include (MacroAdditionalCleanFiles)
include (MacroAddFileDependencies)
include (ConfigureChecks.cmake)
Laurent Montel's avatar
Laurent Montel committed
27

Laurent Montel's avatar
Laurent Montel committed
28 29 30
configure_file(${CMAKE_CURRENT_SOURCE_DIR}/config.h.cmake ${CMAKE_CURRENT_BINARY_DIR}/config.h )
#macro_additional_clean_files( ${CMAKE_CURRENT_BINARY_DIR}/config.h )

31
# for config.h and <toplevel/foo.h> includes (if any?)
32 33
include_directories( ${CMAKE_CURRENT_SOURCE_DIR} ${CMAKE_CURRENT_BINARY_DIR} )

Adriaan de Groot's avatar
Adriaan de Groot committed
34
# flake is the lib that depends on nothing, but lots of the libs depend on flake
35
set(FLAKE_INCLUDES ${CMAKE_SOURCE_DIR}/libs/flake ${CMAKE_BINARY_DIR}/libs/flake)
36
# kostore is at the bottom of stack, so it has the dependency on the kde4 includes.
37
set(KOSTORE_INCLUDES ${CMAKE_SOURCE_DIR}/libs/store ${CMAKE_BINARY_DIR}/libs/store ${KDE4_INCLUDES})
38
# kofficecore depends on kostore
39
set(KOFFICECORE_INCLUDES ${CMAKE_SOURCE_DIR}/libs/kofficecore ${CMAKE_BINARY_DIR}/libs/kofficecore ${KOSTORE_INCLUDES})
40
# kofficeui depends on kofficecore
41
set(KOFFICEUI_INCLUDES ${CMAKE_SOURCE_DIR}/libs/kofficeui ${CMAKE_BINARY_DIR}/libs/kofficeui ${KOFFICECORE_INCLUDES} ${FLAKE_INCLUDES} )
42 43
# pigment depends on kofficecore
set(PIGMENT_INCLUDES ${CMAKE_SOURCE_DIR}/libs/pigment ${CMAKE_SOURCE_DIR}/libs/pigment/colorspaces ${KOFFICECORE_INCLUDES} )
44 45 46 47

# The rest must be specified independently, in addition to one of the above three
set(KWMF_INCLUDES ${CMAKE_SOURCE_DIR}/libs/kwmf ${CMAKE_BINARY_DIR}/libs/kwmf)
set(KOTEXT_INCLUDES ${CMAKE_SOURCE_DIR}/libs/kotext ${CMAKE_BINARY_DIR}/libs/kotext)
48
set(KOPAINTER_INCLUDES ${CMAKE_SOURCE_DIR}/libs/kopainter ${CMAKE_BINARY_DIR}/libs/kopainter ${CMAKE_SOURCE_DIR}/libs/pigment)
49 50 51 52 53
set(KOPALETTE_INCLUDES ${CMAKE_SOURCE_DIR}/libs/kopalette ${CMAKE_BINARY_DIR}/libs/kopalette)
set(KFORMULA_INCLUDES ${CMAKE_SOURCE_DIR}/libs/kformula ${CMAKE_BINARY_DIR}/libs/kformula)
set(KROSS_INCLUDES ${CMAKE_SOURCE_DIR}/libs/kross ${CMAKE_BINARY_DIR}/libs/kross)
# Those are included with e.g. <koproperty/set.h>
set(KOPROPERTY_INCLUDES ${CMAKE_SOURCE_DIR}/libs ${CMAKE_BINARY_DIR}/libs)
54

Laurent Montel's avatar
Laurent Montel committed
55
set(libkdgantt_SRCS
56
	${CMAKE_SOURCE_DIR}/kdgantt/KDGanttView.cpp
Laurent Montel's avatar
Laurent Montel committed
57 58 59 60 61 62 63 64 65 66 67 68 69 70
	${CMAKE_SOURCE_DIR}/kdgantt/KDGanttViewEventItem.cpp
	${CMAKE_SOURCE_DIR}/kdgantt/KDGanttViewItem.cpp
	${CMAKE_SOURCE_DIR}/kdgantt/KDGanttViewItemDrag.cpp
	${CMAKE_SOURCE_DIR}/kdgantt/KDGanttViewSubwidgets.cpp
	${CMAKE_SOURCE_DIR}/kdgantt/KDGanttViewSummaryItem.cpp
	${CMAKE_SOURCE_DIR}/kdgantt/KDGanttViewTaskItem.cpp
	${CMAKE_SOURCE_DIR}/kdgantt/KDGanttViewTaskLink.cpp
	${CMAKE_SOURCE_DIR}/kdgantt/KDGanttViewTaskLinkGroup.cpp
	${CMAKE_SOURCE_DIR}/kdgantt/KDGanttMinimizeSplitter.cpp
	${CMAKE_SOURCE_DIR}/kdgantt/KDGanttSemiSizingControl.cpp
	${CMAKE_SOURCE_DIR}/kdgantt/KDGanttSizingControl.cpp
	${CMAKE_SOURCE_DIR}/kdgantt/KDGanttXMLTools.cpp
	)

71
add_subdirectory(libs)
72
MESSAGE(STATUS "Before koffice-2.0 disable compile of example subdir, not necessary for official release")
73
add_subdirectory(example)
Laurent Montel's avatar
Laurent Montel committed
74
add_subdirectory(interfaces)
75
if(LIBART_FOUND)
Tim Beaulen's avatar
Tim Beaulen committed
76
#	add_subdirectory(karbon)
77
endif(LIBART_FOUND)
78
add_subdirectory(kdgantt)
Laurent Montel's avatar
Laurent Montel committed
79
add_subdirectory(kchart)
80
#add_subdirectory(kexi)
81
add_subdirectory(kformula)
82
add_subdirectory(kivio)
Laurent Montel's avatar
Laurent Montel committed
83
add_subdirectory(koshell)
84
add_subdirectory(kounavail)
85
add_subdirectory(kplato)
Laurent Montel's avatar
Laurent Montel committed
86
add_subdirectory(kpresenter)
87
add_subdirectory(krita)
Laurent Montel's avatar
Laurent Montel committed
88
add_subdirectory(kspread)
Laurent Montel's avatar
Laurent Montel committed
89
add_subdirectory(kugar)
90
add_subdirectory(kword)
Laurent Montel's avatar
Laurent Montel committed
91 92
add_subdirectory(mimetypes)
add_subdirectory(pics)
93
add_subdirectory(plugins)
Laurent Montel's avatar
Laurent Montel committed
94 95
add_subdirectory(servicetypes)
add_subdirectory(templates)
96 97 98 99
add_subdirectory(tools)
add_subdirectory(filters)
add_subdirectory(autocorrect)
add_subdirectory(doc)
Laurent Montel's avatar
Laurent Montel committed
100
add_subdirectory( cmake )
Laurent Montel's avatar
Laurent Montel committed
101
message( STATUS "Re-add kexi when we will port them")
Laurent Montel's avatar
Laurent Montel committed
102

103

Laurent Montel's avatar
Laurent Montel committed
104