project(kdesdk)

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

# search packages used by KDE
find_package(KDE4 REQUIRED)
include (KDE4Defaults)
include (MacroLibrary)
include(MacroOptionalAddSubdirectory)
include(CheckIncludeFile)
include(CheckIncludeFileCXX)
include(CheckLibraryExists)

# The FindKDE4.cmake module sets _KDE4_PLATFORM_DEFINITIONS with
# definitions like _GNU_SOURCE that are needed on each platform.
set(CMAKE_REQUIRED_DEFINITIONS ${_KDE4_PLATFORM_DEFINITIONS})

find_package(Strigi REQUIRED)
#if (APPLE)
#find_package(Carbon REQUIRED)
#endif (APPLE)
find_package(KdepimLibs REQUIRED)
macro_optional_find_package(LibXslt)
macro_optional_find_package(LibXml2)
macro_optional_find_package(Flex)

add_definitions (${QT_DEFINITIONS} ${KDE4_DEFINITIONS} -DQT3_SUPPORT)
include_directories (${QDBUS_INCLUDE_DIRS} ${CMAKE_SOURCE_DIR} ${CMAKE_BINARY_DIR} ${KDE4_INCLUDES})

macro_optional_add_subdirectory(kate)
if( UNIX )
macro_optional_add_subdirectory(cervisia)
endif( UNIX )
macro_optional_add_subdirectory(doc)
macro_optional_add_subdirectory(kapptemplate)

if(FLEX_FOUND)
  macro_optional_add_subdirectory(kbabel)
endif(FLEX_FOUND)
macro_optional_add_subdirectory(kbugbuster)
macro_optional_add_subdirectory(kcachegrind)
macro_optional_add_subdirectory(kdeaccounts-plugin)
macro_optional_add_subdirectory(kdepalettes)
macro_optional_add_subdirectory(strigi-analyzer)
macro_optional_add_subdirectory(kioslave)
macro_optional_add_subdirectory(kmtrace)
#message(STATUS "remember to port kompare to editinterface")
MESSAGE(STATUS "Kompare from the branches/work/kompare/3-way-kompare will replace this version, so do not spend too much time on getting this version to work as it will be replaced.")
#add_subdirectory(kompare)
macro_optional_add_subdirectory(kprofilemethod)
message(STATUS "remember to port kspy to Qt4's metaobjects")
#add_subdirectory(kspy)

# By default in kde3 kstartpref was not compiled, but well, if it compiles...
check_include_file(ltdl.h HAVE_LTDL_H)
if(HAVE_LTDL_H)
  macro_optional_add_subdirectory(kstartperf)
endif(HAVE_LTDL_H)

macro_optional_add_subdirectory(kuiviewer)
message(STATUS "remember to port kunittest")
#add_subdirectory(kunittest)
message(STATUS "integrate antlr for poxml")
#add_subdirectory(poxml)
message(STATUS "remember to port scheck (check style)")
#add_subdirectory(scheck)
macro_optional_add_subdirectory(scripts)
if(LIBXSLT_FOUND AND LIBXML2_FOUND)
   macro_optional_add_subdirectory(umbrello)
endif(LIBXSLT_FOUND AND LIBXML2_FOUND)

add_subdirectory( cmake )

