Change help2man, mercurial-native behavior
v3 cover Change help2man, mercurial-native behavior
Hey all,
As I said in another thread, today we depend on a few more host utilities being installed on the host than oe.dev does. This is an attempt to fix that a bit and improve on the situation at the same time. First up is dropping mercurial-native as we don't have any hg:// URIs and meta-oe now has a mercurial-native recipe if needed. Next up is help2man-native. We now only ship the GPLv3 version as a -native recipe. This retains a "don't re-conf" do_configure and an expanded comment that explains that if we did so we would need perlnative. Since this is just making a perl script it feels like doing the reconf and required patching is overkill. After this, add in a local.conf.sample change so people can ASSUME_PROVIDED this themselves if needed (based on oe.dev)
I've tested this with qemux86 and core-image-sato
and it still all builds and works as much as it has been for me wrt tests.
Finally, in the commit message I said avoiding perl-native problem and what I'm speaking of is that since I put help2man-native in with all of the autotools deps, adding perlnative to the inherits list would bring perl in for everything. We can punt on this by just not adding target help2man for now.
v2: Move mercurial-native recipe to meta-oe, GPLv2 version of help2man-native
v3: After talking with RP, we don't want to do the automatic ASSUME_PROVIDED thing anymore.
The following changes since commit e66c2999afa2b3efbce8bb46c89f9db5e15f35c7:
Saul Wold (1):
libx11: ensure nativesdk uses correct DEPENDS and XCB flags
are available in the git repository at:
git://git.openembedded.org/openembedded-core-contrib trini/add-more-native-recipes-v3
http://cgit.openembedded.org/cgit.cgi/openembedded-core-contrib/log/?h=trini/add-more-native-recipes-v3
Tom Rini (4):
bitbake.conf, sanity.bbclass: Drop mercurial-native
help2man-native: Add 1.38.2
autotools.bbclass: Add help2man-native to the main DEPENDS tree local.conf.sample: Add a note about ASSUME_PROVIDED for help2man
meta/classes/autotools.bbclass | 4 +- meta/classes/sanity.bbclass | 2 +- meta/conf/bitbake.conf | 1 - meta/conf/local.conf.sample | 3 ++ .../help2man/help2man-native_1.38.2.bb | 25 ++++++++++++++++++++ 5 files changed, 31 insertions(+), 4 deletions(-) create mode 100644 meta/recipes-devtools/help2man/help2man-native_1.38.2.bb
PATCH v3 1/4 bitbake.conf, sanity.bbclass: Drop mercurial-native
We have no hg URIs in the metadata, so don't require and don't ASSUME_PROVIDED it either. meta-oe has a mercurial-native recipe if hg URIs are added in a recipe later.
--- meta/classes/sanity.bbclass | 2 +- meta/conf/bitbake.conf | 1 - 2 files changed, 1 insertions(+), 2 deletions(-)
meta/classes/sanity.bbclass +1 -1
@@ -209,7 +209,7 @@ def check_sanity(e): if not check_app_exists('${BUILD_PREFIX}g++', e.data): missing = missing + "C++ Compiler (%sg++)," % data.getVar("BUILD_PREFIX", e.data, True) - required_utilities = "patch help2man diffstat texi2html makeinfo cvs svn bzip2 tar gzip gawk hg chrpath wget cpio" + required_utilities = "patch help2man diffstat texi2html makeinfo cvs svn bzip2 tar gzip gawk chrpath wget cpio" # qemu-native needs gcc 3.x if "qemu-native" not in assume_provided and "gcc3-native" in assume_provided:
meta/conf/bitbake.conf +0 -1
@@ -132,7 +132,6 @@ ASSUME_PROVIDED = "\ cvs-native \ grep-native \ diffstat-native \ - mercurial-native \ patch-native \ perl-native-runtime \ python-native-runtime \
Signature · 1 line
1.7.0.4
PATCH v3 2/4 help2man-native: Add 1.38.2
In reply to Tom RiniThis is a 'side port' of current oe.dev versions. PR is kept in sync but we drop out the target recipes in order to punt on potential perl problems. Here we do re-configure as we don't have a dance with perl-native to deal with. Now that we can build it, don't require it.
--- meta/classes/sanity.bbclass | 2 +- .../help2man/help2man-native_1.38.2.bb | 25 ++++++++++++++++++++ 2 files changed, 26 insertions(+), 1 deletions(-) create mode 100644 meta/recipes-devtools/help2man/help2man-native_1.38.2.bb
meta/classes/sanity.bbclass +1 -1
@@ -209,7 +209,7 @@ def check_sanity(e): if not check_app_exists('${BUILD_PREFIX}g++', e.data): missing = missing + "C++ Compiler (%sg++)," % data.getVar("BUILD_PREFIX", e.data, True) - required_utilities = "patch help2man diffstat texi2html makeinfo cvs svn bzip2 tar gzip gawk chrpath wget cpio" + required_utilities = "patch diffstat texi2html makeinfo cvs svn bzip2 tar gzip gawk chrpath wget cpio" # qemu-native needs gcc 3.x if "qemu-native" not in assume_provided and "gcc3-native" in assume_provided:
meta/recipes-devtools/help2man/help2man-native_1.38.2.bb new file +25 -0
@@ -0,0 +1,25 @@ +DESCRIPTION = "Program to create simple man pages" +SECTION = "devel" +LICENSE = "GPLv3" +LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504" +DEPENDS = "autoconf-native automake-native" +PR = "r2" + +SRC_URI = "${GNU_MIRROR}/${BPN}/${BPN}-${PV}.tar.gz" +SRC_URI[md5sum] = "426671c6fe79e5ef2233303367eab5a6" +SRC_URI[sha256sum] = "952c29561bce8b233aa10af7f0e0c79c8243712810bf8ddf01e6efd82ce250d1" + +inherit autotools native + +EXTRA_OECONF = "--disable-nls" + +# We don't want to reconfigure things as it would require 'perlnative' to be +# used. +do_configure() { + oe_runconf +} + +do_install_append () { + # Make sure we use /usr/bin/env perl + sed -i -e "1s:#!.*:#! /usr/bin/env perl:" ${D}${bindir}/help2man +}
Signature · 1 line
1.7.0.4
PATCH v3 3/4 autotools.bbclass: Add help2man-native to the main DEPENDS tree
In reply to Tom RiniWith help2man no longer being required by sanity.bbclass we need to make sure that if we are going to build autotools stuff that help2man will be there as it's a frequent implicit dependency.
--- meta/classes/autotools.bbclass | 4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-)
meta/classes/autotools.bbclass +2 -2
@@ -5,9 +5,9 @@ def autotools_dep_prepend(d): pn = bb.data.getVar('PN', d, 1) deps = '' - if pn in ['autoconf-native', 'automake-native']: + if pn in ['autoconf-native', 'automake-native', 'help2man-native']: return deps - deps += 'autoconf-native automake-native ' + deps += 'autoconf-native automake-native help2man-native ' if not pn in ['libtool', 'libtool-native', 'libtool-cross']: deps += 'libtool-native '
Signature · 1 line
1.7.0.4
PATCH v3 4/4 local.conf.sample: Add a note about ASSUME_PROVIDED for help2man
In reply to Tom RiniSimilar, but opposite of oe.dev example.
--- meta/conf/local.conf.sample | 3 +++ 1 files changed, 3 insertions(+), 0 deletions(-)
meta/conf/local.conf.sample +3 -0
@@ -186,3 +186,6 @@ NO32LIBS = "1" # GNOME, SCREEN, XTERM and KONSOLE #TERMCMD = "${KONSOLE_TERMCMD}" #TERMCMDRUN = "${KONSOLE_TERMCMDRUN}" + +# Uncomment this if your host distribution provides the help2man tool. +#ASSUME_PROVIDED += "help2man-native"
Signature · 1 line
1.7.0.4