project(kradio4) cmake_minimum_required(VERSION 2.8 FATAL_ERROR) if(POLICY CMP0059) cmake_policy(SET CMP0059 OLD) endif() if(POLICY CMP0064) cmake_policy(SET CMP0064 OLD) endif() list(INSERT CMAKE_MODULE_PATH 0 ${CMAKE_CURRENT_SOURCE_DIR}/cmake) find_package(KDE4 4.7.0 REQUIRED) find_package(Qt4 REQUIRED) include (KDE4Defaults) include (MacroLibrary) SET(KRADIO_VERSION "4.0.8") MESSAGE(STATUS "Compiling KRadio4-${KRADIO_VERSION}") ######################################################################## # Check if libboost is available # ######################################################################## find_package( Boost 1.20 REQUIRED) # find_package( Boost 1.xx COMPONENTS regex REQUIRED) ######################################################################## find_package(Gettext) if(NOT GETTEXT_MSGFMT_EXECUTABLE) message(STATUS "msgfmt not found. Translations will *not* be installed") endif() include(MacroProcessPoFiles) ######################################################################## ADD_DEFINITIONS ( -DKRADIO_VERSION="${KRADIO_VERSION}" ${KDE4_DEFINITIONS} -DQT_STRICT_ITERATORS -DQT_NO_CAST_FROM_BYTEARRAY -DQT_USE_QSTRINGBUILDER -DQT_USE_FAST_OPERATOR_PLUS -DQT_NO_URL_CAST_FROM_STRING -DQT_NO_CAST_TO_ASCII ) option(WITH_KRADIO_FIXMES "Enable FIXME warnings" OFF) IF(WITH_KRADIO_FIXMES) ADD_DEFINITIONS( -DKRADIO_ENABLE_FIXMES ) ENDIF(WITH_KRADIO_FIXMES) option(WITH_KRADIO_PROFILERS "Enable the runtime profilers" OFF) if(WITH_KRADIO_PROFILERS) add_definitions(-DKRADIO_ENABLE_PROFILERS) endif() INCLUDE_DIRECTORIES( ${KDE4_INCLUDES} ${QT_INCLUDES} ${Boost_INCLUDE_DIRS} ${CMAKE_CURRENT_BINARY_DIR}/src ${CMAKE_CURRENT_SOURCE_DIR}/src ${CMAKE_CURRENT_SOURCE_DIR}/interfaces ${CMAKE_CURRENT_SOURCE_DIR}/radiostations ) SET(INSTALL_TARGETS_DEFAULT_ARGS RUNTIME DESTINATION "${BIN_INSTALL_DIR}" LIBRARY DESTINATION "${LIB_INSTALL_DIR}/kradio4/plugins" ) ADD_SUBDIRECTORY(icons) #ADD_SUBDIRECTORY(src) ADD_SUBDIRECTORY(plugins) ADD_SUBDIRECTORY(presets) ADD_SUBDIRECTORY(po) ADD_SUBDIRECTORY(convert-presets) ######################################################################## # The lines below only affect the executable, no plugins! # ######################################################################## file(GLOB kradio_radiostation_sources ${CMAKE_CURRENT_SOURCE_DIR}/radiostations/*.cpp ) file(GLOB kradio_interfaces_sources ${CMAKE_CURRENT_SOURCE_DIR}/interfaces/*_interfaces.cpp ) file(GLOB kradio_main_sources ${CMAKE_CURRENT_SOURCE_DIR}/src/*.cpp ) file(GLOB kradio4_UIs ${CMAKE_CURRENT_SOURCE_DIR}/src/*.ui ${CMAKE_CURRENT_SOURCE_DIR}/radiostations/*.ui ${CMAKE_CURRENT_SOURCE_DIR}/interfaces/*.ui ) kde4_add_ui_files(kradio_main_sources ${kradio4_UIs} ) kde4_add_executable(kradio4 ${kradio_interfaces_sources} ${kradio_radiostation_sources} ${kradio_main_sources} ) SET_TARGET_PROPERTIES(kradio4 PROPERTIES LINK_FLAGS " -Wl,--export-dynamic " ) TARGET_LINK_LIBRARIES(kradio4 ${KDE4_KDEUI_LIBS} ${QT_QTXML_LIBRARY} ${KDE4_KIO_LIBRARY} ) INSTALL(TARGETS kradio4 ${INSTALL_TARGETS_DEFAULT_ARGS}) SET(documentation_files README README.PVR README.your-help-is-wanted ChangeLog AUTHORS COPYING FAQ ) INSTALL( FILES ${documentation_files} DESTINATION ${SHARE_INSTALL_PREFIX}/doc/kradio4/ ) INSTALL( FILES kradio4.desktop DESTINATION ${XDG_APPS_INSTALL_DIR} ) MACRO_DISPLAY_FEATURE_LOG()