## This file specifies the files and directories that can usually occur in a
## developer build of this Git repository.
##
## Reference: https://git-scm.com/docs/gitignore
##
## When we say, "files", it actually means files and directories. By
## convention, directories are marked through a trailing first and listed
## first in each category.

# Files brought in by gnulib-tool:
/build-aux/config.libpath
/build-aux/config.rpath
/build-aux/install-reloc
/build-aux/libtool-reloc
/build-aux/reloc-ldflags
/doc/relocatable.texi
/libcharset/INSTALL.generic
/libcharset/build-aux/config.libpath
/libcharset/build-aux/libtool-reloc
/libcharset/m4/codeset.m4
/libcharset/m4/fcntl-o.m4
/libcharset/m4/lib-ld.m4
/libcharset/m4/relocatable-lib.m4
/libcharset/m4/relocatable.m4
/libcharset/m4/visibility.m4
/srclib/_Noreturn.h
/srclib/Makefile.gnulib
/srclib/alloca.in.h
/srclib/allocator.c
/srclib/allocator.h
/srclib/areadlink.c
/srclib/areadlink.h
/srclib/basename-lgpl.c
/srclib/basename-lgpl.h
/srclib/binary-io.c
/srclib/binary-io.h
/srclib/c-ctype.c
/srclib/c-ctype.h
/srclib/canonicalize-lgpl.c
/srclib/careadlinkat.c
/srclib/careadlinkat.h
/srclib/cdefs.h
/srclib/cloexec.c
/srclib/cloexec.h
/srclib/close.c
/srclib/dup2.c
/srclib/eloop-threshold.h
/srclib/errno.in.h
/srclib/error.c
/srclib/error.h
/srclib/fcntl.in.h
/srclib/fcntl.c
/srclib/fd-hook.c
/srclib/fd-hook.h
/srclib/filename.h
/srclib/free.c
/srclib/fstat.c
/srclib/getdtablesize.c
/srclib/getprogname.c
/srclib/getprogname.h
/srclib/gettext.h
/srclib/idx.h
/srclib/intprops.h
/srclib/inttypes.in.h
/srclib/libc-config.h
/srclib/limits.in.h
/srclib/localcharset.h
/srclib/lstat.c
/srclib/malloc/scratch_buffer.h
/srclib/malloc/scratch_buffer_dupfree.c
/srclib/malloc/scratch_buffer_grow.c
/srclib/malloc/scratch_buffer_grow_preserve.c
/srclib/malloc/scratch_buffer_set_array_size.c
/srclib/malloc.c
/srclib/malloca.c
/srclib/malloca.h
/srclib/mempcpy.c
/srclib/minmax.h
/srclib/msvc-inval.c
/srclib/msvc-inval.h
/srclib/msvc-nothrow.c
/srclib/msvc-nothrow.h
/srclib/open.c
/srclib/pathmax.h
/srclib/progname.c
/srclib/progname.h
/srclib/progreloc.c
/srclib/raise.c
/srclib/rawmemchr.c
/srclib/rawmemchr.valgrind
/srclib/read.c
/srclib/readlink.c
/srclib/realloc.c
/srclib/relocatable.c
/srclib/relocatable.h
/srclib/relocwrapper.c
/srclib/safe-read.c
/srclib/safe-read.h
/srclib/scratch_buffer.h
/srclib/setenv.c
/srclib/signal.in.h
/srclib/sigprocmask.c
/srclib/stat.c
/srclib/stat-time.c
/srclib/stat-time.h
/srclib/stat-w32.c
/srclib/stat-w32.h
/srclib/stdalign.in.h
/srclib/stdbool.in.h
/srclib/stddef.in.h
/srclib/stdint.in.h
/srclib/stdio-write.c
/srclib/stdio.in.h
/srclib/stdlib.in.h
/srclib/streq.h
/srclib/strerror-override.c
/srclib/strerror-override.h
/srclib/strerror.c
/srclib/string.in.h
/srclib/sys-limits.h
/srclib/sys_stat.in.h
/srclib/sys_types.in.h
/srclib/time.in.h
/srclib/unictype/bitmap.h
/srclib/unistd.c
/srclib/unistd.in.h
/srclib/unitypes.in.h
/srclib/uniwidth.in.h
/srclib/unlocked-io.h
/srclib/verify.h
/srclib/wchar.in.h
/srclib/xalloc-oversized.h
/srclib/xalloc.h
/srclib/xmalloc.c
/srclib/xreadlink.c
/srclib/xreadlink.h
/srclib/xstrdup.c
/srclib/uniwidth/cjk.h
/srclib/uniwidth/width.c
/srclib/uniwidth/width0.h
/srclib/uniwidth/width2.h
/srcm4/00gnulib.m4
/srcm4/__inline.m4
/srcm4/absolute-header.m4
/srcm4/alloca.m4
/srcm4/asm-underscore.m4
/srcm4/builtin-expect.m4
/srcm4/canonicalize.m4
/srcm4/close.m4
/srcm4/codeset.m4
/srcm4/double-slash-root.m4
/srcm4/dup2.m4
/srcm4/eealloc.m4
/srcm4/environ.m4
/srcm4/errno_h.m4
/srcm4/error.m4
/srcm4/extensions.m4
/srcm4/extern-inline.m4
/srcm4/fcntl.m4
/srcm4/fcntl-o.m4
/srcm4/fcntl_h.m4
/srcm4/free.m4
/srcm4/fstat.m4
/srcm4/getdtablesize.m4
/srcm4/getprogname.m4
/srcm4/gettext.m4
/srcm4/gnulib-common.m4
/srcm4/gnulib-comp.m4
/srcm4/gnulib-tool.m4
/srcm4/host-cpu-c-abi.m4
/srcm4/iconv.m4
/srcm4/include_next.m4
/srcm4/intl-thread-locale.m4
/srcm4/intlmacosx.m4
/srcm4/inttypes.m4
/srcm4/largefile.m4
/srcm4/lib-ld.m4
/srcm4/lib-link.m4
/srcm4/lib-prefix.m4
/srcm4/libunistring-base.m4
/srcm4/limits-h.m4
/srcm4/lstat.m4
/srcm4/malloc.m4
/srcm4/malloca.m4
/srcm4/mbstate_t.m4
/srcm4/mempcpy.m4
/srcm4/minmax.m4
/srcm4/mode_t.m4
/srcm4/msvc-inval.m4
/srcm4/msvc-nothrow.m4
/srcm4/multiarch.m4
/srcm4/nls.m4
/srcm4/nocrash.m4
/srcm4/off_t.m4
/srcm4/open.m4
/srcm4/open-cloexec.m4
/srcm4/open-slash.m4
/srcm4/pathmax.m4
/srcm4/pid_t.m4
/srcm4/po.m4
/srcm4/progtest.m4
/srcm4/raise.m4
/srcm4/rawmemchr.m4
/srcm4/read.m4
/srcm4/readlink.m4
/srcm4/realloc.m4
/srcm4/relocatable-lib.m4
/srcm4/relocatable.m4
/srcm4/safe-read.m4
/srcm4/setenv.m4
/srcm4/signal_h.m4
/srcm4/signalblocking.m4
/srcm4/sigpipe.m4
/srcm4/ssize_t.m4
/srcm4/stat-time.m4
/srcm4/stat.m4
/srcm4/std-gnu11.m4
/srcm4/stdalign.m4
/srcm4/stdbool.m4
/srcm4/stddef_h.m4
/srcm4/stdint.m4
/srcm4/stdio_h.m4
/srcm4/stdlib_h.m4
/srcm4/strerror.m4
/srcm4/string_h.m4
/srcm4/sys_socket_h.m4
/srcm4/sys_stat_h.m4
/srcm4/sys_types_h.m4
/srcm4/time_h.m4
/srcm4/unistd_h.m4
/srcm4/unlocked-io.m4
/srcm4/vararrays.m4
/srcm4/visibility.m4
/srcm4/warn-on-use.m4
/srcm4/wchar_h.m4
/srcm4/wchar_t.m4
/srcm4/wint_t.m4
/srcm4/year2038.m4
/srcm4/zzgnulib.m4
/tests/qemu.h
# Cached parameters of gnulib-tool:
/srcm4/gnulib-cache.m4

