# -*- Makefile -*- ACLOCAL_AMFLAGS = -I m4 SUBDIRS = \ . \ man \ python \ tests if ENABLE_CLI SUBDIRS += src endif lib_LTLIBRARIES = CLEANFILES = EXTRA_DIST = pkgconfig_DATA = \ libnl-3.0.pc \ libnl-route-3.0.pc \ libnl-genl-3.0.pc \ libnl-nf-3.0.pc \ libnl-xfrm-3.0.pc \ libnl-idiag-3.0.pc ############################################################################### libnlincludedir = $(includedir)/libnl@MAJ_VERSION@ libnlinclude_netlinkdir = $(libnlincludedir)/netlink libnlinclude_netlink_HEADERS = \ include/netlink/addr.h \ include/netlink/attr.h \ include/netlink/cache-api.h \ include/netlink/cache.h \ include/netlink/data.h \ include/netlink/errno.h \ include/netlink/handlers.h \ include/netlink/hash.h \ include/netlink/hashtable.h \ include/netlink/list.h \ include/netlink/msg.h \ include/netlink/netlink-compat.h \ include/netlink/netlink-kernel.h \ include/netlink/netlink.h \ include/netlink/object-api.h \ include/netlink/object.h \ include/netlink/socket.h \ include/netlink/types.h \ include/netlink/utils.h \ include/netlink/version.h libnlinclude_netlink_fib_lookupdir = $(libnlincludedir)/netlink/fib_lookup libnlinclude_netlink_fib_lookup_HEADERS = \ include/netlink/fib_lookup/lookup.h \ include/netlink/fib_lookup/request.h libnlinclude_netlink_genldir = $(libnlincludedir)/netlink/genl libnlinclude_netlink_genl_HEADERS = \ include/netlink/genl/ctrl.h \ include/netlink/genl/family.h \ include/netlink/genl/genl.h \ include/netlink/genl/mngt.h libnlinclude_netlink_idiagdir = $(libnlincludedir)/netlink/idiag libnlinclude_netlink_idiag_HEADERS = \ include/netlink/idiag/idiagnl.h \ include/netlink/idiag/meminfo.h \ include/netlink/idiag/msg.h \ include/netlink/idiag/req.h \ include/netlink/idiag/vegasinfo.h libnlinclude_netlink_netfilterdir = $(libnlincludedir)/netlink/netfilter libnlinclude_netlink_netfilter_HEADERS = \ include/netlink/netfilter/ct.h \ include/netlink/netfilter/exp.h \ include/netlink/netfilter/log.h \ include/netlink/netfilter/log_msg.h \ include/netlink/netfilter/netfilter.h \ include/netlink/netfilter/nfnl.h \ include/netlink/netfilter/queue.h \ include/netlink/netfilter/queue_msg.h libnlinclude_netlink_routedir = $(libnlincludedir)/netlink/route libnlinclude_netlink_route_HEADERS = \ include/netlink/route/action.h \ include/netlink/route/addr.h \ include/netlink/route/class.h \ include/netlink/route/classifier.h \ include/netlink/route/link.h \ include/netlink/route/neighbour.h \ include/netlink/route/neightbl.h \ include/netlink/route/nexthop.h \ include/netlink/route/pktloc.h \ include/netlink/route/qdisc.h \ include/netlink/route/route.h \ include/netlink/route/rtnl.h \ include/netlink/route/rule.h \ include/netlink/route/tc-api.h \ include/netlink/route/tc.h libnlinclude_netlink_route_actdir = $(libnlincludedir)/netlink/route/act libnlinclude_netlink_route_act_HEADERS = \ include/netlink/route/act/gact.h \ include/netlink/route/act/mirred.h \ include/netlink/route/act/skbedit.h libnlinclude_netlink_route_clsdir = $(libnlincludedir)/netlink/route/cls libnlinclude_netlink_route_cls_HEADERS = \ include/netlink/route/cls/basic.h \ include/netlink/route/cls/cgroup.h \ include/netlink/route/cls/ematch.h \ include/netlink/route/cls/fw.h \ include/netlink/route/cls/police.h \ include/netlink/route/cls/u32.h libnlinclude_netlink_route_cls_ematchdir = $(libnlincludedir)/netlink/route/cls/ematch libnlinclude_netlink_route_cls_ematch_HEADERS = \ include/netlink/route/cls/ematch/cmp.h \ include/netlink/route/cls/ematch/meta.h \ include/netlink/route/cls/ematch/nbyte.h \ include/netlink/route/cls/ematch/text.h libnlinclude_netlink_route_linkdir = $(libnlincludedir)/netlink/route/link libnlinclude_netlink_route_link_HEADERS = \ include/netlink/route/link/api.h \ include/netlink/route/link/bonding.h \ include/netlink/route/link/bridge.h \ include/netlink/route/link/can.h \ include/netlink/route/link/inet.h \ include/netlink/route/link/inet6.h \ include/netlink/route/link/info-api.h \ include/netlink/route/link/ip6tnl.h \ include/netlink/route/link/ipgre.h \ include/netlink/route/link/ipip.h \ include/netlink/route/link/ipvlan.h \ include/netlink/route/link/ipvti.h \ include/netlink/route/link/macsec.h \ include/netlink/route/link/macvlan.h \ include/netlink/route/link/macvtap.h \ include/netlink/route/link/ppp.h \ include/netlink/route/link/sit.h \ include/netlink/route/link/sriov.h \ include/netlink/route/link/veth.h \ include/netlink/route/link/vlan.h \ include/netlink/route/link/vrf.h \ include/netlink/route/link/vxlan.h libnlinclude_netlink_route_qdiscdir = $(libnlincludedir)/netlink/route/qdisc libnlinclude_netlink_route_qdisc_HEADERS = \ include/netlink/route/qdisc/cbq.h \ include/netlink/route/qdisc/dsmark.h \ include/netlink/route/qdisc/fifo.h \ include/netlink/route/qdisc/fq_codel.h \ include/netlink/route/qdisc/hfsc.h \ include/netlink/route/qdisc/htb.h \ include/netlink/route/qdisc/netem.h \ include/netlink/route/qdisc/plug.h \ include/netlink/route/qdisc/prio.h \ include/netlink/route/qdisc/red.h \ include/netlink/route/qdisc/sfq.h \ include/netlink/route/qdisc/tbf.h libnlinclude_netlink_xfrmdir = $(libnlincludedir)/netlink/xfrm libnlinclude_netlink_xfrm_HEADERS = \ include/netlink/xfrm/ae.h \ include/netlink/xfrm/lifetime.h \ include/netlink/xfrm/sa.h \ include/netlink/xfrm/selector.h \ include/netlink/xfrm/sp.h \ include/netlink/xfrm/template.h if ENABLE_CLI libnlinclude_netlink_clidir = $(libnlincludedir)/netlink/cli libnlinclude_netlink_cli_HEADERS = \ include/netlink/cli/addr.h \ include/netlink/cli/class.h \ include/netlink/cli/cls.h \ include/netlink/cli/ct.h \ include/netlink/cli/exp.h \ include/netlink/cli/link.h \ include/netlink/cli/neigh.h \ include/netlink/cli/qdisc.h \ include/netlink/cli/route.h \ include/netlink/cli/rule.h \ include/netlink/cli/tc.h \ include/netlink/cli/utils.h endif noinst_HEADERS = \ include/linux-private/linux/can/netlink.h \ include/linux-private/linux/fib_rules.h \ include/linux-private/linux/gen_stats.h \ include/linux-private/linux/genetlink.h \ include/linux-private/linux/if.h \ include/linux-private/linux/if_addr.h \ include/linux-private/linux/if_arp.h \ include/linux-private/linux/if_bridge.h \ include/linux-private/linux/if_ether.h \ include/linux-private/linux/if_link.h \ include/linux-private/linux/if_macsec.h \ include/linux-private/linux/if_tunnel.h \ include/linux-private/linux/if_vlan.h \ include/linux-private/linux/in.h \ include/linux-private/linux/in6.h \ include/linux-private/linux/inet_diag.h \ include/linux-private/linux/ip.h \ include/linux-private/linux/ip_mp_alg.h \ include/linux-private/linux/ipv6.h \ include/linux-private/linux/libc-compat.h \ include/linux-private/linux/neighbour.h \ include/linux-private/linux/netfilter.h \ include/linux-private/linux/netfilter/nf_conntrack_common.h \ include/linux-private/linux/netfilter/nfnetlink.h \ include/linux-private/linux/netfilter/nfnetlink_compat.h \ include/linux-private/linux/netfilter/nfnetlink_conntrack.h \ include/linux-private/linux/netfilter/nfnetlink_log.h \ include/linux-private/linux/netfilter/nfnetlink_queue.h \ include/linux-private/linux/netlink.h \ include/linux-private/linux/pkt_cls.h \ include/linux-private/linux/pkt_sched.h \ include/linux-private/linux/rtnetlink.h \ include/linux-private/linux/snmp.h \ include/linux-private/linux/sock_diag.h \ include/linux-private/linux/socket.h \ include/linux-private/linux/tc_act/tc_gact.h \ include/linux-private/linux/tc_act/tc_mirred.h \ include/linux-private/linux/tc_act/tc_skbedit.h \ include/linux-private/linux/tc_ematch/tc_em_meta.h \ include/linux-private/linux/veth.h \ include/linux-private/linux/xfrm.h \ include/netlink-private/cache-api.h \ include/netlink-private/genl.h \ include/netlink-private/netlink.h \ include/netlink-private/object-api.h \ include/netlink-private/route/link/api.h \ include/netlink-private/route/link/sriov.h \ include/netlink-private/route/tc-api.h \ include/netlink-private/socket.h \ include/netlink-private/tc.h \ include/netlink-private/types.h \ include/netlink-private/utils.h ############################################################################### # Hack to avoid using ylwrap. It does not function correctly in combination # with --header-file= lib/route/pktloc_grammar.h: lib/route/pktloc_grammar.c @true lib/route/pktloc_grammar.c: lib/route/pktloc_grammar.l $(AM_V_GEN) $(MKDIR_P) route; $(FLEX) --header-file=lib/route/pktloc_grammar.h $(LFLAGS) -o $@ $^ lib/route/pktloc_syntax.h: lib/route/pktloc_syntax.c @true lib/route/pktloc_syntax.c: lib/route/pktloc_syntax.y $(AM_V_GEN) $(MKDIR_P) route; $(YACC) -d $(YFLAGS) -o $@ $^ lib/route/cls/ematch_grammar.h: lib/route/cls/ematch_grammar.c @true lib/route/cls/ematch_grammar.c: lib/route/cls/ematch_grammar.l $(AM_V_GEN) $(MKDIR_P) route/cls; $(FLEX) --header-file=lib/route/cls/ematch_grammar.h $(LFLAGS) -o $@ $^ lib/route/cls/ematch_syntax.h: lib/route/cls/ematch_syntax.c @true lib/route/cls/ematch_syntax.c: lib/route/cls/ematch_syntax.y $(AM_V_GEN) $(MKDIR_P) route/cls; $(YACC) -d $(YFLAGS) -o $@ $^ grammar_files_sources = \ lib/route/pktloc_grammar.c \ lib/route/pktloc_syntax.c \ lib/route/cls/ematch_grammar.c \ lib/route/cls/ematch_syntax.c grammar_files_headers = $(grammar_files_sources:%.c=%.h) CLEANFILES += \ $(grammar_files_sources) \ $(grammar_files_headers) EXTRA_DIST += \ lib/route/pktloc_grammar.l \ lib/route/pktloc_syntax.y \ lib/route/cls/ematch_grammar.l \ lib/route/cls/ematch_syntax.y ############################################################################### lib_cppflags = \ -Wall \ -Wmissing-prototypes \ -D_GNU_SOURCE \ -DSYSCONFDIR=\"$(sysconfdir)/libnl\" \ -I$(srcdir)/include/linux-private \ -I$(srcdir)/include \ -I$(builddir)/include \ -I$(builddir)/lib/route \ -I$(builddir)/lib/route/cls lib_LTLIBRARIES += lib/libnl-3.la lib_libnl_3_la_SOURCES = \ lib/addr.c \ lib/attr.c \ lib/cache.c \ lib/cache_mngr.c \ lib/cache_mngt.c \ lib/data.c \ lib/error.c \ lib/handlers.c \ lib/msg.c \ lib/nl.c \ lib/object.c \ lib/socket.c \ lib/utils.c \ lib/version.c \ lib/hash.c \ lib/hashtable.c EXTRA_lib_libnl_3_la_DEPENDENCIES = \ libnl-3.sym lib_libnl_3_la_CPPFLAGS = \ $(lib_cppflags) lib_libnl_3_la_LDFLAGS = \ -version-info $(LT_CURRENT):$(LT_REVISION):$(LT_AGE) \ -Wl,--version-script=$(srcdir)/libnl-3.sym lib_LTLIBRARIES += lib/libnl-route-3.la lib_libnl_route_3_la_SOURCES = \ lib/fib_lookup/lookup.c \ lib/fib_lookup/request.c \ lib/route/act.c \ lib/route/act/gact.c \ lib/route/act/mirred.c \ lib/route/act/skbedit.c \ lib/route/addr.c \ lib/route/class.c \ lib/route/classid.c \ lib/route/cls/basic.c \ lib/route/cls.c \ lib/route/cls/cgroup.c \ lib/route/cls/ematch.c \ lib/route/cls/ematch/cmp.c \ lib/route/cls/ematch/container.c \ lib/route/cls/ematch/meta.c \ lib/route/cls/ematch/nbyte.c \ lib/route/cls/ematch/text.c \ lib/route/cls/fw.c \ lib/route/cls/police.c \ lib/route/cls/u32.c \ lib/route/link/api.c \ lib/route/link/bonding.c \ lib/route/link/bridge.c \ lib/route/link.c \ lib/route/link/can.c \ lib/route/link/dummy.c \ lib/route/link/ifb.c \ lib/route/link/inet6.c \ lib/route/link/inet.c \ lib/route/link/ip6tnl.c \ lib/route/link/ipgre.c \ lib/route/link/ipip.c \ lib/route/link/ipvlan.c \ lib/route/link/ipvti.c \ lib/route/link/macsec.c \ lib/route/link/macvlan.c \ lib/route/link/ppp.c \ lib/route/link/sit.c \ lib/route/link/sriov.c \ lib/route/link/veth.c \ lib/route/link/vlan.c \ lib/route/link/vrf.c \ lib/route/link/vxlan.c \ lib/route/neigh.c \ lib/route/neightbl.c \ lib/route/nexthop.c \ lib/route/pktloc.c \ lib/route/qdisc/blackhole.c \ lib/route/qdisc.c \ lib/route/qdisc/cbq.c \ lib/route/qdisc/dsmark.c \ lib/route/qdisc/fifo.c \ lib/route/qdisc/fq_codel.c \ lib/route/qdisc/hfsc.c \ lib/route/qdisc/htb.c \ lib/route/qdisc/ingress.c \ lib/route/qdisc/netem.c \ lib/route/qdisc/plug.c \ lib/route/qdisc/prio.c \ lib/route/qdisc/red.c \ lib/route/qdisc/sfq.c \ lib/route/qdisc/tbf.c \ lib/route/route.c \ lib/route/route_obj.c \ lib/route/route_utils.c \ lib/route/rtnl.c \ lib/route/rule.c \ lib/route/tc.c \ $(NULL) nodist_lib_libnl_route_3_la_SOURCES = \ $(grammar_files_sources) EXTRA_lib_libnl_route_3_la_DEPENDENCIES = \ libnl-route-3.sym lib_libnl_route_3_la_CPPFLAGS = \ $(lib_cppflags) lib_libnl_route_3_la_LDFLAGS = \ -version-info $(LT_CURRENT):$(LT_REVISION):$(LT_AGE) \ -Wl,--version-script=$(srcdir)/libnl-route-3.sym lib_libnl_route_3_la_LIBADD = \ lib/libnl-3.la $(lib_libnl_route_3_la_OBJECTS): $(grammar_files_headers) lib_LTLIBRARIES += lib/libnl-idiag-3.la lib_libnl_idiag_3_la_SOURCES = \ lib/idiag/idiag_meminfo_obj.c \ lib/idiag/idiag_vegasinfo_obj.c \ lib/idiag/idiag_msg_obj.c \ lib/idiag/idiag_req_obj.c \ lib/idiag/idiag.c EXTRA_lib_libnl_idiag_3_la_DEPENDENCIES = \ libnl-idiag-3.sym lib_libnl_idiag_3_la_CPPFLAGS = \ $(lib_cppflags) lib_libnl_idiag_3_la_LDFLAGS = \ -version-info $(LT_CURRENT):$(LT_REVISION):$(LT_AGE) \ -Wl,--version-script=$(srcdir)/libnl-idiag-3.sym lib_libnl_idiag_3_la_LIBADD = \ lib/libnl-3.la lib_LTLIBRARIES += lib/libnl-genl-3.la lib_libnl_genl_3_la_SOURCES = \ lib/genl/ctrl.c \ lib/genl/family.c \ lib/genl/genl.c \ lib/genl/mngt.c EXTRA_lib_libnl_genl_3_la_DEPENDENCIES = \ libnl-genl-3.sym lib_libnl_genl_3_la_CPPFLAGS = \ $(lib_cppflags) lib_libnl_genl_3_la_LDFLAGS = \ -version-info $(LT_CURRENT):$(LT_REVISION):$(LT_AGE) \ -Wl,--version-script=$(srcdir)/libnl-genl-3.sym lib_libnl_genl_3_la_LIBADD = \ lib/libnl-3.la lib_LTLIBRARIES += lib/libnl-nf-3.la lib_libnl_nf_3_la_SOURCES = \ lib/netfilter/ct.c \ lib/netfilter/ct_obj.c \ lib/netfilter/log.c \ lib/netfilter/log_msg.c \ lib/netfilter/log_msg_obj.c \ lib/netfilter/log_obj.c \ lib/netfilter/netfilter.c \ lib/netfilter/nfnl.c \ lib/netfilter/queue.c \ lib/netfilter/queue_msg.c \ lib/netfilter/queue_msg_obj.c \ lib/netfilter/queue_obj.c \ lib/netfilter/exp.c \ lib/netfilter/exp_obj.c lib_libnl_nf_3_la_CPPFLAGS = \ $(lib_cppflags) EXTRA_lib_libnl_nf_3_la_DEPENDENCIES = \ libnl-nf-3.sym lib_libnl_nf_3_la_LDFLAGS = \ -version-info $(LT_CURRENT):$(LT_REVISION):$(LT_AGE) \ -Wl,--version-script=$(srcdir)/libnl-nf-3.sym lib_libnl_nf_3_la_LIBADD = \ lib/libnl-3.la \ lib/libnl-route-3.la lib_LTLIBRARIES += lib/libnl-xfrm-3.la lib_libnl_xfrm_3_la_SOURCES = \ lib/xfrm/ae.c \ lib/xfrm/lifetime.c \ lib/xfrm/sa.c \ lib/xfrm/selector.c \ lib/xfrm/sp.c \ lib/xfrm/template.c lib_libnl_xfrm_3_la_CPPFLAGS = \ $(lib_cppflags) lib_libnl_xfrm_3_la_LDFLAGS = \ -version-info $(LT_CURRENT):$(LT_REVISION):$(LT_AGE) \ -Wl,--version-script=$(srcdir)/libnl-xfrm-3.sym EXTRA_lib_libnl_xfrm_3_la_DEPENDENCIES = \ libnl-xfrm-3.sym lib_libnl_xfrm_3_la_LIBADD = \ lib/libnl-3.la if ENABLE_CLI lib_cli_ldflags = \ -module -avoid-version nobase_pkglib_LTLIBRARIES = \ lib/cli/cls/basic.la \ lib/cli/cls/cgroup.la \ lib/cli/qdisc/bfifo.la \ lib/cli/qdisc/blackhole.la \ lib/cli/qdisc/fq_codel.la \ lib/cli/qdisc/hfsc.la \ lib/cli/qdisc/htb.la \ lib/cli/qdisc/ingress.la \ lib/cli/qdisc/pfifo.la \ lib/cli/qdisc/plug.la lib_cli_cls_basic_la_CPPFLAGS = $(lib_cppflags) lib_cli_cls_basic_la_LDFLAGS = $(lib_cli_ldflags) lib_cli_cls_cgroup_la_CPPFLAGS = $(lib_cppflags) lib_cli_cls_cgroup_la_LDFLAGS = $(lib_cli_ldflags) lib_cli_qdisc_bfifo_la_CPPFLAGS = $(lib_cppflags) lib_cli_qdisc_bfifo_la_LDFLAGS = $(lib_cli_ldflags) lib_cli_qdisc_blackhole_la_CPPFLAGS = $(lib_cppflags) lib_cli_qdisc_blackhole_la_LDFLAGS = $(lib_cli_ldflags) lib_cli_qdisc_fq_codel_la_CPPFLAGS = $(lib_cppflags) lib_cli_qdisc_fq_codel_la_LDFLAGS = $(lib_cli_ldflags) lib_cli_qdisc_hfsc_la_CPPFLAGS = $(lib_cppflags) lib_cli_qdisc_hfsc_la_LDFLAGS = $(lib_cli_ldflags) lib_cli_qdisc_htb_la_CPPFLAGS = $(lib_cppflags) lib_cli_qdisc_htb_la_LDFLAGS = $(lib_cli_ldflags) lib_cli_qdisc_ingress_la_CPPFLAGS = $(lib_cppflags) lib_cli_qdisc_ingress_la_LDFLAGS = $(lib_cli_ldflags) lib_cli_qdisc_pfifo_la_CPPFLAGS = $(lib_cppflags) lib_cli_qdisc_pfifo_la_LDFLAGS = $(lib_cli_ldflags) lib_cli_qdisc_plug_la_CPPFLAGS = $(lib_cppflags) lib_cli_qdisc_plug_la_LDFLAGS = $(lib_cli_ldflags) endif ############################################################################### if ENABLE_CLI pkgconfig_DATA += libnl-cli-3.0.pc endif pkgsysconfdir = $(sysconfdir)/libnl pkgsysconf_DATA = \ etc/pktloc \ etc/classid EXTRA_DIST += \ $(pkgsysconf_DATA) \ libnl-3.sym \ libnl-cli-3.sym \ libnl-genl-3.sym \ libnl-idiag-3.sym \ libnl-nf-3.sym \ libnl-route-3.sym \ libnl-xfrm-3.sym