6dcd944dee
adding shared install paths to QMAKE_{INCDIR,LIBDIR} in the spec has the tiny side effect that they are searched _first_, which is generally a really bad idea - they should be _last_. for that purpose, make QMAKE_{INCDIR,LIBDIR}_POST live up to their names (i.e., search them actually last) and migrate all affected specs to use them. Task-number: QTBUG-40825 Change-Id: Ie0de81c3cc49e193186d2fedd7d6c77590c8ef79 Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
69 lines
3.2 KiB
Plaintext
69 lines
3.2 KiB
Plaintext
#
|
|
# qmake configuration for building with arm-linux-uclibcgnueabi-g++
|
|
#
|
|
# http://wiki.qt.io/Shiner
|
|
#
|
|
|
|
MAKEFILE_GENERATOR = UNIX
|
|
CONFIG += incremental
|
|
QMAKE_INCREMENTAL_STYLE = sublib
|
|
|
|
include(../../common/linux.conf)
|
|
include(../../common/gcc-base-unix.conf)
|
|
include(../../common/g++-unix.conf)
|
|
|
|
load(device_config)
|
|
|
|
defineTest(qtConfSanitizeMkspec) {
|
|
isEmpty(TRIDENT_SHINER_SDK_BUILDTREE): \
|
|
error("TRIDENT_SHINER_SDK_BUILDTREE needs to be set via -device-option TRIDENT_SHINER_SDK_BUILDTREE=<path>")
|
|
isEmpty(TRIDENT_SHINER_SDK_BUILDSPEC): \
|
|
error("TRIDENT_SHINER_SDK_BUILDSPEC needs to be set via -device-option TRIDENT_SHINER_SDK_BUILDSPEC=<build spec>")
|
|
isEmpty(TRIDENT_SHINER_SDK_INCDIR_EGL_OPENGL_ES2): \
|
|
error("TRIDENT_SHINER_SDK_INCDIR_EGL_OPENGL_ES2 needs to be set via -device-option TRIDENT_SHINER_SDK_INCDIR_EGL_OPENGL_ES2=<path>")
|
|
isEmpty(TRIDENT_SHINER_SDK_LIBDIR_EGL_OPENGL_ES2): \
|
|
error("TRIDENT_SHINER_SDK_LIBDIR_EGL_OPENGL_ES2 needs to be set via -device-option TRIDENT_SHINER_SDK_LIBDIR_EGL_OPENGL_ES2=<path>")
|
|
deviceSanityCheckCompiler()
|
|
}
|
|
|
|
QMAKE_CC = $${CROSS_COMPILE}gcc
|
|
QMAKE_CXX = $${CROSS_COMPILE}g++
|
|
QMAKE_LINK = $${CROSS_COMPILE}g++
|
|
QMAKE_LINK_SHLIB = $${CROSS_COMPILE}g++
|
|
|
|
#
|
|
# Usage configure options "-sysroot <sysroot path>" with "--prefix=<qt installation path>" results into installation of Qt at "<sysroot path><qt installation path>".
|
|
# Trident Shiner SDK expects all libs to be in "Application file system" which is not <sysroot path>
|
|
#
|
|
# Because of this fact not using "-sysroot <sysroot path>" and hence following code is required
|
|
#
|
|
QMAKE_CFLAGS += --sysroot=$${TRIDENT_SHINER_SDK_BUILDTREE}/open_source_archive/linux/toolchains/gcc-4.5.2_uclibc/
|
|
QMAKE_CXXFLAGS += --sysroot=$${TRIDENT_SHINER_SDK_BUILDTREE}/open_source_archive/linux/toolchains/gcc-4.5.2_uclibc/
|
|
QMAKE_LFLAGS += --sysroot=$${TRIDENT_SHINER_SDK_BUILDTREE}/open_source_archive/linux/toolchains/gcc-4.5.2_uclibc/
|
|
|
|
QMAKE_CFLAGS = -march=armv7-a -mfpu=vfpv3-d16 -mfloat-abi=hard
|
|
QMAKE_CXXFLAGS = $$QMAKE_CFLAGS
|
|
|
|
# modifications to linux.conf
|
|
QMAKE_AR = $${CROSS_COMPILE}ar cqs
|
|
QMAKE_OBJCOPY = $${CROSS_COMPILE}objcopy
|
|
QMAKE_NM = $${CROSS_COMPILE}nm -P
|
|
QMAKE_STRIP = $${CROSS_COMPILE}strip
|
|
|
|
QMAKE_INCDIR_POST += $${TRIDENT_SHINER_SDK_BUILDTREE}/target/output/objs/$${TRIDENT_SHINER_SDK_BUILDSPEC}/comps/generic_apps/usr/include
|
|
QMAKE_LIBDIR_POST += $${TRIDENT_SHINER_SDK_BUILDTREE}/target/output/objs/$${TRIDENT_SHINER_SDK_BUILDSPEC}/comps/generic_apps/usr/lib
|
|
QMAKE_LIBDIR_POST += $${TRIDENT_SHINER_SDK_BUILDTREE}/target/output/objs/$${TRIDENT_SHINER_SDK_BUILDSPEC}/comps/generated/lib/armgnu_linux_el_cortex-a9
|
|
|
|
QMAKE_INCDIR_EGL = $${TRIDENT_SHINER_SDK_INCDIR_EGL_OPENGL_ES2}
|
|
QMAKE_LIBDIR_EGL = $${TRIDENT_SHINER_SDK_LIBDIR_EGL_OPENGL_ES2}
|
|
|
|
QMAKE_INCDIR_OPENGL_ES2 = $${TRIDENT_SHINER_SDK_INCDIR_EGL_OPENGL_ES2}
|
|
QMAKE_LIBDIR_OPENGL_ES2 = $${TRIDENT_SHINER_SDK_LIBDIR_EGL_OPENGL_ES2}
|
|
|
|
QMAKE_LIBS_EGL = -lEGL -lIMGegl -lsrv_um -lusc
|
|
QMAKE_LIBS_OPENGL_ES2 = $$QMAKE_LIBS_EGL -lGLESv2 -lGLES_CM
|
|
|
|
QT_QPA_DEFAULT_PLATFORM = eglfs
|
|
|
|
load(qt_config)
|