# 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@
subdir = man
DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/acinclude.m4 \
	$(top_srcdir)/configure.in
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
	$(ACLOCAL_M4)
mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
CONFIG_HEADER = $(top_builddir)/config.h
CONFIG_CLEAN_FILES =
CONFIG_CLEAN_VPATH_FILES =
SOURCES =
DIST_SOURCES =
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'
man1dir = $(mandir)/man1
am__installdirs = "$(DESTDIR)$(man1dir)" "$(DESTDIR)$(man3dir)"
man3dir = $(mandir)/man3
NROFF = nroff
MANS = $(man_MANS)
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
ACLOCAL = @ACLOCAL@
AMTAR = @AMTAR@
AR = @AR@
AS = @AS@
AUTOCONF = @AUTOCONF@
AUTOHEADER = @AUTOHEADER@
AUTOMAKE = @AUTOMAKE@
AWK = @AWK@
CATALOGS = @CATALOGS@
CATOBJEXT = @CATOBJEXT@
CC = @CC@
CCDEPMODE = @CCDEPMODE@
CFLAGS = @CFLAGS@
CPP = @CPP@
CPPFLAGS = @CPPFLAGS@
CXX = @CXX@
CXXCPP = @CXXCPP@
CXXDEPMODE = @CXXDEPMODE@
CXXFLAGS = @CXXFLAGS@
CYGPATH_W = @CYGPATH_W@
DATADIRNAME = @DATADIRNAME@
DEFS = @DEFS@
DEPDIR = @DEPDIR@
DLLTOOL = @DLLTOOL@
DLLWRAP = @DLLWRAP@
DSYMUTIL = @DSYMUTIL@
DUMPBIN = @DUMPBIN@
ECHO_C = @ECHO_C@
ECHO_N = @ECHO_N@
ECHO_T = @ECHO_T@
EGREP = @EGREP@
EXEEXT = @EXEEXT@
EXIF_CFLAGS = @EXIF_CFLAGS@
EXIF_LIBS = @EXIF_LIBS@
FFTW3_CFLAGS = @FFTW3_CFLAGS@
FFTW3_LIBS = @FFTW3_LIBS@
FGREP = @FGREP@
GETTEXT_PACKAGE = @GETTEXT_PACKAGE@
GMOFILES = @GMOFILES@
GMSGFMT = @GMSGFMT@
GREP = @GREP@
GTHREAD_CFLAGS = @GTHREAD_CFLAGS@
GTHREAD_LIBS = @GTHREAD_LIBS@
GTKDOC_CHECK = @GTKDOC_CHECK@
GTKDOC_MKPDF = @GTKDOC_MKPDF@
GTKDOC_REBASE = @GTKDOC_REBASE@
HTML_DIR = @HTML_DIR@
IMAGE_MAGICK_CFLAGS = @IMAGE_MAGICK_CFLAGS@
IMAGE_MAGICK_LIBS = @IMAGE_MAGICK_LIBS@
IM_LIBDIR = @IM_LIBDIR@
IM_MAJOR_VERSION = @IM_MAJOR_VERSION@
IM_MICRO_VERSION = @IM_MICRO_VERSION@
IM_MINOR_VERSION = @IM_MINOR_VERSION@
IM_VERSION = @IM_VERSION@
IM_VERSION_STRING = @IM_VERSION_STRING@
INSTALL = @INSTALL@
INSTALL_DATA = @INSTALL_DATA@
INSTALL_PROGRAM = @INSTALL_PROGRAM@
INSTALL_SCRIPT = @INSTALL_SCRIPT@
INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
INSTOBJEXT = @INSTOBJEXT@
INTLLIBS = @INTLLIBS@
JPEG_INCLUDES = @JPEG_INCLUDES@
JPEG_LIBS = @JPEG_LIBS@
LCMS_CFLAGS = @LCMS_CFLAGS@
LCMS_LIBS = @LCMS_LIBS@
LD = @LD@
LDFLAGS = @LDFLAGS@
LIBOBJS = @LIBOBJS@
LIBOIL_CFLAGS = @LIBOIL_CFLAGS@
LIBOIL_LIBS = @LIBOIL_LIBS@
LIBRARY_AGE = @LIBRARY_AGE@
LIBRARY_CURRENT = @LIBRARY_CURRENT@
LIBRARY_REVISION = @LIBRARY_REVISION@
LIBS = @LIBS@
LIBTOOL = @LIBTOOL@
LIPO = @LIPO@
LN_S = @LN_S@
LTLIBOBJS = @LTLIBOBJS@
MAGICK_CFLAGS = @MAGICK_CFLAGS@
MAGICK_LIBS = @MAGICK_LIBS@
MAGICK_WAND_CFLAGS = @MAGICK_WAND_CFLAGS@
MAGICK_WAND_LIBS = @MAGICK_WAND_LIBS@
MAKEINFO = @MAKEINFO@
MATIO_CFLAGS = @MATIO_CFLAGS@
MATIO_LIBS = @MATIO_LIBS@
MKDIR_P = @MKDIR_P@
MKINSTALLDIRS = @MKINSTALLDIRS@
MSGFMT = @MSGFMT@
MSGFMT_OPTS = @MSGFMT_OPTS@
NM = @NM@
NMEDIT = @NMEDIT@
OBJDUMP = @OBJDUMP@
OBJEXT = @OBJEXT@
OPENEXR_CFLAGS = @OPENEXR_CFLAGS@
OPENEXR_LIBS = @OPENEXR_LIBS@
OTOOL = @OTOOL@
OTOOL64 = @OTOOL64@
PACKAGE = @PACKAGE@
PACKAGES_USED = @PACKAGES_USED@
PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
PACKAGE_NAME = @PACKAGE_NAME@
PACKAGE_STRING = @PACKAGE_STRING@
PACKAGE_TARNAME = @PACKAGE_TARNAME@
PACKAGE_URL = @PACKAGE_URL@
PACKAGE_VERSION = @PACKAGE_VERSION@
PANGOFT2_CFLAGS = @PANGOFT2_CFLAGS@
PANGOFT2_LIBS = @PANGOFT2_LIBS@
PATH_SEPARATOR = @PATH_SEPARATOR@
PKG_CONFIG = @PKG_CONFIG@
PNG_CFLAGS = @PNG_CFLAGS@
PNG_INCLUDES = @PNG_INCLUDES@
PNG_LIBS = @PNG_LIBS@
POFILES = @POFILES@
POSUB = @POSUB@
PO_IN_DATADIR_FALSE = @PO_IN_DATADIR_FALSE@
PO_IN_DATADIR_TRUE = @PO_IN_DATADIR_TRUE@
PYTHON = @PYTHON@
PYTHON_EXEC_PREFIX = @PYTHON_EXEC_PREFIX@
PYTHON_INCLUDES = @PYTHON_INCLUDES@
PYTHON_PLATFORM = @PYTHON_PLATFORM@
PYTHON_PREFIX = @PYTHON_PREFIX@
PYTHON_VERSION = @PYTHON_VERSION@
RANLIB = @RANLIB@
REQUIRED_CFLAGS = @REQUIRED_CFLAGS@
REQUIRED_LIBS = @REQUIRED_LIBS@
SED = @SED@
SET_MAKE = @SET_MAKE@
SHELL = @SHELL@
STRIP = @STRIP@
TIFF_INCLUDES = @TIFF_INCLUDES@
TIFF_LIBS = @TIFF_LIBS@
USE_NLS = @USE_NLS@
VERSION = @VERSION@
VIPS_CFLAGS = @VIPS_CFLAGS@
VIPS_CXX_LIBS = @VIPS_CXX_LIBS@
VIPS_INCLUDES = @VIPS_INCLUDES@
VIPS_LIBS = @VIPS_LIBS@
XGETTEXT = @XGETTEXT@
XMKMF = @XMKMF@
X_CFLAGS = @X_CFLAGS@
X_EXTRA_LIBS = @X_EXTRA_LIBS@
X_LIBS = @X_LIBS@
X_PRE_LIBS = @X_PRE_LIBS@
ZIP_INCLUDES = @ZIP_INCLUDES@
ZIP_LIBS = @ZIP_LIBS@
abs_builddir = @abs_builddir@
abs_srcdir = @abs_srcdir@
abs_top_builddir = @abs_top_builddir@
abs_top_srcdir = @abs_top_srcdir@
ac_ct_CC = @ac_ct_CC@
ac_ct_CXX = @ac_ct_CXX@
ac_ct_DUMPBIN = @ac_ct_DUMPBIN@
am__include = @am__include@
am__leading_dot = @am__leading_dot@
am__quote = @am__quote@
am__tar = @am__tar@
am__untar = @am__untar@
bindir = @bindir@
build = @build@
build_alias = @build_alias@
build_cpu = @build_cpu@
build_os = @build_os@
build_vendor = @build_vendor@
builddir = @builddir@
datadir = @datadir@
datarootdir = @datarootdir@
docdir = @docdir@
dvidir = @dvidir@
exec_prefix = @exec_prefix@
host = @host@
host_alias = @host_alias@
host_cpu = @host_cpu@
host_os = @host_os@
host_vendor = @host_vendor@
htmldir = @htmldir@
includedir = @includedir@
infodir = @infodir@
install_sh = @install_sh@
libdir = @libdir@
libexecdir = @libexecdir@
localedir = @localedir@
localstatedir = @localstatedir@
lt_ECHO = @lt_ECHO@
mandir = @mandir@
mkdir_p = @mkdir_p@
oldincludedir = @oldincludedir@
pdfdir = @pdfdir@
pkgpyexecdir = @pkgpyexecdir@
pkgpythondir = @pkgpythondir@
prefix = @prefix@
program_transform_name = @program_transform_name@
psdir = @psdir@
pyexecdir = @pyexecdir@
pythondir = @pythondir@
sbindir = @sbindir@
sharedstatedir = @sharedstatedir@
srcdir = @srcdir@
sysconfdir = @sysconfdir@
target_alias = @target_alias@
top_build_prefix = @top_build_prefix@
top_builddir = @top_builddir@
top_srcdir = @top_srcdir@
man_MANS = \
	batch_crop.1 \
	batch_image_convert.1 \
	batch_rubber_sheet.1 \
	binfile.1 \
	cooc.1 \
	cooc_features.1 \
	debugim.1 \
	edvips.1 \
	glds.1 \
	glds_features.1 \
	header.1 \
	light_correct.1 \
	printlines.1 \
	simcontr.1 \
	sines.1 \
	squares.1 \
	vips.1 \
	vipsthumbnail.1 \
	error_exit.3 \
	im_abs.3 \
	im_acostra.3 \
	im_add.3 \
	im_rad2float.3 \
	im_float2rad.3 \
	im_add_preclose_callback.3 \
	im_add_close_callback.3 \
	im_add_evalstart_callback.3 \
	im_add_eval_callback.3 \
	im_add_evalend_callback.3 \
	im_add_invalidate_callback.3 \
	im_addgnoise.3 \
	im_affine.3 \
	im_affinei.3 \
	im_affinei_all.3 \
	im_allocate_input_array.3 \
	im_amiMSBfirst.3 \
	im_analyze2vips.3 \
	im_andconst.3 \
	im_andimage.3 \
	im_and_vec.3 \
	IM_ARRAY.3 \
	im_asintra.3 \
	im_atantra.3 \
	im_avg.3 \
	im_BandFmt2char.3 \
	im_bandjoin.3 \
	im_bandmean.3 \
	im_benchmark.3 \
	im_binfile.3 \
	im_bits_of_fmt.3 \
	im_black.3 \
	im_blend.3 \
	im_buildlut.3 \
	im_c2amph.3 \
	im_c2imag.3 \
	im_c2ps.3 \
	im_c2real.3 \
	im_c2rect.3 \
	im_cache.3 \
	im_ceil.3 \
	im_char2BandFmt.3 \
	im_char2Coding.3 \
	im_char2Compression.3 \
	im_char2Type.3 \
	im_circle.3 \
	im_clip2c.3 \
	im_clip2cm.3 \
	im_clip2d.3 \
	im_clip2dcm.3 \
	im_clip2f.3 \
	im_clip2fmt.3 \
	im_clip2i.3 \
	im_clip2s.3 \
	im_clip2ui.3 \
	im_clip2us.3 \
	im_clip.3 \
	im_close.3 \
	im_cmulnorm.3 \
	im_cntlines.3 \
	im_Coding2char.3 \
	im_col_ab2Ch.3 \
	im_col_C2Cucs.3 \
	im_col_Ch2ab.3 \
	im_col_Ch2hucs.3 \
	im_col_Chucs2h.3 \
	im_col_Cucs2C.3 \
	im_col_dECMC.3 \
	im_col_display.3 \
	im_col_L2Lucs.3 \
	im_col_Lab2XYZ.3 \
	im_col_Lucs2L.3 \
	im_col_make_tables_RGB.3 \
	im_col_make_tables_UCS.3 \
	im_col_pythagoras.3 \
	im_col_rgb2XYZ.3 \
	im_col_XYZ2Lab.3 \
	im_col_XYZ2rgb.3 \
	im_compass.3 \
	im_Compression2char.3 \
	im_concurrency_get.3 \
	im_concurrency_set.3 \
	im_contrast_surface.3 \
	im_contrast_surface_raw.3 \
	im_conv.3 \
	im_convf.3 \
	im_convf_raw.3 \
	im_conv_raw.3 \
	im_convsep.3 \
	im_convsepf.3 \
	im_convsepf_raw.3 \
	im_convsep_raw.3 \
	im_convsub.3 \
	im_cooc_asm.3 \
	im_cooc_contrast.3 \
	im_cooc_correlation.3 \
	im_cooc_entropy.3 \
	im_cooc_matrix.3 \
	im_copy.3 \
	im_copy_from.3 \
	im_copy_morph.3 \
	im_copy_set.3 \
	im_copy_set_meta.3 \
	im_copy_swap.3 \
	im_correl.3 \
	im_costra.3 \
	im_cp_desc.3 \
	im_cp_desc_array.3 \
	im_cp_descv.3 \
	im_create_dmask.3 \
	im_create_fmask.3 \
	im_create_imask.3 \
	im_csv2vips.3 \
	im_dE00_fromLab.3 \
	im_debugim.3 \
	im_dECMC_fromdisp.3 \
	im_dECMC_fromLab.3 \
	im_dE_fromdisp.3 \
	im_dE_fromLab.3 \
	im_dE_fromXYZ.3 \
	im_demand_hint.3 \
	im_demand_hint_array.3 \
	im_deviate.3 \
	im_diag.3 \
	im_dif_std.3 \
	im_dilate.3 \
	im_dilate_raw.3 \
	im_disp2Lab.3 \
	im_disp2XYZ.3 \
	im_disp_ps.3 \
	im_divide.3 \
	im_dup_dmask.3 \
	im_dup_imask.3 \
	im_embed.3 \
	im_eorconst.3 \
	im_eorimage.3 \
	im_eor_vec.3 \
	im_equal.3 \
	im_equalconst.3 \
	im_equal_vec.3 \
	im_erode.3 \
	im_erode_raw.3 \
	im_error.3 \
	im_error_buffer.3 \
	im_error_clear.3 \
	im_exp10tra.3 \
	im_expntra.3 \
	im_expntra_vec.3 \
	im_exptra.3 \
	im_exr2vips.3 \
	im_extract.3 \
	im_extract_area.3 \
	im_extract_areabands.3 \
	im_extract_bands.3 \
	im_eye.3 \
	im_falsecolour.3 \
	im_fastcor.3 \
	im_fastline.3 \
	im_fastlineuser.3 \
	im_fav4.3 \
	im_feye.3 \
	im_fgrey.3 \
	im_fliphor.3 \
	im_flipver.3 \
	im_flood.3 \
	im_flood_blob.3 \
	im_floor.3 \
	im_flt_imag_freq.3 \
	VipsObject.3 \
	VipsFormat.3 \
	VipsInterpolate.3 \
	vips_format_for_file.3 \
	vips_format_for_name.3 \
	vips_format_map.3 \
	vips_format_read.3 \
	vips_format_write.3 \
	im_fractsurf.3 \
	im_free.3 \
	im_free_dmask.3 \
	im_free_imask.3 \
	im_freqflt.3 \
	im_fwfft.3 \
	im_fzone.3 \
	im_gadd.3 \
	im_gaddim.3 \
	im_gammacorrect.3 \
	im_gauss_dmask.3 \
	im_gauss_imask.3 \
	im_gauss_imask_sep.3 \
	im_gaussnoise.3 \
	im_gbandjoin.3 \
	im_generate.3 \
	im_get_option_group.3 \
	im_gfadd.3 \
	im_glds_asm.3 \
	im_glds_contrast.3 \
	im_glds_entropy.3 \
	im_glds_matrix.3 \
	im_glds_mean.3 \
	im_global_balance.3 \
	im_global_balance_float.3 \
	im_gradcor.3 \
	im_gradient.3 \
	im_grad_x.3 \
	im_grad_y.3 \
	im_grey.3 \
	im_grid.3 \
	im_guess_prefix.3 \
	im_guess_libdir.3 \
	im_header.3 \
	im_header_double.3 \
	im_header_get.3 \
	im_header_get_type.3 \
	im_header_int.3 \
	im_header_map.3 \
	im_header_string.3 \
	im_heq.3 \
	im_hist.3 \
	im_histcum.3 \
	im_histeq.3 \
	im_histgr.3 \
	im_histlin.3 \
	im_histnD.3 \
	im_histnorm.3 \
	im_history_get.3 \
	im_histplot.3 \
	im_histspec.3 \
	im_hsp.3 \
	im_icc_ac2rc.3 \
	im_icc_export.3 \
	im_icc_export_depth.3 \
	im_icc_import.3 \
	im_icc_import_embedded.3 \
	im_icc_present.3 \
	im_icc_transform.3 \
	im_identity.3 \
	im_identity_ushort.3 \
	im_ifthenelse.3 \
	im_image.3 \
	IM_IMAGE_ADDR.3 \
	IM_IMAGE_N_ELEMENTS.3 \
	im_image_sanity.3 \
	IM_IMAGE_SIZEOF_ELEMENT.3 \
	IM_IMAGE_SIZEOF_LINE.3 \
	IM_IMAGE_SIZEOF_PEL.3 \
	im_incheck.3 \
	im_init.3 \
	im_initdesc.3 \
	im_init_world.3 \
	im_insert.3 \
	im_insertplace.3 \
	im_invalidate.3 \
	im_invert.3 \
	im_invertlut.3 \
	im_invfft.3 \
	im_invfftr.3 \
	im_iocheck.3 \
	im_iscomplex.3 \
	im_isfile.3 \
	im_isfloat.3 \
	im_isint.3 \
	im_isMSBfirst.3 \
	im_ispartial.3 \
	im_isscalar.3 \
	im_isuint.3 \
	im_isvips.3 \
	im_iterate.3 \
	im_jpeg2vips.3 \
	im_Lab2disp.3 \
	im_Lab2LabQ.3 \
	im_Lab2LabS.3 \
	im_Lab2LCh.3 \
	im_Lab2UCS.3 \
	im_Lab2XYZ.3 \
	im_lab_morph.3 \
	im_LabQ2disp.3 \
	im_LabQ2disp_build_table.3 \
	im_LabQ2disp_table.3 \
	im_LabQ2Lab.3 \
	im_LabQ2LabS.3 \
	im_LabQ2XYZ.3 \
	im_LabS2Lab.3 \
	im_LabS2LabQ.3 \
	im_LCh2Lab.3 \
	im_LCh2UCS.3 \
	im_less.3 \
	im_lessconst.3 \
	im_lesseq.3 \
	im_lesseqconst.3 \
	im_lesseq_vec.3 \
	im_less_vec.3 \
	im_lhisteq.3 \
	im_lhisteq_raw.3 \
	im_lindetect.3 \
	im_line.3 \
	im_lineset.3 \
	im_lintra.3 \
	im_lintra_vec.3 \
	im_litecor.3 \
	im_log10tra.3 \
	im_log_dmask.3 \
	im_log_imask.3 \
	im_logtra.3 \
	im_lowpass.3 \
	im_lrjoin.3 \
	im_lrmerge.3 \
	im_lrmosaic.3 \
	im_lu_decomp.3 \
	im_lu_solve.3 \
	IM_MACROS.3 \
	im_magick2vips.3 \
	im_makerw.3 \
	im_make_xy.3 \
	im_malloc.3 \
	im_maplut.3 \
	im_mask2vips.3 \
	im_matcat.3 \
	im_match_linear.3 \
	im_match_linear_search.3 \
	im_matinv.3 \
	im_matinv_inplace.3 \
	im_matmul.3 \
	im_mattrn.3 \
	im_max.3 \
	im_maxpos.3 \
	im_maxpos_vec.3 \
	im_maxvalue.3 \
	im_mean_std_double_buffer.3 \
	im_mean_std_int_buffer.3 \
	im_measure.3 \
	im_meta.3 \
	im_meta_get.3 \
	im_meta_get_area.3 \
	im_meta_get_blob.3 \
	im_meta_get_double.3 \
	im_meta_get_int.3 \
	im_meta_get_string.3 \
	im_meta_get_type.3 \
	im_meta_set.3 \
	im_meta_set_area.3 \
	im_meta_set_blob.3 \
	im_meta_set_double.3 \
	im_meta_set_int.3 \
	im_meta_set_string.3 \
	im_min.3 \
	im_minpos.3 \
	im_minpos_vec.3 \
	im_mmapin.3 \
	im_mmapinrw.3 \
	im_more.3 \
	im_moreconst.3 \
	im_moreeq.3 \
	im_moreeqconst.3 \
	im_moreeq_vec.3 \
	im_more_vec.3 \
	im_mpercent.3 \
	im_msb.3 \
	im_msb_band.3 \
	im_multiply.3 \
	IM_NEW.3 \
	im_norm_dmask.3 \
	im_notequal.3 \
	im_notequalconst.3 \
	im_notequal_vec.3 \
	IM_NUMBER.3 \
	im_offsets45.3 \
	im_offsets90.3 \
	im_open.3 \
	im_open_local.3 \
	im_open_local_array.3 \
	im_openout.3 \
	im_orconst.3 \
	im_orimage.3 \
	im_or_vec.3 \
	im_outcheck.3 \
	im_paintrect.3 \
	im_partial.3 \
	im_pincheck.3 \
	im_piocheck.3 \
	im_plotmask.3 \
	im_plotpoint.3 \
	im_png2vips.3 \
	im_poutcheck.3 \
	im_powtra.3 \
	im_powtra_vec.3 \
	im_ppm2vips.3 \
	im_prepare.3 \
	im_prepare_many.3 \
	im_prepare_to.3 \
	im_print.3 \
	im_printdesc.3 \
	im_print_dmask.3 \
	im_print_imask.3 \
	im_printlines.3 \
	im_profile.3 \
	im_project.3 \
	im_quantim.3 \
	im_quantlut.3 \
	im_rank.3 \
	im_rank_image.3 \
	im_raw2vips.3 \
	im_read_dmask.3 \
	im_read_imask.3 \
	im_readpoint.3 \
	im_recomb.3 \
	IM_RECT_BOTTOM.3 \
	im_rect_dup.3 \
	im_rect_equalsrect.3 \
	IM_RECT_HCENTRE.3 \
	im_rect_includespoint.3 \
	im_rect_includesrect.3 \
	im_rect_intersectrect.3 \
	im_rect_isempty.3 \
	im_rect_marginadjust.3 \
	im_rect_normalise.3 \
	IM_RECT_RIGHT.3 \
	im_rect_unionrect.3 \
	IM_RECT_VCENTRE.3 \
	IM_REGION_ADDR.3 \
	im_region_buffer.3 \
	im_region_create.3 \
	im_region_free.3 \
	im_region_image.3 \
	IM_REGION_LSKIP.3 \
	IM_REGION_N_ELEMENTS.3 \
	im_region_position.3 \
	im_region_region.3 \
	IM_REGION_SIZEOF_LINE.3 \
	im_remainder.3 \
	im_remainderconst.3 \
	im_remainderconst_vec.3 \
	im_remosaic.3 \
	im_render.3 \
	im_render_fade.3 \
	im_replicate.3 \
	im_resize_linear.3 \
	im_ri2c.3 \
	im_rightshift_size.3 \
	im_rint.3 \
	im_rot180.3 \
	im_rot270.3 \
	im_rot90.3 \
	im_rotate_dmask45.3 \
	im_rotate_dmask90.3 \
	im_rotate_imask45.3 \
	im_rotate_imask90.3 \
	im_rotquad.3 \
	im_scale.3 \
	im_scale_dmask.3 \
	im_scaleps.3 \
	im_setbuf.3 \
	im_setupout.3 \
	im_sharpen.3 \
	im_shiftleft.3 \
	im_shiftright.3 \
	im_shrink.3 \
	im_sign.3 \
	im_simcontr.3 \
	im_similarity.3 \
	im_similarity_area.3 \
	im_sines.3 \
	im_sintra.3 \
	im_slice.3 \
	im_smear.3 \
	im_smudge.3 \
	im_spatres.3 \
	im_spcor.3 \
	im_sRGB2XYZ.3 \
	im_start_many.3 \
	im_start_one.3 \
	im_stats.3 \
	im_stdif.3 \
	im_stop_many.3 \
	im_stop_one.3 \
	im_stretch3.3 \
	im_subsample.3 \
	im_subtract.3 \
	im_system.3 \
	im_tantra.3 \
	im_tbjoin.3 \
	im_tbmerge.3 \
	im_tbmosaic.3 \
	im_text.3 \
	im_thresh.3 \
	im_tiff2vips.3 \
	im_tile_cache.3 \
	im_tone_analyse.3 \
	im_tone_build.3 \
	im_tone_map.3 \
	im_Type2char.3 \
	im_UCS2Lab.3 \
	im_UCS2LCh.3 \
	im_UCS2XYZ.3 \
	im_updatehist.3 \
	im_verror.3 \
	im_version.3 \
	im_version_string.3 \
	im_video_v4l1.3 \
	im_vips2bufjpeg.3 \
	im_vips2csv.3 \
	im_vips2jpeg.3 \
	im_vips2mask.3 \
	im_vips2mimejpeg.3 \
	im_vips2png.3 \
	im_vips2ppm.3 \
	im_vips2raw.3 \
	im_vips2tiff.3 \
	im_warn.3 \
	im_wrapmany.3 \
	im_wrapone.3 \
	im_write_dmask.3 \
	im_write_dmask_name.3 \
	im_write_imask.3 \
	im_write_imask_name.3 \
	im_writeline.3 \
	im_XYZ2disp.3 \
	im_XYZ2Lab.3 \
	im_XYZ2sRGB.3 \
	im_XYZ2UCS.3 \
	im_XYZ2Yxy.3 \
	im_Yxy2XYZ.3 \
	im_zerox.3 \
	im_zone.3 \
	im_zoom.3

