project(libqmmpui) cmake_minimum_required(VERSION 2.4.7) if(COMMAND cmake_policy) cmake_policy(SET CMP0003 OLD) cmake_policy(SET CMP0005 OLD) endif(COMMAND cmake_policy) SET(QT_USE_QTNETWORK TRUE) INCLUDE(FindQt4) include(${QT_USE_FILE}) # qt lib ADD_DEFINITIONS( -Wall ) ADD_DEFINITIONS(${QT_DEFINITIONS}) ADD_DEFINITIONS(-DQT_NO_DEBUG) ADD_DEFINITIONS(-DQT_SHARED) ADD_DEFINITIONS(-DQT_THREAD) include_directories(${CMAKE_CURRENT_SOURCE_DIR}) # libqmmp include_directories(${CMAKE_CURRENT_SOURCE_DIR}/../) link_directories(${CMAKE_INSTALL_PREFIX}/${LIB_DIR}) link_directories(${CMAKE_CURRENT_BINARY_DIR}/../qmmp) SET(libqmmpui_SRCS general.cpp uihelper.cpp playlistparser.cpp commandlinemanager.cpp filedialog.cpp qtfiledialog.cpp fileloader.cpp playstate.cpp playlistmodel.cpp playlistitem.cpp mediaplayer.cpp detailsdialog.cpp tageditor.cpp playlistmanager.cpp metadataformatter.cpp templateeditor.cpp uiloader.cpp jumptotrackdialog.cpp configdialog.cpp pluginitem.cpp aboutdialog.cpp qmmpuisettings.cpp radioitemdelegate.cpp playlistdownloader.cpp addurldialog.cpp qmmpuiplugincache.cpp ) SET(libqmmpui_HDRS generalfactory.h playlistformat.h commandlinemanager.h commandlineoption.h filedialogfactory.h playstate_p.h playlistitem.h metadataformatter.h uiloader.h uifactory.h pluginitem_p.h general.h playlistparser.h qmmpuiplugincache_p.h ) SET(libqmmpui_MOC_HDRS uihelper.h filedialog.h qtfiledialog_p.h fileloader_p.h playlistmodel.h mediaplayer.h detailsdialog.h tageditor_p.h playlistmanager.h templateeditor.h jumptotrackdialog_p.h configdialog.h aboutdialog_p.h qmmpuisettings.h radioitemdelegate_p.h playlistdownloader.h addurldialog_p.h ) SET(libqmmpui_DEVEL_HDRS commandlinemanager.h commandlineoption.h configdialog.h detailsdialog.h filedialogfactory.h filedialog.h generalfactory.h general.h mediaplayer.h metadataformatter.h playlistdownloader.h playlistformat.h playlistitem.h playlistmanager.h playlistmodel.h playlistparser.h qmmpuisettings.h templateeditor.h uifactory.h uihelper.h uiloader.h ) SET(libqmmpui_UIS forms/detailsdialog.ui forms/tageditor.ui forms/templateeditor.ui forms/jumptotrackdialog.ui forms/configdialog.ui forms/aboutdialog.ui forms/addurldialog.ui ) QT4_WRAP_UI(libqmmpui_UIS_H ${libqmmpui_UIS}) QT4_ADD_RESOURCES(libqmmpui_RCC_SRCS translations/libqmmpui_locales.qrc txt/txt.qrc images/qmmpui_images.qrc) QT4_WRAP_CPP(libqmmpui_MOC_SRCS ${libqmmpui_MOC_HDRS}) include_directories(${CMAKE_CURRENT_BINARY_DIR}) ADD_LIBRARY(qmmpui SHARED ${libqmmpui_SRCS} ${libqmmpui_MOC_SRCS} ${libqmmpui_RCC_SRCS} ${libqmmpui_UIS_H} ${libqmmpui_HDRS}) target_link_libraries(qmmpui ${QT_LIBRARIES} -lqmmp) add_dependencies(qmmpui libqmmp) SET_TARGET_PROPERTIES(qmmpui PROPERTIES VERSION ${QMMP_VERSION} SOVERSION ${QMMP_SOVERSION}) install(TARGETS qmmpui LIBRARY DESTINATION ${LIB_DIR} RUNTIME DESTINATION bin ARCHIVE DESTINATION ${LIB_DIR}) install(FILES ${libqmmpui_DEVEL_HDRS} DESTINATION include/qmmpui) configure_file(${CMAKE_CURRENT_SOURCE_DIR}/qmmpui.pc.in ${CMAKE_CURRENT_BINARY_DIR}/qmmpui.pc @ONLY) install(FILES ${CMAKE_CURRENT_BINARY_DIR}/qmmpui.pc DESTINATION ${LIB_DIR}/pkgconfig)