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

# Copyright (C) 1994-2014 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@

# This file is used for tool tests, and also in perf/Makefile.am.

# This file should be included (directly or indirectly) by every
# Makefile.am that builds programs.  And also the top-level Makefile.am.

#----------------------------------------------------------------------------
# Global stuff
#----------------------------------------------------------------------------


VPATH = @srcdir@
am__is_gnu_make = { \
  if test -z '$(MAKELEVEL)'; then \
    false; \
  elif test -n '$(MAKE_HOST)'; then \
    true; \
  elif test -n '$(MAKE_VERSION)' && test -n '$(CURDIR)'; then \
    true; \
  else \
    false; \
  fi; \
}
am__make_running_with_option = \
  case $${target_option-} in \
      ?) ;; \
      *) echo "am__make_running_with_option: internal error: invalid" \
              "target option '$${target_option-}' specified" >&2; \
         exit 1;; \
  esac; \
  has_opt=no; \
  sane_makeflags=$$MAKEFLAGS; \
  if $(am__is_gnu_make); then \
    sane_makeflags=$$MFLAGS; \
  else \
    case $$MAKEFLAGS in \
      *\\[\ \	]*) \
        bs=\\; \
        sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \
          | sed "s/$$bs$$bs[$$bs $$bs	]*//g"`;; \
    esac; \
  fi; \
  skip_next=no; \
  strip_trailopt () \
  { \
    flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \
  }; \
  for flg in $$sane_makeflags; do \
    test $$skip_next = yes && { skip_next=no; continue; }; \
    case $$flg in \
      *=*|--*) continue;; \
        -*I) strip_trailopt 'I'; skip_next=yes;; \
      -*I?*) strip_trailopt 'I';; \
        -*O) strip_trailopt 'O'; skip_next=yes;; \
      -*O?*) strip_trailopt 'O';; \
        -*l) strip_trailopt 'l'; skip_next=yes;; \
      -*l?*) strip_trailopt 'l';; \
      -[dEDm]) skip_next=yes;; \
      -[JT]) skip_next=yes;; \
    esac; \
    case $$flg in \
      *$$target_option*) has_opt=yes; break;; \
    esac; \
  done; \
  test $$has_opt = yes
am__make_dryrun = (target_option=n; $(am__make_running_with_option))
am__make_keepgoing = (target_option=k; $(am__make_running_with_option))
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@
@COMPILER_IS_CLANG_TRUE@am__append_1 = -Wno-cast-align -Wno-self-assign \
@COMPILER_IS_CLANG_TRUE@                  -Wno-tautological-compare

@SOLARIS_XPG_SYMBOLS_PRESENT_TRUE@am__append_2 = -Wl,-M,$(top_srcdir)/solaris/vgpreload-solaris.mapfile

# The Android toolchain includes all kinds of stdlib helpers present in
# bionic which is bad because we are not linking with it and the Android
# linker will panic.
@VGCONF_PLATVARIANT_IS_ANDROID_TRUE@am__append_3 = -nostdlib
@VGCONF_HAVE_PLATFORM_SEC_TRUE@am__append_4 = -DVGA_SEC_@VGCONF_ARCH_SEC@=1  \
@VGCONF_HAVE_PLATFORM_SEC_TRUE@		-DVGP_SEC_@VGCONF_ARCH_PRI@_@VGCONF_OS@=1


# Make sure that all test programs have threaded errno.
# Disable largefile support as there are test cases explictly enabling it.
@VGCONF_OS_IS_SOLARIS_TRUE@am__append_5 = -D_REENTRANT @SOLARIS_UNDEF_LARGESOURCE@
@COMPILER_IS_CLANG_TRUE@am__append_6 = -Wno-format-extra-args \
@COMPILER_IS_CLANG_TRUE@	-Wno-literal-range \
@COMPILER_IS_CLANG_TRUE@	-Wno-tautological-constant-out-of-range-compare \
@COMPILER_IS_CLANG_TRUE@	-Wno-self-assign -Wno-string-plus-int \
@COMPILER_IS_CLANG_TRUE@	-Wno-uninitialized -Wno-unused-value # \
@COMPILER_IS_CLANG_TRUE@	clang 3.0.0
@COMPILER_IS_CLANG_TRUE@am__append_7 = -Wno-unused-private-field    # drd/tests/tsan_unittest.cpp

# Arch-specific tests.
@VGCONF_ARCHS_INCLUDE_X86_TRUE@am__append_8 = x86
@VGCONF_ARCHS_INCLUDE_AMD64_TRUE@am__append_9 = amd64
@VGCONF_ARCHS_INCLUDE_PPC32_TRUE@am__append_10 = ppc32
@VGCONF_ARCHS_INCLUDE_PPC64_TRUE@am__append_11 = ppc64
@VGCONF_ARCHS_INCLUDE_ARM_TRUE@am__append_12 = arm
@VGCONF_ARCHS_INCLUDE_ARM64_TRUE@am__append_13 = arm64
@VGCONF_ARCHS_INCLUDE_S390X_TRUE@am__append_14 = s390x
@VGCONF_ARCHS_INCLUDE_MIPS32_TRUE@am__append_15 = mips32
@VGCONF_ARCHS_INCLUDE_MIPS64_TRUE@am__append_16 = mips64
@VGCONF_ARCHS_INCLUDE_TILEGX_TRUE@am__append_17 = tilegx

# OS-specific tests
@VGCONF_OS_IS_LINUX_TRUE@am__append_18 = linux
@VGCONF_OS_IS_DARWIN_TRUE@am__append_19 = darwin
@VGCONF_OS_IS_SOLARIS_TRUE@am__append_20 = solaris

# Platform-specific tests
@VGCONF_PLATFORMS_INCLUDE_AMD64_LINUX_TRUE@am__append_21 = amd64-linux
@VGCONF_PLATFORMS_INCLUDE_X86_LINUX_TRUE@am__append_22 = x86-linux
@VGCONF_PLATFORMS_INCLUDE_AMD64_DARWIN_TRUE@am__append_23 = amd64-darwin
@VGCONF_PLATFORMS_INCLUDE_X86_DARWIN_TRUE@am__append_24 = x86-darwin
@VGCONF_PLATFORMS_INCLUDE_AMD64_SOLARIS_TRUE@am__append_25 = amd64-solaris
@VGCONF_PLATFORMS_INCLUDE_X86_SOLARIS_TRUE@am__append_26 = x86-solaris
check_PROGRAMS = args$(EXEEXT) async-sigs$(EXEEXT) bitfield1$(EXEEXT) \
	bug129866$(EXEEXT) bug234814$(EXEEXT) closeall$(EXEEXT) \
	coolo_strlen$(EXEEXT) discard$(EXEEXT) exec-sigmask$(EXEEXT) \
	execve$(EXEEXT) faultstatus$(EXEEXT) fcntl_setown$(EXEEXT) \
	fdleak_cmsg$(EXEEXT) fdleak_creat$(EXEEXT) fdleak_dup$(EXEEXT) \
	fdleak_dup2$(EXEEXT) fdleak_fcntl$(EXEEXT) \
	fdleak_ipv4$(EXEEXT) fdleak_open$(EXEEXT) fdleak_pipe$(EXEEXT) \
	fdleak_socketpair$(EXEEXT) floored$(EXEEXT) fork$(EXEEXT) \
	fucomip$(EXEEXT) ioctl_moans$(EXEEXT) libvex_test$(EXEEXT) \
	libvexmultiarch_test$(EXEEXT) manythreads$(EXEEXT) \
	mmap_fcntl_bug$(EXEEXT) munmap_exe$(EXEEXT) \
	map_unaligned$(EXEEXT) map_unmap$(EXEEXT) mq$(EXEEXT) \
	nocwd$(EXEEXT) pending$(EXEEXT) procfs-cmdline-exe$(EXEEXT) \
	pselect_alarm$(EXEEXT) pselect_sigmask_null$(EXEEXT) \
	pth_atfork1$(EXEEXT) pth_blockedsig$(EXEEXT) \
	pth_cancel1$(EXEEXT) pth_cancel2$(EXEEXT) \
	pth_cvsimple$(EXEEXT) pth_empty$(EXEEXT) pth_exit$(EXEEXT) \
	pth_exit2$(EXEEXT) pth_mutexspeed$(EXEEXT) pth_once$(EXEEXT) \
	pth_rwlock$(EXEEXT) pth_stackalign$(EXEEXT) \
	pth_term_signal$(EXEEXT) rcrl$(EXEEXT) readline1$(EXEEXT) \
	require-text-symbol$(EXEEXT) res_search$(EXEEXT) \
	resolv$(EXEEXT) rlimit_nofile$(EXEEXT) selfrun$(EXEEXT) \
	sem$(EXEEXT) semlimit$(EXEEXT) sha1_test$(EXEEXT) \
	shortpush$(EXEEXT) shorts$(EXEEXT) stackgrowth$(EXEEXT) \
	sigstackgrowth$(EXEEXT) syscall-restart1$(EXEEXT) \
	syscall-restart2$(EXEEXT) syslog$(EXEEXT) system$(EXEEXT) \
	thread-exits$(EXEEXT) threaded-fork$(EXEEXT) \
	threadederrno$(EXEEXT) timestamp$(EXEEXT) tls$(EXEEXT) \
	tls.so$(EXEEXT) tls2.so$(EXEEXT) unit_debuglog$(EXEEXT) \
	valgrind_cpp_test$(EXEEXT) vgprintf$(EXEEXT) \
	coolo_sigaction$(EXEEXT) gxx304$(EXEEXT) \
	process_vm_readv_writev$(EXEEXT) $(am__EXEEXT_1) \
	$(am__EXEEXT_2) $(am__EXEEXT_3) $(am__EXEEXT_4)
@HAVE_NESTED_FUNCTIONS_TRUE@am__append_27 = nestedfns

# This doesn't appear to be compilable on Darwin.
@VGCONF_OS_IS_DARWIN_FALSE@am__append_28 = rlimit64_nofile \
@VGCONF_OS_IS_DARWIN_FALSE@        ppoll_alarm


# clang does not know -ansi
@COMPILER_IS_CLANG_FALSE@am__append_29 = ansi
@BUILD_IFUNC_TESTS_TRUE@am__append_30 = ifunc
@VGCONF_OS_IS_SOLARIS_TRUE@am__append_31 = --std=c99
@VGCONF_OS_IS_SOLARIS_TRUE@am__append_32 = -U_REENTRANT
@VGCONF_OS_IS_SOLARIS_TRUE@am__append_33 = -Du_int32_t=uint32_t
@VGCONF_OS_IS_SOLARIS_TRUE@am__append_34 = --std=c99
subdir = none/tests
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
	$(ACLOCAL_M4)
DIST_COMMON = $(srcdir)/Makefile.am $(dist_noinst_SCRIPTS) \
	$(noinst_HEADERS) $(am__DIST_COMMON)
mkinstalldirs = $(install_sh) -d
CONFIG_HEADER = $(top_builddir)/config.h
CONFIG_CLEAN_FILES =
CONFIG_CLEAN_VPATH_FILES =
@HAVE_NESTED_FUNCTIONS_TRUE@am__EXEEXT_1 = nestedfns$(EXEEXT)
@VGCONF_OS_IS_DARWIN_FALSE@am__EXEEXT_2 = rlimit64_nofile$(EXEEXT) \
@VGCONF_OS_IS_DARWIN_FALSE@	ppoll_alarm$(EXEEXT)
@COMPILER_IS_CLANG_FALSE@am__EXEEXT_3 = ansi$(EXEEXT)
@BUILD_IFUNC_TESTS_TRUE@am__EXEEXT_4 = ifunc$(EXEEXT)
ansi_SOURCES = ansi.c
ansi_OBJECTS = ansi-ansi.$(OBJEXT)
ansi_LDADD = $(LDADD)
ansi_LINK = $(CCLD) $(ansi_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) \
	-o $@
args_SOURCES = args.c
args_OBJECTS = args.$(OBJEXT)
args_LDADD = $(LDADD)
async_sigs_SOURCES = async-sigs.c
async_sigs_OBJECTS = async-sigs.$(OBJEXT)
async_sigs_LDADD = $(LDADD)
bitfield1_SOURCES = bitfield1.c
bitfield1_OBJECTS = bitfield1.$(OBJEXT)
bitfield1_LDADD = $(LDADD)
bug129866_SOURCES = bug129866.c
bug129866_OBJECTS = bug129866.$(OBJEXT)
bug129866_LDADD = $(LDADD)
bug234814_SOURCES = bug234814.c
bug234814_OBJECTS = bug234814.$(OBJEXT)
bug234814_LDADD = $(LDADD)
closeall_SOURCES = closeall.c
closeall_OBJECTS = closeall.$(OBJEXT)
closeall_LDADD = $(LDADD)
am_coolo_sigaction_OBJECTS = coolo_sigaction.$(OBJEXT)
coolo_sigaction_OBJECTS = $(am_coolo_sigaction_OBJECTS)
coolo_sigaction_LDADD = $(LDADD)
coolo_strlen_SOURCES = coolo_strlen.c
coolo_strlen_OBJECTS = coolo_strlen.$(OBJEXT)
coolo_strlen_LDADD = $(LDADD)
discard_SOURCES = discard.c
discard_OBJECTS = discard.$(OBJEXT)
discard_LDADD = $(LDADD)
exec_sigmask_SOURCES = exec-sigmask.c
exec_sigmask_OBJECTS = exec-sigmask.$(OBJEXT)
exec_sigmask_LDADD = $(LDADD)
execve_SOURCES = execve.c
execve_OBJECTS = execve-execve.$(OBJEXT)
execve_LDADD = $(LDADD)
execve_LINK = $(CCLD) $(execve_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) \
	$(LDFLAGS) -o $@
faultstatus_SOURCES = faultstatus.c
faultstatus_OBJECTS = faultstatus.$(OBJEXT)
faultstatus_LDADD = $(LDADD)
fcntl_setown_SOURCES = fcntl_setown.c
fcntl_setown_OBJECTS = fcntl_setown.$(OBJEXT)
fcntl_setown_DEPENDENCIES =
fdleak_cmsg_SOURCES = fdleak_cmsg.c
fdleak_cmsg_OBJECTS = fdleak_cmsg-fdleak_cmsg.$(OBJEXT)
fdleak_cmsg_DEPENDENCIES =
fdleak_cmsg_LINK = $(CCLD) $(fdleak_cmsg_CFLAGS) $(CFLAGS) \
	$(AM_LDFLAGS) $(LDFLAGS) -o $@
fdleak_creat_SOURCES = fdleak_creat.c
fdleak_creat_OBJECTS = fdleak_creat.$(OBJEXT)
fdleak_creat_DEPENDENCIES =
fdleak_dup_SOURCES = fdleak_dup.c
fdleak_dup_OBJECTS = fdleak_dup.$(OBJEXT)
fdleak_dup_LDADD = $(LDADD)
fdleak_dup2_SOURCES = fdleak_dup2.c
fdleak_dup2_OBJECTS = fdleak_dup2.$(OBJEXT)
fdleak_dup2_LDADD = $(LDADD)
fdleak_fcntl_SOURCES = fdleak_fcntl.c
fdleak_fcntl_OBJECTS = fdleak_fcntl.$(OBJEXT)
fdleak_fcntl_LDADD = $(LDADD)
fdleak_ipv4_SOURCES = fdleak_ipv4.c
fdleak_ipv4_OBJECTS = fdleak_ipv4.$(OBJEXT)
fdleak_ipv4_DEPENDENCIES =
fdleak_open_SOURCES = fdleak_open.c
fdleak_open_OBJECTS = fdleak_open.$(OBJEXT)
fdleak_open_LDADD = $(LDADD)
fdleak_pipe_SOURCES = fdleak_pipe.c
fdleak_pipe_OBJECTS = fdleak_pipe.$(OBJEXT)
fdleak_pipe_LDADD = $(LDADD)
fdleak_socketpair_SOURCES = fdleak_socketpair.c
fdleak_socketpair_OBJECTS = fdleak_socketpair.$(OBJEXT)
fdleak_socketpair_DEPENDENCIES =
floored_SOURCES = floored.c
floored_OBJECTS = floored.$(OBJEXT)
floored_DEPENDENCIES =
fork_SOURCES = fork.c
fork_OBJECTS = fork.$(OBJEXT)
fork_LDADD = $(LDADD)
fucomip_SOURCES = fucomip.c
fucomip_OBJECTS = fucomip.$(OBJEXT)
fucomip_LDADD = $(LDADD)
am_gxx304_OBJECTS = gxx304.$(OBJEXT)
gxx304_OBJECTS = $(am_gxx304_OBJECTS)
gxx304_LDADD = $(LDADD)
ifunc_SOURCES = ifunc.c
ifunc_OBJECTS = ifunc.$(OBJEXT)
ifunc_LDADD = $(LDADD)
ioctl_moans_SOURCES = ioctl_moans.c
ioctl_moans_OBJECTS = ioctl_moans.$(OBJEXT)
ioctl_moans_LDADD = $(LDADD)
libvex_test_SOURCES = libvex_test.c
libvex_test_OBJECTS = libvex_test-libvex_test.$(OBJEXT)
libvex_test_DEPENDENCIES =  \
	../../VEX/libvex-@VGCONF_ARCH_PRI@-@VGCONF_OS@.a
libvex_test_LINK = $(CCLD) $(libvex_test_CFLAGS) $(CFLAGS) \
	$(AM_LDFLAGS) $(LDFLAGS) -o $@
am_libvexmultiarch_test_OBJECTS =  \
	libvexmultiarch_test-libvex_test.$(OBJEXT)
libvexmultiarch_test_OBJECTS = $(am_libvexmultiarch_test_OBJECTS)
libvexmultiarch_test_DEPENDENCIES =  \
	../../VEX/libvexmultiarch-@VGCONF_ARCH_PRI@-@VGCONF_OS@.a \
	../../VEX/libvex-@VGCONF_ARCH_PRI@-@VGCONF_OS@.a
libvexmultiarch_test_LINK = $(CCLD) $(libvexmultiarch_test_CFLAGS) \
	$(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@
manythreads_SOURCES = manythreads.c
manythreads_OBJECTS = manythreads.$(OBJEXT)
manythreads_DEPENDENCIES =
map_unaligned_SOURCES = map_unaligned.c
map_unaligned_OBJECTS = map_unaligned.$(OBJEXT)
map_unaligned_LDADD = $(LDADD)
map_unmap_SOURCES = map_unmap.c
map_unmap_OBJECTS = map_unmap.$(OBJEXT)
map_unmap_LDADD = $(LDADD)
mmap_fcntl_bug_SOURCES = mmap_fcntl_bug.c
mmap_fcntl_bug_OBJECTS = mmap_fcntl_bug.$(OBJEXT)
mmap_fcntl_bug_LDADD = $(LDADD)
mq_SOURCES = mq.c
mq_OBJECTS = mq.$(OBJEXT)
mq_DEPENDENCIES =
munmap_exe_SOURCES = munmap_exe.c
munmap_exe_OBJECTS = munmap_exe.$(OBJEXT)
munmap_exe_LDADD = $(LDADD)
nestedfns_SOURCES = nestedfns.c
nestedfns_OBJECTS = nestedfns-nestedfns.$(OBJEXT)
nestedfns_LDADD = $(LDADD)
nestedfns_LINK = $(CCLD) $(nestedfns_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) \
	$(LDFLAGS) -o $@
nocwd_SOURCES = nocwd.c
nocwd_OBJECTS = nocwd.$(OBJEXT)
nocwd_LDADD = $(LDADD)
pending_SOURCES = pending.c
pending_OBJECTS = pending.$(OBJEXT)
pending_LDADD = $(LDADD)
ppoll_alarm_SOURCES = ppoll_alarm.c
ppoll_alarm_OBJECTS = ppoll_alarm.$(OBJEXT)
ppoll_alarm_DEPENDENCIES =
process_vm_readv_writev_SOURCES = process_vm_readv_writev.c
process_vm_readv_writev_OBJECTS = process_vm_readv_writev.$(OBJEXT)
process_vm_readv_writev_LDADD = $(LDADD)
procfs_cmdline_exe_SOURCES = procfs-cmdline-exe.c
procfs_cmdline_exe_OBJECTS = procfs-cmdline-exe.$(OBJEXT)
procfs_cmdline_exe_LDADD = $(LDADD)
pselect_alarm_SOURCES = pselect_alarm.c
pselect_alarm_OBJECTS = pselect_alarm.$(OBJEXT)
pselect_alarm_DEPENDENCIES =
pselect_sigmask_null_SOURCES = pselect_sigmask_null.c
pselect_sigmask_null_OBJECTS = pselect_sigmask_null.$(OBJEXT)
pselect_sigmask_null_LDADD = $(LDADD)
pth_atfork1_SOURCES = pth_atfork1.c
pth_atfork1_OBJECTS = pth_atfork1.$(OBJEXT)
pth_atfork1_DEPENDENCIES =
pth_blockedsig_SOURCES = pth_blockedsig.c
pth_blockedsig_OBJECTS = pth_blockedsig.$(OBJEXT)
pth_blockedsig_DEPENDENCIES =
pth_cancel1_SOURCES = pth_cancel1.c
pth_cancel1_OBJECTS = pth_cancel1-pth_cancel1.$(OBJEXT)
pth_cancel1_DEPENDENCIES =
pth_cancel1_LINK = $(CCLD) $(pth_cancel1_CFLAGS) $(CFLAGS) \
	$(AM_LDFLAGS) $(LDFLAGS) -o $@
pth_cancel2_SOURCES = pth_cancel2.c
pth_cancel2_OBJECTS = pth_cancel2.$(OBJEXT)
pth_cancel2_DEPENDENCIES =
pth_cvsimple_SOURCES = pth_cvsimple.c
pth_cvsimple_OBJECTS = pth_cvsimple.$(OBJEXT)
pth_cvsimple_DEPENDENCIES =
pth_empty_SOURCES = pth_empty.c
pth_empty_OBJECTS = pth_empty.$(OBJEXT)
pth_empty_DEPENDENCIES =
pth_exit_SOURCES = pth_exit.c
pth_exit_OBJECTS = pth_exit.$(OBJEXT)
pth_exit_DEPENDENCIES =
pth_exit2_SOURCES = pth_exit2.c
pth_exit2_OBJECTS = pth_exit2.$(OBJEXT)
pth_exit2_DEPENDENCIES =
pth_mutexspeed_SOURCES = pth_mutexspeed.c
pth_mutexspeed_OBJECTS = pth_mutexspeed.$(OBJEXT)
pth_mutexspeed_DEPENDENCIES =
pth_once_SOURCES = pth_once.c
pth_once_OBJECTS = pth_once.$(OBJEXT)
pth_once_DEPENDENCIES =
pth_rwlock_SOURCES = pth_rwlock.c
pth_rwlock_OBJECTS = pth_rwlock-pth_rwlock.$(OBJEXT)
pth_rwlock_DEPENDENCIES =
pth_rwlock_LINK = $(CCLD) $(pth_rwlock_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) \
	$(LDFLAGS) -o $@
pth_stackalign_SOURCES = pth_stackalign.c
pth_stackalign_OBJECTS = pth_stackalign.$(OBJEXT)
pth_stackalign_DEPENDENCIES =
pth_term_signal_SOURCES = pth_term_signal.c
pth_term_signal_OBJECTS = pth_term_signal.$(OBJEXT)
pth_term_signal_DEPENDENCIES =
rcrl_SOURCES = rcrl.c
rcrl_OBJECTS = rcrl.$(OBJEXT)
rcrl_LDADD = $(LDADD)
readline1_SOURCES = readline1.c
readline1_OBJECTS = readline1.$(OBJEXT)
readline1_LDADD = $(LDADD)
require_text_symbol_SOURCES = require-text-symbol.c
require_text_symbol_OBJECTS = require-text-symbol.$(OBJEXT)
require_text_symbol_LDADD = $(LDADD)
res_search_SOURCES = res_search.c
res_search_OBJECTS = res_search.$(OBJEXT)
res_search_DEPENDENCIES =
resolv_SOURCES = resolv.c
resolv_OBJECTS = resolv-resolv.$(OBJEXT)
resolv_DEPENDENCIES =
resolv_LINK = $(CCLD) $(resolv_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) \
	$(LDFLAGS) -o $@
rlimit64_nofile_SOURCES = rlimit64_nofile.c
rlimit64_nofile_OBJECTS = rlimit64_nofile.$(OBJEXT)
rlimit64_nofile_LDADD = $(LDADD)
rlimit_nofile_SOURCES = rlimit_nofile.c
rlimit_nofile_OBJECTS = rlimit_nofile.$(OBJEXT)
rlimit_nofile_LDADD = $(LDADD)
selfrun_SOURCES = selfrun.c
selfrun_OBJECTS = selfrun.$(OBJEXT)
selfrun_LDADD = $(LDADD)
sem_SOURCES = sem.c
sem_OBJECTS = sem.$(OBJEXT)
sem_LDADD = $(LDADD)
semlimit_SOURCES = semlimit.c
semlimit_OBJECTS = semlimit.$(OBJEXT)
semlimit_DEPENDENCIES =
sha1_test_SOURCES = sha1_test.c
sha1_test_OBJECTS = sha1_test-sha1_test.$(OBJEXT)
sha1_test_LDADD = $(LDADD)
sha1_test_LINK = $(CCLD) $(sha1_test_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) \
	$(LDFLAGS) -o $@
shortpush_SOURCES = shortpush.c
shortpush_OBJECTS = shortpush.$(OBJEXT)
shortpush_LDADD = $(LDADD)
shorts_SOURCES = shorts.c
shorts_OBJECTS = shorts.$(OBJEXT)
shorts_LDADD = $(LDADD)
sigstackgrowth_SOURCES = sigstackgrowth.c
sigstackgrowth_OBJECTS = sigstackgrowth.$(OBJEXT)
sigstackgrowth_LDADD = $(LDADD)
stackgrowth_SOURCES = stackgrowth.c
stackgrowth_OBJECTS = stackgrowth.$(OBJEXT)
stackgrowth_LDADD = $(LDADD)
syscall_restart1_SOURCES = syscall-restart1.c
syscall_restart1_OBJECTS = syscall-restart1.$(OBJEXT)
syscall_restart1_LDADD = $(LDADD)
syscall_restart2_SOURCES = syscall-restart2.c
syscall_restart2_OBJECTS = syscall-restart2.$(OBJEXT)
syscall_restart2_LDADD = $(LDADD)
syslog_SOURCES = syslog.c
syslog_OBJECTS = syslog.$(OBJEXT)
syslog_LDADD = $(LDADD)
system_SOURCES = system.c
system_OBJECTS = system.$(OBJEXT)
system_LDADD = $(LDADD)
thread_exits_SOURCES = thread-exits.c
thread_exits_OBJECTS = thread-exits.$(OBJEXT)
thread_exits_DEPENDENCIES =
threaded_fork_SOURCES = threaded-fork.c
threaded_fork_OBJECTS = threaded-fork.$(OBJEXT)
threaded_fork_DEPENDENCIES =
threadederrno_SOURCES = threadederrno.c
threadederrno_OBJECTS = threadederrno-threadederrno.$(OBJEXT)
threadederrno_DEPENDENCIES =
threadederrno_LINK = $(CCLD) $(threadederrno_CFLAGS) $(CFLAGS) \
	$(AM_LDFLAGS) $(LDFLAGS) -o $@
timestamp_SOURCES = timestamp.c
timestamp_OBJECTS = timestamp.$(OBJEXT)
timestamp_LDADD = $(LDADD)
am_tls_OBJECTS = tls.$(OBJEXT) tls2.$(OBJEXT)
tls_OBJECTS = $(am_tls_OBJECTS)
tls_LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(tls_LDFLAGS) $(LDFLAGS) -o \
	$@
am_tls_so_OBJECTS = tls_so-tls_so.$(OBJEXT)
tls_so_OBJECTS = $(am_tls_so_OBJECTS)
tls_so_LINK = $(CCLD) $(tls_so_CFLAGS) $(CFLAGS) $(tls_so_LDFLAGS) \
	$(LDFLAGS) -o $@
am_tls2_so_OBJECTS = tls2_so.$(OBJEXT)
tls2_so_OBJECTS = $(am_tls2_so_OBJECTS)
tls2_so_LDADD = $(LDADD)
tls2_so_LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(tls2_so_LDFLAGS) \
	$(LDFLAGS) -o $@
unit_debuglog_SOURCES = unit_debuglog.c
unit_debuglog_OBJECTS = unit_debuglog.$(OBJEXT)
unit_debuglog_LDADD = $(LDADD)
am_valgrind_cpp_test_OBJECTS = valgrind_cpp_test.$(OBJEXT)
valgrind_cpp_test_OBJECTS = $(am_valgrind_cpp_test_OBJECTS)
valgrind_cpp_test_DEPENDENCIES =
vgprintf_SOURCES = vgprintf.c
vgprintf_OBJECTS = vgprintf.$(OBJEXT)
vgprintf_LDADD = $(LDADD)
SCRIPTS = $(dist_noinst_SCRIPTS)
AM_V_P = $(am__v_P_@AM_V@)
am__v_P_ = $(am__v_P_@AM_DEFAULT_V@)
am__v_P_0 = false
am__v_P_1 = :
AM_V_GEN = $(am__v_GEN_@AM_V@)
am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@)
am__v_GEN_0 = @echo "  GEN     " $@;
am__v_GEN_1 = 
AM_V_at = $(am__v_at_@AM_V@)
am__v_at_ = $(am__v_at_@AM_DEFAULT_V@)
am__v_at_0 = @
am__v_at_1 = 
DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)
depcomp = $(SHELL) $(top_srcdir)/depcomp
am__depfiles_maybe = depfiles
am__mv = mv -f
AM_V_lt = $(am__v_lt_@AM_V@)
am__v_lt_ = $(am__v_lt_@AM_DEFAULT_V@)
am__v_lt_0 = --silent
am__v_lt_1 = 
COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
	$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
AM_V_CC = $(am__v_CC_@AM_V@)
am__v_CC_ = $(am__v_CC_@AM_DEFAULT_V@)
am__v_CC_0 = @echo "  CC      " $@;
am__v_CC_1 = 
CCLD = $(CC)
LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@
AM_V_CCLD = $(am__v_CCLD_@AM_V@)
am__v_CCLD_ = $(am__v_CCLD_@AM_DEFAULT_V@)
am__v_CCLD_0 = @echo "  CCLD    " $@;
am__v_CCLD_1 = 
CXXCOMPILE = $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \
	$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS)
AM_V_CXX = $(am__v_CXX_@AM_V@)
am__v_CXX_ = $(am__v_CXX_@AM_DEFAULT_V@)
am__v_CXX_0 = @echo "  CXX     " $@;
am__v_CXX_1 = 
CXXLD = $(CXX)
CXXLINK = $(CXXLD) $(AM_CXXFLAGS) $(CXXFLAGS) $(AM_LDFLAGS) $(LDFLAGS) \
	-o $@
AM_V_CXXLD = $(am__v_CXXLD_@AM_V@)
am__v_CXXLD_ = $(am__v_CXXLD_@AM_DEFAULT_V@)
am__v_CXXLD_0 = @echo "  CXXLD   " $@;
am__v_CXXLD_1 = 
SOURCES = ansi.c args.c async-sigs.c bitfield1.c bug129866.c \
	bug234814.c closeall.c $(coolo_sigaction_SOURCES) \
	coolo_strlen.c discard.c exec-sigmask.c execve.c faultstatus.c \
	fcntl_setown.c fdleak_cmsg.c fdleak_creat.c fdleak_dup.c \
	fdleak_dup2.c fdleak_fcntl.c fdleak_ipv4.c fdleak_open.c \
	fdleak_pipe.c fdleak_socketpair.c floored.c fork.c fucomip.c \
	$(gxx304_SOURCES) ifunc.c ioctl_moans.c libvex_test.c \
	$(libvexmultiarch_test_SOURCES) manythreads.c map_unaligned.c \
	map_unmap.c mmap_fcntl_bug.c mq.c munmap_exe.c nestedfns.c \
	nocwd.c pending.c ppoll_alarm.c process_vm_readv_writev.c \
	procfs-cmdline-exe.c pselect_alarm.c pselect_sigmask_null.c \
	pth_atfork1.c pth_blockedsig.c pth_cancel1.c pth_cancel2.c \
	pth_cvsimple.c pth_empty.c pth_exit.c pth_exit2.c \
	pth_mutexspeed.c pth_once.c pth_rwlock.c pth_stackalign.c \
	pth_term_signal.c rcrl.c readline1.c require-text-symbol.c \
	res_search.c resolv.c rlimit64_nofile.c rlimit_nofile.c \
	selfrun.c sem.c semlimit.c sha1_test.c shortpush.c shorts.c \
	sigstackgrowth.c stackgrowth.c syscall-restart1.c \
	syscall-restart2.c syslog.c system.c thread-exits.c \
	threaded-fork.c threadederrno.c timestamp.c $(tls_SOURCES) \
	$(tls_so_SOURCES) $(tls2_so_SOURCES) unit_debuglog.c \
	$(valgrind_cpp_test_SOURCES) vgprintf.c
DIST_SOURCES = ansi.c args.c async-sigs.c bitfield1.c bug129866.c \
	bug234814.c closeall.c $(coolo_sigaction_SOURCES) \
	coolo_strlen.c discard.c exec-sigmask.c execve.c faultstatus.c \
	fcntl_setown.c fdleak_cmsg.c fdleak_creat.c fdleak_dup.c \
	fdleak_dup2.c fdleak_fcntl.c fdleak_ipv4.c fdleak_open.c \
	fdleak_pipe.c fdleak_socketpair.c floored.c fork.c fucomip.c \
	$(gxx304_SOURCES) ifunc.c ioctl_moans.c libvex_test.c \
	$(libvexmultiarch_test_SOURCES) manythreads.c map_unaligned.c \
	map_unmap.c mmap_fcntl_bug.c mq.c munmap_exe.c nestedfns.c \
	nocwd.c pending.c ppoll_alarm.c process_vm_readv_writev.c \
	procfs-cmdline-exe.c pselect_alarm.c pselect_sigmask_null.c \
	pth_atfork1.c pth_blockedsig.c pth_cancel1.c pth_cancel2.c \
	pth_cvsimple.c pth_empty.c pth_exit.c pth_exit2.c \
	pth_mutexspeed.c pth_once.c pth_rwlock.c pth_stackalign.c \
	pth_term_signal.c rcrl.c readline1.c require-text-symbol.c \
	res_search.c resolv.c rlimit64_nofile.c rlimit_nofile.c \
	selfrun.c sem.c semlimit.c sha1_test.c shortpush.c shorts.c \
	sigstackgrowth.c stackgrowth.c syscall-restart1.c \
	syscall-restart2.c syslog.c system.c thread-exits.c \
	threaded-fork.c threadederrno.c timestamp.c $(tls_SOURCES) \
	$(tls_so_SOURCES) $(tls2_so_SOURCES) unit_debuglog.c \
	$(valgrind_cpp_test_SOURCES) vgprintf.c
RECURSIVE_TARGETS = all-recursive check-recursive cscopelist-recursive \
	ctags-recursive dvi-recursive html-recursive info-recursive \
	install-data-recursive install-dvi-recursive \
	install-exec-recursive install-html-recursive \
	install-info-recursive install-pdf-recursive \
	install-ps-recursive install-recursive installcheck-recursive \
	installdirs-recursive pdf-recursive ps-recursive \
	tags-recursive uninstall-recursive
am__can_run_installinfo = \
  case $$AM_UPDATE_INFO_DIR in \
    n|no|NO) false;; \
    *) (install-info --version) >/dev/null 2>&1;; \
  esac
HEADERS = $(noinst_HEADERS)
RECURSIVE_CLEAN_TARGETS = mostlyclean-recursive clean-recursive	\
  distclean-recursive maintainer-clean-recursive
am__recursive_targets = \
  $(RECURSIVE_TARGETS) \
  $(RECURSIVE_CLEAN_TARGETS) \
  $(am__extra_recursive_targets)
AM_RECURSIVE_TARGETS = $(am__recursive_targets:-recursive=) TAGS CTAGS \
	distdir
am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP)
# Read a list of newline-separated strings from the standard input,
# and print each of them once, without duplicates.  Input order is
# *not* preserved.
am__uniquify_input = $(AWK) '\
  BEGIN { nonempty = 0; } \
  { items[$$0] = 1; nonempty = 1; } \
  END { if (nonempty) { for (i in items) print i; }; } \
'
# Make sure the list of sources is unique.  This is necessary because,
# e.g., the same source file might be shared among _SOURCES variables
# for different programs/libraries.
am__define_uniq_tagged_files = \
  list='$(am__tagged_files)'; \
  unique=`for i in $$list; do \
    if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
  done | $(am__uniquify_input)`
ETAGS = etags
CTAGS = ctags
am__DIST_COMMON = $(srcdir)/Makefile.in $(top_srcdir)/Makefile.all.am \
	$(top_srcdir)/Makefile.tool-tests.am $(top_srcdir)/depcomp
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
am__relativize = \
  dir0=`pwd`; \
  sed_first='s,^\([^/]*\)/.*$$,\1,'; \
  sed_rest='s,^[^/]*/*,,'; \
  sed_last='s,^.*/\([^/]*\)$$,\1,'; \
  sed_butlast='s,/*[^/]*$$,,'; \
  while test -n "$$dir1"; do \
    first=`echo "$$dir1" | sed -e "$$sed_first"`; \
    if test "$$first" != "."; then \
      if test "$$first" = ".."; then \
        dir2=`echo "$$dir0" | sed -e "$$sed_last"`/"$$dir2"; \
        dir0=`echo "$$dir0" | sed -e "$$sed_butlast"`; \
      else \
        first2=`echo "$$dir2" | sed -e "$$sed_first"`; \
        if test "$$first2" = "$$first"; then \
          dir2=`echo "$$dir2" | sed -e "$$sed_rest"`; \
        else \
          dir2="../$$dir2"; \
        fi; \
        dir0="$$dir0"/"$$first"; \
      fi; \
    fi; \
    dir1=`echo "$$dir1" | sed -e "$$sed_rest"`; \
  done; \
  reldir="$$dir2"
ACLOCAL = @ACLOCAL@
AMTAR = @AMTAR@
AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@
AR = @AR@
AUTOCONF = @AUTOCONF@
AUTOHEADER = @AUTOHEADER@
AUTOMAKE = @AUTOMAKE@
AWK = @AWK@
BOOST_CFLAGS = @BOOST_CFLAGS@
BOOST_LIBS = @BOOST_LIBS@
CC = @CC@
CCAS = @CCAS@
CCASDEPMODE = @CCASDEPMODE@
CCASFLAGS = @CCASFLAGS@
CCDEPMODE = @CCDEPMODE@
CFLAGS = @CFLAGS@
CFLAGS_MPI = @CFLAGS_MPI@
CPP = @CPP@
CPPFLAGS = @CPPFLAGS@
CXX = @CXX@
CXXDEPMODE = @CXXDEPMODE@
CXXFLAGS = @CXXFLAGS@
CYGPATH_W = @CYGPATH_W@
DEFAULT_SUPP = @DEFAULT_SUPP@
DEFS = @DEFS@
DEPDIR = @DEPDIR@
DIFF = @DIFF@
DIS_PATH = @DIS_PATH@
ECHO_C = @ECHO_C@
ECHO_N = @ECHO_N@
ECHO_T = @ECHO_T@
EGREP = @EGREP@
EXEEXT = @EXEEXT@
FLAG_FNO_IPA_ICF = @FLAG_FNO_IPA_ICF@
FLAG_FNO_STACK_PROTECTOR = @FLAG_FNO_STACK_PROTECTOR@
FLAG_FSANITIZE = @FLAG_FSANITIZE@
FLAG_M32 = @FLAG_M32@
FLAG_M64 = @FLAG_M64@
FLAG_MIPS32 = @FLAG_MIPS32@
FLAG_MIPS64 = @FLAG_MIPS64@
FLAG_MLONG_DOUBLE_128 = @FLAG_MLONG_DOUBLE_128@
FLAG_MMMX = @FLAG_MMMX@
FLAG_MSSE = @FLAG_MSSE@
FLAG_NO_BUILD_ID = @FLAG_NO_BUILD_ID@
FLAG_OCTEON = @FLAG_OCTEON@
FLAG_OCTEON2 = @FLAG_OCTEON2@
FLAG_T_TEXT = @FLAG_T_TEXT@
FLAG_UNLIMITED_INLINE_UNIT_GROWTH = @FLAG_UNLIMITED_INLINE_UNIT_GROWTH@
FLAG_W_CAST_ALIGN = @FLAG_W_CAST_ALIGN@
FLAG_W_CAST_QUAL = @FLAG_W_CAST_QUAL@
FLAG_W_EMPTY_BODY = @FLAG_W_EMPTY_BODY@
FLAG_W_EXTRA = @FLAG_W_EXTRA@
FLAG_W_FORMAT = @FLAG_W_FORMAT@
FLAG_W_FORMAT_SECURITY = @FLAG_W_FORMAT_SECURITY@
FLAG_W_FORMAT_SIGNEDNESS = @FLAG_W_FORMAT_SIGNEDNESS@
FLAG_W_IGNORED_QUALIFIERS = @FLAG_W_IGNORED_QUALIFIERS@
FLAG_W_MISSING_PARAMETER_TYPE = @FLAG_W_MISSING_PARAMETER_TYPE@
FLAG_W_NO_INFINITE_RECURSION = @FLAG_W_NO_INFINITE_RECURSION@
FLAG_W_NO_MEMSET_TRANSPOSED_ARGS = @FLAG_W_NO_MEMSET_TRANSPOSED_ARGS@
FLAG_W_NO_MISMATCHED_NEW_DELETE = @FLAG_W_NO_MISMATCHED_NEW_DELETE@
FLAG_W_NO_NONNULL = @FLAG_W_NO_NONNULL@
FLAG_W_NO_OVERFLOW = @FLAG_W_NO_OVERFLOW@
FLAG_W_NO_POINTER_SIGN = @FLAG_W_NO_POINTER_SIGN@
FLAG_W_NO_STATIC_LOCAL_IN_INLINE = @FLAG_W_NO_STATIC_LOCAL_IN_INLINE@
FLAG_W_NO_UNINITIALIZED = @FLAG_W_NO_UNINITIALIZED@
FLAG_W_NO_UNUSED_FUNCTION = @FLAG_W_NO_UNUSED_FUNCTION@
FLAG_W_OLD_STYLE_DECLARATION = @FLAG_W_OLD_STYLE_DECLARATION@
FLAG_W_WRITE_STRINGS = @FLAG_W_WRITE_STRINGS@
GDB = @GDB@
GLIBC_VERSION = @GLIBC_VERSION@
GREP = @GREP@
HWCAP_HAS_ALTIVEC = @HWCAP_HAS_ALTIVEC@
HWCAP_HAS_DFP = @HWCAP_HAS_DFP@
HWCAP_HAS_HTM = @HWCAP_HAS_HTM@
HWCAP_HAS_ISA_2_05 = @HWCAP_HAS_ISA_2_05@
HWCAP_HAS_ISA_2_06 = @HWCAP_HAS_ISA_2_06@
HWCAP_HAS_ISA_2_07 = @HWCAP_HAS_ISA_2_07@
HWCAP_HAS_ISA_3_00 = @HWCAP_HAS_ISA_3_00@
HWCAP_HAS_VSX = @HWCAP_HAS_VSX@
INSTALL = @INSTALL@
INSTALL_DATA = @INSTALL_DATA@
INSTALL_PROGRAM = @INSTALL_PROGRAM@
INSTALL_SCRIPT = @INSTALL_SCRIPT@
INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
LDFLAGS = @LDFLAGS@
LDFLAGS_MPI = @LDFLAGS_MPI@
LIBOBJS = @LIBOBJS@
LIBS = @LIBS@
LIB_UBSAN = @LIB_UBSAN@
LN_S = @LN_S@
LTLIBOBJS = @LTLIBOBJS@
MAINT = @MAINT@
MAKEINFO = @MAKEINFO@
MKDIR_P = @MKDIR_P@
MPI_CC = @MPI_CC@
OBJEXT = @OBJEXT@
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@
PERL = @PERL@
PREFERRED_STACK_BOUNDARY_2 = @PREFERRED_STACK_BOUNDARY_2@
RANLIB = @RANLIB@
SED = @SED@
SET_MAKE = @SET_MAKE@
SHELL = @SHELL@
SOLARIS_UNDEF_LARGESOURCE = @SOLARIS_UNDEF_LARGESOURCE@
STRIP = @STRIP@
VALT_LOAD_ADDRESS_PRI = @VALT_LOAD_ADDRESS_PRI@
VALT_LOAD_ADDRESS_SEC = @VALT_LOAD_ADDRESS_SEC@
VERSION = @VERSION@
VGCONF_ARCH_PRI = @VGCONF_ARCH_PRI@
VGCONF_ARCH_SEC = @VGCONF_ARCH_SEC@
VGCONF_OS = @VGCONF_OS@
VGCONF_PLATFORM_PRI_CAPS = @VGCONF_PLATFORM_PRI_CAPS@
VGCONF_PLATFORM_SEC_CAPS = @VGCONF_PLATFORM_SEC_CAPS@
VGCONF_PLATVARIANT = @VGCONF_PLATVARIANT@
VG_TMPDIR = @VG_TMPDIR@
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_CXX = @ac_ct_CXX@
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@
mandir = @mandir@
mkdir_p = @mkdir_p@
oldincludedir = @oldincludedir@
pdfdir = @pdfdir@
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@
inplacedir = $(top_builddir)/.in_place

#----------------------------------------------------------------------------
# Flags
#----------------------------------------------------------------------------

# Baseline flags for all compilations.  Aim here is to maximise
# performance and get whatever useful warnings we can out of gcc.
# -fno-builtin is important for defeating LLVM's idiom recognition
# that somehow causes VG_(memset) to get into infinite recursion.
AM_CFLAGS_BASE = -O2 -g -std=gnu99 -Wall -Wmissing-prototypes -Wshadow \
	-Wpointer-arith -Wstrict-prototypes -Wmissing-declarations \
	@FLAG_W_CAST_ALIGN@ @FLAG_W_CAST_QUAL@ @FLAG_W_WRITE_STRINGS@ \
	@FLAG_W_EMPTY_BODY@ @FLAG_W_FORMAT@ @FLAG_W_FORMAT_SIGNEDNESS@ \
	@FLAG_W_FORMAT_SECURITY@ @FLAG_W_IGNORED_QUALIFIERS@ \
	@FLAG_W_MISSING_PARAMETER_TYPE@ @FLAG_W_OLD_STYLE_DECLARATION@ \
	@FLAG_FNO_STACK_PROTECTOR@ @FLAG_FSANITIZE@ \
	-fno-strict-aliasing -fno-builtin $(am__append_1)
@VGCONF_OS_IS_DARWIN_FALSE@AM_CFLAGS_PSO_BASE = -O -g -fno-omit-frame-pointer -fno-strict-aliasing \
@VGCONF_OS_IS_DARWIN_FALSE@		     -fpic -fno-builtin @FLAG_FNO_IPA_ICF@


# These flags are used for building the preload shared objects (PSOs).
# The aim is to give reasonable performance but also to have good
# stack traces, since users often see stack traces extending 
# into (and through) the preloads.  Also, we must use any
# -mpreferred-stack-boundary flag to build the preload shared
# objects, since that risks misaligning the client's stack and
# results in segfaults like (eg) #324050.
@VGCONF_OS_IS_DARWIN_TRUE@AM_CFLAGS_PSO_BASE = -dynamic \
@VGCONF_OS_IS_DARWIN_TRUE@		     -O -g -fno-omit-frame-pointer -fno-strict-aliasing \
@VGCONF_OS_IS_DARWIN_TRUE@		     -fpic -fPIC -fno-builtin @FLAG_FNO_IPA_ICF@


# Flags for specific targets.
#
# Nb: the AM_CPPFLAGS_* values are suitable for building tools and auxprogs.
# For building the core, coregrind/Makefile.am files add some extra things.
AM_CPPFLAGS_@VGCONF_PLATFORM_PRI_CAPS@ = \
	-I$(top_srcdir) \
	-I$(top_srcdir)/include \
	-I$(top_srcdir)/VEX/pub \
	-I$(top_builddir)/VEX/pub \
	-DVGA_@VGCONF_ARCH_PRI@=1 \
	-DVGO_@VGCONF_OS@=1 \
	-DVGP_@VGCONF_ARCH_PRI@_@VGCONF_OS@=1 \
	-DVGPV_@VGCONF_ARCH_PRI@_@VGCONF_OS@_@VGCONF_PLATVARIANT@=1

@VGCONF_HAVE_PLATFORM_SEC_TRUE@AM_CPPFLAGS_@VGCONF_PLATFORM_SEC_CAPS@ = \
@VGCONF_HAVE_PLATFORM_SEC_TRUE@	-I$(top_srcdir) \
@VGCONF_HAVE_PLATFORM_SEC_TRUE@	-I$(top_srcdir)/include \
@VGCONF_HAVE_PLATFORM_SEC_TRUE@	-I$(top_srcdir)/VEX/pub \
@VGCONF_HAVE_PLATFORM_SEC_TRUE@	-I$(top_builddir)/VEX/pub \
@VGCONF_HAVE_PLATFORM_SEC_TRUE@	-DVGA_@VGCONF_ARCH_SEC@=1 \
@VGCONF_HAVE_PLATFORM_SEC_TRUE@	-DVGO_@VGCONF_OS@=1 \
@VGCONF_HAVE_PLATFORM_SEC_TRUE@	-DVGP_@VGCONF_ARCH_SEC@_@VGCONF_OS@=1 \
@VGCONF_HAVE_PLATFORM_SEC_TRUE@	-DVGPV_@VGCONF_ARCH_SEC@_@VGCONF_OS@_@VGCONF_PLATVARIANT@=1

AM_FLAG_M3264_X86_LINUX = @FLAG_M32@
AM_CFLAGS_X86_LINUX = @FLAG_M32@ @PREFERRED_STACK_BOUNDARY_2@ \
				$(AM_CFLAGS_BASE) -fomit-frame-pointer

AM_CFLAGS_PSO_X86_LINUX = @FLAG_M32@ $(AM_CFLAGS_BASE) $(AM_CFLAGS_PSO_BASE)
AM_CCASFLAGS_X86_LINUX = @FLAG_M32@ -g
AM_FLAG_M3264_AMD64_LINUX = @FLAG_M64@
AM_CFLAGS_AMD64_LINUX = @FLAG_M64@ \
				$(AM_CFLAGS_BASE) -fomit-frame-pointer

AM_CFLAGS_PSO_AMD64_LINUX = @FLAG_M64@ $(AM_CFLAGS_BASE) $(AM_CFLAGS_PSO_BASE)
AM_CCASFLAGS_AMD64_LINUX = @FLAG_M64@ -g
AM_FLAG_M3264_PPC32_LINUX = @FLAG_M32@
AM_CFLAGS_PPC32_LINUX = @FLAG_M32@ $(AM_CFLAGS_BASE)
AM_CFLAGS_PSO_PPC32_LINUX = @FLAG_M32@ $(AM_CFLAGS_BASE) $(AM_CFLAGS_PSO_BASE)
AM_CCASFLAGS_PPC32_LINUX = @FLAG_M32@ -g
AM_FLAG_M3264_PPC64BE_LINUX = @FLAG_M64@
AM_CFLAGS_PPC64BE_LINUX = @FLAG_M64@ $(AM_CFLAGS_BASE)
AM_CFLAGS_PSO_PPC64BE_LINUX = @FLAG_M64@ $(AM_CFLAGS_BASE) $(AM_CFLAGS_PSO_BASE)
AM_CCASFLAGS_PPC64BE_LINUX = @FLAG_M64@ -g
AM_FLAG_M3264_PPC64LE_LINUX = @FLAG_M64@
AM_CFLAGS_PPC64LE_LINUX = @FLAG_M64@ $(AM_CFLAGS_BASE)
AM_CFLAGS_PSO_PPC64LE_LINUX = @FLAG_M64@ $(AM_CFLAGS_BASE) $(AM_CFLAGS_PSO_BASE)
AM_CCASFLAGS_PPC64LE_LINUX = @FLAG_M64@ -g
AM_FLAG_M3264_ARM_LINUX = @FLAG_M32@
AM_CFLAGS_ARM_LINUX = @FLAG_M32@ \
			 	$(AM_CFLAGS_BASE) -marm -mcpu=cortex-a8

AM_CFLAGS_PSO_ARM_LINUX = @FLAG_M32@ $(AM_CFLAGS_BASE) \
				-marm -mcpu=cortex-a8 $(AM_CFLAGS_PSO_BASE)

AM_CCASFLAGS_ARM_LINUX = @FLAG_M32@ \
				-marm -mcpu=cortex-a8 -g

AM_FLAG_M3264_ARM64_LINUX = @FLAG_M64@
AM_CFLAGS_ARM64_LINUX = @FLAG_M64@ $(AM_CFLAGS_BASE)
AM_CFLAGS_PSO_ARM64_LINUX = @FLAG_M64@ $(AM_CFLAGS_BASE) $(AM_CFLAGS_PSO_BASE)
AM_CCASFLAGS_ARM64_LINUX = @FLAG_M64@ -g
AM_FLAG_M3264_X86_DARWIN = -arch i386
AM_CFLAGS_X86_DARWIN = $(WERROR) -arch i386 $(AM_CFLAGS_BASE) \
				-mmacosx-version-min=10.6 \
				-fno-stack-protector -fno-pic -fno-PIC

AM_CFLAGS_PSO_X86_DARWIN = $(AM_CFLAGS_X86_DARWIN) $(AM_CFLAGS_PSO_BASE)
AM_CCASFLAGS_X86_DARWIN = -arch i386 -g
AM_FLAG_M3264_AMD64_DARWIN = -arch x86_64
AM_CFLAGS_AMD64_DARWIN = $(WERROR) -arch x86_64 $(AM_CFLAGS_BASE) \
			    -mmacosx-version-min=10.6 -fno-stack-protector

AM_CFLAGS_PSO_AMD64_DARWIN = $(AM_CFLAGS_AMD64_DARWIN) $(AM_CFLAGS_PSO_BASE)
AM_CCASFLAGS_AMD64_DARWIN = -arch x86_64 -g
AM_FLAG_M3264_S390X_LINUX = @FLAG_M64@
AM_CFLAGS_S390X_LINUX = @FLAG_M64@ $(AM_CFLAGS_BASE) -fomit-frame-pointer
AM_CFLAGS_PSO_S390X_LINUX = @FLAG_M64@ $(AM_CFLAGS_BASE) $(AM_CFLAGS_PSO_BASE)
AM_CCASFLAGS_S390X_LINUX = @FLAG_M64@ -g -mzarch -march=z900
AM_FLAG_M3264_MIPS32_LINUX = @FLAG_M32@
AM_CFLAGS_MIPS32_LINUX = @FLAG_M32@ $(AM_CFLAGS_BASE) @FLAG_MIPS32@
AM_CFLAGS_PSO_MIPS32_LINUX = @FLAG_M32@ $(AM_CFLAGS_BASE) @FLAG_MIPS32@ \
				$(AM_CFLAGS_PSO_BASE)

AM_CCASFLAGS_MIPS32_LINUX = @FLAG_M32@ -g @FLAG_MIPS32@
AM_FLAG_M3264_MIPS64_LINUX = @FLAG_M64@
AM_CFLAGS_MIPS64_LINUX = @FLAG_M64@ $(AM_CFLAGS_BASE) @FLAG_MIPS64@
AM_CFLAGS_PSO_MIPS64_LINUX = @FLAG_M64@ $(AM_CFLAGS_BASE) @FLAG_MIPS64@ \
				$(AM_CFLAGS_PSO_BASE)

AM_CCASFLAGS_MIPS64_LINUX = @FLAG_M64@ -g @FLAG_MIPS64@
AM_CFLAGS_TILEGX_LINUX = @FLAG_M64@ $(AM_CFLAGS_BASE)
AM_CFLAGS_PSO_TILEGX_LINUX = @FLAG_M64@ $(AM_CFLAGS_BASE) $(AM_CFLAGS_PSO_BASE)
AM_FLAG_M3264_X86_SOLARIS = @FLAG_M32@
AM_CFLAGS_X86_SOLARIS = @FLAG_M32@ @PREFERRED_STACK_BOUNDARY_2@ \
				$(AM_CFLAGS_BASE) -fomit-frame-pointer \
				@SOLARIS_UNDEF_LARGESOURCE@

AM_CFLAGS_PSO_X86_SOLARIS = @FLAG_M32@ $(AM_CFLAGS_BASE) $(AM_CFLAGS_PSO_BASE)
AM_CCASFLAGS_X86_SOLARIS = @FLAG_M32@ -g -D_ASM
AM_FLAG_M3264_AMD64_SOLARIS = @FLAG_M64@
AM_CFLAGS_AMD64_SOLARIS = @FLAG_M64@ \
				$(AM_CFLAGS_BASE) -fomit-frame-pointer

AM_CFLAGS_PSO_AMD64_SOLARIS = @FLAG_M64@ $(AM_CFLAGS_BASE) $(AM_CFLAGS_PSO_BASE)
AM_CCASFLAGS_AMD64_SOLARIS = @FLAG_M64@ -g -D_ASM

# Flags for the primary target.  These must be used to build the
# regtests and performance tests.  In fact, these must be used to
# build anything which is built only once on a dual-arch build.
#
AM_FLAG_M3264_PRI = $(AM_FLAG_M3264_@VGCONF_PLATFORM_PRI_CAPS@)
AM_CPPFLAGS_PRI = $(AM_CPPFLAGS_@VGCONF_PLATFORM_PRI_CAPS@)
AM_CFLAGS_PRI = $(AM_CFLAGS_@VGCONF_PLATFORM_PRI_CAPS@)
AM_CCASFLAGS_PRI = $(AM_CCASFLAGS_@VGCONF_PLATFORM_PRI_CAPS@)
@VGCONF_HAVE_PLATFORM_SEC_FALSE@AM_FLAG_M3264_SEC = 
@VGCONF_HAVE_PLATFORM_SEC_TRUE@AM_FLAG_M3264_SEC = $(AM_FLAG_M3264_@VGCONF_PLATFORM_SEC_CAPS@)

# Baseline link flags for making vgpreload shared objects.
#
PRELOAD_LDFLAGS_COMMON_LINUX = -nodefaultlibs -shared \
	-Wl,-z,interpose,-z,initfirst $(am__append_3)
PRELOAD_LDFLAGS_COMMON_DARWIN = -dynamic -dynamiclib -all_load
PRELOAD_LDFLAGS_COMMON_SOLARIS = -nodefaultlibs -shared \
	-Wl,-z,interpose,-z,initfirst $(am__append_2)
PRELOAD_LDFLAGS_X86_LINUX = $(PRELOAD_LDFLAGS_COMMON_LINUX) @FLAG_M32@
PRELOAD_LDFLAGS_AMD64_LINUX = $(PRELOAD_LDFLAGS_COMMON_LINUX) @FLAG_M64@
PRELOAD_LDFLAGS_PPC32_LINUX = $(PRELOAD_LDFLAGS_COMMON_LINUX) @FLAG_M32@
PRELOAD_LDFLAGS_PPC64BE_LINUX = $(PRELOAD_LDFLAGS_COMMON_LINUX) @FLAG_M64@
PRELOAD_LDFLAGS_PPC64LE_LINUX = $(PRELOAD_LDFLAGS_COMMON_LINUX) @FLAG_M64@
PRELOAD_LDFLAGS_ARM_LINUX = $(PRELOAD_LDFLAGS_COMMON_LINUX) @FLAG_M32@
PRELOAD_LDFLAGS_ARM64_LINUX = $(PRELOAD_LDFLAGS_COMMON_LINUX) @FLAG_M64@
PRELOAD_LDFLAGS_X86_DARWIN = $(PRELOAD_LDFLAGS_COMMON_DARWIN) -arch i386
PRELOAD_LDFLAGS_AMD64_DARWIN = $(PRELOAD_LDFLAGS_COMMON_DARWIN) -arch x86_64
PRELOAD_LDFLAGS_S390X_LINUX = $(PRELOAD_LDFLAGS_COMMON_LINUX) @FLAG_M64@
PRELOAD_LDFLAGS_MIPS32_LINUX = $(PRELOAD_LDFLAGS_COMMON_LINUX) @FLAG_M32@
PRELOAD_LDFLAGS_MIPS64_LINUX = $(PRELOAD_LDFLAGS_COMMON_LINUX) @FLAG_M64@
PRELOAD_LDFLAGS_TILEGX_LINUX = $(PRELOAD_LDFLAGS_COMMON_LINUX) @FLAG_M64@
PRELOAD_LDFLAGS_X86_SOLARIS = $(PRELOAD_LDFLAGS_COMMON_SOLARIS) @FLAG_M32@
PRELOAD_LDFLAGS_AMD64_SOLARIS = $(PRELOAD_LDFLAGS_COMMON_SOLARIS) @FLAG_M64@
AM_CPPFLAGS = -I$(top_srcdir) -I$(top_srcdir)/include \
	-I$(top_srcdir)/coregrind -I$(top_builddir)/include \
	-I$(top_srcdir)/VEX/pub -I$(top_builddir)/VEX/pub \
	-DVGA_@VGCONF_ARCH_PRI@=1 -DVGO_@VGCONF_OS@=1 \
	-DVGP_@VGCONF_ARCH_PRI@_@VGCONF_OS@=1 \
	-DVGPV_@VGCONF_ARCH_PRI@_@VGCONF_OS@_@VGCONF_PLATVARIANT@=1 \
	$(am__append_4)

# Nb: Tools need to augment these flags with an arch-selection option, such
# as $(AM_FLAG_M3264_PRI).
AM_CFLAGS = -Winline -Wall -Wshadow -Wno-long-long -g \
	@FLAG_FNO_STACK_PROTECTOR@ $(am__append_5) $(am__append_6) \
	$(AM_FLAG_M3264_PRI)
AM_CXXFLAGS = -Winline -Wall -Wshadow -Wno-long-long -g \
	@FLAG_FNO_STACK_PROTECTOR@ $(am__append_7) \
	$(AM_FLAG_M3264_PRI)
# Include AM_CPPFLAGS in AM_CCASFLAGS to allow for older versions of
# automake;  see comments in Makefile.all.am for more detail.
AM_CCASFLAGS = $(AM_CPPFLAGS)
@VGCONF_OS_IS_DARWIN_TRUE@noinst_DSYMS = $(check_PROGRAMS)
SUBDIRS = . scripts $(am__append_8) $(am__append_9) $(am__append_10) \
	$(am__append_11) $(am__append_12) $(am__append_13) \
	$(am__append_14) $(am__append_15) $(am__append_16) \
	$(am__append_17) $(am__append_18) $(am__append_19) \
	$(am__append_20) $(am__append_21) $(am__append_22) \
	$(am__append_23) $(am__append_24) $(am__append_25) \
	$(am__append_26)
DIST_SUBDIRS = x86 amd64 ppc32 ppc64 arm arm64 s390x mips32 mips64 tilegx \
               linux darwin solaris amd64-linux x86-linux amd64-darwin \
               x86-darwin amd64-solaris x86-solaris scripts .

dist_noinst_SCRIPTS = \
	filter_cmdline0 \
	filter_cmdline1 \
	filter_fdleak \
	filter_ioctl_moans \
	filter_none_discards \
	filter_stderr \
	filter_timestamp \
	allexec_prepare_prereq

noinst_HEADERS = fdleak.h
EXTRA_DIST = \
	allexec32.stdout.exp allexec32.stderr.exp allexec32.vgtest\
	allexec64.stdout.exp allexec64.stderr.exp allexec64.vgtest\
	ansi.stderr.exp ansi.vgtest \
	args.stderr.exp args.stdout.exp args.vgtest \
	async-sigs.stderr.exp async-sigs.stderr.exp-mips32 \
	async-sigs.vgtest \
	bigcode.vgtest bigcode.stderr.exp bigcode.stdout.exp \
	bitfield1.stderr.exp bitfield1.vgtest \
	bug129866.vgtest bug129866.stderr.exp bug129866.stdout.exp \
	bug234814.vgtest bug234814.stderr.exp bug234814.stdout.exp \
	closeall.stderr.exp closeall.vgtest \
	cmdline0.stderr.exp cmdline0.stdout.exp cmdline0.vgtest \
	cmdline1.stderr.exp cmdline1.stdout.exp cmdline1.vgtest \
	cmdline2.stderr.exp cmdline2.stdout.exp cmdline2.vgtest \
	cmdline3.stderr.exp cmdline3.vgtest \
	cmdline4.stderr.exp cmdline4.vgtest \
	cmdline5.stderr.exp cmdline5.vgtest \
	cmdline6.stderr.exp cmdline6.vgtest \
	cmd-with-special.stderr.exp cmd-with-special.vgtest \
	coolo_sigaction.stderr.exp \
	coolo_sigaction.stdout.exp coolo_sigaction.vgtest \
	coolo_strlen.stderr.exp coolo_strlen.vgtest \
	discard.stderr.exp discard.stdout.exp \
	discard.vgtest \
	empty-exe.vgtest empty-exe.stderr.exp \
	exec-sigmask.vgtest exec-sigmask.stdout.exp \
	exec-sigmask.stdout.exp2 exec-sigmask.stdout.exp3 \
	exec-sigmask.stdout.exp-solaris exec-sigmask.stderr.exp \
	execve.vgtest execve.stdout.exp execve.stderr.exp \
	faultstatus.vgtest faultstatus.stderr.exp faultstatus.stderr.exp-s390x \
	fcntl_setown.vgtest fcntl_setown.stdout.exp fcntl_setown.stderr.exp \
	fdleak_cmsg.stderr.exp fdleak_cmsg.vgtest \
	fdleak_creat.stderr.exp fdleak_creat.vgtest \
	fdleak_dup.stderr.exp fdleak_dup.vgtest \
	fdleak_dup2.stderr.exp fdleak_dup2.vgtest \
	fdleak_fcntl.stderr.exp fdleak_fcntl.vgtest \
	fdleak_ipv4.stderr.exp fdleak_ipv4.stdout.exp fdleak_ipv4.vgtest \
	fdleak_open.stderr.exp fdleak_open.vgtest \
	fdleak_pipe.stderr.exp fdleak_pipe.vgtest \
	fdleak_socketpair.stderr.exp fdleak_socketpair.vgtest \
	floored.stderr.exp floored.stdout.exp floored.vgtest \
	fork.stderr.exp fork.stdout.exp fork.vgtest \
	fucomip.stderr.exp fucomip.vgtest \
	gxx304.stderr.exp gxx304.vgtest \
	ifunc.stderr.exp ifunc.stdout.exp ifunc.vgtest \
	ioctl_moans.stderr.exp ioctl_moans.vgtest \
	libvex_test.stderr.exp libvex_test.vgtest \
	libvexmultiarch_test.stderr.exp libvexmultiarch_test.vgtest \
	manythreads.stdout.exp manythreads.stderr.exp manythreads.vgtest \
	map_unaligned.stderr.exp map_unaligned.vgtest \
	map_unmap.stderr.exp map_unmap.stdout.exp map_unmap.vgtest \
	mmap_fcntl_bug.vgtest mmap_fcntl_bug.stdout.exp \
		mmap_fcntl_bug.stderr.exp \
	mq.stderr.exp mq.vgtest \
	munmap_exe.stderr.exp munmap_exe.vgtest \
	nestedfns.stderr.exp nestedfns.stdout.exp nestedfns.vgtest \
	nocwd.stdout.exp nocwd.stderr.exp nocwd.vgtest \
	nodir.stderr.exp nodir.vgtest \
	pending.stdout.exp pending.stderr.exp pending.vgtest \
	ppoll_alarm.stdout.exp ppoll_alarm.stderr.exp ppoll_alarm.vgtest \
	procfs-linux.stderr.exp-with-readlinkat \
	procfs-linux.stderr.exp-without-readlinkat \
	procfs-linux.vgtest \
	procfs-non-linux.vgtest \
	procfs-non-linux.stderr.exp-with-readlinkat \
	procfs-non-linux.stderr.exp-without-readlinkat \
	pselect_alarm.stdout.exp pselect_alarm.stderr.exp pselect_alarm.vgtest \
	pselect_sigmask_null.vgtest \
	pselect_sigmask_null.stdout.exp pselect_sigmask_null.stderr.exp \
	pth_atfork1.stderr.exp pth_atfork1.stdout.exp pth_atfork1.vgtest \
	pth_blockedsig.stderr.exp \
	pth_blockedsig.stdout.exp pth_blockedsig.vgtest \
	pth_cancel1.stderr.exp pth_cancel1.stdout.exp pth_cancel1.vgtest \
	pth_cancel2.stderr.exp pth_cancel2.vgtest \
	pth_cvsimple.stderr.exp pth_cvsimple.stdout.exp pth_cvsimple.vgtest \
	pth_empty.stderr.exp pth_empty.vgtest \
	pth_exit.stderr.exp pth_exit.vgtest \
	pth_exit2.stderr.exp pth_exit2.vgtest \
	pth_mutexspeed.stderr.exp \
	pth_mutexspeed.stdout.exp pth_mutexspeed.vgtest \
	pth_once.stderr.exp pth_once.stdout.exp pth_once.vgtest \
	pth_rwlock.stderr.exp pth_rwlock.vgtest \
	pth_stackalign.stderr.exp \
	pth_stackalign.stdout.exp pth_stackalign.vgtest \
	pth_term_signal.stderr.exp pth_term_signal.vgtest \
	rcrl.stderr.exp rcrl.stdout.exp rcrl.vgtest \
	readline1.stderr.exp readline1.stdout.exp \
	readline1.vgtest \
	require-text-symbol-1.vgtest \
		require-text-symbol-1.stderr.exp \
	require-text-symbol-2.vgtest \
		require-text-symbol-2.stderr.exp-libcso1 \
		require-text-symbol-2.stderr.exp-libcso6 \
	res_search.stderr.exp res_search.stdout.exp res_search.vgtest \
	resolv.stderr.exp resolv.stdout.exp resolv.vgtest \
	rlimit_nofile.stderr.exp rlimit_nofile.stdout.exp rlimit_nofile.vgtest \
	rlimit64_nofile.stderr.exp rlimit64_nofile.stdout.exp rlimit64_nofile.vgtest \
	selfrun.stderr.exp selfrun.stdout.exp selfrun.vgtest \
	sem.stderr.exp sem.stdout.exp sem.vgtest \
	semlimit.stderr.exp semlimit.stdout.exp semlimit.vgtest \
	sha1_test.stderr.exp sha1_test.vgtest \
	shortpush.stderr.exp shortpush.vgtest \
	shorts.stderr.exp shorts.vgtest \
	sigstackgrowth.stdout.exp sigstackgrowth.stderr.exp sigstackgrowth.vgtest \
	stackgrowth.stdout.exp stackgrowth.stderr.exp stackgrowth.vgtest \
	syscall-restart1.vgtest syscall-restart1.stdout.exp syscall-restart1.stderr.exp \
	syscall-restart2.vgtest syscall-restart2.stdout.exp syscall-restart2.stderr.exp \
	syslog.vgtest syslog.stderr.exp \
	system.stderr.exp system.vgtest \
	thread-exits.stderr.exp thread-exits.stdout.exp thread-exits.vgtest \
	threaded-fork.stderr.exp threaded-fork.stdout.exp threaded-fork.vgtest \
	threadederrno.stderr.exp threadederrno.stdout.exp \
	threadederrno.vgtest \
	timestamp.stderr.exp timestamp.vgtest \
	tls.vgtest tls.stderr.exp tls.stdout.exp  \
	unit_debuglog.stderr.exp unit_debuglog.vgtest \
	vgprintf.stderr.exp vgprintf.vgtest \
	process_vm_readv_writev.stderr.exp process_vm_readv_writev.vgtest


# Extra stuff for C tests
ansi_CFLAGS = $(AM_CFLAGS) -ansi
execve_CFLAGS = $(AM_CFLAGS) @FLAG_W_NO_NONNULL@
@VGCONF_OS_IS_SOLARIS_TRUE@fcntl_setown_LDADD = -lsocket -lnsl
@VGCONF_OS_IS_SOLARIS_TRUE@fdleak_cmsg_CFLAGS = $(AM_CFLAGS) -std=c99 -D_XOPEN_SOURCE=600
@VGCONF_OS_IS_SOLARIS_TRUE@fdleak_cmsg_LDADD = -lsocket -lnsl
@VGCONF_OS_IS_SOLARIS_TRUE@fdleak_ipv4_LDADD = -lsocket -lnsl
@VGCONF_OS_IS_SOLARIS_TRUE@fdleak_creat_LDADD = -lsocket -lnsl
@VGCONF_OS_IS_SOLARIS_TRUE@fdleak_socketpair_LDADD = -lsocket -lnsl
floored_LDADD = -lm
manythreads_LDADD = -lpthread
@VGCONF_OS_IS_DARWIN_FALSE@nestedfns_CFLAGS = $(AM_CFLAGS)
@VGCONF_OS_IS_DARWIN_TRUE@nestedfns_CFLAGS = $(AM_CFLAGS) -fnested-functions
@VGCONF_OS_IS_DARWIN_FALSE@mq_LDADD = -lrt
libvex_test_CFLAGS = $(AM_CFLAGS) @FLAG_FSANITIZE@
libvex_test_LDADD = ../../VEX/libvex-@VGCONF_ARCH_PRI@-@VGCONF_OS@.a \
			   @LIB_UBSAN@

libvexmultiarch_test_CFLAGS = $(AM_CFLAGS) @FLAG_FSANITIZE@
libvexmultiarch_test_LDADD = \
	../../VEX/libvexmultiarch-@VGCONF_ARCH_PRI@-@VGCONF_OS@.a \
	../../VEX/libvex-@VGCONF_ARCH_PRI@-@VGCONF_OS@.a @LIB_UBSAN@

libvexmultiarch_test_SOURCES = libvex_test.c
ppoll_alarm_LDADD = -lpthread
pselect_alarm_LDADD = -lpthread
pth_atfork1_LDADD = -lpthread
pth_blockedsig_LDADD = -lpthread
pth_cancel1_CFLAGS = $(AM_CFLAGS) -Wno-shadow
pth_cancel1_LDADD = -lpthread
pth_cancel2_LDADD = -lpthread
pth_cvsimple_LDADD = -lpthread
pth_empty_LDADD = -lpthread
pth_exit_LDADD = -lpthread
pth_exit2_LDADD = -lpthread
pth_mutexspeed_LDADD = -lpthread
pth_once_LDADD = -lpthread
pth_rwlock_LDADD = -lpthread
pth_rwlock_CFLAGS = $(AM_CFLAGS) $(am__append_31)
pth_stackalign_LDADD = -lpthread
pth_term_signal_LDADD = -lpthread
res_search_LDADD = -lresolv -lpthread
resolv_CFLAGS = $(AM_CFLAGS) $(am__append_32)
resolv_LDADD = -lresolv -lpthread
semlimit_LDADD = -lpthread
sha1_test_CFLAGS = $(AM_CFLAGS) $(am__append_33)
thread_exits_LDADD = -lpthread
threaded_fork_LDADD = -lpthread
threadederrno_CFLAGS = $(AM_CFLAGS) $(am__append_34)
threadederrno_LDADD = -lpthread
tls_SOURCES = tls.c tls2.c
tls_DEPENDENCIES = tls.so tls2.so
tls_LDFLAGS = -Wl,-rpath,$(abs_top_builddir)/none/tests
tls_LDADD = tls.so tls2.so -lpthread
tls_so_SOURCES = tls_so.c
tls_so_DEPENDENCIES = tls2.so
@VGCONF_OS_IS_DARWIN_FALSE@tls_so_LDFLAGS = -Wl,-rpath,$(abs_top_builddir)/none/tests -shared -fPIC
@VGCONF_OS_IS_DARWIN_TRUE@tls_so_LDFLAGS = -dynamic -dynamiclib -all_load -fpic
@VGCONF_OS_IS_DARWIN_FALSE@tls_so_LDADD = tls2.so
@VGCONF_OS_IS_DARWIN_TRUE@tls_so_LDADD = `pwd`/tls2.so
tls_so_CFLAGS = $(AM_CFLAGS) -fPIC
tls2_so_SOURCES = tls2_so.c
@VGCONF_OS_IS_DARWIN_FALSE@tls2_so_LDFLAGS = -shared
@VGCONF_OS_IS_DARWIN_TRUE@tls2_so_LDFLAGS = -dynamic -dynamiclib -all_load
valgrind_cpp_test_SOURCES = valgrind_cpp_test.cpp
valgrind_cpp_test_LDADD = -lstdc++

# C++ tests
coolo_sigaction_SOURCES = coolo_sigaction.cpp
gxx304_SOURCES = gxx304.cpp
all: all-recursive

.SUFFIXES:
.SUFFIXES: .c .cpp .o .obj
$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(top_srcdir)/Makefile.tool-tests.am $(top_srcdir)/Makefile.all.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 none/tests/Makefile'; \
	$(am__cd) $(top_srcdir) && \
	  $(AUTOMAKE) --foreign none/tests/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_srcdir)/Makefile.tool-tests.am $(top_srcdir)/Makefile.all.am $(am__empty):

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

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

clean-checkPROGRAMS:
	-test -z "$(check_PROGRAMS)" || rm -f $(check_PROGRAMS)

ansi$(EXEEXT): $(ansi_OBJECTS) $(ansi_DEPENDENCIES) $(EXTRA_ansi_DEPENDENCIES) 
	@rm -f ansi$(EXEEXT)
	$(AM_V_CCLD)$(ansi_LINK) $(ansi_OBJECTS) $(ansi_LDADD) $(LIBS)

args$(EXEEXT): $(args_OBJECTS) $(args_DEPENDENCIES) $(EXTRA_args_DEPENDENCIES) 
	@rm -f args$(EXEEXT)
	$(AM_V_CCLD)$(LINK) $(args_OBJECTS) $(args_LDADD) $(LIBS)

async-sigs$(EXEEXT): $(async_sigs_OBJECTS) $(async_sigs_DEPENDENCIES) $(EXTRA_async_sigs_DEPENDENCIES) 
	@rm -f async-sigs$(EXEEXT)
	$(AM_V_CCLD)$(LINK) $(async_sigs_OBJECTS) $(async_sigs_LDADD) $(LIBS)

bitfield1$(EXEEXT): $(bitfield1_OBJECTS) $(bitfield1_DEPENDENCIES) $(EXTRA_bitfield1_DEPENDENCIES) 
	@rm -f bitfield1$(EXEEXT)
	$(AM_V_CCLD)$(LINK) $(bitfield1_OBJECTS) $(bitfield1_LDADD) $(LIBS)

bug129866$(EXEEXT): $(bug129866_OBJECTS) $(bug129866_DEPENDENCIES) $(EXTRA_bug129866_DEPENDENCIES) 
	@rm -f bug129866$(EXEEXT)
	$(AM_V_CCLD)$(LINK) $(bug129866_OBJECTS) $(bug129866_LDADD) $(LIBS)

bug234814$(EXEEXT): $(bug234814_OBJECTS) $(bug234814_DEPENDENCIES) $(EXTRA_bug234814_DEPENDENCIES) 
	@rm -f bug234814$(EXEEXT)
	$(AM_V_CCLD)$(LINK) $(bug234814_OBJECTS) $(bug234814_LDADD) $(LIBS)

closeall$(EXEEXT): $(closeall_OBJECTS) $(closeall_DEPENDENCIES) $(EXTRA_closeall_DEPENDENCIES) 
	@rm -f closeall$(EXEEXT)
	$(AM_V_CCLD)$(LINK) $(closeall_OBJECTS) $(closeall_LDADD) $(LIBS)

coolo_sigaction$(EXEEXT): $(coolo_sigaction_OBJECTS) $(coolo_sigaction_DEPENDENCIES) $(EXTRA_coolo_sigaction_DEPENDENCIES) 
	@rm -f coolo_sigaction$(EXEEXT)
	$(AM_V_CXXLD)$(CXXLINK) $(coolo_sigaction_OBJECTS) $(coolo_sigaction_LDADD) $(LIBS)

coolo_strlen$(EXEEXT): $(coolo_strlen_OBJECTS) $(coolo_strlen_DEPENDENCIES) $(EXTRA_coolo_strlen_DEPENDENCIES) 
	@rm -f coolo_strlen$(EXEEXT)
	$(AM_V_CCLD)$(LINK) $(coolo_strlen_OBJECTS) $(coolo_strlen_LDADD) $(LIBS)

discard$(EXEEXT): $(discard_OBJECTS) $(discard_DEPENDENCIES) $(EXTRA_discard_DEPENDENCIES) 
	@rm -f discard$(EXEEXT)
	$(AM_V_CCLD)$(LINK) $(discard_OBJECTS) $(discard_LDADD) $(LIBS)

exec-sigmask$(EXEEXT): $(exec_sigmask_OBJECTS) $(exec_sigmask_DEPENDENCIES) $(EXTRA_exec_sigmask_DEPENDENCIES) 
	@rm -f exec-sigmask$(EXEEXT)
	$(AM_V_CCLD)$(LINK) $(exec_sigmask_OBJECTS) $(exec_sigmask_LDADD) $(LIBS)

execve$(EXEEXT): $(execve_OBJECTS) $(execve_DEPENDENCIES) $(EXTRA_execve_DEPENDENCIES) 
	@rm -f execve$(EXEEXT)
	$(AM_V_CCLD)$(execve_LINK) $(execve_OBJECTS) $(execve_LDADD) $(LIBS)

faultstatus$(EXEEXT): $(faultstatus_OBJECTS) $(faultstatus_DEPENDENCIES) $(EXTRA_faultstatus_DEPENDENCIES) 
	@rm -f faultstatus$(EXEEXT)
	$(AM_V_CCLD)$(LINK) $(faultstatus_OBJECTS) $(faultstatus_LDADD) $(LIBS)

fcntl_setown$(EXEEXT): $(fcntl_setown_OBJECTS) $(fcntl_setown_DEPENDENCIES) $(EXTRA_fcntl_setown_DEPENDENCIES) 
	@rm -f fcntl_setown$(EXEEXT)
	$(AM_V_CCLD)$(LINK) $(fcntl_setown_OBJECTS) $(fcntl_setown_LDADD) $(LIBS)

fdleak_cmsg$(EXEEXT): $(fdleak_cmsg_OBJECTS) $(fdleak_cmsg_DEPENDENCIES) $(EXTRA_fdleak_cmsg_DEPENDENCIES) 
	@rm -f fdleak_cmsg$(EXEEXT)
	$(AM_V_CCLD)$(fdleak_cmsg_LINK) $(fdleak_cmsg_OBJECTS) $(fdleak_cmsg_LDADD) $(LIBS)

fdleak_creat$(EXEEXT): $(fdleak_creat_OBJECTS) $(fdleak_creat_DEPENDENCIES) $(EXTRA_fdleak_creat_DEPENDENCIES) 
	@rm -f fdleak_creat$(EXEEXT)
	$(AM_V_CCLD)$(LINK) $(fdleak_creat_OBJECTS) $(fdleak_creat_LDADD) $(LIBS)

fdleak_dup$(EXEEXT): $(fdleak_dup_OBJECTS) $(fdleak_dup_DEPENDENCIES) $(EXTRA_fdleak_dup_DEPENDENCIES) 
	@rm -f fdleak_dup$(EXEEXT)
	$(AM_V_CCLD)$(LINK) $(fdleak_dup_OBJECTS) $(fdleak_dup_LDADD) $(LIBS)

fdleak_dup2$(EXEEXT): $(fdleak_dup2_OBJECTS) $(fdleak_dup2_DEPENDENCIES) $(EXTRA_fdleak_dup2_DEPENDENCIES) 
	@rm -f fdleak_dup2$(EXEEXT)
	$(AM_V_CCLD)$(LINK) $(fdleak_dup2_OBJECTS) $(fdleak_dup2_LDADD) $(LIBS)

fdleak_fcntl$(EXEEXT): $(fdleak_fcntl_OBJECTS) $(fdleak_fcntl_DEPENDENCIES) $(EXTRA_fdleak_fcntl_DEPENDENCIES) 
	@rm -f fdleak_fcntl$(EXEEXT)
	$(AM_V_CCLD)$(LINK) $(fdleak_fcntl_OBJECTS) $(fdleak_fcntl_LDADD) $(LIBS)

fdleak_ipv4$(EXEEXT): $(fdleak_ipv4_OBJECTS) $(fdleak_ipv4_DEPENDENCIES) $(EXTRA_fdleak_ipv4_DEPENDENCIES) 
	@rm -f fdleak_ipv4$(EXEEXT)
	$(AM_V_CCLD)$(LINK) $(fdleak_ipv4_OBJECTS) $(fdleak_ipv4_LDADD) $(LIBS)

fdleak_open$(EXEEXT): $(fdleak_open_OBJECTS) $(fdleak_open_DEPENDENCIES) $(EXTRA_fdleak_open_DEPENDENCIES) 
	@rm -f fdleak_open$(EXEEXT)
	$(AM_V_CCLD)$(LINK) $(fdleak_open_OBJECTS) $(fdleak_open_LDADD) $(LIBS)

fdleak_pipe$(EXEEXT): $(fdleak_pipe_OBJECTS) $(fdleak_pipe_DEPENDENCIES) $(EXTRA_fdleak_pipe_DEPENDENCIES) 
	@rm -f fdleak_pipe$(EXEEXT)
	$(AM_V_CCLD)$(LINK) $(fdleak_pipe_OBJECTS) $(fdleak_pipe_LDADD) $(LIBS)

fdleak_socketpair$(EXEEXT): $(fdleak_socketpair_OBJECTS) $(fdleak_socketpair_DEPENDENCIES) $(EXTRA_fdleak_socketpair_DEPENDENCIES) 
	@rm -f fdleak_socketpair$(EXEEXT)
	$(AM_V_CCLD)$(LINK) $(fdleak_socketpair_OBJECTS) $(fdleak_socketpair_LDADD) $(LIBS)

floored$(EXEEXT): $(floored_OBJECTS) $(floored_DEPENDENCIES) $(EXTRA_floored_DEPENDENCIES) 
	@rm -f floored$(EXEEXT)
	$(AM_V_CCLD)$(LINK) $(floored_OBJECTS) $(floored_LDADD) $(LIBS)

fork$(EXEEXT): $(fork_OBJECTS) $(fork_DEPENDENCIES) $(EXTRA_fork_DEPENDENCIES) 
	@rm -f fork$(EXEEXT)
	$(AM_V_CCLD)$(LINK) $(fork_OBJECTS) $(fork_LDADD) $(LIBS)

fucomip$(EXEEXT): $(fucomip_OBJECTS) $(fucomip_DEPENDENCIES) $(EXTRA_fucomip_DEPENDENCIES) 
	@rm -f fucomip$(EXEEXT)
	$(AM_V_CCLD)$(LINK) $(fucomip_OBJECTS) $(fucomip_LDADD) $(LIBS)

gxx304$(EXEEXT): $(gxx304_OBJECTS) $(gxx304_DEPENDENCIES) $(EXTRA_gxx304_DEPENDENCIES) 
	@rm -f gxx304$(EXEEXT)
	$(AM_V_CXXLD)$(CXXLINK) $(gxx304_OBJECTS) $(gxx304_LDADD) $(LIBS)

ifunc$(EXEEXT): $(ifunc_OBJECTS) $(ifunc_DEPENDENCIES) $(EXTRA_ifunc_DEPENDENCIES) 
	@rm -f ifunc$(EXEEXT)
	$(AM_V_CCLD)$(LINK) $(ifunc_OBJECTS) $(ifunc_LDADD) $(LIBS)

ioctl_moans$(EXEEXT): $(ioctl_moans_OBJECTS) $(ioctl_moans_DEPENDENCIES) $(EXTRA_ioctl_moans_DEPENDENCIES) 
	@rm -f ioctl_moans$(EXEEXT)
	$(AM_V_CCLD)$(LINK) $(ioctl_moans_OBJECTS) $(ioctl_moans_LDADD) $(LIBS)

libvex_test$(EXEEXT): $(libvex_test_OBJECTS) $(libvex_test_DEPENDENCIES) $(EXTRA_libvex_test_DEPENDENCIES) 
	@rm -f libvex_test$(EXEEXT)
	$(AM_V_CCLD)$(libvex_test_LINK) $(libvex_test_OBJECTS) $(libvex_test_LDADD) $(LIBS)

libvexmultiarch_test$(EXEEXT): $(libvexmultiarch_test_OBJECTS) $(libvexmultiarch_test_DEPENDENCIES) $(EXTRA_libvexmultiarch_test_DEPENDENCIES) 
	@rm -f libvexmultiarch_test$(EXEEXT)
	$(AM_V_CCLD)$(libvexmultiarch_test_LINK) $(libvexmultiarch_test_OBJECTS) $(libvexmultiarch_test_LDADD) $(LIBS)

manythreads$(EXEEXT): $(manythreads_OBJECTS) $(manythreads_DEPENDENCIES) $(EXTRA_manythreads_DEPENDENCIES) 
	@rm -f manythreads$(EXEEXT)
	$(AM_V_CCLD)$(LINK) $(manythreads_OBJECTS) $(manythreads_LDADD) $(LIBS)

map_unaligned$(EXEEXT): $(map_unaligned_OBJECTS) $(map_unaligned_DEPENDENCIES) $(EXTRA_map_unaligned_DEPENDENCIES) 
	@rm -f map_unaligned$(EXEEXT)
	$(AM_V_CCLD)$(LINK) $(map_unaligned_OBJECTS) $(map_unaligned_LDADD) $(LIBS)

map_unmap$(EXEEXT): $(map_unmap_OBJECTS) $(map_unmap_DEPENDENCIES) $(EXTRA_map_unmap_DEPENDENCIES) 
	@rm -f map_unmap$(EXEEXT)
	$(AM_V_CCLD)$(LINK) $(map_unmap_OBJECTS) $(map_unmap_LDADD) $(LIBS)

mmap_fcntl_bug$(EXEEXT): $(mmap_fcntl_bug_OBJECTS) $(mmap_fcntl_bug_DEPENDENCIES) $(EXTRA_mmap_fcntl_bug_DEPENDENCIES) 
	@rm -f mmap_fcntl_bug$(EXEEXT)
	$(AM_V_CCLD)$(LINK) $(mmap_fcntl_bug_OBJECTS) $(mmap_fcntl_bug_LDADD) $(LIBS)

mq$(EXEEXT): $(mq_OBJECTS) $(mq_DEPENDENCIES) $(EXTRA_mq_DEPENDENCIES) 
	@rm -f mq$(EXEEXT)
	$(AM_V_CCLD)$(LINK) $(mq_OBJECTS) $(mq_LDADD) $(LIBS)

munmap_exe$(EXEEXT): $(munmap_exe_OBJECTS) $(munmap_exe_DEPENDENCIES) $(EXTRA_munmap_exe_DEPENDENCIES) 
	@rm -f munmap_exe$(EXEEXT)
	$(AM_V_CCLD)$(LINK) $(munmap_exe_OBJECTS) $(munmap_exe_LDADD) $(LIBS)

nestedfns$(EXEEXT): $(nestedfns_OBJECTS) $(nestedfns_DEPENDENCIES) $(EXTRA_nestedfns_DEPENDENCIES) 
	@rm -f nestedfns$(EXEEXT)
	$(AM_V_CCLD)$(nestedfns_LINK) $(nestedfns_OBJECTS) $(nestedfns_LDADD) $(LIBS)

nocwd$(EXEEXT): $(nocwd_OBJECTS) $(nocwd_DEPENDENCIES) $(EXTRA_nocwd_DEPENDENCIES) 
	@rm -f nocwd$(EXEEXT)
	$(AM_V_CCLD)$(LINK) $(nocwd_OBJECTS) $(nocwd_LDADD) $(LIBS)

pending$(EXEEXT): $(pending_OBJECTS) $(pending_DEPENDENCIES) $(EXTRA_pending_DEPENDENCIES) 
	@rm -f pending$(EXEEXT)
	$(AM_V_CCLD)$(LINK) $(pending_OBJECTS) $(pending_LDADD) $(LIBS)

ppoll_alarm$(EXEEXT): $(ppoll_alarm_OBJECTS) $(ppoll_alarm_DEPENDENCIES) $(EXTRA_ppoll_alarm_DEPENDENCIES) 
	@rm -f ppoll_alarm$(EXEEXT)
	$(AM_V_CCLD)$(LINK) $(ppoll_alarm_OBJECTS) $(ppoll_alarm_LDADD) $(LIBS)

process_vm_readv_writev$(EXEEXT): $(process_vm_readv_writev_OBJECTS) $(process_vm_readv_writev_DEPENDENCIES) $(EXTRA_process_vm_readv_writev_DEPENDENCIES) 
	@rm -f process_vm_readv_writev$(EXEEXT)
	$(AM_V_CCLD)$(LINK) $(process_vm_readv_writev_OBJECTS) $(process_vm_readv_writev_LDADD) $(LIBS)

procfs-cmdline-exe$(EXEEXT): $(procfs_cmdline_exe_OBJECTS) $(procfs_cmdline_exe_DEPENDENCIES) $(EXTRA_procfs_cmdline_exe_DEPENDENCIES) 
	@rm -f procfs-cmdline-exe$(EXEEXT)
	$(AM_V_CCLD)$(LINK) $(procfs_cmdline_exe_OBJECTS) $(procfs_cmdline_exe_LDADD) $(LIBS)

pselect_alarm$(EXEEXT): $(pselect_alarm_OBJECTS) $(pselect_alarm_DEPENDENCIES) $(EXTRA_pselect_alarm_DEPENDENCIES) 
	@rm -f pselect_alarm$(EXEEXT)
	$(AM_V_CCLD)$(LINK) $(pselect_alarm_OBJECTS) $(pselect_alarm_LDADD) $(LIBS)

pselect_sigmask_null$(EXEEXT): $(pselect_sigmask_null_OBJECTS) $(pselect_sigmask_null_DEPENDENCIES) $(EXTRA_pselect_sigmask_null_DEPENDENCIES) 
	@rm -f pselect_sigmask_null$(EXEEXT)
	$(AM_V_CCLD)$(LINK) $(pselect_sigmask_null_OBJECTS) $(pselect_sigmask_null_LDADD) $(LIBS)

pth_atfork1$(EXEEXT): $(pth_atfork1_OBJECTS) $(pth_atfork1_DEPENDENCIES) $(EXTRA_pth_atfork1_DEPENDENCIES) 
	@rm -f pth_atfork1$(EXEEXT)
	$(AM_V_CCLD)$(LINK) $(pth_atfork1_OBJECTS) $(pth_atfork1_LDADD) $(LIBS)

pth_blockedsig$(EXEEXT): $(pth_blockedsig_OBJECTS) $(pth_blockedsig_DEPENDENCIES) $(EXTRA_pth_blockedsig_DEPENDENCIES) 
	@rm -f pth_blockedsig$(EXEEXT)
	$(AM_V_CCLD)$(LINK) $(pth_blockedsig_OBJECTS) $(pth_blockedsig_LDADD) $(LIBS)

pth_cancel1$(EXEEXT): $(pth_cancel1_OBJECTS) $(pth_cancel1_DEPENDENCIES) $(EXTRA_pth_cancel1_DEPENDENCIES) 
	@rm -f pth_cancel1$(EXEEXT)
	$(AM_V_CCLD)$(pth_cancel1_LINK) $(pth_cancel1_OBJECTS) $(pth_cancel1_LDADD) $(LIBS)

pth_cancel2$(EXEEXT): $(pth_cancel2_OBJECTS) $(pth_cancel2_DEPENDENCIES) $(EXTRA_pth_cancel2_DEPENDENCIES) 
	@rm -f pth_cancel2$(EXEEXT)
	$(AM_V_CCLD)$(LINK) $(pth_cancel2_OBJECTS) $(pth_cancel2_LDADD) $(LIBS)

pth_cvsimple$(EXEEXT): $(pth_cvsimple_OBJECTS) $(pth_cvsimple_DEPENDENCIES) $(EXTRA_pth_cvsimple_DEPENDENCIES) 
	@rm -f pth_cvsimple$(EXEEXT)
	$(AM_V_CCLD)$(LINK) $(pth_cvsimple_OBJECTS) $(pth_cvsimple_LDADD) $(LIBS)

pth_empty$(EXEEXT): $(pth_empty_OBJECTS) $(pth_empty_DEPENDENCIES) $(EXTRA_pth_empty_DEPENDENCIES) 
	@rm -f pth_empty$(EXEEXT)
	$(AM_V_CCLD)$(LINK) $(pth_empty_OBJECTS) $(pth_empty_LDADD) $(LIBS)

pth_exit$(EXEEXT): $(pth_exit_OBJECTS) $(pth_exit_DEPENDENCIES) $(EXTRA_pth_exit_DEPENDENCIES) 
	@rm -f pth_exit$(EXEEXT)
	$(AM_V_CCLD)$(LINK) $(pth_exit_OBJECTS) $(pth_exit_LDADD) $(LIBS)

pth_exit2$(EXEEXT): $(pth_exit2_OBJECTS) $(pth_exit2_DEPENDENCIES) $(EXTRA_pth_exit2_DEPENDENCIES) 
	@rm -f pth_exit2$(EXEEXT)
	$(AM_V_CCLD)$(LINK) $(pth_exit2_OBJECTS) $(pth_exit2_LDADD) $(LIBS)

pth_mutexspeed$(EXEEXT): $(pth_mutexspeed_OBJECTS) $(pth_mutexspeed_DEPENDENCIES) $(EXTRA_pth_mutexspeed_DEPENDENCIES) 
	@rm -f pth_mutexspeed$(EXEEXT)
	$(AM_V_CCLD)$(LINK) $(pth_mutexspeed_OBJECTS) $(pth_mutexspeed_LDADD) $(LIBS)

pth_once$(EXEEXT): $(pth_once_OBJECTS) $(pth_once_DEPENDENCIES) $(EXTRA_pth_once_DEPENDENCIES) 
	@rm -f pth_once$(EXEEXT)
	$(AM_V_CCLD)$(LINK) $(pth_once_OBJECTS) $(pth_once_LDADD) $(LIBS)

pth_rwlock$(EXEEXT): $(pth_rwlock_OBJECTS) $(pth_rwlock_DEPENDENCIES) $(EXTRA_pth_rwlock_DEPENDENCIES) 
	@rm -f pth_rwlock$(EXEEXT)
	$(AM_V_CCLD)$(pth_rwlock_LINK) $(pth_rwlock_OBJECTS) $(pth_rwlock_LDADD) $(LIBS)

pth_stackalign$(EXEEXT): $(pth_stackalign_OBJECTS) $(pth_stackalign_DEPENDENCIES) $(EXTRA_pth_stackalign_DEPENDENCIES) 
	@rm -f pth_stackalign$(EXEEXT)
	$(AM_V_CCLD)$(LINK) $(pth_stackalign_OBJECTS) $(pth_stackalign_LDADD) $(LIBS)

pth_term_signal$(EXEEXT): $(pth_term_signal_OBJECTS) $(pth_term_signal_DEPENDENCIES) $(EXTRA_pth_term_signal_DEPENDENCIES) 
	@rm -f pth_term_signal$(EXEEXT)
	$(AM_V_CCLD)$(LINK) $(pth_term_signal_OBJECTS) $(pth_term_signal_LDADD) $(LIBS)

rcrl$(EXEEXT): $(rcrl_OBJECTS) $(rcrl_DEPENDENCIES) $(EXTRA_rcrl_DEPENDENCIES) 
	@rm -f rcrl$(EXEEXT)
	$(AM_V_CCLD)$(LINK) $(rcrl_OBJECTS) $(rcrl_LDADD) $(LIBS)

readline1$(EXEEXT): $(readline1_OBJECTS) $(readline1_DEPENDENCIES) $(EXTRA_readline1_DEPENDENCIES) 
	@rm -f readline1$(EXEEXT)
	$(AM_V_CCLD)$(LINK) $(readline1_OBJECTS) $(readline1_LDADD) $(LIBS)

require-text-symbol$(EXEEXT): $(require_text_symbol_OBJECTS) $(require_text_symbol_DEPENDENCIES) $(EXTRA_require_text_symbol_DEPENDENCIES) 
	@rm -f require-text-symbol$(EXEEXT)
	$(AM_V_CCLD)$(LINK) $(require_text_symbol_OBJECTS) $(require_text_symbol_LDADD) $(LIBS)

res_search$(EXEEXT): $(res_search_OBJECTS) $(res_search_DEPENDENCIES) $(EXTRA_res_search_DEPENDENCIES) 
	@rm -f res_search$(EXEEXT)
	$(AM_V_CCLD)$(LINK) $(res_search_OBJECTS) $(res_search_LDADD) $(LIBS)

resolv$(EXEEXT): $(resolv_OBJECTS) $(resolv_DEPENDENCIES) $(EXTRA_resolv_DEPENDENCIES) 
	@rm -f resolv$(EXEEXT)
	$(AM_V_CCLD)$(resolv_LINK) $(resolv_OBJECTS) $(resolv_LDADD) $(LIBS)

rlimit64_nofile$(EXEEXT): $(rlimit64_nofile_OBJECTS) $(rlimit64_nofile_DEPENDENCIES) $(EXTRA_rlimit64_nofile_DEPENDENCIES) 
	@rm -f rlimit64_nofile$(EXEEXT)
	$(AM_V_CCLD)$(LINK) $(rlimit64_nofile_OBJECTS) $(rlimit64_nofile_LDADD) $(LIBS)

rlimit_nofile$(EXEEXT): $(rlimit_nofile_OBJECTS) $(rlimit_nofile_DEPENDENCIES) $(EXTRA_rlimit_nofile_DEPENDENCIES) 
	@rm -f rlimit_nofile$(EXEEXT)
	$(AM_V_CCLD)$(LINK) $(rlimit_nofile_OBJECTS) $(rlimit_nofile_LDADD) $(LIBS)

selfrun$(EXEEXT): $(selfrun_OBJECTS) $(selfrun_DEPENDENCIES) $(EXTRA_selfrun_DEPENDENCIES) 
	@rm -f selfrun$(EXEEXT)
	$(AM_V_CCLD)$(LINK) $(selfrun_OBJECTS) $(selfrun_LDADD) $(LIBS)

sem$(EXEEXT): $(sem_OBJECTS) $(sem_DEPENDENCIES) $(EXTRA_sem_DEPENDENCIES) 
	@rm -f sem$(EXEEXT)
	$(AM_V_CCLD)$(LINK) $(sem_OBJECTS) $(sem_LDADD) $(LIBS)

semlimit$(EXEEXT): $(semlimit_OBJECTS) $(semlimit_DEPENDENCIES) $(EXTRA_semlimit_DEPENDENCIES) 
	@rm -f semlimit$(EXEEXT)
	$(AM_V_CCLD)$(LINK) $(semlimit_OBJECTS) $(semlimit_LDADD) $(LIBS)

sha1_test$(EXEEXT): $(sha1_test_OBJECTS) $(sha1_test_DEPENDENCIES) $(EXTRA_sha1_test_DEPENDENCIES) 
	@rm -f sha1_test$(EXEEXT)
	$(AM_V_CCLD)$(sha1_test_LINK) $(sha1_test_OBJECTS) $(sha1_test_LDADD) $(LIBS)

shortpush$(EXEEXT): $(shortpush_OBJECTS) $(shortpush_DEPENDENCIES) $(EXTRA_shortpush_DEPENDENCIES) 
	@rm -f shortpush$(EXEEXT)
	$(AM_V_CCLD)$(LINK) $(shortpush_OBJECTS) $(shortpush_LDADD) $(LIBS)

shorts$(EXEEXT): $(shorts_OBJECTS) $(shorts_DEPENDENCIES) $(EXTRA_shorts_DEPENDENCIES) 
	@rm -f shorts$(EXEEXT)
	$(AM_V_CCLD)$(LINK) $(shorts_OBJECTS) $(shorts_LDADD) $(LIBS)

sigstackgrowth$(EXEEXT): $(sigstackgrowth_OBJECTS) $(sigstackgrowth_DEPENDENCIES) $(EXTRA_sigstackgrowth_DEPENDENCIES) 
	@rm -f sigstackgrowth$(EXEEXT)
	$(AM_V_CCLD)$(LINK) $(sigstackgrowth_OBJECTS) $(sigstackgrowth_LDADD) $(LIBS)

stackgrowth$(EXEEXT): $(stackgrowth_OBJECTS) $(stackgrowth_DEPENDENCIES) $(EXTRA_stackgrowth_DEPENDENCIES) 
	@rm -f stackgrowth$(EXEEXT)
	$(AM_V_CCLD)$(LINK) $(stackgrowth_OBJECTS) $(stackgrowth_LDADD) $(LIBS)

syscall-restart1$(EXEEXT): $(syscall_restart1_OBJECTS) $(syscall_restart1_DEPENDENCIES) $(EXTRA_syscall_restart1_DEPENDENCIES) 
	@rm -f syscall-restart1$(EXEEXT)
	$(AM_V_CCLD)$(LINK) $(syscall_restart1_OBJECTS) $(syscall_restart1_LDADD) $(LIBS)

syscall-restart2$(EXEEXT): $(syscall_restart2_OBJECTS) $(syscall_restart2_DEPENDENCIES) $(EXTRA_syscall_restart2_DEPENDENCIES) 
	@rm -f syscall-restart2$(EXEEXT)
	$(AM_V_CCLD)$(LINK) $(syscall_restart2_OBJECTS) $(syscall_restart2_LDADD) $(LIBS)

syslog$(EXEEXT): $(syslog_OBJECTS) $(syslog_DEPENDENCIES) $(EXTRA_syslog_DEPENDENCIES) 
	@rm -f syslog$(EXEEXT)
	$(AM_V_CCLD)$(LINK) $(syslog_OBJECTS) $(syslog_LDADD) $(LIBS)

system$(EXEEXT): $(system_OBJECTS) $(system_DEPENDENCIES) $(EXTRA_system_DEPENDENCIES) 
	@rm -f system$(EXEEXT)
	$(AM_V_CCLD)$(LINK) $(system_OBJECTS) $(system_LDADD) $(LIBS)

thread-exits$(EXEEXT): $(thread_exits_OBJECTS) $(thread_exits_DEPENDENCIES) $(EXTRA_thread_exits_DEPENDENCIES) 
	@rm -f thread-exits$(EXEEXT)
	$(AM_V_CCLD)$(LINK) $(thread_exits_OBJECTS) $(thread_exits_LDADD) $(LIBS)

threaded-fork$(EXEEXT): $(threaded_fork_OBJECTS) $(threaded_fork_DEPENDENCIES) $(EXTRA_threaded_fork_DEPENDENCIES) 
	@rm -f threaded-fork$(EXEEXT)
	$(AM_V_CCLD)$(LINK) $(threaded_fork_OBJECTS) $(threaded_fork_LDADD) $(LIBS)

threadederrno$(EXEEXT): $(threadederrno_OBJECTS) $(threadederrno_DEPENDENCIES) $(EXTRA_threadederrno_DEPENDENCIES) 
	@rm -f threadederrno$(EXEEXT)
	$(AM_V_CCLD)$(threadederrno_LINK) $(threadederrno_OBJECTS) $(threadederrno_LDADD) $(LIBS)

timestamp$(EXEEXT): $(timestamp_OBJECTS) $(timestamp_DEPENDENCIES) $(EXTRA_timestamp_DEPENDENCIES) 
	@rm -f timestamp$(EXEEXT)
	$(AM_V_CCLD)$(LINK) $(timestamp_OBJECTS) $(timestamp_LDADD) $(LIBS)

tls$(EXEEXT): $(tls_OBJECTS) $(tls_DEPENDENCIES) $(EXTRA_tls_DEPENDENCIES) 
	@rm -f tls$(EXEEXT)
	$(AM_V_CCLD)$(tls_LINK) $(tls_OBJECTS) $(tls_LDADD) $(LIBS)

tls.so$(EXEEXT): $(tls_so_OBJECTS) $(tls_so_DEPENDENCIES) $(EXTRA_tls_so_DEPENDENCIES) 
	@rm -f tls.so$(EXEEXT)
	$(AM_V_CCLD)$(tls_so_LINK) $(tls_so_OBJECTS) $(tls_so_LDADD) $(LIBS)

tls2.so$(EXEEXT): $(tls2_so_OBJECTS) $(tls2_so_DEPENDENCIES) $(EXTRA_tls2_so_DEPENDENCIES) 
	@rm -f tls2.so$(EXEEXT)
	$(AM_V_CCLD)$(tls2_so_LINK) $(tls2_so_OBJECTS) $(tls2_so_LDADD) $(LIBS)

unit_debuglog$(EXEEXT): $(unit_debuglog_OBJECTS) $(unit_debuglog_DEPENDENCIES) $(EXTRA_unit_debuglog_DEPENDENCIES) 
	@rm -f unit_debuglog$(EXEEXT)
	$(AM_V_CCLD)$(LINK) $(unit_debuglog_OBJECTS) $(unit_debuglog_LDADD) $(LIBS)

valgrind_cpp_test$(EXEEXT): $(valgrind_cpp_test_OBJECTS) $(valgrind_cpp_test_DEPENDENCIES) $(EXTRA_valgrind_cpp_test_DEPENDENCIES) 
	@rm -f valgrind_cpp_test$(EXEEXT)
	$(AM_V_CXXLD)$(CXXLINK) $(valgrind_cpp_test_OBJECTS) $(valgrind_cpp_test_LDADD) $(LIBS)

vgprintf$(EXEEXT): $(vgprintf_OBJECTS) $(vgprintf_DEPENDENCIES) $(EXTRA_vgprintf_DEPENDENCIES) 
	@rm -f vgprintf$(EXEEXT)
	$(AM_V_CCLD)$(LINK) $(vgprintf_OBJECTS) $(vgprintf_LDADD) $(LIBS)

mostlyclean-compile:
	-rm -f *.$(OBJEXT)

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

@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ansi-ansi.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/args.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/async-sigs.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/bitfield1.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/bug129866.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/bug234814.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/closeall.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/coolo_sigaction.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/coolo_strlen.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/discard.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/exec-sigmask.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/execve-execve.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/faultstatus.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/fcntl_setown.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/fdleak_cmsg-fdleak_cmsg.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/fdleak_creat.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/fdleak_dup.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/fdleak_dup2.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/fdleak_fcntl.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/fdleak_ipv4.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/fdleak_open.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/fdleak_pipe.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/fdleak_socketpair.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/floored.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/fork.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/fucomip.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/gxx304.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ifunc.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ioctl_moans.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libvex_test-libvex_test.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libvexmultiarch_test-libvex_test.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/manythreads.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/map_unaligned.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/map_unmap.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/mmap_fcntl_bug.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/mq.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/munmap_exe.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nestedfns-nestedfns.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nocwd.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/pending.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ppoll_alarm.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/process_vm_readv_writev.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/procfs-cmdline-exe.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/pselect_alarm.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/pselect_sigmask_null.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/pth_atfork1.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/pth_blockedsig.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/pth_cancel1-pth_cancel1.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/pth_cancel2.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/pth_cvsimple.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/pth_empty.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/pth_exit.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/pth_exit2.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/pth_mutexspeed.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/pth_once.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/pth_rwlock-pth_rwlock.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/pth_stackalign.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/pth_term_signal.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/rcrl.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/readline1.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/require-text-symbol.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/res_search.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/resolv-resolv.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/rlimit64_nofile.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/rlimit_nofile.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/selfrun.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/sem.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/semlimit.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/sha1_test-sha1_test.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/shortpush.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/shorts.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/sigstackgrowth.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/stackgrowth.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/syscall-restart1.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/syscall-restart2.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/syslog.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/system.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/thread-exits.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/threaded-fork.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/threadederrno-threadederrno.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/timestamp.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/tls.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/tls2.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/tls2_so.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/tls_so-tls_so.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/unit_debuglog.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/valgrind_cpp_test.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/vgprintf.Po@am__quote@

.c.o:
@am__fastdepCC_TRUE@	$(AM_V_CC)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@	$(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(COMPILE) -c -o $@ $<

.c.obj:
@am__fastdepCC_TRUE@	$(AM_V_CC)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@	$(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(COMPILE) -c -o $@ `$(CYGPATH_W) '$<'`

ansi-ansi.o: ansi.c
@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ansi_CFLAGS) $(CFLAGS) -MT ansi-ansi.o -MD -MP -MF $(DEPDIR)/ansi-ansi.Tpo -c -o ansi-ansi.o `test -f 'ansi.c' || echo '$(srcdir)/'`ansi.c
@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/ansi-ansi.Tpo $(DEPDIR)/ansi-ansi.Po
@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='ansi.c' object='ansi-ansi.o' libtool=no @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ansi_CFLAGS) $(CFLAGS) -c -o ansi-ansi.o `test -f 'ansi.c' || echo '$(srcdir)/'`ansi.c

ansi-ansi.obj: ansi.c
@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ansi_CFLAGS) $(CFLAGS) -MT ansi-ansi.obj -MD -MP -MF $(DEPDIR)/ansi-ansi.Tpo -c -o ansi-ansi.obj `if test -f 'ansi.c'; then $(CYGPATH_W) 'ansi.c'; else $(CYGPATH_W) '$(srcdir)/ansi.c'; fi`
@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/ansi-ansi.Tpo $(DEPDIR)/ansi-ansi.Po
@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='ansi.c' object='ansi-ansi.obj' libtool=no @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(ansi_CFLAGS) $(CFLAGS) -c -o ansi-ansi.obj `if test -f 'ansi.c'; then $(CYGPATH_W) 'ansi.c'; else $(CYGPATH_W) '$(srcdir)/ansi.c'; fi`

execve-execve.o: execve.c
@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(execve_CFLAGS) $(CFLAGS) -MT execve-execve.o -MD -MP -MF $(DEPDIR)/execve-execve.Tpo -c -o execve-execve.o `test -f 'execve.c' || echo '$(srcdir)/'`execve.c
@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/execve-execve.Tpo $(DEPDIR)/execve-execve.Po
@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='execve.c' object='execve-execve.o' libtool=no @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(execve_CFLAGS) $(CFLAGS) -c -o execve-execve.o `test -f 'execve.c' || echo '$(srcdir)/'`execve.c

execve-execve.obj: execve.c
@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(execve_CFLAGS) $(CFLAGS) -MT execve-execve.obj -MD -MP -MF $(DEPDIR)/execve-execve.Tpo -c -o execve-execve.obj `if test -f 'execve.c'; then $(CYGPATH_W) 'execve.c'; else $(CYGPATH_W) '$(srcdir)/execve.c'; fi`
@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/execve-execve.Tpo $(DEPDIR)/execve-execve.Po
@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='execve.c' object='execve-execve.obj' libtool=no @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(execve_CFLAGS) $(CFLAGS) -c -o execve-execve.obj `if test -f 'execve.c'; then $(CYGPATH_W) 'execve.c'; else $(CYGPATH_W) '$(srcdir)/execve.c'; fi`

fdleak_cmsg-fdleak_cmsg.o: fdleak_cmsg.c
@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(fdleak_cmsg_CFLAGS) $(CFLAGS) -MT fdleak_cmsg-fdleak_cmsg.o -MD -MP -MF $(DEPDIR)/fdleak_cmsg-fdleak_cmsg.Tpo -c -o fdleak_cmsg-fdleak_cmsg.o `test -f 'fdleak_cmsg.c' || echo '$(srcdir)/'`fdleak_cmsg.c
@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/fdleak_cmsg-fdleak_cmsg.Tpo $(DEPDIR)/fdleak_cmsg-fdleak_cmsg.Po
@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='fdleak_cmsg.c' object='fdleak_cmsg-fdleak_cmsg.o' libtool=no @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(fdleak_cmsg_CFLAGS) $(CFLAGS) -c -o fdleak_cmsg-fdleak_cmsg.o `test -f 'fdleak_cmsg.c' || echo '$(srcdir)/'`fdleak_cmsg.c

fdleak_cmsg-fdleak_cmsg.obj: fdleak_cmsg.c
@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(fdleak_cmsg_CFLAGS) $(CFLAGS) -MT fdleak_cmsg-fdleak_cmsg.obj -MD -MP -MF $(DEPDIR)/fdleak_cmsg-fdleak_cmsg.Tpo -c -o fdleak_cmsg-fdleak_cmsg.obj `if test -f 'fdleak_cmsg.c'; then $(CYGPATH_W) 'fdleak_cmsg.c'; else $(CYGPATH_W) '$(srcdir)/fdleak_cmsg.c'; fi`
@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/fdleak_cmsg-fdleak_cmsg.Tpo $(DEPDIR)/fdleak_cmsg-fdleak_cmsg.Po
@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='fdleak_cmsg.c' object='fdleak_cmsg-fdleak_cmsg.obj' libtool=no @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(fdleak_cmsg_CFLAGS) $(CFLAGS) -c -o fdleak_cmsg-fdleak_cmsg.obj `if test -f 'fdleak_cmsg.c'; then $(CYGPATH_W) 'fdleak_cmsg.c'; else $(CYGPATH_W) '$(srcdir)/fdleak_cmsg.c'; fi`

libvex_test-libvex_test.o: libvex_test.c
@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libvex_test_CFLAGS) $(CFLAGS) -MT libvex_test-libvex_test.o -MD -MP -MF $(DEPDIR)/libvex_test-libvex_test.Tpo -c -o libvex_test-libvex_test.o `test -f 'libvex_test.c' || echo '$(srcdir)/'`libvex_test.c
@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/libvex_test-libvex_test.Tpo $(DEPDIR)/libvex_test-libvex_test.Po
@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='libvex_test.c' object='libvex_test-libvex_test.o' libtool=no @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libvex_test_CFLAGS) $(CFLAGS) -c -o libvex_test-libvex_test.o `test -f 'libvex_test.c' || echo '$(srcdir)/'`libvex_test.c

libvex_test-libvex_test.obj: libvex_test.c
@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libvex_test_CFLAGS) $(CFLAGS) -MT libvex_test-libvex_test.obj -MD -MP -MF $(DEPDIR)/libvex_test-libvex_test.Tpo -c -o libvex_test-libvex_test.obj `if test -f 'libvex_test.c'; then $(CYGPATH_W) 'libvex_test.c'; else $(CYGPATH_W) '$(srcdir)/libvex_test.c'; fi`
@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/libvex_test-libvex_test.Tpo $(DEPDIR)/libvex_test-libvex_test.Po
@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='libvex_test.c' object='libvex_test-libvex_test.obj' libtool=no @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libvex_test_CFLAGS) $(CFLAGS) -c -o libvex_test-libvex_test.obj `if test -f 'libvex_test.c'; then $(CYGPATH_W) 'libvex_test.c'; else $(CYGPATH_W) '$(srcdir)/libvex_test.c'; fi`

libvexmultiarch_test-libvex_test.o: libvex_test.c
@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libvexmultiarch_test_CFLAGS) $(CFLAGS) -MT libvexmultiarch_test-libvex_test.o -MD -MP -MF $(DEPDIR)/libvexmultiarch_test-libvex_test.Tpo -c -o libvexmultiarch_test-libvex_test.o `test -f 'libvex_test.c' || echo '$(srcdir)/'`libvex_test.c
@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/libvexmultiarch_test-libvex_test.Tpo $(DEPDIR)/libvexmultiarch_test-libvex_test.Po
@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='libvex_test.c' object='libvexmultiarch_test-libvex_test.o' libtool=no @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libvexmultiarch_test_CFLAGS) $(CFLAGS) -c -o libvexmultiarch_test-libvex_test.o `test -f 'libvex_test.c' || echo '$(srcdir)/'`libvex_test.c

libvexmultiarch_test-libvex_test.obj: libvex_test.c
@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libvexmultiarch_test_CFLAGS) $(CFLAGS) -MT libvexmultiarch_test-libvex_test.obj -MD -MP -MF $(DEPDIR)/libvexmultiarch_test-libvex_test.Tpo -c -o libvexmultiarch_test-libvex_test.obj `if test -f 'libvex_test.c'; then $(CYGPATH_W) 'libvex_test.c'; else $(CYGPATH_W) '$(srcdir)/libvex_test.c'; fi`
@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/libvexmultiarch_test-libvex_test.Tpo $(DEPDIR)/libvexmultiarch_test-libvex_test.Po
@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='libvex_test.c' object='libvexmultiarch_test-libvex_test.obj' libtool=no @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libvexmultiarch_test_CFLAGS) $(CFLAGS) -c -o libvexmultiarch_test-libvex_test.obj `if test -f 'libvex_test.c'; then $(CYGPATH_W) 'libvex_test.c'; else $(CYGPATH_W) '$(srcdir)/libvex_test.c'; fi`

nestedfns-nestedfns.o: nestedfns.c
@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(nestedfns_CFLAGS) $(CFLAGS) -MT nestedfns-nestedfns.o -MD -MP -MF $(DEPDIR)/nestedfns-nestedfns.Tpo -c -o nestedfns-nestedfns.o `test -f 'nestedfns.c' || echo '$(srcdir)/'`nestedfns.c
@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/nestedfns-nestedfns.Tpo $(DEPDIR)/nestedfns-nestedfns.Po
@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='nestedfns.c' object='nestedfns-nestedfns.o' libtool=no @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(nestedfns_CFLAGS) $(CFLAGS) -c -o nestedfns-nestedfns.o `test -f 'nestedfns.c' || echo '$(srcdir)/'`nestedfns.c

nestedfns-nestedfns.obj: nestedfns.c
@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(nestedfns_CFLAGS) $(CFLAGS) -MT nestedfns-nestedfns.obj -MD -MP -MF $(DEPDIR)/nestedfns-nestedfns.Tpo -c -o nestedfns-nestedfns.obj `if test -f 'nestedfns.c'; then $(CYGPATH_W) 'nestedfns.c'; else $(CYGPATH_W) '$(srcdir)/nestedfns.c'; fi`
@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/nestedfns-nestedfns.Tpo $(DEPDIR)/nestedfns-nestedfns.Po
@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='nestedfns.c' object='nestedfns-nestedfns.obj' libtool=no @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(nestedfns_CFLAGS) $(CFLAGS) -c -o nestedfns-nestedfns.obj `if test -f 'nestedfns.c'; then $(CYGPATH_W) 'nestedfns.c'; else $(CYGPATH_W) '$(srcdir)/nestedfns.c'; fi`

pth_cancel1-pth_cancel1.o: pth_cancel1.c
@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(pth_cancel1_CFLAGS) $(CFLAGS) -MT pth_cancel1-pth_cancel1.o -MD -MP -MF $(DEPDIR)/pth_cancel1-pth_cancel1.Tpo -c -o pth_cancel1-pth_cancel1.o `test -f 'pth_cancel1.c' || echo '$(srcdir)/'`pth_cancel1.c
@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/pth_cancel1-pth_cancel1.Tpo $(DEPDIR)/pth_cancel1-pth_cancel1.Po
@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='pth_cancel1.c' object='pth_cancel1-pth_cancel1.o' libtool=no @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(pth_cancel1_CFLAGS) $(CFLAGS) -c -o pth_cancel1-pth_cancel1.o `test -f 'pth_cancel1.c' || echo '$(srcdir)/'`pth_cancel1.c

pth_cancel1-pth_cancel1.obj: pth_cancel1.c
@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(pth_cancel1_CFLAGS) $(CFLAGS) -MT pth_cancel1-pth_cancel1.obj -MD -MP -MF $(DEPDIR)/pth_cancel1-pth_cancel1.Tpo -c -o pth_cancel1-pth_cancel1.obj `if test -f 'pth_cancel1.c'; then $(CYGPATH_W) 'pth_cancel1.c'; else $(CYGPATH_W) '$(srcdir)/pth_cancel1.c'; fi`
@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/pth_cancel1-pth_cancel1.Tpo $(DEPDIR)/pth_cancel1-pth_cancel1.Po
@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='pth_cancel1.c' object='pth_cancel1-pth_cancel1.obj' libtool=no @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(pth_cancel1_CFLAGS) $(CFLAGS) -c -o pth_cancel1-pth_cancel1.obj `if test -f 'pth_cancel1.c'; then $(CYGPATH_W) 'pth_cancel1.c'; else $(CYGPATH_W) '$(srcdir)/pth_cancel1.c'; fi`

pth_rwlock-pth_rwlock.o: pth_rwlock.c
@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(pth_rwlock_CFLAGS) $(CFLAGS) -MT pth_rwlock-pth_rwlock.o -MD -MP -MF $(DEPDIR)/pth_rwlock-pth_rwlock.Tpo -c -o pth_rwlock-pth_rwlock.o `test -f 'pth_rwlock.c' || echo '$(srcdir)/'`pth_rwlock.c
@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/pth_rwlock-pth_rwlock.Tpo $(DEPDIR)/pth_rwlock-pth_rwlock.Po
@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='pth_rwlock.c' object='pth_rwlock-pth_rwlock.o' libtool=no @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(pth_rwlock_CFLAGS) $(CFLAGS) -c -o pth_rwlock-pth_rwlock.o `test -f 'pth_rwlock.c' || echo '$(srcdir)/'`pth_rwlock.c

pth_rwlock-pth_rwlock.obj: pth_rwlock.c
@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(pth_rwlock_CFLAGS) $(CFLAGS) -MT pth_rwlock-pth_rwlock.obj -MD -MP -MF $(DEPDIR)/pth_rwlock-pth_rwlock.Tpo -c -o pth_rwlock-pth_rwlock.obj `if test -f 'pth_rwlock.c'; then $(CYGPATH_W) 'pth_rwlock.c'; else $(CYGPATH_W) '$(srcdir)/pth_rwlock.c'; fi`
@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/pth_rwlock-pth_rwlock.Tpo $(DEPDIR)/pth_rwlock-pth_rwlock.Po
@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='pth_rwlock.c' object='pth_rwlock-pth_rwlock.obj' libtool=no @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(pth_rwlock_CFLAGS) $(CFLAGS) -c -o pth_rwlock-pth_rwlock.obj `if test -f 'pth_rwlock.c'; then $(CYGPATH_W) 'pth_rwlock.c'; else $(CYGPATH_W) '$(srcdir)/pth_rwlock.c'; fi`

resolv-resolv.o: resolv.c
@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(resolv_CFLAGS) $(CFLAGS) -MT resolv-resolv.o -MD -MP -MF $(DEPDIR)/resolv-resolv.Tpo -c -o resolv-resolv.o `test -f 'resolv.c' || echo '$(srcdir)/'`resolv.c
@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/resolv-resolv.Tpo $(DEPDIR)/resolv-resolv.Po
@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='resolv.c' object='resolv-resolv.o' libtool=no @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(resolv_CFLAGS) $(CFLAGS) -c -o resolv-resolv.o `test -f 'resolv.c' || echo '$(srcdir)/'`resolv.c

resolv-resolv.obj: resolv.c
@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(resolv_CFLAGS) $(CFLAGS) -MT resolv-resolv.obj -MD -MP -MF $(DEPDIR)/resolv-resolv.Tpo -c -o resolv-resolv.obj `if test -f 'resolv.c'; then $(CYGPATH_W) 'resolv.c'; else $(CYGPATH_W) '$(srcdir)/resolv.c'; fi`
@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/resolv-resolv.Tpo $(DEPDIR)/resolv-resolv.Po
@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='resolv.c' object='resolv-resolv.obj' libtool=no @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(resolv_CFLAGS) $(CFLAGS) -c -o resolv-resolv.obj `if test -f 'resolv.c'; then $(CYGPATH_W) 'resolv.c'; else $(CYGPATH_W) '$(srcdir)/resolv.c'; fi`

sha1_test-sha1_test.o: sha1_test.c
@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(sha1_test_CFLAGS) $(CFLAGS) -MT sha1_test-sha1_test.o -MD -MP -MF $(DEPDIR)/sha1_test-sha1_test.Tpo -c -o sha1_test-sha1_test.o `test -f 'sha1_test.c' || echo '$(srcdir)/'`sha1_test.c
@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/sha1_test-sha1_test.Tpo $(DEPDIR)/sha1_test-sha1_test.Po
@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='sha1_test.c' object='sha1_test-sha1_test.o' libtool=no @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(sha1_test_CFLAGS) $(CFLAGS) -c -o sha1_test-sha1_test.o `test -f 'sha1_test.c' || echo '$(srcdir)/'`sha1_test.c

sha1_test-sha1_test.obj: sha1_test.c
@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(sha1_test_CFLAGS) $(CFLAGS) -MT sha1_test-sha1_test.obj -MD -MP -MF $(DEPDIR)/sha1_test-sha1_test.Tpo -c -o sha1_test-sha1_test.obj `if test -f 'sha1_test.c'; then $(CYGPATH_W) 'sha1_test.c'; else $(CYGPATH_W) '$(srcdir)/sha1_test.c'; fi`
@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/sha1_test-sha1_test.Tpo $(DEPDIR)/sha1_test-sha1_test.Po
@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='sha1_test.c' object='sha1_test-sha1_test.obj' libtool=no @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(sha1_test_CFLAGS) $(CFLAGS) -c -o sha1_test-sha1_test.obj `if test -f 'sha1_test.c'; then $(CYGPATH_W) 'sha1_test.c'; else $(CYGPATH_W) '$(srcdir)/sha1_test.c'; fi`

threadederrno-threadederrno.o: threadederrno.c
@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(threadederrno_CFLAGS) $(CFLAGS) -MT threadederrno-threadederrno.o -MD -MP -MF $(DEPDIR)/threadederrno-threadederrno.Tpo -c -o threadederrno-threadederrno.o `test -f 'threadederrno.c' || echo '$(srcdir)/'`threadederrno.c
@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/threadederrno-threadederrno.Tpo $(DEPDIR)/threadederrno-threadederrno.Po
@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='threadederrno.c' object='threadederrno-threadederrno.o' libtool=no @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(threadederrno_CFLAGS) $(CFLAGS) -c -o threadederrno-threadederrno.o `test -f 'threadederrno.c' || echo '$(srcdir)/'`threadederrno.c

threadederrno-threadederrno.obj: threadederrno.c
@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(threadederrno_CFLAGS) $(CFLAGS) -MT threadederrno-threadederrno.obj -MD -MP -MF $(DEPDIR)/threadederrno-threadederrno.Tpo -c -o threadederrno-threadederrno.obj `if test -f 'threadederrno.c'; then $(CYGPATH_W) 'threadederrno.c'; else $(CYGPATH_W) '$(srcdir)/threadederrno.c'; fi`
@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/threadederrno-threadederrno.Tpo $(DEPDIR)/threadederrno-threadederrno.Po
@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='threadederrno.c' object='threadederrno-threadederrno.obj' libtool=no @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(threadederrno_CFLAGS) $(CFLAGS) -c -o threadederrno-threadederrno.obj `if test -f 'threadederrno.c'; then $(CYGPATH_W) 'threadederrno.c'; else $(CYGPATH_W) '$(srcdir)/threadederrno.c'; fi`

tls_so-tls_so.o: tls_so.c
@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(tls_so_CFLAGS) $(CFLAGS) -MT tls_so-tls_so.o -MD -MP -MF $(DEPDIR)/tls_so-tls_so.Tpo -c -o tls_so-tls_so.o `test -f 'tls_so.c' || echo '$(srcdir)/'`tls_so.c
@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/tls_so-tls_so.Tpo $(DEPDIR)/tls_so-tls_so.Po
@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='tls_so.c' object='tls_so-tls_so.o' libtool=no @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(tls_so_CFLAGS) $(CFLAGS) -c -o tls_so-tls_so.o `test -f 'tls_so.c' || echo '$(srcdir)/'`tls_so.c

tls_so-tls_so.obj: tls_so.c
@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(tls_so_CFLAGS) $(CFLAGS) -MT tls_so-tls_so.obj -MD -MP -MF $(DEPDIR)/tls_so-tls_so.Tpo -c -o tls_so-tls_so.obj `if test -f 'tls_so.c'; then $(CYGPATH_W) 'tls_so.c'; else $(CYGPATH_W) '$(srcdir)/tls_so.c'; fi`
@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/tls_so-tls_so.Tpo $(DEPDIR)/tls_so-tls_so.Po
@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='tls_so.c' object='tls_so-tls_so.obj' libtool=no @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(tls_so_CFLAGS) $(CFLAGS) -c -o tls_so-tls_so.obj `if test -f 'tls_so.c'; then $(CYGPATH_W) 'tls_so.c'; else $(CYGPATH_W) '$(srcdir)/tls_so.c'; fi`

.cpp.o:
@am__fastdepCXX_TRUE@	$(AM_V_CXX)depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.o$$||'`;\
@am__fastdepCXX_TRUE@	$(CXXCOMPILE) -MT $@ -MD -MP -MF $$depbase.Tpo -c -o $@ $< &&\
@am__fastdepCXX_TRUE@	$(am__mv) $$depbase.Tpo $$depbase.Po
@AMDEP_TRUE@@am__fastdepCXX_FALSE@	$(AM_V_CXX)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCXX_FALSE@	DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCXX_FALSE@	$(AM_V_CXX@am__nodep@)$(CXXCOMPILE) -c -o $@ $<

