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

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


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@
target_triplet = @target@
subdir = src
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/../config/acx.m4 \
	$(top_srcdir)/../config/cet.m4 \
	$(top_srcdir)/../config/enable.m4 \
	$(top_srcdir)/../config/lead-dot.m4 \
	$(top_srcdir)/../config/multi.m4 \
	$(top_srcdir)/../config/override.m4 \
	$(top_srcdir)/../config/toolexeclibdir.m4 \
	$(top_srcdir)/../libtool.m4 $(top_srcdir)/../ltoptions.m4 \
	$(top_srcdir)/../ltsugar.m4 $(top_srcdir)/../ltversion.m4 \
	$(top_srcdir)/../lt~obsolete.m4 $(top_srcdir)/acinclude.m4 \
	$(top_srcdir)/m4/gcc_support.m4 $(top_srcdir)/m4/autoconf.m4 \
	$(top_srcdir)/m4/libtool.m4 $(top_srcdir)/m4/gdc.m4 \
	$(top_srcdir)/m4/druntime.m4 $(top_srcdir)/m4/druntime/cpu.m4 \
	$(top_srcdir)/m4/druntime/os.m4 \
	$(top_srcdir)/m4/druntime/libraries.m4 \
	$(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
	$(ACLOCAL_M4)
DIST_COMMON = $(srcdir)/Makefile.am
mkinstalldirs = $(SHELL) $(top_srcdir)/../mkinstalldirs
CONFIG_HEADER = $(top_builddir)/config.h
CONFIG_CLEAN_FILES = libgphobos.spec
CONFIG_CLEAN_VPATH_FILES =
am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
am__vpath_adj = case $$p in \
    $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
    *) f=$$p;; \
  esac;
am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`;
am__install_max = 40
am__nobase_strip_setup = \
  srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'`
am__nobase_strip = \
  for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||"
am__nobase_list = $(am__nobase_strip_setup); \
  for p in $$list; do echo "$$p $$p"; done | \
  sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \
  $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \
    if (++n[$$2] == $(am__install_max)) \
      { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \
    END { for (dir in files) print dir, files[dir] }'
am__base_list = \
  sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
  sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
am__uninstall_files_from_dir = { \
  test -z "$$files" \
    || { test ! -d "$$dir" && test ! -f "$$dir" && test ! -r "$$dir"; } \
    || { echo " ( cd '$$dir' && rm -f" $$files ")"; \
         $(am__cd) "$$dir" && rm -f $$files; }; \
  }
am__installdirs = "$(DESTDIR)$(toolexeclibdir)" \
	"$(DESTDIR)$(toolexeclibdir)"
LTLIBRARIES = $(toolexeclib_LTLIBRARIES)
am__DEPENDENCIES_1 =
am__dirstamp = $(am__leading_dot)dirstamp
@ENABLE_LIBDRUNTIME_ONLY_FALSE@am__objects_1 = etc/c/curl.lo \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	etc/c/zlib.lo \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/algorithm/comparison.lo \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/algorithm/internal.lo \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/algorithm/iteration.lo \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/algorithm/mutation.lo \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/algorithm/package.lo \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/algorithm/searching.lo \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/algorithm/setops.lo \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/algorithm/sorting.lo \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/array.lo std/ascii.lo \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/base64.lo std/bigint.lo \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/bitmanip.lo \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/checkedint.lo \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/compiler.lo std/complex.lo \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/concurrency.lo \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/container/array.lo \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/container/binaryheap.lo \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/container/dlist.lo \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/container/package.lo \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/container/rbtree.lo \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/container/slist.lo \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/container/util.lo \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/conv.lo std/csv.lo \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/datetime/date.lo \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/datetime/interval.lo \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/datetime/package.lo \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/datetime/stopwatch.lo \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/datetime/systime.lo \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/datetime/timezone.lo \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/demangle.lo \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/digest/crc.lo \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/digest/hmac.lo \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/digest/md.lo \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/digest/murmurhash.lo \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/digest/package.lo \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/digest/ripemd.lo \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/digest/sha.lo \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/encoding.lo \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/exception.lo \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/experimental/allocator/building_blocks/affix_allocator.lo \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/experimental/allocator/building_blocks/aligned_block_list.lo \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/experimental/allocator/building_blocks/allocator_list.lo \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/experimental/allocator/building_blocks/ascending_page_allocator.lo \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/experimental/allocator/building_blocks/bitmapped_block.lo \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/experimental/allocator/building_blocks/bucketizer.lo \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/experimental/allocator/building_blocks/fallback_allocator.lo \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/experimental/allocator/building_blocks/free_list.lo \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/experimental/allocator/building_blocks/free_tree.lo \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/experimental/allocator/building_blocks/kernighan_ritchie.lo \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/experimental/allocator/building_blocks/null_allocator.lo \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/experimental/allocator/building_blocks/package.lo \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/experimental/allocator/building_blocks/quantizer.lo \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/experimental/allocator/building_blocks/region.lo \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/experimental/allocator/building_blocks/scoped_allocator.lo \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/experimental/allocator/building_blocks/segregator.lo \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/experimental/allocator/building_blocks/stats_collector.lo \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/experimental/allocator/common.lo \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/experimental/allocator/gc_allocator.lo \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/experimental/allocator/mallocator.lo \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/experimental/allocator/mmap_allocator.lo \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/experimental/allocator/package.lo \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/experimental/allocator/showcase.lo \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/experimental/allocator/typed.lo \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/experimental/checkedint.lo \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/experimental/logger/core.lo \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/experimental/logger/filelogger.lo \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/experimental/logger/multilogger.lo \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/experimental/logger/nulllogger.lo \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/experimental/logger/package.lo \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/file.lo \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/format/internal/floats.lo \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/format/internal/read.lo \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/format/internal/write.lo \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/format/package.lo \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/format/read.lo \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/format/spec.lo \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/format/write.lo \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/functional.lo std/getopt.lo \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/int128.lo \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/internal/attributes.lo \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/internal/cstring.lo \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/internal/math/biguintcore.lo \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/internal/math/biguintnoasm.lo \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/internal/math/errorfunction.lo \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/internal/math/gammafunction.lo \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/internal/memory.lo \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/internal/scopebuffer.lo \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/internal/test/dummyrange.lo \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/internal/test/range.lo \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/internal/test/uda.lo \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/internal/unicode_comp.lo \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/internal/unicode_decomp.lo \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/internal/unicode_grapheme.lo \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/internal/unicode_norm.lo \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/internal/unicode_tables.lo \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/internal/windows/advapi32.lo \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/json.lo std/logger/core.lo \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/logger/filelogger.lo \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/logger/multilogger.lo \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/logger/nulllogger.lo \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/logger/package.lo \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/math/algebraic.lo \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/math/constants.lo \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/math/exponential.lo \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/math/hardware.lo \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/math/operations.lo \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/math/package.lo \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/math/remainder.lo \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/math/rounding.lo \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/math/traits.lo \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/math/trigonometry.lo \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/mathspecial.lo std/meta.lo \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/mmfile.lo std/net/curl.lo \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/net/isemail.lo \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/numeric.lo std/outbuffer.lo \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/package.lo \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/parallelism.lo std/path.lo \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/process.lo std/random.lo \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/range/interfaces.lo \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/range/package.lo \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/range/primitives.lo \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/regex/internal/backtracking.lo \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/regex/internal/generator.lo \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/regex/internal/ir.lo \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/regex/internal/kickstart.lo \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/regex/internal/parser.lo \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/regex/internal/tests.lo \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/regex/internal/tests2.lo \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/regex/internal/thompson.lo \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/regex/package.lo \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/signals.lo std/socket.lo \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/stdint.lo std/stdio.lo \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/string.lo std/sumtype.lo \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/system.lo std/traits.lo \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/typecons.lo \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/typetuple.lo \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/uni/package.lo std/uri.lo \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/utf.lo std/uuid.lo \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/variant.lo \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/windows/charset.lo \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/windows/registry.lo \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/windows/syserror.lo \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/zip.lo std/zlib.lo
am__objects_2 = $(am__objects_1)
am__objects_3 = $(am__objects_2)
am_libgphobos_la_OBJECTS = $(am__objects_3)
libgphobos_la_OBJECTS = $(am_libgphobos_la_OBJECTS)
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 =
am__depfiles_maybe =
SOURCES = $(libgphobos_la_SOURCES)
am__can_run_installinfo = \
  case $$AM_UPDATE_INFO_DIR in \
    n|no|NO) false;; \
    *) (install-info --version) >/dev/null 2>&1;; \
  esac
DATA = $(toolexeclib_DATA)
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
ACLOCAL = @ACLOCAL@
AMTAR = @AMTAR@
AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@
AR = @AR@
AUTOCONF = @AUTOCONF@
AUTOHEADER = @AUTOHEADER@
AUTOMAKE = @AUTOMAKE@
AWK = @AWK@
BACKTRACE_SUPPORTED = @BACKTRACE_SUPPORTED@
BACKTRACE_SUPPORTS_THREADS = @BACKTRACE_SUPPORTS_THREADS@
BACKTRACE_USES_MALLOC = @BACKTRACE_USES_MALLOC@
CC = @CC@
CCAS = @CCAS@
CCASFLAGS = @CCASFLAGS@
CC_FOR_BUILD = @CC_FOR_BUILD@
CET_DFLAGS = @CET_DFLAGS@
CET_FLAGS = @CET_FLAGS@
CFLAGS = @CFLAGS@
CFLAGS_FOR_BUILD = @CFLAGS_FOR_BUILD@
CHECKING_DFLAGS = @CHECKING_DFLAGS@
CPP = @CPP@
CPPFLAGS = @CPPFLAGS@
CYGPATH_W = @CYGPATH_W@
DCFG_ARM_EABI_UNWINDER = @DCFG_ARM_EABI_UNWINDER@
DCFG_DLPI_TLS_MODID = @DCFG_DLPI_TLS_MODID@
DCFG_ENABLE_CET = @DCFG_ENABLE_CET@
DCFG_HAVE_64BIT_ATOMICS = @DCFG_HAVE_64BIT_ATOMICS@
DCFG_HAVE_ATOMIC_BUILTINS = @DCFG_HAVE_ATOMIC_BUILTINS@
DCFG_HAVE_LIBATOMIC = @DCFG_HAVE_LIBATOMIC@
DCFG_HAVE_QSORT_R = @DCFG_HAVE_QSORT_R@
DCFG_MINFO_BRACKETING = @DCFG_MINFO_BRACKETING@
DCFG_THREAD_MODEL = @DCFG_THREAD_MODEL@
DEFS = @DEFS@
DSYMUTIL = @DSYMUTIL@
DUMPBIN = @DUMPBIN@
ECHO_C = @ECHO_C@
ECHO_N = @ECHO_N@
ECHO_T = @ECHO_T@
EGREP = @EGREP@
EXEEXT = @EXEEXT@
FGREP = @FGREP@
GDC = @GDC@
GDCFLAGS = @GDCFLAGS@
GREP = @GREP@
INSTALL = @INSTALL@
INSTALL_DATA = @INSTALL_DATA@
INSTALL_PROGRAM = @INSTALL_PROGRAM@
INSTALL_SCRIPT = @INSTALL_SCRIPT@
INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
LD = @LD@
LDFLAGS = @LDFLAGS@
LIBATOMIC = @LIBATOMIC@
LIBBACKTRACE = @LIBBACKTRACE@
LIBOBJS = @LIBOBJS@
LIBS = @LIBS@
LIBTOOL = @LIBTOOL@
LIBZ = @LIBZ@
LIPO = @LIPO@
LN_S = @LN_S@
LTLIBOBJS = @LTLIBOBJS@
MAINT = @MAINT@
MAKEINFO = @MAKEINFO@
MKDIR_P = @MKDIR_P@
NM = @NM@
NMEDIT = @NMEDIT@
OBJDUMP = @OBJDUMP@
OBJEXT = @OBJEXT@
OS_LINK_SPEC = @OS_LINK_SPEC@
OTOOL = @OTOOL@
OTOOL64 = @OTOOL64@
PACKAGE = @PACKAGE@
PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
PACKAGE_NAME = @PACKAGE_NAME@
PACKAGE_STRING = @PACKAGE_STRING@
PACKAGE_TARNAME = @PACKAGE_TARNAME@
PACKAGE_URL = @PACKAGE_URL@
PACKAGE_VERSION = @PACKAGE_VERSION@
PATH_SEPARATOR = @PATH_SEPARATOR@
RANLIB = @RANLIB@
SECTION_FLAGS = @SECTION_FLAGS@
SED = @SED@
SET_MAKE = @SET_MAKE@
SHELL = @SHELL@
SPEC_PHOBOS_DEPS = @SPEC_PHOBOS_DEPS@
STRIP = @STRIP@
VERSION = @VERSION@
WARN_DFLAGS = @WARN_DFLAGS@
abs_builddir = @abs_builddir@
abs_srcdir = @abs_srcdir@
abs_top_builddir = @abs_top_builddir@
abs_top_srcdir = @abs_top_srcdir@
ac_ct_CC = @ac_ct_CC@
ac_ct_DUMPBIN = @ac_ct_DUMPBIN@
am__leading_dot = @am__leading_dot@
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@
enable_shared = @enable_shared@
enable_static = @enable_static@
exec_prefix = @exec_prefix@
gcc_version = @gcc_version@
gdc_include_dir = @gdc_include_dir@
get_gcc_base_ver = @get_gcc_base_ver@
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@
libphobos_builddir = @libphobos_builddir@
libphobos_srcdir = @libphobos_srcdir@
libphobos_toolexecdir = @libphobos_toolexecdir@
libphobos_toolexeclibdir = @libphobos_toolexeclibdir@
libtool_VERSION = @libtool_VERSION@
localedir = @localedir@
localstatedir = @localstatedir@
mandir = @mandir@
mkdir_p = @mkdir_p@
multi_basedir = @multi_basedir@
oldincludedir = @oldincludedir@
pdfdir = @pdfdir@
phobos_compiler_pic_flag = @phobos_compiler_pic_flag@
phobos_compiler_shared_flag = @phobos_compiler_shared_flag@
phobos_lt_pic_flag = @phobos_lt_pic_flag@
prefix = @prefix@
program_transform_name = @program_transform_name@
psdir = @psdir@
sbindir = @sbindir@
sharedstatedir = @sharedstatedir@
srcdir = @srcdir@
sysconfdir = @sysconfdir@
target = @target@
target_alias = @target_alias@
target_cpu = @target_cpu@
target_os = @target_os@
target_vendor = @target_vendor@
top_build_prefix = @top_build_prefix@
top_builddir = @top_builddir@
top_srcdir = @top_srcdir@

# If there are no sources with known extension (i.e. only D sources)
# automake forgets to set this
CCLD = $(CC)
toolexecdir = $(libphobos_toolexecdir)
toolexeclibdir = $(libphobos_toolexeclibdir)
LTDCOMPILE = $(LIBTOOL) --tag=D $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \
	--mode=compile $(GDC) $(AM_DFLAGS)


# Include D build rules

# Make sure GDC can find libdruntime and libphobos include files
D_EXTRA_DFLAGS = -fpreview=dip1000 -fpreview=dtorfields -fpreview=fieldwise \
	-nostdinc -I $(srcdir) -I $(top_srcdir)/libdruntime \
	-I ../libdruntime -I .


# D flags for compilation
AM_DFLAGS = \
	$(phobos_lt_pic_flag) $(phobos_compiler_shared_flag) \
	$(WARN_DFLAGS) $(CHECKING_DFLAGS) $(SECTION_FLAGS) $(CET_DFLAGS)


# Flags for other kinds of sources
AM_CFLAGS = $(CET_FLAGS)

# Install all D files
ALL_PHOBOS_INSTALL_DSOURCES = $(PHOBOS_DSOURCES)

# Setup source files depending on configure
ALL_PHOBOS_COMPILE_DSOURCES = $(PHOBOS_DSOURCES)
ALL_PHOBOS_SOURCES = $(ALL_PHOBOS_COMPILE_DSOURCES)

# Main library build definitions
toolexeclib_DATA = libgphobos.spec
toolexeclib_LTLIBRARIES = libgphobos.la
libgphobos_la_SOURCES = $(ALL_PHOBOS_SOURCES)
libgphobos_la_LIBTOOLFLAGS = 
@ENABLE_DARWIN_AT_RPATH_TRUE@libgphobos_darwin_rpath = -Wl,-rpath,@loader_path
libgphobos_la_LDFLAGS = -Wc,-nophoboslib,-dstartfiles,-B../libdruntime/gcc \
    -version-info $(libtool_VERSION) $(libgphobos_darwin_rpath)

@ENABLE_LIBDRUNTIME_ONLY_FALSE@libgphobos_la_LIBADD = \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@    ../libdruntime/libgdruntime_convenience.la $(LIBZ)

@ENABLE_LIBDRUNTIME_ONLY_TRUE@libgphobos_la_LIBADD = ../libdruntime/libgdruntime_convenience.la
libgphobos_la_DEPENDENCIES = \
    ../libdruntime/libgdruntime_convenience.la libgphobos.spec


# Also override library link commands: This is not strictly
# required, but we want to record additional dependencies such
# as pthread in the library
libgphobos_la_LINK = $(LIBTOOL) --tag=D $(libgphobos_la_LIBTOOLFLAGS) \
	$(LIBTOOLFLAGS) --mode=link $(GDC) $(AM_CFLAGS) $(CFLAGS) \
	$(libgphobos_la_LDFLAGS) $(LDFLAGS) -o $@

@ENABLE_LIBDRUNTIME_ONLY_FALSE@PHOBOS_DSOURCES = etc/c/curl.d etc/c/zlib.d std/algorithm/comparison.d \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/algorithm/internal.d std/algorithm/iteration.d \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/algorithm/mutation.d std/algorithm/package.d \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/algorithm/searching.d std/algorithm/setops.d \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/algorithm/sorting.d std/array.d std/ascii.d std/base64.d \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/bigint.d std/bitmanip.d std/checkedint.d std/compiler.d \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/complex.d std/concurrency.d std/container/array.d \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/container/binaryheap.d std/container/dlist.d \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/container/package.d std/container/rbtree.d std/container/slist.d \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/container/util.d std/conv.d std/csv.d std/datetime/date.d \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/datetime/interval.d std/datetime/package.d \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/datetime/stopwatch.d std/datetime/systime.d \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/datetime/timezone.d std/demangle.d std/digest/crc.d \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/digest/hmac.d std/digest/md.d std/digest/murmurhash.d \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/digest/package.d std/digest/ripemd.d std/digest/sha.d \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/encoding.d std/exception.d \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/experimental/allocator/building_blocks/affix_allocator.d \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/experimental/allocator/building_blocks/aligned_block_list.d \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/experimental/allocator/building_blocks/allocator_list.d \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/experimental/allocator/building_blocks/ascending_page_allocator.d \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/experimental/allocator/building_blocks/bitmapped_block.d \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/experimental/allocator/building_blocks/bucketizer.d \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/experimental/allocator/building_blocks/fallback_allocator.d \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/experimental/allocator/building_blocks/free_list.d \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/experimental/allocator/building_blocks/free_tree.d \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/experimental/allocator/building_blocks/kernighan_ritchie.d \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/experimental/allocator/building_blocks/null_allocator.d \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/experimental/allocator/building_blocks/package.d \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/experimental/allocator/building_blocks/quantizer.d \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/experimental/allocator/building_blocks/region.d \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/experimental/allocator/building_blocks/scoped_allocator.d \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/experimental/allocator/building_blocks/segregator.d \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/experimental/allocator/building_blocks/stats_collector.d \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/experimental/allocator/common.d \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/experimental/allocator/gc_allocator.d \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/experimental/allocator/mallocator.d \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/experimental/allocator/mmap_allocator.d \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/experimental/allocator/package.d \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/experimental/allocator/showcase.d \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/experimental/allocator/typed.d std/experimental/checkedint.d \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/experimental/logger/core.d std/experimental/logger/filelogger.d \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/experimental/logger/multilogger.d \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/experimental/logger/nulllogger.d std/experimental/logger/package.d \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/file.d std/format/internal/floats.d std/format/internal/read.d \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/format/internal/write.d std/format/package.d std/format/read.d \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/format/spec.d std/format/write.d std/functional.d std/getopt.d \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/int128.d std/internal/attributes.d std/internal/cstring.d \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/internal/math/biguintcore.d std/internal/math/biguintnoasm.d \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/internal/math/errorfunction.d std/internal/math/gammafunction.d \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/internal/memory.d std/internal/scopebuffer.d \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/internal/test/dummyrange.d std/internal/test/range.d \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/internal/test/uda.d std/internal/unicode_comp.d \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/internal/unicode_decomp.d std/internal/unicode_grapheme.d \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/internal/unicode_norm.d std/internal/unicode_tables.d \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/internal/windows/advapi32.d std/json.d std/logger/core.d \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/logger/filelogger.d std/logger/multilogger.d \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/logger/nulllogger.d std/logger/package.d std/math/algebraic.d \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/math/constants.d std/math/exponential.d std/math/hardware.d \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/math/operations.d std/math/package.d std/math/remainder.d \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/math/rounding.d std/math/traits.d std/math/trigonometry.d \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/mathspecial.d std/meta.d std/mmfile.d std/net/curl.d \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/net/isemail.d std/numeric.d std/outbuffer.d std/package.d \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/parallelism.d std/path.d std/process.d std/random.d \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/range/interfaces.d std/range/package.d std/range/primitives.d \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/regex/internal/backtracking.d std/regex/internal/generator.d \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/regex/internal/ir.d std/regex/internal/kickstart.d \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/regex/internal/parser.d std/regex/internal/tests.d \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/regex/internal/tests2.d std/regex/internal/thompson.d \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/regex/package.d std/signals.d std/socket.d std/stdint.d \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/stdio.d std/string.d std/sumtype.d std/system.d std/traits.d \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/typecons.d std/typetuple.d std/uni/package.d std/uri.d std/utf.d \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/uuid.d std/variant.d std/windows/charset.d std/windows/registry.d \
@ENABLE_LIBDRUNTIME_ONLY_FALSE@	std/windows/syserror.d std/zip.d std/zlib.d


# Source file definitions. Boring stuff, auto-generated with
# https://gist.github.com/jpf91/8744acebc9dcf1e9d1a35cdff20afbb2
# Can't use wildcards here:
# https://www.gnu.org/software/automake/manual/html_node/Wildcards.html
@ENABLE_LIBDRUNTIME_ONLY_TRUE@PHOBOS_DSOURCES = 
all: all-am

.SUFFIXES:
.SUFFIXES: .d .lo .o
$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(top_srcdir)/d_rules.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 --ignore-deps src/Makefile'; \
	$(am__cd) $(top_srcdir) && \
	  $(AUTOMAKE) --foreign --ignore-deps src/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)/d_rules.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):
libgphobos.spec: $(top_builddir)/config.status $(srcdir)/libgphobos.spec.in
	cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@

install-toolexeclibLTLIBRARIES: $(toolexeclib_LTLIBRARIES)
	@$(NORMAL_INSTALL)
	@list='$(toolexeclib_LTLIBRARIES)'; test -n "$(toolexeclibdir)" || list=; \
	list2=; for p in $$list; do \
	  if test -f $$p; then \
	    list2="$$list2 $$p"; \
	  else :; fi; \
	done; \
	test -z "$$list2" || { \
	  echo " $(MKDIR_P) '$(DESTDIR)$(toolexeclibdir)'"; \
	  $(MKDIR_P) "$(DESTDIR)$(toolexeclibdir)" || exit 1; \
	  echo " $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL) $(INSTALL_STRIP_FLAG) $$list2 '$(DESTDIR)$(toolexeclibdir)'"; \
	  $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL) $(INSTALL_STRIP_FLAG) $$list2 "$(DESTDIR)$(toolexeclibdir)"; \
	}

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

clean-toolexeclibLTLIBRARIES:
	-test -z "$(toolexeclib_LTLIBRARIES)" || rm -f $(toolexeclib_LTLIBRARIES)
	@list='$(toolexeclib_LTLIBRARIES)'; \
	locs=`for p in $$list; do echo $$p; done | \
	      sed 's|^[^/]*$$|.|; s|/[^/]*$$||; s|$$|/so_locations|' | \
	      sort -u`; \
	test -z "$$locs" || { \
	  echo rm -f $${locs}; \
	  rm -f $${locs}; \
	}
etc/c/$(am__dirstamp):
	@$(MKDIR_P) etc/c
	@: > etc/c/$(am__dirstamp)
etc/c/curl.lo: etc/c/$(am__dirstamp)
etc/c/zlib.lo: etc/c/$(am__dirstamp)
std/algorithm/$(am__dirstamp):
	@$(MKDIR_P) std/algorithm
	@: > std/algorithm/$(am__dirstamp)
std/algorithm/comparison.lo: std/algorithm/$(am__dirstamp)
std/algorithm/internal.lo: std/algorithm/$(am__dirstamp)
std/algorithm/iteration.lo: std/algorithm/$(am__dirstamp)
std/algorithm/mutation.lo: std/algorithm/$(am__dirstamp)
std/algorithm/package.lo: std/algorithm/$(am__dirstamp)
std/algorithm/searching.lo: std/algorithm/$(am__dirstamp)
std/algorithm/setops.lo: std/algorithm/$(am__dirstamp)
std/algorithm/sorting.lo: std/algorithm/$(am__dirstamp)
std/$(am__dirstamp):
	@$(MKDIR_P) std
	@: > std/$(am__dirstamp)
std/array.lo: std/$(am__dirstamp)
std/ascii.lo: std/$(am__dirstamp)
std/base64.lo: std/$(am__dirstamp)
std/bigint.lo: std/$(am__dirstamp)
std/bitmanip.lo: std/$(am__dirstamp)
std/checkedint.lo: std/$(am__dirstamp)
std/compiler.lo: std/$(am__dirstamp)
std/complex.lo: std/$(am__dirstamp)
std/concurrency.lo: std/$(am__dirstamp)
std/container/$(am__dirstamp):
	@$(MKDIR_P) std/container
	@: > std/container/$(am__dirstamp)
std/container/array.lo: std/container/$(am__dirstamp)
std/container/binaryheap.lo: std/container/$(am__dirstamp)
std/container/dlist.lo: std/container/$(am__dirstamp)
std/container/package.lo: std/container/$(am__dirstamp)
std/container/rbtree.lo: std/container/$(am__dirstamp)
std/container/slist.lo: std/container/$(am__dirstamp)
std/container/util.lo: std/container/$(am__dirstamp)
std/conv.lo: std/$(am__dirstamp)
std/csv.lo: std/$(am__dirstamp)
std/datetime/$(am__dirstamp):
	@$(MKDIR_P) std/datetime
	@: > std/datetime/$(am__dirstamp)
std/datetime/date.lo: std/datetime/$(am__dirstamp)
std/datetime/interval.lo: std/datetime/$(am__dirstamp)
std/datetime/package.lo: std/datetime/$(am__dirstamp)
std/datetime/stopwatch.lo: std/datetime/$(am__dirstamp)
std/datetime/systime.lo: std/datetime/$(am__dirstamp)
std/datetime/timezone.lo: std/datetime/$(am__dirstamp)
std/demangle.lo: std/$(am__dirstamp)
std/digest/$(am__dirstamp):
	@$(MKDIR_P) std/digest
	@: > std/digest/$(am__dirstamp)
std/digest/crc.lo: std/digest/$(am__dirstamp)
std/digest/hmac.lo: std/digest/$(am__dirstamp)
std/digest/md.lo: std/digest/$(am__dirstamp)
std/digest/murmurhash.lo: std/digest/$(am__dirstamp)
std/digest/package.lo: std/digest/$(am__dirstamp)
std/digest/ripemd.lo: std/digest/$(am__dirstamp)
std/digest/sha.lo: std/digest/$(am__dirstamp)
std/encoding.lo: std/$(am__dirstamp)
std/exception.lo: std/$(am__dirstamp)
std/experimental/allocator/building_blocks/$(am__dirstamp):
	@$(MKDIR_P) std/experimental/allocator/building_blocks
	@: > std/experimental/allocator/building_blocks/$(am__dirstamp)
std/experimental/allocator/building_blocks/affix_allocator.lo:  \
	std/experimental/allocator/building_blocks/$(am__dirstamp)
std/experimental/allocator/building_blocks/aligned_block_list.lo:  \
	std/experimental/allocator/building_blocks/$(am__dirstamp)
std/experimental/allocator/building_blocks/allocator_list.lo:  \
	std/experimental/allocator/building_blocks/$(am__dirstamp)
std/experimental/allocator/building_blocks/ascending_page_allocator.lo:  \
	std/experimental/allocator/building_blocks/$(am__dirstamp)
std/experimental/allocator/building_blocks/bitmapped_block.lo:  \
	std/experimental/allocator/building_blocks/$(am__dirstamp)
std/experimental/allocator/building_blocks/bucketizer.lo:  \
	std/experimental/allocator/building_blocks/$(am__dirstamp)
std/experimental/allocator/building_blocks/fallback_allocator.lo:  \
	std/experimental/allocator/building_blocks/$(am__dirstamp)
std/experimental/allocator/building_blocks/free_list.lo:  \
	std/experimental/allocator/building_blocks/$(am__dirstamp)
std/experimental/allocator/building_blocks/free_tree.lo:  \
	std/experimental/allocator/building_blocks/$(am__dirstamp)
std/experimental/allocator/building_blocks/kernighan_ritchie.lo:  \
	std/experimental/allocator/building_blocks/$(am__dirstamp)
std/experimental/allocator/building_blocks/null_allocator.lo:  \
	std/experimental/allocator/building_blocks/$(am__dirstamp)
std/experimental/allocator/building_blocks/package.lo:  \
	std/experimental/allocator/building_blocks/$(am__dirstamp)
std/experimental/allocator/building_blocks/quantizer.lo:  \
	std/experimental/allocator/building_blocks/$(am__dirstamp)
std/experimental/allocator/building_blocks/region.lo:  \
	std/experimental/allocator/building_blocks/$(am__dirstamp)
std/experimental/allocator/building_blocks/scoped_allocator.lo:  \
	std/experimental/allocator/building_blocks/$(am__dirstamp)
std/experimental/allocator/building_blocks/segregator.lo:  \
	std/experimental/allocator/building_blocks/$(am__dirstamp)
std/experimental/allocator/building_blocks/stats_collector.lo:  \
	std/experimental/allocator/building_blocks/$(am__dirstamp)
std/experimental/allocator/$(am__dirstamp):
	@$(MKDIR_P) std/experimental/allocator
	@: > std/experimental/allocator/$(am__dirstamp)
std/experimental/allocator/common.lo:  \
	std/experimental/allocator/$(am__dirstamp)
std/experimental/allocator/gc_allocator.lo:  \
	std/experimental/allocator/$(am__dirstamp)
std/experimental/allocator/mallocator.lo:  \
	std/experimental/allocator/$(am__dirstamp)
std/experimental/allocator/mmap_allocator.lo:  \
	std/experimental/allocator/$(am__dirstamp)
std/experimental/allocator/package.lo:  \
	std/experimental/allocator/$(am__dirstamp)
std/experimental/allocator/showcase.lo:  \
	std/experimental/allocator/$(am__dirstamp)
std/experimental/allocator/typed.lo:  \
	std/experimental/allocator/$(am__dirstamp)
std/experimental/$(am__dirstamp):
	@$(MKDIR_P) std/experimental
	@: > std/experimental/$(am__dirstamp)
std/experimental/checkedint.lo: std/experimental/$(am__dirstamp)
std/experimental/logger/$(am__dirstamp):
	@$(MKDIR_P) std/experimental/logger
	@: > std/experimental/logger/$(am__dirstamp)
std/experimental/logger/core.lo:  \
	std/experimental/logger/$(am__dirstamp)
std/experimental/logger/filelogger.lo:  \
	std/experimental/logger/$(am__dirstamp)
std/experimental/logger/multilogger.lo:  \
	std/experimental/logger/$(am__dirstamp)
std/experimental/logger/nulllogger.lo:  \
	std/experimental/logger/$(am__dirstamp)
std/experimental/logger/package.lo:  \
	std/experimental/logger/$(am__dirstamp)
std/file.lo: std/$(am__dirstamp)
std/format/internal/$(am__dirstamp):
	@$(MKDIR_P) std/format/internal
	@: > std/format/internal/$(am__dirstamp)
std/format/internal/floats.lo: std/format/internal/$(am__dirstamp)
std/format/internal/read.lo: std/format/internal/$(am__dirstamp)
std/format/internal/write.lo: std/format/internal/$(am__dirstamp)
std/format/$(am__dirstamp):
	@$(MKDIR_P) std/format
	@: > std/format/$(am__dirstamp)
std/format/package.lo: std/format/$(am__dirstamp)
std/format/read.lo: std/format/$(am__dirstamp)
std/format/spec.lo: std/format/$(am__dirstamp)
std/format/write.lo: std/format/$(am__dirstamp)
std/functional.lo: std/$(am__dirstamp)
std/getopt.lo: std/$(am__dirstamp)
std/int128.lo: std/$(am__dirstamp)
std/internal/$(am__dirstamp):
	@$(MKDIR_P) std/internal
	@: > std/internal/$(am__dirstamp)
std/internal/attributes.lo: std/internal/$(am__dirstamp)
std/internal/cstring.lo: std/internal/$(am__dirstamp)
std/internal/math/$(am__dirstamp):
	@$(MKDIR_P) std/internal/math
	@: > std/internal/math/$(am__dirstamp)
std/internal/math/biguintcore.lo: std/internal/math/$(am__dirstamp)
std/internal/math/biguintnoasm.lo: std/internal/math/$(am__dirstamp)
std/internal/math/errorfunction.lo: std/internal/math/$(am__dirstamp)
std/internal/math/gammafunction.lo: std/internal/math/$(am__dirstamp)
std/internal/memory.lo: std/internal/$(am__dirstamp)
std/internal/scopebuffer.lo: std/internal/$(am__dirstamp)
std/internal/test/$(am__dirstamp):
	@$(MKDIR_P) std/internal/test
	@: > std/internal/test/$(am__dirstamp)
std/internal/test/dummyrange.lo: std/internal/test/$(am__dirstamp)
std/internal/test/range.lo: std/internal/test/$(am__dirstamp)
std/internal/test/uda.lo: std/internal/test/$(am__dirstamp)
std/internal/unicode_comp.lo: std/internal/$(am__dirstamp)
std/internal/unicode_decomp.lo: std/internal/$(am__dirstamp)
std/internal/unicode_grapheme.lo: std/internal/$(am__dirstamp)
std/internal/unicode_norm.lo: std/internal/$(am__dirstamp)
std/internal/unicode_tables.lo: std/internal/$(am__dirstamp)
std/internal/windows/$(am__dirstamp):
	@$(MKDIR_P) std/internal/windows
	@: > std/internal/windows/$(am__dirstamp)
std/internal/windows/advapi32.lo:  \
	std/internal/windows/$(am__dirstamp)
std/json.lo: std/$(am__dirstamp)
std/logger/$(am__dirstamp):
	@$(MKDIR_P) std/logger
	@: > std/logger/$(am__dirstamp)
std/logger/core.lo: std/logger/$(am__dirstamp)
std/logger/filelogger.lo: std/logger/$(am__dirstamp)
std/logger/multilogger.lo: std/logger/$(am__dirstamp)
std/logger/nulllogger.lo: std/logger/$(am__dirstamp)
std/logger/package.lo: std/logger/$(am__dirstamp)
std/math/$(am__dirstamp):
	@$(MKDIR_P) std/math
	@: > std/math/$(am__dirstamp)
std/math/algebraic.lo: std/math/$(am__dirstamp)
std/math/constants.lo: std/math/$(am__dirstamp)
std/math/exponential.lo: std/math/$(am__dirstamp)
std/math/hardware.lo: std/math/$(am__dirstamp)
std/math/operations.lo: std/math/$(am__dirstamp)
std/math/package.lo: std/math/$(am__dirstamp)
std/math/remainder.lo: std/math/$(am__dirstamp)
std/math/rounding.lo: std/math/$(am__dirstamp)
std/math/traits.lo: std/math/$(am__dirstamp)
std/math/trigonometry.lo: std/math/$(am__dirstamp)
std/mathspecial.lo: std/$(am__dirstamp)
std/meta.lo: std/$(am__dirstamp)
std/mmfile.lo: std/$(am__dirstamp)
std/net/$(am__dirstamp):
	@$(MKDIR_P) std/net
	@: > std/net/$(am__dirstamp)
std/net/curl.lo: std/net/$(am__dirstamp)
std/net/isemail.lo: std/net/$(am__dirstamp)
std/numeric.lo: std/$(am__dirstamp)
std/outbuffer.lo: std/$(am__dirstamp)
std/package.lo: std/$(am__dirstamp)
std/parallelism.lo: std/$(am__dirstamp)
std/path.lo: std/$(am__dirstamp)
std/process.lo: std/$(am__dirstamp)
std/random.lo: std/$(am__dirstamp)
std/range/$(am__dirstamp):
	@$(MKDIR_P) std/range
	@: > std/range/$(am__dirstamp)
std/range/interfaces.lo: std/range/$(am__dirstamp)
std/range/package.lo: std/range/$(am__dirstamp)
std/range/primitives.lo: std/range/$(am__dirstamp)
std/regex/internal/$(am__dirstamp):
	@$(MKDIR_P) std/regex/internal
	@: > std/regex/internal/$(am__dirstamp)
std/regex/internal/backtracking.lo:  \
	std/regex/internal/$(am__dirstamp)
std/regex/internal/generator.lo: std/regex/internal/$(am__dirstamp)
std/regex/internal/ir.lo: std/regex/internal/$(am__dirstamp)
std/regex/internal/kickstart.lo: std/regex/internal/$(am__dirstamp)
std/regex/internal/parser.lo: std/regex/internal/$(am__dirstamp)
std/regex/internal/tests.lo: std/regex/internal/$(am__dirstamp)
std/regex/internal/tests2.lo: std/regex/internal/$(am__dirstamp)
std/regex/internal/thompson.lo: std/regex/internal/$(am__dirstamp)
std/regex/$(am__dirstamp):
	@$(MKDIR_P) std/regex
	@: > std/regex/$(am__dirstamp)
std/regex/package.lo: std/regex/$(am__dirstamp)
std/signals.lo: std/$(am__dirstamp)
std/socket.lo: std/$(am__dirstamp)
std/stdint.lo: std/$(am__dirstamp)
std/stdio.lo: std/$(am__dirstamp)
std/string.lo: std/$(am__dirstamp)
std/sumtype.lo: std/$(am__dirstamp)
std/system.lo: std/$(am__dirstamp)
std/traits.lo: std/$(am__dirstamp)
std/typecons.lo: std/$(am__dirstamp)
std/typetuple.lo: std/$(am__dirstamp)
std/uni/$(am__dirstamp):
	@$(MKDIR_P) std/uni
	@: > std/uni/$(am__dirstamp)
std/uni/package.lo: std/uni/$(am__dirstamp)
std/uri.lo: std/$(am__dirstamp)
std/utf.lo: std/$(am__dirstamp)
std/uuid.lo: std/$(am__dirstamp)
std/variant.lo: std/$(am__dirstamp)
std/windows/$(am__dirstamp):
	@$(MKDIR_P) std/windows
	@: > std/windows/$(am__dirstamp)
std/windows/charset.lo: std/windows/$(am__dirstamp)
std/windows/registry.lo: std/windows/$(am__dirstamp)
std/windows/syserror.lo: std/windows/$(am__dirstamp)
std/zip.lo: std/$(am__dirstamp)
std/zlib.lo: std/$(am__dirstamp)

libgphobos.la: $(libgphobos_la_OBJECTS) $(libgphobos_la_DEPENDENCIES) $(EXTRA_libgphobos_la_DEPENDENCIES) 
	$(AM_V_GEN)$(libgphobos_la_LINK) -rpath $(toolexeclibdir) $(libgphobos_la_OBJECTS) $(libgphobos_la_LIBADD) $(LIBS)

