Dave Wallace wrote:

IMO, "in-tree" .vs. "out-of-tree" really boils down to decoupling the app's
"Makefile.am" the rest of the vpp autotools structure/configuration.  For
example, I ran into the same issue with .../vppsb/vcl-ldpreload/src/Makefile.am
(which is literally 'out-of-tree') in the case where "VPP_DIR" is
specified.  However, the vcl-ldpreload build would work the same if it was
moved somewhere under vpp without integrating it into
.../vpp/src/Makefile.am -- thus it would equally be "out-of-tree" even
though it was stored in the vpp repo.



​I would modify this statement just a bit: It is really configure.ac rather
than Makefile.am that defines the package boundary. Looking at the
AC_CONFIG_FILES statement of the configure.ac, we see that the VPP package
has, underneath directory src,  Makefile.am, plugins/Makefile.am,
vpp-api/python/Makefile.am, and vpp-api/java/Makefile.am. Well, what really
matters is that there are no AC_CONFIG_SUBDIRS in <TOP>/src/configure.ac,
so that everything under <TOP>/src is part of the VPP package. (Recall that
Makefile.am includes a lot of .am fragments to address many of the
subdirectories.)

The conclusion that extras/apps/test is out of tree remains valid. The only
point I am making is that it is configure.ac rather than Makefile.am that
demarcates the VPP package. And that you first build and install (to a
first order approximation) the stuff under <TOP>/src, and then your out of
tree test program should build against the installed VPP stuff (to a rough
approximation.)

Burt
_______________________________________________
vpp-dev mailing list
vpp-dev@lists.fd.io
https://lists.fd.io/mailman/listinfo/vpp-dev

Reply via email to