[OE-core] [PATCH] opkg-util: Fix documentation DEPENDS

Joshua Watt jpewhacker at gmail.com
Fri Jun 28 02:53:08 UTC 2019


On Thu, Jun 27, 2019 at 11:24 AM Burton, Ross <ross.burton at intel.com> wrote:
>
> Actually looked at this.  The makefile is using pod2man, which is in
> HOSTTOOLS, so how is this a problem?

OK, sorry the commit message here is misleading. I went back and
rebuilt to try and remember, and the problem is not that the
documentation isn't generated, its that pod2man coming from the host
tools might not match the one from perl-native, which makes the build
non-deterministic (that is, it appears that the first time opkg-utils
gets built it will get pod2man from HOSTTOOLS, but subsequent rebuilds
might get it from perl-native, depending on what has changed).

Even so, there might be a bigger issue with having pod2man in
HOSTTOOLS and having reproducible builds; If our end goal is
reproducible builds across different hosts, some of the HOSTTOOLS are
going to be problematic since they could vary between hosts. I'm not
currently attempting cross host reproducibility, but in some regard it
might be inevitable if any part of the build is restored from an
sstate object built by another host.

I suppose the easy answer there is "Your OE build is only as
reproducible as your build host.... and all the hosts that contribute
to sstate", but that's a little sad because it probably means you'll
only have reproducible builds if you disable sstate.

>
> Ross
>
> On Thu, 27 Jun 2019 at 14:54, Joshua Watt <jpewhacker at gmail.com> wrote:
> >
> > opkg-utils requires perl to generate documentation in do_compile. If not
> > present, the documentation will be skipped, which is not reproducible.
> >
> > Signed-off-by: Joshua Watt <JPEWhacker at gmail.com>
> > ---
> >  meta/recipes-devtools/opkg-utils/opkg-utils_0.4.1.bb | 2 ++
> >  1 file changed, 2 insertions(+)
> >
> > diff --git a/meta/recipes-devtools/opkg-utils/opkg-utils_0.4.1.bb b/meta/recipes-devtools/opkg-utils/opkg-utils_0.4.1.bb
> > index 4be7b16d8a2..2f1bf0d21ba 100644
> > --- a/meta/recipes-devtools/opkg-utils/opkg-utils_0.4.1.bb
> > +++ b/meta/recipes-devtools/opkg-utils/opkg-utils_0.4.1.bb
> > @@ -12,6 +12,8 @@ SRC_URI = "http://git.yoctoproject.org/cgit/cgit.cgi/${BPN}/snapshot/${BPN}-${PV
> >  "
> >  UPSTREAM_CHECK_URI = "http://git.yoctoproject.org/cgit/cgit.cgi/opkg-utils/refs/"
> >
> > +# Perl is required to generate documentation
> > +DEPENDS_class-target = "perl-native"
> >
> >  SRC_URI[md5sum] = "8c140f835b694a0c27cfb23d2426a02b"
> >  SRC_URI[sha256sum] = "9ea9efdd9fe13661ad251e3a2860c1c93045adcfaa6659c3e86d9748ecda3b6e"
> > --
> > 2.21.0
> >
> > --
> > _______________________________________________
> > Openembedded-core mailing list
> > Openembedded-core at lists.openembedded.org
> > http://lists.openembedded.org/mailman/listinfo/openembedded-core


More information about the Openembedded-core mailing list