summaryrefslogtreecommitdiffstats
path: root/src/plugins/platforms/eglfs/eglfsdeviceintegration.pro
diff options
context:
space:
mode:
Diffstat (limited to 'src/plugins/platforms/eglfs/eglfsdeviceintegration.pro')
-rw-r--r--src/plugins/platforms/eglfs/eglfsdeviceintegration.pro47
1 files changed, 47 insertions, 0 deletions
diff --git a/src/plugins/platforms/eglfs/eglfsdeviceintegration.pro b/src/plugins/platforms/eglfs/eglfsdeviceintegration.pro
new file mode 100644
index 0000000000..eb0ce73118
--- /dev/null
+++ b/src/plugins/platforms/eglfs/eglfsdeviceintegration.pro
@@ -0,0 +1,47 @@
+# The device integration plugin base class has to live in a shared library,
+# placing it into a static lib like platformsupport is not sufficient since we
+# have to keep the QObject magic like qobject_cast working.
+# Hence this header-less, private-only module.
+
+TARGET = QtEglFSDeviceIntegration
+CONFIG += internal_module
+MODULE = eglfsdeviceintegration
+
+QT += core-private gui-private platformsupport-private
+LIBS += $$QMAKE_LIBS_DYNLOAD
+
+# Avoid X11 header collision, use generic EGL native types
+DEFINES += QT_EGL_NO_X11
+
+DEFINES += QT_BUILD_EGL_DEVICE_LIB
+
+SOURCES += $$PWD/qeglfsintegration.cpp \
+ $$PWD/qeglfscontext.cpp \
+ $$PWD/qeglfsoffscreenwindow.cpp \
+
+HEADERS += $$PWD/qeglfsintegration.h \
+ $$PWD/qeglfscontext.h \
+ $$PWD/qeglfsoffscreenwindow.h \
+
+include($$PWD/api/api.pri)
+
+QMAKE_LFLAGS += $$QMAKE_LFLAGS_NOUNDEF
+
+INCLUDEPATH += $$PWD
+
+!isEmpty(EGLFS_PLATFORM_HOOKS_SOURCES) {
+ HEADERS += $$EGLFS_PLATFORM_HOOKS_HEADERS
+ SOURCES += $$EGLFS_PLATFORM_HOOKS_SOURCES
+ LIBS += $$EGLFS_PLATFORM_HOOKS_LIBS
+ DEFINES += EGLFS_PLATFORM_HOOKS
+}
+
+!isEmpty(EGLFS_DEVICE_INTEGRATION) {
+ DEFINES += EGLFS_PREFERRED_PLUGIN=$$EGLFS_DEVICE_INTEGRATION
+}
+
+CONFIG += egl qpa/genericunixfontdatabase
+
+!contains(DEFINES, QT_NO_CURSOR): RESOURCES += $$PWD/cursor.qrc
+
+load(qt_module)