From 045be9ae11194eddbdae242b58996cc1f6ae7e72 Mon Sep 17 00:00:00 2001 From: Martin Jansa Date: Fri, 10 Aug 2018 15:28:29 +0000 Subject: [PATCH 1/6] layer.conf: add rocko to LAYERSERIES_COMPAT_ros-layer * meta-ros is compatible with Yocto 2.4 Rocko without any special handling needed to integrate it, mark it as compatible * LAYERSERIES_COMPAT variables are used only since 2.4 Rocko, so with even older Yocto releases this isn't an issue, but with 2.4 it was failing with: bitbake -e zlib | tee env.zlib ERROR: Unable to start bitbake server which isn't really useful, bitbake-cookerdaemon.log shows better explanation: Traceback (most recent call last): File "build-rocko/bitbake/lib/bb/cookerdata.py", line 285, in parseBaseConfiguration self.data = self.parseConfigurationFiles(self.prefiles, self.postfiles) File "build-rocko/bitbake/lib/bb/cookerdata.py", line 399, in parseConfigurationFiles % (c, " ".join(layerseries), " ".join(compat))) File "build-rocko/bitbake/lib/bb/__init__.py", line 104, in fatal raise BBHandledException() bb.BBHandledException During handling of the above exception, another exception occurred: Traceback (most recent call last): File "build-rocko/bitbake/lib/bb/daemonize.py", line 77, in createDaemon function() File "build-rocko/bitbake/lib/bb/server/process.py", line 433, in _startServer self.cooker = bb.cooker.BBCooker(self.configuration, self.featureset) File "build-rocko/bitbake/lib/bb/cooker.py", line 197, in __init__ self.initConfigurationData() File "build-rocko/bitbake/lib/bb/cooker.py", line 356, in initConfigurationData self.databuilder.parseBaseConfiguration() File "build-rocko/bitbake/lib/bb/cookerdata.py", line 318, in parseBaseConfiguration raise bb.BBHandledException bb.BBHandledException ERROR: Layer ros-layer is not compatible with the core layer which only supports these series: rocko (layer is compatible with sumo) * and it's a bit complicated to override LAYERSERIES_COMPAT_ros-layer from local build without meta-ros modification, changing it in some other (own) layer, which is parsed after meta-ros works, but you might not have suitable layer for this. Signed-off-by: Martin Jansa --- conf/layer.conf | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/conf/layer.conf b/conf/layer.conf index 9887f99..9200dc4 100644 --- a/conf/layer.conf +++ b/conf/layer.conf @@ -10,6 +10,6 @@ BBFILE_PRIORITY_ros-layer = "7" LICENSE_PATH += "${LAYERDIR}/licenses" -LAYERSERIES_COMPAT_ros-layer = "sumo" +LAYERSERIES_COMPAT_ros-layer = "rocko sumo" ROSDISTRO := "indigo" From 4839445aef71944158fdf312a8697c2a576c0e18 Mon Sep 17 00:00:00 2001 From: Martin Jansa Date: Thu, 23 Aug 2018 10:06:40 +0000 Subject: [PATCH 2/6] sphinxbase: add dependency on bison-native * fixes: | checking for bison... no | configure: error: You need to install bison | NOTE: The following config.log files may provide further information. | NOTE: /data/cibot/deleteme/build/tmp-glibc/work/i586-oe-linux/sphinxbase/0.8-r0/build/config.log * needed since oe-core change: http://git.openembedded.org/openembedded-core/commit/?id=b7edc20cc2dd82989bd9561f860cb25478a40f69 Signed-off-by: Martin Jansa --- recipes-extended/cmusphinx/sphinxbase_0.8.bb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/recipes-extended/cmusphinx/sphinxbase_0.8.bb b/recipes-extended/cmusphinx/sphinxbase_0.8.bb index 4a01a8b..fc15e29 100644 --- a/recipes-extended/cmusphinx/sphinxbase_0.8.bb +++ b/recipes-extended/cmusphinx/sphinxbase_0.8.bb @@ -12,7 +12,7 @@ require cmusphinx.inc SRC_URI += "file://0001-TESTS-srcdir-remove.patch" -DEPENDS = "libsndfile1 alsa-lib libsamplerate0" +DEPENDS = "libsndfile1 alsa-lib libsamplerate0 bison-native" EXTRA_OECONF = " --without-python" From eabbe6ebbe54ebd89ee9acd1e8c66b796e4164ee Mon Sep 17 00:00:00 2001 From: Martin Jansa Date: Fri, 24 Aug 2018 12:04:29 +0000 Subject: [PATCH 3/6] ros-arduino-bridge.inc: use static SRCREV instead of AUTOREV * using AUTOREV causes undeterministic builds when it might start failing even when nothing was changed in the metadata * it also forces bitbake to run git ls-remote on the github repo every single time when the recipe is parsed and fails to build when doing builds without network access (from pre-populated premirror) * hydro-devel branch wasn't updated for last 3 years and there are only 73 commits in it, so AUTOREV wasn't really useful anyway Signed-off-by: Martin Jansa --- recipes-ros/ros-arduino-bridge/ros-arduino-bridge.inc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/recipes-ros/ros-arduino-bridge/ros-arduino-bridge.inc b/recipes-ros/ros-arduino-bridge/ros-arduino-bridge.inc index 58a3eef..72dc98c 100644 --- a/recipes-ros/ros-arduino-bridge/ros-arduino-bridge.inc +++ b/recipes-ros/ros-arduino-bridge/ros-arduino-bridge.inc @@ -1,5 +1,5 @@ SRC_URI = "git://github.com/hbrobotics/${ROS_SPN}.git;protocol=https;branch=hydro-devel" -SRCREV = "${AUTOREV}" +SRCREV = "4f45c3467d724cd7a25db3445f4c98dc759e8fd0" S = "${WORKDIR}/git/${ROS_BPN}" From 7e4a616ec4c578de838b70bd8145fbfeda4d86ad Mon Sep 17 00:00:00 2001 From: Martin Jansa Date: Fri, 24 Aug 2018 16:43:24 +0000 Subject: [PATCH 4/6] mavlink: set fixed SRCREV instead of tag name and define PV * otherwise bitbake fetcher will access the network every time the recipes is parsed to convert tag name in SRCREV to git SHA and then again during do_fetch and do_unpack: log.do_fetch: DEBUG: Fetcher accessed the network with the command git -c core.fsyncobjectfiles=0 ls-remote git://github.com/mavlink/mavlink-gbp-release.git DEBUG: Running export PSEUDO_DISABLED=1; export PATH="/OE/build/oe-core/tmp-glibc/work/core2-64-oe-linux/mavlink/git-r0/recipe-sysroot-native/usr/bin/python-native:/OE/build/oe-core/openembedded-core/scripts:/OE/build/oe-core/tmp-glibc/work/core2-64-oe-linux/mavlink/git-r0/recipe-sysroot-native/usr/bin/x86_64-oe-linux:/OE/build/oe-core/tmp-glibc/work/core2-64-oe-linux/mavlink/git-r0/recipe-sysroot/usr/bin/crossscripts:/OE/build/oe-core/tmp-glibc/work/core2-64-oe-linux/mavlink/git-r0/recipe-sysroot-native/usr/sbin:/OE/build/oe-core/tmp-glibc/work/core2-64-oe-linux/mavlink/git-r0/recipe-sysroot-native/usr/bin:/OE/build/oe-core/tmp-glibc/work/core2-64-oe-linux/mavlink/git-r0/recipe-sysroot-native/sbin:/OE/build/oe-core/tmp-glibc/work/core2-64-oe-linux/mavlink/git-r0/recipe-sysroot-native/bin:/OE/build/oe-core/bitbake/bin:/OE/build/oe-core/tmp-glibc/hosttools"; export HOME="/OE"; git -c core.fsyncobjectfiles=0 ls-remote git://github.com/mavlink/mavlink-gbp-release.git DEBUG: Running export PSEUDO_DISABLED=1; export PATH="/OE/build/oe-core/tmp-glibc/work/core2-64-oe-linux/mavlink/git-r0/recipe-sysroot-native/usr/bin/python-native:/OE/build/oe-core/openembedded-core/scripts:/OE/build/oe-core/tmp-glibc/work/core2-64-oe-linux/mavlink/git-r0/recipe-sysroot-native/usr/bin/x86_64-oe-linux:/OE/build/oe-core/tmp-glibc/work/core2-64-oe-linux/mavlink/git-r0/recipe-sysroot/usr/bin/crossscripts:/OE/build/oe-core/tmp-glibc/work/core2-64-oe-linux/mavlink/git-r0/recipe-sysroot-native/usr/sbin:/OE/build/oe-core/tmp-glibc/work/core2-64-oe-linux/mavlink/git-r0/recipe-sysroot-native/usr/bin:/OE/build/oe-core/tmp-glibc/work/core2-64-oe-linux/mavlink/git-r0/recipe-sysroot-native/sbin:/OE/build/oe-core/tmp-glibc/work/core2-64-oe-linux/mavlink/git-r0/recipe-sysroot-native/bin:/OE/build/oe-core/bitbake/bin:/OE/build/oe-core/tmp-glibc/hosttools"; export HOME="/OE"; git -c core.fsyncobjectfiles=0 branch --contains 7dbef3644782a4297fec76a4a2f7a61705dd624d --list release/kinetic/mavlink 2> /dev/null | wc -l log.do_unpack: DEBUG: Fetcher accessed the network with the command git -c core.fsyncobjectfiles=0 ls-remote git://github.com/mavlink/mavlink-gbp-release.git DEBUG: Running export PSEUDO_DISABLED=1; export PATH="/OE/build/oe-core/tmp-glibc/work/core2-64-oe-linux/mavlink/git-r0/recipe-sysroot-native/usr/bin/python-native:/OE/build/oe-core/openembedded-core/scripts:/OE/build/oe-core/tmp-glibc/work/core2-64-oe-linux/mavlink/git-r0/recipe-sysroot-native/usr/bin/x86_64-oe-linux:/OE/build/oe-core/tmp-glibc/work/core2-64-oe-linux/mavlink/git-r0/recipe-sysroot/usr/bin/crossscripts:/OE/build/oe-core/tmp-glibc/work/core2-64-oe-linux/mavlink/git-r0/recipe-sysroot-native/usr/sbin:/OE/build/oe-core/tmp-glibc/work/core2-64-oe-linux/mavlink/git-r0/recipe-sysroot-native/usr/bin:/OE/build/oe-core/tmp-glibc/work/core2-64-oe-linux/mavlink/git-r0/recipe-sysroot-native/sbin:/OE/build/oe-core/tmp-glibc/work/core2-64-oe-linux/mavlink/git-r0/recipe-sysroot-native/bin:/OE/build/oe-core/bitbake/bin:/OE/build/oe-core/tmp-glibc/hosttools"; export HOME="/OE"; git -c core.fsyncobjectfiles=0 ls-remote git://github.com/mavlink/mavlink-gbp-release.git DEBUG: Running export PSEUDO_DISABLED=1; export PATH="/OE/build/oe-core/tmp-glibc/work/core2-64-oe-linux/mavlink/git-r0/recipe-sysroot-native/usr/bin/python-native:/OE/build/oe-core/openembedded-core/scripts:/OE/build/oe-core/tmp-glibc/work/core2-64-oe-linux/mavlink/git-r0/recipe-sysroot-native/usr/bin/x86_64-oe-linux:/OE/build/oe-core/tmp-glibc/work/core2-64-oe-linux/mavlink/git-r0/recipe-sysroot/usr/bin/crossscripts:/OE/build/oe-core/tmp-glibc/work/core2-64-oe-linux/mavlink/git-r0/recipe-sysroot-native/usr/sbin:/OE/build/oe-core/tmp-glibc/work/core2-64-oe-linux/mavlink/git-r0/recipe-sysroot-native/usr/bin:/OE/build/oe-core/tmp-glibc/work/core2-64-oe-linux/mavlink/git-r0/recipe-sysroot-native/sbin:/OE/build/oe-core/tmp-glibc/work/core2-64-oe-linux/mavlink/git-r0/recipe-sysroot-native/bin:/OE/build/oe-core/bitbake/bin:/OE/build/oe-core/tmp-glibc/hosttools"; export HOME="/OE"; git -c core.fsyncobjectfiles=0 clone -s -n /OE/build/oe-core/downloads/git2/github.com.mavlink.mavlink-gbp-release.git/ /OE/build/oe-core/tmp-glibc/work/core2-64-oe-linux/mavlink/git-r0/git/ DEBUG: Running export PSEUDO_DISABLED=1; export PATH="/OE/build/oe-core/tmp-glibc/work/core2-64-oe-linux/mavlink/git-r0/recipe-sysroot-native/usr/bin/python-native:/OE/build/oe-core/openembedded-core/scripts:/OE/build/oe-core/tmp-glibc/work/core2-64-oe-linux/mavlink/git-r0/recipe-sysroot-native/usr/bin/x86_64-oe-linux:/OE/build/oe-core/tmp-glibc/work/core2-64-oe-linux/mavlink/git-r0/recipe-sysroot/usr/bin/crossscripts:/OE/build/oe-core/tmp-glibc/work/core2-64-oe-linux/mavlink/git-r0/recipe-sysroot-native/usr/sbin:/OE/build/oe-core/tmp-glibc/work/core2-64-oe-linux/mavlink/git-r0/recipe-sysroot-native/usr/bin:/OE/build/oe-core/tmp-glibc/work/core2-64-oe-linux/mavlink/git-r0/recipe-sysroot-native/sbin:/OE/build/oe-core/tmp-glibc/work/core2-64-oe-linux/mavlink/git-r0/recipe-sysroot-native/bin:/OE/build/oe-core/bitbake/bin:/OE/build/oe-core/tmp-glibc/hosttools"; export HOME="/OE"; git -c core.fsyncobjectfiles=0 remote set-url origin git://github.com/mavlink/mavlink-gbp-release.git DEBUG: Running export PSEUDO_DISABLED=1; export PATH="/OE/build/oe-core/tmp-glibc/work/core2-64-oe-linux/mavlink/git-r0/recipe-sysroot-native/usr/bin/python-native:/OE/build/oe-core/openembedded-core/scripts:/OE/build/oe-core/tmp-glibc/work/core2-64-oe-linux/mavlink/git-r0/recipe-sysroot-native/usr/bin/x86_64-oe-linux:/OE/build/oe-core/tmp-glibc/work/core2-64-oe-linux/mavlink/git-r0/recipe-sysroot/usr/bin/crossscripts:/OE/build/oe-core/tmp-glibc/work/core2-64-oe-linux/mavlink/git-r0/recipe-sysroot-native/usr/sbin:/OE/build/oe-core/tmp-glibc/work/core2-64-oe-linux/mavlink/git-r0/recipe-sysroot-native/usr/bin:/OE/build/oe-core/tmp-glibc/work/core2-64-oe-linux/mavlink/git-r0/recipe-sysroot-native/sbin:/OE/build/oe-core/tmp-glibc/work/core2-64-oe-linux/mavlink/git-r0/recipe-sysroot-native/bin:/OE/build/oe-core/bitbake/bin:/OE/build/oe-core/tmp-glibc/hosttools"; export HOME="/OE"; git -c core.fsyncobjectfiles=0 checkout -B release/kinetic/mavlink 7dbef3644782a4297fec76a4a2f7a61705dd624d DEBUG: Running export PSEUDO_DISABLED=1; export PATH="/OE/build/oe-core/tmp-glibc/work/core2-64-oe-linux/mavlink/git-r0/recipe-sysroot-native/usr/bin/python-native:/OE/build/oe-core/openembedded-core/scripts:/OE/build/oe-core/tmp-glibc/work/core2-64-oe-linux/mavlink/git-r0/recipe-sysroot-native/usr/bin/x86_64-oe-linux:/OE/build/oe-core/tmp-glibc/work/core2-64-oe-linux/mavlink/git-r0/recipe-sysroot/usr/bin/crossscripts:/OE/build/oe-core/tmp-glibc/work/core2-64-oe-linux/mavlink/git-r0/recipe-sysroot-native/usr/sbin:/OE/build/oe-core/tmp-glibc/work/core2-64-oe-linux/mavlink/git-r0/recipe-sysroot-native/usr/bin:/OE/build/oe-core/tmp-glibc/work/core2-64-oe-linux/mavlink/git-r0/recipe-sysroot-native/sbin:/OE/build/oe-core/tmp-glibc/work/core2-64-oe-linux/mavlink/git-r0/recipe-sysroot-native/bin:/OE/build/oe-core/bitbake/bin:/OE/build/oe-core/tmp-glibc/hosttools"; export HOME="/OE"; git -c core.fsyncobjectfiles=0 branch release/kinetic/mavlink --set-upstream-to origin/release/kinetic/mavlink * set PV according to PROJECT_VERSION in CMakeLists.txt, because current version "git-r0" is quite annoying and doesn't really sort well when doing the package upgrades on target MACHINE Signed-off-by: Martin Jansa --- recipes-ros/mavlink/mavlink_git.bb | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/recipes-ros/mavlink/mavlink_git.bb b/recipes-ros/mavlink/mavlink_git.bb index 144f98e..64b9279 100644 --- a/recipes-ros/mavlink/mavlink_git.bb +++ b/recipes-ros/mavlink/mavlink_git.bb @@ -4,11 +4,12 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=54ad3cbe91bebcf6b1823970ff1fb97f" DEPENDS = "${PYTHON_PN}-setuptools-native ${PYTHON_PN}-future-native" -SRC_URI = "git://github.com/mavlink/mavlink-gbp-release.git;branch=release/kinetic/mavlink" -SRCREV = "release/kinetic/mavlink/2017.8.8-0" - -SRC_URI += "file://0001-do-not-require-python2.patch" -SRC_URI += "file://0002-provide-path-to-find-mavgen_c.patch" +SRC_URI = "git://github.com/mavlink/mavlink-gbp-release.git;branch=release/kinetic/mavlink \ + file://0001-do-not-require-python2.patch \ + file://0002-provide-path-to-find-mavgen_c.patch \ +" +SRCREV = "7dbef3644782a4297fec76a4a2f7a61705dd624d" +PV = "1.0.9+git${SRCPV}" S = "${WORKDIR}/git" From 1b08af3ea7653140ceed0bfc2206a9dce846b52f Mon Sep 17 00:00:00 2001 From: Martin Jansa Date: Sat, 12 May 2018 17:12:21 +0000 Subject: [PATCH 5/6] yaml-cpp: add PN-gtest package * fixes: -dev package contains non-symlink .so: yaml-cpp-dev path '/work/core2-64-oe-linux/yaml-cpp/0.6.2+gitAUTOINC+ab5f9259a4-r0/packages-split/yaml-cpp-dev/usr/lib/libgmock_main.so' -dev package contains non-symlink .so: yaml-cpp-dev path '/work/aarch64-oe-linux/yaml-cpp/0.6.2+gitAUTOINC+ab5f9259a4-r0/packages-split/yaml-cpp-dev/usr/lib/libgmock.so' [dev-elf] -dev package contains non-symlink .so: yaml-cpp-dev path '/work/core2-64-oe-linux/yaml-cpp/0.6.2+gitAUTOINC+ab5f9259a4-r0/packages-split/yaml-cpp-dev/usr/lib/libgtest_main.so' -dev package contains non-symlink .so: yaml-cpp-dev path '/work/core2-64-oe-linux/yaml-cpp/0.6.2+gitAUTOINC+ab5f9259a4-r0/packages-split/yaml-cpp-dev/usr/lib/libgtest.so' [dev-elf] Signed-off-by: Martin Jansa --- recipes-devtools/yaml-cpp/yaml-cpp_0.6.2.bb | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/recipes-devtools/yaml-cpp/yaml-cpp_0.6.2.bb b/recipes-devtools/yaml-cpp/yaml-cpp_0.6.2.bb index 8d71b7e..f8e6609 100644 --- a/recipes-devtools/yaml-cpp/yaml-cpp_0.6.2.bb +++ b/recipes-devtools/yaml-cpp/yaml-cpp_0.6.2.bb @@ -15,3 +15,11 @@ SRCREV = "562aefc114938e388457e6a531ed7b54d9dc1b62" EXTRA_OECMAKE = "-DBUILD_SHARED_LIBS=ON -DYAML_CPP_BUILD_TESTS=OFF" inherit cmake + +PACKAGES =+ "${PN}-gtest" +FILES_${PN}-gtest += " \ + ${libdir}/libgmock_main.so \ + ${libdir}/libgtest_main.so \ + ${libdir}/libgtest.so \ + ${libdir}/libgmock.so \ +" From c1d9ef998b10a840390c9df420fb02fea0a5e3d3 Mon Sep 17 00:00:00 2001 From: Martin Jansa Date: Mon, 6 Aug 2018 14:49:57 +0000 Subject: [PATCH 6/6] python-pyyaml: drop and use the recipe from meta-python * 3.11 version is in meta-python since morty http://git.openembedded.org/meta-openembedded/commit/?id=4100a96a5a98987910f17b317488bb2a86d50514 * the meta-ros version was missing dependency on libyaml and python-cython-native which was in meta-oe version for very long time since denzil http://git.openembedded.org/meta-openembedded/commit/?id=89500c583e0f1dc1b4ffdf72914e08e505e427e0 Signed-off-by: Martin Jansa --- recipes-devtools/python/python-pyyaml_3.11.bb | 18 ------------------ 1 file changed, 18 deletions(-) delete mode 100644 recipes-devtools/python/python-pyyaml_3.11.bb diff --git a/recipes-devtools/python/python-pyyaml_3.11.bb b/recipes-devtools/python/python-pyyaml_3.11.bb deleted file mode 100644 index 9674cc3..0000000 --- a/recipes-devtools/python/python-pyyaml_3.11.bb +++ /dev/null @@ -1,18 +0,0 @@ -DESCRIPTION = "YAML parser and emitter for Python" -SECTION = "devel/python" -LICENSE = "MIT" -LIC_FILES_CHKSUM = "file://LICENSE;md5=6015f088759b10e0bc2bf64898d4ae17" - -SRCNAME = "PyYAML" - -SRC_URI = "http://pyyaml.org/download/pyyaml/PyYAML-${PV}.tar.gz" -SRC_URI[md5sum] = "f50e08ef0fe55178479d3a618efe21db" -SRC_URI[sha256sum] = "c36c938a872e5ff494938b33b14aaa156cb439ec67548fcab3535bb78b0846e8" - -S = "${WORKDIR}/${SRCNAME}-${PV}" - -RDEPENDS_${PN} = "python-datetime" - -inherit distutils - -BBCLASSEXTEND = "native"