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

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

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

@SET_MAKE@


VPATH = @srcdir@
pkgdatadir = $(datadir)/@PACKAGE@
pkgincludedir = $(includedir)/@PACKAGE@
pkglibdir = $(libdir)/@PACKAGE@
pkglibexecdir = $(libexecdir)/@PACKAGE@
am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
install_sh_DATA = $(install_sh) -c -m 644
install_sh_PROGRAM = $(install_sh) -c
install_sh_SCRIPT = $(install_sh) -c
INSTALL_HEADER = $(INSTALL_DATA)
transform = $(program_transform_name)
NORMAL_INSTALL = :
PRE_INSTALL = :
POST_INSTALL = :
NORMAL_UNINSTALL = :
PRE_UNINSTALL = :
POST_UNINSTALL = :
build_triplet = @build@
host_triplet = @host@
target_triplet = @target@
@BUILD_LIBQUADMATH_FALSE@libquadmath_la_DEPENDENCIES =
subdir = .
DIST_COMMON = ChangeLog $(srcdir)/Makefile.in $(srcdir)/Makefile.am \
	$(top_srcdir)/configure $(am__configure_deps) \
	$(srcdir)/config.h.in $(srcdir)/../mkinstalldirs \
	$(srcdir)/../depcomp $(libquadmath_TEXINFOS)
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/../config/acx.m4 \
	$(top_srcdir)/../config/depstand.m4 \
	$(top_srcdir)/../config/lead-dot.m4 \
	$(top_srcdir)/../config/lthostflags.m4 \
	$(top_srcdir)/../config/multi.m4 \
	$(top_srcdir)/../config/no-executables.m4 \
	$(top_srcdir)/../config/override.m4 \
	$(top_srcdir)/../ltoptions.m4 $(top_srcdir)/../ltsugar.m4 \
	$(top_srcdir)/../ltversion.m4 $(top_srcdir)/../lt~obsolete.m4 \
	$(top_srcdir)/acinclude.m4 $(top_srcdir)/../libtool.m4 \
	$(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
	$(ACLOCAL_M4)
am__CONFIG_DISTCLEAN_FILES = config.status config.cache config.log \
 configure.lineno config.status.lineno
mkinstalldirs = $(SHELL) $(top_srcdir)/../mkinstalldirs
CONFIG_HEADER = config.h
CONFIG_CLEAN_FILES =
CONFIG_CLEAN_VPATH_FILES =
am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
am__vpath_adj = case $$p in \
    $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
    *) f=$$p;; \
  esac;
am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`;
am__install_max = 40
am__nobase_strip_setup = \
  srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'`
am__nobase_strip = \
  for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||"
am__nobase_list = $(am__nobase_strip_setup); \
  for p in $$list; do echo "$$p $$p"; done | \
  sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \
  $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \
    if (++n[$$2] == $(am__install_max)) \
      { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \
    END { for (dir in files) print dir, files[dir] }'
am__base_list = \
  sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
  sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
am__installdirs = "$(DESTDIR)$(toolexeclibdir)" "$(DESTDIR)$(infodir)" \
	"$(DESTDIR)$(libsubincludedir)"
LTLIBRARIES = $(toolexeclib_LTLIBRARIES)
am__dirstamp = $(am__leading_dot)dirstamp
@BUILD_LIBQUADMATH_TRUE@am_libquadmath_la_OBJECTS = math/x2y2m1q.lo \
@BUILD_LIBQUADMATH_TRUE@	math/isinf_nsq.lo math/acoshq.lo \
@BUILD_LIBQUADMATH_TRUE@	math/fmodq.lo math/acosq.lo \
@BUILD_LIBQUADMATH_TRUE@	math/frexpq.lo math/rem_pio2q.lo \
@BUILD_LIBQUADMATH_TRUE@	math/asinhq.lo math/hypotq.lo \
@BUILD_LIBQUADMATH_TRUE@	math/remainderq.lo math/asinq.lo \
@BUILD_LIBQUADMATH_TRUE@	math/rintq.lo math/atan2q.lo \
@BUILD_LIBQUADMATH_TRUE@	math/isinfq.lo math/roundq.lo \
@BUILD_LIBQUADMATH_TRUE@	math/atanhq.lo math/isnanq.lo \
@BUILD_LIBQUADMATH_TRUE@	math/scalblnq.lo math/atanq.lo \
@BUILD_LIBQUADMATH_TRUE@	math/j0q.lo math/scalbnq.lo \
@BUILD_LIBQUADMATH_TRUE@	math/cbrtq.lo math/j1q.lo \
@BUILD_LIBQUADMATH_TRUE@	math/signbitq.lo math/ceilq.lo \
@BUILD_LIBQUADMATH_TRUE@	math/jnq.lo math/sincos_table.lo \
@BUILD_LIBQUADMATH_TRUE@	math/complex.lo math/ldexpq.lo \
@BUILD_LIBQUADMATH_TRUE@	math/sincosq.lo math/copysignq.lo \
@BUILD_LIBQUADMATH_TRUE@	math/lgammaq.lo math/sincosq_kernel.lo \
@BUILD_LIBQUADMATH_TRUE@	math/coshq.lo math/llroundq.lo \
@BUILD_LIBQUADMATH_TRUE@	math/sinhq.lo math/cosq.lo \
@BUILD_LIBQUADMATH_TRUE@	math/log10q.lo math/sinq.lo \
@BUILD_LIBQUADMATH_TRUE@	math/cosq_kernel.lo math/log1pq.lo \
@BUILD_LIBQUADMATH_TRUE@	math/sinq_kernel.lo math/erfq.lo \
@BUILD_LIBQUADMATH_TRUE@	math/logq.lo math/sqrtq.lo \
@BUILD_LIBQUADMATH_TRUE@	math/expm1q.lo math/lroundq.lo \
@BUILD_LIBQUADMATH_TRUE@	math/tanhq.lo math/expq.lo \
@BUILD_LIBQUADMATH_TRUE@	math/modfq.lo math/tanq.lo \
@BUILD_LIBQUADMATH_TRUE@	math/fabsq.lo math/nanq.lo \
@BUILD_LIBQUADMATH_TRUE@	math/tgammaq.lo math/finiteq.lo \
@BUILD_LIBQUADMATH_TRUE@	math/nextafterq.lo math/truncq.lo \
@BUILD_LIBQUADMATH_TRUE@	math/floorq.lo math/powq.lo \
@BUILD_LIBQUADMATH_TRUE@	math/fmaq.lo math/cacoshq.lo \
@BUILD_LIBQUADMATH_TRUE@	math/cacosq.lo math/casinhq.lo \
@BUILD_LIBQUADMATH_TRUE@	math/casinq.lo math/catanhq.lo \
@BUILD_LIBQUADMATH_TRUE@	math/catanq.lo math/cimagq.lo \
@BUILD_LIBQUADMATH_TRUE@	math/conjq.lo math/cprojq.lo \
@BUILD_LIBQUADMATH_TRUE@	math/crealq.lo math/fdimq.lo \
@BUILD_LIBQUADMATH_TRUE@	math/fmaxq.lo math/fminq.lo \
@BUILD_LIBQUADMATH_TRUE@	math/ilogbq.lo math/llrintq.lo \
@BUILD_LIBQUADMATH_TRUE@	math/log2q.lo math/lrintq.lo \
@BUILD_LIBQUADMATH_TRUE@	math/nearbyintq.lo math/remquoq.lo \
@BUILD_LIBQUADMATH_TRUE@	math/ccoshq.lo math/cexpq.lo \
@BUILD_LIBQUADMATH_TRUE@	math/clog10q.lo math/clogq.lo \
@BUILD_LIBQUADMATH_TRUE@	math/csinq.lo math/csinhq.lo \
@BUILD_LIBQUADMATH_TRUE@	math/csqrtq.lo math/ctanq.lo \
@BUILD_LIBQUADMATH_TRUE@	math/ctanhq.lo printf/addmul_1.lo \
@BUILD_LIBQUADMATH_TRUE@	printf/add_n.lo printf/cmp.lo \
@BUILD_LIBQUADMATH_TRUE@	printf/divrem.lo printf/flt1282mpn.lo \
@BUILD_LIBQUADMATH_TRUE@	printf/fpioconst.lo printf/lshift.lo \
@BUILD_LIBQUADMATH_TRUE@	printf/mul_1.lo printf/mul_n.lo \
@BUILD_LIBQUADMATH_TRUE@	printf/mul.lo printf/printf_fphex.lo \
@BUILD_LIBQUADMATH_TRUE@	printf/printf_fp.lo \
@BUILD_LIBQUADMATH_TRUE@	printf/quadmath-printf.lo \
@BUILD_LIBQUADMATH_TRUE@	printf/rshift.lo printf/submul_1.lo \
@BUILD_LIBQUADMATH_TRUE@	printf/sub_n.lo strtod/strtoflt128.lo \
@BUILD_LIBQUADMATH_TRUE@	strtod/mpn2flt128.lo \
@BUILD_LIBQUADMATH_TRUE@	strtod/tens_in_limb.lo
libquadmath_la_OBJECTS = $(am_libquadmath_la_OBJECTS)
libquadmath_la_LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) \
	$(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \
	$(libquadmath_la_LDFLAGS) $(LDFLAGS) -o $@
@BUILD_LIBQUADMATH_TRUE@am_libquadmath_la_rpath = -rpath \
@BUILD_LIBQUADMATH_TRUE@	$(toolexeclibdir)
DEFAULT_INCLUDES = -I.@am__isrc@
depcomp = $(SHELL) $(top_srcdir)/../depcomp
am__depfiles_maybe = depfiles
am__mv = mv -f
COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
	$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
LTCOMPILE = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \
	--mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \
	$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
CCLD = $(CC)
LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \
	--mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) \
	$(LDFLAGS) -o $@
SOURCES = $(libquadmath_la_SOURCES)
MULTISRCTOP = 
MULTIBUILDTOP = 
MULTIDIRS = 
MULTISUBDIR = 
MULTIDO = true
MULTICLEAN = true
INFO_DEPS = libquadmath.info
am__TEXINFO_TEX_DIR = $(srcdir)/../gcc/doc/include
DVIS = libquadmath.dvi
PDFS = libquadmath.pdf
PSS = libquadmath.ps
HTMLS = libquadmath.html
TEXINFOS = libquadmath.texi
TEXI2DVI = texi2dvi
TEXI2PDF = $(TEXI2DVI) --pdf --batch
MAKEINFOHTML = $(MAKEINFO) --html
AM_MAKEINFOHTMLFLAGS = $(AM_MAKEINFOFLAGS)
DVIPS = dvips
HEADERS = $(nodist_libsubinclude_HEADERS)
ETAGS = etags
CTAGS = ctags
ACLOCAL = @ACLOCAL@
AMTAR = @AMTAR@
AR = @AR@
AUTOCONF = @AUTOCONF@
AUTOHEADER = @AUTOHEADER@
AUTOMAKE = @AUTOMAKE@
AWK = @AWK@
CC = @CC@
CCDEPMODE = @CCDEPMODE@
CFLAGS = @CFLAGS@
CPP = @CPP@
CPPFLAGS = @CPPFLAGS@
CYGPATH_W = @CYGPATH_W@
DEFS = @DEFS@
DEPDIR = @DEPDIR@
DSYMUTIL = @DSYMUTIL@
DUMPBIN = @DUMPBIN@
ECHO_C = @ECHO_C@
ECHO_N = @ECHO_N@
ECHO_T = @ECHO_T@
EGREP = @EGREP@
EXEEXT = @EXEEXT@
FGREP = @FGREP@
GREP = @GREP@
INSTALL = @INSTALL@
INSTALL_DATA = @INSTALL_DATA@
INSTALL_PROGRAM = @INSTALL_PROGRAM@
INSTALL_SCRIPT = @INSTALL_SCRIPT@
INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
LD = @LD@
LDFLAGS = @LDFLAGS@
LIBOBJS = @LIBOBJS@
LIBS = @LIBS@
LIBTOOL = @LIBTOOL@
LIPO = @LIPO@
LN_S = @LN_S@
LTLIBOBJS = @LTLIBOBJS@
MAINT = @MAINT@
MAKEINFO = @MAKEINFO@
MKDIR_P = @MKDIR_P@
NM = @NM@
NMEDIT = @NMEDIT@
OBJDUMP = @OBJDUMP@
OBJEXT = @OBJEXT@
OTOOL = @OTOOL@
OTOOL64 = @OTOOL64@
PACKAGE = @PACKAGE@
PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
PACKAGE_NAME = @PACKAGE_NAME@
PACKAGE_STRING = @PACKAGE_STRING@
PACKAGE_TARNAME = @PACKAGE_TARNAME@
PACKAGE_URL = @PACKAGE_URL@
PACKAGE_VERSION = @PACKAGE_VERSION@
PATH_SEPARATOR = @PATH_SEPARATOR@
RANLIB = @RANLIB@
REPORT_BUGS_TEXI = @REPORT_BUGS_TEXI@
REPORT_BUGS_TO = @REPORT_BUGS_TO@
SED = @SED@
SET_MAKE = @SET_MAKE@
SHELL = @SHELL@
STRIP = @STRIP@
VERSION = @VERSION@
abs_builddir = @abs_builddir@
abs_srcdir = @abs_srcdir@
abs_top_builddir = @abs_top_builddir@
abs_top_srcdir = @abs_top_srcdir@
ac_ct_CC = @ac_ct_CC@
ac_ct_DUMPBIN = @ac_ct_DUMPBIN@
am__include = @am__include@
am__leading_dot = @am__leading_dot@
am__quote = @am__quote@
am__tar = @am__tar@
am__untar = @am__untar@
bindir = @bindir@
build = @build@
build_alias = @build_alias@
build_cpu = @build_cpu@
build_os = @build_os@
build_vendor = @build_vendor@
builddir = @builddir@
datadir = @datadir@
datarootdir = @datarootdir@
docdir = @docdir@
dvidir = @dvidir@
enable_shared = @enable_shared@
enable_static = @enable_static@
exec_prefix = @exec_prefix@
host = @host@
host_alias = @host_alias@
host_cpu = @host_cpu@
host_os = @host_os@
host_vendor = @host_vendor@
htmldir = @htmldir@
includedir = @includedir@
infodir = @infodir@
install_sh = @install_sh@
libdir = @libdir@
libexecdir = @libexecdir@
localedir = @localedir@
localstatedir = @localstatedir@
lt_host_flags = @lt_host_flags@
mandir = @mandir@
mkdir_p = @mkdir_p@
multi_basedir = @multi_basedir@
oldincludedir = @oldincludedir@
pdfdir = @pdfdir@
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_noncanonical = @target_noncanonical@
target_os = @target_os@
target_vendor = @target_vendor@
toolexecdir = @toolexecdir@
toolexeclibdir = @toolexeclibdir@
top_build_prefix = @top_build_prefix@
top_builddir = @top_builddir@
top_srcdir = @top_srcdir@
AUTOMAKE_OPTIONS = 1.8 foreign
@BUILD_LIBQUADMATH_TRUE@ACLOCAL_AMFLAGS = -I .. -I ../config
@BUILD_LIBQUADMATH_TRUE@gcc_version := $(shell cat $(top_srcdir)/../gcc/BASE-VER)
@BUILD_LIBQUADMATH_TRUE@@LIBQUAD_USE_SYMVER_FALSE@version_arg = 
@BUILD_LIBQUADMATH_TRUE@@LIBQUAD_USE_SYMVER_GNU_TRUE@@LIBQUAD_USE_SYMVER_TRUE@version_arg = -Wl,--version-script=$(srcdir)/quadmath.map
@BUILD_LIBQUADMATH_TRUE@@LIBQUAD_USE_SYMVER_SUN_TRUE@@LIBQUAD_USE_SYMVER_TRUE@version_arg = -Wl,-M,quadmath.map-sun
@BUILD_LIBQUADMATH_TRUE@@LIBQUAD_USE_SYMVER_FALSE@version_dep = 
@BUILD_LIBQUADMATH_TRUE@@LIBQUAD_USE_SYMVER_GNU_TRUE@@LIBQUAD_USE_SYMVER_TRUE@version_dep = $(srcdir)/quadmath.map
@BUILD_LIBQUADMATH_TRUE@@LIBQUAD_USE_SYMVER_SUN_TRUE@@LIBQUAD_USE_SYMVER_TRUE@version_dep = quadmath.map-sun
@BUILD_LIBQUADMATH_TRUE@toolexeclib_LTLIBRARIES = libquadmath.la
@BUILD_LIBQUADMATH_TRUE@libquadmath_la_LIBADD = 
@BUILD_LIBQUADMATH_TRUE@libquadmath_la_LDFLAGS = -version-info `grep -v '^\#' $(srcdir)/libtool-version` \
@BUILD_LIBQUADMATH_TRUE@			 $(version_arg) $(lt_host_flags) -lm

@BUILD_LIBQUADMATH_TRUE@libquadmath_la_DEPENDENCIES = $(version_dep) $(libquadmath_la_LIBADD)
@BUILD_LIBQUADMATH_TRUE@nodist_libsubinclude_HEADERS = quadmath.h quadmath_weak.h
@BUILD_LIBQUADMATH_TRUE@libsubincludedir = $(libdir)/gcc/$(target_alias)/$(gcc_version)/include
@BUILD_LIBQUADMATH_TRUE@libquadmath_la_SOURCES = \
@BUILD_LIBQUADMATH_TRUE@  math/x2y2m1q.c math/isinf_nsq.c math/acoshq.c math/fmodq.c \
@BUILD_LIBQUADMATH_TRUE@  math/acosq.c math/frexpq.c \
@BUILD_LIBQUADMATH_TRUE@  math/rem_pio2q.c math/asinhq.c math/hypotq.c math/remainderq.c \
@BUILD_LIBQUADMATH_TRUE@  math/asinq.c math/rintq.c math/atan2q.c math/isinfq.c \
@BUILD_LIBQUADMATH_TRUE@  math/roundq.c math/atanhq.c math/isnanq.c math/scalblnq.c math/atanq.c \
@BUILD_LIBQUADMATH_TRUE@  math/j0q.c math/scalbnq.c math/cbrtq.c math/j1q.c math/signbitq.c \
@BUILD_LIBQUADMATH_TRUE@  math/ceilq.c math/jnq.c math/sincos_table.c math/complex.c math/ldexpq.c \
@BUILD_LIBQUADMATH_TRUE@  math/sincosq.c math/copysignq.c math/lgammaq.c math/sincosq_kernel.c \
@BUILD_LIBQUADMATH_TRUE@  math/coshq.c math/llroundq.c math/sinhq.c math/cosq.c math/log10q.c \
@BUILD_LIBQUADMATH_TRUE@  math/sinq.c math/cosq_kernel.c math/log1pq.c math/sinq_kernel.c \
@BUILD_LIBQUADMATH_TRUE@  math/erfq.c math/logq.c math/sqrtq.c math/expm1q.c math/lroundq.c \
@BUILD_LIBQUADMATH_TRUE@  math/tanhq.c math/expq.c math/modfq.c math/tanq.c math/fabsq.c \
@BUILD_LIBQUADMATH_TRUE@  math/nanq.c math/tgammaq.c math/finiteq.c math/nextafterq.c \
@BUILD_LIBQUADMATH_TRUE@  math/truncq.c math/floorq.c math/powq.c math/fmaq.c \
@BUILD_LIBQUADMATH_TRUE@  math/cacoshq.c math/cacosq.c math/casinhq.c math/casinq.c \
@BUILD_LIBQUADMATH_TRUE@  math/catanhq.c math/catanq.c math/cimagq.c math/conjq.c math/cprojq.c \
@BUILD_LIBQUADMATH_TRUE@  math/crealq.c math/fdimq.c math/fmaxq.c math/fminq.c math/ilogbq.c \
@BUILD_LIBQUADMATH_TRUE@  math/llrintq.c math/log2q.c math/lrintq.c math/nearbyintq.c math/remquoq.c \
@BUILD_LIBQUADMATH_TRUE@  math/ccoshq.c math/cexpq.c math/clog10q.c math/clogq.c math/csinq.c \
@BUILD_LIBQUADMATH_TRUE@  math/csinhq.c math/csqrtq.c math/ctanq.c math/ctanhq.c \
@BUILD_LIBQUADMATH_TRUE@  printf/addmul_1.c printf/add_n.c printf/cmp.c printf/divrem.c \
@BUILD_LIBQUADMATH_TRUE@  printf/flt1282mpn.c printf/fpioconst.c printf/lshift.c printf/mul_1.c \
@BUILD_LIBQUADMATH_TRUE@  printf/mul_n.c printf/mul.c printf/printf_fphex.c printf/printf_fp.c \
@BUILD_LIBQUADMATH_TRUE@  printf/quadmath-printf.c printf/rshift.c printf/submul_1.c printf/sub_n.c \
@BUILD_LIBQUADMATH_TRUE@  strtod/strtoflt128.c strtod/mpn2flt128.c strtod/tens_in_limb.c