EXTRA_DIST = ${man_MANS}
all: all-am

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

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

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

mostlyclean-libtool:
	-rm -f *.lo

clean-libtool:
	-rm -rf .libs _libs
install-man1: $(man_MANS)
	@$(NORMAL_INSTALL)
	test -z "$(man1dir)" || $(MKDIR_P) "$(DESTDIR)$(man1dir)"
	@list=''; test -n "$(man1dir)" || exit 0; \
	{ for i in $$list; do echo "$$i"; done; \
	l2='$(man_MANS)'; for i in $$l2; do echo "$$i"; done | \
	  sed -n '/\.1[a-z]*$$/p'; \
	} | while read p; do \
	  if test -f $$p; then d=; else d="$(srcdir)/"; fi; \
	  echo "$$d$$p"; echo "$$p"; \
	done | \
	sed -e 'n;s,.*/,,;p;h;s,.*\.,,;s,^[^1][0-9a-z]*$$,1,;x' \
	      -e 's,\.[0-9a-z]*$$,,;$(transform);G;s,\n,.,' | \
	sed 'N;N;s,\n, ,g' | { \
	list=; while read file base inst; do \
	  if test "$$base" = "$$inst"; then list="$$list $$file"; else \
	    echo " $(INSTALL_DATA) '$$file' '$(DESTDIR)$(man1dir)/$$inst'"; \
	    $(INSTALL_DATA) "$$file" "$(DESTDIR)$(man1dir)/$$inst" || exit $$?; \
	  fi; \
	done; \
	for i in $$list; do echo "$$i"; done | $(am__base_list) | \
	while read files; do \
	  test -z "$$files" || { \
	    echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(man1dir)'"; \
	    $(INSTALL_DATA) $$files "$(DESTDIR)$(man1dir)" || exit $$?; }; \
	done; }

uninstall-man1:
	@$(NORMAL_UNINSTALL)
	@list=''; test -n "$(man1dir)" || exit 0; \
	files=`{ for i in $$list; do echo "$$i"; done; \
	l2='$(man_MANS)'; for i in $$l2; do echo "$$i"; done | \
	  sed -n '/\.1[a-z]*$$/p'; \
	} | sed -e 's,.*/,,;h;s,.*\.,,;s,^[^1][0-9a-z]*$$,1,;x' \
	      -e 's,\.[0-9a-z]*$$,,;$(transform);G;s,\n,.,'`; \
	test -z "$$files" || { \
	  echo " ( cd '$(DESTDIR)$(man1dir)' && rm -f" $$files ")"; \
	  cd "$(DESTDIR)$(man1dir)" && rm -f $$files; }
install-man3: $(man_MANS)
	@$(NORMAL_INSTALL)
	test -z "$(man3dir)" || $(MKDIR_P) "$(DESTDIR)$(man3dir)"
	@list=''; test -n "$(man3dir)" || exit 0; \
	{ for i in $$list; do echo "$$i"; done; \
	l2='$(man_MANS)'; for i in $$l2; do echo "$$i"; done | \
	  sed -n '/\.3[a-z]*$$/p'; \
	} | while read p; do \
	  if test -f $$p; then d=; else d="$(srcdir)/"; fi; \
	  echo "$$d$$p"; echo "$$p"; \
	done | \
	sed -e 'n;s,.*/,,;p;h;s,.*\.,,;s,^[^3][0-9a-z]*$$,3,;x' \
	      -e 's,\.[0-9a-z]*$$,,;$(transform);G;s,\n,.,' | \
	sed 'N;N;s,\n, ,g' | { \
	list=; while read file base inst; do \
	  if test "$$base" = "$$inst"; then list="$$list $$file"; else \
	    echo " $(INSTALL_DATA) '$$file' '$(DESTDIR)$(man3dir)/$$inst'"; \
	    $(INSTALL_DATA) "$$file" "$(DESTDIR)$(man3dir)/$$inst" || exit $$?; \
	  fi; \
	done; \
	for i in $$list; do echo "$$i"; done | $(am__base_list) | \
	while read files; do \
	  test -z "$$files" || { \
	    echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(man3dir)'"; \
	    $(INSTALL_DATA) $$files "$(DESTDIR)$(man3dir)" || exit $$?; }; \
	done; }

uninstall-man3:
	@$(NORMAL_UNINSTALL)
	@list=''; test -n "$(man3dir)" || exit 0; \
	files=`{ for i in $$list; do echo "$$i"; done; \
	l2='$(man_MANS)'; for i in $$l2; do echo "$$i"; done | \
	  sed -n '/\.3[a-z]*$$/p'; \
	} | sed -e 's,.*/,,;h;s,.*\.,,;s,^[^3][0-9a-z]*$$,3,;x' \
	      -e 's,\.[0-9a-z]*$$,,;$(transform);G;s,\n,.,'`; \
	test -z "$$files" || { \
	  echo " ( cd '$(DESTDIR)$(man3dir)' && rm -f" $$files ")"; \
	  cd "$(DESTDIR)$(man3dir)" && rm -f $$files; }
tags: TAGS
TAGS:

ctags: CTAGS
CTAGS:


distdir: $(DISTFILES)
	@list='$(MANS)'; if test -n "$$list"; then \
	  list=`for p in $$list; do \
	    if test -f $$p; then d=; else d="$(srcdir)/"; fi; \
	    if test -f "$$d$$p"; then echo "$$d$$p"; else :; fi; done`; \
	  if test -n "$$list" && \
	    grep 'ab help2man is required to generate this page' $$list >/dev/null; then \
	    echo "error: found man pages containing the \`missing help2man' replacement text:" >&2; \
	    grep -l 'ab help2man is required to generate this page' $$list | sed 's/^/         /' >&2; \
	    echo "       to fix them, install help2man, remove and regenerate the man pages;" >&2; \
	    echo "       typically \`make maintainer-clean' will remove them" >&2; \
	    exit 1; \
	  else :; fi; \
	else :; fi
	@srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
	topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
	list='$(DISTFILES)'; \
	  dist_files=`for file in $$list; do echo $$file; done | \
	  sed -e "s|^$$srcdirstrip/||;t" \
	      -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
	case $$dist_files in \
	  */*) $(MKDIR_P) `echo "$$dist_files" | \
			   sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
			   sort -u` ;; \
	esac; \
	for file in $$dist_files; do \
	  if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
	  if test -d $$d/$$file; then \
	    dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
	    if test -d "$(distdir)/$$file"; then \
	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
	    fi; \
	    if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
	      cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
	      find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
	    fi; \
	    cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
	  else \
	    test -f "$(distdir)/$$file" \
	    || cp -p $$d/$$file "$(distdir)/$$file" \
	    || exit 1; \
	  fi; \
	done
check-am: all-am
check: check-am
all-am: Makefile $(MANS)
installdirs:
	for dir in "$(DESTDIR)$(man1dir)" "$(DESTDIR)$(man3dir)"; 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:

distclean-generic:
	-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
	-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)

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

clean-am: clean-generic clean-libtool mostlyclean-am

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

dvi: dvi-am

dvi-am:

html: html-am

html-am:

info: info-am

info-am:

install-data-am: install-man

install-dvi: install-dvi-am

install-dvi-am:

install-exec-am:

install-html: install-html-am

install-html-am:

install-info: install-info-am

install-info-am:

install-man: install-man1 install-man3

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-generic mostlyclean-libtool

pdf: pdf-am

pdf-am:

ps: ps-am

ps-am:

uninstall-am: uninstall-man

uninstall-man: uninstall-man1 uninstall-man3

.MAKE: install-am install-strip

.PHONY: all all-am check check-am clean clean-generic clean-libtool \
	distclean distclean-generic distclean-libtool distdir dvi \
	dvi-am html html-am info info-am install install-am \
	install-data install-data-am install-dvi install-dvi-am \
	install-exec install-exec-am install-html install-html-am \
	install-info install-info-am install-man install-man1 \
	install-man3 install-pdf install-pdf-am install-ps \
	install-ps-am install-strip installcheck installcheck-am \
	installdirs maintainer-clean maintainer-clean-generic \
	mostlyclean mostlyclean-generic mostlyclean-libtool pdf pdf-am \
	ps ps-am uninstall uninstall-am uninstall-man uninstall-man1 \
	uninstall-man3


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