## 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/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
/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/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_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_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/errno.h
/srclib/errno.h-t
/srclib/fcntl.h
/srclib/fcntl.h-t
/srclib/limits.h
/srclib/limits.h-t
/srclib/signal.h
/srclib/signal.h-t
/srclib/arg-nonnull.h
/srclib/arg-nonnull.h-t
/srclib/c++defs.h
/srclib/c++defs.h-t
/srclib/warn-on-use.h
/srclib/warn-on-use.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
# 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/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
.#*
\#*#

