numam-dpdk/examples
Olivier Matz feb9f680cd mk: optimize directory dependencies
Before this patch, the management of dependencies between directories
had several issues:

- the generation of .depdirs, done at configuration is slow: it can take
  more than one minute on some slow targets (usually ~10s on a standard
  PC without -j).

- for instance, it is possible to express a dependency like:
  - app/foo depends on lib/librte_foo
  - and lib/librte_foo depends on app/bar
  But this won't work because the directories are traversed with a
  depth-first algorithm, so we have to choose between doing 'app' before
  or after 'lib'.

- the script depdirs-rule.sh is too complex.

- we cannot use "make -d" for debug, because the output of make is used for
  the generation of .depdirs.

This patch moves the DEPDIRS-* variables in the upper Makefile, making
the dependencies much easier to calculate. A DEPDIRS variable is still
used to process library dependencies in LDLIBS.

After this commit, "make config" is almost immediate.

Signed-off-by: Olivier Matz <olivier.matz@6wind.com>
Tested-by: Robin Jarry <robin.jarry@6wind.com>
Tested-by: Jerin Jacob <jerin.jacob@caviumnetworks.com>
2017-03-27 23:28:43 +02:00
..
bond mk: move PMD libraries linking to applications 2017-02-10 11:03:27 +01:00
cmdline examples: fix whitespace 2015-06-12 11:10:10 +02:00
distributor examples: fix optind reset 2017-03-10 15:38:47 +01:00
dpdk_qat examples: fix optind reset 2017-03-10 15:38:47 +01:00
ethtool mk: optimize directory dependencies 2017-03-27 23:28:43 +02:00
exception_path remove unused ring includes 2016-09-16 10:16:02 +02:00
helloworld tailq: remove unneeded inclusions 2015-03-10 11:47:46 +01:00
ip_fragmentation lpm6: extend next hop field 2017-03-15 18:49:41 +01:00
ip_pipeline mbuf: use pktmbuf helper to create the pool 2017-03-15 13:48:02 +01:00
ip_reassembly lpm6: extend next hop field 2017-03-15 18:49:41 +01:00
ipsec-secgw lpm6: extend next hop field 2017-03-15 18:49:41 +01:00
ipv4_multicast examples: fix optind reset 2017-03-10 15:38:47 +01:00
kni remove unused ring includes 2016-09-16 10:16:02 +02:00
l2fwd examples: fix optind reset 2017-03-10 15:38:47 +01:00
l2fwd-cat examples: fix optind reset 2017-03-10 15:38:47 +01:00
l2fwd-crypto examples: fix optind reset 2017-03-10 15:38:47 +01:00
l2fwd-jobstats examples: fix optind reset 2017-03-10 15:38:47 +01:00
l2fwd-keepalive examples: fix optind reset 2017-03-10 15:38:47 +01:00
l3fwd lpm6: extend next hop field 2017-03-15 18:49:41 +01:00
l3fwd-acl examples: fix optind reset 2017-03-10 15:38:47 +01:00
l3fwd-power examples: fix optind reset 2017-03-10 15:38:47 +01:00
l3fwd-vf examples: fix optind reset 2017-03-10 15:38:47 +01:00
link_status_interrupt examples: fix optind reset 2017-03-10 15:38:47 +01:00
load_balancer examples: fix optind reset 2017-03-10 15:38:47 +01:00
multi_process mbuf: use pktmbuf helper to create the pool 2017-03-15 13:48:02 +01:00
netmap_compat examples/netmap_compat: fix infinite loop 2016-05-16 21:01:51 +02:00
packet_ordering examples: fix optind reset 2017-03-10 15:38:47 +01:00
performance-thread lpm6: extend next hop field 2017-03-15 18:49:41 +01:00
ptpclient examples: fix optind reset 2017-03-10 15:38:47 +01:00
qos_meter examples: fix optind reset 2017-03-10 15:38:47 +01:00
qos_sched examples/qos_sched: fix dequeue from ring 2016-10-13 14:37:48 +02:00
quota_watermark examples/quota_watermark: fix requirement for 2M pages 2017-03-08 16:06:36 +01:00
rxtx_callbacks apps: fix default mbuf size 2015-05-11 15:51:14 +02:00
server_node_efd examples/server_node_efd: renamed from flow_distributor 2017-01-30 17:26:11 +01:00
skeleton apps: fix default mbuf size 2015-05-11 15:51:14 +02:00
tep_termination mbuf: use pktmbuf helper to create the pool 2017-03-15 13:48:02 +01:00
timer tailq: remove unneeded inclusions 2015-03-10 11:47:46 +01:00
vhost examples/vhost: fix lcore initialization 2017-01-17 09:20:18 +01:00
vhost_xen log: do not drop debug logs at compile time 2016-12-01 18:09:13 +01:00
vm_power_manager examples/vm_power_manager: remove dependency on internal header 2016-07-11 17:23:32 +02:00
vmdq remove unused ring includes 2016-09-16 10:16:02 +02:00
vmdq_dcb remove unused ring includes 2016-09-16 10:16:02 +02:00
Makefile examples/server_node_efd: renamed from flow_distributor 2017-01-30 17:26:11 +01:00