--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/components/quagga/patches/95-noautomake.patch Tue Jan 03 11:12:40 2012 -0800
@@ -0,0 +1,351 @@
+diff -r -u Makefile.in Makefile.in
+--- Makefile.in
++++ Makefile.in
[email protected]@ -147,6 +147,8 @@
+ IOCTL_METHOD = @[email protected]
+ IPFORWARD = @[email protected]
+ ISISD = @[email protected]
++ISIS_LIBS = @[email protected]
++ISIS_TARGETS = @[email protected]
+ ISIS_TOPOLOGY_DIR = @[email protected]
+ ISIS_TOPOLOGY_INCLUDES = @[email protected]
+ ISIS_TOPOLOGY_LIB = @[email protected]
+diff -r -u config.h.in config.h.in
+--- config.h.in
++++ config.h.in
[email protected]@ -512,6 +512,9 @@
+ /* Define to 1 if you have the <time.h> header file. */
+ #undef HAVE_TIME_H
+
++/* Enable TRILL support */
++#undef HAVE_TRILL
++
+ /* Define to 1 if you have the <ucontext.h> header file. */
+ #undef HAVE_UCONTEXT_H
+
+diff -r -u configure configure
+--- configure
++++ configure
[email protected]@ -658,6 +658,8 @@
+ enable_vty_group
+ enable_group
+ enable_user
++ISIS_LIBS
++ISIS_TARGETS
+ ISIS_TOPOLOGY_LIB
+ ISIS_TOPOLOGY_DIR
+ ISIS_TOPOLOGY_INCLUDES
[email protected]@ -801,6 +803,7 @@
+ enable_ospf6d
+ enable_watchquagga
+ enable_isisd
++enable_trill
+ enable_solaris
+ enable_bgp_announce
+ enable_netlink
[email protected]@ -1482,6 +1485,7 @@
+ --disable-ospf6d do not build ospf6d
+ --disable-watchquagga do not build watchquagga
+ --enable-isisd build isisd
++ --enable-trill include trill support
+ --enable-solaris build solaris
+ --disable-bgp-announce, turn off BGP route announcement
+ --enable-netlink force to use Linux netlink interface
[email protected]@ -12125,6 +12129,11 @@
+ enableval=$enable_isisd;
+ fi
+
++# Check whether --enable-trill was given.
++if test "${enable_trill+set}" = set; then :
++ enableval=$enable_trill;
++fi
++
+ # Check whether --enable-solaris was given.
+ if test "${enable_solaris+set}" = set; then :
+ enableval=$enable_solaris;
[email protected]@ -12362,6 +12371,80 @@
+
+
+
++if test "${enable_trill}" = "yes"; then
++ ac_fn_c_check_header_mongrel "$LINENO" "net/trill.h" "ac_cv_header_net_trill_h" "$ac_includes_default"
++if test "x$ac_cv_header_net_trill_h" = xyes; then :
++
++fi
++
++
++ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for dladm_valid_bridgename in -ldladm" >&5
++$as_echo_n "checking for dladm_valid_bridgename in -ldladm... " >&6; }
++if ${ac_cv_lib_dladm_dladm_valid_bridgename+:} false; then :
++ $as_echo_n "(cached) " >&6
++else
++ ac_check_lib_save_LIBS=$LIBS
++LIBS="-ldladm $LIBS"
++cat confdefs.h - <<_ACEOF >conftest.$ac_ext
++/* end confdefs.h. */
++
++/* Override any GCC internal prototype to avoid an error.
++ Use char because int might match the return type of a GCC
++ builtin and then its argument prototype would still apply. */
++#ifdef __cplusplus
++extern "C"
++#endif
++char dladm_valid_bridgename ();
++int
++main ()
++{
++return dladm_valid_bridgename ();
++ ;
++ return 0;
++}
++_ACEOF
++if ac_fn_c_try_link "$LINENO"; then :
++ ac_cv_lib_dladm_dladm_valid_bridgename=yes
++else
++ ac_cv_lib_dladm_dladm_valid_bridgename=no
++fi
++rm -f core conftest.err conftest.$ac_objext \
++ conftest$ac_exeext conftest.$ac_ext
++LIBS=$ac_check_lib_save_LIBS
++fi
++{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dladm_dladm_valid_bridgename" >&5
++$as_echo "$ac_cv_lib_dladm_dladm_valid_bridgename" >&6; }
++if test "x$ac_cv_lib_dladm_dladm_valid_bridgename" = xyes; then :
++ libdladm=yes
++fi
++
++ { $as_echo "$as_me:${as_lineno-$LINENO}: checking TRILL IS-IS support" >&5
++$as_echo_n "checking TRILL IS-IS support... " >&6; }
++ if test $ac_cv_header_net_trill_h = no || \
++ test $ac_cv_lib_dladm_dladm_valid_bridgename = no; then
++ { $as_echo "$as_me:${as_lineno-$LINENO}: result: none" >&5
++$as_echo "none" >&6; }
++ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: *** TRILL IS-IS support will not be built ***" >&5
++$as_echo "$as_me: WARNING: *** TRILL IS-IS support will not be built ***" >&2;}
++ enable_trill=no
++ else
++ { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
++$as_echo "yes" >&6; }
++
++$as_echo "#define HAVE_TRILL /**/" >>confdefs.h
++
++ fi
++fi
++if test "${enable_trill}" = "yes"; then
++ ISIS_TARGETS="isisd trilld"
++ ISIS_LIBS=-ldladm
++else
++ ISIS_TARGETS="isisd"
++ ISIS_LIBS=
++fi
++
++
++
+ if test "${enable_user}" = "yes" || test x"${enable_user}" = x""; then
+ enable_user="quagga"
+ elif test "${enable_user}" = "no"; then
[email protected]@ -15985,45 +16068,48 @@
+
+ $as_echo "#define ISIS_METHOD_BPF 3" >>confdefs.h
+
+-ac_fn_c_check_header_mongrel "$LINENO" "net/bpf.h" "ac_cv_header_net_bpf_h" "$ac_includes_default"
++if test "${enable_isisd}" = "yes"; then
++ ISIS_METHOD_MACRO=
++ ac_fn_c_check_header_mongrel "$LINENO" "net/bpf.h" "ac_cv_header_net_bpf_h" "$ac_includes_default"
+ if test "x$ac_cv_header_net_bpf_h" = xyes; then :
+
+ fi
+
+
+-ac_fn_c_check_header_mongrel "$LINENO" "sys/dlpi.h" "ac_cv_header_sys_dlpi_h" "$ac_includes_default"
++ ac_fn_c_check_header_mongrel "$LINENO" "sys/dlpi.h" "ac_cv_header_sys_dlpi_h" "$ac_includes_default"
+ if test "x$ac_cv_header_sys_dlpi_h" = xyes; then :
+
+ fi
+
+
+-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking zebra IS-IS I/O method" >&5
++ { $as_echo "$as_me:${as_lineno-$LINENO}: checking zebra IS-IS I/O method" >&5
+ $as_echo_n "checking zebra IS-IS I/O method... " >&6; }
+-if test x"$opsys" = x"gnu-linux"; then
+- { $as_echo "$as_me:${as_lineno-$LINENO}: result: pfpacket" >&5
++ if test x"$opsys" = x"gnu-linux"; then
++ { $as_echo "$as_me:${as_lineno-$LINENO}: result: pfpacket" >&5
+ $as_echo "pfpacket" >&6; }
+- ISIS_METHOD_MACRO="ISIS_METHOD_PFPACKET"
+-elif test x"$opsys" = x"sol2-6" -o x"$opsys" = x"sol8"; then
+- { $as_echo "$as_me:${as_lineno-$LINENO}: result: DLPI" >&5
++ ISIS_METHOD_MACRO="ISIS_METHOD_PFPACKET"
++ elif test x"$opsys" = x"sol2-6" -o x"$opsys" = x"sol8"; then
++ { $as_echo "$as_me:${as_lineno-$LINENO}: result: DLPI" >&5
+ $as_echo "DLPI" >&6; }
+- ISIS_METHOD_MACRO="ISIS_METHOD_DLPI"
+-else
+- if test $ac_cv_header_net_bpf_h = no; then
+- if test $ac_cv_header_sys_dlpi_h = no; then
+- { $as_echo "$as_me:${as_lineno-$LINENO}: result: none" >&5
++ ISIS_METHOD_MACRO="ISIS_METHOD_DLPI"
++ else
++ if test $ac_cv_header_net_bpf_h = no; then
++ if test $ac_cv_header_sys_dlpi_h = no; then
++ { $as_echo "$as_me:${as_lineno-$LINENO}: result: none" >&5
+ $as_echo "none" >&6; }
+- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: *** IS-IS support will not be built ***" >&5
++ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: *** IS-IS support will not be built ***" >&5
+ $as_echo "$as_me: WARNING: *** IS-IS support will not be built ***" >&2;}
+- ISISD=""
+- else
+- { $as_echo "$as_me:${as_lineno-$LINENO}: result: DLPI" >&5
++ ISISD=""
++ else
++ { $as_echo "$as_me:${as_lineno-$LINENO}: result: DLPI" >&5
+ $as_echo "DLPI" >&6; }
+- fi
+- ISIS_METHOD_MACRO="ISIS_METHOD_DLPI"
+- else
+- { $as_echo "$as_me:${as_lineno-$LINENO}: result: BPF" >&5
++ fi
++ ISIS_METHOD_MACRO="ISIS_METHOD_DLPI"
++ else
++ { $as_echo "$as_me:${as_lineno-$LINENO}: result: BPF" >&5
+ $as_echo "BPF" >&6; }
+- ISIS_METHOD_MACRO="ISIS_METHOD_BPF"
++ ISIS_METHOD_MACRO="ISIS_METHOD_BPF"
++ fi
+ fi
+ fi
+
+diff -r -u isisd/Makefile.in isisd/Makefile.in
+--- isisd/Makefile.in
++++ isisd/Makefile.in
[email protected]@ -38,7 +38,7 @@
+ build_triplet = @[email protected]
+ host_triplet = @[email protected]
+ target_triplet = @[email protected]
+-sbin_PROGRAMS = isisd$(EXEEXT)
++EXTRA_PROGRAMS = isisd$(EXEEXT) trilld$(EXEEXT)
+ subdir = isisd
+ DIST_COMMON = README $(dist_examples_DATA) $(noinst_HEADERS) \
+ $(srcdir)/Makefile.am $(srcdir)/Makefile.in AUTHORS
[email protected]@ -75,9 +75,15 @@
+ isis_events.$(OBJEXT) isis_spf.$(OBJEXT) isis_route.$(OBJEXT) \
+ isis_routemap.$(OBJEXT)
+ am_isisd_OBJECTS = isis_main.$(OBJEXT) $(am__objects_1) \
+- isis_bpf.$(OBJEXT) isis_dlpi.$(OBJEXT) isis_pfpacket.$(OBJEXT)
++ isis_bpf.$(OBJEXT) isis_dlpi.$(OBJEXT) isis_pfpacket.$(OBJEXT) \
++ isis_trilldummy.$(OBJEXT)
+ isisd_OBJECTS = $(am_isisd_OBJECTS)
+ isisd_DEPENDENCIES = ../lib/libzebra.la
++am_trilld_OBJECTS = isis_main.$(OBJEXT) $(am__objects_1) \
++ isis_trill.$(OBJEXT) isis_trillio.$(OBJEXT) \
++ isis_trillvlans.$(OBJEXT) isis_trillbpdu.$(OBJEXT)
++trilld_OBJECTS = $(am_trilld_OBJECTS)
++trilld_DEPENDENCIES = ../lib/libzebra.la
+ DEFAULT_INCLUDES = [email protected][email protected] -I$(top_builddir)
+ depcomp = $(SHELL) $(top_srcdir)/depcomp
+ am__depfiles_maybe = depfiles
[email protected]@ -91,8 +97,8 @@
+ LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \
+ --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) \
+ $(LDFLAGS) -o [email protected]
+-SOURCES = $(libisis_a_SOURCES) $(isisd_SOURCES)
+-DIST_SOURCES = $(libisis_a_SOURCES) $(isisd_SOURCES)
++SOURCES = $(libisis_a_SOURCES) $(isisd_SOURCES) $(trilld_SOURCES)
++DIST_SOURCES = $(libisis_a_SOURCES) $(isisd_SOURCES) $(trilld_SOURCES)
+ RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \
+ html-recursive info-recursive install-data-recursive \
+ install-dvi-recursive install-exec-recursive \
[email protected]@ -201,6 +207,8 @@
+ IOCTL_METHOD = @[email protected]
+ IPFORWARD = @[email protected]
+ ISISD = @[email protected]
++ISIS_LIBS = @[email protected]
++ISIS_TARGETS = @[email protected]
+ ISIS_TOPOLOGY_DIR = @[email protected]
+ ISIS_TOPOLOGY_INCLUDES = @[email protected]
+ ISIS_TOPOLOGY_LIB = @[email protected]
[email protected]@ -212,7 +220,7 @@
+ LIBOBJS = @[email protected]
+ LIBPAM = @[email protected]
+ LIBREADLINE = @[email protected]
+-LIBS = @[email protected]
++LIBS = @[email protected] @[email protected]
+ LIBTOOL = @[email protected]
+ LIB_IPV6 = @[email protected]
+ LIB_REGEX = @[email protected]
[email protected]@ -327,6 +335,7 @@
+ AM_CFLAGS = $(PICFLAGS)
+ AM_LDFLAGS = $(PILDFLAGS)
+ noinst_LIBRARIES = libisis.a
++sbin_PROGRAMS = @[email protected]
+ SUBDIRS = topology
+ libisis_a_SOURCES = \
+ isis_adjacency.c isis_lsp.c dict.c isis_circuit.c isis_pdu.c \
[email protected]@ -339,13 +348,22 @@
+ isis_lsp.h dict.h isis_circuit.h isis_misc.h isis_network.h \
+ isis_zebra.h isis_dr.h isis_flags.h isis_dynhn.h isis_common.h \
+ iso_checksum.h isis_csm.h isis_events.h isis_spf.h isis_route.h \
++ isis_trill.h \
+ include-netbsd/clnp.h include-netbsd/esis.h include-netbsd/iso.h
+
+ isisd_SOURCES = \
+ isis_main.c $(libisis_a_SOURCES) \
+- isis_bpf.c isis_dlpi.c isis_pfpacket.c
++ isis_bpf.c isis_dlpi.c isis_pfpacket.c isis_trilldummy.c
+
+-isisd_LDADD = @[email protected] ../lib/libzebra.la @[email protected]
++isisd_LDADD = @[email protected] ../lib/libzebra.la @[email protected] @[email protected]
++trilld_SOURCES = \
++ isis_main.c $(libisis_a_SOURCES) isis_trill.c isis_trillio.c \
++ isis_trillvlans.c isis_trillbpdu.c
++
++trilld_LDADD = @[email protected] ../lib/libzebra.la @[email protected] @[email protected]
++EXTRA_DIST = isis_bpf.c isis_dlpi.c isis_pfpacket.c isis_trill.c \
++ isis_trillio.c isis_trillvlans.c isis_trillbpdu.c
++
+ examplesdir = $(exampledir)
+ dist_examples_DATA = isisd.conf.sample
+ all: all-recursive
[email protected]@ -435,6 +453,9 @@
+ isisd$(EXEEXT): $(isisd_OBJECTS) $(isisd_DEPENDENCIES)
+ @rm -f isisd$(EXEEXT)
+ $(LINK) $(isisd_OBJECTS) $(isisd_LDADD) $(LIBS)
++trilld$(EXEEXT): $(trilld_OBJECTS) $(trilld_DEPENDENCIES)
++ @rm -f trilld$(EXEEXT)
++ $(LINK) $(trilld_OBJECTS) $(trilld_LDADD) $(LIBS)
+
+ mostlyclean-compile:
+ -rm -f *.$(OBJEXT)
[email protected]@ -461,6 +482,11 @@
+ @[email protected]@[email protected] @[email protected]/$(DEPDIR)/[email protected][email protected]
+ @[email protected]@[email protected] @[email protected]/$(DEPDIR)/[email protected][email protected]
+ @[email protected]@[email protected] @[email protected]/$(DEPDIR)/[email protected][email protected]
[email protected][email protected]@[email protected] @[email protected]/$(DEPDIR)/[email protected][email protected]
[email protected][email protected]@[email protected] @[email protected]/$(DEPDIR)/[email protected][email protected]
[email protected][email protected]@[email protected] @[email protected]/$(DEPDIR)/[email protected][email protected]
[email protected][email protected]@[email protected] @[email protected]/$(DEPDIR)/[email protected][email protected]
[email protected][email protected]@[email protected] @[email protected]/$(DEPDIR)/[email protected][email protected]
+ @[email protected]@[email protected] @[email protected]/$(DEPDIR)/[email protected][email protected]
+ @[email protected]@[email protected] @[email protected]/$(DEPDIR)/[email protected][email protected]
+ @[email protected]@[email protected] @[email protected]/$(DEPDIR)/[email protected][email protected]
+diff -r -u solaris/Makefile.in solaris/Makefile.in
+--- solaris/Makefile.in
++++ solaris/Makefile.in
[email protected]@ -97,6 +97,8 @@
+ IOCTL_METHOD = @[email protected]
+ IPFORWARD = @[email protected]
+ ISISD = @[email protected]
++ISIS_LIBS = @[email protected]
++ISIS_TARGETS = @[email protected]
+ ISIS_TOPOLOGY_DIR = @[email protected]
+ ISIS_TOPOLOGY_INCLUDES = @[email protected]
+ ISIS_TOPOLOGY_LIB = @[email protected]
[email protected]@ -229,7 +231,7 @@
+ pkg_packages = $(pkg_names:%[email protected][email protected]%-$(pkg_name_rev).pkg)
+ pkg_pkginfos = $(pkg_names:%=pkginfo.%.full)
+ pkg_prototypes = $(pkg_names:%=prototype.%)
+-pkg_manifests = quagga.xml
++pkg_manifests = quagga.xml trill.xml
+
+ # pkgmk variable substitutions wont grok ${variable} in prototype
+ # file, so we cant let autoconf generate the file sadly