Switch to cmake
This commit is contained in:
parent
913d7df56d
commit
c1f6b6e90f
23 changed files with 155 additions and 189 deletions
124
CMakeLists.txt
Normal file
124
CMakeLists.txt
Normal file
|
|
@ -0,0 +1,124 @@
|
|||
cmake_minimum_required(VERSION 4.0)
|
||||
|
||||
project(SHinterface VERSION 1.0 LANGUAGES CXX)
|
||||
|
||||
# Set C++ standard
|
||||
set(CMAKE_CXX_STANDARD 17)
|
||||
set(CMAKE_CXX_STANDARD_REQUIRED ON)
|
||||
|
||||
# Enable all warnings
|
||||
add_compile_options(-Wall)
|
||||
|
||||
# Find Qt packages
|
||||
find_package(Qt6 COMPONENTS Core Gui Widgets Network Multimedia SerialPort REQUIRED)
|
||||
|
||||
# Find dependencies using pkg-config
|
||||
find_package(PkgConfig REQUIRED)
|
||||
pkg_check_modules(PIPEWIRE REQUIRED libpipewire-0.3)
|
||||
pkg_check_modules(LIBNL3 REQUIRED libnl-3.0 libnl-genl-3.0)
|
||||
|
||||
# Enable automatic moc and uic processing
|
||||
set(CMAKE_AUTOMOC ON)
|
||||
set(CMAKE_AUTOUIC ON)
|
||||
|
||||
# Add src to include path for relative includes
|
||||
include_directories(${CMAKE_CURRENT_SOURCE_DIR}/src)
|
||||
|
||||
# Create executable
|
||||
add_executable(SHinterface)
|
||||
|
||||
# Add sources to executable
|
||||
target_sources(SHinterface
|
||||
PRIVATE
|
||||
src/main.cpp
|
||||
src/mainobject.cpp
|
||||
src/apgetconnected.cpp
|
||||
src/microcontroller.cpp
|
||||
src/sun.cpp
|
||||
src/programmode.cpp
|
||||
src/tcpserver.cpp
|
||||
src/pipewire.cpp
|
||||
|
||||
src/actors/actor.cpp
|
||||
src/actors/factoractor.cpp
|
||||
src/actors/polynomalactor.cpp
|
||||
src/actors/sensoractor.cpp
|
||||
src/actors/alarmtime.cpp
|
||||
src/actors/regulator.cpp
|
||||
src/actors/timeractor.cpp
|
||||
|
||||
src/sensors/sensor.cpp
|
||||
src/sensors/sunsensor.cpp
|
||||
|
||||
src/items/item.cpp
|
||||
src/items/relay.cpp
|
||||
src/items/poweritem.cpp
|
||||
src/items/messageitem.cpp
|
||||
src/items/systemitem.cpp
|
||||
src/items/auxitem.cpp
|
||||
src/items/rgbitem.cpp
|
||||
src/items/itemsource.cpp
|
||||
src/items/itemloadersource.cpp
|
||||
src/items/fixeditemsource.cpp
|
||||
src/items/itemstore.cpp
|
||||
|
||||
src/ui/mainwindow.cpp
|
||||
src/ui/itemwidget.cpp
|
||||
src/ui/itemscrollbox.cpp
|
||||
src/ui/sensorlistwidget.cpp
|
||||
src/ui/itemcreationdialog.cpp
|
||||
src/ui/itemsettingsdialog.cpp
|
||||
src/ui/actorsettingsdialog.cpp
|
||||
|
||||
src/ui/actorwidgets/factoractorwidget.cpp
|
||||
src/ui/actorwidgets/polynomalactorwidget.cpp
|
||||
src/ui/actorwidgets/sensoractorwidget.cpp
|
||||
src/ui/actorwidgets/timeractorwidget.cpp
|
||||
src/ui/actorwidgets/alarmwidget.cpp
|
||||
src/ui/actorwidgets/regulatorwdiget.cpp
|
||||
|
||||
src/ui/itemsettingswidgets/messageitemsettingswidget.cpp
|
||||
src/ui/itemsettingswidgets/relayitemsettingswidget.cpp
|
||||
src/ui/itemsettingswidgets/systemitemsettingswidget.cpp
|
||||
)
|
||||
|
||||
# Add UI files
|
||||
target_sources(SHinterface
|
||||
PRIVATE
|
||||
src/ui/mainwindow.ui
|
||||
src/ui/itemwidget.ui
|
||||
src/ui/relayscrollbox.ui
|
||||
src/ui/itemcreationdialog.ui
|
||||
src/ui/itemsettingsdialog.ui
|
||||
src/ui/actorsettingsdialog.ui
|
||||
src/ui/actorwidgets/factoractorwidget.ui
|
||||
src/ui/actorwidgets/polynomalactorwidget.ui
|
||||
src/ui/actorwidgets/sensoractorwidget.ui
|
||||
src/ui/actorwidgets/timeractorwidget.ui
|
||||
src/ui/actorwidgets/alarmwidget.ui
|
||||
src/ui/actorwidgets/regulatorwdiget.ui
|
||||
src/ui/itemsettingswidgets/messageitemsettingswidget.ui
|
||||
src/ui/itemsettingswidgets/relayitemsettingswidget.ui
|
||||
src/ui/itemsettingswidgets/systemitemsettingswidget.ui
|
||||
)
|
||||
|
||||
# Add resource file
|
||||
target_sources(SHinterface
|
||||
PRIVATE
|
||||
resources.qrc
|
||||
)
|
||||
|
||||
# Link libraries
|
||||
target_link_libraries(SHinterface
|
||||
Qt6::Core
|
||||
Qt6::Gui
|
||||
Qt6::Widgets
|
||||
Qt6::Network
|
||||
Qt6::Multimedia
|
||||
Qt6::SerialPort
|
||||
${PIPEWIRE_LIBRARIES}
|
||||
${LIBNL3_LIBRARIES}
|
||||
)
|
||||
|
||||
# Add include paths
|
||||
include_directories(${PIPEWIRE_INCLUDE_DIRS} ${LIBNL3_INCLUDE_DIRS})
|
||||
158
SHinterface.pro
158
SHinterface.pro
|
|
@ -1,158 +0,0 @@
|
|||
#-------------------------------------------------
|
||||
#
|
||||
# Project created by QtCreator 2017-06-01T22:31:38
|
||||
#
|
||||
#-------------------------------------------------
|
||||
|
||||
QT += core gui widgets network multimedia
|
||||
|
||||
QT += serialport
|
||||
|
||||
TARGET = SHinterface
|
||||
TEMPLATE = app
|
||||
|
||||
INCLUDEPATH += /usr/include/libnl3/
|
||||
|
||||
LIBS += -lnl-3 -lnl-genl-3
|
||||
|
||||
# The following define makes your compiler emit warnings if you use
|
||||
# any feature of Qt which as been marked as deprecated (the exact warnings
|
||||
# depend on your compiler). Please consult the documentation of the
|
||||
# deprecated API in order to know how to port your code away from it.
|
||||
DEFINES += QT_DEPRECATED_WARNINGS
|
||||
|
||||
QMAKE_CXXFLAGS += -std=c++17 -O2
|
||||
|
||||
SOURCES += \
|
||||
src/actors/factoractor.cpp \
|
||||
src/actors/polynomalactor.cpp \
|
||||
src/items/fixeditemsource.cpp \
|
||||
src/tcpserver.cpp \
|
||||
src/items/messageitem.cpp \
|
||||
src/items/systemitem.cpp \
|
||||
src/ui/actorwidgets/factoractorwidget.cpp \
|
||||
src/ui/itemcreationdialog.cpp \
|
||||
src/ui/itemsettingswidgets/messageitemsettingswidget.cpp \
|
||||
src/mainobject.cpp \
|
||||
src/apgetconnected.cpp \
|
||||
src/ui/actorwidgets/polynomalactorwidget.cpp \
|
||||
src/ui/actorwidgets/sensoractorwidget.cpp \
|
||||
src/ui/actorwidgets/alarmwidget.cpp \
|
||||
src/ui/actorwidgets/timeractorwidget.cpp \
|
||||
src/ui/itemsettingswidgets/relayitemsettingswidget.cpp \
|
||||
src/ui/itemsettingswidgets/systemitemsettingswidget.cpp \
|
||||
src/ui/itemwidget.cpp \
|
||||
src/ui/itemsettingsdialog.cpp \
|
||||
src/ui/itemscrollbox.cpp \
|
||||
src/items/poweritem.cpp \
|
||||
src/ui/actorwidgets/regulatorwdiget.cpp
|
||||
|
||||
SOURCES += \
|
||||
src/ui/actorsettingsdialog.cpp \
|
||||
src/ui/mainwindow.cpp \
|
||||
src/ui/sensorlistwidget.cpp
|
||||
|
||||
SOURCES += \
|
||||
src/actors/actor.cpp \
|
||||
src/actors/sensoractor.cpp \
|
||||
src/actors/alarmtime.cpp \
|
||||
src/actors/regulator.cpp \
|
||||
src/actors/timeractor.cpp
|
||||
|
||||
SOURCES += \
|
||||
src/sensors/sensor.cpp \
|
||||
src/sensors/sunsensor.cpp \
|
||||
|
||||
SOURCES += \
|
||||
src/items/relay.cpp \
|
||||
src/items/item.cpp \
|
||||
src/items/itemstore.cpp \
|
||||
src/items/auxitem.cpp \
|
||||
src/items/rgbitem.cpp \
|
||||
src/items/itemsource.cpp\
|
||||
src/items/itemloadersource.cpp
|
||||
|
||||
SOURCES += \
|
||||
src/main.cpp \
|
||||
src/microcontroller.cpp \
|
||||
src/sun.cpp \
|
||||
src/programmode.cpp
|
||||
|
||||
|
||||
HEADERS += \
|
||||
src/actors/factoractor.h \
|
||||
src/actors/polynomalactor.h \
|
||||
src/items/fixeditemsource.h \
|
||||
src/items/itemsource.h \
|
||||
src/programmode.h \
|
||||
src/tcpserver.h \
|
||||
src/items/messageitem.h \
|
||||
src/items/systemitem.h \
|
||||
src/ui/actorwidgets/factoractorwidget.h \
|
||||
src/ui/itemcreationdialog.h \
|
||||
src/ui/itemsettingswidgets/messageitemsettingswidget.h \
|
||||
src/mainobject.h \
|
||||
src/apgetconnected.h \
|
||||
src/ui/actorwidgets/alarmwidget.h \
|
||||
src/ui/actorwidgets/polynomalactorwidget.h \
|
||||
src/ui/actorwidgets/sensoractorwidget.h \
|
||||
src/ui/actorwidgets/timeractorwidget.h \
|
||||
src/ui/itemsettingswidgets/relayitemsettingswidget.h \
|
||||
src/ui/itemsettingswidgets/systemitemsettingswidget.h \
|
||||
src/ui/itemwidget.h \
|
||||
src/ui/itemsettingsdialog.h \
|
||||
src/ui/itemscrollbox.h \
|
||||
src/items/poweritem.h \
|
||||
src/ui/actorwidgets/regulatorwdiget.h
|
||||
|
||||
HEADERS += \
|
||||
src/ui/actorsettingsdialog.h \
|
||||
src/ui/mainwindow.h \
|
||||
src/ui/sensorlistwidget.h
|
||||
|
||||
HEADERS += \
|
||||
src/actors/actor.h \
|
||||
src/actors/alarmtime.h \
|
||||
src/actors/sensoractor.h \
|
||||
src/actors/regulator.h \
|
||||
src/actors/timeractor.h
|
||||
|
||||
HEADERS += \
|
||||
src/sensors/sensor.h \
|
||||
src/sensors/sunsensor.h \
|
||||
|
||||
HEADERS += \
|
||||
src/items/relay.h \
|
||||
src/items/item.h \
|
||||
src/items/itemstore.h \
|
||||
src/items/auxitem.h \
|
||||
src/items/rgbitem.h \
|
||||
src/items/itemsource.h \
|
||||
src/items/itemloadersource.h
|
||||
|
||||
HEADERS += \
|
||||
src/microcontroller.h \
|
||||
src/sun.h \
|
||||
src/programmode.h
|
||||
|
||||
FORMS += \
|
||||
src/ui/actorwidgets/factoractorwidget.ui \
|
||||
src/ui/itemcreationdialog.ui \
|
||||
src/ui/itemsettingswidgets/messageitemsettingswidget.ui \
|
||||
src/ui/actorsettingsdialog.ui \
|
||||
src/ui/actorwidgets/polynomalactorwidget.ui \
|
||||
src/ui/itemsettingswidgets/relayitemsettingswidget.ui \
|
||||
src/ui/itemsettingswidgets/systemitemsettingswidget.ui \
|
||||
src/ui/mainwindow.ui \
|
||||
src/ui/relayscrollbox.ui \
|
||||
src/ui/actorwidgets/sensoractorwidget.ui \
|
||||
src/ui/actorwidgets/alarmwidget.ui \
|
||||
src/ui/actorwidgets/timeractorwidget.ui \
|
||||
src/ui/itemsettingsdialog.ui \
|
||||
src/ui/itemwidget.ui \
|
||||
src/ui/actorwidgets/regulatorwdiget.ui
|
||||
|
||||
android:FORMS += src/ui/mainwindow-android.ui
|
||||
|
||||
RESOURCES += \
|
||||
resources.qrc
|
||||
|
|
@ -5,7 +5,7 @@
|
|||
#include <QString>
|
||||
#include <QJsonObject>
|
||||
|
||||
#include "src/items/item.h"
|
||||
#include "items/item.h"
|
||||
|
||||
class Actor : public Item
|
||||
{
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
#ifndef POLYNOMALACTOR_H
|
||||
#define POLYNOMALACTOR_H
|
||||
#include "actor.h"
|
||||
#include "src/sensors/sensor.h"
|
||||
#include "sensors/sensor.h"
|
||||
|
||||
class PolynomalActor: public Actor
|
||||
{
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@
|
|||
#include <QTimer>
|
||||
|
||||
#include "actor.h"
|
||||
#include "src/sensors/sensor.h"
|
||||
#include "sensors/sensor.h"
|
||||
|
||||
class Regulator : public Actor
|
||||
{
|
||||
|
|
|
|||
|
|
@ -1,6 +1,6 @@
|
|||
#pragma once
|
||||
#include "actor.h"
|
||||
#include "src/sensors/sensor.h"
|
||||
#include "sensors/sensor.h"
|
||||
|
||||
class SensorActor : public Actor
|
||||
{
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
#pragma once
|
||||
|
||||
#include "item.h"
|
||||
#include "src/microcontroller.h"
|
||||
#include "microcontroller.h"
|
||||
|
||||
class AuxItem: public Item
|
||||
{
|
||||
|
|
|
|||
|
|
@ -5,7 +5,7 @@
|
|||
#include "poweritem.h"
|
||||
#include "rgbitem.h"
|
||||
#include "auxitem.h"
|
||||
#include "src/microcontroller.h"
|
||||
#include "microcontroller.h"
|
||||
|
||||
class FixedItemSource : public ItemSource
|
||||
{
|
||||
|
|
|
|||
|
|
@ -1,9 +1,9 @@
|
|||
#include "item.h"
|
||||
|
||||
#include "src/actors/sensoractor.h"
|
||||
#include "src/actors/regulator.h"
|
||||
#include "src/actors/polynomalactor.h"
|
||||
#include "src/programmode.h"
|
||||
#include "actors/sensoractor.h"
|
||||
#include "actors/regulator.h"
|
||||
#include "actors/polynomalactor.h"
|
||||
#include "programmode.h"
|
||||
#include "relay.h"
|
||||
#include "messageitem.h"
|
||||
#include "systemitem.h"
|
||||
|
|
|
|||
|
|
@ -1,8 +1,8 @@
|
|||
#pragma once
|
||||
|
||||
#include "item.h"
|
||||
#include "src/sensors/sensor.h"
|
||||
#include "src/microcontroller.h"
|
||||
#include "sensors/sensor.h"
|
||||
#include "microcontroller.h"
|
||||
|
||||
#include <QTimer>
|
||||
|
||||
|
|
|
|||
|
|
@ -4,7 +4,7 @@
|
|||
#include<stdint.h>
|
||||
#include<QObject>
|
||||
|
||||
#include "src/sensors/sensor.h"
|
||||
#include "sensors/sensor.h"
|
||||
#include "item.h"
|
||||
|
||||
class Microcontroller;
|
||||
|
|
|
|||
|
|
@ -1,6 +1,6 @@
|
|||
#pragma once
|
||||
|
||||
#include "src/microcontroller.h"
|
||||
#include "microcontroller.h"
|
||||
#include "item.h"
|
||||
|
||||
class RgbItem: public Item
|
||||
|
|
|
|||
|
|
@ -70,7 +70,7 @@ int main(int argc, char *argv[])
|
|||
|
||||
QTcpSocket* microSocket = new QTcpSocket;
|
||||
|
||||
qInfo()<<"connecting to "<<host.toStdString()<<':'<<port<<" for tcp micro";
|
||||
qInfo()<<"connecting to "<<host<<':'<<port<<" for tcp micro";
|
||||
microSocket->connectToHost(host, port, QIODevice::ReadWrite);
|
||||
|
||||
if(!microSocket->waitForConnected(1000))
|
||||
|
|
|
|||
|
|
@ -2,7 +2,7 @@
|
|||
|
||||
#include <QTimer>
|
||||
|
||||
#include "src/sun.h"
|
||||
#include "sun.h"
|
||||
#include "sensor.h"
|
||||
|
||||
|
||||
|
|
|
|||
|
|
@ -132,7 +132,7 @@
|
|||
<customwidget>
|
||||
<class>SensorListWidget</class>
|
||||
<extends>QListView</extends>
|
||||
<header location="local">src/ui/sensorlistwidget.h</header>
|
||||
<header location="local">ui/sensorlistwidget.h</header>
|
||||
</customwidget>
|
||||
</customwidgets>
|
||||
<resources/>
|
||||
|
|
|
|||
|
|
@ -110,7 +110,7 @@
|
|||
<customwidget>
|
||||
<class>SensorListWidget</class>
|
||||
<extends>QListView</extends>
|
||||
<header location="local">src/ui/sensorlistwidget.h</header>
|
||||
<header location="local">ui/sensorlistwidget.h</header>
|
||||
</customwidget>
|
||||
</customwidgets>
|
||||
<resources/>
|
||||
|
|
|
|||
|
|
@ -89,7 +89,7 @@
|
|||
<customwidget>
|
||||
<class>SensorListWidget</class>
|
||||
<extends>QListView</extends>
|
||||
<header location="local">src/ui/sensorlistwidget.h</header>
|
||||
<header location="local">ui/sensorlistwidget.h</header>
|
||||
</customwidget>
|
||||
</customwidgets>
|
||||
<resources/>
|
||||
|
|
|
|||
|
|
@ -8,9 +8,9 @@
|
|||
#include "../actors/factoractor.h"
|
||||
#include "../items/messageitem.h"
|
||||
#include "../items/systemitem.h"
|
||||
#include "./itemsettingswidgets/messageitemsettingswidget.h"
|
||||
#include "./itemsettingswidgets/systemitemsettingswidget.h"
|
||||
#include "./itemsettingswidgets/relayitemsettingswidget.h"
|
||||
#include "itemsettingswidgets/messageitemsettingswidget.h"
|
||||
#include "itemsettingswidgets/systemitemsettingswidget.h"
|
||||
#include "itemsettingswidgets/relayitemsettingswidget.h"
|
||||
#include<memory>
|
||||
|
||||
ItemSettingsDialog::ItemSettingsDialog(std::shared_ptr<Item> item, QWidget *parent) :
|
||||
|
|
|
|||
|
|
@ -245,13 +245,13 @@
|
|||
<customwidget>
|
||||
<class>ItemScrollBox</class>
|
||||
<extends>QWidget</extends>
|
||||
<header location="global">../src/ui/itemscrollbox.h</header>
|
||||
<header location="global">../ui/itemscrollbox.h</header>
|
||||
<container>1</container>
|
||||
</customwidget>
|
||||
<customwidget>
|
||||
<class>SensorListWidget</class>
|
||||
<extends>QListView</extends>
|
||||
<header location="global">../src/ui/sensorlistwidget.h</header>
|
||||
<header location="global">../ui/sensorlistwidget.h</header>
|
||||
</customwidget>
|
||||
</customwidgets>
|
||||
<resources>
|
||||
|
|
|
|||
|
|
@ -6,9 +6,9 @@
|
|||
#include "itemscrollbox.h"
|
||||
#include "itemsettingsdialog.h"
|
||||
#include "itemcreationdialog.h"
|
||||
#include "src/mainobject.h"
|
||||
#include "src/programmode.h"
|
||||
#include "src/items/poweritem.h"
|
||||
#include "mainobject.h"
|
||||
#include "programmode.h"
|
||||
#include "items/poweritem.h"
|
||||
|
||||
MainWindow::MainWindow(MainObject * const mainObject, QWidget *parent) :
|
||||
QMainWindow(parent),
|
||||
|
|
|
|||
|
|
@ -7,7 +7,7 @@
|
|||
#include <QTime>
|
||||
#include <memory>
|
||||
|
||||
#include<src/items/item.h>
|
||||
#include<items/item.h>
|
||||
|
||||
class MainObject;
|
||||
|
||||
|
|
|
|||
|
|
@ -249,12 +249,12 @@
|
|||
<customwidget>
|
||||
<class>SensorListWidget</class>
|
||||
<extends>QListView</extends>
|
||||
<header location="global">src/ui/sensorlistwidget.h</header>
|
||||
<header location="global">ui/sensorlistwidget.h</header>
|
||||
</customwidget>
|
||||
<customwidget>
|
||||
<class>ItemScrollBox</class>
|
||||
<extends>QWidget</extends>
|
||||
<header location="global">src/ui/itemscrollbox.h</header>
|
||||
<header location="global">ui/itemscrollbox.h</header>
|
||||
<container>1</container>
|
||||
</customwidget>
|
||||
</customwidgets>
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
#pragma once
|
||||
#include <QTableWidget>
|
||||
#include <vector>
|
||||
#include "src/sensors/sensor.h"
|
||||
#include "sensors/sensor.h"
|
||||
|
||||
class SensorListItem : public QTableWidgetItem
|
||||
{
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue