# Makefile.in generated by automake 1.11.1 from Makefile.am.
# @configure_input@

# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
# 2003, 2004, 2005, 2006, 2007, 2008, 2009  Free Software Foundation,
# Inc.
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.

# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
# PARTICULAR PURPOSE.

@SET_MAKE@

# -*- Makefile -*-

VPATH = @srcdir@
pkgdatadir = $(datadir)/@PACKAGE@
pkgincludedir = $(includedir)/@PACKAGE@
pkglibdir = $(libdir)/@PACKAGE@
pkglibexecdir = $(libexecdir)/@PACKAGE@
am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
install_sh_DATA = $(install_sh) -c -m 644
install_sh_PROGRAM = $(install_sh) -c
install_sh_SCRIPT = $(install_sh) -c
INSTALL_HEADER = $(INSTALL_DATA)
transform = $(program_transform_name)
NORMAL_INSTALL = :
PRE_INSTALL = :
POST_INSTALL = :
NORMAL_UNINSTALL = :
PRE_UNINSTALL = :
POST_UNINSTALL = :
build_triplet = @build@
host_triplet = @host@
subdir = lib
DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in \
	$(srcdir)/defs.h.in
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/m4/libtool.m4 \
	$(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \
	$(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \
	$(top_srcdir)/configure.in
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
	$(ACLOCAL_M4)
mkinstalldirs = $(install_sh) -d
CONFIG_HEADER = defs.h
CONFIG_CLEAN_FILES =
CONFIG_CLEAN_VPATH_FILES =
am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
am__vpath_adj = case $$p in \
    $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
    *) f=$$p;; \
  esac;
am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`;
am__install_max = 40
am__nobase_strip_setup = \
  srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'`
am__nobase_strip = \
  for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||"
am__nobase_list = $(am__nobase_strip_setup); \
  for p in $$list; do echo "$$p $$p"; done | \
  sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \
  $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \
    if (++n[$$2] == $(am__install_max)) \
      { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \
    END { for (dir in files) print dir, files[dir] }'
am__base_list = \
  sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
  sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
am__installdirs = "$(DESTDIR)$(libdir)"
LTLIBRARIES = $(lib_LTLIBRARIES)
libnl_genl_la_DEPENDENCIES = libnl.la
am__dirstamp = $(am__leading_dot)dirstamp
am_libnl_genl_la_OBJECTS = genl/ctrl.lo genl/family.lo genl/genl.lo \
	genl/mngt.lo
libnl_genl_la_OBJECTS = $(am_libnl_genl_la_OBJECTS)
libnl_genl_la_LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) \
	$(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \
	$(libnl_genl_la_LDFLAGS) $(LDFLAGS) -o $@
libnl_nf_la_DEPENDENCIES = libnl-route.la
am_libnl_nf_la_OBJECTS = netfilter/ct.lo netfilter/ct_obj.lo \
	netfilter/log.lo netfilter/log_msg.lo netfilter/log_msg_obj.lo \
	netfilter/log_obj.lo netfilter/netfilter.lo netfilter/nfnl.lo \
	netfilter/queue.lo netfilter/queue_msg.lo \
	netfilter/queue_msg_obj.lo netfilter/queue_obj.lo
libnl_nf_la_OBJECTS = $(am_libnl_nf_la_OBJECTS)
libnl_nf_la_LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) \
	$(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \
	$(libnl_nf_la_LDFLAGS) $(LDFLAGS) -o $@
libnl_route_la_DEPENDENCIES = libnl.la
am_libnl_route_la_OBJECTS = route/addr.lo route/class.lo \
	route/class_api.lo route/class_obj.lo route/cls.lo \
	route/cls_api.lo route/cls_obj.lo route/link.lo route/neigh.lo \
	route/neightbl.lo route/nexthop.lo route/qdisc.lo \
	route/qdisc_api.lo route/qdisc_obj.lo route/route.lo \
	route/route_obj.lo route/route_utils.lo route/rtnl.lo \
	route/rule.lo route/tc.lo route/cls/fw.lo route/cls/police.lo \
	route/cls/u32.lo route/link/api.lo route/link/vlan.lo \
	route/sch/blackhole.lo route/sch/cbq.lo route/sch/dsmark.lo \
	route/sch/fifo.lo route/sch/htb.lo route/sch/netem.lo \
	route/sch/prio.lo route/sch/red.lo route/sch/sfq.lo \
	route/sch/tbf.lo fib_lookup/lookup.lo fib_lookup/request.lo \
	route/pktloc_syntax.lo route/pktloc_grammar.lo route/pktloc.lo
libnl_route_la_OBJECTS = $(am_libnl_route_la_OBJECTS)
libnl_route_la_LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) \
	$(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \
	$(libnl_route_la_LDFLAGS) $(LDFLAGS) -o $@
libnl_la_LIBADD =
am_libnl_la_OBJECTS = addr.lo attr.lo cache.lo cache_mngr.lo \
	cache_mngt.lo data.lo doc.lo error.lo handlers.lo msg.lo nl.lo \
	object.lo socket.lo utils.lo
libnl_la_OBJECTS = $(am_libnl_la_OBJECTS)
libnl_la_LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \
	--mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(libnl_la_LDFLAGS) \
	$(LDFLAGS) -o $@
DEFAULT_INCLUDES = -I.@am__isrc@
depcomp = $(SHELL) $(top_srcdir)/depcomp
am__depfiles_maybe = depfiles
am__mv = mv -f
COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
	$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
LTCOMPILE = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \
	--mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \
	$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
CCLD = $(CC)
LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \
	--mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) \
	$(LDFLAGS) -o $@
SOURCES = $(libnl_genl_la_SOURCES) $(libnl_nf_la_SOURCES) \
	$(libnl_route_la_SOURCES) $(libnl_la_SOURCES)
DIST_SOURCES = $(libnl_genl_la_SOURCES) $(libnl_nf_la_SOURCES) \
	$(libnl_route_la_SOURCES) $(libnl_la_SOURCES)
ETAGS = etags
CTAGS = ctags
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
ACLOCAL = @ACLOCAL@
AMTAR = @AMTAR@
AR = @AR@
AUTOCONF = @AUTOCONF@
AUTOHEADER = @AUTOHEADER@
AUTOMAKE = @AUTOMAKE@
AWK = @AWK@
CC = @CC@
CCDEPMODE = @CCDEPMODE@
CFLAGS = @CFLAGS@
CPP = @CPP@
CPPFLAGS = @CPPFLAGS@
CYGPATH_W = @CYGPATH_W@
DEFS = @DEFS@
DEPDIR = @DEPDIR@
DSYMUTIL = @DSYMUTIL@
DUMPBIN = @DUMPBIN@
ECHO_C = @ECHO_C@
ECHO_N = @ECHO_N@
ECHO_T = @ECHO_T@
EGREP = @EGREP@
EXEEXT = @EXEEXT@
FGREP = @FGREP@
GREP = @GREP@
INSTALL = @INSTALL@
INSTALL_DATA = @INSTALL_DATA@
INSTALL_PROGRAM = @INSTALL_PROGRAM@
INSTALL_SCRIPT = @INSTALL_SCRIPT@
INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
LD = @LD@
LDFLAGS = @LDFLAGS@
LEX = @LEX@
LEXLIB = @LEXLIB@
LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@
LIBOBJS = @LIBOBJS@
LIBS = @LIBS@
LIBTOOL = @LIBTOOL@
LIPO = @LIPO@
LN_S = @LN_S@
LTLIBOBJS = @LTLIBOBJS@
MAKEINFO = @MAKEINFO@
MKDIR_P = @MKDIR_P@
NM = @NM@
NMEDIT = @NMEDIT@
OBJDUMP = @OBJDUMP@
OBJEXT = @OBJEXT@
OTOOL = @OTOOL@
OTOOL64 = @OTOOL64@
PACKAGE = @PACKAGE@
PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
PACKAGE_NAME = @PACKAGE_NAME@
PACKAGE_STRING = @PACKAGE_STRING@
PACKAGE_TARNAME = @PACKAGE_TARNAME@
PACKAGE_URL = @PACKAGE_URL@
PACKAGE_VERSION = @PACKAGE_VERSION@
PATH_SEPARATOR = @PATH_SEPARATOR@
RANLIB = @RANLIB@
SED = @SED@
SET_MAKE = @SET_MAKE@
SHELL = @SHELL@
STRIP = @STRIP@
VERSION = @VERSION@
YACC = @YACC@
YFLAGS = @YFLAGS@
abs_builddir = @abs_builddir@
abs_srcdir = @abs_srcdir@
abs_top_builddir = @abs_top_builddir@
abs_top_srcdir = @abs_top_srcdir@
ac_ct_CC = @ac_ct_CC@
ac_ct_DUMPBIN = @ac_ct_DUMPBIN@
am__include = @am__include@
am__leading_dot = @am__leading_dot@
am__quote = @am__quote@
am__tar = @am__tar@
am__untar = @am__untar@
bindir = @bindir@
build = @build@
build_alias = @build_alias@
build_cpu = @build_cpu@
build_os = @build_os@
build_vendor = @build_vendor@
builddir = @builddir@
datadir = @datadir@
datarootdir = @datarootdir@
docdir = @docdir@
dvidir = @dvidir@
exec_prefix = @exec_prefix@
host = @host@
host_alias = @host_alias@
host_cpu = @host_cpu@
host_os = @host_os@
host_vendor = @host_vendor@
htmldir = @htmldir@
includedir = @includedir@
infodir = @infodir@
install_sh = @install_sh@
libdir = @libdir@
libexecdir = @libexecdir@
localedir = @localedir@
localstatedir = @localstatedir@
lt_ECHO = @lt_ECHO@
mandir = @mandir@
mkdir_p = @mkdir_p@
oldincludedir = @oldincludedir@
pdfdir = @pdfdir@
pkgconfigdir = @pkgconfigdir@
prefix = @prefix@
program_transform_name = @program_transform_name@
psdir = @psdir@
sbindir = @sbindir@
sharedstatedir = @sharedstatedir@
srcdir = @srcdir@
sysconfdir = @sysconfdir@
target_alias = @target_alias@
top_build_prefix = @top_build_prefix@
top_builddir = @top_builddir@
top_srcdir = @top_srcdir@
AM_CPPFLAGS = -Wall -I${top_srcdir}/include -I${top_builddir}/include -I${builddir}/route -D_GNU_SOURCE -DSYSCONFDIR=\"$(sysconfdir)/libnl\"
lib_LTLIBRARIES = \
	libnl.la libnl-genl.la libnl-route.la libnl-nf.la

libnl_la_LDFLAGS = -version-info 2:0:0
libnl_la_SOURCES = \
	addr.c attr.c cache.c cache_mngr.c cache_mngt.c data.c doc.c \
	error.c handlers.c msg.c nl.c object.c socket.c utils.c

libnl_genl_la_LDFLAGS = -version-info 2:0:0
libnl_genl_la_LIBADD = libnl.la
libnl_genl_la_SOURCES = \
	genl/ctrl.c genl/family.c genl/genl.c genl/mngt.c

libnl_nf_la_LDFLAGS = -version-info 2:0:0
libnl_nf_la_LIBADD = libnl-route.la
libnl_nf_la_SOURCES = \
	netfilter/ct.c netfilter/ct_obj.c netfilter/log.c \
	netfilter/log_msg.c netfilter/log_msg_obj.c netfilter/log_obj.c \
	netfilter/netfilter.c netfilter/nfnl.c netfilter/queue.c \
	netfilter/queue_msg.c netfilter/queue_msg_obj.c netfilter/queue_obj.c

CLEANFILES = \
	route/pktloc_grammar.c route/pktloc_grammar.h \
	route/pktloc_syntax.c route/pktloc_syntax.h

libnl_route_la_LDFLAGS = -version-info 2:0:0
libnl_route_la_LIBADD = libnl.la
libnl_route_la_SOURCES = \
	route/addr.c route/class.c route/class_api.c route/class_obj.c \
	route/cls.c route/cls_api.c route/cls_obj.c route/link.c \
	route/neigh.c route/neightbl.c route/nexthop.c route/qdisc.c \
	route/qdisc_api.c route/qdisc_obj.c route/route.c route/route_obj.c \
	route/route_utils.c route/rtnl.c route/rule.c route/tc.c \
	\
	route/cls/fw.c route/cls/police.c route/cls/u32.c \
	\
	route/link/api.c route/link/vlan.c \
	\
	route/sch/blackhole.c route/sch/cbq.c route/sch/dsmark.c \
	route/sch/fifo.c route/sch/htb.c route/sch/netem.c route/sch/prio.c \
	route/sch/red.c route/sch/sfq.c route/sch/tbf.c \
	\
	fib_lookup/lookup.c fib_lookup/request.c \
	\
	route/pktloc_syntax.c route/pktloc_grammar.c route/pktloc.c

all: defs.h route/pktloc_syntax.h route/pktloc_grammar.h
	$(MAKE) $(AM_MAKEFLAGS) all-am

.SUFFIXES:
.SUFFIXES: .c .lo .o .obj
$(srcdir)/Makefile.in:  $(srcdir)/Makefile.am  $(am__configure_deps)
	@for dep in $?; do \
	  case '$(am__configure_deps)' in \
	    *$$dep*) \
	      ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
	        && { if test -f $@; then exit 0; else break; fi; }; \
	      exit 1;; \
	  esac; \
	done; \
	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign lib/Makefile'; \
	$(am__cd) $(top_srcdir) && \
	  $(AUTOMAKE) --foreign lib/Makefile
.PRECIOUS: Makefile
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
	@case '$?' in \
	  *config.status*) \
	    cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
	  *) \
	    echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
	    cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
	esac;

$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh

$(top_srcdir)/configure:  $(am__configure_deps)
	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
$(ACLOCAL_M4):  $(am__aclocal_m4_deps)
	cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
$(am__aclocal_m4_deps):

defs.h: stamp-h1
	@if test ! -f $@; then \
	  rm -f stamp-h1; \
	  $(MAKE) $(AM_MAKEFLAGS) stamp-h1; \
	else :; fi

stamp-h1: $(srcdir)/defs.h.in $(top_builddir)/config.status
	@rm -f stamp-h1
	cd $(top_builddir) && $(SHELL) ./config.status lib/defs.h
$(srcdir)/defs.h.in:  $(am__configure_deps) 
	($(am__cd) $(top_srcdir) && $(AUTOHEADER))
	rm -f stamp-h1
	touch $@

distclean-hdr:
	-rm -f defs.h stamp-h1
install-libLTLIBRARIES: $(lib_LTLIBRARIES)
	@$(NORMAL_INSTALL)
	test -z "$(libdir)" || $(MKDIR_P) "$(DESTDIR)$(libdir)"
	@list='$(lib_LTLIBRARIES)'; test -n "$(libdir)" || list=; \
	list2=; for p in $$list; do \
	  if test -f $$p; then \
	    list2="$$list2 $$p"; \
	  else :; fi; \
	done; \
	test -z "$$list2" || { \
	  echo " $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL) $(INSTALL_STRIP_FLAG) $$list2 '$(DESTDIR)$(libdir)'"; \
	  $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL) $(INSTALL_STRIP_FLAG) $$list2 "$(DESTDIR)$(libdir)"; \
	}

uninstall-libLTLIBRARIES:
	@$(NORMAL_UNINSTALL)
	@list='$(lib_LTLIBRARIES)'; test -n "$(libdir)" || list=; \
	for p in $$list; do \
	  $(am__strip_dir) \
	  echo " $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=uninstall rm -f '$(DESTDIR)$(libdir)/$$f'"; \
	  $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=uninstall rm -f "$(DESTDIR)$(libdir)/$$f"; \
	done

clean-libLTLIBRARIES:
	-test -z "$(lib_LTLIBRARIES)" || rm -f $(lib_LTLIBRARIES)
	@list='$(lib_LTLIBRARIES)'; for p in $$list; do \
	  dir="`echo $$p | sed -e 's|/[^/]*$$||'`"; \
	  test "$$dir" != "$$p" || dir=.; \
	  echo "rm -f \"$${dir}/so_locations\""; \
	  rm -f "$${dir}/so_locations"; \
	done
genl/$(am__dirstamp):
	@$(MKDIR_P) genl
	@: > genl/$(am__dirstamp)
genl/$(DEPDIR)/$(am__dirstamp):
	@$(MKDIR_P) genl/$(DEPDIR)
	@: > genl/$(DEPDIR)/$(am__dirstamp)
genl/ctrl.lo: genl/$(am__dirstamp) genl/$(DEPDIR)/$(am__dirstamp)
genl/family.lo: genl/$(am__dirstamp) genl/$(DEPDIR)/$(am__dirstamp)
genl/genl.lo: genl/$(am__dirstamp) genl/$(DEPDIR)/$(am__dirstamp)
genl/mngt.lo: genl/$(am__dirstamp) genl/$(DEPDIR)/$(am__dirstamp)
libnl-genl.la: $(libnl_genl_la_OBJECTS) $(libnl_genl_la_DEPENDENCIES) 
	$(libnl_genl_la_LINK) -rpath $(libdir) $(libnl_genl_la_OBJECTS) $(libnl_genl_la_LIBADD) $(LIBS)
netfilter/$(am__dirstamp):
	@$(MKDIR_P) netfilter
	@: > netfilter/$(am__dirstamp)
netfilter/$(DEPDIR)/$(am__dirstamp):
	@$(MKDIR_P) netfilter/$(DEPDIR)
	@: > netfilter/$(DEPDIR)/$(am__dirstamp)
netfilter/ct.lo: netfilter/$(am__dirstamp) \
	netfilter/$(DEPDIR)/$(am__dirstamp)
netfilter/ct_obj.lo: netfilter/$(am__dirstamp) \
	netfilter/$(DEPDIR)/$(am__dirstamp)
netfilter/log.lo: netfilter/$(am__dirstamp) \
	netfilter/$(DEPDIR)/$(am__dirstamp)
netfilter/log_msg.lo: netfilter/$(am__dirstamp) \
	netfilter/$(DEPDIR)/$(am__dirstamp)
netfilter/log_msg_obj.lo: netfilter/$(am__dirstamp) \
	netfilter/$(DEPDIR)/$(am__dirstamp)
netfilter/log_obj.lo: netfilter/$(am__dirstamp) \
	netfilter/$(DEPDIR)/$(am__dirstamp)
netfilter/netfilter.lo: netfilter/$(am__dirstamp) \
	netfilter/$(DEPDIR)/$(am__dirstamp)
netfilter/nfnl.lo: netfilter/$(am__dirstamp) \
	netfilter/$(DEPDIR)/$(am__dirstamp)
netfilter/queue.lo: netfilter/$(am__dirstamp) \
	netfilter/$(DEPDIR)/$(am__dirstamp)
netfilter/queue_msg.lo: netfilter/$(am__dirstamp) \
	netfilter/$(DEPDIR)/$(am__dirstamp)
netfilter/queue_msg_obj.lo: netfilter/$(am__dirstamp) \
	netfilter/$(DEPDIR)/$(am__dirstamp)
netfilter/queue_obj.lo: netfilter/$(am__dirstamp) \
	netfilter/$(DEPDIR)/$(am__dirstamp)
libnl-nf.la: $(libnl_nf_la_OBJECTS) $(libnl_nf_la_DEPENDENCIES) 
	$(libnl_nf_la_LINK) -rpath $(libdir) $(libnl_nf_la_OBJECTS) $(libnl_nf_la_LIBADD) $(LIBS)
route/$(am__dirstamp):
	@$(MKDIR_P) route
	@: > route/$(am__dirstamp)
route/$(DEPDIR)/$(am__dirstamp):
	@$(MKDIR_P) route/$(DEPDIR)
	@: > route/$(DEPDIR)/$(am__dirstamp)
route/addr.lo: route/$(am__dirstamp) route/$(DEPDIR)/$(am__dirstamp)
route/class.lo: route/$(am__dirstamp) route/$(DEPDIR)/$(am__dirstamp)
route/class_api.lo: route/$(am__dirstamp) \
	route/$(DEPDIR)/$(am__dirstamp)
route/class_obj.lo: route/$(am__dirstamp) \
	route/$(DEPDIR)/$(am__dirstamp)
route/cls.lo: route/$(am__dirstamp) route/$(DEPDIR)/$(am__dirstamp)
route/cls_api.lo: route/$(am__dirstamp) \
	route/$(DEPDIR)/$(am__dirstamp)
route/cls_obj.lo: route/$(am__dirstamp) \
	route/$(DEPDIR)/$(am__dirstamp)
route/link.lo: route/$(am__dirstamp) route/$(DEPDIR)/$(am__dirstamp)
route/neigh.lo: route/$(am__dirstamp) route/$(DEPDIR)/$(am__dirstamp)
route/neightbl.lo: route/$(am__dirstamp) \
	route/$(DEPDIR)/$(am__dirstamp)
route/nexthop.lo: route/$(am__dirstamp) \
	route/$(DEPDIR)/$(am__dirstamp)
route/qdisc.lo: route/$(am__dirstamp) route/$(DEPDIR)/$(am__dirstamp)
route/qdisc_api.lo: route/$(am__dirstamp) \
	route/$(DEPDIR)/$(am__dirstamp)
route/qdisc_obj.lo: route/$(am__dirstamp) \
	route/$(DEPDIR)/$(am__dirstamp)
route/route.lo: route/$(am__dirstamp) route/$(DEPDIR)/$(am__dirstamp)
route/route_obj.lo: route/$(am__dirstamp) \
	route/$(DEPDIR)/$(am__dirstamp)
route/route_utils.lo: route/$(am__dirstamp) \
	route/$(DEPDIR)/$(am__dirstamp)
route/rtnl.lo: route/$(am__dirstamp) route/$(DEPDIR)/$(am__dirstamp)
route/rule.lo: route/$(am__dirstamp) route/$(DEPDIR)/$(am__dirstamp)
route/tc.lo: route/$(am__dirstamp) route/$(DEPDIR)/$(am__dirstamp)
route/cls/$(am__dirstamp):
	@$(MKDIR_P) route/cls
	@: > route/cls/$(am__dirstamp)
route/cls/$(DEPDIR)/$(am__dirstamp):
	@$(MKDIR_P) route/cls/$(DEPDIR)
	@: > route/cls/$(DEPDIR)/$(am__dirstamp)
route/cls/fw.lo: route/cls/$(am__dirstamp) \
	route/cls/$(DEPDIR)/$(am__dirstamp)
route/cls/police.lo: route/cls/$(am__dirstamp) \
	route/cls/$(DEPDIR)/$(am__dirstamp)
route/cls/u32.lo: route/cls/$(am__dirstamp) \
	route/cls/$(DEPDIR)/$(am__dirstamp)
route/link/$(am__dirstamp):
	@$(MKDIR_P) route/link
	@: > route/link/$(am__dirstamp)
route/link/$(DEPDIR)/$(am__dirstamp):
	@$(MKDIR_P) route/link/$(DEPDIR)
	@: > route/link/$(DEPDIR)/$(am__dirstamp)
route/link/api.lo: route/link/$(am__dirstamp) \
	route/link/$(DEPDIR)/$(am__dirstamp)
route/link/vlan.lo: route/link/$(am__dirstamp) \
	route/link/$(DEPDIR)/$(am__dirstamp)
route/sch/$(am__dirstamp):
	@$(MKDIR_P) route/sch
	@: > route/sch/$(am__dirstamp)
route/sch/$(DEPDIR)/$(am__dirstamp):
	@$(MKDIR_P) route/sch/$(DEPDIR)
	@: > route/sch/$(DEPDIR)/$(am__dirstamp)
route/sch/blackhole.lo: route/sch/$(am__dirstamp) \
	route/sch/$(DEPDIR)/$(am__dirstamp)
route/sch/cbq.lo: route/sch/$(am__dirstamp) \
	route/sch/$(DEPDIR)/$(am__dirstamp)
route/sch/dsmark.lo: route/sch/$(am__dirstamp) \
	route/sch/$(DEPDIR)/$(am__dirstamp)
route/sch/fifo.lo: route/sch/$(am__dirstamp) \
	route/sch/$(DEPDIR)/$(am__dirstamp)
route/sch/htb.lo: route/sch/$(am__dirstamp) \
	route/sch/$(DEPDIR)/$(am__dirstamp)
route/sch/netem.lo: route/sch/$(am__dirstamp) \
	route/sch/$(DEPDIR)/$(am__dirstamp)
route/sch/prio.lo: route/sch/$(am__dirstamp) \
	route/sch/$(DEPDIR)/$(am__dirstamp)
route/sch/red.lo: route/sch/$(am__dirstamp) \
	route/sch/$(DEPDIR)/$(am__dirstamp)
route/sch/sfq.lo: route/sch/$(am__dirstamp) \
	route/sch/$(DEPDIR)/$(am__dirstamp)
route/sch/tbf.lo: route/sch/$(am__dirstamp) \
	route/sch/$(DEPDIR)/$(am__dirstamp)
fib_lookup/$(am__dirstamp):
	@$(MKDIR_P) fib_lookup
	@: > fib_lookup/$(am__dirstamp)
fib_lookup/$(DEPDIR)/$(am__dirstamp):
	@$(MKDIR_P) fib_lookup/$(DEPDIR)
	@: > fib_lookup/$(DEPDIR)/$(am__dirstamp)
fib_lookup/lookup.lo: fib_lookup/$(am__dirstamp) \
	fib_lookup/$(DEPDIR)/$(am__dirstamp)
fib_lookup/request.lo: fib_lookup/$(am__dirstamp) \
	fib_lookup/$(DEPDIR)/$(am__dirstamp)
route/pktloc_syntax.lo: route/$(am__dirstamp) \
	route/$(DEPDIR)/$(am__dirstamp)
route/pktloc_grammar.lo: route/$(am__dirstamp) \
	route/$(DEPDIR)/$(am__dirstamp)
route/pktloc.lo: route/$(am__dirstamp) route/$(DEPDIR)/$(am__dirstamp)
libnl-route.la: $(libnl_route_la_OBJECTS) $(libnl_route_la_DEPENDENCIES) 
	$(libnl_route_la_LINK) -rpath $(libdir) $(libnl_route_la_OBJECTS) $(libnl_route_la_LIBADD) $(LIBS)
libnl.la: $(libnl_la_OBJECTS) $(libnl_la_DEPENDENCIES) 
	$(libnl_la_LINK) -rpath $(libdir) $(libnl_la_OBJECTS) $(libnl_la_LIBADD) $(LIBS)