.cpp.obj:
@am__fastdepCXX_TRUE@	$(AM_V_CXX)depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.obj$$||'`;\
@am__fastdepCXX_TRUE@	$(CXXCOMPILE) -MT $@ -MD -MP -MF $$depbase.Tpo -c -o $@ `$(CYGPATH_W) '$<'` &&\
@am__fastdepCXX_TRUE@	$(am__mv) $$depbase.Tpo $$depbase.Po
@AMDEP_TRUE@@am__fastdepCXX_FALSE@	$(AM_V_CXX)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCXX_FALSE@	DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCXX_FALSE@	$(AM_V_CXX@am__nodep@)$(CXXCOMPILE) -c -o $@ `$(CYGPATH_W) '$<'`

# This directory's subdirectories are mostly independent; you can cd
# into them and run 'make' without going through this Makefile.
# To change the values of 'make' variables: instead of editing Makefiles,
# (1) if the variable is set in 'config.status', edit 'config.status'
#     (which will cause the Makefiles to be regenerated when you run 'make');
# (2) otherwise, pass the desired values on the 'make' command line.
$(am__recursive_targets):
	@fail=; \
	if $(am__make_keepgoing); then \
	  failcom='fail=yes'; \
	else \
	  failcom='exit 1'; \
	fi; \
	dot_seen=no; \
	target=`echo $@ | sed s/-recursive//`; \
	case "$@" in \
	  distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \
	  *) list='$(SUBDIRS)' ;; \
	esac; \
	for subdir in $$list; do \
	  echo "Making $$target in $$subdir"; \
	  if test "$$subdir" = "."; then \
	    dot_seen=yes; \
	    local_target="$$target-am"; \
	  else \
	    local_target="$$target"; \
	  fi; \
	  ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
	  || eval $$failcom; \
	done; \
	if test "$$dot_seen" = "no"; then \
	  $(MAKE) $(AM_MAKEFLAGS) "$$target-am" || exit 1; \
	fi; test -z "$$fail"

ID: $(am__tagged_files)
	$(am__define_uniq_tagged_files); mkid -fID $$unique
tags: tags-recursive
TAGS: tags

tags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
	set x; \
	here=`pwd`; \
	if ($(ETAGS) --etags-include --version) >/dev/null 2>&1; then \
	  include_option=--etags-include; \
	  empty_fix=.; \
	else \
	  include_option=--include; \
	  empty_fix=; \
	fi; \
	list='$(SUBDIRS)'; for subdir in $$list; do \
	  if test "$$subdir" = .; then :; else \
	    test ! -f $$subdir/TAGS || \
	      set "$$@" "$$include_option=$$here/$$subdir/TAGS"; \
	  fi; \
	done; \
	$(am__define_uniq_tagged_files); \
	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-recursive

CTAGS: ctags
ctags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
	$(am__define_uniq_tagged_files); \
	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"
cscopelist: cscopelist-recursive

cscopelist-am: $(am__tagged_files)
	list='$(am__tagged_files)'; \
	case "$(srcdir)" in \
	  [\\/]* | ?:[\\/]*) sdir="$(srcdir)" ;; \
	  *) sdir=$(subdir)/$(srcdir) ;; \
	esac; \
	for i in $$list; do \
	  if test -f "$$i"; then \
	    echo "$(subdir)/$$i"; \
	  else \
	    echo "$$sdir/$$i"; \
	  fi; \
	done >> $(top_builddir)/cscope.files

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
	@list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
	  if test "$$subdir" = .; then :; else \
	    $(am__make_dryrun) \
	      || test -d "$(distdir)/$$subdir" \
	      || $(MKDIR_P) "$(distdir)/$$subdir" \
	      || exit 1; \
	    dir1=$$subdir; dir2="$(distdir)/$$subdir"; \
	    $(am__relativize); \
	    new_distdir=$$reldir; \
	    dir1=$$subdir; dir2="$(top_distdir)"; \
	    $(am__relativize); \
	    new_top_distdir=$$reldir; \
	    echo " (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) top_distdir="$$new_top_distdir" distdir="$$new_distdir" \\"; \
	    echo "     am__remove_distdir=: am__skip_length_check=: am__skip_mode_fix=: distdir)"; \
	    ($(am__cd) $$subdir && \
	      $(MAKE) $(AM_MAKEFLAGS) \
	        top_distdir="$$new_top_distdir" \
	        distdir="$$new_distdir" \
		am__remove_distdir=: \
		am__skip_length_check=: \
		am__skip_mode_fix=: \
	        distdir) \
	      || exit 1; \
	  fi; \
	done
