From 66918b6492297e7750621d85d4372bf45e81a86d Mon Sep 17 00:00:00 2001 From: Karsten Heimrich Date: Mon, 11 Jan 2021 15:49:30 +0100 Subject: Qt6: Port module to cmake build system Fixes: QTBUG-89767 Fixes: QTBUG-89878 Change-Id: I860ae7b9dbb0f79e9e952d594b9737d4c452579a Reviewed-by: Andreas Buhr Reviewed-by: Joerg Bornemann --- src/serialport/CMakeLists.txt | 72 +++++++++++++++++++++++++++++++++++++++ src/serialport/configure.cmake | 43 +++++++++++++++++++++++ src/serialport/qt_cmdline.cmake | 0 src/serialport/serialport-lib.pri | 51 --------------------------- src/serialport/serialport.pro | 12 ------- 5 files changed, 115 insertions(+), 63 deletions(-) create mode 100644 src/serialport/CMakeLists.txt create mode 100644 src/serialport/configure.cmake create mode 100644 src/serialport/qt_cmdline.cmake delete mode 100644 src/serialport/serialport-lib.pri delete mode 100644 src/serialport/serialport.pro (limited to 'src/serialport') diff --git a/src/serialport/CMakeLists.txt b/src/serialport/CMakeLists.txt new file mode 100644 index 00000000..35810e0b --- /dev/null +++ b/src/serialport/CMakeLists.txt @@ -0,0 +1,72 @@ +##################################################################### +## SerialPort Module: +##################################################################### +qt_find_package(Libudev) + +qt_internal_add_module(SerialPort + SOURCES + qserialport.cpp qserialport.h qserialport_p.h + qserialportglobal.h + qserialportinfo.cpp qserialportinfo.h qserialportinfo_p.h + INCLUDE_DIRECTORIES + ${CMAKE_CURRENT_SOURCE_DIR} + LIBRARIES + Qt::CorePrivate + PUBLIC_LIBRARIES + Qt::Core + PRIVATE_MODULE_INTERFACE + Qt::CorePrivate +) + +## Scopes: +##################################################################### + +qt_internal_extend_target(SerialPort CONDITION config_ntddmodm + DEFINES + QT_NO_REDEFINE_GUID_DEVINTERFACE_MODEM +) + +qt_internal_extend_target(SerialPort CONDITION QT_FEATURE_libudev AND UNIX + DEFINES + LINK_LIBUDEV + LIBRARIES + PkgConfig::Libudev +) + +qt_internal_extend_target(SerialPort CONDITION WIN32 + SOURCES + qserialport_win.cpp + qserialportinfo_win.cpp + qtntdll_p.h + LIBRARIES + advapi32 + setupapi +) + +qt_internal_extend_target(SerialPort CONDITION UNIX + SOURCES + qserialport_unix.cpp +) + +qt_internal_extend_target(SerialPort CONDITION MACOS + SOURCES + qserialportinfo_osx.cpp + LIBRARIES + ${FWCoreFoundation} + ${FWIOKit} +) + +qt_internal_extend_target(SerialPort CONDITION FREEBSD + SOURCES + qserialportinfo_freebsd.cpp +) + +qt_internal_extend_target(SerialPort CONDITION UNIX AND NOT FREEBSD AND NOT MACOS + SOURCES + qserialportinfo_unix.cpp +) + +qt_internal_add_docs(SerialPort + doc/qtserialport.qdocconf +) + diff --git a/src/serialport/configure.cmake b/src/serialport/configure.cmake new file mode 100644 index 00000000..a9ce0492 --- /dev/null +++ b/src/serialport/configure.cmake @@ -0,0 +1,43 @@ + + +#### Inputs + + + +#### Libraries + + + +#### Tests + +# ntddmodm +qt_config_compile_test(ntddmodm + LABEL "ntddmodm" + CODE +" +#include +#include + +int main(int argc, char **argv) +{ + (void)argc; (void)argv; + /* BEGIN TEST: */ +GUID guid = GUID_DEVINTERFACE_MODEM; + /* END TEST: */ + return 0; +} +") + + + +#### Features + +qt_feature("ntddmodm" PRIVATE + LABEL "ntddmodm" + CONDITION TEST_ntddmodm + DISABLE INPUT_ntddmodm STREQUAL 'no' +) +qt_feature_definition("ntddmodm" "QT_NO_REDEFINE_GUID_DEVINTERFACE_MODEM" NEGATE) +qt_configure_add_summary_section(NAME "Serial Port") +qt_configure_add_summary_entry(ARGS "ntddmodm") +qt_configure_end_summary_section() # end of "Serial Port" section diff --git a/src/serialport/qt_cmdline.cmake b/src/serialport/qt_cmdline.cmake new file mode 100644 index 00000000..e69de29b diff --git a/src/serialport/serialport-lib.pri b/src/serialport/serialport-lib.pri deleted file mode 100644 index b9b3c83b..00000000 --- a/src/serialport/serialport-lib.pri +++ /dev/null @@ -1,51 +0,0 @@ -INCLUDEPATH += $$PWD - -unix:qtConfig(libudev) { - DEFINES += LINK_LIBUDEV - INCLUDEPATH += $$QMAKE_INCDIR_LIBUDEV - LIBS_PRIVATE += $$QMAKE_LIBS_LIBUDEV -} - -PUBLIC_HEADERS += \ - $$PWD/qserialportglobal.h \ - $$PWD/qserialport.h \ - $$PWD/qserialportinfo.h - -PRIVATE_HEADERS += \ - $$PWD/qserialport_p.h \ - $$PWD/qserialportinfo_p.h - -SOURCES += \ - $$PWD/qserialport.cpp \ - $$PWD/qserialportinfo.cpp - -win32 { - SOURCES += \ - $$PWD/qserialport_win.cpp \ - $$PWD/qserialportinfo_win.cpp \ - - PRIVATE_HEADERS += \ - $$PWD/qtntdll_p.h - - LIBS_PRIVATE += -lsetupapi -ladvapi32 -} - -unix { - SOURCES += \ - $$PWD/qserialport_unix.cpp - - osx { - SOURCES += \ - $$PWD/qserialportinfo_osx.cpp - - LIBS_PRIVATE += -framework IOKit -framework CoreFoundation - } else:freebsd { - SOURCES += \ - $$PWD/qserialportinfo_freebsd.cpp - } else { - SOURCES += \ - $$PWD/qserialportinfo_unix.cpp - } -} - -HEADERS += $$PUBLIC_HEADERS $$PRIVATE_HEADERS diff --git a/src/serialport/serialport.pro b/src/serialport/serialport.pro deleted file mode 100644 index 194958a3..00000000 --- a/src/serialport/serialport.pro +++ /dev/null @@ -1,12 +0,0 @@ -TARGET = QtSerialPort -QT = core-private - -QMAKE_DOCS = $$PWD/doc/qtserialport.qdocconf - -config_ntddmodm: DEFINES += QT_NO_REDEFINE_GUID_DEVINTERFACE_MODEM - -include($$PWD/serialport-lib.pri) - -load(qt_module) - -PRECOMPILED_HEADER = -- cgit v1.2.3