mostlyclean-compile:
	-rm -f *.$(OBJEXT)
	-rm -f fib_lookup/lookup.$(OBJEXT)
	-rm -f fib_lookup/lookup.lo
	-rm -f fib_lookup/request.$(OBJEXT)
	-rm -f fib_lookup/request.lo
	-rm -f genl/ctrl.$(OBJEXT)
	-rm -f genl/ctrl.lo
	-rm -f genl/family.$(OBJEXT)
	-rm -f genl/family.lo
	-rm -f genl/genl.$(OBJEXT)
	-rm -f genl/genl.lo
	-rm -f genl/mngt.$(OBJEXT)
	-rm -f genl/mngt.lo
	-rm -f netfilter/ct.$(OBJEXT)
	-rm -f netfilter/ct.lo
	-rm -f netfilter/ct_obj.$(OBJEXT)
	-rm -f netfilter/ct_obj.lo
	-rm -f netfilter/log.$(OBJEXT)
	-rm -f netfilter/log.lo
	-rm -f netfilter/log_msg.$(OBJEXT)
	-rm -f netfilter/log_msg.lo
	-rm -f netfilter/log_msg_obj.$(OBJEXT)
	-rm -f netfilter/log_msg_obj.lo
	-rm -f netfilter/log_obj.$(OBJEXT)
	-rm -f netfilter/log_obj.lo
	-rm -f netfilter/netfilter.$(OBJEXT)
	-rm -f netfilter/netfilter.lo
	-rm -f netfilter/nfnl.$(OBJEXT)
	-rm -f netfilter/nfnl.lo
	-rm -f netfilter/queue.$(OBJEXT)
	-rm -f netfilter/queue.lo
	-rm -f netfilter/queue_msg.$(OBJEXT)
	-rm -f netfilter/queue_msg.lo
	-rm -f netfilter/queue_msg_obj.$(OBJEXT)
	-rm -f netfilter/queue_msg_obj.lo
	-rm -f netfilter/queue_obj.$(OBJEXT)
	-rm -f netfilter/queue_obj.lo
	-rm -f route/addr.$(OBJEXT)
	-rm -f route/addr.lo
	-rm -f route/class.$(OBJEXT)
	-rm -f route/class.lo
	-rm -f route/class_api.$(OBJEXT)
	-rm -f route/class_api.lo
	-rm -f route/class_obj.$(OBJEXT)
	-rm -f route/class_obj.lo
	-rm -f route/cls.$(OBJEXT)
	-rm -f route/cls.lo
	-rm -f route/cls/fw.$(OBJEXT)
	-rm -f route/cls/fw.lo
	-rm -f route/cls/police.$(OBJEXT)
	-rm -f route/cls/police.lo
	-rm -f route/cls/u32.$(OBJEXT)
	-rm -f route/cls/u32.lo
	-rm -f route/cls_api.$(OBJEXT)
	-rm -f route/cls_api.lo
	-rm -f route/cls_obj.$(OBJEXT)
	-rm -f route/cls_obj.lo
	-rm -f route/link.$(OBJEXT)
	-rm -f route/link.lo
	-rm -f route/link/api.$(OBJEXT)
	-rm -f route/link/api.lo
	-rm -f route/link/vlan.$(OBJEXT)
	-rm -f route/link/vlan.lo
	-rm -f route/neigh.$(OBJEXT)
	-rm -f route/neigh.lo
	-rm -f route/neightbl.$(OBJEXT)
	-rm -f route/neightbl.lo
	-rm -f route/nexthop.$(OBJEXT)
	-rm -f route/nexthop.lo
	-rm -f route/pktloc.$(OBJEXT)
	-rm -f route/pktloc.lo
	-rm -f route/pktloc_grammar.$(OBJEXT)
	-rm -f route/pktloc_grammar.lo
	-rm -f route/pktloc_syntax.$(OBJEXT)
	-rm -f route/pktloc_syntax.lo
	-rm -f route/qdisc.$(OBJEXT)
	-rm -f route/qdisc.lo
	-rm -f route/qdisc_api.$(OBJEXT)
	-rm -f route/qdisc_api.lo
	-rm -f route/qdisc_obj.$(OBJEXT)
	-rm -f route/qdisc_obj.lo
	-rm -f route/route.$(OBJEXT)
	-rm -f route/route.lo
	-rm -f route/route_obj.$(OBJEXT)
	-rm -f route/route_obj.lo
	-rm -f route/route_utils.$(OBJEXT)
	-rm -f route/route_utils.lo
	-rm -f route/rtnl.$(OBJEXT)
	-rm -f route/rtnl.lo
	-rm -f route/rule.$(OBJEXT)
	-rm -f route/rule.lo
	-rm -f route/sch/blackhole.$(OBJEXT)
	-rm -f route/sch/blackhole.lo
	-rm -f route/sch/cbq.$(OBJEXT)
	-rm -f route/sch/cbq.lo
	-rm -f route/sch/dsmark.$(OBJEXT)
	-rm -f route/sch/dsmark.lo
	-rm -f route/sch/fifo.$(OBJEXT)
	-rm -f route/sch/fifo.lo
	-rm -f route/sch/htb.$(OBJEXT)
	-rm -f route/sch/htb.lo
	-rm -f route/sch/netem.$(OBJEXT)
	-rm -f route/sch/netem.lo
	-rm -f route/sch/prio.$(OBJEXT)
	-rm -f route/sch/prio.lo
	-rm -f route/sch/red.$(OBJEXT)
	-rm -f route/sch/red.lo
	-rm -f route/sch/sfq.$(OBJEXT)
	-rm -f route/sch/sfq.lo
	-rm -f route/sch/tbf.$(OBJEXT)
	-rm -f route/sch/tbf.lo
	-rm -f route/tc.$(OBJEXT)
	-rm -f route/tc.lo

distclean-compile:
	-rm -f *.tab.c

