new cmake build

git-svn-id: svn://db.shs.com.ru/libs@90 a8b55f48-bf90-11e4-a774-851b48703e85
This commit is contained in:
2016-04-16 17:35:03 +00:00
parent cb7ed641f8
commit 4a3c8292f1
104 changed files with 436 additions and 394 deletions

View File

@@ -3,26 +3,30 @@ cmake_minimum_required(VERSION 2.6)
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})
option(KX_PULT "Build kx_pult" 1)
set(KX_PULT_NAME "kx_pult")
option(KX_PULT "Build ${KX_PULT_NAME}" 1)
option(LIB "System install" 1)
option(DEBUG "Build with -g3" 0)
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -O2 -Wall")
#set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -g3")
set(CMAKE_C_FLAGS "${CMAKE_CXX_FLAGS}")
if (DEBUG)
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -g3")
endif ()
set(CPPS_UTILS "kx_coeffs.cpp")
set(HDRS_UTILS "kx_coeffs.h" "kx_protocol_x.h")
if (DEFINED ENV{QNX_HOST})
add_library(kx_utils STATIC ${CPPS_UTILS})
add_library(${PROJECT_NAME} STATIC ${CPPS_UTILS})
else ()
add_library(kx_utils SHARED ${CPPS_UTILS})
add_library(${PROJECT_NAME} SHARED ${CPPS_UTILS})
endif ()
target_link_libraries(kx_utils ${PIP_LIBRARY})
target_link_libraries(${PROJECT_NAME} ${PIP_LIBRARY})
if (NOT DEFINED ENV{QNX_HOST})
if (KX_PULT)
find_package(Qt4 REQUIRED)
find_package(OpenGL REQUIRED)
include_directories(${QT_INCLUDES})
set(CPPS "kx_pult.cpp" "kx_pult.h" "kx_pult.ui" "main_kx_pult.cpp")
set(MOCS "kx_pult.h")
@@ -31,32 +35,28 @@ if (NOT DEFINED ENV{QNX_HOST})
qt4_wrap_cpp(CMOCS ${MOCS} OPTIONS -nw)
qt4_wrap_ui(CUIS ${UIS})
qt4_add_resources(RESS ${RES})
add_executable(kx_pult WIN32 ${CPPS} ${CMOCS} ${CUIS} ${RESS})
set(LIBS ${QT_QTCORE_LIBRARY} ${QT_QTGUI_LIBRARY} ${QT_QTOPENGL_LIBRARY} ${PIP_LIBRARY} qad_graphic qad_utils qad_widgets kx_utils)
find_package(OpenGL REQUIRED)
list(APPEND LIBS ${OPENGL_LIBRARIES})
target_link_libraries(kx_pult ${LIBS})
add_executable(${KX_PULT_NAME} WIN32 ${CPPS} ${CMOCS} ${CUIS} ${RESS} ${MOCS})
set(LIBS ${QT_QTCORE_LIBRARY} ${QT_QTGUI_LIBRARY} ${QT_QTOPENGL_LIBRARY} ${OPENGL_LIBRARIES} ${PIP_LIBRARY} qad_graphic qad_utils qad_widgets)
target_link_libraries(${KX_PULT_NAME} ${LIBS} ${PROJECT_NAME})
endif ()
endif ()
if (DEFINED LIB)
set(LIB 1)
if (${WIN32})
find_package(MinGW REQUIRED)
if (LIB)
if (WIN32)
set(CMAKE_INSTALL_PREFIX ${MINGW_DIR})
install(FILES ${HDRS_UTILS} DESTINATION ${MINGW_INCLUDE})
install(TARGETS kx_utils DESTINATION ${MINGW_LIB})
install(TARGETS ${PROJECT_NAME} DESTINATION ${MINGW_LIB})
else ()
set(CMAKE_INSTALL_PREFIX /usr)
install(FILES ${HDRS_UTILS} DESTINATION ${CMAKE_INSTALL_PREFIX}/include)
install(TARGETS kx_utils DESTINATION ${CMAKE_INSTALL_PREFIX}/lib)
install(TARGETS ${PROJECT_NAME} DESTINATION ${CMAKE_INSTALL_PREFIX}/lib)
endif ()
message(STATUS "Install to system \"${CMAKE_INSTALL_PREFIX}\"")
else ()
install(TARGETS kx_utils DESTINATION bin)
install(TARGETS ${PROJECT_NAME} DESTINATION bin)
message(STATUS "Install to local \"bin\"")
endif ()
if (NOT DEFINED ENV{QNX_HOST})
if (KX_PULT)
install(TARGETS kx_pult DESTINATION ${CMAKE_INSTALL_PREFIX}/bin)
install(TARGETS ${KX_PULT_NAME} DESTINATION ${CMAKE_INSTALL_PREFIX}/bin)
endif ()
endif ()

View File

@@ -1 +1 @@
cmake_mgw -DLIB= && make install %*
cmake -G "MinGW Makefiles" -DLIB=1 && make install . %*