# Work around what appears to be a GNU make bug handling MAKEFLAGS
# values defined in terms of make variables, as is the case for CC and
# friends when we are called from the top level Makefile.
@BUILD_LIBQUADMATH_TRUE@AM_MAKEFLAGS = \
@BUILD_LIBQUADMATH_TRUE@	"AR_FLAGS=$(AR_FLAGS)" \
@BUILD_LIBQUADMATH_TRUE@	"CC_FOR_BUILD=$(CC_FOR_BUILD)" \
@BUILD_LIBQUADMATH_TRUE@	"CFLAGS=$(CFLAGS)" \
@BUILD_LIBQUADMATH_TRUE@	"CXXFLAGS=$(CXXFLAGS)" \
@BUILD_LIBQUADMATH_TRUE@	"CFLAGS_FOR_BUILD=$(CFLAGS_FOR_BUILD)" \
@BUILD_LIBQUADMATH_TRUE@	"CFLAGS_FOR_TARGET=$(CFLAGS_FOR_TARGET)" \
@BUILD_LIBQUADMATH_TRUE@	"INSTALL=$(INSTALL)" \
@BUILD_LIBQUADMATH_TRUE@	"INSTALL_DATA=$(INSTALL_DATA)" \
@BUILD_LIBQUADMATH_TRUE@	"INSTALL_PROGRAM=$(INSTALL_PROGRAM)" \
@BUILD_LIBQUADMATH_TRUE@	"INSTALL_SCRIPT=$(INSTALL_SCRIPT)" \
@BUILD_LIBQUADMATH_TRUE@	"JC1FLAGS=$(JC1FLAGS)" \
@BUILD_LIBQUADMATH_TRUE@	"LDFLAGS=$(LDFLAGS)" \
@BUILD_LIBQUADMATH_TRUE@	"LIBCFLAGS=$(LIBCFLAGS)" \
@BUILD_LIBQUADMATH_TRUE@	"LIBCFLAGS_FOR_TARGET=$(LIBCFLAGS_FOR_TARGET)" \
@BUILD_LIBQUADMATH_TRUE@	"MAKE=$(MAKE)" \
@BUILD_LIBQUADMATH_TRUE@	"MAKEINFO=$(MAKEINFO) $(MAKEINFOFLAGS)" \
@BUILD_LIBQUADMATH_TRUE@	"PICFLAG=$(PICFLAG)" \
@BUILD_LIBQUADMATH_TRUE@	"PICFLAG_FOR_TARGET=$(PICFLAG_FOR_TARGET)" \
@BUILD_LIBQUADMATH_TRUE@	"SHELL=$(SHELL)" \
@BUILD_LIBQUADMATH_TRUE@	"RUNTESTFLAGS=$(RUNTESTFLAGS)" \
@BUILD_LIBQUADMATH_TRUE@	"exec_prefix=$(exec_prefix)" \
@BUILD_LIBQUADMATH_TRUE@	"infodir=$(infodir)" \
@BUILD_LIBQUADMATH_TRUE@	"libdir=$(libdir)" \
@BUILD_LIBQUADMATH_TRUE@	"prefix=$(prefix)" \
@BUILD_LIBQUADMATH_TRUE@	"includedir=$(includedir)" \
@BUILD_LIBQUADMATH_TRUE@	"AR=$(AR)" \
@BUILD_LIBQUADMATH_TRUE@	"AS=$(AS)" \
@BUILD_LIBQUADMATH_TRUE@	"CC=$(CC)" \
@BUILD_LIBQUADMATH_TRUE@	"CXX=$(CXX)" \
@BUILD_LIBQUADMATH_TRUE@	"LD=$(LD)" \
@BUILD_LIBQUADMATH_TRUE@	"LIBCFLAGS=$(LIBCFLAGS)" \
@BUILD_LIBQUADMATH_TRUE@	"NM=$(NM)" \
@BUILD_LIBQUADMATH_TRUE@	"PICFLAG=$(PICFLAG)" \
@BUILD_LIBQUADMATH_TRUE@	"RANLIB=$(RANLIB)" \
@BUILD_LIBQUADMATH_TRUE@	"DESTDIR=$(DESTDIR)"


# Subdir rules rely on $(FLAGS_TO_PASS)
@BUILD_LIBQUADMATH_TRUE@FLAGS_TO_PASS = $(AM_MAKEFLAGS)
@BUILD_LIBQUADMATH_TRUE@MAKEOVERRIDES = 
@BUILD_LIBQUADMATH_TRUE@@GENINSRC_FALSE@STAMP_GENINSRC = 

# AM_CONDITIONAL on configure option --generated-files-in-srcdir
@BUILD_LIBQUADMATH_TRUE@@GENINSRC_TRUE@STAMP_GENINSRC = stamp-geninsrc
@BUILD_INFO_FALSE@@BUILD_LIBQUADMATH_TRUE@STAMP_BUILD_INFO = 

# AM_CONDITIONAL on configure check ACX_CHECK_PROG_VER([MAKEINFO])
@BUILD_INFO_TRUE@@BUILD_LIBQUADMATH_TRUE@STAMP_BUILD_INFO = stamp-build-info
@BUILD_LIBQUADMATH_TRUE@CLEANFILES = $(STAMP_GENINSRC) $(STAMP_BUILD_INFO) libquadmath.info
@BUILD_LIBQUADMATH_TRUE@MAINTAINERCLEANFILES = $(srcdir)/libquadmath.info

# Automake Documentation:
# If your package has Texinfo files in many directories, you can use the
# variable TEXINFO_TEX to tell Automake where to find the canonical
# `texinfo.tex' for your package. The value of this variable should be
# the relative path from the current `Makefile.am' to `texinfo.tex'.
TEXINFO_TEX = ../gcc/doc/include/texinfo.tex

# Defines info, dvi, pdf and html targets
MAKEINFOFLAGS = -I $(srcdir)/../gcc/doc/include
info_TEXINFOS = libquadmath.texi
libquadmath_TEXINFOS = libquadmath-vers.texi
all: config.h
	$(MAKE) $(AM_MAKEFLAGS) all-am

.SUFFIXES:
.SUFFIXES: .c .dvi .lo .o .obj .ps
am--refresh:
	@:
$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am  $(am__configure_deps)
	@for dep in $?; do \
	  case '$(am__configure_deps)' in \
	    *$$dep*) \
	      echo ' cd $(srcdir) && $(AUTOMAKE) --foreign'; \
	      $(am__cd) $(srcdir) && $(AUTOMAKE) --foreign \
		&& exit 0; \
	      exit 1;; \
	  esac; \
	done; \
	echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign Makefile'; \
	$(am__cd) $(top_srcdir) && \
	  $(AUTOMAKE) --foreign Makefile
.PRECIOUS: Makefile
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
	@case '$?' in \
	  *config.status*) \
	    echo ' $(SHELL) ./config.status'; \
	    $(SHELL) ./config.status;; \
	  *) \
	    echo ' cd $(top_builddir) && $(SHELL) ./config.status $@ $(am__depfiles_maybe)'; \
	    cd $(top_builddir) && $(SHELL) ./config.status $@ $(am__depfiles_maybe);; \
	esac;

$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
	$(SHELL) ./config.status --recheck

$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
	$(am__cd) $(srcdir) && $(AUTOCONF)
$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
	$(am__cd) $(srcdir) && $(ACLOCAL) $(ACLOCAL_AMFLAGS)
$(am__aclocal_m4_deps):

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

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

distclean-hdr:
	-rm -f config.h stamp-h1
install-toolexeclibLTLIBRARIES: $(toolexeclib_LTLIBRARIES)
	@$(NORMAL_INSTALL)
	test -z "$(toolexeclibdir)" || $(MKDIR_P) "$(DESTDIR)$(toolexeclibdir)"
	@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 " $(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)'; for p in $$list; do \
	  dir="`echo $$p | sed -e 's|/[^/]*$$||'`"; \
	  test "$$dir" != "$$p" || dir=.; \
	  echo "rm -f \"$${dir}/so_locations\""; \
	  rm -f "$${dir}/so_locations"; \
	done
math/$(am__dirstamp):
	@$(MKDIR_P) math
	@: > math/$(am__dirstamp)
math/$(DEPDIR)/$(am__dirstamp):
	@$(MKDIR_P) math/$(DEPDIR)
	@: > math/$(DEPDIR)/$(am__dirstamp)