check-am: all-am
	$(MAKE) $(AM_MAKEFLAGS) $(check_PROGRAMS)
	$(MAKE) $(AM_MAKEFLAGS) check-local
check: check-recursive
all-am: Makefile $(SCRIPTS) $(HEADERS)
installdirs: installdirs-recursive
installdirs-am:
install: install-recursive
install-exec: install-exec-recursive
install-data: install-data-recursive
uninstall: uninstall-recursive

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

installcheck: installcheck-recursive
install-strip:
	if test -z '$(STRIP)'; then \
	  $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
	    install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
	      install; \
	else \
	  $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
	    install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
	    "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \
	fi
mostlyclean-generic:

clean-generic:

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)

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-recursive

clean-am: clean-checkPROGRAMS clean-generic clean-local mostlyclean-am

distclean: distclean-recursive
	-rm -rf ./$(DEPDIR)
	-rm -f Makefile
distclean-am: clean-am distclean-compile distclean-generic \
	distclean-tags

dvi: dvi-recursive

dvi-am:

html: html-recursive

html-am:

info: info-recursive

info-am:

install-data-am:

install-dvi: install-dvi-recursive

install-dvi-am:

install-exec-am:

install-html: install-html-recursive

install-html-am:

install-info: install-info-recursive

install-info-am:

install-man:

install-pdf: install-pdf-recursive

install-pdf-am:

install-ps: install-ps-recursive

install-ps-am:

installcheck-am:

maintainer-clean: maintainer-clean-recursive
	-rm -rf ./$(DEPDIR)
	-rm -f Makefile
maintainer-clean-am: distclean-am maintainer-clean-generic

mostlyclean: mostlyclean-recursive

mostlyclean-am: mostlyclean-compile mostlyclean-generic

pdf: pdf-recursive

pdf-am:

ps: ps-recursive

ps-am:

uninstall-am:

.MAKE: $(am__recursive_targets) check-am install-am install-strip

.PHONY: $(am__recursive_targets) CTAGS GTAGS TAGS all all-am check \
	check-am check-local clean clean-checkPROGRAMS clean-generic \
	clean-local cscopelist-am ctags ctags-am distclean \
	distclean-compile distclean-generic 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-man install-pdf \
	install-pdf-am install-ps install-ps-am install-strip \
	installcheck installcheck-am installdirs installdirs-am \
	maintainer-clean maintainer-clean-generic mostlyclean \
	mostlyclean-compile mostlyclean-generic pdf pdf-am ps ps-am \
	tags tags-am uninstall uninstall-am

.PRECIOUS: Makefile


# This used to be required when Vex had a handwritten Makefile.  It
# shouldn't be needed any more, though.

