include staticd/subdir.am
include bfdd/subdir.am
+include vtysh/subdir.am
+
SUBDIRS = . \
- @VTYSH@ \
tests
DIST_SUBDIRS = . \
- vtysh tests \
+ tests \
# end
if PKGSRC
snapcraft/helpers \
snapcraft/snap \
\
- vtysh/Makefile.am \
- vtysh/Makefile.in \
- \
doc/Makefile \
doc/developer/Makefile \
doc/manpages/Makefile \
AM_CONDITIONAL([ENABLE_BGP_VNC], [test x${enable_bgp_vnc} != xno])
AC_SUBST(SOLARIS)
-AC_SUBST(VTYSH)
AC_SUBST(CURSES)
AC_CHECK_LIB(crypt, crypt, [],
[AC_CHECK_LIB(crypto, DES_crypt)])
AC_CONFIG_FILES([Makefile],[sed -e 's/^#AUTODERP# //' -i Makefile])
AC_CONFIG_FILES([
- vtysh/Makefile
tests/Makefile
redhat/frr.spec
solaris/Makefile
-Makefile
+!Makefile
Makefile.in
*.o
vtysh
--- /dev/null
+all: ALWAYS
+ @$(MAKE) -s -C .. vtysh/vtysh
+%: ALWAYS
+ @$(MAKE) -s -C .. vtysh/$@
+
+Makefile:
+ #nothing
+ALWAYS:
+.PHONY: ALWAYS makefiles
+.SUFFIXES:
+++ /dev/null
-## Process this file with Automake to create Makefile.in
-
-include ../common.am
-
-AM_CPPFLAGS += -I$(top_srcdir) -I$(top_srcdir)/lib -I$(top_builddir)/lib \
- $(BGP_VNC_RFAPI_INCDIR) $(BGP_VNC_RFP_INCDIR)
-DEFS = @DEFS@ -DSYSCONFDIR=\"$(sysconfdir)/\"
-
-LIBS = @LIBS@ @CURSES@ @LIBPAM@
-
-bin_PROGRAMS = vtysh
-
-vtysh_SOURCES = vtysh_main.c vtysh.c vtysh_user.c vtysh_config.c
-nodist_vtysh_SOURCES = vtysh_cmd.c
-CLEANFILES = vtysh_cmd.c
-noinst_HEADERS = vtysh.h vtysh_user.h
-vtysh_LDADD = ../lib/libfrr.la @LIBCAP@ @LIBREADLINE@
-
-examplesdir = $(exampledir)
-dist_examples_DATA = vtysh.conf.sample
-
-EXTRA_DIST = extract.pl
-
-vtysh_scan =
-
-if PIMD
-vtysh_scan += $(top_srcdir)/pimd/pim_cmd.c
-endif
-
-if BGPD
-vtysh_scan += $(top_srcdir)/bgpd/bgp_bfd.c
-vtysh_scan += $(top_srcdir)/bgpd/bgp_debug.c
-vtysh_scan += $(top_srcdir)/bgpd/bgp_dump.c
-vtysh_scan += $(top_srcdir)/bgpd/bgp_evpn_vty.c
-vtysh_scan += $(top_srcdir)/bgpd/bgp_filter.c
-vtysh_scan += $(top_srcdir)/bgpd/bgp_mplsvpn.c
-vtysh_scan += $(top_srcdir)/bgpd/bgp_nexthop.c
-vtysh_scan += $(top_srcdir)/bgpd/bgp_route.c
-vtysh_scan += $(top_srcdir)/bgpd/bgp_routemap.c
-vtysh_scan += $(top_srcdir)/bgpd/bgp_vty.c
-vtysh_scan += $(top_srcdir)/bgpd/bgp_flowspec_vty.c
-if ENABLE_BGP_VNC
-vtysh_scan += $(top_srcdir)/bgpd/rfapi/bgp_rfapi_cfg.c
-vtysh_scan += $(top_srcdir)/bgpd/rfapi/rfapi.c
-vtysh_scan += $(top_srcdir)/bgpd/rfapi/rfapi_vty.c
-vtysh_scan += $(top_srcdir)/bgpd/rfapi/vnc_debug.c
-endif
-endif
-
-if RPKI
-vtysh_scan += $(top_srcdir)/bgpd/bgp_rpki.c
-endif
-
-if ISISD
-vtysh_scan += $(top_srcdir)/isisd/isis_redist.c
-vtysh_scan += $(top_srcdir)/isisd/isis_spf.c
-vtysh_scan += $(top_srcdir)/isisd/isis_te.c
-vtysh_scan += $(top_srcdir)/isisd/isis_vty_common.c
-vtysh_scan += $(top_srcdir)/isisd/isis_vty_fabricd.c
-vtysh_scan += $(top_srcdir)/isisd/isis_vty_isisd.c
-vtysh_scan += $(top_srcdir)/isisd/isisd.c
-endif
-
-if OSPFD
-vtysh_scan += $(top_srcdir)/ospfd/ospf_bfd.c
-vtysh_scan += $(top_srcdir)/ospfd/ospf_dump.c
-vtysh_scan += $(top_srcdir)/ospfd/ospf_opaque.c
-vtysh_scan += $(top_srcdir)/ospfd/ospf_ri.c
-vtysh_scan += $(top_srcdir)/ospfd/ospf_routemap.c
-vtysh_scan += $(top_srcdir)/ospfd/ospf_te.c
-vtysh_scan += $(top_srcdir)/ospfd/ospf_sr.c
-vtysh_scan += $(top_srcdir)/ospfd/ospf_vty.c
-endif
-
-if OSPF6D
-vtysh_scan += $(top_srcdir)/ospf6d/ospf6_abr.c
-vtysh_scan += $(top_srcdir)/ospf6d/ospf6_asbr.c
-vtysh_scan += $(top_srcdir)/ospf6d/ospf6_area.c
-vtysh_scan += $(top_srcdir)/ospf6d/ospf6_bfd.c
-vtysh_scan += $(top_srcdir)/ospf6d/ospf6_flood.c
-vtysh_scan += $(top_srcdir)/ospf6d/ospf6_interface.c
-vtysh_scan += $(top_srcdir)/ospf6d/ospf6_intra.c
-vtysh_scan += $(top_srcdir)/ospf6d/ospf6_lsa.c
-vtysh_scan += $(top_srcdir)/ospf6d/ospf6_message.c
-vtysh_scan += $(top_srcdir)/ospf6d/ospf6_neighbor.c
-vtysh_scan += $(top_srcdir)/ospf6d/ospf6_route.c
-vtysh_scan += $(top_srcdir)/ospf6d/ospf6_spf.c
-vtysh_scan += $(top_srcdir)/ospf6d/ospf6_top.c
-vtysh_scan += $(top_srcdir)/ospf6d/ospf6_zebra.c
-vtysh_scan += $(top_srcdir)/ospf6d/ospf6d.c
-endif
-
-if RIPD
-vtysh_scan += $(top_srcdir)/ripd/rip_debug.c
-vtysh_scan += $(top_srcdir)/ripd/rip_interface.c
-vtysh_scan += $(top_srcdir)/ripd/rip_offset.c
-vtysh_scan += $(top_srcdir)/ripd/rip_zebra.c
-vtysh_scan += $(top_srcdir)/ripd/ripd.c
-endif
-
-if RIPNGD
-vtysh_scan += $(top_srcdir)/ripngd/ripng_debug.c
-vtysh_scan += $(top_srcdir)/ripngd/ripng_interface.c
-vtysh_scan += $(top_srcdir)/ripngd/ripng_offset.c
-vtysh_scan += $(top_srcdir)/ripngd/ripng_zebra.c
-vtysh_scan += $(top_srcdir)/ripngd/ripngd.c
-endif
-
-if LDPD
-vtysh_scan += $(top_srcdir)/ldpd/ldp_vty_cmds.c
-endif
-
-if NHRPD
-vtysh_scan += $(top_srcdir)/nhrpd/nhrp_vty.c
-endif
-
-if EIGRPD
-vtysh_scan += $(top_srcdir)/eigrpd/eigrp_dump.c
-#vtysh_scan += $(top_srcdir)/eigrpd/eigrp_routemap.c
-vtysh_scan += $(top_srcdir)/eigrpd/eigrp_vty.c
-endif
-
-if BABELD
-vtysh_scan += $(top_srcdir)/babeld/babel_interface.c
-vtysh_scan += $(top_srcdir)/babeld/babel_zebra.c
-vtysh_scan += $(top_srcdir)/babeld/babeld.c
-endif
-
-if SHARPD
-vtysh_scan += $(top_srcdir)/sharpd/sharp_vty.c
-endif
-
-if SNMP
-vtysh_scan += $(top_srcdir)/lib/agentx.c
-endif
-
-if PBRD
-vtysh_scan += $(top_srcdir)/pbrd/pbr_vty.c
-vtysh_scan += $(top_srcdir)/pbrd/pbr_debug.c
-endif
-
-if STATICD
-vtysh_scan += $(top_srcdir)/staticd/static_vty.c
-endif
-
-if BFDD
-vtysh_scan += $(top_srcdir)/bfdd/bfdd_vty.c
-endif
-
-vtysh_cmd_FILES = $(vtysh_scan) \
- $(top_srcdir)/lib/keychain.c $(top_srcdir)/lib/routemap.c \
- $(top_srcdir)/lib/filter.c $(top_srcdir)/lib/plist.c \
- $(top_srcdir)/lib/distribute.c $(top_srcdir)/lib/if_rmap.c \
- $(top_srcdir)/lib/vrf.c $(top_srcdir)/lib/if.c \
- $(top_srcdir)/lib/vty.c $(top_srcdir)/zebra/debug.c \
- $(top_srcdir)/lib/logicalrouter.c \
- $(top_srcdir)/lib/nexthop_group.c \
- $(top_srcdir)/zebra/interface.c \
- $(top_srcdir)/zebra/irdp_interface.c \
- $(top_srcdir)/zebra/rtadv.c $(top_srcdir)/zebra/zebra_vty.c \
- $(top_srcdir)/zebra/zserv.c $(top_srcdir)/zebra/router-id.c \
- $(top_srcdir)/zebra/zebra_routemap.c \
- $(top_srcdir)/zebra/zebra_fpm.c \
- $(top_srcdir)/zebra/zebra_ptm.c \
- $(top_srcdir)/zebra/zebra_mpls_vty.c \
- $(top_srcdir)/zebra/zebra_pw.c \
- $(top_srcdir)/watchfrr/watchfrr_vty.c \
- # end
-
-vtysh_cmd.c: $(vtysh_cmd_FILES) extract.pl
- ./extract.pl $(vtysh_cmd_FILES) > vtysh_cmd.c
#include "command.h"
#include "linklist.h"
-#include "vtysh.h"
+#include "vtysh/vtysh.h"
EOF
$cppadd = $fabricd ? "-DFABRICD=1" : "";
- open (FH, "@CPP@ -DHAVE_CONFIG_H -DVTYSH_EXTRACT_PL -I@top_builddir@ -I@srcdir@/ -I@srcdir@/.. -I@top_srcdir@/lib -I@top_builddir@/lib -I@top_srcdir@/bgpd -I@top_srcdir@/@LIBRFP@ -I@top_srcdir@/bgpd/rfapi @CPPFLAGS@ $cppadd $file |");
+ open (FH, "@CPP@ -DHAVE_CONFIG_H -DVTYSH_EXTRACT_PL -Ivtysh/@top_builddir@ -Ivtysh/@top_srcdir@ -Ivtysh/@top_srcdir@/lib -Ivtysh/@top_builddir@/lib -Ivtysh/@top_srcdir@/bgpd -Ivtysh/@top_srcdir@/bgpd/rfapi @CPPFLAGS@ $cppadd $file |");
local $/; undef $/;
$line = <FH>;
close (FH);
--- /dev/null
+#
+# vtysh
+#
+
+if VTYSH
+bin_PROGRAMS += vtysh/vtysh
+dist_examples_DATA += vtysh/vtysh.conf.sample
+endif
+
+vtysh_vtysh_SOURCES = \
+ vtysh/vtysh_main.c \
+ vtysh/vtysh.c \
+ vtysh/vtysh_user.c \
+ vtysh/vtysh_config.c \
+ # end
+nodist_vtysh_vtysh_SOURCES = \
+ vtysh/vtysh_cmd.c \
+ # end
+CLEANFILES += vtysh/vtysh_cmd.c
+
+noinst_HEADERS += \
+ vtysh/vtysh.h \
+ vtysh/vtysh_user.h \
+ # end
+
+vtysh_vtysh_LDADD = lib/libfrr.la @LIBCAP@ @LIBREADLINE@ @LIBS@ @CURSES@ @LIBPAM@
+
+EXTRA_DIST += vtysh/extract.pl
+
+vtysh_scan =
+
+if PIMD
+vtysh_scan += $(top_srcdir)/pimd/pim_cmd.c
+endif
+
+if BGPD
+vtysh_scan += $(top_srcdir)/bgpd/bgp_bfd.c
+vtysh_scan += $(top_srcdir)/bgpd/bgp_debug.c
+vtysh_scan += $(top_srcdir)/bgpd/bgp_dump.c
+vtysh_scan += $(top_srcdir)/bgpd/bgp_evpn_vty.c
+vtysh_scan += $(top_srcdir)/bgpd/bgp_filter.c
+vtysh_scan += $(top_srcdir)/bgpd/bgp_mplsvpn.c
+vtysh_scan += $(top_srcdir)/bgpd/bgp_nexthop.c
+vtysh_scan += $(top_srcdir)/bgpd/bgp_route.c
+vtysh_scan += $(top_srcdir)/bgpd/bgp_routemap.c
+vtysh_scan += $(top_srcdir)/bgpd/bgp_vty.c
+vtysh_scan += $(top_srcdir)/bgpd/bgp_flowspec_vty.c
+if ENABLE_BGP_VNC
+vtysh_scan += $(top_srcdir)/bgpd/rfapi/bgp_rfapi_cfg.c
+vtysh_scan += $(top_srcdir)/bgpd/rfapi/rfapi.c
+vtysh_scan += $(top_srcdir)/bgpd/rfapi/rfapi_vty.c
+vtysh_scan += $(top_srcdir)/bgpd/rfapi/vnc_debug.c
+endif
+endif
+
+if RPKI
+vtysh_scan += $(top_srcdir)/bgpd/bgp_rpki.c
+endif
+
+if ISISD
+vtysh_scan += $(top_srcdir)/isisd/isis_redist.c
+vtysh_scan += $(top_srcdir)/isisd/isis_spf.c
+vtysh_scan += $(top_srcdir)/isisd/isis_te.c
+vtysh_scan += $(top_srcdir)/isisd/isis_vty_common.c
+vtysh_scan += $(top_srcdir)/isisd/isis_vty_fabricd.c
+vtysh_scan += $(top_srcdir)/isisd/isis_vty_isisd.c
+vtysh_scan += $(top_srcdir)/isisd/isisd.c
+endif
+
+if OSPFD
+vtysh_scan += $(top_srcdir)/ospfd/ospf_bfd.c
+vtysh_scan += $(top_srcdir)/ospfd/ospf_dump.c
+vtysh_scan += $(top_srcdir)/ospfd/ospf_opaque.c
+vtysh_scan += $(top_srcdir)/ospfd/ospf_ri.c
+vtysh_scan += $(top_srcdir)/ospfd/ospf_routemap.c
+vtysh_scan += $(top_srcdir)/ospfd/ospf_te.c
+vtysh_scan += $(top_srcdir)/ospfd/ospf_sr.c
+vtysh_scan += $(top_srcdir)/ospfd/ospf_vty.c
+endif
+
+if OSPF6D
+vtysh_scan += $(top_srcdir)/ospf6d/ospf6_abr.c
+vtysh_scan += $(top_srcdir)/ospf6d/ospf6_asbr.c
+vtysh_scan += $(top_srcdir)/ospf6d/ospf6_area.c
+vtysh_scan += $(top_srcdir)/ospf6d/ospf6_bfd.c
+vtysh_scan += $(top_srcdir)/ospf6d/ospf6_flood.c
+vtysh_scan += $(top_srcdir)/ospf6d/ospf6_interface.c
+vtysh_scan += $(top_srcdir)/ospf6d/ospf6_intra.c
+vtysh_scan += $(top_srcdir)/ospf6d/ospf6_lsa.c
+vtysh_scan += $(top_srcdir)/ospf6d/ospf6_message.c
+vtysh_scan += $(top_srcdir)/ospf6d/ospf6_neighbor.c
+vtysh_scan += $(top_srcdir)/ospf6d/ospf6_route.c
+vtysh_scan += $(top_srcdir)/ospf6d/ospf6_spf.c
+vtysh_scan += $(top_srcdir)/ospf6d/ospf6_top.c
+vtysh_scan += $(top_srcdir)/ospf6d/ospf6_zebra.c
+vtysh_scan += $(top_srcdir)/ospf6d/ospf6d.c
+endif
+
+if RIPD
+vtysh_scan += $(top_srcdir)/ripd/rip_debug.c
+vtysh_scan += $(top_srcdir)/ripd/rip_interface.c
+vtysh_scan += $(top_srcdir)/ripd/rip_offset.c
+vtysh_scan += $(top_srcdir)/ripd/rip_zebra.c
+vtysh_scan += $(top_srcdir)/ripd/ripd.c
+endif
+
+if RIPNGD
+vtysh_scan += $(top_srcdir)/ripngd/ripng_debug.c
+vtysh_scan += $(top_srcdir)/ripngd/ripng_interface.c
+vtysh_scan += $(top_srcdir)/ripngd/ripng_offset.c
+vtysh_scan += $(top_srcdir)/ripngd/ripng_zebra.c
+vtysh_scan += $(top_srcdir)/ripngd/ripngd.c
+endif
+
+if LDPD
+vtysh_scan += $(top_srcdir)/ldpd/ldp_vty_cmds.c
+endif
+
+if NHRPD
+vtysh_scan += $(top_srcdir)/nhrpd/nhrp_vty.c
+endif
+
+if EIGRPD
+vtysh_scan += $(top_srcdir)/eigrpd/eigrp_dump.c
+#vtysh_scan += $(top_srcdir)/eigrpd/eigrp_routemap.c
+vtysh_scan += $(top_srcdir)/eigrpd/eigrp_vty.c
+endif
+
+if BABELD
+vtysh_scan += $(top_srcdir)/babeld/babel_interface.c
+vtysh_scan += $(top_srcdir)/babeld/babel_zebra.c
+vtysh_scan += $(top_srcdir)/babeld/babeld.c
+endif
+
+if SHARPD
+vtysh_scan += $(top_srcdir)/sharpd/sharp_vty.c
+endif
+
+if SNMP
+vtysh_scan += $(top_srcdir)/lib/agentx.c
+endif
+
+if PBRD
+vtysh_scan += $(top_srcdir)/pbrd/pbr_vty.c
+vtysh_scan += $(top_srcdir)/pbrd/pbr_debug.c
+endif
+
+if STATICD
+vtysh_scan += $(top_srcdir)/staticd/static_vty.c
+endif
+
+if BFDD
+vtysh_scan += $(top_srcdir)/bfdd/bfdd_vty.c
+endif
+
+vtysh_vtysh_cmd_FILES = $(vtysh_scan) \
+ $(top_srcdir)/lib/keychain.c $(top_srcdir)/lib/routemap.c \
+ $(top_srcdir)/lib/filter.c $(top_srcdir)/lib/plist.c \
+ $(top_srcdir)/lib/distribute.c $(top_srcdir)/lib/if_rmap.c \
+ $(top_srcdir)/lib/vrf.c $(top_srcdir)/lib/if.c \
+ $(top_srcdir)/lib/vty.c $(top_srcdir)/zebra/debug.c \
+ $(top_srcdir)/lib/logicalrouter.c \
+ $(top_srcdir)/lib/nexthop_group.c \
+ $(top_srcdir)/zebra/interface.c \
+ $(top_srcdir)/zebra/irdp_interface.c \
+ $(top_srcdir)/zebra/rtadv.c $(top_srcdir)/zebra/zebra_vty.c \
+ $(top_srcdir)/zebra/zserv.c $(top_srcdir)/zebra/router-id.c \
+ $(top_srcdir)/zebra/zebra_routemap.c \
+ $(top_srcdir)/zebra/zebra_fpm.c \
+ $(top_srcdir)/zebra/zebra_ptm.c \
+ $(top_srcdir)/zebra/zebra_mpls_vty.c \
+ $(top_srcdir)/zebra/zebra_pw.c \
+ $(top_srcdir)/watchfrr/watchfrr_vty.c \
+ # end
+
+AM_V_EXTRACT = $(am__v_EXTRACT_$(V))
+am__v_EXTRACT_ = $(am__v_EXTRACT_$(AM_DEFAULT_VERBOSITY))
+am__v_EXTRACT_0 = @echo " EXTRACT " $@;
+am__v_EXTRACT_1 =
+
+vtysh/vtysh_cmd.c: $(vtysh_vtysh_cmd_FILES) vtysh/extract.pl
+ $(AM_V_EXTRACT) vtysh/extract.pl $(vtysh_vtysh_cmd_FILES) > vtysh/vtysh_cmd.c