math/x2y2m1q.lo: math/$(am__dirstamp) math/$(DEPDIR)/$(am__dirstamp)
math/isinf_nsq.lo: math/$(am__dirstamp) math/$(DEPDIR)/$(am__dirstamp)
math/acoshq.lo: math/$(am__dirstamp) math/$(DEPDIR)/$(am__dirstamp)
math/fmodq.lo: math/$(am__dirstamp) math/$(DEPDIR)/$(am__dirstamp)
math/acosq.lo: math/$(am__dirstamp) math/$(DEPDIR)/$(am__dirstamp)
math/frexpq.lo: math/$(am__dirstamp) math/$(DEPDIR)/$(am__dirstamp)
math/rem_pio2q.lo: math/$(am__dirstamp) math/$(DEPDIR)/$(am__dirstamp)
math/asinhq.lo: math/$(am__dirstamp) math/$(DEPDIR)/$(am__dirstamp)
math/hypotq.lo: math/$(am__dirstamp) math/$(DEPDIR)/$(am__dirstamp)
math/remainderq.lo: math/$(am__dirstamp) \
	math/$(DEPDIR)/$(am__dirstamp)
math/asinq.lo: math/$(am__dirstamp) math/$(DEPDIR)/$(am__dirstamp)
math/rintq.lo: math/$(am__dirstamp) math/$(DEPDIR)/$(am__dirstamp)
math/atan2q.lo: math/$(am__dirstamp) math/$(DEPDIR)/$(am__dirstamp)
math/isinfq.lo: math/$(am__dirstamp) math/$(DEPDIR)/$(am__dirstamp)
math/roundq.lo: math/$(am__dirstamp) math/$(DEPDIR)/$(am__dirstamp)
math/atanhq.lo: math/$(am__dirstamp) math/$(DEPDIR)/$(am__dirstamp)
math/isnanq.lo: math/$(am__dirstamp) math/$(DEPDIR)/$(am__dirstamp)
math/scalblnq.lo: math/$(am__dirstamp) math/$(DEPDIR)/$(am__dirstamp)
math/atanq.lo: math/$(am__dirstamp) math/$(DEPDIR)/$(am__dirstamp)
math/j0q.lo: math/$(am__dirstamp) math/$(DEPDIR)/$(am__dirstamp)
math/scalbnq.lo: math/$(am__dirstamp) math/$(DEPDIR)/$(am__dirstamp)
math/cbrtq.lo: math/$(am__dirstamp) math/$(DEPDIR)/$(am__dirstamp)
math/j1q.lo: math/$(am__dirstamp) math/$(DEPDIR)/$(am__dirstamp)
math/signbitq.lo: math/$(am__dirstamp) math/$(DEPDIR)/$(am__dirstamp)
math/ceilq.lo: math/$(am__dirstamp) math/$(DEPDIR)/$(am__dirstamp)
math/jnq.lo: math/$(am__dirstamp) math/$(DEPDIR)/$(am__dirstamp)
math/sincos_table.lo: math/$(am__dirstamp) \
	math/$(DEPDIR)/$(am__dirstamp)
math/complex.lo: math/$(am__dirstamp) math/$(DEPDIR)/$(am__dirstamp)
math/ldexpq.lo: math/$(am__dirstamp) math/$(DEPDIR)/$(am__dirstamp)
math/sincosq.lo: math/$(am__dirstamp) math/$(DEPDIR)/$(am__dirstamp)
math/copysignq.lo: math/$(am__dirstamp) math/$(DEPDIR)/$(am__dirstamp)
math/lgammaq.lo: math/$(am__dirstamp) math/$(DEPDIR)/$(am__dirstamp)
math/sincosq_kernel.lo: math/$(am__dirstamp) \
	math/$(DEPDIR)/$(am__dirstamp)
math/coshq.lo: math/$(am__dirstamp) math/$(DEPDIR)/$(am__dirstamp)
math/llroundq.lo: math/$(am__dirstamp) math/$(DEPDIR)/$(am__dirstamp)
math/sinhq.lo: math/$(am__dirstamp) math/$(DEPDIR)/$(am__dirstamp)
math/cosq.lo: math/$(am__dirstamp) math/$(DEPDIR)/$(am__dirstamp)
math/log10q.lo: math/$(am__dirstamp) math/$(DEPDIR)/$(am__dirstamp)
math/sinq.lo: math/$(am__dirstamp) math/$(DEPDIR)/$(am__dirstamp)
math/cosq_kernel.lo: math/$(am__dirstamp) \
	math/$(DEPDIR)/$(am__dirstamp)
math/log1pq.lo: math/$(am__dirstamp) math/$(DEPDIR)/$(am__dirstamp)
math/sinq_kernel.lo: math/$(am__dirstamp) \
	math/$(DEPDIR)/$(am__dirstamp)
math/erfq.lo: math/$(am__dirstamp) math/$(DEPDIR)/$(am__dirstamp)
math/logq.lo: math/$(am__dirstamp) math/$(DEPDIR)/$(am__dirstamp)
math/sqrtq.lo: math/$(am__dirstamp) math/$(DEPDIR)/$(am__dirstamp)
math/expm1q.lo: math/$(am__dirstamp) math/$(DEPDIR)/$(am__dirstamp)
math/lroundq.lo: math/$(am__dirstamp) math/$(DEPDIR)/$(am__dirstamp)
math/tanhq.lo: math/$(am__dirstamp) math/$(DEPDIR)/$(am__dirstamp)
math/expq.lo: math/$(am__dirstamp) math/$(DEPDIR)/$(am__dirstamp)
math/modfq.lo: math/$(am__dirstamp) math/$(DEPDIR)/$(am__dirstamp)
math/tanq.lo: math/$(am__dirstamp) math/$(DEPDIR)/$(am__dirstamp)
math/fabsq.lo: math/$(am__dirstamp) math/$(DEPDIR)/$(am__dirstamp)
math/nanq.lo: math/$(am__dirstamp) math/$(DEPDIR)/$(am__dirstamp)
math/tgammaq.lo: math/$(am__dirstamp) math/$(DEPDIR)/$(am__dirstamp)
math/finiteq.lo: math/$(am__dirstamp) math/$(DEPDIR)/$(am__dirstamp)
math/nextafterq.lo: math/$(am__dirstamp) \
	math/$(DEPDIR)/$(am__dirstamp)
math/truncq.lo: math/$(am__dirstamp) math/$(DEPDIR)/$(am__dirstamp)
math/floorq.lo: math/$(am__dirstamp) math/$(DEPDIR)/$(am__dirstamp)
math/powq.lo: math/$(am__dirstamp) math/$(DEPDIR)/$(am__dirstamp)
math/fmaq.lo: math/$(am__dirstamp) math/$(DEPDIR)/$(am__dirstamp)
math/cacoshq.lo: math/$(am__dirstamp) math/$(DEPDIR)/$(am__dirstamp)
math/cacosq.lo: math/$(am__dirstamp) math/$(DEPDIR)/$(am__dirstamp)
math/casinhq.lo: math/$(am__dirstamp) math/$(DEPDIR)/$(am__dirstamp)
math/casinq.lo: math/$(am__dirstamp) math/$(DEPDIR)/$(am__dirstamp)
math/catanhq.lo: math/$(am__dirstamp) math/$(DEPDIR)/$(am__dirstamp)
math/catanq.lo: math/$(am__dirstamp) math/$(DEPDIR)/$(am__dirstamp)
math/cimagq.lo: math/$(am__dirstamp) math/$(DEPDIR)/$(am__dirstamp)
math/conjq.lo: math/$(am__dirstamp) math/$(DEPDIR)/$(am__dirstamp)
math/cprojq.lo: math/$(am__dirstamp) math/$(DEPDIR)/$(am__dirstamp)
math/crealq.lo: math/$(am__dirstamp) math/$(DEPDIR)/$(am__dirstamp)
math/fdimq.lo: math/$(am__dirstamp) math/$(DEPDIR)/$(am__dirstamp)
math/fmaxq.lo: math/$(am__dirstamp) math/$(DEPDIR)/$(am__dirstamp)
math/fminq.lo: math/$(am__dirstamp) math/$(DEPDIR)/$(am__dirstamp)
math/ilogbq.lo: math/$(am__dirstamp) math/$(DEPDIR)/$(am__dirstamp)
math/llrintq.lo: math/$(am__dirstamp) math/$(DEPDIR)/$(am__dirstamp)
math/log2q.lo: math/$(am__dirstamp) math/$(DEPDIR)/$(am__dirstamp)
math/lrintq.lo: math/$(am__dirstamp) math/$(DEPDIR)/$(am__dirstamp)
math/nearbyintq.lo: math/$(am__dirstamp) \
	math/$(DEPDIR)/$(am__dirstamp)
math/remquoq.lo: math/$(am__dirstamp) math/$(DEPDIR)/$(am__dirstamp)
math/ccoshq.lo: math/$(am__dirstamp) math/$(DEPDIR)/$(am__dirstamp)
math/cexpq.lo: math/$(am__dirstamp) math/$(DEPDIR)/$(am__dirstamp)
math/clog10q.lo: math/$(am__dirstamp) math/$(DEPDIR)/$(am__dirstamp)
math/clogq.lo: math/$(am__dirstamp) math/$(DEPDIR)/$(am__dirstamp)
math/csinq.lo: math/$(am__dirstamp) math/$(DEPDIR)/$(am__dirstamp)
math/csinhq.lo: math/$(am__dirstamp) math/$(DEPDIR)/$(am__dirstamp)
math/csqrtq.lo: math/$(am__dirstamp) math/$(DEPDIR)/$(am__dirstamp)
math/ctanq.lo: math/$(am__dirstamp) math/$(DEPDIR)/$(am__dirstamp)
math/ctanhq.lo: math/$(am__dirstamp) math/$(DEPDIR)/$(am__dirstamp)
printf/$(am__dirstamp):
	@$(MKDIR_P) printf
	@: > printf/$(am__dirstamp)
printf/$(DEPDIR)/$(am__dirstamp):
	@$(MKDIR_P) printf/$(DEPDIR)
	@: > printf/$(DEPDIR)/$(am__dirstamp)
printf/addmul_1.lo: printf/$(am__dirstamp) \
	printf/$(DEPDIR)/$(am__dirstamp)
printf/add_n.lo: printf/$(am__dirstamp) \
	printf/$(DEPDIR)/$(am__dirstamp)
printf/cmp.lo: printf/$(am__dirstamp) printf/$(DEPDIR)/$(am__dirstamp)
printf/divrem.lo: printf/$(am__dirstamp) \
	printf/$(DEPDIR)/$(am__dirstamp)
printf/flt1282mpn.lo: printf/$(am__dirstamp) \
	printf/$(DEPDIR)/$(am__dirstamp)
printf/fpioconst.lo: printf/$(am__dirstamp) \
	printf/$(DEPDIR)/$(am__dirstamp)
printf/lshift.lo: printf/$(am__dirstamp) \
	printf/$(DEPDIR)/$(am__dirstamp)
printf/mul_1.lo: printf/$(am__dirstamp) \
	printf/$(DEPDIR)/$(am__dirstamp)
printf/mul_n.lo: printf/$(am__dirstamp) \
	printf/$(DEPDIR)/$(am__dirstamp)
printf/mul.lo: printf/$(am__dirstamp) printf/$(DEPDIR)/$(am__dirstamp)
printf/printf_fphex.lo: printf/$(am__dirstamp) \
	printf/$(DEPDIR)/$(am__dirstamp)
printf/printf_fp.lo: printf/$(am__dirstamp) \
	printf/$(DEPDIR)/$(am__dirstamp)
printf/quadmath-printf.lo: printf/$(am__dirstamp) \
	printf/$(DEPDIR)/$(am__dirstamp)
printf/rshift.lo: printf/$(am__dirstamp) \
	printf/$(DEPDIR)/$(am__dirstamp)
printf/submul_1.lo: printf/$(am__dirstamp) \
	printf/$(DEPDIR)/$(am__dirstamp)
printf/sub_n.lo: printf/$(am__dirstamp) \
	printf/$(DEPDIR)/$(am__dirstamp)
strtod/$(am__dirstamp):
	@$(MKDIR_P) strtod
	@: > strtod/$(am__dirstamp)
strtod/$(DEPDIR)/$(am__dirstamp):
	@$(MKDIR_P) strtod/$(DEPDIR)
	@: > strtod/$(DEPDIR)/$(am__dirstamp)
strtod/strtoflt128.lo: strtod/$(am__dirstamp) \
	strtod/$(DEPDIR)/$(am__dirstamp)
strtod/mpn2flt128.lo: strtod/$(am__dirstamp) \
	strtod/$(DEPDIR)/$(am__dirstamp)
strtod/tens_in_limb.lo: strtod/$(am__dirstamp) \
	strtod/$(DEPDIR)/$(am__dirstamp)
libquadmath.la: $(libquadmath_la_OBJECTS) $(libquadmath_la_DEPENDENCIES) 
	$(libquadmath_la_LINK) $(am_libquadmath_la_rpath) $(libquadmath_la_OBJECTS) $(libquadmath_la_LIBADD) $(LIBS)

mostlyclean-compile:
	-rm -f *.$(OBJEXT)
	-rm -f math/acoshq.$(OBJEXT)
	-rm -f math/acoshq.lo
	-rm -f math/acosq.$(OBJEXT)
	-rm -f math/acosq.lo
	-rm -f math/asinhq.$(OBJEXT)
	-rm -f math/asinhq.lo
	-rm -f math/asinq.$(OBJEXT)
	-rm -f math/asinq.lo
	-rm -f math/atan2q.$(OBJEXT)
	-rm -f math/atan2q.lo
	-rm -f math/atanhq.$(OBJEXT)
	-rm -f math/atanhq.lo
	-rm -f math/atanq.$(OBJEXT)
	-rm -f math/atanq.lo
	-rm -f math/cacoshq.$(OBJEXT)
	-rm -f math/cacoshq.lo
	-rm -f math/cacosq.$(OBJEXT)
	-rm -f math/cacosq.lo
	-rm -f math/casinhq.$(OBJEXT)
	-rm -f math/casinhq.lo
	-rm -f math/casinq.$(OBJEXT)
	-rm -f math/casinq.lo
	-rm -f math/catanhq.$(OBJEXT)
	-rm -f math/catanhq.lo
	-rm -f math/catanq.$(OBJEXT)
	-rm -f math/catanq.lo
	-rm -f math/cbrtq.$(OBJEXT)
	-rm -f math/cbrtq.lo
	-rm -f math/ccoshq.$(OBJEXT)
	-rm -f math/ccoshq.lo
	-rm -f math/ceilq.$(OBJEXT)
	-rm -f math/ceilq.lo
	-rm -f math/cexpq.$(OBJEXT)
	-rm -f math/cexpq.lo
	-rm -f math/cimagq.$(OBJEXT)
	-rm -f math/cimagq.lo
	-rm -f math/clog10q.$(OBJEXT)
	-rm -f math/clog10q.lo
	-rm -f math/clogq.$(OBJEXT)
	-rm -f math/clogq.lo
	-rm -f math/complex.$(OBJEXT)
	-rm -f math/complex.lo
	-rm -f math/conjq.$(OBJEXT)
	-rm -f math/conjq.lo
	-rm -f math/copysignq.$(OBJEXT)
	-rm -f math/copysignq.lo
	-rm -f math/coshq.$(OBJEXT)
	-rm -f math/coshq.lo
	-rm -f math/cosq.$(OBJEXT)
	-rm -f math/cosq.lo
	-rm -f math/cosq_kernel.$(OBJEXT)
	-rm -f math/cosq_kernel.lo
	-rm -f math/cprojq.$(OBJEXT)
	-rm -f math/cprojq.lo
	-rm -f math/crealq.$(OBJEXT)
	-rm -f math/crealq.lo
	-rm -f math/csinhq.$(OBJEXT)
	-rm -f math/csinhq.lo
	-rm -f math/csinq.$(OBJEXT)
	-rm -f math/csinq.lo
	-rm -f math/csqrtq.$(OBJEXT)
	-rm -f math/csqrtq.lo
	-rm -f math/ctanhq.$(OBJEXT)
	-rm -f math/ctanhq.lo
	-rm -f math/ctanq.$(OBJEXT)
	-rm -f math/ctanq.lo
	-rm -f math/erfq.$(OBJEXT)
	-rm -f math/erfq.lo
	-rm -f math/expm1q.$(OBJEXT)
	-rm -f math/expm1q.lo
	-rm -f math/expq.$(OBJEXT)
	-rm -f math/expq.lo
	-rm -f math/fabsq.$(OBJEXT)
	-rm -f math/fabsq.lo
	-rm -f math/fdimq.$(OBJEXT)
	-rm -f math/fdimq.lo
	-rm -f math/finiteq.$(OBJEXT)
	-rm -f math/finiteq.lo
	-rm -f math/floorq.$(OBJEXT)
	-rm -f math/floorq.lo
	-rm -f math/fmaq.$(OBJEXT)
	-rm -f math/fmaq.lo
	-rm -f math/fmaxq.$(OBJEXT)
	-rm -f math/fmaxq.lo
	-rm -f math/fminq.$(OBJEXT)
	-rm -f math/fminq.lo
	-rm -f math/fmodq.$(OBJEXT)
	-rm -f math/fmodq.lo
	-rm -f math/frexpq.$(OBJEXT)
	-rm -f math/frexpq.lo
	-rm -f math/hypotq.$(OBJEXT)
	-rm -f math/hypotq.lo
	-rm -f math/ilogbq.$(OBJEXT)
	-rm -f math/ilogbq.lo
	-rm -f math/isinf_nsq.$(OBJEXT)
	-rm -f math/isinf_nsq.lo
	-rm -f math/isinfq.$(OBJEXT)
	-rm -f math/isinfq.lo
	-rm -f math/isnanq.$(OBJEXT)
	-rm -f math/isnanq.lo
	-rm -f math/j0q.$(OBJEXT)
	-rm -f math/j0q.lo
	-rm -f math/j1q.$(OBJEXT)
	-rm -f math/j1q.lo
	-rm -f math/jnq.$(OBJEXT)
	-rm -f math/jnq.lo
	-rm -f math/ldexpq.$(OBJEXT)
	-rm -f math/ldexpq.lo
	-rm -f math/lgammaq.$(OBJEXT)
	-rm -f math/lgammaq.lo
	-rm -f math/llrintq.$(OBJEXT)
	-rm -f math/llrintq.lo
	-rm -f math/llroundq.$(OBJEXT)
	-rm -f math/llroundq.lo
	-rm -f math/log10q.$(OBJEXT)
	-rm -f math/log10q.lo
	-rm -f math/log1pq.$(OBJEXT)
	-rm -f math/log1pq.lo
	-rm -f math/log2q.$(OBJEXT)
	-rm -f math/log2q.lo
	-rm -f math/logq.$(OBJEXT)
	-rm -f math/logq.lo
	-rm -f math/lrintq.$(OBJEXT)
	-rm -f math/lrintq.lo
	-rm -f math/lroundq.$(OBJEXT)
	-rm -f math/lroundq.lo
	-rm -f math/modfq.$(OBJEXT)
	-rm -f math/modfq.lo
	-rm -f math/nanq.$(OBJEXT)
	-rm -f math/nanq.lo
	-rm -f math/nearbyintq.$(OBJEXT)
	-rm -f math/nearbyintq.lo
	-rm -f math/nextafterq.$(OBJEXT)
	-rm -f math/nextafterq.lo
	-rm -f math/powq.$(OBJEXT)
	-rm -f math/powq.lo
	-rm -f math/rem_pio2q.$(OBJEXT)
	-rm -f math/rem_pio2q.lo
	-rm -f math/remainderq.$(OBJEXT)
	-rm -f math/remainderq.lo
	-rm -f math/remquoq.$(OBJEXT)
	-rm -f math/remquoq.lo
	-rm -f math/rintq.$(OBJEXT)
	-rm -f math/rintq.lo
	-rm -f math/roundq.$(OBJEXT)
	-rm -f math/roundq.lo
	-rm -f math/scalblnq.$(OBJEXT)
	-rm -f math/scalblnq.lo
	-rm -f math/scalbnq.$(OBJEXT)
	-rm -f math/scalbnq.lo
	-rm -f math/signbitq.$(OBJEXT)
	-rm -f math/signbitq.lo
	-rm -f math/sincos_table.$(OBJEXT)
	-rm -f math/sincos_table.lo
	-rm -f math/sincosq.$(OBJEXT)
	-rm -f math/sincosq.lo
	-rm -f math/sincosq_kernel.$(OBJEXT)
	-rm -f math/sincosq_kernel.lo
	-rm -f math/sinhq.$(OBJEXT)
	-rm -f math/sinhq.lo
	-rm -f math/sinq.$(OBJEXT)
	-rm -f math/sinq.lo
	-rm -f math/sinq_kernel.$(OBJEXT)
	-rm -f math/sinq_kernel.lo
	-rm -f math/sqrtq.$(OBJEXT)
	-rm -f math/sqrtq.lo
	-rm -f math/tanhq.$(OBJEXT)
	-rm -f math/tanhq.lo
	-rm -f math/tanq.$(OBJEXT)
	-rm -f math/tanq.lo
	-rm -f math/tgammaq.$(OBJEXT)
	-rm -f math/tgammaq.lo
	-rm -f math/truncq.$(OBJEXT)
	-rm -f math/truncq.lo
	-rm -f math/x2y2m1q.$(OBJEXT)
	-rm -f math/x2y2m1q.lo
	-rm -f printf/add_n.$(OBJEXT)
	-rm -f printf/add_n.lo
	-rm -f printf/addmul_1.$(OBJEXT)
	-rm -f printf/addmul_1.lo
	-rm -f printf/cmp.$(OBJEXT)
	-rm -f printf/cmp.lo
	-rm -f printf/divrem.$(OBJEXT)
	-rm -f printf/divrem.lo
	-rm -f printf/flt1282mpn.$(OBJEXT)
	-rm -f printf/flt1282mpn.lo
	-rm -f printf/fpioconst.$(OBJEXT)
	-rm -f printf/fpioconst.lo
	-rm -f printf/lshift.$(OBJEXT)
	-rm -f printf/lshift.lo
	-rm -f printf/mul.$(OBJEXT)
	-rm -f printf/mul.lo
	-rm -f printf/mul_1.$(OBJEXT)
	-rm -f printf/mul_1.lo
	-rm -f printf/mul_n.$(OBJEXT)
	-rm -f printf/mul_n.lo
	-rm -f printf/printf_fp.$(OBJEXT)
	-rm -f printf/printf_fp.lo
	-rm -f printf/printf_fphex.$(OBJEXT)
	-rm -f printf/printf_fphex.lo
	-rm -f printf/quadmath-printf.$(OBJEXT)
	-rm -f printf/quadmath-printf.lo
	-rm -f printf/rshift.$(OBJEXT)
	-rm -f printf/rshift.lo
	-rm -f printf/sub_n.$(OBJEXT)
	-rm -f printf/sub_n.lo
	-rm -f printf/submul_1.$(OBJEXT)
	-rm -f printf/submul_1.lo
	-rm -f strtod/mpn2flt128.$(OBJEXT)
	-rm -f strtod/mpn2flt128.lo
	-rm -f strtod/strtoflt128.$(OBJEXT)
	-rm -f strtod/strtoflt128.lo
	-rm -f strtod/tens_in_limb.$(OBJEXT)
	-rm -f strtod/tens_in_limb.lo

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

