1da0db344a
qmake -set can be used instead to set a the default cross compile. device_config.prf already contains code to read this default. Remove per-spec CROSS_COMPILE checks Introduce deviceSanityCheckCompiler() usage where appropriate Done-with: Girish Ramakrishnan <girish.1.ramakrishnan@nokia.com> Change-Id: I07c75c9e933dc1174a1bf8bf523b6b4a6b427408 Reviewed-by: Romain Pokrzywka <romain.pokrzywka@kdab.com> Reviewed-by: Girish Ramakrishnan <girish.1.ramakrishnan@nokia.com>
68 lines
3.4 KiB
Plaintext
68 lines
3.4 KiB
Plaintext
#
|
|
# qmake configuration for building with arm-linux-uclibcgnueabi-g++
|
|
#
|
|
# http://wiki.qt-project.org/Devices/Shiner
|
|
#
|
|
|
|
MAKEFILE_GENERATOR = UNIX
|
|
TARGET_PLATFORM = unix
|
|
TEMPLATE = app
|
|
CONFIG += qt warn_on release incremental link_prl gdb_dwarf_index
|
|
QT += core gui
|
|
QMAKE_INCREMENTAL_STYLE = sublib
|
|
|
|
include(../../common/linux.conf)
|
|
include(../../common/gcc-base-unix.conf)
|
|
include(../../common/g++-unix.conf)
|
|
|
|
load(device_config)
|
|
|
|
# Sanity checks
|
|
isEmpty(TRIDENT_SHINER_SDK_BUILDTREE): error("TRIDENT_SHINER_SDK_BUILDTREE needs to be set via -device-option TRIDENT_SHINER_SDK_BUILDTREE=<path>")
|
|
isEmpty(CROSS_COMPILE): error("CROSS_COMPILE needs to be set via -device-option CROSS_COMPILE=<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>")
|
|
|
|
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/
|
|
|
|
deviceSanityCheckCompiler()
|
|
|
|
QMAKE_CFLAGS_RELEASE = -O2 -march=armv7-a -mfpu=vfpv3-d16 -mfloat-abi=hard
|
|
QMAKE_CXXFLAGS_RELEASE = $$QMAKE_CFLAGS_RELEASE
|
|
|
|
# modifications to linux.conf
|
|
QMAKE_AR = $${CROSS_COMPILE}ar cqs
|
|
QMAKE_OBJCOPY = $${CROSS_COMPILE}objcopy
|
|
QMAKE_STRIP = $${CROSS_COMPILE}strip
|
|
|
|
QMAKE_INCDIR += $${TRIDENT_SHINER_SDK_BUILDTREE}/target/output/objs/$${TRIDENT_SHINER_SDK_BUILDSPEC}/comps/generic_apps/usr/include
|
|
QMAKE_LIBDIR += $${TRIDENT_SHINER_SDK_BUILDTREE}/target/output/objs/$${TRIDENT_SHINER_SDK_BUILDSPEC}/comps/generic_apps/usr/lib
|
|
QMAKE_LIBDIR += $${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)
|