# Files brought in by "automake --add-missing --copy":
/build-aux/ar-lib
/build-aux/compile
/build-aux/install-sh
/build-aux/missing
/libcharset/build-aux/install-sh
/libcharset/build-aux/mkinstalldirs

# Other files brought in by autogen.sh:
/build-aux/config.guess
/build-aux/config.sub
/libcharset/build-aux/config.guess
/libcharset/build-aux/config.sub

# ---------- "make -f Makefile.devel totally-clean" gets you here ----------

# Files generated by the autotools:
# Built by Makefile.devel.
/aclocal.m4
/configure
/config.h.in
/srclib/Makefile.in
# Built by libcharset/Makefile.devel.
/libcharset/autoconf/aclocal.m4
/libcharset/configure
/libcharset/config.h.in

# Files generated by "make -f Makefile.devel" and even kept by "make maintainer-clean":
# Built by Makefile.devel.
/srclib/Makefile.gnulib
/srclib/Makefile.in
/include/iconv.h.build.in
/lib/aliases.gperf
/lib/aliases_sysaix.gperf
/lib/aliases_syshpux.gperf
/lib/aliases_sysosf1.gperf
/lib/aliases_syssolaris.gperf
/lib/aliases.h
/lib/aliases_sysaix.h
/lib/aliases_syshpux.h
/lib/aliases_sysosf1.h
/lib/aliases_syssolaris.h
/lib/aliases_aix.h
/lib/aliases_aix_sysaix.h
/lib/aliases_osf1.h
/lib/aliases_osf1_sysosf1.h
/lib/aliases_dos.h
/lib/aliases_zos.h
/lib/aliases_extra.h
/lib/canonical.h
/lib/canonical_sysaix.h
/lib/canonical_syshpux.h
/lib/canonical_sysosf1.h
/lib/canonical_syssolaris.h
/lib/canonical_aix.h
/lib/canonical_aix_sysaix.h
/lib/canonical_osf1.h
/lib/canonical_osf1_sysosf1.h
/lib/canonical_dos.h
/lib/canonical_zos.h
/lib/canonical_extra.h
/lib/canonical_local.h
/lib/canonical_local_sysaix.h
/lib/canonical_local_syshpux.h
/lib/canonical_local_sysosf1.h
/lib/canonical_local_syssolaris.h
/lib/flags.h
/lib/translit.h
/man/iconv.1.html
/man/iconv.3.html
/man/iconv_close.3.html
/man/iconv_open.3.html
/man/iconvctl.3.html
/man/iconv_open_into.3.html
# Built by libcharset/Makefile.devel.
/libcharset/include/libcharset.h.build.in
/libcharset/include/localcharset.h.build.in