mostlyclean-compile:
	-rm -f *.$(OBJEXT)
	-rm -f etc/c/*.$(OBJEXT)
	-rm -f etc/c/*.lo
	-rm -f std/*.$(OBJEXT)
	-rm -f std/*.lo
	-rm -f std/algorithm/*.$(OBJEXT)
	-rm -f std/algorithm/*.lo
	-rm -f std/container/*.$(OBJEXT)
	-rm -f std/container/*.lo
	-rm -f std/datetime/*.$(OBJEXT)
	-rm -f std/datetime/*.lo
	-rm -f std/digest/*.$(OBJEXT)
	-rm -f std/digest/*.lo
	-rm -f std/experimental/*.$(OBJEXT)
	-rm -f std/experimental/*.lo
	-rm -f std/experimental/allocator/*.$(OBJEXT)
	-rm -f std/experimental/allocator/*.lo
	-rm -f std/experimental/allocator/building_blocks/*.$(OBJEXT)
	-rm -f std/experimental/allocator/building_blocks/*.lo
	-rm -f std/experimental/logger/*.$(OBJEXT)
	-rm -f std/experimental/logger/*.lo
	-rm -f std/format/*.$(OBJEXT)
	-rm -f std/format/*.lo
	-rm -f std/format/internal/*.$(OBJEXT)
	-rm -f std/format/internal/*.lo
	-rm -f std/internal/*.$(OBJEXT)
	-rm -f std/internal/*.lo
	-rm -f std/internal/math/*.$(OBJEXT)
	-rm -f std/internal/math/*.lo
	-rm -f std/internal/test/*.$(OBJEXT)
	-rm -f std/internal/test/*.lo
	-rm -f std/internal/windows/*.$(OBJEXT)
	-rm -f std/internal/windows/*.lo
	-rm -f std/logger/*.$(OBJEXT)
	-rm -f std/logger/*.lo
	-rm -f std/math/*.$(OBJEXT)
	-rm -f std/math/*.lo
	-rm -f std/net/*.$(OBJEXT)
	-rm -f std/net/*.lo
	-rm -f std/range/*.$(OBJEXT)
	-rm -f std/range/*.lo
	-rm -f std/regex/*.$(OBJEXT)
	-rm -f std/regex/*.lo
	-rm -f std/regex/internal/*.$(OBJEXT)
	-rm -f std/regex/internal/*.lo
	-rm -f std/uni/*.$(OBJEXT)
	-rm -f std/uni/*.lo
	-rm -f std/windows/*.$(OBJEXT)
	-rm -f std/windows/*.lo

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

mostlyclean-libtool:
	-rm -f *.lo

clean-libtool:
	-rm -rf .libs _libs
	-rm -rf etc/c/.libs etc/c/_libs
	-rm -rf std/.libs std/_libs
	-rm -rf std/algorithm/.libs std/algorithm/_libs
	-rm -rf std/container/.libs std/container/_libs
	-rm -rf std/datetime/.libs std/datetime/_libs
	-rm -rf std/digest/.libs std/digest/_libs
	-rm -rf std/experimental/.libs std/experimental/_libs
	-rm -rf std/experimental/allocator/.libs std/experimental/allocator/_libs
	-rm -rf std/experimental/allocator/building_blocks/.libs std/experimental/allocator/building_blocks/_libs
	-rm -rf std/experimental/logger/.libs std/experimental/logger/_libs
	-rm -rf std/format/.libs std/format/_libs
	-rm -rf std/format/internal/.libs std/format/internal/_libs
	-rm -rf std/internal/.libs std/internal/_libs
	-rm -rf std/internal/math/.libs std/internal/math/_libs
	-rm -rf std/internal/test/.libs std/internal/test/_libs
	-rm -rf std/internal/windows/.libs std/internal/windows/_libs
	-rm -rf std/logger/.libs std/logger/_libs
	-rm -rf std/math/.libs std/math/_libs
	-rm -rf std/net/.libs std/net/_libs
	-rm -rf std/range/.libs std/range/_libs
	-rm -rf std/regex/.libs std/regex/_libs
	-rm -rf std/regex/internal/.libs std/regex/internal/_libs
	-rm -rf std/uni/.libs std/uni/_libs
	-rm -rf std/windows/.libs std/windows/_libs
install-toolexeclibDATA: $(toolexeclib_DATA)
	@$(NORMAL_INSTALL)
	@list='$(toolexeclib_DATA)'; test -n "$(toolexeclibdir)" || list=; \
	if test -n "$$list"; then \
	  echo " $(MKDIR_P) '$(DESTDIR)$(toolexeclibdir)'"; \
	  $(MKDIR_P) "$(DESTDIR)$(toolexeclibdir)" || exit 1; \
	fi; \
	for p in $$list; do \
	  if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
	  echo "$$d$$p"; \
	done | $(am__base_list) | \
	while read files; do \
	  echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(toolexeclibdir)'"; \
	  $(INSTALL_DATA) $$files "$(DESTDIR)$(toolexeclibdir)" || exit $$?; \
	done

uninstall-toolexeclibDATA:
	@$(NORMAL_UNINSTALL)
	@list='$(toolexeclib_DATA)'; test -n "$(toolexeclibdir)" || list=; \
	files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \
	dir='$(DESTDIR)$(toolexeclibdir)'; $(am__uninstall_files_from_dir)

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

tags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
	set x; \
	here=`pwd`; \
	$(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-am

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

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
check-am: all-am
check: check-am
all-am: Makefile $(LTLIBRARIES) $(DATA)
installdirs:
	for dir in "$(DESTDIR)$(toolexeclibdir)" "$(DESTDIR)$(toolexeclibdir)"; do \
	  test -z "$$dir" || $(MKDIR_P) "$$dir"; \
	done
install: install-am
install-exec: install-exec-am
install-data: install-data-am
uninstall: uninstall-am

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

installcheck: installcheck-am
install-strip:
	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)
	-rm -f etc/c/$(am__dirstamp)
	-rm -f std/$(am__dirstamp)
	-rm -f std/algorithm/$(am__dirstamp)
	-rm -f std/container/$(am__dirstamp)
	-rm -f std/datetime/$(am__dirstamp)
	-rm -f std/digest/$(am__dirstamp)
	-rm -f std/experimental/$(am__dirstamp)
	-rm -f std/experimental/allocator/$(am__dirstamp)
	-rm -f std/experimental/allocator/building_blocks/$(am__dirstamp)
	-rm -f std/experimental/logger/$(am__dirstamp)
	-rm -f std/format/$(am__dirstamp)
	-rm -f std/format/internal/$(am__dirstamp)
	-rm -f std/internal/$(am__dirstamp)
	-rm -f std/internal/math/$(am__dirstamp)
	-rm -f std/internal/test/$(am__dirstamp)
	-rm -f std/internal/windows/$(am__dirstamp)
	-rm -f std/logger/$(am__dirstamp)
	-rm -f std/math/$(am__dirstamp)
	-rm -f std/net/$(am__dirstamp)
	-rm -f std/range/$(am__dirstamp)
	-rm -f std/regex/$(am__dirstamp)
	-rm -f std/regex/internal/$(am__dirstamp)
	-rm -f std/uni/$(am__dirstamp)
	-rm -f std/windows/$(am__dirstamp)

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

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

distclean: distclean-am
	-rm -f Makefile
distclean-am: clean-am distclean-compile distclean-generic \
	distclean-tags

dvi: dvi-am

dvi-am:

html: html-am

html-am:

info: info-am

info-am:

install-data-am: install-data-local

install-dvi: install-dvi-am

install-dvi-am:

install-exec-am: install-toolexeclibDATA \
	install-toolexeclibLTLIBRARIES

install-html: install-html-am

install-html-am:

install-info: install-info-am

install-info-am:

install-man:

install-pdf: install-pdf-am

install-pdf-am:

install-ps: install-ps-am

install-ps-am:

installcheck-am:

maintainer-clean: maintainer-clean-am
	-rm -f Makefile
maintainer-clean-am: distclean-am maintainer-clean-generic

mostlyclean: mostlyclean-am

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

pdf: pdf-am

pdf-am:

ps: ps-am

ps-am:

uninstall-am: uninstall-toolexeclibDATA \
	uninstall-toolexeclibLTLIBRARIES

.MAKE: install-am install-strip

.PHONY: CTAGS GTAGS TAGS all all-am check check-am clean clean-generic \
	clean-libtool clean-toolexeclibLTLIBRARIES cscopelist-am ctags \
	ctags-am distclean distclean-compile distclean-generic \
	distclean-libtool distclean-tags dvi dvi-am html html-am info \
	info-am install install-am install-data install-data-am \
	install-data-local 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 install-toolexeclibDATA \
	install-toolexeclibLTLIBRARIES installcheck installcheck-am \
	installdirs maintainer-clean maintainer-clean-generic \
	mostlyclean mostlyclean-compile mostlyclean-generic \
	mostlyclean-libtool pdf pdf-am ps ps-am tags tags-am uninstall \
	uninstall-am uninstall-toolexeclibDATA \
	uninstall-toolexeclibLTLIBRARIES

.PRECIOUS: Makefile


# Compile D into normal object files
.d.o:
	$(GDC) $(GDCFLAGS) $(MULTIFLAGS) $(D_EXTRA_DFLAGS) -c -o $@ $<

# Compile D sources with libtool
.d.lo:
	$(LTDCOMPILE) $(GDCFLAGS) $(MULTIFLAGS) $(D_EXTRA_DFLAGS) -c -o $@ $<

# Handles generated files as well
install-data-local:
	for file in $(ALL_PHOBOS_INSTALL_DSOURCES); do \
	  $(MKDIR_P) `dirname $(DESTDIR)$(gdc_include_dir)/$$file` ; \
	  if test -f $$file; then \
	    $(INSTALL_HEADER) $$file $(DESTDIR)$(gdc_include_dir)/$$file ; \
	  else \
	    $(INSTALL_HEADER) $(srcdir)/$$file \
	      $(DESTDIR)$(gdc_include_dir)/$$file ; \
	  fi ; \
	done

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