@AMDEP_TRUE@@am__include@ @am__quote@math/$(DEPDIR)/acoshq.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@math/$(DEPDIR)/acosq.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@math/$(DEPDIR)/asinhq.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@math/$(DEPDIR)/asinq.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@math/$(DEPDIR)/atan2q.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@math/$(DEPDIR)/atanhq.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@math/$(DEPDIR)/atanq.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@math/$(DEPDIR)/cacoshq.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@math/$(DEPDIR)/cacosq.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@math/$(DEPDIR)/casinhq.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@math/$(DEPDIR)/casinq.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@math/$(DEPDIR)/catanhq.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@math/$(DEPDIR)/catanq.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@math/$(DEPDIR)/cbrtq.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@math/$(DEPDIR)/ccoshq.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@math/$(DEPDIR)/ceilq.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@math/$(DEPDIR)/cexpq.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@math/$(DEPDIR)/cimagq.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@math/$(DEPDIR)/clog10q.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@math/$(DEPDIR)/clogq.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@math/$(DEPDIR)/complex.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@math/$(DEPDIR)/conjq.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@math/$(DEPDIR)/copysignq.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@math/$(DEPDIR)/coshq.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@math/$(DEPDIR)/cosq.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@math/$(DEPDIR)/cosq_kernel.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@math/$(DEPDIR)/cprojq.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@math/$(DEPDIR)/crealq.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@math/$(DEPDIR)/csinhq.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@math/$(DEPDIR)/csinq.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@math/$(DEPDIR)/csqrtq.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@math/$(DEPDIR)/ctanhq.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@math/$(DEPDIR)/ctanq.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@math/$(DEPDIR)/erfq.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@math/$(DEPDIR)/expm1q.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@math/$(DEPDIR)/expq.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@math/$(DEPDIR)/fabsq.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@math/$(DEPDIR)/fdimq.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@math/$(DEPDIR)/finiteq.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@math/$(DEPDIR)/floorq.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@math/$(DEPDIR)/fmaq.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@math/$(DEPDIR)/fmaxq.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@math/$(DEPDIR)/fminq.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@math/$(DEPDIR)/fmodq.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@math/$(DEPDIR)/frexpq.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@math/$(DEPDIR)/hypotq.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@math/$(DEPDIR)/ilogbq.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@math/$(DEPDIR)/isinf_nsq.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@math/$(DEPDIR)/isinfq.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@math/$(DEPDIR)/isnanq.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@math/$(DEPDIR)/j0q.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@math/$(DEPDIR)/j1q.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@math/$(DEPDIR)/jnq.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@math/$(DEPDIR)/ldexpq.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@math/$(DEPDIR)/lgammaq.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@math/$(DEPDIR)/llrintq.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@math/$(DEPDIR)/llroundq.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@math/$(DEPDIR)/log10q.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@math/$(DEPDIR)/log1pq.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@math/$(DEPDIR)/log2q.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@math/$(DEPDIR)/logq.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@math/$(DEPDIR)/lrintq.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@math/$(DEPDIR)/lroundq.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@math/$(DEPDIR)/modfq.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@math/$(DEPDIR)/nanq.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@math/$(DEPDIR)/nearbyintq.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@math/$(DEPDIR)/nextafterq.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@math/$(DEPDIR)/powq.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@math/$(DEPDIR)/rem_pio2q.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@math/$(DEPDIR)/remainderq.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@math/$(DEPDIR)/remquoq.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@math/$(DEPDIR)/rintq.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@math/$(DEPDIR)/roundq.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@math/$(DEPDIR)/scalblnq.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@math/$(DEPDIR)/scalbnq.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@math/$(DEPDIR)/signbitq.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@math/$(DEPDIR)/sincos_table.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@math/$(DEPDIR)/sincosq.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@math/$(DEPDIR)/sincosq_kernel.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@math/$(DEPDIR)/sinhq.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@math/$(DEPDIR)/sinq.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@math/$(DEPDIR)/sinq_kernel.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@math/$(DEPDIR)/sqrtq.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@math/$(DEPDIR)/tanhq.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@math/$(DEPDIR)/tanq.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@math/$(DEPDIR)/tgammaq.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@math/$(DEPDIR)/truncq.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@math/$(DEPDIR)/x2y2m1q.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@printf/$(DEPDIR)/add_n.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@printf/$(DEPDIR)/addmul_1.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@printf/$(DEPDIR)/cmp.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@printf/$(DEPDIR)/divrem.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@printf/$(DEPDIR)/flt1282mpn.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@printf/$(DEPDIR)/fpioconst.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@printf/$(DEPDIR)/lshift.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@printf/$(DEPDIR)/mul.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@printf/$(DEPDIR)/mul_1.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@printf/$(DEPDIR)/mul_n.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@printf/$(DEPDIR)/printf_fp.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@printf/$(DEPDIR)/printf_fphex.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@printf/$(DEPDIR)/quadmath-printf.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@printf/$(DEPDIR)/rshift.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@printf/$(DEPDIR)/sub_n.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@printf/$(DEPDIR)/submul_1.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@strtod/$(DEPDIR)/mpn2flt128.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@strtod/$(DEPDIR)/strtoflt128.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@strtod/$(DEPDIR)/tens_in_limb.Plo@am__quote@

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

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

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

mostlyclean-libtool:
	-rm -f *.lo

clean-libtool:
	-rm -rf .libs _libs
	-rm -rf math/.libs math/_libs
	-rm -rf printf/.libs printf/_libs
	-rm -rf strtod/.libs strtod/_libs

distclean-libtool:
	-rm -f libtool config.lt

# GNU Make needs to see an explicit $(MAKE) variable in the command it
# runs to enable its job server during parallel builds.  Hence the
# comments below.
all-multi:
	$(MULTIDO) $(AM_MAKEFLAGS) DO=all multi-do # $(MAKE)
install-multi:
	$(MULTIDO) $(AM_MAKEFLAGS) DO=install multi-do # $(MAKE)

mostlyclean-multi:
	$(MULTICLEAN) $(AM_MAKEFLAGS) DO=mostlyclean multi-clean # $(MAKE)
clean-multi:
	$(MULTICLEAN) $(AM_MAKEFLAGS) DO=clean multi-clean # $(MAKE)
distclean-multi:
	$(MULTICLEAN) $(AM_MAKEFLAGS) DO=distclean multi-clean # $(MAKE)
maintainer-clean-multi:
	$(MULTICLEAN) $(AM_MAKEFLAGS) DO=maintainer-clean multi-clean # $(MAKE)

