summaryrefslogtreecommitdiffstats
path: root/src/serialport
diff options
context:
space:
mode:
authorKarsten Heimrich <karsten.heimrich@qt.io>2021-01-11 15:49:30 +0100
committerKarsten Heimrich <karsten.heimrich@qt.io>2021-01-15 12:34:22 +0100
commit66918b6492297e7750621d85d4372bf45e81a86d (patch)
tree161146a97b8863432ddedb629b700f479189d4c8 /src/serialport
parentbb26d975c157a70d93e42ddd2748f81440186cf5 (diff)
Qt6: Port module to cmake build system
Fixes: QTBUG-89767 Fixes: QTBUG-89878 Change-Id: I860ae7b9dbb0f79e9e952d594b9737d4c452579a Reviewed-by: Andreas Buhr <andreas.buhr@qt.io> Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
Diffstat (limited to 'src/serialport')
-rw-r--r--src/serialport/CMakeLists.txt72
-rw-r--r--src/serialport/configure.cmake43
-rw-r--r--src/serialport/qt_cmdline.cmake0
-rw-r--r--src/serialport/serialport-lib.pri51
-rw-r--r--src/serialport/serialport.pro12
5 files changed, 115 insertions, 63 deletions
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 <windows.h>
+#include <ntddmodm.h>
+
+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
--- /dev/null
+++ b/src/serialport/qt_cmdline.cmake
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 =