project(piqt_utils) cmake_minimum_required(VERSION 2.6) find_package(Qt4 REQUIRED) if (NOT LIBPROJECT) find_package(PIP REQUIRED) endif () if (MINGW) find_package(MinGW REQUIRED) endif() include_directories(${CMAKE_CURRENT_BINARY_DIR} ${CMAKE_CURRENT_SOURCE_DIR} ${PIP_INCLUDES} ${QT_INCLUDES}) option(LIB "System install" 0) option(DEBUG "Build with -g3" 0) set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -O2 -Wall") if (DEBUG) set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -g3") endif () set(LIBS ${QT_QTCORE_LIBRARY} ${QT_QTGUI_LIBRARY} ${PIP_LIBRARY} qad_widgets qad_utils qad_blockview) file(GLOB CPPS_UTILS "piqt_*.cpp" "ccm.cpp") file(GLOB HDRS_UTILS "piqt_*.h") file(GLOB UIS_UTILS "piqt_*.ui") qt4_wrap_cpp(CMOCS_UTILS ${HDRS_UTILS} OPTIONS -nw) qt4_wrap_ui(CUIS_UTILS ${UIS_UTILS}) if (DEFINED ENV{QNX_HOST}) add_library(${PROJECT_NAME} STATIC ${CPPS_UTILS} ${CMOCS_UTILS} ${CUIS_UTILS}) else () add_library(${PROJECT_NAME} SHARED ${CPPS_UTILS} ${CMOCS_UTILS} ${CUIS_UTILS}) endif () target_link_libraries(${PROJECT_NAME} ${LIBS}) if (NOT DEFINED ENV{QNX_HOST}) set(CPPS "pidumper.cpp" "pidumper_main.cpp") set(MOCS "pidumper.h") set(UIS "pidumper.ui") file(GLOB RES "*.qrc") qt4_wrap_cpp(CMOCS ${MOCS} OPTIONS -nw) qt4_wrap_ui(CUIS ${UIS}) qt4_add_resources(RESS ${RES}) add_executable(pidumper ${CPPS} ${CMOCS} ${CUIS} ${RESS}) target_link_libraries(pidumper ${LIBS} ${PROJECT_NAME}) set(ICPPS "piintrospector.cpp" "piintrospector_main.cpp") set(IMOCS "piintrospector.h") set(IUIS "piintrospector.ui") file(GLOB IRES "*.qrc") qt4_wrap_cpp(ICMOCS ${IMOCS} OPTIONS -nw) qt4_wrap_ui(ICUIS ${IUIS}) qt4_add_resources(IRESS ${IRES}) add_executable(piintrospector ${ICPPS} ${ICMOCS} ${ICUIS} ${IRESS}) target_link_libraries(piintrospector ${LIBS} ${PROJECT_NAME}) add_executable(piconnectionedit "piconnedit_main.cpp" ${RESS}) target_link_libraries(piconnectionedit ${LIBS} ${PROJECT_NAME}) endif () if (LIB) if (WIN32) set(CMAKE_INSTALL_PREFIX ${MINGW_DIR}) install(FILES ${HDRS_UTILS} DESTINATION ${MINGW_INCLUDE}) install(TARGETS ${PROJECT_NAME} DESTINATION ${MINGW_LIB}) install(TARGETS ${PROJECT_NAME} DESTINATION ${MINGW_BIN}) get_filename_component(QTDIR ${QT_QMAKE_EXECUTABLE} PATH) install(TARGETS ${PROJECT_NAME} DESTINATION ${QTDIR}) else () set(CMAKE_INSTALL_PREFIX /usr) install(FILES ${HDRS_UTILS} DESTINATION ${CMAKE_INSTALL_PREFIX}/include) install(TARGETS ${PROJECT_NAME} DESTINATION ${CMAKE_INSTALL_PREFIX}/lib) endif () message(STATUS "Install to system \"${CMAKE_INSTALL_PREFIX}\"") else () install(TARGETS ${PROJECT_NAME} DESTINATION bin) message(STATUS "Install to local \"bin\"") endif () if (NOT DEFINED ENV{QNX_HOST}) install(TARGETS pidumper DESTINATION ${CMAKE_INSTALL_PREFIX}/bin) install(TARGETS piconnectionedit DESTINATION ${CMAKE_INSTALL_PREFIX}/bin) endif ()