#----------------------------------------------------------------------------
# noinst_PROGRAMS and noinst_DSYMS targets
#----------------------------------------------------------------------------

# On Darwin, for a program 'p', the DWARF debug info is stored in the
# directory 'p.dSYM'.  This must be generated after the executable is
# created, with 'dsymutil p'.  We could redefine LINK with a script that
# executes 'dsymutil' after linking, but that's a pain.  Instead we use this
# hook so that every time "make check" is run, we subsequently invoke
# 'dsymutil' on all the executables that lack a .dSYM directory, or that are
# newer than their corresponding .dSYM directory.
build-noinst_DSYMS: $(noinst_DSYMS)
	for f in $(noinst_DSYMS); do \
	  if [ ! -e $$f.dSYM  -o  $$f -nt $$f.dSYM ] ; then \
	      echo "dsymutil $$f"; \
	      dsymutil $$f; \
	  fi; \
	done

# This is used by coregrind/Makefile.am and Makefile.tool.am for doing
# "in-place" installs.  It copies $(noinst_PROGRAMS) into $inplacedir.
# It needs to be depended on by an 'all-local' rule.
inplace-noinst_PROGRAMS: $(noinst_PROGRAMS)
	mkdir -p $(inplacedir); \
	for f in $(noinst_PROGRAMS) ; do \
	  rm -f $(inplacedir)/$$f; \
	  ln -f -s ../$(subdir)/$$f $(inplacedir); \
	done