@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/addr.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/attr.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/cache.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/cache_mngr.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/cache_mngt.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/data.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/doc.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/error.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/handlers.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/msg.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nl.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/object.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/socket.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/utils.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@fib_lookup/$(DEPDIR)/lookup.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@fib_lookup/$(DEPDIR)/request.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@genl/$(DEPDIR)/ctrl.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@genl/$(DEPDIR)/family.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@genl/$(DEPDIR)/genl.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@genl/$(DEPDIR)/mngt.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@netfilter/$(DEPDIR)/ct.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@netfilter/$(DEPDIR)/ct_obj.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@netfilter/$(DEPDIR)/log.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@netfilter/$(DEPDIR)/log_msg.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@netfilter/$(DEPDIR)/log_msg_obj.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@netfilter/$(DEPDIR)/log_obj.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@netfilter/$(DEPDIR)/netfilter.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@netfilter/$(DEPDIR)/nfnl.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@netfilter/$(DEPDIR)/queue.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@netfilter/$(DEPDIR)/queue_msg.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@netfilter/$(DEPDIR)/queue_msg_obj.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@netfilter/$(DEPDIR)/queue_obj.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@route/$(DEPDIR)/addr.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@route/$(DEPDIR)/class.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@route/$(DEPDIR)/class_api.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@route/$(DEPDIR)/class_obj.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@route/$(DEPDIR)/cls.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@route/$(DEPDIR)/cls_api.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@route/$(DEPDIR)/cls_obj.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@route/$(DEPDIR)/link.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@route/$(DEPDIR)/neigh.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@route/$(DEPDIR)/neightbl.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@route/$(DEPDIR)/nexthop.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@route/$(DEPDIR)/pktloc.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@route/$(DEPDIR)/pktloc_grammar.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@route/$(DEPDIR)/pktloc_syntax.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@route/$(DEPDIR)/qdisc.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@route/$(DEPDIR)/qdisc_api.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@route/$(DEPDIR)/qdisc_obj.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@route/$(DEPDIR)/route.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@route/$(DEPDIR)/route_obj.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@route/$(DEPDIR)/route_utils.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@route/$(DEPDIR)/rtnl.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@route/$(DEPDIR)/rule.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@route/$(DEPDIR)/tc.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@route/cls/$(DEPDIR)/fw.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@route/cls/$(DEPDIR)/police.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@route/cls/$(DEPDIR)/u32.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@route/link/$(DEPDIR)/api.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@route/link/$(DEPDIR)/vlan.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@route/sch/$(DEPDIR)/blackhole.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@route/sch/$(DEPDIR)/cbq.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@route/sch/$(DEPDIR)/dsmark.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@route/sch/$(DEPDIR)/fifo.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@route/sch/$(DEPDIR)/htb.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@route/sch/$(DEPDIR)/netem.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@route/sch/$(DEPDIR)/prio.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@route/sch/$(DEPDIR)/red.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@route/sch/$(DEPDIR)/sfq.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@route/sch/$(DEPDIR)/tbf.Plo@am__quote@

.c.o:
@am__fastdepCC_TRUE@	depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.o$$||'`;\
@am__fastdepCC_TRUE@	$(COMPILE) -MT $@ -MD -MP -MF $$depbase.Tpo -c -o $@ $< &&\
@am__fastdepCC_TRUE@	$(am__mv) $$depbase.Tpo $$depbase.Po
@AMDEP_TRUE@@am__fastdepCC_FALSE@	source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCC_FALSE@	$(COMPILE) -c -o $@ $<

.c.obj:
@am__fastdepCC_TRUE@	depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.obj$$||'`;\
@am__fastdepCC_TRUE@	$(COMPILE) -MT $@ -MD -MP -MF $$depbase.Tpo -c -o $@ `$(CYGPATH_W) '$<'` &&\
@am__fastdepCC_TRUE@	$(am__mv) $$depbase.Tpo $$depbase.Po
@AMDEP_TRUE@@am__fastdepCC_FALSE@	source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCC_FALSE@	$(COMPILE) -c -o $@ `$(CYGPATH_W) '$<'`

.c.lo:
@am__fastdepCC_TRUE@	depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.lo$$||'`;\
@am__fastdepCC_TRUE@	$(LTCOMPILE) -MT $@ -MD -MP -MF $$depbase.Tpo -c -o $@ $< &&\
@am__fastdepCC_TRUE@	$(am__mv) $$depbase.Tpo $$depbase.Plo
@AMDEP_TRUE@@am__fastdepCC_FALSE@	source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCC_FALSE@	$(LTCOMPILE) -c -o $@ $<

mostlyclean-libtool:
	-rm -f *.lo

clean-libtool:
	-rm -rf .libs _libs
	-rm -rf fib_lookup/.libs fib_lookup/_libs
	-rm -rf genl/.libs genl/_libs
	-rm -rf netfilter/.libs netfilter/_libs
	-rm -rf route/.libs route/_libs
	-rm -rf route/cls/.libs route/cls/_libs
	-rm -rf route/link/.libs route/link/_libs
	-rm -rf route/sch/.libs route/sch/_libs

ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
	list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
	unique=`for i in $$list; do \
	    if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
	  done | \
	  $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
	      END { if (nonempty) { for (i in files) print i; }; }'`; \
	mkid -fID $$unique
tags: TAGS

TAGS:  $(HEADERS) $(SOURCES) defs.h.in $(TAGS_DEPENDENCIES) \
		$(TAGS_FILES) $(LISP)
	set x; \
	here=`pwd`; \
	list='$(SOURCES) $(HEADERS) defs.h.in $(LISP) $(TAGS_FILES)'; \
	unique=`for i in $$list; do \
	    if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
	  done | \
	  $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
	      END { if (nonempty) { for (i in files) print i; }; }'`; \
	shift; \
	if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
	  test -n "$$unique" || unique=$$empty_fix; \
	  if test $$# -gt 0; then \
	    $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
	      "$$@" $$unique; \
	  else \
	    $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
	      $$unique; \
	  fi; \
	fi
ctags: CTAGS
CTAGS:  $(HEADERS) $(SOURCES) defs.h.in $(TAGS_DEPENDENCIES) \
		$(TAGS_FILES) $(LISP)
	list='$(SOURCES) $(HEADERS) defs.h.in $(LISP) $(TAGS_FILES)'; \
	unique=`for i in $$list; do \
	    if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
	  done | \
	  $(AWK) '{ files[$$0] = 1; nonempty = 1; } \
	      END { if (nonempty) { for (i in files) print i; }; }'`; \
	test -z "$(CTAGS_ARGS)$$unique" \
	  || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
	     $$unique

GTAGS:
	here=`$(am__cd) $(top_builddir) && pwd` \
	  && $(am__cd) $(top_srcdir) \
	  && gtags -i $(GTAGS_ARGS) "$$here"

distclean-tags:
	-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags

distdir: $(DISTFILES)
	@srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
	topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
	list='$(DISTFILES)'; \
	  dist_files=`for file in $$list; do echo $$file; done | \
	  sed -e "s|^$$srcdirstrip/||;t" \
	      -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
	case $$dist_files in \
	  */*) $(MKDIR_P) `echo "$$dist_files" | \
			   sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
			   sort -u` ;; \
	esac; \
	for file in $$dist_files; do \
	  if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
	  if test -d $$d/$$file; then \
	    dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
	    if test -d "$(distdir)/$$file"; then \
	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
	    fi; \
	    if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
	      cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
	    fi; \
	    cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
	  else \
	    test -f "$(distdir)/$$file" \
	    || cp -p $$d/$$file "$(distdir)/$$file" \
	    || exit 1; \
	  fi; \
	done
check-am: all-am
check: check-am
all-am: Makefile $(LTLIBRARIES) defs.h
installdirs:
	for dir in "$(DESTDIR)$(libdir)"; do \
	  test -z "$$dir" || $(MKDIR_P) "$$dir"; \
	done
install: install-am
install-exec: install-exec-am
install-data: install-data-am
uninstall: uninstall-am

install-am: all-am
	@$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am

installcheck: installcheck-am
install-strip:
	$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
	  install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
	  `test -z '$(STRIP)' || \
	    echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
mostlyclean-generic:

clean-generic:
	-test -z "$(CLEANFILES)" || rm -f $(CLEANFILES)

distclean-generic:
	-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
	-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
	-rm -f fib_lookup/$(DEPDIR)/$(am__dirstamp)
	-rm -f fib_lookup/$(am__dirstamp)
	-rm -f genl/$(DEPDIR)/$(am__dirstamp)
	-rm -f genl/$(am__dirstamp)
	-rm -f netfilter/$(DEPDIR)/$(am__dirstamp)
	-rm -f netfilter/$(am__dirstamp)
	-rm -f route/$(DEPDIR)/$(am__dirstamp)
	-rm -f route/$(am__dirstamp)
	-rm -f route/cls/$(DEPDIR)/$(am__dirstamp)
	-rm -f route/cls/$(am__dirstamp)
	-rm -f route/link/$(DEPDIR)/$(am__dirstamp)
	-rm -f route/link/$(am__dirstamp)
	-rm -f route/sch/$(DEPDIR)/$(am__dirstamp)
	-rm -f route/sch/$(am__dirstamp)

maintainer-clean-generic:
	@echo "This command is intended for maintainers to use"
	@echo "it deletes files that may require special tools to rebuild."
clean: clean-am

clean-am: clean-generic clean-libLTLIBRARIES clean-libtool \
	mostlyclean-am

distclean: distclean-am
	-rm -rf ./$(DEPDIR) fib_lookup/$(DEPDIR) genl/$(DEPDIR) netfilter/$(DEPDIR) route/$(DEPDIR) route/cls/$(DEPDIR) route/link/$(DEPDIR) route/sch/$(DEPDIR)
	-rm -f Makefile
distclean-am: clean-am distclean-compile distclean-generic \
	distclean-hdr distclean-tags

dvi: dvi-am

dvi-am:

html: html-am

html-am:

info: info-am

info-am:

install-data-am:

install-dvi: install-dvi-am

install-dvi-am:

install-exec-am: install-libLTLIBRARIES

install-html: install-html-am

install-html-am:

install-info: install-info-am

install-info-am:

install-man:

install-pdf: install-pdf-am

install-pdf-am:

install-ps: install-ps-am

install-ps-am:

installcheck-am:

maintainer-clean: maintainer-clean-am
	-rm -rf ./$(DEPDIR) fib_lookup/$(DEPDIR) genl/$(DEPDIR) netfilter/$(DEPDIR) route/$(DEPDIR) route/cls/$(DEPDIR) route/link/$(DEPDIR) route/sch/$(DEPDIR)
	-rm -f Makefile
maintainer-clean-am: distclean-am maintainer-clean-generic

mostlyclean: mostlyclean-am

mostlyclean-am: mostlyclean-compile mostlyclean-generic \
	mostlyclean-libtool

pdf: pdf-am

pdf-am:

ps: ps-am

ps-am:

uninstall-am: uninstall-libLTLIBRARIES

.MAKE: all install-am install-strip

.PHONY: CTAGS GTAGS all all-am check check-am clean clean-generic \
	clean-libLTLIBRARIES clean-libtool ctags distclean \
	distclean-compile distclean-generic distclean-hdr \
	distclean-libtool distclean-tags distdir dvi dvi-am html \
	html-am info info-am install install-am install-data \
	install-data-am install-dvi install-dvi-am install-exec \
	install-exec-am install-html install-html-am install-info \
	install-info-am install-libLTLIBRARIES install-man install-pdf \
	install-pdf-am install-ps install-ps-am install-strip \
	installcheck installcheck-am installdirs maintainer-clean \
	maintainer-clean-generic mostlyclean mostlyclean-compile \
	mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \
	tags uninstall uninstall-am uninstall-libLTLIBRARIES


# Hack to avoid using ylwrap. It does not function correctly in combination
# with --header-file=
route/pktloc_grammar.h: route/pktloc_grammar.c
route/pktloc_grammar.c: route/pktloc_grammar.l
	$(LEX) --header-file=route/pktloc_grammar.h $(LFLAGS) -o $@ $^

route/pktloc_syntax.h: route/pktloc_syntax.c
route/pktloc_syntax.c: route/pktloc_syntax.y
	$(YACC) -d $(YFLAGS) -o $@ $^

# Tell versions [3.59,3.63) of GNU make to not export all variables.
# Otherwise a system limit (for SysV at least) may be exceeded.
.NOEXPORT:
