From 776cecf5dc0c6ab60a88cef2db50f9b3686a5bcf Mon Sep 17 00:00:00 2001 From: Laszlo Agocs Date: Fri, 28 Oct 2016 10:42:16 +0200 Subject: Add a spec for 64-bit Jetson TX1 [ChangeLog][Platform Specific Changes] Added support for cross-compilation targeting 64-bit Jetson TX1 systems. Change-Id: I439ba0aa2424dbf448746fe2a4d26bf5596b2558 Reviewed-by: Oswald Buddenhagen Reviewed-by: Dominik Holland Reviewed-by: Louai Al-Khanji --- mkspecs/devices/linux-jetson-tx1-g++/qmake.conf | 51 ++++++++++++++++++++++ .../devices/linux-jetson-tx1-g++/qplatformdefs.h | 40 +++++++++++++++++ 2 files changed, 91 insertions(+) create mode 100644 mkspecs/devices/linux-jetson-tx1-g++/qmake.conf create mode 100644 mkspecs/devices/linux-jetson-tx1-g++/qplatformdefs.h diff --git a/mkspecs/devices/linux-jetson-tx1-g++/qmake.conf b/mkspecs/devices/linux-jetson-tx1-g++/qmake.conf new file mode 100644 index 0000000000..06cf329f3a --- /dev/null +++ b/mkspecs/devices/linux-jetson-tx1-g++/qmake.conf @@ -0,0 +1,51 @@ +# +# qmake configuration for Jetson TX1 boards running 64-bit Linux For Tegra +# (tested with R24.2, sample root filesystem) +# +# Note that this environment has been tested with X11 only. +# +# A typical configure line might look like the following: +# +# configure \ +# -device linux-jetson-tx1-g++ \ +# -device-option CROSS_COMPILE=/opt/gcc-linaro-5.3.1-2016.05-x86_64_aarch64-linux-gnu/bin/aarch64-linux-gnu- \ +# -sysroot /opt/Linux_for_Tegra/rootfs +# +# Note that this builds for GLX + OpenGL. To use EGL + OpenGL ES instead, pass +# -opengl es2 and ensure the rootfs has the headers (rootfs/usr/include/EGL, +# GLES2, GLES3), which may not be the case out of the box. +# +# Check the configure output carefully, some features may be disabled due to the +# rootfs not having the necessary dev files. +# +# If getting cryptic linker errors from static libs like libm.a, check that the +# symlinks libm.so, libz.so, etc. under rootfs/usr/lib/aarch64-linux-gnu are not +# broken. If they are, due to using absolute paths, change them so that they are +# relative to rootfs. + +include(../common/linux_device_pre.conf) + +QMAKE_INCDIR += \ + $$[QT_SYSROOT]/usr/include \ + $$[QT_SYSROOT]/usr/include/aarch64-linux-gnu + +QMAKE_LIBDIR += \ + $$[QT_SYSROOT]/usr/lib \ + $$[QT_SYSROOT]/lib/aarch64-linux-gnu \ + $$[QT_SYSROOT]/usr/lib/aarch64-linux-gnu + +QMAKE_LFLAGS += \ + -Wl,-rpath-link,$$[QT_SYSROOT]/usr/lib \ + -Wl,-rpath-link,$$[QT_SYSROOT]/usr/lib/aarch64-linux-gnu \ + -Wl,-rpath-link,$$[QT_SYSROOT]/usr/lib/aarch64-linux-gnu/tegra \ + -Wl,-rpath-link,$$[QT_SYSROOT]/lib/aarch64-linux-gnu + +DISTRO_OPTS += aarch64 +COMPILER_FLAGS += -mtune=cortex-a57.cortex-a53 -march=armv8-a + +# When configured with -opengl es2, eglfs will be functional with its +# dummy fullscreen X11 backend, in addition to xcb. +EGLFS_DEVICE_INTEGRATION = eglfs_x11 + +include(../common/linux_arm_device_post.conf) +load(qt_config) diff --git a/mkspecs/devices/linux-jetson-tx1-g++/qplatformdefs.h b/mkspecs/devices/linux-jetson-tx1-g++/qplatformdefs.h new file mode 100644 index 0000000000..e927f75015 --- /dev/null +++ b/mkspecs/devices/linux-jetson-tx1-g++/qplatformdefs.h @@ -0,0 +1,40 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of the plugins of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPL3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl-3.0.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or (at your option) the GNU General +** Public license version 3 or any later version approved by the KDE Free +** Qt Foundation. The licenses are as published by the Free Software +** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3 +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-2.0.html and +** https://www.gnu.org/licenses/gpl-3.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#include "../../linux-g++/qplatformdefs.h" -- cgit v1.2.3