# Similar to inplace-noinst_PROGRAMS
inplace-noinst_DSYMS: build-noinst_DSYMS
	mkdir -p $(inplacedir); \
	for f in $(noinst_DSYMS); do \
	  rm -f $(inplacedir)/$$f.dSYM; \
	  ln -f -s ../$(subdir)/$$f.dSYM $(inplacedir); \
	done

# This is used by coregrind/Makefile.am and by <tool>/Makefile.am for doing
# "make install".  It copies $(noinst_PROGRAMS) into $prefix/lib/valgrind/.
# It needs to be depended on by an 'install-exec-local' rule.
install-noinst_PROGRAMS: $(noinst_PROGRAMS)
	$(mkinstalldirs) $(DESTDIR)$(pkglibdir); \
	for f in $(noinst_PROGRAMS); do \
	  $(INSTALL_PROGRAM) $$f $(DESTDIR)$(pkglibdir); \
	done

# This is used by coregrind/Makefile.am and by <tool>/Makefile.am for doing
# "make uninstall".  It removes $(noinst_PROGRAMS) from $prefix/lib/valgrind/.
# It needs to be depended on by an 'uninstall-local' rule.
uninstall-noinst_PROGRAMS:
	for f in $(noinst_PROGRAMS); do \
	  rm -f $(DESTDIR)$(pkglibdir)/$$f; \
	done

# Similar to install-noinst_PROGRAMS.
# Nb: we don't use $(INSTALL_PROGRAM) here because it doesn't work with
# directories.  XXX: not sure whether the resulting permissions will be
# correct when using 'cp -R'...
install-noinst_DSYMS: build-noinst_DSYMS
	$(mkinstalldirs) $(DESTDIR)$(pkglibdir); \
	for f in $(noinst_DSYMS); do \
	  cp -R $$f.dSYM $(DESTDIR)$(pkglibdir); \
	done

# Similar to uninstall-noinst_PROGRAMS.
uninstall-noinst_DSYMS:
	for f in $(noinst_DSYMS); do \
	  rm -f $(DESTDIR)$(pkglibdir)/$$f.dSYM; \
	done

# This needs to be depended on by a 'clean-local' rule.
clean-noinst_DSYMS:
	for f in $(noinst_DSYMS); do \
	  rm -rf $$f.dSYM; \
	done

check-local: build-noinst_DSYMS

clean-local: clean-noinst_DSYMS

# 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:
