CMAKE_MINIMUM_REQUIRED(VERSION 3.7)
project(dxim-curses)
set(PROJECT_VERSION "1.00.svn")

list(APPEND CMAKE_MODULE_PATH "${CMAKE_CURRENT_SOURCE_DIR}/../cmake")

set(DXIMCURSES_LIBS "")
set(DXIMCURSES_INCLUDE_DIRS "")

list(APPEND DXIMCURSES_LIBS ${PURPLEMM_LIBRARIES})
list(APPEND DXIMCURSES_INCLUDE_DIRS ${PURPLEMM_INCLUDE_DIRS})

pkg_check_modules(GLIB2 REQUIRED "glib-2.0 >= 2.32.0")
pkg_check_modules(SIGC REQUIRED "sigc++-2.0 >= 2.2.0")
pkg_check_modules(NCURSESW REQUIRED "ncursesw >= 5.8")
pkg_check_modules(TERMKEY REQUIRED "termkey >= 0.18")
list(APPEND DXIMCURSES_LIBS ${GLIB2_LIBRARIES} ${NCURSESW_LIBRARIES} ${SIGC_LIBRARIES} ${TERMKEY_LIBRARIES})
list(APPEND DXIMCURSES_INCLUDE_DIRS ${GLIB2_INCLUDE_DIRS} ${NCURSESW_INCLUDE_DIRS} ${SIGC_INCLUDE_DIRS} ${TERMKEY_INCLUDE_DIRS}})

if(ENABLE_NLS)
    list(APPEND DXIMQT_LIBS ${Intl_LIBRARIES})
    list(APPEND DXIMQT_INCLUDE_DIRS ${Intl_INCLUDE_DIRS})
endif()

configure_file(config.h.cmake
               ${CMAKE_CURRENT_BINARY_DIR}/config.h
)
list(APPEND DXIMCURSES_INCLUDE_DIRS ${CMAKE_CURRENT_BINARY_DIR})

add_definitions(-DHAVE_CONFIG_H)

set(SOURCES
dxutils.cpp
callback/callback.cpp
ui/footer.cpp
ui/log.cpp
ui/roster.cpp
ui/rosteritem.cpp
ui/tabitem.cpp
ui/imtabitem.cpp
ui/chattabitem.cpp
ui/tabbook.cpp
ui/mainmenu.cpp
ui/statusmenu.cpp
ui/newimmenu.cpp
ui/joinchatmenu.cpp
ui/optiondialog.cpp
ui/addbuddydialog.cpp
ui/chatdialog.cpp
ui/chatjoindialog.cpp
ui/msgdialog.cpp
ui/accountsdialog.cpp
ui/accountdialog.cpp
ui/inputrequestdialog.cpp
ui/actionrequestdialog.cpp
ui/choicerequestdialog.cpp
ui/fieldsrequestdialog.cpp
ui/filerequestdialog.cpp
ui/filetransferdialog.cpp
ui/statusdialog.cpp
ui/aboutdialog.cpp
ui/pluginsdialog.cpp
ui/plugindialog.cpp
ui/newbuddymenu.cpp
ui/newchatmenu.cpp
ui/newgroupmenu.cpp
ui/bindingsdialog.cpp
../logger/logger.cpp
preferences.cpp
dxim.cpp
)

include_directories(${DXIMCURSES_INCLUDE_DIRS}
 ${CMAKE_CURRENT_SOURCE_DIR}
 ${CMAKE_CURRENT_BINARY_DIR}
 ${CMAKE_BINARY_DIR}
)

add_subdirectory(cppconsui)

add_executable(dxim-curses ${SOURCES})

target_link_libraries(dxim-curses ${DXIMCURSES_LIBS} cppconsui)

install(TARGETS dxim-curses DESTINATION bin)

