Removed old cmake files.
This commit is contained in:
138
CMakeLists.txt
138
CMakeLists.txt
@@ -1,138 +0,0 @@
|
|||||||
cmake_minimum_required(VERSION 3.16)
|
|
||||||
|
|
||||||
# Projektname und unterstützte Sprachen (C++ für Qt, C für die Treiber)
|
|
||||||
project(BionxControl LANGUAGES CXX C)
|
|
||||||
|
|
||||||
# ------------------------------------------------------------------------------
|
|
||||||
# 1. C++ Standard & Projekt-Einstellungen
|
|
||||||
# ------------------------------------------------------------------------------
|
|
||||||
# Du hast C++23 angefordert. Hinweis: Der Compiler muss sehr aktuell sein (GCC 13+ / MSVC 2022)
|
|
||||||
set(CMAKE_CXX_STANDARD 23)
|
|
||||||
set(CMAKE_CXX_STANDARD_REQUIRED ON)
|
|
||||||
|
|
||||||
# Automatische Erstellung von MOC, UIC und RCC aktivieren
|
|
||||||
set(CMAKE_AUTOMOC ON)
|
|
||||||
set(CMAKE_AUTOUIC ON)
|
|
||||||
set(CMAKE_AUTORCC ON)
|
|
||||||
|
|
||||||
# ------------------------------------------------------------------------------
|
|
||||||
# 2. Qt-Pakete laden
|
|
||||||
# ------------------------------------------------------------------------------
|
|
||||||
# Äquivalent zu: QT += core gui widgets svg
|
|
||||||
find_package(Qt6 REQUIRED COMPONENTS Core Gui Widgets Svg)
|
|
||||||
|
|
||||||
# ------------------------------------------------------------------------------
|
|
||||||
# 3. Quellcode definieren
|
|
||||||
# ------------------------------------------------------------------------------
|
|
||||||
set(PROJECT_SOURCES
|
|
||||||
main.cpp
|
|
||||||
bcmainwindow.cpp
|
|
||||||
bc.cpp
|
|
||||||
bcdelightpmwidget.cpp
|
|
||||||
bcdeviceview.cpp
|
|
||||||
bcdriver.cpp
|
|
||||||
bcdriverstatewidget.cpp
|
|
||||||
bcdrivertinycan.cpp
|
|
||||||
bcthemeswitchbutton.cpp
|
|
||||||
bctoggleswitch.cpp
|
|
||||||
bctransmitter.cpp
|
|
||||||
bcvalue.cpp
|
|
||||||
bcvaluedelegate.cpp
|
|
||||||
bcvaluemodel.cpp
|
|
||||||
bcvalueslider.cpp
|
|
||||||
bcvaluesliderstyle.cpp
|
|
||||||
bcxmlloader.cpp
|
|
||||||
# Deine Header (wichtig, damit sie in der IDE sichtbar sind)
|
|
||||||
bcmainwindow.h
|
|
||||||
bc.h
|
|
||||||
bcdelightpmwidget.h
|
|
||||||
bcdeviceview.h
|
|
||||||
bcdriver.h
|
|
||||||
bcdriverstatewidget.h
|
|
||||||
bcdrivertinycan.h
|
|
||||||
bcthemeswitchbutton.h
|
|
||||||
bctoggleswitch.h
|
|
||||||
bctransmitter.h
|
|
||||||
bcvalue.h
|
|
||||||
bcvaluedelegate.h
|
|
||||||
bcvaluemodel.h
|
|
||||||
bcvalueslider.h
|
|
||||||
BCValueSliderStyle.h
|
|
||||||
bcxmlloader.h
|
|
||||||
# UI Forms
|
|
||||||
bcmainwindow.ui
|
|
||||||
bcvalueslider.ui
|
|
||||||
# Resources
|
|
||||||
bionxcontrol.qrc
|
|
||||||
)
|
|
||||||
|
|
||||||
# ------------------------------------------------------------------------------
|
|
||||||
# 4. Plattform-Spezifika (Architektur-Entscheidung)
|
|
||||||
# ------------------------------------------------------------------------------
|
|
||||||
|
|
||||||
# Windows-Spezifische Quellen und Libs
|
|
||||||
if(WIN32)
|
|
||||||
message(STATUS "Konfiguration für Windows.")
|
|
||||||
list(APPEND PROJECT_SOURCES
|
|
||||||
libwin/can_drv_win.c
|
|
||||||
libwin/mhs_can_drv.c
|
|
||||||
)
|
|
||||||
# Falls du die Libs später aktivieren willst (wie im .pro auskommentiert):
|
|
||||||
# target_link_libraries(BionxControl PRIVATE Advapi32)
|
|
||||||
# target_link_directories(BionxControl PRIVATE "${CMAKE_CURRENT_SOURCE_DIR}/can_api")
|
|
||||||
endif()
|
|
||||||
|
|
||||||
# Linux / Raspberry Pi (ARM) Logik
|
|
||||||
if(UNIX AND NOT APPLE)
|
|
||||||
# Check ob wir auf ARM kompilieren (für RPi)
|
|
||||||
if(CMAKE_SYSTEM_PROCESSOR MATCHES "arm" OR CMAKE_SYSTEM_PROCESSOR MATCHES "aarch64")
|
|
||||||
message(STATUS "Konfiguration für Raspberry Pi (ARM) erkannt.")
|
|
||||||
# Optimierungs-Flag aus deiner .pro
|
|
||||||
add_compile_options(-O3)
|
|
||||||
|
|
||||||
# Falls du wiringPi oder can Treiber brauchst:
|
|
||||||
# target_link_libraries(BionxControl PRIVATE wiringPi mhstcan)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
# Hinweis: Im original .pro waren die .c Files auch unter Linux aktiv.
|
|
||||||
# Falls die C-Treiber auch unter Linux laufen sollen, verschiebe sie
|
|
||||||
# aus dem if(WIN32) Block nach oben in PROJECT_SOURCES.
|
|
||||||
endif()
|
|
||||||
|
|
||||||
# ------------------------------------------------------------------------------
|
|
||||||
# 5. Executable erstellen
|
|
||||||
# ------------------------------------------------------------------------------
|
|
||||||
qt_add_executable(BionxControl
|
|
||||||
MANUAL_FINALIZATION
|
|
||||||
${PROJECT_SOURCES}
|
|
||||||
)
|
|
||||||
|
|
||||||
# Include-Pfade (Äquivalent zu INCLUDEPATH += . libwin)
|
|
||||||
target_include_directories(BionxControl PRIVATE
|
|
||||||
.
|
|
||||||
libwin
|
|
||||||
)
|
|
||||||
|
|
||||||
# ------------------------------------------------------------------------------
|
|
||||||
# 6. Bibliotheken linken
|
|
||||||
# ------------------------------------------------------------------------------
|
|
||||||
target_link_libraries(BionxControl PRIVATE
|
|
||||||
Qt6::Core
|
|
||||||
Qt6::Gui
|
|
||||||
Qt6::Widgets
|
|
||||||
Qt6::Svg
|
|
||||||
)
|
|
||||||
|
|
||||||
# ------------------------------------------------------------------------------
|
|
||||||
# 7. Deployment / Installation
|
|
||||||
# ------------------------------------------------------------------------------
|
|
||||||
# Äquivalent zu deinem "target.path" Block
|
|
||||||
install(TARGETS BionxControl
|
|
||||||
BUNDLE DESTINATION .
|
|
||||||
RUNTIME DESTINATION bin
|
|
||||||
)
|
|
||||||
|
|
||||||
# Unter Windows: Konsolenfenster unterdrücken (außer im Debug-Mode wenn gewünscht)
|
|
||||||
if(WIN32)
|
|
||||||
set_target_properties(BionxControl PROPERTIES WIN32_EXECUTABLE ON)
|
|
||||||
endif()
|
|
||||||
@@ -1,22 +0,0 @@
|
|||||||
{
|
|
||||||
"version": 3,
|
|
||||||
"configurePresets": [
|
|
||||||
{
|
|
||||||
"hidden": true,
|
|
||||||
"name": "Qt",
|
|
||||||
"cacheVariables": {
|
|
||||||
"CMAKE_PREFIX_PATH": "$env{QTDIR}"
|
|
||||||
},
|
|
||||||
"vendor": {
|
|
||||||
"qt-project.org/Qt": {
|
|
||||||
"checksum": "wVa86FgEkvdCTVp1/nxvrkaemJc="
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"vendor": {
|
|
||||||
"qt-project.org/Presets": {
|
|
||||||
"checksum": "67SmY24ZeVbebyKD0fGfIzb/bGI="
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -1,112 +0,0 @@
|
|||||||
{
|
|
||||||
"version": 3,
|
|
||||||
"configurePresets": [
|
|
||||||
{
|
|
||||||
"name": "Qt-Debug",
|
|
||||||
"inherits": "Qt-Default",
|
|
||||||
"binaryDir": "${sourceDir}/out/build/debug",
|
|
||||||
"cacheVariables": {
|
|
||||||
"CMAKE_BUILD_TYPE": "Debug",
|
|
||||||
"CMAKE_CXX_FLAGS": "-DQT_QML_DEBUG"
|
|
||||||
},
|
|
||||||
"environment": {
|
|
||||||
"QML_DEBUG_ARGS": "-qmljsdebugger=file:{aad3125d-03d3-444f-a577-6e1a42300747},block"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "Qt-Release",
|
|
||||||
"inherits": "Qt-Default",
|
|
||||||
"binaryDir": "${sourceDir}/out/build/release",
|
|
||||||
"cacheVariables": {
|
|
||||||
"CMAKE_BUILD_TYPE": "Release"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"hidden": true,
|
|
||||||
"name": "Qt-Default",
|
|
||||||
"inherits": "msvc2022x64Qt6",
|
|
||||||
"vendor": {
|
|
||||||
"qt-project.org/Default": {
|
|
||||||
"checksum": "i66Ru6Xr2iTwQJrInr6OBGYjRK8="
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"hidden": true,
|
|
||||||
"name": "5.13.2_msvc2017",
|
|
||||||
"inherits": "Qt",
|
|
||||||
"environment": {
|
|
||||||
"QTDIR": "C:/Qt/Qt5.13.2/5.13.2/msvc2017"
|
|
||||||
},
|
|
||||||
"architecture": {
|
|
||||||
"strategy": "external",
|
|
||||||
"value": "x86"
|
|
||||||
},
|
|
||||||
"generator": "Ninja",
|
|
||||||
"vendor": {
|
|
||||||
"qt-project.org/Version": {
|
|
||||||
"checksum": "buLxQ1kUsADOzoJ+w8yPcUB7uPI="
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"hidden": true,
|
|
||||||
"name": "msvc2022x64Qt6",
|
|
||||||
"inherits": "Qt",
|
|
||||||
"environment": {
|
|
||||||
"QTDIR": "C:/Qt/6.10.1/msvc2022_64"
|
|
||||||
},
|
|
||||||
"architecture": {
|
|
||||||
"strategy": "external",
|
|
||||||
"value": "x64"
|
|
||||||
},
|
|
||||||
"generator": "Ninja",
|
|
||||||
"vendor": {
|
|
||||||
"qt-project.org/Version": {
|
|
||||||
"checksum": "4+Yj6B2/47gfzBNUic9pikpc6XY="
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"hidden": true,
|
|
||||||
"name": "VS2017x64Default",
|
|
||||||
"inherits": "Qt",
|
|
||||||
"environment": {
|
|
||||||
"QTDIR": "C:/Qt/Qt5.13.2/5.13.2/msvc2017_64"
|
|
||||||
},
|
|
||||||
"architecture": {
|
|
||||||
"strategy": "external",
|
|
||||||
"value": "x64"
|
|
||||||
},
|
|
||||||
"generator": "Ninja",
|
|
||||||
"vendor": {
|
|
||||||
"qt-project.org/Version": {
|
|
||||||
"checksum": "8CScCBxKrPnt9tGlvYctTIj9T7o="
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"hidden": true,
|
|
||||||
"name": "VS2017x86Default",
|
|
||||||
"inherits": "Qt",
|
|
||||||
"environment": {
|
|
||||||
"QTDIR": "C:/Qt/Qt5.13.2/5.13.2/msvc2017"
|
|
||||||
},
|
|
||||||
"architecture": {
|
|
||||||
"strategy": "external",
|
|
||||||
"value": "x86"
|
|
||||||
},
|
|
||||||
"generator": "Ninja",
|
|
||||||
"vendor": {
|
|
||||||
"qt-project.org/Version": {
|
|
||||||
"checksum": "0W/xbuyiWWemn9gHwntcl/pzeNw="
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"vendor": {
|
|
||||||
"qt-project.org/Presets": {
|
|
||||||
"checksum": "VXVUfuzC5iU0zlFoq9u8LP40dyc="
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
0
docker4Bionx/runme.txt
Normal file
0
docker4Bionx/runme.txt
Normal file
Reference in New Issue
Block a user