From 344c2f97025c6504ec986600498121bb83aaeb8f Mon Sep 17 00:00:00 2001 From: Samuli Piippo Date: Fri, 2 Mar 2018 13:08:39 +0200 Subject: Split meta-boot2qt layer Move distro specific recipes to own layer and leave only new recipes and bbclasses to meta-boot2qt layer. This makes it easier to include meta-boot2qt to your own distro layer to get access e.g., QDB and QBSP recipes that might be useful even without boot2qt distro. Task-number: QTBUG-65871 Change-Id: I6c353774dd1668b00f2d05aa262ad866b90bdef6 Reviewed-by: Timo Aarnipuro --- .../binutils/binutils-cross_%.bbappend | 30 ++++++++++++ .../gdb/gdb-cross-canadian_7.%.bbappend | 56 ++++++++++++++++++++++ ...01-Do-not-use-win32-specific-filehandling.patch | 24 ++++++++++ .../recipes-devtools/perl/perl_5.%.bbappend | 32 +++++++++++++ .../python/python3-native_%.bbappend | 1 + .../recipes-devtools/python/python3-virtualenv.bb | 21 ++++++++ .../recipes-devtools/python/python3_%.bbappend | 11 +++++ 7 files changed, 175 insertions(+) create mode 100644 meta-boot2qt-distro/recipes-devtools/binutils/binutils-cross_%.bbappend create mode 100644 meta-boot2qt-distro/recipes-devtools/gdb/gdb-cross-canadian_7.%.bbappend create mode 100644 meta-boot2qt-distro/recipes-devtools/gdb/gdb/0001-Do-not-use-win32-specific-filehandling.patch create mode 100644 meta-boot2qt-distro/recipes-devtools/perl/perl_5.%.bbappend create mode 100644 meta-boot2qt-distro/recipes-devtools/python/python3-native_%.bbappend create mode 100644 meta-boot2qt-distro/recipes-devtools/python/python3-virtualenv.bb create mode 100644 meta-boot2qt-distro/recipes-devtools/python/python3_%.bbappend (limited to 'meta-boot2qt-distro/recipes-devtools') diff --git a/meta-boot2qt-distro/recipes-devtools/binutils/binutils-cross_%.bbappend b/meta-boot2qt-distro/recipes-devtools/binutils/binutils-cross_%.bbappend new file mode 100644 index 0000000..8a069ed --- /dev/null +++ b/meta-boot2qt-distro/recipes-devtools/binutils/binutils-cross_%.bbappend @@ -0,0 +1,30 @@ +############################################################################ +## +## Copyright (C) 2017 The Qt Company Ltd. +## Contact: https://www.qt.io/licensing/ +## +## This file is part of the Boot to Qt meta layer. +## +## $QT_BEGIN_LICENSE:GPL$ +## 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 General Public License Usage +## Alternatively, this file may be used under the terms of the GNU +## General Public License version 3 or (at your option) 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.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-3.0.html. +## +## $QT_END_LICENSE$ +## +############################################################################ + +LDGOLD_sdkmingw32 = "${@bb.utils.contains('DISTRO_FEATURES', 'ld-is-gold', '--enable-gold=default --enable-threads', '--enable-gold --enable-ld=default --enable-threads', d)}" diff --git a/meta-boot2qt-distro/recipes-devtools/gdb/gdb-cross-canadian_7.%.bbappend b/meta-boot2qt-distro/recipes-devtools/gdb/gdb-cross-canadian_7.%.bbappend new file mode 100644 index 0000000..4e55e66 --- /dev/null +++ b/meta-boot2qt-distro/recipes-devtools/gdb/gdb-cross-canadian_7.%.bbappend @@ -0,0 +1,56 @@ +############################################################################ +## +## Copyright (C) 2016 The Qt Company Ltd. +## Contact: https://www.qt.io/licensing/ +## +## This file is part of the Boot to Qt meta layer. +## +## $QT_BEGIN_LICENSE:GPL$ +## 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 General Public License Usage +## Alternatively, this file may be used under the terms of the GNU +## General Public License version 3 or (at your option) 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.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-3.0.html. +## +## $QT_END_LICENSE$ +## +############################################################################ + +FILESEXTRAPATHS_prepend_sdkmingw32 := "${THISDIR}/${BPN}:" +SRC_URI_append_sdkmingw32 = " file://0001-Do-not-use-win32-specific-filehandling.patch" + +DEPENDS_append_sdkmingw32 = " nativesdk-prebuild-python" +RDEPENDS_${PN}_append_sdkmingw32 = " nativesdk-prebuild-python" +EXTRA_OECONF_remove_sdkmingw32 = "--without-python --with-python=no" +EXTRA_OECONF_append_sdkmingw32 = " --with-python=${WORKDIR}/python_win" +CXXFLAGS_append_sdkmingw32 = " -D_hypot=hypot" + +do_configure_prepend_sdkmingw32() { +cat > ${WORKDIR}/python_win << EOF +#! /bin/sh +case "\$2" in + --includes) echo "-I${STAGING_INCDIR}/${PYTHON_DIR}" ;; + --ldflags) echo "-Wl,-rpath-link,${STAGING_LIBDIR}/.. -lpython35" ;; + --exec-prefix) echo "${exec_prefix}" ;; + *) exit 1 ;; +esac +exit 0 +EOF + chmod +x ${WORKDIR}/python_win +} + +do_install_append_sdkmingw32() { + ln -s ../python35.dll ${D}${bindir}/ + ln -s ../python35.zip ${D}${bindir}/ +} diff --git a/meta-boot2qt-distro/recipes-devtools/gdb/gdb/0001-Do-not-use-win32-specific-filehandling.patch b/meta-boot2qt-distro/recipes-devtools/gdb/gdb/0001-Do-not-use-win32-specific-filehandling.patch new file mode 100644 index 0000000..c9a20ed --- /dev/null +++ b/meta-boot2qt-distro/recipes-devtools/gdb/gdb/0001-Do-not-use-win32-specific-filehandling.patch @@ -0,0 +1,24 @@ +From 3c928a3bf8d873f6173a076da6e4c1bc85e9a3a0 Mon Sep 17 00:00:00 2001 +From: Samuli Piippo +Date: Wed, 28 Jun 2017 20:41:49 +0300 +Subject: [PATCH] Do not use win32 specific filehandling + +PyFile_FromString and PyFile_AsFile are no longer available in python3 +see https://sourceware.org/bugzilla/show_bug.cgi?id=15600 +--- + gdb/python/python.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/gdb/python/python.c b/gdb/python/python.c +index 9bccaa9..1d58dff 100644 +--- a/gdb/python/python.c ++++ b/gdb/python/python.c +@@ -374,7 +374,7 @@ python_interactive_command (char *arg, int from_tty) + static void + python_run_simple_file (FILE *file, const char *filename) + { +-#ifndef _WIN32 ++#ifdef _WIN32 + + PyRun_SimpleFile (file, filename); + diff --git a/meta-boot2qt-distro/recipes-devtools/perl/perl_5.%.bbappend b/meta-boot2qt-distro/recipes-devtools/perl/perl_5.%.bbappend new file mode 100644 index 0000000..5f4baf7 --- /dev/null +++ b/meta-boot2qt-distro/recipes-devtools/perl/perl_5.%.bbappend @@ -0,0 +1,32 @@ +############################################################################ +## +## Copyright (C) 2016 The Qt Company Ltd. +## Contact: https://www.qt.io/licensing/ +## +## This file is part of the Boot to Qt meta layer. +## +## $QT_BEGIN_LICENSE:GPL$ +## 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 General Public License Usage +## Alternatively, this file may be used under the terms of the GNU +## General Public License version 3 or (at your option) 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.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-3.0.html. +## +## $QT_END_LICENSE$ +## +############################################################################ + +do_install_append_class-nativesdk () { + sed -i -e 's|$OECORE_NATIVE_SYSROOT/|${SDKPATHNATIVE}|g' ${D}${bindir}/perl +} diff --git a/meta-boot2qt-distro/recipes-devtools/python/python3-native_%.bbappend b/meta-boot2qt-distro/recipes-devtools/python/python3-native_%.bbappend new file mode 100644 index 0000000..9015f3f --- /dev/null +++ b/meta-boot2qt-distro/recipes-devtools/python/python3-native_%.bbappend @@ -0,0 +1 @@ +SRC_URI_remove = "file://python-3.3-multilib.patch" diff --git a/meta-boot2qt-distro/recipes-devtools/python/python3-virtualenv.bb b/meta-boot2qt-distro/recipes-devtools/python/python3-virtualenv.bb new file mode 100644 index 0000000..cc091b8 --- /dev/null +++ b/meta-boot2qt-distro/recipes-devtools/python/python3-virtualenv.bb @@ -0,0 +1,21 @@ +SUMMARY = "Virtual Python Environment builder" +HOMEPAGE = "http://github.com/gitpython-developers/GitPython" +SECTION = "devel/python" +LICENSE = "BSD-3-Clause" +LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=51910050bd6ad04a50033f3e15d6ce43" + +PV="15.1.0" +SRC_URI = "https://files.pythonhosted.org/packages/source/v/virtualenv/virtualenv-15.1.0.tar.gz" + +SRC_URI[md5sum] = "44e19f4134906fe2d75124427dc9b716" +SRC_URI[sha256sum] = "02f8102c2436bb03b3ee6dede1919d1dac8a427541652e5ec95171ec8adbc93a" + +UPSTREAM_CHECK_URI = "https://pypi.python.org/pypi/virtualenv/" +UPSTREAM_CHECK_REGEX = "/virtualenv/(?P(\d+[\.\-_]*)+)" + +S = "${WORKDIR}/virtualenv-${PV}" + +BBCLASSEXTEND = "native nativesdk" + +inherit setuptools3 + diff --git a/meta-boot2qt-distro/recipes-devtools/python/python3_%.bbappend b/meta-boot2qt-distro/recipes-devtools/python/python3_%.bbappend new file mode 100644 index 0000000..b3a5eb7 --- /dev/null +++ b/meta-boot2qt-distro/recipes-devtools/python/python3_%.bbappend @@ -0,0 +1,11 @@ +SRC_URI_remove = "file://python-3.3-multilib.patch" + +# We need to install the python3 binary into the sysroot to let qtivi install that binary +# into the correct location. +# We can't install it directly into ${bindir} as this would be picked up by other recipes +# and produce a lot of errors. Instead put it inside a qt5 folder where only qtivi picks it up +# This is a workaround and needs to be replaced by a proper solution discussed here: +# https://bugreports.qt.io/browse/AUTOSUITE-176 +sysroot_stage_all_append_class-nativesdk () { + sysroot_stage_dir ${D}${bindir} ${SYSROOT_DESTDIR}${bindir}/qt5 +} -- cgit v1.2.3-54-g00ecf