libquadmath.dvi: libquadmath.texi $(libquadmath_TEXINFOS) 
	TEXINPUTS="$(am__TEXINFO_TEX_DIR)$(PATH_SEPARATOR)$$TEXINPUTS" \
	MAKEINFO='$(MAKEINFO) $(AM_MAKEINFOFLAGS) $(MAKEINFOFLAGS) -I $(srcdir)' \
	$(TEXI2DVI) -o $@ `test -f 'libquadmath.texi' || echo '$(srcdir)/'`libquadmath.texi

libquadmath.pdf: libquadmath.texi $(libquadmath_TEXINFOS) 
	TEXINPUTS="$(am__TEXINFO_TEX_DIR)$(PATH_SEPARATOR)$$TEXINPUTS" \
	MAKEINFO='$(MAKEINFO) $(AM_MAKEINFOFLAGS) $(MAKEINFOFLAGS) -I $(srcdir)' \
	$(TEXI2PDF) -o $@ `test -f 'libquadmath.texi' || echo '$(srcdir)/'`libquadmath.texi

libquadmath.html: libquadmath.texi $(libquadmath_TEXINFOS) 
	rm -rf $(@:.html=.htp)
	if $(MAKEINFOHTML) $(AM_MAKEINFOHTMLFLAGS) $(MAKEINFOFLAGS) -I $(srcdir) \
	 -o $(@:.html=.htp) `test -f 'libquadmath.texi' || echo '$(srcdir)/'`libquadmath.texi; \
	then \
	  rm -rf $@; \
	  if test ! -d $(@:.html=.htp) && test -d $(@:.html=); then \
	    mv $(@:.html=) $@; else mv $(@:.html=.htp) $@; fi; \
	else \
	  if test ! -d $(@:.html=.htp) && test -d $(@:.html=); then \
	    rm -rf $(@:.html=); else rm -Rf $(@:.html=.htp) $@; fi; \
	  exit 1; \
	fi
.dvi.ps:
	TEXINPUTS="$(am__TEXINFO_TEX_DIR)$(PATH_SEPARATOR)$$TEXINPUTS" \
	$(DVIPS) -o $@ $<

uninstall-dvi-am:
	@$(NORMAL_UNINSTALL)
	@list='$(DVIS)'; test -n "$(dvidir)" || list=; \
	for p in $$list; do \
	  $(am__strip_dir) \
	  echo " rm -f '$(DESTDIR)$(dvidir)/$$f'"; \
	  rm -f "$(DESTDIR)$(dvidir)/$$f"; \
	done

uninstall-html-am:
	@$(NORMAL_UNINSTALL)
	@list='$(HTMLS)'; test -n "$(htmldir)" || list=; \
	for p in $$list; do \
	  $(am__strip_dir) \
	  echo " rm -rf '$(DESTDIR)$(htmldir)/$$f'"; \
	  rm -rf "$(DESTDIR)$(htmldir)/$$f"; \
	done

uninstall-info-am:
	@$(PRE_UNINSTALL)
	@if test -d '$(DESTDIR)$(infodir)' && \
	    (install-info --version && \
	     install-info --version 2>&1 | sed 1q | grep -i -v debian) >/dev/null 2>&1; then \
	  list='$(INFO_DEPS)'; \
	  for file in $$list; do \
	    relfile=`echo "$$file" | sed 's|^.*/||'`; \
	    echo " install-info --info-dir='$(DESTDIR)$(infodir)' --remove '$(DESTDIR)$(infodir)/$$relfile'"; \
	    if install-info --info-dir="$(DESTDIR)$(infodir)" --remove "$(DESTDIR)$(infodir)/$$relfile"; \
	    then :; else test ! -f "$(DESTDIR)$(infodir)/$$relfile" || exit 1; fi; \
	  done; \
	else :; fi
	@$(NORMAL_UNINSTALL)
	@list='$(INFO_DEPS)'; \
	for file in $$list; do \
	  relfile=`echo "$$file" | sed 's|^.*/||'`; \
	  relfile_i=`echo "$$relfile" | sed 's|\.info$$||;s|$$|.i|'`; \
	  (if test -d "$(DESTDIR)$(infodir)" && cd "$(DESTDIR)$(infodir)"; then \
	     echo " cd '$(DESTDIR)$(infodir)' && rm -f $$relfile $$relfile-[0-9] $$relfile-[0-9][0-9] $$relfile_i[0-9] $$relfile_i[0-9][0-9]"; \
	     rm -f $$relfile $$relfile-[0-9] $$relfile-[0-9][0-9] $$relfile_i[0-9] $$relfile_i[0-9][0-9]; \
	   else :; fi); \
	done

uninstall-pdf-am:
	@$(NORMAL_UNINSTALL)
	@list='$(PDFS)'; test -n "$(pdfdir)" || list=; \
	for p in $$list; do \
	  $(am__strip_dir) \
	  echo " rm -f '$(DESTDIR)$(pdfdir)/$$f'"; \
	  rm -f "$(DESTDIR)$(pdfdir)/$$f"; \
	done

uninstall-ps-am:
	@$(NORMAL_UNINSTALL)
	@list='$(PSS)'; test -n "$(psdir)" || list=; \
	for p in $$list; do \
	  $(am__strip_dir) \
	  echo " rm -f '$(DESTDIR)$(psdir)/$$f'"; \
	  rm -f "$(DESTDIR)$(psdir)/$$f"; \
	done

dist-info: $(INFO_DEPS)
	@srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \
	list='$(INFO_DEPS)'; \
	for base in $$list; do \
	  case $$base in \
	    $(srcdir)/*) base=`echo "$$base" | sed "s|^$$srcdirstrip/||"`;; \
	  esac; \
	  if test -f $$base; then d=.; else d=$(srcdir); fi; \
	  base_i=`echo "$$base" | sed 's|\.info$$||;s|$$|.i|'`; \
	  for file in $$d/$$base $$d/$$base-[0-9] $$d/$$base-[0-9][0-9] $$d/$$base_i[0-9] $$d/$$base_i[0-9][0-9]; do \
	    if test -f $$file; then \
	      relfile=`expr "$$file" : "$$d/\(.*\)"`; \
	      test -f "$(distdir)/$$relfile" || \
		cp -p $$file "$(distdir)/$$relfile"; \
	    else :; fi; \
	  done; \
	done

mostlyclean-aminfo:
	-rm -rf libquadmath.aux libquadmath.cp libquadmath.cps libquadmath.fn \
	  libquadmath.fns libquadmath.ky libquadmath.kys \
	  libquadmath.log libquadmath.pg libquadmath.pgs \
	  libquadmath.tmp libquadmath.toc libquadmath.tp \
	  libquadmath.tps libquadmath.vr libquadmath.vrs

clean-aminfo:
	-test -z "libquadmath.dvi libquadmath.pdf libquadmath.ps libquadmath.html" \
	|| rm -rf libquadmath.dvi libquadmath.pdf libquadmath.ps libquadmath.html

maintainer-clean-aminfo:
	@list='$(INFO_DEPS)'; for i in $$list; do \
	  i_i=`echo "$$i" | sed 's|\.info$$||;s|$$|.i|'`; \
	  echo " rm -f $$i $$i-[0-9] $$i-[0-9][0-9] $$i_i[0-9] $$i_i[0-9][0-9]"; \
	  rm -f $$i $$i-[0-9] $$i-[0-9][0-9] $$i_i[0-9] $$i_i[0-9][0-9]; \
	done
install-nodist_libsubincludeHEADERS: $(nodist_libsubinclude_HEADERS)
	@$(NORMAL_INSTALL)
	test -z "$(libsubincludedir)" || $(MKDIR_P) "$(DESTDIR)$(libsubincludedir)"
	@list='$(nodist_libsubinclude_HEADERS)'; test -n "$(libsubincludedir)" || list=; \
	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_HEADER) $$files '$(DESTDIR)$(libsubincludedir)'"; \
	  $(INSTALL_HEADER) $$files "$(DESTDIR)$(libsubincludedir)" || exit $$?; \
	done

uninstall-nodist_libsubincludeHEADERS:
	@$(NORMAL_UNINSTALL)
	@list='$(nodist_libsubinclude_HEADERS)'; test -n "$(libsubincludedir)" || list=; \
	files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \
	test -n "$$files" || exit 0; \
	echo " ( cd '$(DESTDIR)$(libsubincludedir)' && rm -f" $$files ")"; \
	cd "$(DESTDIR)$(libsubincludedir)" && rm -f $$files

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

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

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

distclean-tags:
	-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
check-am: all-am
check: check-am
@BUILD_LIBQUADMATH_FALSE@all-local:
all-am: Makefile $(INFO_DEPS) $(LTLIBRARIES) all-multi $(HEADERS) \
		config.h all-local
installdirs:
	for dir in "$(DESTDIR)$(toolexeclibdir)" "$(DESTDIR)$(infodir)" "$(DESTDIR)$(libsubincludedir)"; do \
	  test -z "$$dir" || $(MKDIR_P) "$$dir"; \
	done
install: install-am
install-exec: install-exec-am
install-data: install-data-am
uninstall: uninstall-am

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

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

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

distclean-generic:
	-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
	-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
	-rm -f math/$(DEPDIR)/$(am__dirstamp)
	-rm -f math/$(am__dirstamp)
	-rm -f printf/$(DEPDIR)/$(am__dirstamp)
	-rm -f printf/$(am__dirstamp)
	-rm -f strtod/$(DEPDIR)/$(am__dirstamp)
	-rm -f strtod/$(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."
	-test -z "$(MAINTAINERCLEANFILES)" || rm -f $(MAINTAINERCLEANFILES)
clean: clean-am clean-multi

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

distclean: distclean-am distclean-multi
	-rm -f $(am__CONFIG_DISTCLEAN_FILES)
	-rm -rf math/$(DEPDIR) printf/$(DEPDIR) strtod/$(DEPDIR)
	-rm -f Makefile
distclean-am: clean-am distclean-compile distclean-generic \
	distclean-hdr distclean-libtool distclean-tags

dvi: dvi-am

dvi-am: $(DVIS)

html: html-am

html-am: $(HTMLS)

info: info-am

info-am: $(INFO_DEPS)

install-data-am: install-info-am install-nodist_libsubincludeHEADERS

install-dvi: install-dvi-am

install-dvi-am: $(DVIS)
	@$(NORMAL_INSTALL)
	test -z "$(dvidir)" || $(MKDIR_P) "$(DESTDIR)$(dvidir)"
	@list='$(DVIS)'; test -n "$(dvidir)" || list=; \
	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)$(dvidir)'"; \
	  $(INSTALL_DATA) $$files "$(DESTDIR)$(dvidir)" || exit $$?; \
	done
install-exec-am: install-multi install-toolexeclibLTLIBRARIES

install-html: install-html-am

install-html-am: $(HTMLS)
	@$(NORMAL_INSTALL)
	test -z "$(htmldir)" || $(MKDIR_P) "$(DESTDIR)$(htmldir)"
	@list='$(HTMLS)'; list2=; test -n "$(htmldir)" || list=; \
	for p in $$list; do \
	  if test -f "$$p" || test -d "$$p"; then d=; else d="$(srcdir)/"; fi; \
	  $(am__strip_dir) \
	  if test -d "$$d$$p"; then \
	    echo " $(MKDIR_P) '$(DESTDIR)$(htmldir)/$$f'"; \
	    $(MKDIR_P) "$(DESTDIR)$(htmldir)/$$f" || exit 1; \
	    echo " $(INSTALL_DATA) '$$d$$p'/* '$(DESTDIR)$(htmldir)/$$f'"; \
	    $(INSTALL_DATA) "$$d$$p"/* "$(DESTDIR)$(htmldir)/$$f" || exit $$?; \
	  else \
	    list2="$$list2 $$d$$p"; \
	  fi; \
	done; \
	test -z "$$list2" || { echo "$$list2" | $(am__base_list) | \
	while read files; do \
	  echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(htmldir)'"; \
	  $(INSTALL_DATA) $$files "$(DESTDIR)$(htmldir)" || exit $$?; \
	done; }
install-info: install-info-am

install-info-am: $(INFO_DEPS)
	@$(NORMAL_INSTALL)
	test -z "$(infodir)" || $(MKDIR_P) "$(DESTDIR)$(infodir)"
	@srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \
	list='$(INFO_DEPS)'; test -n "$(infodir)" || list=; \
	for file in $$list; do \
	  case $$file in \
	    $(srcdir)/*) file=`echo "$$file" | sed "s|^$$srcdirstrip/||"`;; \
	  esac; \
	  if test -f $$file; then d=.; else d=$(srcdir); fi; \
	  file_i=`echo "$$file" | sed 's|\.info$$||;s|$$|.i|'`; \
	  for ifile in $$d/$$file $$d/$$file-[0-9] $$d/$$file-[0-9][0-9] \
	               $$d/$$file_i[0-9] $$d/$$file_i[0-9][0-9] ; do \
	    if test -f $$ifile; then \
	      echo "$$ifile"; \
	    else : ; fi; \
	  done; \
	done | $(am__base_list) | \
	while read files; do \
	  echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(infodir)'"; \
	  $(INSTALL_DATA) $$files "$(DESTDIR)$(infodir)" || exit $$?; done
	@$(POST_INSTALL)
	@if (install-info --version && \
	     install-info --version 2>&1 | sed 1q | grep -i -v debian) >/dev/null 2>&1; then \
	  list='$(INFO_DEPS)'; test -n "$(infodir)" || list=; \
	  for file in $$list; do \
	    relfile=`echo "$$file" | sed 's|^.*/||'`; \
	    echo " install-info --info-dir='$(DESTDIR)$(infodir)' '$(DESTDIR)$(infodir)/$$relfile'";\
	    install-info --info-dir="$(DESTDIR)$(infodir)" "$(DESTDIR)$(infodir)/$$relfile" || :;\
	  done; \
	else : ; fi
