Hey,
Please see below.
On 03.10.2017 10:12, Savolainen, Petri (Nokia - FI/Espoo) wrote:
So, we should be able to deliver ODP as a set of HW independent and
HW specific packages (libraries). For example, minimal install would
include only odp, odp-linux and odp-test-suite, but when on arm64
(and especially when on ThunderX) odp-thunderx would be installed
There are architecture dependencies (i.e. i386, amd64, arm64 etc), but
there are no specific platform dependencies (i.e. Cavium ThunderX,
Cavium Octeon, NXP etc).
In other words, there is no such mechanism in packaging to create a
package odp, which will automatically install package odp-thunderx only
on Cavium ThunderX platforms.
Package:
* odp * depends on: odp-linux
* odp-linux * depends on: odp
> * odp-thunderx [arm64] * depends on: odp
So installing odp-thunderx we will end up with odp, odp-linux and
odp-thunderx, so still we have switch runtime between odp-linux and
odp-thunderx...
All other projects you are mentioning (kernel, DPDK, Xorg) use
architecture dependency (different packages for different architectures)
combined with run time configuration/probing. A kernel driver might be
installed, but it will be unused until configured/probed.
To support multiple platforms, runtime configuration/probing is
inevitable. The real question is who does this probing: ODP itself or
each application independently. To avoid code duplication, ODP looks
like a better choice...
Andriy