cmake_minimum_required(VERSION 2.6.4)

project(vjassdoc)

find_package(Gettext REQUIRED)

if (GETTEXT_FOUND)
	message(STATUS "Gettext has been found.")
	include_directories(${GETTEXT_INCLUDE_DIR})
else (GETTEXT_FOUND)
	message(STATUS "Gettext has not been found.")
	# cancel
endif (GETTEXT_FOUND)

# todo: require GNU C library for getopt
#find_package(GLIB2 REQUIRED)

# todo: require tokenizer component.
find_package(Boost REQUIRED)

if (Boost_FOUND)
	message(STATUS "Boost has been found.")
	include_directories(${Boost_INCLUDE_DIR} /usr/include/boost-1_35/) # second one for my Gentoo Linux
else (Boost_FOUND)
	message(STATUS "Boost has not been found.")
	# cancel
endif (Boost_FOUND)

# setup flags

if (CMAKE_BUILD_TYPE STREQUAL "Debug")
	add_definitions(-DDEBUG=1)
	set(USE_DEBUG 1)
	message(STATUS "Build type is \"Debug\", using -DDEBUG.")
endif (CMAKE_BUILD_TYPE STREQUAL "Debug")

find_package(Qt4)
find_package(KDE4)

if (QT4_FOUND AND KDE4_FOUND)
	add_definitions(-DGUI=1)
	set(USE_GUI 1)
	message(STATUS "Qt 4 and KDE 4 have been found, using -DGUI.")
	include(${QT_USE_FILE})
	add_definitions(${QT_DEFINITIONS} ${KDE4_DEFINITIONS})
	#add_definitions(-DQT_STL)
	link_directories(${KDE4_LIB_DIR})
	include_directories(${KDE4_INCLUDE_DIR} ${QT_INCLUDE_DIR})
endif (QT4_FOUND AND KDE4_FOUND)

find_package(Sqlite)

if (SQLITE_FOUND)
	add_definitions(-DSQLITE=1)
	set(USE_SQLITE 1)
	message(STATUS "sqlite has been found, using -DSQLITE.")
	add_definitions(${SQLITE_DEFINITIONS})
	include_directories(${SQLITE_INCLUDE_DIR})
endif (SQLITE_FOUND)

#add_definitions(-DSQLITE=1 -DDEBUG=1 -DGUI=1) # test

add_definitions(-DLOCALE_DIR=\"${CMAKE_INSTALL_PREFIX}/share/locale\")

include_directories(src)
add_subdirectory(src)
add_subdirectory(locale)

if (USE_DEBUG)
	add_subdirectory(tests)
endif (USE_DEBUG)
