Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- set(CMAKE_CXX_STANDARD 11)
- # Сюда пишем заголовочные файлы с макросом Q_OBJECT
- set(tench_MOC_HDRS
- )
- # Сюда пишем файлы с исходным кодом и заголовочные файлы БЕЗ макроса Q_OBJECT
- set(tench_SRCS ${tench_MOC_HDRS}
- main.cpp
- )
- # Сюда пишем файлы форм
- set(tench_UIS
- )
- # Сюда пишем файл(ы) ресурсов
- set(tench_RSCS
- resources/res.qrc
- )
- # Подключаем Qt модули
- find_package(Qt4 4.7.2 REQUIRED QtGui QtCore QtSql QtXml)
- include(${QT_USE_FILE})
- # Генерируем исходники Qt
- qt4_wrap_ui(UI_HEADERS ${tench_UIS})
- qt4_wrap_cpp(MOCS_SRCS ${tench_MOC_HDRS})
- qt4_add_resources(RCC_SRCS ${tench_RSCS})
- # Вытаскиваем версию ПО
- add_definitions(-DVERSION="${PROJECT_VERSION}")
- # Вытаскиваем дату сборки
- execute_process(COMMAND date "+%d %b %Y" WORKING_DIRECTORY ${CMAKE_HOME_DIRECTORY} OUTPUT_VARIABLE BUILD_DATE OUTPUT_STRIP_TRAILING_WHITESPACE)
- add_definitions(-DBUILD_DATE="${BUILD_DATE}")
- # Вытаскиваем хеш коммита
- execute_process(COMMAND git rev-parse --short HEAD WORKING_DIRECTORY ${CMAKE_HOME_DIRECTORY} OUTPUT_VARIABLE BUILD_REV OUTPUT_STRIP_TRAILING_WHITESPACE)
- add_definitions(-DBUILD_REV="${BUILD_REV}")
- # Вытаскиваем дату коммита
- execute_process(COMMAND git log -n 1 --date=short --format=%ad WORKING_DIRECTORY ${CMAKE_HOME_DIRECTORY} OUTPUT_VARIABLE REV_DATE OUTPUT_STRIP_TRAILING_WHITESPACE)
- add_definitions(-DREV_DATE="${REV_DATE}")
- # Сборка и линковка
- add_definitions(-Wall -g)
- include_directories(${CMAKE_BINARY_DIR} ${CMAKE_SOURCE_DIR} ${CMAKE_CURRENT_BINARY_DIR} ${CMAKE_CURRENT_SOURCE_DIR})
- add_executable(tench ${tench_SRCS} ${tench_UIS} ${MOCS_SRCS} ${RCC_SRCS} ${UI_HEADERS})
- target_link_libraries(tench ${QT_LIBRARIES})
- # Установка
- install(TARGETS tench RUNTIME DESTINATION bin)
- install(DIRECTORY resources/desktop/icons DESTINATION share)
- install(FILES resources/desktop/tench.desktop DESTINATION share/applications)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement