This repository has been archived on 2020-09-07. You can view files and clone it. You cannot open issues or pull requests or push a commit.
Files
libs/piqt_utils/CMakeLists.txt

96 lines
3.7 KiB
CMake

project(piqt_utils)
cmake_minimum_required(VERSION 2.6)
if(LIBPROJECT)
include(PIPMacros)
include(SDKMacros)
else()
option(LIB "System install" 0)
option(DEBUG "Build with -g3" 0)
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -O3 -Wall")
if(DEBUG)
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -g3")
endif()
find_package(PIP REQUIRED)
endif()
find_package(QAD REQUIRED)
message(STATUS "Building ${PROJECT_NAME}")
include_directories(${CMAKE_CURRENT_BINARY_DIR} ${CMAKE_CURRENT_SOURCE_DIR} ${QT_INCLUDES} ${PIP_INCLUDES} ${QAD_INCLUDES})
pip_code_model(CCM "../pip/src_main/io/piiodevice.h" "../pip/src_main/io/pipacketextractor.h" OPTIONS "-DPIP_EXPORT" "-Es")
set(LIBS ${QAD_WIDGETS_LIBRARY} ${QAD_UTILS_LIBRARY} ${QAD_BLOCKVIEW_LIBRARY} ${PIP_LIBRARY})
#message(STATUS "pip_code_model for iodevice = ${CCM}")
#message(STATUS "pip_INCLUDES = ${PIP_INCLUDES}")
file(GLOB CPPS_UTILS "piqt_*.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} ${CCM})
else()
add_library(${PROJECT_NAME} SHARED ${CPPS_UTILS} ${CMOCS_UTILS} ${CUIS_UTILS} ${CCM})
endif()
target_link_libraries(${PROJECT_NAME} ${LIBS})
if (LIBPROJECT)
add_dependencies(piqt_utils pip_cmg)
endif()
if (NOT DEFINED ENV{QNX_HOST})
file(GLOB RES "*.qrc")
qt4_add_resources(RESS ${RES})
set(PIDUMPER_CPPS "pidumper.cpp" "pidumper_main.cpp")
set(PIDUMPER_MOCS "pidumper.h")
set(PIDUMPER_UIS "pidumper.ui")
qt4_wrap_cpp(PIDUMPER_CMOCS ${PIDUMPER_MOCS} OPTIONS -nw)
qt4_wrap_ui(PIDUMPER_CUIS ${PIDUMPER_UIS})
add_executable(pidumper ${PIDUMPER_CPPS} ${PIDUMPER_CMOCS} ${PIDUMPER_CUIS} ${RESS})
target_link_libraries(pidumper ${LIBS} ${PROJECT_NAME})
set(PIINTROSPECTOR_CPPS "piintrospector.cpp" "piintrospector_main.cpp")
set(PIINTROSPECTOR_MOCS "piintrospector.h")
set(PIINTROSPECTOR_UIS "piintrospector.ui")
qt4_wrap_cpp(PIINTROSPECTOR_CMOCS ${PIINTROSPECTOR_MOCS} OPTIONS -nw)
qt4_wrap_ui(PIINTROSPECTOR_CUIS ${PIINTROSPECTOR_UIS})
add_executable(piintrospector ${PIINTROSPECTOR_CPPS} ${PIINTROSPECTOR_CMOCS} ${PIINTROSPECTOR_CUIS} ${RESS})
target_link_libraries(piintrospector ${LIBS} ${PROJECT_NAME})
add_executable(piconnectionedit "piconnedit_main.cpp" ${RESS})
target_link_libraries(piconnectionedit ${LIBS} ${PROJECT_NAME})
endif()
if (NOT DEFINED ENV{QNX_HOST})
set(_TARGETS pidumper piconnectionedit)
endif()
if (LIBPROJECT)
sdk_install("pip" "${PROJECT_NAME}" "${HDRS_UTILS}")
else()
if(LIB)
if(WIN32)
set(CMAKE_INSTALL_PREFIX ${MINGW_DIR})
install(FILES ${HDRS_UTILS} DESTINATION ${MINGW_INCLUDE}/pip)
install(TARGETS ${PROJECT_NAME} DESTINATION ${MINGW_LIB})
install(TARGETS ${PROJECT_NAME} DESTINATION ${MINGW_BIN})
install(TARGETS ${_TARGETS} DESTINATION ${MINGW_BIN})
get_filename_component(QTDIR ${QT_QMAKE_EXECUTABLE} PATH)
install(TARGETS ${PROJECT_NAME} DESTINATION ${QTDIR})
else()
if(APPLE)
set(CMAKE_INSTALL_PREFIX /usr/local)
install(TARGETS ${_TARGETS} DESTINATION /usr/local/bin)
else()
set(CMAKE_INSTALL_PREFIX /usr)
install(TARGETS ${_TARGETS} DESTINATION /usr/bin)
endif()
install(FILES ${HDRS_UTILS} DESTINATION ${CMAKE_INSTALL_PREFIX}/include/pip)
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)
install(TARGETS ${_TARGETS} DESTINATION bin)
message(STATUS "Install to local \"bin\"")
endif()
endif()