85 lines
1.9 KiB
CMake
85 lines
1.9 KiB
CMake
cmake_minimum_required(VERSION 3.10)
|
|
|
|
project(ButtonTask VERSION 2.5 LANGUAGES CXX)
|
|
|
|
set(CMAKE_CXX_STANDARD 14)
|
|
set(CMAKE_CXX_STANDARD_REQUIRED ON)
|
|
set(CMAKE_AUTOMOC ON)
|
|
set(CMAKE_AUTORCC ON)
|
|
|
|
find_package(Qt5 5.9 REQUIRED COMPONENTS Core Quick Qml Network Multimedia)
|
|
|
|
set(SOURCES
|
|
main.cpp
|
|
src/configmanager.cpp
|
|
src/configmanager.h
|
|
src/buttonsmodel.cpp
|
|
src/buttonsmodel.h
|
|
src/buttoncontroller.cpp
|
|
src/buttoncontroller.h
|
|
src/audiorecorder.cpp
|
|
src/audiorecorder.h
|
|
src/responsecheck.cpp
|
|
src/responsecheck.h
|
|
src/settingscontainer.cpp
|
|
src/settingscontainer.h
|
|
src/systeminfo.cpp
|
|
src/systeminfo.h
|
|
)
|
|
|
|
set(RESOURCES
|
|
resources/qml.qrc
|
|
resources/icons.qrc
|
|
)
|
|
|
|
add_executable(ButtonTask ${SOURCES} ${RESOURCES})
|
|
|
|
target_include_directories(ButtonTask PRIVATE
|
|
${CMAKE_CURRENT_SOURCE_DIR}/src
|
|
)
|
|
|
|
target_link_libraries(ButtonTask PRIVATE
|
|
Qt5::Core
|
|
Qt5::Quick
|
|
Qt5::Qml
|
|
Qt5::Network
|
|
Qt5::Multimedia
|
|
)
|
|
|
|
include(GNUInstallDirs)
|
|
|
|
install(TARGETS ButtonTask
|
|
RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
|
|
)
|
|
|
|
install(FILES config/config.json
|
|
DESTINATION ${CMAKE_INSTALL_BINDIR}/config
|
|
)
|
|
|
|
install(DIRECTORY resources/default-icons/
|
|
DESTINATION ${CMAKE_INSTALL_BINDIR}/icons
|
|
FILES_MATCHING PATTERN "*.png" PATTERN "*.jpg"
|
|
)
|
|
|
|
install(DIRECTORY webconfig/
|
|
DESTINATION share/buttontask/webconfig
|
|
)
|
|
|
|
# Privileged helper scripts (network + OTA). Installed with execute perms so
|
|
# they work even when the source tree was checked out on a non-POSIX host.
|
|
install(PROGRAMS
|
|
webconfig/scripts/bt-netconfig
|
|
webconfig/scripts/bt-update
|
|
webconfig/scripts/bt-service
|
|
webconfig/scripts/bt-access
|
|
webconfig/scripts/bt-brightness
|
|
webconfig/scripts/bt-settime
|
|
webconfig/scripts/bt-reboot
|
|
webconfig/scripts/make-package.sh
|
|
DESTINATION share/buttontask/scripts
|
|
)
|
|
|
|
install(FILES webconfig/scripts/buttontask.sudoers
|
|
DESTINATION share/buttontask/scripts
|
|
)
|