On Thu, Nov 05, 2020 at 07:54:16AM -0500, Chuck Anderson wrote:
> On Thu, Nov 05, 2020 at 12:03:43PM +0000, Daniel P. Berrangé wrote:
> > Given that dpdk is not providing any build process for going from
> > tap_bpf_program.c to tap_bpf_insns.h, it looks to me like the upstream
> > project effectively considers  "tap_bpf_insns.h" to be their preferred
> > source form, and  tap_bpf_program.c as just a reference for its
> > original creation.
> > 
> > IOW, to me it looks like this embedded BPF program shouldn't be
> > considered a binary from Fedora POV and can be used as is.
> 
> One example of a package doing something incorreclty doesn't mean it
> is okay to continue that practice.  I'd argue thet dpdk needs to be
> fixed to provide the original source code and build scripts for the
> BPF program.

The point is that this doesn't feel much different from many other
scenarios that applications often do wrt code generation. Any non
trivial application will have source files whose contents are
auto-generated, and the used as is, instead of building from source
every time.

Every single autotools based application is shipping a pre-generated
configure script, whose content may or may not match what is expressed
in the configure.ac script. Fedora doesn't require "configure" to be
re-generated from source every time, nor validate that the "configure.ac"
actually is the corresponding source.

There are certainly other cases where programs ship sources which were
originally generated from some other data file, but don't even include
the rules to reproduce that.

QEMU ships various keymap data files which are auto-generated from data
provided by X11, but none of these are built "from source", because the
generated data files are considered the preferred source form. 

Libvirt ships various test cases where the source is auto-generated from
data extracted from QEMU. These generated files are used as is, and not
re-created by QEMU during Fedora builds, because Fedora doesn't have all
30+ historical versions of QEMU available in the build root.

The embedded static arrays in source containing BPF instruction are not
conceptually that different from other cases where we build using generated
sources and don't re-generated during Fedora builds.

Regards,
Daniel
-- 
|: https://berrange.com      -o-    https://www.flickr.com/photos/dberrange :|
|: https://libvirt.org         -o-            https://fstop138.berrange.com :|
|: https://entangle-photo.org    -o-    https://www.instagram.com/dberrange :|
_______________________________________________
devel mailing list -- devel@lists.fedoraproject.org
To unsubscribe send an email to devel-le...@lists.fedoraproject.org
Fedora Code of Conduct: 
https://docs.fedoraproject.org/en-US/project/code-of-conduct/
List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines
List Archives: 
https://lists.fedoraproject.org/archives/list/devel@lists.fedoraproject.org

Reply via email to