# ---------- "make maintainerclean" gets you here ----------

# Files generated by "make" and distributed
# (i.e. kept by "make distclean")
# (see MAINTAINERCLEANFILES in Makefile.am and, if present, Makefile.gnulib):
# Files generated by "make", using msgfmt.
/po/??.gmo
/po/pt_??.gmo
/po/zh_??.gmo
/po/??@*.gmo
po/stamp-po

# ---------- "make distclean" ought to get you here ----------

# Directories generated by "make" and mistakenly distributed
# (i.e. mistakenly kept by "make distclean"):
autom4te.cache/

# ---------- "make distclean" gets you here ----------

# Files generated by "configure" and not distributed
# (i.e. erased by "make distclean"):
# Erased by Makefile.
/config.status
/config.log
/config.cache
/Makefile
/libtool
/config.h
/stamp-h1
/lib/stamp-h2
/include/iconv.h
/include/iconv.h.inst
# Erased by libcharset/Makefile.
/libcharset/config.status
/libcharset/config.log
/libcharset/config.cache
/libcharset/Makefile
/libcharset/config.h
/libcharset/libtool
/libcharset/include/libcharset.h
/libcharset/include/libcharset.h.inst
/libcharset/include/localcharset.h
/libcharset/include/localcharset.h.inst
# Erased by libcharset/lib/Makefile.
/libcharset/lib/Makefile
# Erased by lib/Makefile.
/lib/Makefile
/lib/config.h
# Erased by srclib/Makefile.
/srclib/Makefile
# Erased by src/Makefile.
/src/Makefile
# Erased by po/Makefile.
/po/Makefile.in
/po/Makefile
/po/POTFILES
# Erased by man/Makefile.
/man/Makefile
# Erased by tests/Makefile.
/tests/Makefile

# Files generated by "make" and not distributed
# (i.e. erased by "make distclean").
.dirstamp
# Erased by libcharset/Makefile.
/libcharset/include/libcharset.h

# ---------- "make clean" gets you here ----------