install-man:

install-pdf: install-pdf-am

install-pdf-am: $(PDFS)
	@$(NORMAL_INSTALL)
	test -z "$(pdfdir)" || $(MKDIR_P) "$(DESTDIR)$(pdfdir)"
	@list='$(PDFS)'; test -n "$(pdfdir)" || list=; \
	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)$(pdfdir)'"; \
	  $(INSTALL_DATA) $$files "$(DESTDIR)$(pdfdir)" || exit $$?; done
install-ps: install-ps-am

install-ps-am: $(PSS)
	@$(NORMAL_INSTALL)
	test -z "$(psdir)" || $(MKDIR_P) "$(DESTDIR)$(psdir)"
	@list='$(PSS)'; test -n "$(psdir)" || list=; \
	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)$(psdir)'"; \
	  $(INSTALL_DATA) $$files "$(DESTDIR)$(psdir)" || exit $$?; done
installcheck-am:

maintainer-clean: maintainer-clean-am maintainer-clean-multi
	-rm -f $(am__CONFIG_DISTCLEAN_FILES)
	-rm -rf $(top_srcdir)/autom4te.cache
	-rm -rf math/$(DEPDIR) printf/$(DEPDIR) strtod/$(DEPDIR)
	-rm -f Makefile
maintainer-clean-am: distclean-am maintainer-clean-aminfo \
	maintainer-clean-generic

mostlyclean: mostlyclean-am mostlyclean-multi

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

pdf: pdf-am

pdf-am: $(PDFS)

ps: ps-am

ps-am: $(PSS)

uninstall-am: uninstall-dvi-am uninstall-html-am uninstall-info-am \
	uninstall-nodist_libsubincludeHEADERS uninstall-pdf-am \
	uninstall-ps-am uninstall-toolexeclibLTLIBRARIES

.MAKE: all all-multi clean-multi distclean-multi install-am \
	install-multi install-strip maintainer-clean-multi \
	mostlyclean-multi

.PHONY: CTAGS GTAGS all all-am all-local all-multi am--refresh check \
	check-am clean clean-aminfo clean-generic clean-libtool \
	clean-multi clean-toolexeclibLTLIBRARIES ctags dist-info \
	distclean distclean-compile distclean-generic distclean-hdr \
	distclean-libtool distclean-multi distclean-tags 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-multi \
	install-nodist_libsubincludeHEADERS install-pdf install-pdf-am \
	install-ps install-ps-am install-strip \
	install-toolexeclibLTLIBRARIES installcheck installcheck-am \
	installdirs maintainer-clean maintainer-clean-aminfo \
	maintainer-clean-generic maintainer-clean-multi mostlyclean \
	mostlyclean-aminfo mostlyclean-compile mostlyclean-generic \
	mostlyclean-libtool mostlyclean-multi pdf pdf-am ps ps-am tags \
	uninstall uninstall-am uninstall-dvi-am uninstall-html-am \
	uninstall-info-am uninstall-nodist_libsubincludeHEADERS \
	uninstall-pdf-am uninstall-ps-am \
	uninstall-toolexeclibLTLIBRARIES

@BUILD_LIBQUADMATH_TRUE@@LIBQUAD_USE_SYMVER_SUN_TRUE@@LIBQUAD_USE_SYMVER_TRUE@quadmath.map-sun : $(srcdir)/quadmath.map \
@BUILD_LIBQUADMATH_TRUE@@LIBQUAD_USE_SYMVER_SUN_TRUE@@LIBQUAD_USE_SYMVER_TRUE@		$(top_srcdir)/../contrib/make_sunver.pl \
@BUILD_LIBQUADMATH_TRUE@@LIBQUAD_USE_SYMVER_SUN_TRUE@@LIBQUAD_USE_SYMVER_TRUE@		$(libquadmath_la_OBJECTS) $(libquadmath_la_LIBADD)
@BUILD_LIBQUADMATH_TRUE@@LIBQUAD_USE_SYMVER_SUN_TRUE@@LIBQUAD_USE_SYMVER_TRUE@	perl $(top_srcdir)/../contrib/make_sunver.pl \
@BUILD_LIBQUADMATH_TRUE@@LIBQUAD_USE_SYMVER_SUN_TRUE@@LIBQUAD_USE_SYMVER_TRUE@	  $(srcdir)/quadmath.map \
@BUILD_LIBQUADMATH_TRUE@@LIBQUAD_USE_SYMVER_SUN_TRUE@@LIBQUAD_USE_SYMVER_TRUE@	 `echo $(libquadmath_la_OBJECTS) $(libquadmath_la_LIBADD) | \
@BUILD_LIBQUADMATH_TRUE@@LIBQUAD_USE_SYMVER_SUN_TRUE@@LIBQUAD_USE_SYMVER_TRUE@	   sed 's,\([^/ 	]*\)\.l\([ao]\),.libs/\1.\2,g'` \
@BUILD_LIBQUADMATH_TRUE@@LIBQUAD_USE_SYMVER_SUN_TRUE@@LIBQUAD_USE_SYMVER_TRUE@	 > $@ || (rm -f $@ ; exit 1)

@BUILD_LIBQUADMATH_TRUE@all-local: $(STAMP_GENINSRC)

@BUILD_LIBQUADMATH_TRUE@stamp-geninsrc: libquadmath.info
@BUILD_LIBQUADMATH_TRUE@	cp -p $(top_builddir)/libquadmath.info $(srcdir)/libquadmath.info
@BUILD_LIBQUADMATH_TRUE@	@touch $@

@BUILD_LIBQUADMATH_TRUE@stamp-build-info: libquadmath.texi $(libquadmath_TEXINFOS)
@BUILD_LIBQUADMATH_TRUE@	$(MAKEINFO) $(AM_MAKEINFOFLAGS) $(MAKEINFOFLAGS) -I $(srcdir) -o libquadmath.info $(srcdir)/libquadmath.texi
@BUILD_LIBQUADMATH_TRUE@	@touch $@

# Unconditionally override this target, so that automake's definition
# does not wrongly interfere.
libquadmath.info: $(STAMP_BUILD_INFO)

libquadmath-vers.texi:
	echo "@set BUGURL $(REPORT_BUGS_TEXI)" > $@

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