summaryrefslogtreecommitdiffstats
path: root/mkspecs/devices/linux-rasp-pi3-g++/qmake.conf
diff options
context:
space:
mode:
Diffstat (limited to 'mkspecs/devices/linux-rasp-pi3-g++/qmake.conf')
-rw-r--r--mkspecs/devices/linux-rasp-pi3-g++/qmake.conf45
1 files changed, 45 insertions, 0 deletions
diff --git a/mkspecs/devices/linux-rasp-pi3-g++/qmake.conf b/mkspecs/devices/linux-rasp-pi3-g++/qmake.conf
new file mode 100644
index 0000000000..10862ccd70
--- /dev/null
+++ b/mkspecs/devices/linux-rasp-pi3-g++/qmake.conf
@@ -0,0 +1,45 @@
+# qmake configuration for the Raspberry Pi 3 using the Broadcom graphics stack
+
+include(../common/linux_device_pre.conf)
+
+# For modern Yocto-based sysroots that have the proper include and lib
+# setup in egl.pc we will pull the necessary arguments from
+# there. However, to support Raspbian and older stuff that has /opt/vc
+# and possibly no pkg-config, have some static values as well:
+
+# I consider it a bug that this is required, but our EGL config.test _requires_ it
+QMAKE_LFLAGS += -Wl,-rpath-link,$$[QT_SYSROOT]/opt/vc/lib
+
+VC_LIBRARY_PATH = /opt/vc/lib
+VC_INCLUDE_PATH = =/opt/vc/include
+
+# terrible, they do not appear to resolve "=" in rpath!
+VC_LINK_LINE = -L=$${VC_LIBRARY_PATH} -Wl,-rpath-link,$$[QT_SYSROOT]$${VC_LIBRARY_PATH}
+
+QMAKE_LIBDIR_OPENGL_ES2 = =$${VC_LIBRARY_PATH}
+QMAKE_LIBDIR_EGL = $$QMAKE_LIBDIR_OPENGL_ES2
+QMAKE_LIBDIR_OPENVG = $$QMAKE_LIBDIR_OPENGL_ES2
+
+QMAKE_INCDIR_EGL = \
+ $${VC_INCLUDE_PATH} \
+ $${VC_INCLUDE_PATH}/interface/vcos/pthreads \
+ $${VC_INCLUDE_PATH}/interface/vmcs_host/linux
+
+QMAKE_INCDIR_OPENGL_ES2 = $${QMAKE_INCDIR_EGL}
+
+QMAKE_LIBS_OPENGL_ES2 = $${VC_LINK_LINE} -lGLESv2
+
+# The official opt vc EGL references GLESv2 symbols: need to link it
+QMAKE_LIBS_EGL = $${VC_LINK_LINE} -lEGL -lGLESv2
+
+QMAKE_CFLAGS = -march=armv8-a -mtune=cortex-a53 -mfpu=crypto-neon-fp-armv8
+QMAKE_CXXFLAGS = $$QMAKE_CFLAGS
+
+DISTRO_OPTS += hard-float
+DISTRO_OPTS += deb-multi-arch
+
+EGLFS_DEVICE_INTEGRATION= eglfs_brcm
+
+include(../common/linux_arm_device_post.conf)
+
+load(qt_config)