# Files generated by "make" and erased by "make clean"
# (see CLEANFILES in Makefile.am and, if present, Makefile.gnulib):
/srclib/libicrt.a

# ---------- "make mostlyclean" gets you here ----------

# Directories generated by "make all check" and erased by "make mostlyclean":
/libcharset/lib/.libs/
/libcharset/lib/_libs/
/lib/.libs/
/lib/_libs/
/src/.libs/
/src/_libs/
/tests/.libs/
/tests/_libs/

# Files generated by "make all check" and erased by "make mostlyclean"
# (see MOSTLYCLEANFILES in Makefile.am and, if present, Makefile.gnulib):
# Erased by Makefile.
/lib/libcharset.h
/lib/libcharset.so*
/lib/localcharset.h
# Erased by libcharset/Makefile.
# Erased by libcharset/lib/Makefile.
/libcharset/lib/*.o
/libcharset/lib/*.lo
/libcharset/lib/*.a
/libcharset/lib/*.la
/libcharset/lib/*.o.lock
/libcharset/lib/core
/libcharset/lib/*.stackdump
# Erased by lib/Makefile.
/lib/*.o
/lib/*.lo
/lib/*.a
/lib/*.la
/lib/core
/lib/*.stackdump
/lib/so_locations
# Erased by srclib/Makefile.
/srclib/**/*.o
/srclib/core
/srclib/*.stackdump
/srclib/alloca.h
/srclib/alloca.h-t
/srclib/arg-nonnull.h
/srclib/arg-nonnull.h-t
/srclib/c++defs.h
/srclib/c++defs.h-t
/srclib/errno.h
/srclib/errno.h-t
/srclib/fcntl.h
/srclib/fcntl.h-t
/srclib/inttypes.h
/srclib/inttypes.h-t
/srclib/limits.h
/srclib/limits.h-t
/srclib/malloc/scratch_buffer.gl.h
/srclib/malloc/scratch_buffer.gl.h-t
/srclib/signal.h
/srclib/signal.h-t
/srclib/stdbool.h
/srclib/stdbool.h-t
/srclib/stddef.h
/srclib/stddef.h-t
/srclib/stdint.h
/srclib/stdint.h-t
/srclib/stdio.h
/srclib/stdio.h-t
/srclib/stdlib.h
/srclib/stdlib.h-t
/srclib/string.h
/srclib/string.h-t
/srclib/sys/stat.h
/srclib/sys/stat.h-t
/srclib/sys/time.h
/srclib/sys/time.h-t
/srclib/sys/types.h
/srclib/sys/types.h-t
/srclib/time.h
/srclib/time.h-t
/srclib/unistd.h
/srclib/unistd.h-t
/srclib/unitypes.h
/srclib/unitypes.h-t
/srclib/uniwidth.h
/srclib/uniwidth.h-t
/srclib/warn-on-use.h
/srclib/warn-on-use.h-t
/srclib/wchar.h
/srclib/wchar.h-t
# Erased by src/Makefile.
/src/*.o
/src/*.lo
/src/iconv.res
/src/iconv_no_i18n
/src/iconv_no_i18n.exe
/src/iconv
/src/iconv.exe
/src/core
/src/*.stackdump
# Erased by po/Makefile.
/po/*.mo
/po/remove-potcdate.sed
/po/stamp-poT
/po/core
/po/core.*
/po/libiconv.po
/po/libiconv.1po
/po/libiconv.2po
/po/*.new.po
/po/*.o
# Erased by man/Makefile.
# Erased by tests/Makefile.
/tests/*.o
/tests/*.lo
/tests/is-native
/tests/is-native.exe
/tests/table-from
/tests/table-from.exe
/tests/table-to
/tests/table-to.exe
/tests/test-shiftseq
/tests/test-shiftseq.exe
/tests/test-to-wchar
/tests/test-to-wchar.exe
/tests/tmp-*
/tests/genutf8
/tests/genutf8.exe
/tests/UTF-8.TXT
/tests/gengb18030z
/tests/gengb18030z.exe
/tests/GB18030.TXT
/tests/core
/tests/*.stackdump

# Files generated by "make dist" and erased by "make mostlyclean"
# (see MOSTLYCLEANFILES in Makefile.am):

# ---------- "make all check" gets you here ----------

# Patterns for all subdirectories: all kinds of automatic backup files.
*.orig
*.rej
*~
*.kate-swp
.#*
\#*#

