-
Philippe Gerum authored
Instead of matching whatever ABI we might be compiled against like previously, define the kernel ABI we need as a prerequisite (EVL_KABI_PREREQ), checking for sanity at build time and runtime. This prerequisite is matched against the range of ABI revisions the kernel supports (from EVL_ABI_BASE to EVL_ABI_CURRENT). In the simplest case, the kernel implements a single ABI with no backward compatibility mechanism (EVL_ABI_BASE == EVL_ABI_CURRENT). This addresses two issues: - the fact that libevl might build against a given set of uapi/ files does not actually mean that the corresponding kernel ABI found there is fully compatible with what libevl expects. Specifying a compatible ABI prereq explicitly addresses this problem. - we can obtain services from EVL cores supporting multiple ABI revisions (i.e. providing backward compat feat). Signed-off-by: Philippe Gerum <rpm@xenomai.org>
1565744d