diff --git a/Makefile b/Makefile new file mode 100644 index 0000000..6a49142 --- /dev/null +++ b/Makefile @@ -0,0 +1,253 @@ +# Makefile for libiconv + +#### Start of system configuration section. #### + +# Directories used by "make": +srcdir = . + +# Directories used by "make install": +prefix = /Users/yangzuhao/Downloads/libiconv-1.17/output +local_prefix = /usr/local +exec_prefix = ${prefix} +datarootdir = ${prefix}/share +datadir = ${datarootdir} +libdir = ${exec_prefix}/lib +includedir = ${prefix}/include +mandir = ${datarootdir}/man + +# Programs used by "make": +RM = rm -f + + +# Programs used by "make install": +INSTALL = /opt/homebrew/bin/ginstall -c +INSTALL_PROGRAM = ${INSTALL} +INSTALL_DATA = ${INSTALL} -m 644 +mkinstalldirs = $(SHELL) ./build-aux/mkinstalldirs + +#### End of system configuration section. #### + +SHELL = /bin/sh + +all : lib/localcharset.h force + cd lib && $(MAKE) all + cd srclib && $(MAKE) all + cd src && $(MAKE) all + cd po && $(MAKE) all + cd man && $(MAKE) all + if test -d tests; then cd tests && $(MAKE) all; fi + +lib/localcharset.h : + builddir="`pwd`"; cd libcharset && $(MAKE) all && $(MAKE) install-lib libdir="$$builddir/lib" includedir="$$builddir/lib" + +# Installs the library and include files only. Typically called with only +# $(libdir) and $(includedir) - don't use $(prefix) and $(exec_prefix) here. +install-lib : all force + cd lib && $(MAKE) install-lib libdir='$(libdir)' includedir='$(includedir)' + if [ ! -d $(includedir) ] ; then $(mkinstalldirs) $(includedir) ; fi + $(INSTALL_DATA) include/iconv.h.inst $(includedir)/iconv.h + +install : lib/localcharset.h force + cd libcharset && $(MAKE) install prefix='$(prefix)' exec_prefix='$(exec_prefix)' libdir='$(libdir)' + cd lib && $(MAKE) install prefix='$(prefix)' exec_prefix='$(exec_prefix)' libdir='$(libdir)' + cd srclib && $(MAKE) install prefix='$(prefix)' exec_prefix='$(exec_prefix)' libdir='$(libdir)' + cd src && $(MAKE) install prefix='$(prefix)' exec_prefix='$(exec_prefix)' libdir='$(libdir)' + if [ ! -d $(DESTDIR)$(includedir) ] ; then $(mkinstalldirs) $(DESTDIR)$(includedir) ; fi + $(INSTALL_DATA) include/iconv.h.inst $(DESTDIR)$(includedir)/iconv.h + cd po && $(MAKE) install prefix='$(prefix)' exec_prefix='$(exec_prefix)' datarootdir='$(datarootdir)' datadir='$(datadir)' + cd man && $(MAKE) install prefix='$(prefix)' exec_prefix='$(exec_prefix)' datarootdir='$(datarootdir)' datadir='$(datadir)' mandir='$(mandir)' + +install-strip : lib/localcharset.h force + cd libcharset && $(MAKE) install-strip prefix='$(prefix)' exec_prefix='$(exec_prefix)' libdir='$(libdir)' + cd lib && $(MAKE) install-strip prefix='$(prefix)' exec_prefix='$(exec_prefix)' libdir='$(libdir)' + cd srclib && $(MAKE) install-strip prefix='$(prefix)' exec_prefix='$(exec_prefix)' libdir='$(libdir)' + cd src && $(MAKE) install-strip prefix='$(prefix)' exec_prefix='$(exec_prefix)' libdir='$(libdir)' + if [ ! -d $(DESTDIR)$(includedir) ] ; then $(mkinstalldirs) $(DESTDIR)$(includedir) ; fi + $(INSTALL_DATA) include/iconv.h.inst $(DESTDIR)$(includedir)/iconv.h + cd po && $(MAKE) install-strip prefix='$(prefix)' exec_prefix='$(exec_prefix)' datarootdir='$(datarootdir)' datadir='$(datadir)' + cd man && $(MAKE) install-strip prefix='$(prefix)' exec_prefix='$(exec_prefix)' datarootdir='$(datarootdir)' datadir='$(datadir)' mandir='$(mandir)' + +installdirs : force + cd libcharset && $(MAKE) installdirs prefix='$(prefix)' exec_prefix='$(exec_prefix)' libdir='$(libdir)' + cd lib && $(MAKE) installdirs prefix='$(prefix)' exec_prefix='$(exec_prefix)' libdir='$(libdir)' + cd srclib && $(MAKE) installdirs prefix='$(prefix)' exec_prefix='$(exec_prefix)' libdir='$(libdir)' + cd src && $(MAKE) installdirs prefix='$(prefix)' exec_prefix='$(exec_prefix)' libdir='$(libdir)' + if [ ! -d $(DESTDIR)$(includedir) ] ; then $(mkinstalldirs) $(DESTDIR)$(includedir) ; fi + cd po && $(MAKE) installdirs prefix='$(prefix)' exec_prefix='$(exec_prefix)' datarootdir='$(datarootdir)' datadir='$(datadir)' + cd man && $(MAKE) installdirs prefix='$(prefix)' exec_prefix='$(exec_prefix)' datarootdir='$(datarootdir)' datadir='$(datadir)' mandir='$(mandir)' + +uninstall : force + cd libcharset && $(MAKE) uninstall prefix='$(prefix)' exec_prefix='$(exec_prefix)' libdir='$(libdir)' + cd lib && $(MAKE) uninstall prefix='$(prefix)' exec_prefix='$(exec_prefix)' libdir='$(libdir)' + cd srclib && $(MAKE) uninstall prefix='$(prefix)' exec_prefix='$(exec_prefix)' libdir='$(libdir)' + cd src && $(MAKE) uninstall prefix='$(prefix)' exec_prefix='$(exec_prefix)' libdir='$(libdir)' + $(RM) $(DESTDIR)$(includedir)/iconv.h + cd po && $(MAKE) uninstall prefix='$(prefix)' exec_prefix='$(exec_prefix)' datarootdir='$(datarootdir)' datadir='$(datadir)' + cd man && $(MAKE) uninstall prefix='$(prefix)' exec_prefix='$(exec_prefix)' datarootdir='$(datarootdir)' datadir='$(datadir)' mandir='$(mandir)' + +check : all force + cd libcharset && $(MAKE) check + cd lib && $(MAKE) check + cd srclib && $(MAKE) check + cd src && $(MAKE) check + cd po && $(MAKE) check + cd man && $(MAKE) check + if test -d tests; then cd tests && $(MAKE) check; fi + +mostlyclean : force + cd libcharset && $(MAKE) mostlyclean + $(RM) lib/libcharset.* lib/localcharset.h + cd lib && $(MAKE) mostlyclean + cd srclib && $(MAKE) mostlyclean + cd src && $(MAKE) mostlyclean + cd po && $(MAKE) mostlyclean + cd man && $(MAKE) mostlyclean + if test -d tests; then cd tests && $(MAKE) mostlyclean; fi + rm -rf bin + +clean : force + cd libcharset && $(MAKE) clean + $(RM) lib/libcharset.* lib/localcharset.h + cd lib && $(MAKE) clean + cd srclib && $(MAKE) clean + cd src && $(MAKE) clean + cd po && $(MAKE) clean + cd man && $(MAKE) clean + if test -d tests; then cd tests && $(MAKE) clean; fi + rm -rf bin + +distclean : force + cd libcharset && if test -f Makefile; then $(MAKE) distclean; fi + $(RM) lib/libcharset.* lib/localcharset.h + cd lib && if test -f Makefile; then $(MAKE) distclean; fi + cd srclib && if test -f Makefile; then $(MAKE) distclean; fi + cd src && if test -f Makefile; then $(MAKE) distclean; fi + cd po && if test -f Makefile; then $(MAKE) distclean; fi + cd man && if test -f Makefile; then $(MAKE) distclean; fi + if test -d tests; then cd tests && if test -f Makefile; then $(MAKE) distclean; fi; fi + $(RM) config.status config.log config.cache Makefile libtool + $(RM) config.h stamp-h1 lib/stamp-h2 + $(RM) include/iconv.h include/iconv.h.inst + rm -rf bin + +maintainer-clean : force + cd libcharset && if test -f Makefile; then $(MAKE) maintainer-clean; fi + $(RM) lib/libcharset.* lib/localcharset.h + cd lib && if test -f Makefile; then $(MAKE) maintainer-clean; fi + cd srclib && if test -f Makefile; then $(MAKE) maintainer-clean; fi + cd src && if test -f Makefile; then $(MAKE) maintainer-clean; fi + cd po && if test -f Makefile; then $(MAKE) maintainer-clean; fi + cd man && if test -f Makefile; then $(MAKE) maintainer-clean; fi + if test -d tests; then cd tests && if test -f Makefile; then $(MAKE) maintainer-clean; fi; fi + $(RM) config.status config.log config.cache Makefile libtool + $(RM) config.h stamp-h1 lib/stamp-h2 + $(RM) include/iconv.h include/iconv.h.inst + rm -rf bin + + +# List of source files. +SOURCE_FILES = \ + README DEPENDENCIES INSTALL.windows HACKING AUTHORS NEWS DESIGN NOTES THANKS \ + ChangeLog Makefile.devel configure.ac Makefile.in \ + include/export.h include/iconv.h.in \ + gnulib-local/lib/alloca.in.h \ + gnulib-local/lib/error.h.diff \ + gnulib-local/lib/progname.h.diff \ + gnulib-local/lib/xalloc.h \ + gnulib-local/lib/xmalloc.c \ + gnulib-local/lib/xstrdup.c \ + gnulib-local/m4/alloca.m4 \ + gnulib-local/modules/libiconv-misc \ + gnulib-local/modules/mbstate \ + gnulib-local/modules/xalloc \ + m4/cp.m4 \ + m4/eilseq.m4 \ + m4/general.m4 \ + m4/ln.m4 \ + m4/proto.m4 \ + windows/iconv.rc windows/libiconv.rc windows/windres-options \ + woe32dll/export.h woe32dll/iconv-exports.c \ + os2/iconv.def \ + extras/ChangeLog extras/iconv_string.h extras/iconv_string.c \ + tools/Makefile \ + tools/8bit_tab_to_h.c tools/cjk_tab_to_h.c tools/cjk_variants.c \ + tools/CP50221-0208-EXT.TXT tools/CP50221-0212-EXT.TXT tools/JISX0213.TXT +# List of distributed files imported from other packages. +LIBTOOL_IMPORTED_FILES = \ + build-aux/ltmain.sh \ + m4/libtool.m4 \ + m4/lt~obsolete.m4 \ + m4/ltoptions.m4 \ + m4/ltsugar.m4 \ + m4/ltversion.m4 +AUTOMAKE_OLD_IMPORTED_FILES = \ + build-aux/mkinstalldirs +AUTOMAKE_IMPORTED_FILES = \ + build-aux/install-sh \ + build-aux/missing +GNULIB_IMPORTED_FILES = \ + doc/relocatable.texi \ + build-aux/config.guess \ + build-aux/config.libpath \ + build-aux/config.rpath \ + build-aux/config.sub \ + build-aux/install-reloc \ + build-aux/reloc-ldflags +IMPORTED_FILES = \ + COPYING COPYING.LIB \ + ABOUT-NLS INSTALL.generic \ + build-aux/compile \ + build-aux/ar-lib \ + $(LIBTOOL_IMPORTED_FILES) $(AUTOMAKE_OLD_IMPORTED_FILES) $(AUTOMAKE_IMPORTED_FILES) $(GNULIB_IMPORTED_FILES) +# List of distributed files generated by autotools or Makefile.devel. +GENERATED_FILES = \ + aclocal.m4 configure config.h.in \ + include/iconv.h.build.in +# List of distributed files generated by "make". +DISTRIBUTED_BUILT_FILES = +# List of distributed files. +DISTFILES = $(SOURCE_FILES) $(IMPORTED_FILES) $(GENERATED_FILES) $(DISTRIBUTED_BUILT_FILES) + +distdir : $(DISTFILES) + for file in $(DISTFILES); do \ + if test -f $$file; then dir='.'; else dir='$(srcdir)'; fi; \ + destdir=`echo '$(distdir)'/$$file | sed -e 's|//*[^/]*$$||'`; \ + test -d "$$destdir" || $(mkinstalldirs) "$$destdir" >/dev/null; \ + cp -p "$$dir/$$file" '$(distdir)'/$$file || exit 1; \ + done + for sdir in srcm4; do \ + mkdir -p '$(distdir)'/$$sdir; \ + for file in '$(srcdir)'/$$sdir/*.m4; do \ + cp -p "$$file" '$(distdir)'/$$sdir/ || exit 1; \ + done; \ + done + test -d '$(distdir)'/libcharset || mkdir '$(distdir)'/libcharset; cd libcharset && $(MAKE) distdir distdir='$(distdir)'/libcharset + test -d '$(distdir)'/lib || mkdir '$(distdir)'/lib; cd lib && $(MAKE) distdir distdir='$(distdir)'/lib + test -d '$(distdir)'/srclib || mkdir '$(distdir)'/srclib; cd srclib && $(MAKE) distdir distdir='$(distdir)'/srclib + test -d '$(distdir)'/src || mkdir '$(distdir)'/src; cd src && $(MAKE) distdir distdir='$(distdir)'/src + test -d '$(distdir)'/tests || mkdir '$(distdir)'/tests; cd tests && $(MAKE) distdir distdir='$(distdir)'/tests + test -d '$(distdir)'/po || mkdir '$(distdir)'/po; cd po && $(MAKE) distdir distdir='$(distdir)'/po + test -d '$(distdir)'/man || mkdir '$(distdir)'/man; cd man && $(MAKE) distdir distdir='$(distdir)'/man + + +# Creating a distribution tarball. +PACKAGE = libiconv +VERSION = 1.17 +TAR = tar +GZIP = gzip + +dist : force + tmpdistdir=$(PACKAGE)-$(VERSION); \ + abstmpdistdir=`pwd`/$$tmpdistdir; \ + rm -rf $$tmpdistdir $$tmpdistdir.tar $$tmpdistdir.tar.gz \ + && mkdir $$tmpdistdir \ + && $(MAKE) distdir distdir="$$abstmpdistdir" \ + && $(TAR) chof $$tmpdistdir.tar --owner=root --group=root $$tmpdistdir \ + && $(GZIP) -9 $$tmpdistdir.tar \ + && rm -rf $$tmpdistdir + + +force : + +# Work around an automake-1.8 bug. +am--refresh: diff --git a/config.h b/config.h new file mode 100644 index 0000000..1904d93 --- /dev/null +++ b/config.h @@ -0,0 +1,1466 @@ +/* config.h. Generated from config.h.in by configure. */ +/* config.h.in. Generated from configure.ac by autoheader. */ + +/* Define if building universal (internal helper macro) */ +/* #undef AC_APPLE_UNIVERSAL_BUILD */ + +/* Define to the number of bits in type 'ptrdiff_t'. */ +/* #undef BITSIZEOF_PTRDIFF_T */ + +/* Define to the number of bits in type 'sig_atomic_t'. */ +/* #undef BITSIZEOF_SIG_ATOMIC_T */ + +/* Define to the number of bits in type 'size_t'. */ +/* #undef BITSIZEOF_SIZE_T */ + +/* Define to the number of bits in type 'wchar_t'. */ +/* #undef BITSIZEOF_WCHAR_T */ + +/* Define to the number of bits in type 'wint_t'. */ +/* #undef BITSIZEOF_WINT_T */ + +/* Define to 1 if using 'alloca.c'. */ +/* #undef C_ALLOCA */ + +/* Define to 1 if // is a file system root distinct from /. */ +/* #undef DOUBLE_SLASH_IS_DISTINCT_ROOT */ + +/* Define as good substitute value for EILSEQ. */ +/* #undef EILSEQ */ + +/* Define to 1 to enable a few rarely used encodings. */ +/* #undef ENABLE_EXTRA */ + +/* Define to 1 if translation of program messages to the user's native + language is requested. */ +/* #undef ENABLE_NLS */ + +/* Define to 1 if the package shall run at any location in the file system. */ +/* #undef ENABLE_RELOCATABLE */ + +/* Define this to 1 if F_DUPFD behavior does not match POSIX */ +/* #undef FCNTL_DUPFD_BUGGY */ + +/* Define to 1 if realpath() can malloc memory, always gives an absolute path, + and handles a trailing slash correctly. */ +/* #undef FUNC_REALPATH_NEARLY_WORKS */ + +/* Define to 1 if realpath() can malloc memory, always gives an absolute path, + and handles leading slashes and a trailing slash correctly. */ +/* #undef FUNC_REALPATH_WORKS */ + +/* Define to a C preprocessor expression that evaluates to 1 or 0, depending + whether the gnulib module canonicalize-lgpl shall be considered present. */ +#define GNULIB_CANONICALIZE_LGPL 1 + +/* Define to a C preprocessor expression that evaluates to 1 or 0, depending + whether the gnulib module fscanf shall be considered present. */ +#define GNULIB_FSCANF 1 + +/* Define to a C preprocessor expression that evaluates to 1 or 0, depending + whether the gnulib module msvc-nothrow shall be considered present. */ +#define GNULIB_MSVC_NOTHROW 1 + +/* Define to 1 if printf and friends should be labeled with attribute + "__gnu_printf__" instead of "__printf__" */ +/* #undef GNULIB_PRINTF_ATTRIBUTE_FLAVOR_GNU */ + +/* Define to a C preprocessor expression that evaluates to 1 or 0, depending + whether the gnulib module scanf shall be considered present. */ +#define GNULIB_SCANF 1 + +/* Define to a C preprocessor expression that evaluates to 1 or 0, depending + whether the gnulib module sigpipe shall be considered present. */ +#define GNULIB_SIGPIPE 1 + +/* Define to 1 if you want the FILE stream functions getc, putc, etc. to use + unlocked I/O if available, throughout the package. Unlocked I/O can improve + performance, sometimes dramatically. But unlocked I/O is safe only in + single-threaded programs, as well as in multithreaded programs for which + you can guarantee that every FILE stream, including stdin, stdout, stderr, + is used only in a single thread. */ +#define GNULIB_STDIO_SINGLE_THREAD 1 + +/* Define to a C preprocessor expression that evaluates to 1 or 0, depending + whether the gnulib module strerror shall be considered present. */ +#define GNULIB_STRERROR 1 + +/* Define to 1 when the gnulib module canonicalize_file_name should be tested. + */ +#define GNULIB_TEST_CANONICALIZE_FILE_NAME 1 + +/* Define to 1 when the gnulib module cloexec should be tested. */ +#define GNULIB_TEST_CLOEXEC 1 + +/* Define to 1 when the gnulib module close should be tested. */ +#define GNULIB_TEST_CLOSE 1 + +/* Define to 1 when the gnulib module dup2 should be tested. */ +#define GNULIB_TEST_DUP2 1 + +/* Define to 1 when the gnulib module environ should be tested. */ +#define GNULIB_TEST_ENVIRON 1 + +/* Define to 1 when the gnulib module fcntl should be tested. */ +#define GNULIB_TEST_FCNTL 1 + +/* Define to 1 when the gnulib module fgetc should be tested. */ +#define GNULIB_TEST_FGETC 1 + +/* Define to 1 when the gnulib module fgets should be tested. */ +#define GNULIB_TEST_FGETS 1 + +/* Define to 1 when the gnulib module fprintf should be tested. */ +#define GNULIB_TEST_FPRINTF 1 + +/* Define to 1 when the gnulib module fputc should be tested. */ +#define GNULIB_TEST_FPUTC 1 + +/* Define to 1 when the gnulib module fputs should be tested. */ +#define GNULIB_TEST_FPUTS 1 + +/* Define to 1 when the gnulib module fread should be tested. */ +#define GNULIB_TEST_FREAD 1 + +/* Define to 1 when the gnulib module free-posix should be tested. */ +#define GNULIB_TEST_FREE_POSIX 1 + +/* Define to 1 when the gnulib module fscanf should be tested. */ +#define GNULIB_TEST_FSCANF 1 + +/* Define to 1 when the gnulib module fstat should be tested. */ +#define GNULIB_TEST_FSTAT 1 + +/* Define to 1 when the gnulib module fwrite should be tested. */ +#define GNULIB_TEST_FWRITE 1 + +/* Define to 1 when the gnulib module getc should be tested. */ +#define GNULIB_TEST_GETC 1 + +/* Define to 1 when the gnulib module getchar should be tested. */ +#define GNULIB_TEST_GETCHAR 1 + +/* Define to 1 when the gnulib module getdtablesize should be tested. */ +#define GNULIB_TEST_GETDTABLESIZE 1 + +/* Define to 1 when the gnulib module malloc-posix should be tested. */ +#define GNULIB_TEST_MALLOC_POSIX 1 + +/* Define to 1 when the gnulib module mempcpy should be tested. */ +#define GNULIB_TEST_MEMPCPY 1 + +/* Define to 1 when the gnulib module open should be tested. */ +#define GNULIB_TEST_OPEN 1 + +/* Define to 1 when the gnulib module printf should be tested. */ +#define GNULIB_TEST_PRINTF 1 + +/* Define to 1 when the gnulib module putc should be tested. */ +#define GNULIB_TEST_PUTC 1 + +/* Define to 1 when the gnulib module putchar should be tested. */ +#define GNULIB_TEST_PUTCHAR 1 + +/* Define to 1 when the gnulib module puts should be tested. */ +#define GNULIB_TEST_PUTS 1 + +/* Define to 1 when the gnulib module raise should be tested. */ +#define GNULIB_TEST_RAISE 1 + +/* Define to 1 when the gnulib module rawmemchr should be tested. */ +#define GNULIB_TEST_RAWMEMCHR 1 + +/* Define to 1 when the gnulib module read should be tested. */ +#define GNULIB_TEST_READ 1 + +/* Define to 1 when the gnulib module readlink should be tested. */ +#define GNULIB_TEST_READLINK 1 + +/* Define to 1 when the gnulib module realloc-posix should be tested. */ +#define GNULIB_TEST_REALLOC_POSIX 1 + +/* Define to 1 when the gnulib module realpath should be tested. */ +#define GNULIB_TEST_REALPATH 1 + +/* Define to 1 when the gnulib module scanf should be tested. */ +#define GNULIB_TEST_SCANF 1 + +/* Define to 1 when the gnulib module sigprocmask should be tested. */ +#define GNULIB_TEST_SIGPROCMASK 1 + +/* Define to 1 when the gnulib module stat should be tested. */ +#define GNULIB_TEST_STAT 1 + +/* Define to 1 when the gnulib module strerror should be tested. */ +#define GNULIB_TEST_STRERROR 1 + +/* Define to 1 when the gnulib module vfprintf should be tested. */ +#define GNULIB_TEST_VFPRINTF 1 + +/* Define to 1 when the gnulib module vprintf should be tested. */ +#define GNULIB_TEST_VPRINTF 1 + +/* Define to 1 if you have 'alloca', as a function or macro. */ +#define HAVE_ALLOCA 1 + +/* Define to 1 if works. */ +#define HAVE_ALLOCA_H 1 + +/* Define to 1 if you have the `canonicalize_file_name' function. */ +/* #undef HAVE_CANONICALIZE_FILE_NAME */ + +/* Define to 1 if you have the Mac OS X function + CFLocaleCopyPreferredLanguages in the CoreFoundation framework. */ +#define HAVE_CFLOCALECOPYPREFERREDLANGUAGES 1 + +/* Define to 1 if you have the Mac OS X function CFPreferencesCopyAppValue in + the CoreFoundation framework. */ +#define HAVE_CFPREFERENCESCOPYAPPVALUE 1 + +/* Define to 1 if you have the `copy_file_range' function. */ +/* #undef HAVE_COPY_FILE_RANGE */ + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_CRTDEFS_H */ + +/* Define to 1 if C supports variable-length arrays. */ +#define HAVE_C_VARARRAYS 1 + +/* Define if the GNU dcgettext() function is already present or preinstalled. + */ +/* #undef HAVE_DCGETTEXT */ + +/* Define to 1 if you have the declaration of `clearerr_unlocked', and to 0 if + you don't. */ +#define HAVE_DECL_CLEARERR_UNLOCKED 1 + +/* Define to 1 if you have the declaration of `ecvt', and to 0 if you don't. + */ +#define HAVE_DECL_ECVT 1 + +/* Define to 1 if you have the declaration of `execvpe', and to 0 if you + don't. */ +#define HAVE_DECL_EXECVPE 0 + +/* Define to 1 if you have the declaration of `fcloseall', and to 0 if you + don't. */ +#define HAVE_DECL_FCLOSEALL 0 + +/* Define to 1 if you have the declaration of `fcvt', and to 0 if you don't. + */ +#define HAVE_DECL_FCVT 1 + +/* Define to 1 if you have the declaration of `feof_unlocked', and to 0 if you + don't. */ +#define HAVE_DECL_FEOF_UNLOCKED 1 + +/* Define to 1 if you have the declaration of `ferror_unlocked', and to 0 if + you don't. */ +#define HAVE_DECL_FERROR_UNLOCKED 1 + +/* Define to 1 if you have the declaration of `fflush_unlocked', and to 0 if + you don't. */ +#define HAVE_DECL_FFLUSH_UNLOCKED 0 + +/* Define to 1 if you have the declaration of `fgets_unlocked', and to 0 if + you don't. */ +#define HAVE_DECL_FGETS_UNLOCKED 0 + +/* Define to 1 if you have the declaration of `fputc_unlocked', and to 0 if + you don't. */ +#define HAVE_DECL_FPUTC_UNLOCKED 0 + +/* Define to 1 if you have the declaration of `fputs_unlocked', and to 0 if + you don't. */ +#define HAVE_DECL_FPUTS_UNLOCKED 0 + +/* Define to 1 if you have the declaration of `fread_unlocked', and to 0 if + you don't. */ +#define HAVE_DECL_FREAD_UNLOCKED 0 + +/* Define to 1 if you have the declaration of `fwrite_unlocked', and to 0 if + you don't. */ +#define HAVE_DECL_FWRITE_UNLOCKED 0 + +/* Define to 1 if you have the declaration of `gcvt', and to 0 if you don't. + */ +#define HAVE_DECL_GCVT 1 + +/* Define to 1 if you have the declaration of `getchar_unlocked', and to 0 if + you don't. */ +#define HAVE_DECL_GETCHAR_UNLOCKED 1 + +/* Define to 1 if you have the declaration of `getc_unlocked', and to 0 if you + don't. */ +#define HAVE_DECL_GETC_UNLOCKED 1 + +/* Define to 1 if you have the declaration of `getdtablesize', and to 0 if you + don't. */ +#define HAVE_DECL_GETDTABLESIZE 1 + +/* Define to 1 if you have the declaration of `program_invocation_name', and + to 0 if you don't. */ +#define HAVE_DECL_PROGRAM_INVOCATION_NAME 0 + +/* Define to 1 if you have the declaration of `program_invocation_short_name', + and to 0 if you don't. */ +#define HAVE_DECL_PROGRAM_INVOCATION_SHORT_NAME 0 + +/* Define to 1 if you have the declaration of `putchar_unlocked', and to 0 if + you don't. */ +#define HAVE_DECL_PUTCHAR_UNLOCKED 1 + +/* Define to 1 if you have the declaration of `putc_unlocked', and to 0 if you + don't. */ +#define HAVE_DECL_PUTC_UNLOCKED 1 + +/* Define to 1 if you have the declaration of `setenv', and to 0 if you don't. + */ +#define HAVE_DECL_SETENV 1 + +/* Define to 1 if you have the declaration of `strerror_r', and to 0 if you + don't. */ +#define HAVE_DECL_STRERROR_R 1 + +/* Define to 1 if you have the declaration of `wcsdup', and to 0 if you don't. + */ +#define HAVE_DECL_WCSDUP 1 + +/* Define to 1 if you have the declaration of `__argv', and to 0 if you don't. + */ +#define HAVE_DECL___ARGV 0 + +/* Define to 1 if you have the header file. */ +#define HAVE_DLFCN_H 1 + +/* Define if you have the declaration of environ. */ +/* #undef HAVE_ENVIRON_DECL */ + +/* Define to 1 if you have the `faccessat' function. */ +#define HAVE_FACCESSAT 1 + +/* Define to 1 if you have the `fcntl' function. */ +#define HAVE_FCNTL 1 + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_FEATURES_H */ + +/* Define if the 'free' function is guaranteed to preserve errno. */ +/* #undef HAVE_FREE_POSIX */ + +/* Define to 1 if you have the `getcwd' function. */ +#define HAVE_GETCWD 1 + +/* Define to 1 if you have the `getc_unlocked' function. */ +#define HAVE_GETC_UNLOCKED 1 + +/* Define to 1 if you have the `getdtablesize' function. */ +#define HAVE_GETDTABLESIZE 1 + +/* Define to 1 if you have the `getexecname' function. */ +/* #undef HAVE_GETEXECNAME */ + +/* Define to 1 if you have the `getprogname' function. */ +#define HAVE_GETPROGNAME 1 + +/* Define if the GNU gettext() function is already present or preinstalled. */ +/* #undef HAVE_GETTEXT */ + +/* Define if you have the iconv() function and it works. */ +#define HAVE_ICONV 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_INTTYPES_H 1 + +/* Define if you have and nl_langinfo(CODESET). */ +#define HAVE_LANGINFO_CODESET 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_LIMITS_H 1 + +/* Define to 1 if the system has the type 'long long int'. */ +#define HAVE_LONG_LONG_INT 1 + +/* Define to 1 if you have the `lstat' function. */ +#define HAVE_LSTAT 1 + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_MACH_O_DYLD_H */ + +/* Define if malloc, realloc, and calloc set errno on allocation failure. */ +#define HAVE_MALLOC_POSIX 1 + +/* Define to 1 if you have the `mbrtowc' function. */ +#define HAVE_MBRTOWC 1 + +/* Define to 1 if you have the `mbsinit' function. */ +#define HAVE_MBSINIT 1 + +/* Define to 1 if declares mbstate_t. */ +#define HAVE_MBSTATE_T 1 + +/* Define to 1 if you have the `memmove' function. */ +#define HAVE_MEMMOVE 1 + +/* Define to 1 if you have the `mempcpy' function. */ +/* #undef HAVE_MEMPCPY */ + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_MINIX_CONFIG_H */ + +/* Define to 1 if defines the MIN and MAX macros. */ +/* #undef HAVE_MINMAX_IN_LIMITS_H */ + +/* Define to 1 if defines the MIN and MAX macros. */ +#define HAVE_MINMAX_IN_SYS_PARAM_H 1 + +/* Define to 1 on MSVC platforms that have the "invalid parameter handler" + concept. */ +/* #undef HAVE_MSVC_INVALID_PARAMETER_HANDLER */ + +/* Define to 1 if you have the `raise' function. */ +#define HAVE_RAISE 1 + +/* Define to 1 if you have the `rawmemchr' function. */ +/* #undef HAVE_RAWMEMCHR */ + +/* Define to 1 if you have the `readlink' function. */ +#define HAVE_READLINK 1 + +/* Define to 1 if you have the `readlinkat' function. */ +#define HAVE_READLINKAT 1 + +/* Define to 1 if you have the `realpath' function. */ +#define HAVE_REALPATH 1 + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_SDKDDKVER_H */ + +/* Define to 1 if you have the header file. */ +#define HAVE_SEARCH_H 1 + +/* Define to 1 if you have the `setdtablesize' function. */ +/* #undef HAVE_SETDTABLESIZE */ + +/* Define to 1 if you have the `setenv' function. */ +#define HAVE_SETENV 1 + +/* Define to 1 if you have the `setlocale' function. */ +#define HAVE_SETLOCALE 1 + +/* Define to 1 if 'sig_atomic_t' is a signed integer type. */ +/* #undef HAVE_SIGNED_SIG_ATOMIC_T */ + +/* Define to 1 if 'wchar_t' is a signed integer type. */ +/* #undef HAVE_SIGNED_WCHAR_T */ + +/* Define to 1 if 'wint_t' is a signed integer type. */ +/* #undef HAVE_SIGNED_WINT_T */ + +/* Define to 1 if the system has the type `sigset_t'. */ +#define HAVE_SIGSET_T 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_STDINT_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_STDIO_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_STDLIB_H 1 + +/* Define if you have `strerror_r'. */ +#define HAVE_STRERROR_R 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_STRINGS_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_STRING_H 1 + +/* Define to 1 if `st_atimensec' is a member of `struct stat'. */ +/* #undef HAVE_STRUCT_STAT_ST_ATIMENSEC */ + +/* Define to 1 if `st_atimespec.tv_nsec' is a member of `struct stat'. */ +#define HAVE_STRUCT_STAT_ST_ATIMESPEC_TV_NSEC 1 + +/* Define to 1 if `st_atim.st__tim.tv_nsec' is a member of `struct stat'. */ +/* #undef HAVE_STRUCT_STAT_ST_ATIM_ST__TIM_TV_NSEC */ + +/* Define to 1 if `st_atim.tv_nsec' is a member of `struct stat'. */ +/* #undef HAVE_STRUCT_STAT_ST_ATIM_TV_NSEC */ + +/* Define to 1 if `st_birthtimensec' is a member of `struct stat'. */ +/* #undef HAVE_STRUCT_STAT_ST_BIRTHTIMENSEC */ + +/* Define to 1 if `st_birthtimespec.tv_nsec' is a member of `struct stat'. */ +#define HAVE_STRUCT_STAT_ST_BIRTHTIMESPEC_TV_NSEC 1 + +/* Define to 1 if `st_birthtim.tv_nsec' is a member of `struct stat'. */ +/* #undef HAVE_STRUCT_STAT_ST_BIRTHTIM_TV_NSEC */ + +/* Define to 1 if you have the `symlink' function. */ +#define HAVE_SYMLINK 1 + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_SYS_BITYPES_H */ + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_SYS_INTTYPES_H */ + +/* Define to 1 if you have the header file. */ +#define HAVE_SYS_PARAM_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_SYS_SOCKET_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_SYS_STAT_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_SYS_TIME_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_SYS_TYPES_H 1 + +/* Define to 1 if you have the `tsearch' function. */ +#define HAVE_TSEARCH 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_UNISTD_H 1 + +/* Define to 1 if the system has the type 'unsigned long long int'. */ +#define HAVE_UNSIGNED_LONG_LONG_INT 1 + +/* Define if you have a global __progname variable */ +#define HAVE_VAR___PROGNAME 1 + +/* Define to 1 or 0, depending whether the compiler supports simple visibility + declarations. */ +#define HAVE_VISIBILITY 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_WCHAR_H 1 + +/* Define if you have the 'wchar_t' type. */ +#define HAVE_WCHAR_T 1 + +/* Define to 1 if you have the `wcrtomb' function. */ +#define HAVE_WCRTOMB 1 + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_WINSOCK2_H */ + +/* Define if you have the 'wint_t' type. */ +#define HAVE_WINT_T 1 + +/* Define to 1 if O_NOATIME works. */ +#define HAVE_WORKING_O_NOATIME 0 + +/* Define to 1 if O_NOFOLLOW works. */ +#define HAVE_WORKING_O_NOFOLLOW 1 + +/* Define to 1 if the system has the type `_Bool'. */ +#define HAVE__BOOL 1 + +/* Define to 1 if you have the `_NSGetExecutablePath' function. */ +/* #undef HAVE__NSGETEXECUTABLEPATH */ + +/* Define to 1 if you have the `_set_invalid_parameter_handler' function. */ +/* #undef HAVE__SET_INVALID_PARAMETER_HANDLER */ + +/* Define to 1 if the compiler supports __builtin_expect, + and to 2 if does. */ +#define HAVE___BUILTIN_EXPECT 1 +#ifndef HAVE___BUILTIN_EXPECT +# define __builtin_expect(e, c) (e) +#elif HAVE___BUILTIN_EXPECT == 2 +# include +#endif + + +/* Define to 1 if ctype.h defines __header_inline. */ +#define HAVE___HEADER_INLINE 1 + +/* Please see the Gnulib manual for how to use these macros. + + Suppress extern inline with HP-UX cc, as it appears to be broken; see + . + + Suppress extern inline with Sun C in standards-conformance mode, as it + mishandles inline functions that call each other. E.g., for 'inline void f + (void) { } inline void g (void) { f (); }', c99 incorrectly complains + 'reference to static identifier "f" in extern inline function'. + This bug was observed with Oracle Developer Studio 12.6 + (Sun C 5.15 SunOS_sparc 2017/05/30). + + Suppress extern inline (with or without __attribute__ ((__gnu_inline__))) + on configurations that mistakenly use 'static inline' to implement + functions or macros in standard C headers like . For example, + if isdigit is mistakenly implemented via a static inline function, + a program containing an extern inline function that calls isdigit + may not work since the C standard prohibits extern inline functions + from calling static functions (ISO C 99 section 6.7.4.(3). + This bug is known to occur on: + + OS X 10.8 and earlier; see: + https://lists.gnu.org/r/bug-gnulib/2012-12/msg00023.html + + DragonFly; see + http://muscles.dragonflybsd.org/bulk/clang-master-potential/20141111_102002/logs/ah-tty-0.3.12.log + + FreeBSD; see: + https://lists.gnu.org/r/bug-gnulib/2014-07/msg00104.html + + OS X 10.9 has a macro __header_inline indicating the bug is fixed for C and + for clang but remains for g++; see . + Assume DragonFly and FreeBSD will be similar. + + GCC 4.3 and above with -std=c99 or -std=gnu99 implements ISO C99 + inline semantics, unless -fgnu89-inline is used. It defines a macro + __GNUC_STDC_INLINE__ to indicate this situation or a macro + __GNUC_GNU_INLINE__ to indicate the opposite situation. + GCC 4.2 with -std=c99 or -std=gnu99 implements the GNU C inline + semantics but warns, unless -fgnu89-inline is used: + warning: C99 inline functions are not supported; using GNU89 + warning: to disable this warning use -fgnu89-inline or the gnu_inline function attribute + It defines a macro __GNUC_GNU_INLINE__ to indicate this situation. + */ +#if (((defined __APPLE__ && defined __MACH__) \ + || defined __DragonFly__ || defined __FreeBSD__) \ + && (defined HAVE___HEADER_INLINE \ + ? (defined __cplusplus && defined __GNUC_STDC_INLINE__ \ + && ! defined __clang__) \ + : ((! defined _DONT_USE_CTYPE_INLINE_ \ + && (defined __GNUC__ || defined __cplusplus)) \ + || (defined _FORTIFY_SOURCE && 0 < _FORTIFY_SOURCE \ + && defined __GNUC__ && ! defined __cplusplus)))) +# define _GL_EXTERN_INLINE_STDHEADER_BUG +#endif +#if ((__GNUC__ \ + ? defined __GNUC_STDC_INLINE__ && __GNUC_STDC_INLINE__ \ + : (199901L <= __STDC_VERSION__ \ + && !defined __HP_cc \ + && !defined __PGI \ + && !(defined __SUNPRO_C && __STDC__))) \ + && !defined _GL_EXTERN_INLINE_STDHEADER_BUG) +# define _GL_INLINE inline +# define _GL_EXTERN_INLINE extern inline +# define _GL_EXTERN_INLINE_IN_USE +#elif (2 < __GNUC__ + (7 <= __GNUC_MINOR__) && !defined __STRICT_ANSI__ \ + && !defined _GL_EXTERN_INLINE_STDHEADER_BUG) +# if defined __GNUC_GNU_INLINE__ && __GNUC_GNU_INLINE__ + /* __gnu_inline__ suppresses a GCC 4.2 diagnostic. */ +# define _GL_INLINE extern inline __attribute__ ((__gnu_inline__)) +# else +# define _GL_INLINE extern inline +# endif +# define _GL_EXTERN_INLINE extern +# define _GL_EXTERN_INLINE_IN_USE +#else +# define _GL_INLINE _GL_UNUSED static +# define _GL_EXTERN_INLINE _GL_UNUSED static +#endif + +/* In GCC 4.6 (inclusive) to 5.1 (exclusive), + suppress bogus "no previous prototype for 'FOO'" + and "no previous declaration for 'FOO'" diagnostics, + when FOO is an inline function in the header; see + and + . */ +#if __GNUC__ == 4 && 6 <= __GNUC_MINOR__ +# if defined __GNUC_STDC_INLINE__ && __GNUC_STDC_INLINE__ +# define _GL_INLINE_HEADER_CONST_PRAGMA +# else +# define _GL_INLINE_HEADER_CONST_PRAGMA \ + _Pragma ("GCC diagnostic ignored \"-Wsuggest-attribute=const\"") +# endif +# define _GL_INLINE_HEADER_BEGIN \ + _Pragma ("GCC diagnostic push") \ + _Pragma ("GCC diagnostic ignored \"-Wmissing-prototypes\"") \ + _Pragma ("GCC diagnostic ignored \"-Wmissing-declarations\"") \ + _GL_INLINE_HEADER_CONST_PRAGMA +# define _GL_INLINE_HEADER_END \ + _Pragma ("GCC diagnostic pop") +#else +# define _GL_INLINE_HEADER_BEGIN +# define _GL_INLINE_HEADER_END +#endif + +/* Define to 1 if the compiler supports the keyword '__inline'. */ +#define HAVE___INLINE 1 + +/* Define as const if the declaration of iconv() needs const. */ +#define ICONV_CONST + +/* Define to the value of ${prefix}, as a string. */ +#define INSTALLPREFIX "/Users/yangzuhao/Downloads/libiconv-1.17/output" + +/* Define to 1 if 'lstat' dereferences a symlink specified with a trailing + slash. */ +/* #undef LSTAT_FOLLOWS_SLASHED_SYMLINK */ + +/* Define to the sub-directory where libtool stores uninstalled libraries. */ +#define LT_OBJDIR ".libs/" + +/* If malloc(0) is != NULL, define this to 1. Otherwise define this to 0. */ +#define MALLOC_0_IS_NONNULL 1 + +/* Use GNU style printf and scanf. */ +#ifndef __USE_MINGW_ANSI_STDIO +# define __USE_MINGW_ANSI_STDIO 1 +#endif + + +/* Define to 1 if open() fails to recognize a trailing slash. */ +#define OPEN_TRAILING_SLASH_BUG 1 + +/* Name of package */ +#define PACKAGE "libiconv" + +/* Define to the address where bug reports for this package should be sent. */ +#define PACKAGE_BUGREPORT "" + +/* Define to the full name of this package. */ +#define PACKAGE_NAME "libiconv" + +/* Define to the full name and version of this package. */ +#define PACKAGE_STRING "libiconv 1.17" + +/* Define to the one symbol short name of this package. */ +#define PACKAGE_TARNAME "libiconv" + +/* Define to the home page for this package. */ +#define PACKAGE_URL "" + +/* Define to the version of this package. */ +#define PACKAGE_VERSION "1.17" + +/* Define to the type that is the result of default argument promotions of + type mode_t. */ +#define PROMOTED_MODE_T int + +/* Define to l, ll, u, ul, ull, etc., as suitable for constants of type + 'ptrdiff_t'. */ +/* #undef PTRDIFF_T_SUFFIX */ + +/* Define to 1 if readlink fails to recognize a trailing slash. */ +#define READLINK_TRAILING_SLASH_BUG 1 + +/* Define to 1 if readlink sets errno instead of truncating a too-long link. + */ +/* #undef READLINK_TRUNCATE_BUG */ + +/* Define to 1 if stat needs help when passed a file name with a trailing + slash */ +#define REPLACE_FUNC_STAT_FILE 1 + +/* Define to 1 if strerror(0) does not return a message implying success. */ +#define REPLACE_STRERROR_0 1 + +/* Define to l, ll, u, ul, ull, etc., as suitable for constants of type + 'sig_atomic_t'. */ +/* #undef SIG_ATOMIC_T_SUFFIX */ + +/* Define to l, ll, u, ul, ull, etc., as suitable for constants of type + 'size_t'. */ +/* #undef SIZE_T_SUFFIX */ + +/* If using the C implementation of alloca, define if you know the + direction of stack growth for your system; otherwise it will be + automatically deduced at runtime. + STACK_DIRECTION > 0 => grows toward higher addresses + STACK_DIRECTION < 0 => grows toward lower addresses + STACK_DIRECTION = 0 => direction of growth unknown */ +/* #undef STACK_DIRECTION */ + +/* Define to 1 if the `S_IS*' macros in do not work properly. */ +/* #undef STAT_MACROS_BROKEN */ + +/* Define to 1 if all of the C90 standard headers exist (not just the ones + required in a freestanding environment). This macro is provided for + backward compatibility; new code need not use it. */ +#define STDC_HEADERS 1 + +/* Define to 1 if strerror_r returns char *. */ +/* #undef STRERROR_R_CHAR_P */ + +/* Define to 1 if the type of the st_atim member of a struct stat is struct + timespec. */ +/* #undef TYPEOF_STRUCT_STAT_ST_ATIM_IS_STRUCT_TIMESPEC */ + +/* Define to the prefix of C symbols at the assembler and linker level, either + an underscore or empty. */ +#define USER_LABEL_PREFIX _ + +/* Enable extensions on AIX 3, Interix. */ +#ifndef _ALL_SOURCE +# define _ALL_SOURCE 1 +#endif +/* Enable general extensions on macOS. */ +#ifndef _DARWIN_C_SOURCE +# define _DARWIN_C_SOURCE 1 +#endif +/* Enable general extensions on Solaris. */ +#ifndef __EXTENSIONS__ +# define __EXTENSIONS__ 1 +#endif +/* Enable GNU extensions on systems that have them. */ +#ifndef _GNU_SOURCE +# define _GNU_SOURCE 1 +#endif +/* Enable X/Open compliant socket functions that do not require linking + with -lxnet on HP-UX 11.11. */ +#ifndef _HPUX_ALT_XOPEN_SOCKET_API +# define _HPUX_ALT_XOPEN_SOCKET_API 1 +#endif +/* Identify the host operating system as Minix. + This macro does not affect the system headers' behavior. + A future release of Autoconf may stop defining this macro. */ +#ifndef _MINIX +/* # undef _MINIX */ +#endif +/* Enable general extensions on NetBSD. + Enable NetBSD compatibility extensions on Minix. */ +#ifndef _NETBSD_SOURCE +# define _NETBSD_SOURCE 1 +#endif +/* Enable OpenBSD compatibility extensions on NetBSD. + Oddly enough, this does nothing on OpenBSD. */ +#ifndef _OPENBSD_SOURCE +# define _OPENBSD_SOURCE 1 +#endif +/* Define to 1 if needed for POSIX-compatible behavior. */ +#ifndef _POSIX_SOURCE +/* # undef _POSIX_SOURCE */ +#endif +/* Define to 2 if needed for POSIX-compatible behavior. */ +#ifndef _POSIX_1_SOURCE +/* # undef _POSIX_1_SOURCE */ +#endif +/* Enable POSIX-compatible threading on Solaris. */ +#ifndef _POSIX_PTHREAD_SEMANTICS +# define _POSIX_PTHREAD_SEMANTICS 1 +#endif +/* Enable extensions specified by ISO/IEC TS 18661-5:2014. */ +#ifndef __STDC_WANT_IEC_60559_ATTRIBS_EXT__ +# define __STDC_WANT_IEC_60559_ATTRIBS_EXT__ 1 +#endif +/* Enable extensions specified by ISO/IEC TS 18661-1:2014. */ +#ifndef __STDC_WANT_IEC_60559_BFP_EXT__ +# define __STDC_WANT_IEC_60559_BFP_EXT__ 1 +#endif +/* Enable extensions specified by ISO/IEC TS 18661-2:2015. */ +#ifndef __STDC_WANT_IEC_60559_DFP_EXT__ +# define __STDC_WANT_IEC_60559_DFP_EXT__ 1 +#endif +/* Enable extensions specified by ISO/IEC TS 18661-4:2015. */ +#ifndef __STDC_WANT_IEC_60559_FUNCS_EXT__ +# define __STDC_WANT_IEC_60559_FUNCS_EXT__ 1 +#endif +/* Enable extensions specified by ISO/IEC TS 18661-3:2015. */ +#ifndef __STDC_WANT_IEC_60559_TYPES_EXT__ +# define __STDC_WANT_IEC_60559_TYPES_EXT__ 1 +#endif +/* Enable extensions specified by ISO/IEC TR 24731-2:2010. */ +#ifndef __STDC_WANT_LIB_EXT2__ +# define __STDC_WANT_LIB_EXT2__ 1 +#endif +/* Enable extensions specified by ISO/IEC 24747:2009. */ +#ifndef __STDC_WANT_MATH_SPEC_FUNCS__ +# define __STDC_WANT_MATH_SPEC_FUNCS__ 1 +#endif +/* Enable extensions on HP NonStop. */ +#ifndef _TANDEM_SOURCE +# define _TANDEM_SOURCE 1 +#endif +/* Enable X/Open extensions. Define to 500 only if necessary + to make mbstate_t available. */ +#ifndef _XOPEN_SOURCE +/* # undef _XOPEN_SOURCE */ +#endif + + +/* An alias of GNULIB_STDIO_SINGLE_THREAD. */ +#define USE_UNLOCKED_IO GNULIB_STDIO_SINGLE_THREAD + +/* Version number of package */ +#define VERSION "1.17" + +/* Define to l, ll, u, ul, ull, etc., as suitable for constants of type + 'wchar_t'. */ +/* #undef WCHAR_T_SUFFIX */ + +/* Define to l, ll, u, ul, ull, etc., as suitable for constants of type + 'wint_t'. */ +/* #undef WINT_T_SUFFIX */ + +/* Define WORDS_BIGENDIAN to 1 if your processor stores words with the most + significant byte first (like Motorola and SPARC, unlike Intel). */ +#if defined AC_APPLE_UNIVERSAL_BUILD +# if defined __BIG_ENDIAN__ +# define WORDS_BIGENDIAN 1 +# endif +#else +# ifndef WORDS_BIGENDIAN +/* # undef WORDS_BIGENDIAN */ +# endif +#endif + +/* Define if the machine's byte ordering is little endian. */ +#define WORDS_LITTLEENDIAN 1 + +/* Number of bits in a file offset, on hosts where this is settable. */ +/* #undef _FILE_OFFSET_BITS */ + +/* True if the compiler says it groks GNU C version MAJOR.MINOR. */ +#if defined __GNUC__ && defined __GNUC_MINOR__ +# define _GL_GNUC_PREREQ(major, minor) \ + ((major) < __GNUC__ + ((minor) <= __GNUC_MINOR__)) +#else +# define _GL_GNUC_PREREQ(major, minor) 0 +#endif + + +/* Define to enable the declarations of ISO C 11 types and functions. */ +/* #undef _ISOC11_SOURCE */ + +/* Define for large files, on AIX-style hosts. */ +/* #undef _LARGE_FILES */ + +/* The _Noreturn keyword of C11. */ +#ifndef _Noreturn +# if (defined __cplusplus \ + && ((201103 <= __cplusplus && !(__GNUC__ == 4 && __GNUC_MINOR__ == 7)) \ + || (defined _MSC_VER && 1900 <= _MSC_VER)) \ + && 0) + /* [[noreturn]] is not practically usable, because with it the syntax + extern _Noreturn void func (...); + would not be valid; such a declaration would only be valid with 'extern' + and '_Noreturn' swapped, or without the 'extern' keyword. However, some + AIX system header files and several gnulib header files use precisely + this syntax with 'extern'. */ +# define _Noreturn [[noreturn]] +# elif ((!defined __cplusplus || defined __clang__) \ + && (201112 <= (defined __STDC_VERSION__ ? __STDC_VERSION__ : 0) \ + || (!defined __STRICT_ANSI__ \ + && (_GL_GNUC_PREREQ (4, 7) \ + || (defined __apple_build_version__ \ + ? 6000000 <= __apple_build_version__ \ + : 3 < __clang_major__ + (5 <= __clang_minor__)))))) + /* _Noreturn works as-is. */ +# elif _GL_GNUC_PREREQ (2, 8) || defined __clang__ || 0x5110 <= __SUNPRO_C +# define _Noreturn __attribute__ ((__noreturn__)) +# elif 1200 <= (defined _MSC_VER ? _MSC_VER : 0) +# define _Noreturn __declspec (noreturn) +# else +# define _Noreturn +# endif +#endif + + +/* Number of bits in a timestamp, on hosts where this is settable. */ +/* #undef _TIME_BITS */ + +/* For standard stat data types on VMS. */ +#define _USE_STD_STAT 1 + +/* For 64-bit time_t on 32-bit mingw. */ +/* #undef __MINGW_USE_VC2005_COMPAT */ + +/* Define to 1 if the system predates C++11. */ +/* #undef __STDC_CONSTANT_MACROS */ + +/* Define to 1 if the system predates C++11. */ +/* #undef __STDC_LIMIT_MACROS */ + +/* Define to 1 if C does not support variable-length arrays, and if the + compiler does not already define this. */ +/* #undef __STDC_NO_VLA__ */ + +/* The _GL_ASYNC_SAFE marker should be attached to functions that are + signal handlers (for signals other than SIGABRT, SIGPIPE) or can be + invoked from such signal handlers. Such functions have some restrictions: + * All functions that it calls should be marked _GL_ASYNC_SAFE as well, + or should be listed as async-signal-safe in POSIX + + section 2.4.3. Note that malloc(), sprintf(), and fwrite(), in + particular, are NOT async-signal-safe. + * All memory locations (variables and struct fields) that these functions + access must be marked 'volatile'. This holds for both read and write + accesses. Otherwise the compiler might optimize away stores to and + reads from such locations that occur in the program, depending on its + data flow analysis. For example, when the program contains a loop + that is intended to inspect a variable set from within a signal handler + while (!signal_occurred) + ; + the compiler is allowed to transform this into an endless loop if the + variable 'signal_occurred' is not declared 'volatile'. + Additionally, recall that: + * A signal handler should not modify errno (except if it is a handler + for a fatal signal and ends by raising the same signal again, thus + provoking the termination of the process). If it invokes a function + that may clobber errno, it needs to save and restore the value of + errno. */ +#define _GL_ASYNC_SAFE + + +/* Attributes. */ +#if (defined __has_attribute \ + && (!defined __clang_minor__ \ + || (defined __apple_build_version__ \ + ? 6000000 <= __apple_build_version__ \ + : 3 < __clang_major__ + (5 <= __clang_minor__)))) +# define _GL_HAS_ATTRIBUTE(attr) __has_attribute (__##attr##__) +#else +# define _GL_HAS_ATTRIBUTE(attr) _GL_ATTR_##attr +# define _GL_ATTR_alloc_size _GL_GNUC_PREREQ (4, 3) +# define _GL_ATTR_always_inline _GL_GNUC_PREREQ (3, 2) +# define _GL_ATTR_artificial _GL_GNUC_PREREQ (4, 3) +# define _GL_ATTR_cold _GL_GNUC_PREREQ (4, 3) +# define _GL_ATTR_const _GL_GNUC_PREREQ (2, 95) +# define _GL_ATTR_deprecated _GL_GNUC_PREREQ (3, 1) +# define _GL_ATTR_diagnose_if 0 +# define _GL_ATTR_error _GL_GNUC_PREREQ (4, 3) +# define _GL_ATTR_externally_visible _GL_GNUC_PREREQ (4, 1) +# define _GL_ATTR_fallthrough _GL_GNUC_PREREQ (7, 0) +# define _GL_ATTR_format _GL_GNUC_PREREQ (2, 7) +# define _GL_ATTR_leaf _GL_GNUC_PREREQ (4, 6) +# define _GL_ATTR_malloc _GL_GNUC_PREREQ (3, 0) +# ifdef _ICC +# define _GL_ATTR_may_alias 0 +# else +# define _GL_ATTR_may_alias _GL_GNUC_PREREQ (3, 3) +# endif +# define _GL_ATTR_noinline _GL_GNUC_PREREQ (3, 1) +# define _GL_ATTR_nonnull _GL_GNUC_PREREQ (3, 3) +# define _GL_ATTR_nonstring _GL_GNUC_PREREQ (8, 0) +# define _GL_ATTR_nothrow _GL_GNUC_PREREQ (3, 3) +# define _GL_ATTR_packed _GL_GNUC_PREREQ (2, 7) +# define _GL_ATTR_pure _GL_GNUC_PREREQ (2, 96) +# define _GL_ATTR_returns_nonnull _GL_GNUC_PREREQ (4, 9) +# define _GL_ATTR_sentinel _GL_GNUC_PREREQ (4, 0) +# define _GL_ATTR_unused _GL_GNUC_PREREQ (2, 7) +# define _GL_ATTR_warn_unused_result _GL_GNUC_PREREQ (3, 4) +#endif + +#ifdef __has_c_attribute +# if ((defined __STDC_VERSION__ ? __STDC_VERSION__ : 0) <= 201710 \ + && _GL_GNUC_PREREQ (4, 6)) +# pragma GCC diagnostic ignored "-Wpedantic" +# endif +# define _GL_HAS_C_ATTRIBUTE(attr) __has_c_attribute (__##attr##__) +#else +# define _GL_HAS_C_ATTRIBUTE(attr) 0 +#endif + + +/* _GL_ATTRIBUTE_ALLOC_SIZE ((N)) declares that the Nth argument of the function + is the size of the returned memory block. + _GL_ATTRIBUTE_ALLOC_SIZE ((M, N)) declares that the Mth argument multiplied + by the Nth argument of the function is the size of the returned memory block. + */ +/* Applies to: function, pointer to function, function types. */ +#if _GL_HAS_ATTRIBUTE (alloc_size) +# define _GL_ATTRIBUTE_ALLOC_SIZE(args) __attribute__ ((__alloc_size__ args)) +#else +# define _GL_ATTRIBUTE_ALLOC_SIZE(args) +#endif + +/* _GL_ATTRIBUTE_ALWAYS_INLINE tells that the compiler should always inline the + function and report an error if it cannot do so. */ +/* Applies to: function. */ +#if _GL_HAS_ATTRIBUTE (always_inline) +# define _GL_ATTRIBUTE_ALWAYS_INLINE __attribute__ ((__always_inline__)) +#else +# define _GL_ATTRIBUTE_ALWAYS_INLINE +#endif + +/* _GL_ATTRIBUTE_ARTIFICIAL declares that the function is not important to show + in stack traces when debugging. The compiler should omit the function from + stack traces. */ +/* Applies to: function. */ +#if _GL_HAS_ATTRIBUTE (artificial) +# define _GL_ATTRIBUTE_ARTIFICIAL __attribute__ ((__artificial__)) +#else +# define _GL_ATTRIBUTE_ARTIFICIAL +#endif + +/* _GL_ATTRIBUTE_COLD declares that the function is rarely executed. */ +/* Applies to: functions. */ +/* Avoid __attribute__ ((cold)) on MinGW; see thread starting at + . + Also, Oracle Studio 12.6 requires 'cold' not '__cold__'. */ +#if _GL_HAS_ATTRIBUTE (cold) && !defined __MINGW32__ +# ifndef __SUNPRO_C +# define _GL_ATTRIBUTE_COLD __attribute__ ((__cold__)) +# else +# define _GL_ATTRIBUTE_COLD __attribute__ ((cold)) +# endif +#else +# define _GL_ATTRIBUTE_COLD +#endif + +/* _GL_ATTRIBUTE_CONST declares that it is OK for a compiler to omit duplicate + calls to the function with the same arguments. + This attribute is safe for a function that neither depends on nor affects + observable state, and always returns exactly once - e.g., does not loop + forever, and does not call longjmp. + (This attribute is stricter than _GL_ATTRIBUTE_PURE.) */ +/* Applies to: functions. */ +#if _GL_HAS_ATTRIBUTE (const) +# define _GL_ATTRIBUTE_CONST __attribute__ ((__const__)) +#else +# define _GL_ATTRIBUTE_CONST +#endif + +/* _GL_ATTRIBUTE_DEALLOC (F, I) declares that the function returns pointers + that can be freed by passing them as the Ith argument to the + function F. + _GL_ATTRIBUTE_DEALLOC_FREE declares that the function returns pointers that + can be freed via 'free'; it can be used only after declaring 'free'. */ +/* Applies to: functions. Cannot be used on inline functions. */ +#if _GL_GNUC_PREREQ (11, 0) +# define _GL_ATTRIBUTE_DEALLOC(f, i) __attribute__ ((__malloc__ (f, i))) +#else +# define _GL_ATTRIBUTE_DEALLOC(f, i) +#endif +/* If gnulib's or has already defined this macro, continue + to use this earlier definition, since may not have been included + yet. */ +#ifndef _GL_ATTRIBUTE_DEALLOC_FREE +# define _GL_ATTRIBUTE_DEALLOC_FREE _GL_ATTRIBUTE_DEALLOC (free, 1) +#endif + +/* _GL_ATTRIBUTE_DEPRECATED: Declares that an entity is deprecated. + The compiler may warn if the entity is used. */ +/* Applies to: + - function, variable, + - struct, union, struct/union member, + - enumeration, enumeration item, + - typedef, + in C++ also: namespace, class, template specialization. */ +#if _GL_HAS_C_ATTRIBUTE (deprecated) +# define _GL_ATTRIBUTE_DEPRECATED [[__deprecated__]] +#elif _GL_HAS_ATTRIBUTE (deprecated) +# define _GL_ATTRIBUTE_DEPRECATED __attribute__ ((__deprecated__)) +#else +# define _GL_ATTRIBUTE_DEPRECATED +#endif + +/* _GL_ATTRIBUTE_ERROR(msg) requests an error if a function is called and + the function call is not optimized away. + _GL_ATTRIBUTE_WARNING(msg) requests a warning if a function is called and + the function call is not optimized away. */ +/* Applies to: functions. */ +#if _GL_HAS_ATTRIBUTE (error) +# define _GL_ATTRIBUTE_ERROR(msg) __attribute__ ((__error__ (msg))) +# define _GL_ATTRIBUTE_WARNING(msg) __attribute__ ((__warning__ (msg))) +#elif _GL_HAS_ATTRIBUTE (diagnose_if) +# define _GL_ATTRIBUTE_ERROR(msg) __attribute__ ((__diagnose_if__ (1, msg, "error"))) +# define _GL_ATTRIBUTE_WARNING(msg) __attribute__ ((__diagnose_if__ (1, msg, "warning"))) +#else +# define _GL_ATTRIBUTE_ERROR(msg) +# define _GL_ATTRIBUTE_WARNING(msg) +#endif + +/* _GL_ATTRIBUTE_EXTERNALLY_VISIBLE declares that the entity should remain + visible to debuggers etc., even with '-fwhole-program'. */ +/* Applies to: functions, variables. */ +#if _GL_HAS_ATTRIBUTE (externally_visible) +# define _GL_ATTRIBUTE_EXTERNALLY_VISIBLE __attribute__ ((externally_visible)) +#else +# define _GL_ATTRIBUTE_EXTERNALLY_VISIBLE +#endif + +/* _GL_ATTRIBUTE_FALLTHROUGH declares that it is not a programming mistake if + the control flow falls through to the immediately following 'case' or + 'default' label. The compiler should not warn in this case. */ +/* Applies to: Empty statement (;), inside a 'switch' statement. */ +/* Always expands to something. */ +#if _GL_HAS_C_ATTRIBUTE (fallthrough) +# define _GL_ATTRIBUTE_FALLTHROUGH [[__fallthrough__]] +#elif _GL_HAS_ATTRIBUTE (fallthrough) +# define _GL_ATTRIBUTE_FALLTHROUGH __attribute__ ((__fallthrough__)) +#else +# define _GL_ATTRIBUTE_FALLTHROUGH ((void) 0) +#endif + +/* _GL_ATTRIBUTE_FORMAT ((ARCHETYPE, STRING-INDEX, FIRST-TO-CHECK)) + declares that the STRING-INDEXth function argument is a format string of + style ARCHETYPE, which is one of: + printf, gnu_printf + scanf, gnu_scanf, + strftime, gnu_strftime, + strfmon, + or the same thing prefixed and suffixed with '__'. + If FIRST-TO-CHECK is not 0, arguments starting at FIRST-TO_CHECK + are suitable for the format string. */ +/* Applies to: functions. */ +#if _GL_HAS_ATTRIBUTE (format) +# define _GL_ATTRIBUTE_FORMAT(spec) __attribute__ ((__format__ spec)) +#else +# define _GL_ATTRIBUTE_FORMAT(spec) +#endif + +/* _GL_ATTRIBUTE_LEAF declares that if the function is called from some other + compilation unit, it executes code from that unit only by return or by + exception handling. This declaration lets the compiler optimize that unit + more aggressively. */ +/* Applies to: functions. */ +#if _GL_HAS_ATTRIBUTE (leaf) +# define _GL_ATTRIBUTE_LEAF __attribute__ ((__leaf__)) +#else +# define _GL_ATTRIBUTE_LEAF +#endif + +/* _GL_ATTRIBUTE_MALLOC declares that the function returns a pointer to freshly + allocated memory. */ +/* Applies to: functions. */ +#if _GL_HAS_ATTRIBUTE (malloc) +# define _GL_ATTRIBUTE_MALLOC __attribute__ ((__malloc__)) +#else +# define _GL_ATTRIBUTE_MALLOC +#endif + +/* _GL_ATTRIBUTE_MAY_ALIAS declares that pointers to the type may point to the + same storage as pointers to other types. Thus this declaration disables + strict aliasing optimization. */ +/* Applies to: types. */ +/* Oracle Studio 12.6 mishandles may_alias despite __has_attribute OK. */ +#if _GL_HAS_ATTRIBUTE (may_alias) && !defined __SUNPRO_C +# define _GL_ATTRIBUTE_MAY_ALIAS __attribute__ ((__may_alias__)) +#else +# define _GL_ATTRIBUTE_MAY_ALIAS +#endif + +/* _GL_ATTRIBUTE_MAYBE_UNUSED declares that it is not a programming mistake if + the entity is not used. The compiler should not warn if the entity is not + used. */ +/* Applies to: + - function, variable, + - struct, union, struct/union member, + - enumeration, enumeration item, + - typedef, + in C++ also: class. */ +/* In C++ and C2x, this is spelled [[__maybe_unused__]]. + GCC's syntax is __attribute__ ((__unused__)). + clang supports both syntaxes. */ +#if _GL_HAS_C_ATTRIBUTE (maybe_unused) +# define _GL_ATTRIBUTE_MAYBE_UNUSED [[__maybe_unused__]] +#else +# define _GL_ATTRIBUTE_MAYBE_UNUSED _GL_ATTRIBUTE_UNUSED +#endif +/* Alternative spelling of this macro, for convenience. */ +#define _GL_UNUSED _GL_ATTRIBUTE_MAYBE_UNUSED +/* Earlier spellings of this macro. */ +#define _UNUSED_PARAMETER_ _GL_ATTRIBUTE_MAYBE_UNUSED + +/* _GL_ATTRIBUTE_NODISCARD declares that the caller of the function should not + discard the return value. The compiler may warn if the caller does not use + the return value, unless the caller uses something like ignore_value. */ +/* Applies to: function, enumeration, class. */ +#if _GL_HAS_C_ATTRIBUTE (nodiscard) +# define _GL_ATTRIBUTE_NODISCARD [[__nodiscard__]] +#elif _GL_HAS_ATTRIBUTE (warn_unused_result) +# define _GL_ATTRIBUTE_NODISCARD __attribute__ ((__warn_unused_result__)) +#else +# define _GL_ATTRIBUTE_NODISCARD +#endif + +/* _GL_ATTRIBUTE_NOINLINE tells that the compiler should not inline the + function. */ +/* Applies to: functions. */ +#if _GL_HAS_ATTRIBUTE (noinline) +# define _GL_ATTRIBUTE_NOINLINE __attribute__ ((__noinline__)) +#else +# define _GL_ATTRIBUTE_NOINLINE +#endif + +/* _GL_ATTRIBUTE_NONNULL ((N1, N2,...)) declares that the arguments N1, N2,... + must not be NULL. + _GL_ATTRIBUTE_NONNULL () declares that all pointer arguments must not be + null. */ +/* Applies to: functions. */ +#if _GL_HAS_ATTRIBUTE (nonnull) +# define _GL_ATTRIBUTE_NONNULL(args) __attribute__ ((__nonnull__ args)) +#else +# define _GL_ATTRIBUTE_NONNULL(args) +#endif + +/* _GL_ATTRIBUTE_NONSTRING declares that the contents of a character array is + not meant to be NUL-terminated. */ +/* Applies to: struct/union members and variables that are arrays of element + type '[[un]signed] char'. */ +#if _GL_HAS_ATTRIBUTE (nonstring) +# define _GL_ATTRIBUTE_NONSTRING __attribute__ ((__nonstring__)) +#else +# define _GL_ATTRIBUTE_NONSTRING +#endif + +/* There is no _GL_ATTRIBUTE_NORETURN; use _Noreturn instead. */ + +/* _GL_ATTRIBUTE_NOTHROW declares that the function does not throw exceptions. + */ +/* Applies to: functions. */ +#if _GL_HAS_ATTRIBUTE (nothrow) && !defined __cplusplus +# define _GL_ATTRIBUTE_NOTHROW __attribute__ ((__nothrow__)) +#else +# define _GL_ATTRIBUTE_NOTHROW +#endif + +/* _GL_ATTRIBUTE_PACKED declares: + For struct members: The member has the smallest possible alignment. + For struct, union, class: All members have the smallest possible alignment, + minimizing the memory required. */ +/* Applies to: struct members, struct, union, + in C++ also: class. */ +#if _GL_HAS_ATTRIBUTE (packed) +# define _GL_ATTRIBUTE_PACKED __attribute__ ((__packed__)) +#else +# define _GL_ATTRIBUTE_PACKED +#endif + +/* _GL_ATTRIBUTE_PURE declares that It is OK for a compiler to omit duplicate + calls to the function with the same arguments if observable state is not + changed between calls. + This attribute is safe for a function that does not affect + observable state, and always returns exactly once. + (This attribute is looser than _GL_ATTRIBUTE_CONST.) */ +/* Applies to: functions. */ +#if _GL_HAS_ATTRIBUTE (pure) +# define _GL_ATTRIBUTE_PURE __attribute__ ((__pure__)) +#else +# define _GL_ATTRIBUTE_PURE +#endif + +/* _GL_ATTRIBUTE_RETURNS_NONNULL declares that the function's return value is + a non-NULL pointer. */ +/* Applies to: functions. */ +#if _GL_HAS_ATTRIBUTE (returns_nonnull) +# define _GL_ATTRIBUTE_RETURNS_NONNULL __attribute__ ((__returns_nonnull__)) +#else +# define _GL_ATTRIBUTE_RETURNS_NONNULL +#endif + +/* _GL_ATTRIBUTE_SENTINEL(pos) declares that the variadic function expects a + trailing NULL argument. + _GL_ATTRIBUTE_SENTINEL () - The last argument is NULL (requires C99). + _GL_ATTRIBUTE_SENTINEL ((N)) - The (N+1)st argument from the end is NULL. */ +/* Applies to: functions. */ +#if _GL_HAS_ATTRIBUTE (sentinel) +# define _GL_ATTRIBUTE_SENTINEL(pos) __attribute__ ((__sentinel__ pos)) +#else +# define _GL_ATTRIBUTE_SENTINEL(pos) +#endif + +/* A helper macro. Don't use it directly. */ +#if _GL_HAS_ATTRIBUTE (unused) +# define _GL_ATTRIBUTE_UNUSED __attribute__ ((__unused__)) +#else +# define _GL_ATTRIBUTE_UNUSED +#endif + + +/* _GL_UNUSED_LABEL; declares that it is not a programming mistake if the + immediately preceding label is not used. The compiler should not warn + if the label is not used. */ +/* Applies to: label (both in C and C++). */ +/* Note that g++ < 4.5 does not support the '__attribute__ ((__unused__)) ;' + syntax. But clang does. */ +#if !(defined __cplusplus && !_GL_GNUC_PREREQ (4, 5)) || defined __clang__ +# define _GL_UNUSED_LABEL _GL_ATTRIBUTE_UNUSED +#else +# define _GL_UNUSED_LABEL +#endif + + +/* Define to `int' if doesn't define. */ +/* #undef gid_t */ + +/* Work around a bug in Apple GCC 4.0.1 build 5465: In C99 mode, it supports + the ISO C 99 semantics of 'extern inline' (unlike the GNU C semantics of + earlier versions), but does not display it by setting __GNUC_STDC_INLINE__. + __APPLE__ && __MACH__ test for Mac OS X. + __APPLE_CC__ tests for the Apple compiler and its version. + __STDC_VERSION__ tests for the C99 mode. */ +#if defined __APPLE__ && defined __MACH__ && __APPLE_CC__ >= 5465 && !defined __cplusplus && __STDC_VERSION__ >= 199901L && !defined __GNUC_STDC_INLINE__ +# define __GNUC_STDC_INLINE__ 1 +#endif + +/* Define to a type if does not define. */ +/* #undef mbstate_t */ + +/* _GL_CMP (n1, n2) performs a three-valued comparison on n1 vs. n2, where + n1 and n2 are expressions without side effects, that evaluate to real + numbers (excluding NaN). + It returns + 1 if n1 > n2 + 0 if n1 == n2 + -1 if n1 < n2 + The naïve code (n1 > n2 ? 1 : n1 < n2 ? -1 : 0) produces a conditional + jump with nearly all GCC versions up to GCC 10. + This variant (n1 < n2 ? -1 : n1 > n2) produces a conditional with many + GCC versions up to GCC 9. + The better code (n1 > n2) - (n1 < n2) from Hacker's Delight § 2-9 + avoids conditional jumps in all GCC versions >= 3.4. */ +#define _GL_CMP(n1, n2) (((n1) > (n2)) - ((n1) < (n2))) + + +/* Define to `int' if does not define. */ +/* #undef mode_t */ + +/* Define to the type of st_nlink in struct stat, or a supertype. */ +/* #undef nlink_t */ + +/* Define as a signed integer type capable of holding a process identifier. */ +/* #undef pid_t */ + +/* Define to the equivalent of the C99 'restrict' keyword, or to + nothing if this is not supported. Do not define if restrict is + supported only directly. */ +#define restrict __restrict__ +/* Work around a bug in older versions of Sun C++, which did not + #define __restrict__ or support _Restrict or __restrict__ + even though the corresponding Sun C compiler ended up with + "#define restrict _Restrict" or "#define restrict __restrict__" + in the previous line. This workaround can be removed once + we assume Oracle Developer Studio 12.5 (2016) or later. */ +#if defined __SUNPRO_CC && !defined __RESTRICT && !defined __restrict__ +# define _Restrict +# define __restrict__ +#endif + +/* Define to `unsigned int' if does not define. */ +/* #undef size_t */ + +/* Define as a signed type of the same size as size_t. */ +/* #undef ssize_t */ + +/* Define to `int' if doesn't define. */ +/* #undef uid_t */ + + + /* This definition is a duplicate of the one in unitypes.h. + It is here so that we can cope with an older version of unitypes.h + that does not contain this definition and that is pre-installed among + the public header files. */ + # if defined __restrict \ + || 2 < __GNUC__ + (95 <= __GNUC_MINOR__) \ + || __clang_major__ >= 3 + # define _UC_RESTRICT __restrict + # elif 199901L <= __STDC_VERSION__ || defined restrict + # define _UC_RESTRICT restrict + # else + # define _UC_RESTRICT + # endif + + + +/* On Windows, variables that may be in a DLL must be marked specially. */ +#if defined _MSC_VER && defined _DLL +# define DLL_VARIABLE __declspec (dllimport) +#else +# define DLL_VARIABLE +#endif + diff --git a/config.log b/config.log new file mode 100644 index 0000000..a249c3b --- /dev/null +++ b/config.log @@ -0,0 +1,8915 @@ +This file contains any messages produced by compilers while +running configure, to aid debugging if configure makes a mistake. + +It was created by libiconv configure 1.17, which was +generated by GNU Autoconf 2.71. Invocation command line was + + $ ./configure --prefix=/Users/yangzuhao/Downloads/libiconv-1.17/output + +## --------- ## +## Platform. ## +## --------- ## + +hostname = Yaha-baidu +uname -m = arm64 +uname -r = 22.4.0 +uname -s = Darwin +uname -v = Darwin Kernel Version 22.4.0: Mon Mar 6 21:00:41 PST 2023; root:xnu-8796.101.5~3/RELEASE_ARM64_T8103 + +/usr/bin/uname -p = arm +/bin/uname -X = unknown + +/bin/arch = unknown +/usr/bin/arch -k = unknown +/usr/convex/getsysinfo = unknown +/usr/bin/hostinfo = Mach kernel version: + Darwin Kernel Version 22.4.0: Mon Mar 6 21:00:41 PST 2023; root:xnu-8796.101.5~3/RELEASE_ARM64_T8103 +Kernel configured for up to 8 processors. +8 processors are physically available. +8 processors are logically available. +Processor type: arm64e (ARM64E) +Processors active: 0 1 2 3 4 5 6 7 +Primary memory available: 16.00 gigabytes +Default processor set: 464 tasks, 3479 threads, 8 processors +Load average: 3.66, Mach factor: 4.34 +/bin/machine = unknown +/usr/bin/oslevel = unknown +/bin/universe = unknown + +PATH: /Users/yangzuhao/.icafe/bin/ +PATH: HOME/Data/tools/ +PATH: /Users/yangzuhao/Data/code/gopath/bin/ +PATH: /Users/yangzuhao/Data/go-env/go1.18.5/bin/ +PATH: /opt/homebrew/bin/ +PATH: /opt/homebrew/sbin/ +PATH: /usr/local/bin/ +PATH: /System/Cryptexes/App/usr/bin/ +PATH: /usr/bin/ +PATH: /bin/ +PATH: /usr/sbin/ +PATH: /sbin/ +PATH: /Library/Apple/usr/bin/ +PATH: /var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/local/bin/ +PATH: /var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/bin/ +PATH: /var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/appleinternal/bin/ +PATH: /Users/yangzuhao/.otm/ +PATH: /Users/yangzuhao/Data/dev-env/flutter/bin/ + + +## ----------- ## +## Core tests. ## +## ----------- ## + +configure:3775: looking for aux files: config.rpath ltmain.sh config.guess config.sub compile missing install-sh +configure:3788: trying ./build-aux/ +configure:3817: ./build-aux/config.rpath found +configure:3817: ./build-aux/ltmain.sh found +configure:3817: ./build-aux/config.guess found +configure:3817: ./build-aux/config.sub found +configure:3817: ./build-aux/compile found +configure:3817: ./build-aux/missing found +configure:3799: ./build-aux/install-sh found +configure:3948: checking for a BSD-compatible install +configure:4021: result: /opt/homebrew/bin/ginstall -c +configure:4032: checking whether build environment is sane +configure:4087: result: yes +configure:4246: checking for a race-free mkdir -p +configure:4290: result: /opt/homebrew/bin/gmkdir -p +configure:4297: checking for gawk +configure:4318: found /opt/homebrew/bin/gawk +configure:4329: result: gawk +configure:4340: checking whether make sets $(MAKE) +configure:4363: result: yes +configure:4393: checking whether make supports nested variables +configure:4411: result: yes +configure:4549: checking whether make sets $(MAKE) +configure:4572: result: yes +configure:4645: checking for gcc +configure:4666: found /usr/bin/gcc +configure:4677: result: gcc +configure:5030: checking for C compiler version +configure:5039: gcc --version >&5 +Apple clang version 14.0.3 (clang-1403.0.22.14.1) +Target: arm64-apple-darwin22.4.0 +Thread model: posix +InstalledDir: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin +configure:5050: $? = 0 +configure:5039: gcc -v >&5 +Apple clang version 14.0.3 (clang-1403.0.22.14.1) +Target: arm64-apple-darwin22.4.0 +Thread model: posix +InstalledDir: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin +configure:5050: $? = 0 +configure:5039: gcc -V >&5 +clang: error: argument to '-V' is missing (expected 1 value) +clang: error: no input files +configure:5050: $? = 1 +configure:5039: gcc -qversion >&5 +clang: error: unknown argument '-qversion'; did you mean '--version'? +clang: error: no input files +configure:5050: $? = 1 +configure:5039: gcc -version >&5 +clang: error: unknown argument '-version'; did you mean '--version'? +clang: error: no input files +configure:5050: $? = 1 +configure:5070: checking whether the C compiler works +configure:5092: gcc conftest.c >&5 +configure:5096: $? = 0 +configure:5146: result: yes +configure:5149: checking for C compiler default output file name +configure:5151: result: a.out +configure:5157: checking for suffix of executables +configure:5164: gcc -o conftest conftest.c >&5 +configure:5168: $? = 0 +configure:5191: result: +configure:5213: checking whether we are cross compiling +configure:5221: gcc -o conftest conftest.c >&5 +configure:5225: $? = 0 +configure:5232: ./conftest +configure:5236: $? = 0 +configure:5251: result: no +configure:5256: checking for suffix of object files +configure:5279: gcc -c conftest.c >&5 +configure:5283: $? = 0 +configure:5305: result: o +configure:5309: checking whether the compiler supports GNU C +configure:5329: gcc -c conftest.c >&5 +configure:5329: $? = 0 +configure:5339: result: yes +configure:5350: checking whether gcc accepts -g +configure:5371: gcc -c -g conftest.c >&5 +configure:5371: $? = 0 +configure:5415: result: yes +configure:5435: checking for gcc option to enable C11 features +configure:5450: gcc -c -g -O2 conftest.c >&5 +conftest.c:25:14: warning: a function declaration without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype] +static char *e (p, i) + ^ +1 warning generated. +configure:5450: $? = 0 +configure:5468: result: none needed +configure:5584: checking whether gcc understands -c and -o together +configure:5607: gcc -c conftest.c -o conftest2.o +configure:5610: $? = 0 +configure:5607: gcc -c conftest.c -o conftest2.o +configure:5610: $? = 0 +configure:5622: result: yes +configure:5640: checking whether the compiler is clang +configure:5662: gcc -c -g -O2 conftest.c >&5 +conftest.c:13:12: error: unknown type name 'barfbarf' + barfbarf + ^ +1 error generated. +configure:5662: $? = 1 +configure: failed program was: +| /* confdefs.h */ +| #define PACKAGE_NAME "libiconv" +| #define PACKAGE_TARNAME "libiconv" +| #define PACKAGE_VERSION "1.17" +| #define PACKAGE_STRING "libiconv 1.17" +| #define PACKAGE_BUGREPORT "" +| #define PACKAGE_URL "" +| #define PACKAGE "libiconv" +| #define VERSION "1.17" +| /* end confdefs.h. */ +| +| #ifdef __clang__ +| barfbarf +| #endif +| +| int +| main (void) +| { +| +| ; +| return 0; +| } +| +configure:5671: result: yes +configure:5675: checking for compiler option needed when checking for declarations +configure:5695: gcc -c -g -O2 conftest.c >&5 -Werror=implicit-function-declaration +configure:5695: $? = 0 +configure:5708: result: -Werror=implicit-function-declaration +configure:5720: checking whether make supports the include directive +configure:5735: make -f confmf.GNU && cat confinc.out +this is the am__doit target +configure:5738: $? = 0 +configure:5757: result: yes (GNU style) +configure:5783: checking dependency style of gcc +configure:5895: result: none +configure:5915: checking how to run the C preprocessor +configure:5941: gcc -E conftest.c +configure:5941: $? = 0 +configure:5956: gcc -E conftest.c +conftest.c:11:10: fatal error: 'ac_nonexistent.h' file not found +#include + ^~~~~~~~~~~~~~~~~~ +1 error generated. +configure:5956: $? = 1 +configure: failed program was: +| /* confdefs.h */ +| #define PACKAGE_NAME "libiconv" +| #define PACKAGE_TARNAME "libiconv" +| #define PACKAGE_VERSION "1.17" +| #define PACKAGE_STRING "libiconv 1.17" +| #define PACKAGE_BUGREPORT "" +| #define PACKAGE_URL "" +| #define PACKAGE "libiconv" +| #define VERSION "1.17" +| /* end confdefs.h. */ +| #include +configure:5983: result: gcc -E +configure:5997: gcc -E conftest.c +configure:5997: $? = 0 +configure:6012: gcc -E conftest.c +conftest.c:11:10: fatal error: 'ac_nonexistent.h' file not found +#include + ^~~~~~~~~~~~~~~~~~ +1 error generated. +configure:6012: $? = 1 +configure: failed program was: +| /* confdefs.h */ +| #define PACKAGE_NAME "libiconv" +| #define PACKAGE_TARNAME "libiconv" +| #define PACKAGE_VERSION "1.17" +| #define PACKAGE_STRING "libiconv 1.17" +| #define PACKAGE_BUGREPORT "" +| #define PACKAGE_URL "" +| #define PACKAGE "libiconv" +| #define VERSION "1.17" +| /* end confdefs.h. */ +| #include +configure:6046: checking for strip +configure:6069: found /usr/bin/strip +configure:6082: result: /usr/bin/strip +configure:6206: checking build system type +configure:6221: result: aarch64-apple-darwin22.4.0 +configure:6241: checking host system type +configure:6255: result: aarch64-apple-darwin22.4.0 +configure:6288: checking for stdio.h +configure:6288: gcc -c -g -O2 conftest.c >&5 +configure:6288: $? = 0 +configure:6288: result: yes +configure:6288: checking for stdlib.h +configure:6288: gcc -c -g -O2 conftest.c >&5 +configure:6288: $? = 0 +configure:6288: result: yes +configure:6288: checking for string.h +configure:6288: gcc -c -g -O2 conftest.c >&5 +configure:6288: $? = 0 +configure:6288: result: yes +configure:6288: checking for inttypes.h +configure:6288: gcc -c -g -O2 conftest.c >&5 +configure:6288: $? = 0 +configure:6288: result: yes +configure:6288: checking for stdint.h +configure:6288: gcc -c -g -O2 conftest.c >&5 +configure:6288: $? = 0 +configure:6288: result: yes +configure:6288: checking for strings.h +configure:6288: gcc -c -g -O2 conftest.c >&5 +configure:6288: $? = 0 +configure:6288: result: yes +configure:6288: checking for sys/stat.h +configure:6288: gcc -c -g -O2 conftest.c >&5 +configure:6288: $? = 0 +configure:6288: result: yes +configure:6288: checking for sys/types.h +configure:6288: gcc -c -g -O2 conftest.c >&5 +configure:6288: $? = 0 +configure:6288: result: yes +configure:6288: checking for unistd.h +configure:6288: gcc -c -g -O2 conftest.c >&5 +configure:6288: $? = 0 +configure:6288: result: yes +configure:6288: checking for wchar.h +configure:6288: gcc -c -g -O2 conftest.c >&5 +configure:6288: $? = 0 +configure:6288: result: yes +configure:6288: checking for minix/config.h +configure:6288: gcc -c -g -O2 conftest.c >&5 +conftest.c:49:10: fatal error: 'minix/config.h' file not found +#include + ^~~~~~~~~~~~~~~~ +1 error generated. +configure:6288: $? = 1 +configure: failed program was: +| /* confdefs.h */ +| #define PACKAGE_NAME "libiconv" +| #define PACKAGE_TARNAME "libiconv" +| #define PACKAGE_VERSION "1.17" +| #define PACKAGE_STRING "libiconv 1.17" +| #define PACKAGE_BUGREPORT "" +| #define PACKAGE_URL "" +| #define PACKAGE "libiconv" +| #define VERSION "1.17" +| #define HAVE_STDIO_H 1 +| #define HAVE_STDLIB_H 1 +| #define HAVE_STRING_H 1 +| #define HAVE_INTTYPES_H 1 +| #define HAVE_STDINT_H 1 +| #define HAVE_STRINGS_H 1 +| #define HAVE_SYS_STAT_H 1 +| #define HAVE_SYS_TYPES_H 1 +| #define HAVE_UNISTD_H 1 +| #define HAVE_WCHAR_H 1 +| /* end confdefs.h. */ +| #include +| #ifdef HAVE_STDIO_H +| # include +| #endif +| #ifdef HAVE_STDLIB_H +| # include +| #endif +| #ifdef HAVE_STRING_H +| # include +| #endif +| #ifdef HAVE_INTTYPES_H +| # include +| #endif +| #ifdef HAVE_STDINT_H +| # include +| #endif +| #ifdef HAVE_STRINGS_H +| # include +| #endif +| #ifdef HAVE_SYS_TYPES_H +| # include +| #endif +| #ifdef HAVE_SYS_STAT_H +| # include +| #endif +| #ifdef HAVE_UNISTD_H +| # include +| #endif +| #include +configure:6288: result: no +configure:6288: checking for sys/param.h +configure:6288: gcc -c -g -O2 conftest.c >&5 +configure:6288: $? = 0 +configure:6288: result: yes +configure:6288: checking for sys/socket.h +configure:6288: gcc -c -g -O2 conftest.c >&5 +configure:6288: $? = 0 +configure:6288: result: yes +configure:6288: checking for limits.h +configure:6288: gcc -c -g -O2 conftest.c >&5 +configure:6288: $? = 0 +configure:6288: result: yes +configure:6288: checking for sys/time.h +configure:6288: gcc -c -g -O2 conftest.c >&5 +configure:6288: $? = 0 +configure:6288: result: yes +configure:6288: checking for features.h +configure:6288: gcc -c -g -O2 conftest.c >&5 +conftest.c:53:10: fatal error: 'features.h' file not found +#include + ^~~~~~~~~~~~ +1 error generated. +configure:6288: $? = 1 +configure: failed program was: +| /* confdefs.h */ +| #define PACKAGE_NAME "libiconv" +| #define PACKAGE_TARNAME "libiconv" +| #define PACKAGE_VERSION "1.17" +| #define PACKAGE_STRING "libiconv 1.17" +| #define PACKAGE_BUGREPORT "" +| #define PACKAGE_URL "" +| #define PACKAGE "libiconv" +| #define VERSION "1.17" +| #define HAVE_STDIO_H 1 +| #define HAVE_STDLIB_H 1 +| #define HAVE_STRING_H 1 +| #define HAVE_INTTYPES_H 1 +| #define HAVE_STDINT_H 1 +| #define HAVE_STRINGS_H 1 +| #define HAVE_SYS_STAT_H 1 +| #define HAVE_SYS_TYPES_H 1 +| #define HAVE_UNISTD_H 1 +| #define HAVE_WCHAR_H 1 +| #define HAVE_SYS_PARAM_H 1 +| #define HAVE_SYS_SOCKET_H 1 +| #define HAVE_LIMITS_H 1 +| #define HAVE_SYS_TIME_H 1 +| /* end confdefs.h. */ +| #include +| #ifdef HAVE_STDIO_H +| # include +| #endif +| #ifdef HAVE_STDLIB_H +| # include +| #endif +| #ifdef HAVE_STRING_H +| # include +| #endif +| #ifdef HAVE_INTTYPES_H +| # include +| #endif +| #ifdef HAVE_STDINT_H +| # include +| #endif +| #ifdef HAVE_STRINGS_H +| # include +| #endif +| #ifdef HAVE_SYS_TYPES_H +| # include +| #endif +| #ifdef HAVE_SYS_STAT_H +| # include +| #endif +| #ifdef HAVE_UNISTD_H +| # include +| #endif +| #include +configure:6288: result: no +configure:6288: checking for crtdefs.h +configure:6288: gcc -c -g -O2 conftest.c >&5 +conftest.c:53:10: fatal error: 'crtdefs.h' file not found +#include + ^~~~~~~~~~~ +1 error generated. +configure:6288: $? = 1 +configure: failed program was: +| /* confdefs.h */ +| #define PACKAGE_NAME "libiconv" +| #define PACKAGE_TARNAME "libiconv" +| #define PACKAGE_VERSION "1.17" +| #define PACKAGE_STRING "libiconv 1.17" +| #define PACKAGE_BUGREPORT "" +| #define PACKAGE_URL "" +| #define PACKAGE "libiconv" +| #define VERSION "1.17" +| #define HAVE_STDIO_H 1 +| #define HAVE_STDLIB_H 1 +| #define HAVE_STRING_H 1 +| #define HAVE_INTTYPES_H 1 +| #define HAVE_STDINT_H 1 +| #define HAVE_STRINGS_H 1 +| #define HAVE_SYS_STAT_H 1 +| #define HAVE_SYS_TYPES_H 1 +| #define HAVE_UNISTD_H 1 +| #define HAVE_WCHAR_H 1 +| #define HAVE_SYS_PARAM_H 1 +| #define HAVE_SYS_SOCKET_H 1 +| #define HAVE_LIMITS_H 1 +| #define HAVE_SYS_TIME_H 1 +| /* end confdefs.h. */ +| #include +| #ifdef HAVE_STDIO_H +| # include +| #endif +| #ifdef HAVE_STDLIB_H +| # include +| #endif +| #ifdef HAVE_STRING_H +| # include +| #endif +| #ifdef HAVE_INTTYPES_H +| # include +| #endif +| #ifdef HAVE_STDINT_H +| # include +| #endif +| #ifdef HAVE_STRINGS_H +| # include +| #endif +| #ifdef HAVE_SYS_TYPES_H +| # include +| #endif +| #ifdef HAVE_SYS_STAT_H +| # include +| #endif +| #ifdef HAVE_UNISTD_H +| # include +| #endif +| #include +configure:6288: result: no +configure:6319: checking whether it is safe to define __EXTENSIONS__ +configure:6338: gcc -c -g -O2 conftest.c >&5 +configure:6338: $? = 0 +configure:6346: result: yes +configure:6349: checking whether _XOPEN_SOURCE should be defined +configure:6371: gcc -c -g -O2 conftest.c >&5 +configure:6371: $? = 0 +configure:6398: result: no +configure:6467: checking for grep that handles long lines and -e +configure:6531: result: /usr/bin/grep +configure:6536: checking for egrep +configure:6604: result: /usr/bin/grep -E +configure:6612: checking for Minix Amsterdam compiler +configure:6638: result: no +configure:6700: checking for ar +configure:6721: found /usr/bin/ar +configure:6732: result: ar +configure:6812: checking for ranlib +configure:6833: found /usr/bin/ranlib +configure:6844: result: ranlib +configure:6878: checking for special C compiler options needed for large files +configure:6926: result: no +configure:6932: checking for _FILE_OFFSET_BITS value needed for large files +configure:6958: gcc -c -g -O2 conftest.c >&5 +configure:6958: $? = 0 +configure:6993: result: no +configure:7368: checking how to print strings +configure:7395: result: printf +configure:7416: checking for a sed that does not truncate output +configure:7486: result: /usr/bin/sed +configure:7504: checking for fgrep +configure:7572: result: /usr/bin/grep -F +configure:7608: checking for ld used by gcc +configure:7676: result: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ld +configure:7683: checking if the linker (/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ld) is GNU ld +configure:7699: result: no +configure:7711: checking for BSD- or MS-compatible name lister (nm) +configure:7766: result: /usr/bin/nm -B +configure:7906: checking the name lister (/usr/bin/nm -B) interface +configure:7914: gcc -c -g -O2 conftest.c >&5 +configure:7917: /usr/bin/nm -B "conftest.o" +configure:7920: output +0000000000000254 S _some_variable +0000000000000000 t ltmp0 +0000000000000254 s ltmp1 +configure:7927: result: BSD nm +configure:7930: checking whether ln -s works +configure:7934: result: yes +configure:7942: checking the maximum length of command line arguments +configure:8074: result: 786432 +configure:8122: checking how to convert aarch64-apple-darwin22.4.0 file names to aarch64-apple-darwin22.4.0 format +configure:8163: result: func_convert_file_noop +configure:8170: checking how to convert aarch64-apple-darwin22.4.0 file names to toolchain format +configure:8191: result: func_convert_file_noop +configure:8198: checking for /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ld option to reload object files +configure:8206: result: -r +configure:8285: checking for file +configure:8306: found /usr/bin/file +configure:8317: result: file +configure:8393: checking for objdump +configure:8414: found /usr/bin/objdump +configure:8425: result: objdump +configure:8454: checking how to recognize dependent libraries +configure:8655: result: pass_all +configure:8745: checking for dlltool +configure:8780: result: no +configure:8807: checking how to associate runtime and link libraries +configure:8835: result: printf %s\n +configure:8985: checking for archiver @FILE support +configure:9003: gcc -c -g -O2 conftest.c >&5 +configure:9003: $? = 0 +configure:9007: ar cr libconftest.a @conftest.lst >&5 +ar: @conftest.lst: No such file or directory +configure:9010: $? = 1 +configure:9030: result: no +configure:9093: checking for strip +configure:9125: result: /usr/bin/strip +configure:9202: checking for ranlib +configure:9234: result: ranlib +configure:9336: checking command to parse /usr/bin/nm -B output from gcc object +configure:9490: gcc -c -g -O2 conftest.c >&5 +configure:9493: $? = 0 +configure:9497: /usr/bin/nm -B conftest.o \| /usr/bin/sed -n -e 's/^.*[ ]\([ABCDGIRSTW][ABCDGIRSTW]*\)[ ][ ]*\([_A-Za-z][_A-Za-z0-9]*\)$/\1 \2 \2/p' | /usr/bin/sed '/ __gnu_lto/d' \> conftest.nm +configure:9500: $? = 0 +cannot find nm_test_var in conftest.nm +configure:9490: gcc -c -g -O2 conftest.c >&5 +configure:9493: $? = 0 +configure:9497: /usr/bin/nm -B conftest.o \| /usr/bin/sed -n -e 's/^.*[ ]\([ABCDGIRSTW][ABCDGIRSTW]*\)[ ][ ]*_\([_A-Za-z][_A-Za-z0-9]*\)$/\1 _\2 \2/p' | /usr/bin/sed '/ __gnu_lto/d' \> conftest.nm +configure:9500: $? = 0 +configure:9566: gcc -o conftest -g -O2 conftest.c conftstm.o >&5 +warning: (arm64) could not find object file symbol for symbol _main +configure:9569: $? = 0 +configure:9607: result: ok +configure:9654: checking for sysroot +configure:9685: result: no +configure:9692: checking for a working dd +configure:9736: result: /bin/dd +configure:9740: checking how to truncate binary pipes +configure:9756: result: /bin/dd bs=4096 count=1 +configure:10093: checking for mt +configure:10128: result: no +configure:10148: checking if : is a manifest tool +configure:10155: : '-?' +configure:10163: result: no +configure:10224: checking for dsymutil +configure:10245: found /usr/bin/dsymutil +configure:10256: result: dsymutil +configure:10326: checking for nmedit +configure:10347: found /usr/bin/nmedit +configure:10358: result: nmedit +configure:10428: checking for lipo +configure:10449: found /usr/bin/lipo +configure:10460: result: lipo +configure:10530: checking for otool +configure:10551: found /usr/bin/otool +configure:10562: result: otool +configure:10632: checking for otool64 +configure:10667: result: no +configure:10712: checking for -single_module linker flag +gcc -g -O2 -o libconftest.dylib -dynamiclib -Wl,-single_module conftest.c +configure:10746: result: yes +configure:10749: checking for -exported_symbols_list linker flag +configure:10770: gcc -o conftest -g -O2 -Wl,-exported_symbols_list,conftest.sym conftest.c >&5 +configure:10770: $? = 0 +configure:10781: result: yes +configure:10784: checking for -force_load linker flag +gcc -g -O2 -c -o conftest.o conftest.c +ar cr libconftest.a conftest.o +ranlib libconftest.a +gcc -g -O2 -o conftest conftest.c -Wl,-force_load,./libconftest.a +configure:10817: result: yes +configure:10884: checking for dlfcn.h +configure:10884: gcc -c -g -O2 conftest.c >&5 +configure:10884: $? = 0 +configure:10884: result: yes +configure:11470: checking for objdir +configure:11486: result: .libs +configure:11750: checking if gcc supports -fno-rtti -fno-exceptions +configure:11769: gcc -c -g -O2 -fno-rtti -fno-exceptions conftest.c >&5 +configure:11773: $? = 0 +configure:11786: result: yes +configure:12144: checking for gcc option to produce PIC +configure:12152: result: -fno-common -DPIC +configure:12160: checking if gcc PIC flag -fno-common -DPIC works +configure:12179: gcc -c -g -O2 -fno-common -DPIC -DPIC conftest.c >&5 +configure:12183: $? = 0 +configure:12196: result: yes +configure:12225: checking if gcc static flag -static works +configure:12254: result: no +configure:12269: checking if gcc supports -c -o file.o +configure:12291: gcc -c -g -O2 -o out/conftest2.o conftest.c >&5 +configure:12295: $? = 0 +configure:12317: result: yes +configure:12325: checking if gcc supports -c -o file.o +configure:12373: result: yes +configure:12406: checking whether the gcc linker (/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ld) supports shared libraries +configure:13674: result: yes +configure:13915: checking dynamic linker characteristics +configure:14736: result: darwin22.4.0 dyld +configure:14858: checking how to hardcode library paths into programs +configure:14883: result: immediate +configure:15435: checking whether stripping libraries is possible +configure:15452: result: yes +configure:15486: checking if libtool supports shared libraries +configure:15488: result: yes +configure:15491: checking whether to build shared libraries +configure:15516: result: yes +configure:15519: checking whether to build static libraries +configure:15523: result: no +configure:15584: checking for ld +configure:15715: result: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ld +configure:15722: checking if the linker (/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ld) is GNU ld +configure:15738: result: no +configure:15744: checking for shared library path variable +configure:15758: result: DYLD_LIBRARY_PATH +configure:15763: checking whether to activate relocatable installation +configure:15779: result: no +configure:15949: checking how to copy files +configure:15966: result: cp -p +configure:15970: checking how to make hard links +configure:15987: result: ln +configure:15991: checking whether ln -s works +configure:15995: result: yes +configure:16056: checking for windres +configure:16091: result: no +configure:16305: checking whether the -Werror option is usable +configure:16324: gcc -c -g -O2 -Werror conftest.c >&5 +configure:16324: $? = 0 +configure:16334: result: yes +configure:16336: checking for simple visibility declarations +configure:16368: gcc -c -g -O2 -fvisibility=hidden -Werror conftest.c >&5 +configure:16368: $? = 0 +configure:16378: result: yes +configure:16410: checking for shared library run path origin +configure:16424: result: done +configure:16446: checking 32-bit host C ABI +configure:16538: gcc -c -g -O2 conftest.c >&5 +configure:16538: $? = 0 +configure:16709: result: no +configure:16718: checking for ELF binary format +configure:16742: result: no +configure:16794: checking for the common suffixes of directories in the library search path +configure:16863: result: lib,lib,lib +configure:17395: checking for iconv +configure:17420: gcc -o conftest -g -O2 conftest.c >&5 +Undefined symbols for architecture arm64: + "_iconv", referenced from: + _main in conftest-243443.o + "_iconv_close", referenced from: + _main in conftest-243443.o + "_iconv_open", referenced from: + _main in conftest-243443.o +ld: symbol(s) not found for architecture arm64 +clang: error: linker command failed with exit code 1 (use -v to see invocation) +configure:17420: $? = 1 +configure: failed program was: +| /* confdefs.h */ +| #define PACKAGE_NAME "libiconv" +| #define PACKAGE_TARNAME "libiconv" +| #define PACKAGE_VERSION "1.17" +| #define PACKAGE_STRING "libiconv 1.17" +| #define PACKAGE_BUGREPORT "" +| #define PACKAGE_URL "" +| #define PACKAGE "libiconv" +| #define VERSION "1.17" +| #define HAVE_STDIO_H 1 +| #define HAVE_STDLIB_H 1 +| #define HAVE_STRING_H 1 +| #define HAVE_INTTYPES_H 1 +| #define HAVE_STDINT_H 1 +| #define HAVE_STRINGS_H 1 +| #define HAVE_SYS_STAT_H 1 +| #define HAVE_SYS_TYPES_H 1 +| #define HAVE_UNISTD_H 1 +| #define HAVE_WCHAR_H 1 +| #define HAVE_SYS_PARAM_H 1 +| #define HAVE_SYS_SOCKET_H 1 +| #define HAVE_LIMITS_H 1 +| #define HAVE_SYS_TIME_H 1 +| #define STDC_HEADERS 1 +| #define _ALL_SOURCE 1 +| #define _DARWIN_C_SOURCE 1 +| #define _GNU_SOURCE 1 +| #define _HPUX_ALT_XOPEN_SOCKET_API 1 +| #define _NETBSD_SOURCE 1 +| #define _OPENBSD_SOURCE 1 +| #define _POSIX_PTHREAD_SEMANTICS 1 +| #define __STDC_WANT_IEC_60559_ATTRIBS_EXT__ 1 +| #define __STDC_WANT_IEC_60559_BFP_EXT__ 1 +| #define __STDC_WANT_IEC_60559_DFP_EXT__ 1 +| #define __STDC_WANT_IEC_60559_FUNCS_EXT__ 1 +| #define __STDC_WANT_IEC_60559_TYPES_EXT__ 1 +| #define __STDC_WANT_LIB_EXT2__ 1 +| #define __STDC_WANT_MATH_SPEC_FUNCS__ 1 +| #define _TANDEM_SOURCE 1 +| #define __EXTENSIONS__ 1 +| #define HAVE_DLFCN_H 1 +| #define LT_OBJDIR ".libs/" +| #define INSTALLPREFIX "/Users/yangzuhao/Downloads/libiconv-1.17/output" +| #define HAVE_VISIBILITY 1 +| /* end confdefs.h. */ +| +| #include +| #include +| +| int +| main (void) +| { +| iconv_t cd = iconv_open("",""); +| iconv(cd,NULL,NULL,NULL,NULL); +| iconv_close(cd); +| ; +| return 0; +| } +configure:17445: gcc -o conftest -g -O2 conftest.c -liconv >&5 +configure:17445: $? = 0 +configure:17456: result: yes +configure:17459: checking for working iconv +configure:17603: gcc -o conftest -g -O2 conftest.c -liconv >&5 +configure:17603: $? = 0 +configure:17603: ./conftest +configure:17603: $? = 0 +configure:17616: result: yes +configure:17631: checking how to link with libiconv +configure:17633: result: -liconv +configure:17644: checking whether iconv is compatible with its POSIX signature +configure:17669: gcc -c -g -O2 conftest.c >&5 +configure:17669: $? = 0 +configure:17678: result: yes +configure:17694: checking whether NLS is requested +configure:17704: result: yes +configure:17744: checking for msgfmt +configure: trying /opt/homebrew/bin/msgfmt... +0 translated messages. +configure:17777: result: /opt/homebrew/bin/msgfmt +configure:17786: checking for gmsgfmt +configure:17822: result: /opt/homebrew/bin/msgfmt +configure:17867: checking for xgettext +configure: trying /opt/homebrew/bin/xgettext... +/opt/homebrew/bin/xgettext: warning: file '/dev/null' extension '' is unknown; will try C +configure:17900: result: /opt/homebrew/bin/xgettext +configure:17945: checking for msgmerge +configure: trying /opt/homebrew/bin/msgmerge... +configure:17977: result: /opt/homebrew/bin/msgmerge +configure:18025: checking for CFPreferencesCopyAppValue +configure:18044: gcc -o conftest -g -O2 conftest.c -Wl,-framework -Wl,CoreFoundation >&5 +conftest.c:52:37: warning: null passed to a callee that requires a non-null argument [-Wnonnull] +CFPreferencesCopyAppValue(NULL, NULL) + ~~~~ ^ +conftest.c:52:37: warning: null passed to a callee that requires a non-null argument [-Wnonnull] +CFPreferencesCopyAppValue(NULL, NULL) + ~~~~^ +2 warnings generated. +configure:18044: $? = 0 +configure:18054: result: yes +configure:18061: checking for CFLocaleCopyPreferredLanguages +configure:18080: gcc -o conftest -g -O2 conftest.c -Wl,-framework -Wl,CoreFoundation >&5 +configure:18080: $? = 0 +configure:18090: result: yes +configure:18140: checking for GNU gettext in libc +configure:18170: gcc -o conftest -g -O2 conftest.c >&5 +conftest.c:51:10: fatal error: 'libintl.h' file not found +#include + ^~~~~~~~~~~ +1 error generated. +configure:18170: $? = 1 +configure: failed program was: +| /* confdefs.h */ +| #define PACKAGE_NAME "libiconv" +| #define PACKAGE_TARNAME "libiconv" +| #define PACKAGE_VERSION "1.17" +| #define PACKAGE_STRING "libiconv 1.17" +| #define PACKAGE_BUGREPORT "" +| #define PACKAGE_URL "" +| #define PACKAGE "libiconv" +| #define VERSION "1.17" +| #define HAVE_STDIO_H 1 +| #define HAVE_STDLIB_H 1 +| #define HAVE_STRING_H 1 +| #define HAVE_INTTYPES_H 1 +| #define HAVE_STDINT_H 1 +| #define HAVE_STRINGS_H 1 +| #define HAVE_SYS_STAT_H 1 +| #define HAVE_SYS_TYPES_H 1 +| #define HAVE_UNISTD_H 1 +| #define HAVE_WCHAR_H 1 +| #define HAVE_SYS_PARAM_H 1 +| #define HAVE_SYS_SOCKET_H 1 +| #define HAVE_LIMITS_H 1 +| #define HAVE_SYS_TIME_H 1 +| #define STDC_HEADERS 1 +| #define _ALL_SOURCE 1 +| #define _DARWIN_C_SOURCE 1 +| #define _GNU_SOURCE 1 +| #define _HPUX_ALT_XOPEN_SOCKET_API 1 +| #define _NETBSD_SOURCE 1 +| #define _OPENBSD_SOURCE 1 +| #define _POSIX_PTHREAD_SEMANTICS 1 +| #define __STDC_WANT_IEC_60559_ATTRIBS_EXT__ 1 +| #define __STDC_WANT_IEC_60559_BFP_EXT__ 1 +| #define __STDC_WANT_IEC_60559_DFP_EXT__ 1 +| #define __STDC_WANT_IEC_60559_FUNCS_EXT__ 1 +| #define __STDC_WANT_IEC_60559_TYPES_EXT__ 1 +| #define __STDC_WANT_LIB_EXT2__ 1 +| #define __STDC_WANT_MATH_SPEC_FUNCS__ 1 +| #define _TANDEM_SOURCE 1 +| #define __EXTENSIONS__ 1 +| #define HAVE_DLFCN_H 1 +| #define LT_OBJDIR ".libs/" +| #define INSTALLPREFIX "/Users/yangzuhao/Downloads/libiconv-1.17/output" +| #define HAVE_VISIBILITY 1 +| #define HAVE_ICONV 1 +| #define ICONV_CONST +| #define HAVE_CFPREFERENCESCOPYAPPVALUE 1 +| #define HAVE_CFLOCALECOPYPREFERREDLANGUAGES 1 +| /* end confdefs.h. */ +| +| #include +| #ifndef __GNU_GETTEXT_SUPPORTED_REVISION +| extern int _nl_msg_cat_cntr; +| extern int *_nl_domain_bindings; +| #define __GNU_GETTEXT_SYMBOL_EXPRESSION (_nl_msg_cat_cntr + *_nl_domain_bindings) +| #else +| #define __GNU_GETTEXT_SYMBOL_EXPRESSION 0 +| #endif +| +| +| int +| main (void) +| { +| +| bindtextdomain ("", ""); +| return * gettext ("") + * ngettext ("", "", 0) + __GNU_GETTEXT_SYMBOL_EXPRESSION +| +| ; +| return 0; +| } +configure:18180: result: no +configure:18214: checking for iconv +configure:18275: result: yes +configure:18278: checking for working iconv +configure:18435: result: yes +configure:18450: checking how to link with libiconv +configure:18452: result: -liconv +configure:18954: checking for GNU gettext in libintl +configure:18992: gcc -o conftest -g -O2 conftest.c -lintl >&5 +conftest.c:52:10: fatal error: 'libintl.h' file not found +#include + ^~~~~~~~~~~ +1 error generated. +configure:18992: $? = 1 +configure: failed program was: +| /* confdefs.h */ +| #define PACKAGE_NAME "libiconv" +| #define PACKAGE_TARNAME "libiconv" +| #define PACKAGE_VERSION "1.17" +| #define PACKAGE_STRING "libiconv 1.17" +| #define PACKAGE_BUGREPORT "" +| #define PACKAGE_URL "" +| #define PACKAGE "libiconv" +| #define VERSION "1.17" +| #define HAVE_STDIO_H 1 +| #define HAVE_STDLIB_H 1 +| #define HAVE_STRING_H 1 +| #define HAVE_INTTYPES_H 1 +| #define HAVE_STDINT_H 1 +| #define HAVE_STRINGS_H 1 +| #define HAVE_SYS_STAT_H 1 +| #define HAVE_SYS_TYPES_H 1 +| #define HAVE_UNISTD_H 1 +| #define HAVE_WCHAR_H 1 +| #define HAVE_SYS_PARAM_H 1 +| #define HAVE_SYS_SOCKET_H 1 +| #define HAVE_LIMITS_H 1 +| #define HAVE_SYS_TIME_H 1 +| #define STDC_HEADERS 1 +| #define _ALL_SOURCE 1 +| #define _DARWIN_C_SOURCE 1 +| #define _GNU_SOURCE 1 +| #define _HPUX_ALT_XOPEN_SOCKET_API 1 +| #define _NETBSD_SOURCE 1 +| #define _OPENBSD_SOURCE 1 +| #define _POSIX_PTHREAD_SEMANTICS 1 +| #define __STDC_WANT_IEC_60559_ATTRIBS_EXT__ 1 +| #define __STDC_WANT_IEC_60559_BFP_EXT__ 1 +| #define __STDC_WANT_IEC_60559_DFP_EXT__ 1 +| #define __STDC_WANT_IEC_60559_FUNCS_EXT__ 1 +| #define __STDC_WANT_IEC_60559_TYPES_EXT__ 1 +| #define __STDC_WANT_LIB_EXT2__ 1 +| #define __STDC_WANT_MATH_SPEC_FUNCS__ 1 +| #define _TANDEM_SOURCE 1 +| #define __EXTENSIONS__ 1 +| #define HAVE_DLFCN_H 1 +| #define LT_OBJDIR ".libs/" +| #define INSTALLPREFIX "/Users/yangzuhao/Downloads/libiconv-1.17/output" +| #define HAVE_VISIBILITY 1 +| #define HAVE_ICONV 1 +| #define ICONV_CONST +| #define HAVE_CFPREFERENCESCOPYAPPVALUE 1 +| #define HAVE_CFLOCALECOPYPREFERREDLANGUAGES 1 +| #define HAVE_ICONV 1 +| /* end confdefs.h. */ +| +| #include +| #ifndef __GNU_GETTEXT_SUPPORTED_REVISION +| extern int _nl_msg_cat_cntr; +| extern +| #ifdef __cplusplus +| "C" +| #endif +| const char *_nl_expand_alias (const char *); +| #define __GNU_GETTEXT_SYMBOL_EXPRESSION (_nl_msg_cat_cntr + *_nl_expand_alias ("")) +| #else +| #define __GNU_GETTEXT_SYMBOL_EXPRESSION 0 +| #endif +| +| +| int +| main (void) +| { +| +| bindtextdomain ("", ""); +| return * gettext ("") + * ngettext ("", "", 0) + __GNU_GETTEXT_SYMBOL_EXPRESSION +| +| ; +| return 0; +| } +configure:19030: gcc -o conftest -g -O2 conftest.c -lintl -liconv >&5 +conftest.c:52:10: fatal error: 'libintl.h' file not found +#include + ^~~~~~~~~~~ +1 error generated. +configure:19030: $? = 1 +configure: failed program was: +| /* confdefs.h */ +| #define PACKAGE_NAME "libiconv" +| #define PACKAGE_TARNAME "libiconv" +| #define PACKAGE_VERSION "1.17" +| #define PACKAGE_STRING "libiconv 1.17" +| #define PACKAGE_BUGREPORT "" +| #define PACKAGE_URL "" +| #define PACKAGE "libiconv" +| #define VERSION "1.17" +| #define HAVE_STDIO_H 1 +| #define HAVE_STDLIB_H 1 +| #define HAVE_STRING_H 1 +| #define HAVE_INTTYPES_H 1 +| #define HAVE_STDINT_H 1 +| #define HAVE_STRINGS_H 1 +| #define HAVE_SYS_STAT_H 1 +| #define HAVE_SYS_TYPES_H 1 +| #define HAVE_UNISTD_H 1 +| #define HAVE_WCHAR_H 1 +| #define HAVE_SYS_PARAM_H 1 +| #define HAVE_SYS_SOCKET_H 1 +| #define HAVE_LIMITS_H 1 +| #define HAVE_SYS_TIME_H 1 +| #define STDC_HEADERS 1 +| #define _ALL_SOURCE 1 +| #define _DARWIN_C_SOURCE 1 +| #define _GNU_SOURCE 1 +| #define _HPUX_ALT_XOPEN_SOCKET_API 1 +| #define _NETBSD_SOURCE 1 +| #define _OPENBSD_SOURCE 1 +| #define _POSIX_PTHREAD_SEMANTICS 1 +| #define __STDC_WANT_IEC_60559_ATTRIBS_EXT__ 1 +| #define __STDC_WANT_IEC_60559_BFP_EXT__ 1 +| #define __STDC_WANT_IEC_60559_DFP_EXT__ 1 +| #define __STDC_WANT_IEC_60559_FUNCS_EXT__ 1 +| #define __STDC_WANT_IEC_60559_TYPES_EXT__ 1 +| #define __STDC_WANT_LIB_EXT2__ 1 +| #define __STDC_WANT_MATH_SPEC_FUNCS__ 1 +| #define _TANDEM_SOURCE 1 +| #define __EXTENSIONS__ 1 +| #define HAVE_DLFCN_H 1 +| #define LT_OBJDIR ".libs/" +| #define INSTALLPREFIX "/Users/yangzuhao/Downloads/libiconv-1.17/output" +| #define HAVE_VISIBILITY 1 +| #define HAVE_ICONV 1 +| #define ICONV_CONST +| #define HAVE_CFPREFERENCESCOPYAPPVALUE 1 +| #define HAVE_CFLOCALECOPYPREFERREDLANGUAGES 1 +| #define HAVE_ICONV 1 +| /* end confdefs.h. */ +| +| #include +| #ifndef __GNU_GETTEXT_SUPPORTED_REVISION +| extern int _nl_msg_cat_cntr; +| extern +| #ifdef __cplusplus +| "C" +| #endif +| const char *_nl_expand_alias (const char *); +| #define __GNU_GETTEXT_SYMBOL_EXPRESSION (_nl_msg_cat_cntr + *_nl_expand_alias ("")) +| #else +| #define __GNU_GETTEXT_SYMBOL_EXPRESSION 0 +| #endif +| +| +| int +| main (void) +| { +| +| bindtextdomain ("", ""); +| return * gettext ("") + * ngettext ("", "", 0) + __GNU_GETTEXT_SYMBOL_EXPRESSION +| +| ; +| return 0; +| } +configure:19044: result: no +configure:19079: checking whether to use NLS +configure:19081: result: no +configure:19156: checking for mbstate_t +configure:19174: gcc -c -g -O2 conftest.c >&5 +configure:19174: $? = 0 +configure:19182: result: yes +configure:19195: checking for wchar_t +configure:19213: gcc -c -g -O2 conftest.c >&5 +configure:19213: $? = 0 +configure:19221: result: yes +configure:19245: checking for getc_unlocked +configure:19245: gcc -o conftest -g -O2 conftest.c >&5 +configure:19245: $? = 0 +configure:19245: result: yes +configure:19251: checking for mbrtowc +configure:19251: gcc -o conftest -g -O2 conftest.c >&5 +configure:19251: $? = 0 +configure:19251: result: yes +configure:19257: checking for wcrtomb +configure:19257: gcc -o conftest -g -O2 conftest.c >&5 +configure:19257: $? = 0 +configure:19257: result: yes +configure:19263: checking for mbsinit +configure:19263: gcc -o conftest -g -O2 conftest.c >&5 +configure:19263: $? = 0 +configure:19263: result: yes +configure:19269: checking for setlocale +configure:19269: gcc -o conftest -g -O2 conftest.c >&5 +configure:19269: $? = 0 +configure:19269: result: yes +configure:19284: checking whether is standalone +configure:19302: gcc -c -g -O2 conftest.c >&5 +configure:19302: $? = 0 +configure:19310: result: yes +configure:19322: checking for memmove +configure:19322: gcc -o conftest -g -O2 conftest.c >&5 +conftest.c:74:6: warning: incompatible redeclaration of library function 'memmove' [-Wincompatible-library-redeclaration] +char memmove (); + ^ +conftest.c:74:6: note: 'memmove' is a builtin with type 'void *(void *, const void *, unsigned long)' +1 warning generated. +configure:19322: $? = 0 +configure:19322: result: yes +configure:19334: checking for nl_langinfo and CODESET +configure:19351: gcc -o conftest -g -O2 conftest.c >&5 +configure:19351: $? = 0 +configure:19361: result: yes +configure:19373: checking for symlink +configure:19373: gcc -o conftest -g -O2 conftest.c >&5 +configure:19373: $? = 0 +configure:19373: result: yes +configure:19373: checking for canonicalize_file_name +configure:19373: gcc -o conftest -g -O2 conftest.c >&5 +Undefined symbols for architecture arm64: + "_canonicalize_file_name", referenced from: + _main in conftest-d495dc.o +ld: symbol(s) not found for architecture arm64 +clang: error: linker command failed with exit code 1 (use -v to see invocation) +configure:19373: $? = 1 +configure: failed program was: +| /* confdefs.h */ +| #define PACKAGE_NAME "libiconv" +| #define PACKAGE_TARNAME "libiconv" +| #define PACKAGE_VERSION "1.17" +| #define PACKAGE_STRING "libiconv 1.17" +| #define PACKAGE_BUGREPORT "" +| #define PACKAGE_URL "" +| #define PACKAGE "libiconv" +| #define VERSION "1.17" +| #define HAVE_STDIO_H 1 +| #define HAVE_STDLIB_H 1 +| #define HAVE_STRING_H 1 +| #define HAVE_INTTYPES_H 1 +| #define HAVE_STDINT_H 1 +| #define HAVE_STRINGS_H 1 +| #define HAVE_SYS_STAT_H 1 +| #define HAVE_SYS_TYPES_H 1 +| #define HAVE_UNISTD_H 1 +| #define HAVE_WCHAR_H 1 +| #define HAVE_SYS_PARAM_H 1 +| #define HAVE_SYS_SOCKET_H 1 +| #define HAVE_LIMITS_H 1 +| #define HAVE_SYS_TIME_H 1 +| #define STDC_HEADERS 1 +| #define _ALL_SOURCE 1 +| #define _DARWIN_C_SOURCE 1 +| #define _GNU_SOURCE 1 +| #define _HPUX_ALT_XOPEN_SOCKET_API 1 +| #define _NETBSD_SOURCE 1 +| #define _OPENBSD_SOURCE 1 +| #define _POSIX_PTHREAD_SEMANTICS 1 +| #define __STDC_WANT_IEC_60559_ATTRIBS_EXT__ 1 +| #define __STDC_WANT_IEC_60559_BFP_EXT__ 1 +| #define __STDC_WANT_IEC_60559_DFP_EXT__ 1 +| #define __STDC_WANT_IEC_60559_FUNCS_EXT__ 1 +| #define __STDC_WANT_IEC_60559_TYPES_EXT__ 1 +| #define __STDC_WANT_LIB_EXT2__ 1 +| #define __STDC_WANT_MATH_SPEC_FUNCS__ 1 +| #define _TANDEM_SOURCE 1 +| #define __EXTENSIONS__ 1 +| #define HAVE_DLFCN_H 1 +| #define LT_OBJDIR ".libs/" +| #define INSTALLPREFIX "/Users/yangzuhao/Downloads/libiconv-1.17/output" +| #define HAVE_VISIBILITY 1 +| #define HAVE_ICONV 1 +| #define ICONV_CONST +| #define HAVE_CFPREFERENCESCOPYAPPVALUE 1 +| #define HAVE_CFLOCALECOPYPREFERREDLANGUAGES 1 +| #define HAVE_ICONV 1 +| #define HAVE_MBSTATE_T 1 +| #define HAVE_WCHAR_T 1 +| #define HAVE_GETC_UNLOCKED 1 +| #define HAVE_MBRTOWC 1 +| #define HAVE_WCRTOMB 1 +| #define HAVE_MBSINIT 1 +| #define HAVE_SETLOCALE 1 +| #define HAVE_MEMMOVE 1 +| #define HAVE_LANGINFO_CODESET 1 +| #define HAVE_SYMLINK 1 +| /* end confdefs.h. */ +| /* Define canonicalize_file_name to an innocuous variant, in case declares canonicalize_file_name. +| For example, HP-UX 11i declares gettimeofday. */ +| #define canonicalize_file_name innocuous_canonicalize_file_name +| +| /* System header to define __stub macros and hopefully few prototypes, +| which can conflict with char canonicalize_file_name (); below. */ +| +| #include +| #undef canonicalize_file_name +| +| /* Override any GCC internal prototype to avoid an error. +| Use char because int might match the return type of a GCC +| builtin and then its argument prototype would still apply. */ +| #ifdef __cplusplus +| extern "C" +| #endif +| char canonicalize_file_name (); +| /* The GNU C library defines this for functions which it implements +| to always fail with ENOSYS. Some functions are actually named +| something starting with __ and the normal name is an alias. */ +| #if defined __stub_canonicalize_file_name || defined __stub___canonicalize_file_name +| choke me +| #endif +| +| int +| main (void) +| { +| return canonicalize_file_name (); +| ; +| return 0; +| } +configure:19373: result: no +configure:19373: checking for faccessat +configure:19373: gcc -o conftest -g -O2 conftest.c >&5 +configure:19373: $? = 0 +configure:19373: result: yes +configure:19373: checking for realpath +configure:19373: gcc -o conftest -g -O2 conftest.c >&5 +configure:19373: $? = 0 +configure:19373: result: yes +configure:19373: checking for lstat +configure:19373: gcc -o conftest -g -O2 conftest.c >&5 +configure:19373: $? = 0 +configure:19373: result: yes +configure:19373: checking for readlinkat +configure:19373: gcc -o conftest -g -O2 conftest.c >&5 +configure:19373: $? = 0 +configure:19373: result: yes +configure:19373: checking for _set_invalid_parameter_handler +configure:19373: gcc -o conftest -g -O2 conftest.c >&5 +Undefined symbols for architecture arm64: + "__set_invalid_parameter_handler", referenced from: + _main in conftest-50ac0e.o +ld: symbol(s) not found for architecture arm64 +clang: error: linker command failed with exit code 1 (use -v to see invocation) +configure:19373: $? = 1 +configure: failed program was: +| /* confdefs.h */ +| #define PACKAGE_NAME "libiconv" +| #define PACKAGE_TARNAME "libiconv" +| #define PACKAGE_VERSION "1.17" +| #define PACKAGE_STRING "libiconv 1.17" +| #define PACKAGE_BUGREPORT "" +| #define PACKAGE_URL "" +| #define PACKAGE "libiconv" +| #define VERSION "1.17" +| #define HAVE_STDIO_H 1 +| #define HAVE_STDLIB_H 1 +| #define HAVE_STRING_H 1 +| #define HAVE_INTTYPES_H 1 +| #define HAVE_STDINT_H 1 +| #define HAVE_STRINGS_H 1 +| #define HAVE_SYS_STAT_H 1 +| #define HAVE_SYS_TYPES_H 1 +| #define HAVE_UNISTD_H 1 +| #define HAVE_WCHAR_H 1 +| #define HAVE_SYS_PARAM_H 1 +| #define HAVE_SYS_SOCKET_H 1 +| #define HAVE_LIMITS_H 1 +| #define HAVE_SYS_TIME_H 1 +| #define STDC_HEADERS 1 +| #define _ALL_SOURCE 1 +| #define _DARWIN_C_SOURCE 1 +| #define _GNU_SOURCE 1 +| #define _HPUX_ALT_XOPEN_SOCKET_API 1 +| #define _NETBSD_SOURCE 1 +| #define _OPENBSD_SOURCE 1 +| #define _POSIX_PTHREAD_SEMANTICS 1 +| #define __STDC_WANT_IEC_60559_ATTRIBS_EXT__ 1 +| #define __STDC_WANT_IEC_60559_BFP_EXT__ 1 +| #define __STDC_WANT_IEC_60559_DFP_EXT__ 1 +| #define __STDC_WANT_IEC_60559_FUNCS_EXT__ 1 +| #define __STDC_WANT_IEC_60559_TYPES_EXT__ 1 +| #define __STDC_WANT_LIB_EXT2__ 1 +| #define __STDC_WANT_MATH_SPEC_FUNCS__ 1 +| #define _TANDEM_SOURCE 1 +| #define __EXTENSIONS__ 1 +| #define HAVE_DLFCN_H 1 +| #define LT_OBJDIR ".libs/" +| #define INSTALLPREFIX "/Users/yangzuhao/Downloads/libiconv-1.17/output" +| #define HAVE_VISIBILITY 1 +| #define HAVE_ICONV 1 +| #define ICONV_CONST +| #define HAVE_CFPREFERENCESCOPYAPPVALUE 1 +| #define HAVE_CFLOCALECOPYPREFERREDLANGUAGES 1 +| #define HAVE_ICONV 1 +| #define HAVE_MBSTATE_T 1 +| #define HAVE_WCHAR_T 1 +| #define HAVE_GETC_UNLOCKED 1 +| #define HAVE_MBRTOWC 1 +| #define HAVE_WCRTOMB 1 +| #define HAVE_MBSINIT 1 +| #define HAVE_SETLOCALE 1 +| #define HAVE_MEMMOVE 1 +| #define HAVE_LANGINFO_CODESET 1 +| #define HAVE_SYMLINK 1 +| #define HAVE_FACCESSAT 1 +| #define HAVE_REALPATH 1 +| #define HAVE_LSTAT 1 +| #define HAVE_READLINKAT 1 +| /* end confdefs.h. */ +| /* Define _set_invalid_parameter_handler to an innocuous variant, in case declares _set_invalid_parameter_handler. +| For example, HP-UX 11i declares gettimeofday. */ +| #define _set_invalid_parameter_handler innocuous__set_invalid_parameter_handler +| +| /* System header to define __stub macros and hopefully few prototypes, +| which can conflict with char _set_invalid_parameter_handler (); below. */ +| +| #include +| #undef _set_invalid_parameter_handler +| +| /* Override any GCC internal prototype to avoid an error. +| Use char because int might match the return type of a GCC +| builtin and then its argument prototype would still apply. */ +| #ifdef __cplusplus +| extern "C" +| #endif +| char _set_invalid_parameter_handler (); +| /* The GNU C library defines this for functions which it implements +| to always fail with ENOSYS. Some functions are actually named +| something starting with __ and the normal name is an alias. */ +| #if defined __stub__set_invalid_parameter_handler || defined __stub____set_invalid_parameter_handler +| choke me +| #endif +| +| int +| main (void) +| { +| return _set_invalid_parameter_handler (); +| ; +| return 0; +| } +configure:19373: result: no +configure:19373: checking for fcntl +configure:19373: gcc -o conftest -g -O2 conftest.c >&5 +configure:19373: $? = 0 +configure:19373: result: yes +configure:19373: checking for getdtablesize +configure:19373: gcc -o conftest -g -O2 conftest.c >&5 +configure:19373: $? = 0 +configure:19373: result: yes +configure:19373: checking for getprogname +configure:19373: gcc -o conftest -g -O2 conftest.c >&5 +configure:19373: $? = 0 +configure:19373: result: yes +configure:19373: checking for getexecname +configure:19373: gcc -o conftest -g -O2 conftest.c >&5 +Undefined symbols for architecture arm64: + "_getexecname", referenced from: + _main in conftest-16b827.o +ld: symbol(s) not found for architecture arm64 +clang: error: linker command failed with exit code 1 (use -v to see invocation) +configure:19373: $? = 1 +configure: failed program was: +| /* confdefs.h */ +| #define PACKAGE_NAME "libiconv" +| #define PACKAGE_TARNAME "libiconv" +| #define PACKAGE_VERSION "1.17" +| #define PACKAGE_STRING "libiconv 1.17" +| #define PACKAGE_BUGREPORT "" +| #define PACKAGE_URL "" +| #define PACKAGE "libiconv" +| #define VERSION "1.17" +| #define HAVE_STDIO_H 1 +| #define HAVE_STDLIB_H 1 +| #define HAVE_STRING_H 1 +| #define HAVE_INTTYPES_H 1 +| #define HAVE_STDINT_H 1 +| #define HAVE_STRINGS_H 1 +| #define HAVE_SYS_STAT_H 1 +| #define HAVE_SYS_TYPES_H 1 +| #define HAVE_UNISTD_H 1 +| #define HAVE_WCHAR_H 1 +| #define HAVE_SYS_PARAM_H 1 +| #define HAVE_SYS_SOCKET_H 1 +| #define HAVE_LIMITS_H 1 +| #define HAVE_SYS_TIME_H 1 +| #define STDC_HEADERS 1 +| #define _ALL_SOURCE 1 +| #define _DARWIN_C_SOURCE 1 +| #define _GNU_SOURCE 1 +| #define _HPUX_ALT_XOPEN_SOCKET_API 1 +| #define _NETBSD_SOURCE 1 +| #define _OPENBSD_SOURCE 1 +| #define _POSIX_PTHREAD_SEMANTICS 1 +| #define __STDC_WANT_IEC_60559_ATTRIBS_EXT__ 1 +| #define __STDC_WANT_IEC_60559_BFP_EXT__ 1 +| #define __STDC_WANT_IEC_60559_DFP_EXT__ 1 +| #define __STDC_WANT_IEC_60559_FUNCS_EXT__ 1 +| #define __STDC_WANT_IEC_60559_TYPES_EXT__ 1 +| #define __STDC_WANT_LIB_EXT2__ 1 +| #define __STDC_WANT_MATH_SPEC_FUNCS__ 1 +| #define _TANDEM_SOURCE 1 +| #define __EXTENSIONS__ 1 +| #define HAVE_DLFCN_H 1 +| #define LT_OBJDIR ".libs/" +| #define INSTALLPREFIX "/Users/yangzuhao/Downloads/libiconv-1.17/output" +| #define HAVE_VISIBILITY 1 +| #define HAVE_ICONV 1 +| #define ICONV_CONST +| #define HAVE_CFPREFERENCESCOPYAPPVALUE 1 +| #define HAVE_CFLOCALECOPYPREFERREDLANGUAGES 1 +| #define HAVE_ICONV 1 +| #define HAVE_MBSTATE_T 1 +| #define HAVE_WCHAR_T 1 +| #define HAVE_GETC_UNLOCKED 1 +| #define HAVE_MBRTOWC 1 +| #define HAVE_WCRTOMB 1 +| #define HAVE_MBSINIT 1 +| #define HAVE_SETLOCALE 1 +| #define HAVE_MEMMOVE 1 +| #define HAVE_LANGINFO_CODESET 1 +| #define HAVE_SYMLINK 1 +| #define HAVE_FACCESSAT 1 +| #define HAVE_REALPATH 1 +| #define HAVE_LSTAT 1 +| #define HAVE_READLINKAT 1 +| #define HAVE_FCNTL 1 +| #define HAVE_GETDTABLESIZE 1 +| #define HAVE_GETPROGNAME 1 +| /* end confdefs.h. */ +| /* Define getexecname to an innocuous variant, in case declares getexecname. +| For example, HP-UX 11i declares gettimeofday. */ +| #define getexecname innocuous_getexecname +| +| /* System header to define __stub macros and hopefully few prototypes, +| which can conflict with char getexecname (); below. */ +| +| #include +| #undef getexecname +| +| /* Override any GCC internal prototype to avoid an error. +| Use char because int might match the return type of a GCC +| builtin and then its argument prototype would still apply. */ +| #ifdef __cplusplus +| extern "C" +| #endif +| char getexecname (); +| /* The GNU C library defines this for functions which it implements +| to always fail with ENOSYS. Some functions are actually named +| something starting with __ and the normal name is an alias. */ +| #if defined __stub_getexecname || defined __stub___getexecname +| choke me +| #endif +| +| int +| main (void) +| { +| return getexecname (); +| ; +| return 0; +| } +configure:19373: result: no +configure:19373: checking for readlink +configure:19373: gcc -o conftest -g -O2 conftest.c >&5 +configure:19373: $? = 0 +configure:19373: result: yes +configure:19373: checking for setenv +configure:19373: gcc -o conftest -g -O2 conftest.c >&5 +configure:19373: $? = 0 +configure:19373: result: yes +configure:19442: checking for working fcntl.h +configure:19556: gcc -o conftest -g -O2 conftest.c >&5 +conftest.c:153:27: warning: address of array 'constants' will always evaluate to 'true' [-Wpointer-bool-conversion] + int result = !constants; + ~^~~~~~~~~ +1 warning generated. +configure:19556: $? = 0 +configure:19556: ./conftest +configure:19556: $? = 64 +configure: program exited with status 64 +configure: failed program was: +| /* confdefs.h */ +| #define PACKAGE_NAME "libiconv" +| #define PACKAGE_TARNAME "libiconv" +| #define PACKAGE_VERSION "1.17" +| #define PACKAGE_STRING "libiconv 1.17" +| #define PACKAGE_BUGREPORT "" +| #define PACKAGE_URL "" +| #define PACKAGE "libiconv" +| #define VERSION "1.17" +| #define HAVE_STDIO_H 1 +| #define HAVE_STDLIB_H 1 +| #define HAVE_STRING_H 1 +| #define HAVE_INTTYPES_H 1 +| #define HAVE_STDINT_H 1 +| #define HAVE_STRINGS_H 1 +| #define HAVE_SYS_STAT_H 1 +| #define HAVE_SYS_TYPES_H 1 +| #define HAVE_UNISTD_H 1 +| #define HAVE_WCHAR_H 1 +| #define HAVE_SYS_PARAM_H 1 +| #define HAVE_SYS_SOCKET_H 1 +| #define HAVE_LIMITS_H 1 +| #define HAVE_SYS_TIME_H 1 +| #define STDC_HEADERS 1 +| #define _ALL_SOURCE 1 +| #define _DARWIN_C_SOURCE 1 +| #define _GNU_SOURCE 1 +| #define _HPUX_ALT_XOPEN_SOCKET_API 1 +| #define _NETBSD_SOURCE 1 +| #define _OPENBSD_SOURCE 1 +| #define _POSIX_PTHREAD_SEMANTICS 1 +| #define __STDC_WANT_IEC_60559_ATTRIBS_EXT__ 1 +| #define __STDC_WANT_IEC_60559_BFP_EXT__ 1 +| #define __STDC_WANT_IEC_60559_DFP_EXT__ 1 +| #define __STDC_WANT_IEC_60559_FUNCS_EXT__ 1 +| #define __STDC_WANT_IEC_60559_TYPES_EXT__ 1 +| #define __STDC_WANT_LIB_EXT2__ 1 +| #define __STDC_WANT_MATH_SPEC_FUNCS__ 1 +| #define _TANDEM_SOURCE 1 +| #define __EXTENSIONS__ 1 +| #define HAVE_DLFCN_H 1 +| #define LT_OBJDIR ".libs/" +| #define INSTALLPREFIX "/Users/yangzuhao/Downloads/libiconv-1.17/output" +| #define HAVE_VISIBILITY 1 +| #define HAVE_ICONV 1 +| #define ICONV_CONST +| #define HAVE_CFPREFERENCESCOPYAPPVALUE 1 +| #define HAVE_CFLOCALECOPYPREFERREDLANGUAGES 1 +| #define HAVE_ICONV 1 +| #define HAVE_MBSTATE_T 1 +| #define HAVE_WCHAR_T 1 +| #define HAVE_GETC_UNLOCKED 1 +| #define HAVE_MBRTOWC 1 +| #define HAVE_WCRTOMB 1 +| #define HAVE_MBSINIT 1 +| #define HAVE_SETLOCALE 1 +| #define HAVE_MEMMOVE 1 +| #define HAVE_LANGINFO_CODESET 1 +| #define HAVE_SYMLINK 1 +| #define HAVE_FACCESSAT 1 +| #define HAVE_REALPATH 1 +| #define HAVE_LSTAT 1 +| #define HAVE_READLINKAT 1 +| #define HAVE_FCNTL 1 +| #define HAVE_GETDTABLESIZE 1 +| #define HAVE_GETPROGNAME 1 +| #define HAVE_READLINK 1 +| #define HAVE_SETENV 1 +| /* end confdefs.h. */ +| #include +| #include +| #if HAVE_UNISTD_H +| # include +| #else /* on Windows with MSVC */ +| # include +| # include +| # defined sleep(n) _sleep ((n) * 1000) +| #endif +| #include +| +| +| +| #if defined _WIN32 && !defined __CYGWIN__ +| #define access _access +| #define chdir _chdir +| #define chmod _chmod +| #define close _close +| #define creat _creat +| #define dup _dup +| #define dup2 _dup2 +| #define ecvt _ecvt +| #define execl _execl +| #define execle _execle +| #define execlp _execlp +| #define execv _execv +| #define execve _execve +| #define execvp _execvp +| #define execvpe _execvpe +| #define fcloseall _fcloseall +| #define fcvt _fcvt +| #define fdopen _fdopen +| #define fileno _fileno +| #define gcvt _gcvt +| #define getcwd _getcwd +| #define getpid _getpid +| #define getw _getw +| #define isatty _isatty +| #define j0 _j0 +| #define j1 _j1 +| #define jn _jn +| #define lfind _lfind +| #define lsearch _lsearch +| #define lseek _lseek +| #define memccpy _memccpy +| #define mkdir _mkdir +| #define mktemp _mktemp +| #define open _open +| #define putenv _putenv +| #define putw _putw +| #define read _read +| #define rmdir _rmdir +| #define strdup _strdup +| #define swab _swab +| #define tempnam _tempnam +| #define tzset _tzset +| #define umask _umask +| #define unlink _unlink +| #define utime _utime +| #define wcsdup _wcsdup +| #define write _write +| #define y0 _y0 +| #define y1 _y1 +| #define yn _yn +| #endif +| +| +| #ifndef O_NOATIME +| #define O_NOATIME 0 +| #endif +| #ifndef O_NOFOLLOW +| #define O_NOFOLLOW 0 +| #endif +| static int const constants[] = +| { +| O_CREAT, O_EXCL, O_NOCTTY, O_TRUNC, O_APPEND, +| O_NONBLOCK, O_SYNC, O_ACCMODE, O_RDONLY, O_RDWR, O_WRONLY +| }; +| +| int +| main (void) +| { +| +| int result = !constants; +| #if HAVE_SYMLINK +| { +| static char const sym[] = "conftest.sym"; +| if (symlink ("/dev/null", sym) != 0) +| result |= 2; +| else +| { +| int fd = open (sym, O_WRONLY | O_NOFOLLOW | O_CREAT, 0); +| if (fd >= 0) +| { +| close (fd); +| result |= 4; +| } +| } +| if (unlink (sym) != 0 || symlink (".", sym) != 0) +| result |= 2; +| else +| { +| int fd = open (sym, O_RDONLY | O_NOFOLLOW); +| if (fd >= 0) +| { +| close (fd); +| result |= 4; +| } +| } +| unlink (sym); +| } +| #endif +| { +| static char const file[] = "confdefs.h"; +| int fd = open (file, O_RDONLY | O_NOATIME); +| if (fd < 0) +| result |= 8; +| else +| { +| struct stat st0; +| if (fstat (fd, &st0) != 0) +| result |= 16; +| else +| { +| char c; +| sleep (1); +| if (read (fd, &c, 1) != 1) +| result |= 24; +| else +| { +| if (close (fd) != 0) +| result |= 32; +| else +| { +| struct stat st1; +| if (stat (file, &st1) != 0) +| result |= 40; +| else +| if (st0.st_atime != st1.st_atime) +| result |= 64; +| } +| } +| } +| } +| } +| return result; +| ; +| return 0; +| } +configure:19573: result: no (bad O_NOATIME) +configure:19595: checking for wchar.h +configure:19595: result: yes +configure:19603: checking for EILSEQ +configure:19668: result: yes +configure:19679: checking whether byte ordering is bigendian +configure:19695: gcc -c -g -O2 conftest.c >&5 +configure:19695: $? = 0 +configure:19741: gcc -c -g -O2 conftest.c >&5 +configure:19741: $? = 0 +configure:19760: gcc -c -g -O2 conftest.c >&5 +conftest.c:80:4: error: use of undeclared identifier 'not' + not big endian + ^ +1 error generated. +configure:19760: $? = 1 +configure: failed program was: +| /* confdefs.h */ +| #define PACKAGE_NAME "libiconv" +| #define PACKAGE_TARNAME "libiconv" +| #define PACKAGE_VERSION "1.17" +| #define PACKAGE_STRING "libiconv 1.17" +| #define PACKAGE_BUGREPORT "" +| #define PACKAGE_URL "" +| #define PACKAGE "libiconv" +| #define VERSION "1.17" +| #define HAVE_STDIO_H 1 +| #define HAVE_STDLIB_H 1 +| #define HAVE_STRING_H 1 +| #define HAVE_INTTYPES_H 1 +| #define HAVE_STDINT_H 1 +| #define HAVE_STRINGS_H 1 +| #define HAVE_SYS_STAT_H 1 +| #define HAVE_SYS_TYPES_H 1 +| #define HAVE_UNISTD_H 1 +| #define HAVE_WCHAR_H 1 +| #define HAVE_SYS_PARAM_H 1 +| #define HAVE_SYS_SOCKET_H 1 +| #define HAVE_LIMITS_H 1 +| #define HAVE_SYS_TIME_H 1 +| #define STDC_HEADERS 1 +| #define _ALL_SOURCE 1 +| #define _DARWIN_C_SOURCE 1 +| #define _GNU_SOURCE 1 +| #define _HPUX_ALT_XOPEN_SOCKET_API 1 +| #define _NETBSD_SOURCE 1 +| #define _OPENBSD_SOURCE 1 +| #define _POSIX_PTHREAD_SEMANTICS 1 +| #define __STDC_WANT_IEC_60559_ATTRIBS_EXT__ 1 +| #define __STDC_WANT_IEC_60559_BFP_EXT__ 1 +| #define __STDC_WANT_IEC_60559_DFP_EXT__ 1 +| #define __STDC_WANT_IEC_60559_FUNCS_EXT__ 1 +| #define __STDC_WANT_IEC_60559_TYPES_EXT__ 1 +| #define __STDC_WANT_LIB_EXT2__ 1 +| #define __STDC_WANT_MATH_SPEC_FUNCS__ 1 +| #define _TANDEM_SOURCE 1 +| #define __EXTENSIONS__ 1 +| #define HAVE_DLFCN_H 1 +| #define LT_OBJDIR ".libs/" +| #define INSTALLPREFIX "/Users/yangzuhao/Downloads/libiconv-1.17/output" +| #define HAVE_VISIBILITY 1 +| #define HAVE_ICONV 1 +| #define ICONV_CONST +| #define HAVE_CFPREFERENCESCOPYAPPVALUE 1 +| #define HAVE_CFLOCALECOPYPREFERREDLANGUAGES 1 +| #define HAVE_ICONV 1 +| #define HAVE_MBSTATE_T 1 +| #define HAVE_WCHAR_T 1 +| #define HAVE_GETC_UNLOCKED 1 +| #define HAVE_MBRTOWC 1 +| #define HAVE_WCRTOMB 1 +| #define HAVE_MBSINIT 1 +| #define HAVE_SETLOCALE 1 +| #define HAVE_MEMMOVE 1 +| #define HAVE_LANGINFO_CODESET 1 +| #define HAVE_SYMLINK 1 +| #define HAVE_FACCESSAT 1 +| #define HAVE_REALPATH 1 +| #define HAVE_LSTAT 1 +| #define HAVE_READLINKAT 1 +| #define HAVE_FCNTL 1 +| #define HAVE_GETDTABLESIZE 1 +| #define HAVE_GETPROGNAME 1 +| #define HAVE_READLINK 1 +| #define HAVE_SETENV 1 +| #define HAVE_WORKING_O_NOATIME 0 +| #define HAVE_WORKING_O_NOFOLLOW 1 +| #define HAVE_WCHAR_H 1 +| /* end confdefs.h. */ +| #include +| #include +| +| int +| main (void) +| { +| #if BYTE_ORDER != BIG_ENDIAN +| not big endian +| #endif +| +| ; +| return 0; +| } +configure:19894: result: no +configure:19948: checking for size_t +configure:19948: gcc -c -g -O2 conftest.c >&5 +configure:19948: $? = 0 +configure:19948: gcc -c -g -O2 conftest.c >&5 +conftest.c:105:21: error: expected expression +if (sizeof ((size_t))) + ^ +1 error generated. +configure:19948: $? = 1 +configure: failed program was: +| /* confdefs.h */ +| #define PACKAGE_NAME "libiconv" +| #define PACKAGE_TARNAME "libiconv" +| #define PACKAGE_VERSION "1.17" +| #define PACKAGE_STRING "libiconv 1.17" +| #define PACKAGE_BUGREPORT "" +| #define PACKAGE_URL "" +| #define PACKAGE "libiconv" +| #define VERSION "1.17" +| #define HAVE_STDIO_H 1 +| #define HAVE_STDLIB_H 1 +| #define HAVE_STRING_H 1 +| #define HAVE_INTTYPES_H 1 +| #define HAVE_STDINT_H 1 +| #define HAVE_STRINGS_H 1 +| #define HAVE_SYS_STAT_H 1 +| #define HAVE_SYS_TYPES_H 1 +| #define HAVE_UNISTD_H 1 +| #define HAVE_WCHAR_H 1 +| #define HAVE_SYS_PARAM_H 1 +| #define HAVE_SYS_SOCKET_H 1 +| #define HAVE_LIMITS_H 1 +| #define HAVE_SYS_TIME_H 1 +| #define STDC_HEADERS 1 +| #define _ALL_SOURCE 1 +| #define _DARWIN_C_SOURCE 1 +| #define _GNU_SOURCE 1 +| #define _HPUX_ALT_XOPEN_SOCKET_API 1 +| #define _NETBSD_SOURCE 1 +| #define _OPENBSD_SOURCE 1 +| #define _POSIX_PTHREAD_SEMANTICS 1 +| #define __STDC_WANT_IEC_60559_ATTRIBS_EXT__ 1 +| #define __STDC_WANT_IEC_60559_BFP_EXT__ 1 +| #define __STDC_WANT_IEC_60559_DFP_EXT__ 1 +| #define __STDC_WANT_IEC_60559_FUNCS_EXT__ 1 +| #define __STDC_WANT_IEC_60559_TYPES_EXT__ 1 +| #define __STDC_WANT_LIB_EXT2__ 1 +| #define __STDC_WANT_MATH_SPEC_FUNCS__ 1 +| #define _TANDEM_SOURCE 1 +| #define __EXTENSIONS__ 1 +| #define HAVE_DLFCN_H 1 +| #define LT_OBJDIR ".libs/" +| #define INSTALLPREFIX "/Users/yangzuhao/Downloads/libiconv-1.17/output" +| #define HAVE_VISIBILITY 1 +| #define HAVE_ICONV 1 +| #define ICONV_CONST +| #define HAVE_CFPREFERENCESCOPYAPPVALUE 1 +| #define HAVE_CFLOCALECOPYPREFERREDLANGUAGES 1 +| #define HAVE_ICONV 1 +| #define HAVE_MBSTATE_T 1 +| #define HAVE_WCHAR_T 1 +| #define HAVE_GETC_UNLOCKED 1 +| #define HAVE_MBRTOWC 1 +| #define HAVE_WCRTOMB 1 +| #define HAVE_MBSINIT 1 +| #define HAVE_SETLOCALE 1 +| #define HAVE_MEMMOVE 1 +| #define HAVE_LANGINFO_CODESET 1 +| #define HAVE_SYMLINK 1 +| #define HAVE_FACCESSAT 1 +| #define HAVE_REALPATH 1 +| #define HAVE_LSTAT 1 +| #define HAVE_READLINKAT 1 +| #define HAVE_FCNTL 1 +| #define HAVE_GETDTABLESIZE 1 +| #define HAVE_GETPROGNAME 1 +| #define HAVE_READLINK 1 +| #define HAVE_SETENV 1 +| #define HAVE_WORKING_O_NOATIME 0 +| #define HAVE_WORKING_O_NOFOLLOW 1 +| #define HAVE_WCHAR_H 1 +| #define WORDS_LITTLEENDIAN 1 +| /* end confdefs.h. */ +| #include +| #ifdef HAVE_STDIO_H +| # include +| #endif +| #ifdef HAVE_STDLIB_H +| # include +| #endif +| #ifdef HAVE_STRING_H +| # include +| #endif +| #ifdef HAVE_INTTYPES_H +| # include +| #endif +| #ifdef HAVE_STDINT_H +| # include +| #endif +| #ifdef HAVE_STRINGS_H +| # include +| #endif +| #ifdef HAVE_SYS_TYPES_H +| # include +| #endif +| #ifdef HAVE_SYS_STAT_H +| # include +| #endif +| #ifdef HAVE_UNISTD_H +| # include +| #endif +| int +| main (void) +| { +| if (sizeof ((size_t))) +| return 0; +| ; +| return 0; +| } +configure:19948: result: yes +configure:19960: checking for working alloca.h +configure:19978: gcc -o conftest -g -O2 conftest.c >&5 +configure:19978: $? = 0 +configure:19987: result: yes +configure:19995: checking for alloca +configure:20040: result: yes +configure:20189: checking whether lstat correctly handles trailing slash +configure:20233: gcc -o conftest -g -O2 conftest.c >&5 +configure:20233: $? = 0 +configure:20233: ./conftest +configure:20233: $? = 1 +configure: program exited with status 1 +configure: failed program was: +| /* confdefs.h */ +| #define PACKAGE_NAME "libiconv" +| #define PACKAGE_TARNAME "libiconv" +| #define PACKAGE_VERSION "1.17" +| #define PACKAGE_STRING "libiconv 1.17" +| #define PACKAGE_BUGREPORT "" +| #define PACKAGE_URL "" +| #define PACKAGE "libiconv" +| #define VERSION "1.17" +| #define HAVE_STDIO_H 1 +| #define HAVE_STDLIB_H 1 +| #define HAVE_STRING_H 1 +| #define HAVE_INTTYPES_H 1 +| #define HAVE_STDINT_H 1 +| #define HAVE_STRINGS_H 1 +| #define HAVE_SYS_STAT_H 1 +| #define HAVE_SYS_TYPES_H 1 +| #define HAVE_UNISTD_H 1 +| #define HAVE_WCHAR_H 1 +| #define HAVE_SYS_PARAM_H 1 +| #define HAVE_SYS_SOCKET_H 1 +| #define HAVE_LIMITS_H 1 +| #define HAVE_SYS_TIME_H 1 +| #define STDC_HEADERS 1 +| #define _ALL_SOURCE 1 +| #define _DARWIN_C_SOURCE 1 +| #define _GNU_SOURCE 1 +| #define _HPUX_ALT_XOPEN_SOCKET_API 1 +| #define _NETBSD_SOURCE 1 +| #define _OPENBSD_SOURCE 1 +| #define _POSIX_PTHREAD_SEMANTICS 1 +| #define __STDC_WANT_IEC_60559_ATTRIBS_EXT__ 1 +| #define __STDC_WANT_IEC_60559_BFP_EXT__ 1 +| #define __STDC_WANT_IEC_60559_DFP_EXT__ 1 +| #define __STDC_WANT_IEC_60559_FUNCS_EXT__ 1 +| #define __STDC_WANT_IEC_60559_TYPES_EXT__ 1 +| #define __STDC_WANT_LIB_EXT2__ 1 +| #define __STDC_WANT_MATH_SPEC_FUNCS__ 1 +| #define _TANDEM_SOURCE 1 +| #define __EXTENSIONS__ 1 +| #define HAVE_DLFCN_H 1 +| #define LT_OBJDIR ".libs/" +| #define INSTALLPREFIX "/Users/yangzuhao/Downloads/libiconv-1.17/output" +| #define HAVE_VISIBILITY 1 +| #define HAVE_ICONV 1 +| #define ICONV_CONST +| #define HAVE_CFPREFERENCESCOPYAPPVALUE 1 +| #define HAVE_CFLOCALECOPYPREFERREDLANGUAGES 1 +| #define HAVE_ICONV 1 +| #define HAVE_MBSTATE_T 1 +| #define HAVE_WCHAR_T 1 +| #define HAVE_GETC_UNLOCKED 1 +| #define HAVE_MBRTOWC 1 +| #define HAVE_WCRTOMB 1 +| #define HAVE_MBSINIT 1 +| #define HAVE_SETLOCALE 1 +| #define HAVE_MEMMOVE 1 +| #define HAVE_LANGINFO_CODESET 1 +| #define HAVE_SYMLINK 1 +| #define HAVE_FACCESSAT 1 +| #define HAVE_REALPATH 1 +| #define HAVE_LSTAT 1 +| #define HAVE_READLINKAT 1 +| #define HAVE_FCNTL 1 +| #define HAVE_GETDTABLESIZE 1 +| #define HAVE_GETPROGNAME 1 +| #define HAVE_READLINK 1 +| #define HAVE_SETENV 1 +| #define HAVE_WORKING_O_NOATIME 0 +| #define HAVE_WORKING_O_NOFOLLOW 1 +| #define HAVE_WCHAR_H 1 +| #define WORDS_LITTLEENDIAN 1 +| #define HAVE_ALLOCA_H 1 +| #define HAVE_ALLOCA 1 +| /* end confdefs.h. */ +| #include +| #ifdef HAVE_STDIO_H +| # include +| #endif +| #ifdef HAVE_STDLIB_H +| # include +| #endif +| #ifdef HAVE_STRING_H +| # include +| #endif +| #ifdef HAVE_INTTYPES_H +| # include +| #endif +| #ifdef HAVE_STDINT_H +| # include +| #endif +| #ifdef HAVE_STRINGS_H +| # include +| #endif +| #ifdef HAVE_SYS_TYPES_H +| # include +| #endif +| #ifdef HAVE_SYS_STAT_H +| # include +| #endif +| #ifdef HAVE_UNISTD_H +| # include +| #endif +| int +| main (void) +| { +| struct stat sbuf; +| if (symlink ("conftest.file", "conftest.sym") != 0) +| return 1; +| /* Linux will dereference the symlink and fail, as required by +| POSIX. That is better in the sense that it means we will not +| have to compile and use the lstat wrapper. */ +| return lstat ("conftest.sym/", &sbuf) == 0; +| +| ; +| return 0; +| } +configure:20246: result: no +configure:20260: checking whether // is distinct from / +configure:20290: result: no +configure:20302: checking whether realpath works +configure:20516: gcc -o conftest -g -O2 conftest.c >&5 +configure:20516: $? = 0 +configure:20516: ./conftest +configure:20516: $? = 12 +configure: program exited with status 12 +configure: failed program was: +| /* confdefs.h */ +| #define PACKAGE_NAME "libiconv" +| #define PACKAGE_TARNAME "libiconv" +| #define PACKAGE_VERSION "1.17" +| #define PACKAGE_STRING "libiconv 1.17" +| #define PACKAGE_BUGREPORT "" +| #define PACKAGE_URL "" +| #define PACKAGE "libiconv" +| #define VERSION "1.17" +| #define HAVE_STDIO_H 1 +| #define HAVE_STDLIB_H 1 +| #define HAVE_STRING_H 1 +| #define HAVE_INTTYPES_H 1 +| #define HAVE_STDINT_H 1 +| #define HAVE_STRINGS_H 1 +| #define HAVE_SYS_STAT_H 1 +| #define HAVE_SYS_TYPES_H 1 +| #define HAVE_UNISTD_H 1 +| #define HAVE_WCHAR_H 1 +| #define HAVE_SYS_PARAM_H 1 +| #define HAVE_SYS_SOCKET_H 1 +| #define HAVE_LIMITS_H 1 +| #define HAVE_SYS_TIME_H 1 +| #define STDC_HEADERS 1 +| #define _ALL_SOURCE 1 +| #define _DARWIN_C_SOURCE 1 +| #define _GNU_SOURCE 1 +| #define _HPUX_ALT_XOPEN_SOCKET_API 1 +| #define _NETBSD_SOURCE 1 +| #define _OPENBSD_SOURCE 1 +| #define _POSIX_PTHREAD_SEMANTICS 1 +| #define __STDC_WANT_IEC_60559_ATTRIBS_EXT__ 1 +| #define __STDC_WANT_IEC_60559_BFP_EXT__ 1 +| #define __STDC_WANT_IEC_60559_DFP_EXT__ 1 +| #define __STDC_WANT_IEC_60559_FUNCS_EXT__ 1 +| #define __STDC_WANT_IEC_60559_TYPES_EXT__ 1 +| #define __STDC_WANT_LIB_EXT2__ 1 +| #define __STDC_WANT_MATH_SPEC_FUNCS__ 1 +| #define _TANDEM_SOURCE 1 +| #define __EXTENSIONS__ 1 +| #define HAVE_DLFCN_H 1 +| #define LT_OBJDIR ".libs/" +| #define INSTALLPREFIX "/Users/yangzuhao/Downloads/libiconv-1.17/output" +| #define HAVE_VISIBILITY 1 +| #define HAVE_ICONV 1 +| #define ICONV_CONST +| #define HAVE_CFPREFERENCESCOPYAPPVALUE 1 +| #define HAVE_CFLOCALECOPYPREFERREDLANGUAGES 1 +| #define HAVE_ICONV 1 +| #define HAVE_MBSTATE_T 1 +| #define HAVE_WCHAR_T 1 +| #define HAVE_GETC_UNLOCKED 1 +| #define HAVE_MBRTOWC 1 +| #define HAVE_WCRTOMB 1 +| #define HAVE_MBSINIT 1 +| #define HAVE_SETLOCALE 1 +| #define HAVE_MEMMOVE 1 +| #define HAVE_LANGINFO_CODESET 1 +| #define HAVE_SYMLINK 1 +| #define HAVE_FACCESSAT 1 +| #define HAVE_REALPATH 1 +| #define HAVE_LSTAT 1 +| #define HAVE_READLINKAT 1 +| #define HAVE_FCNTL 1 +| #define HAVE_GETDTABLESIZE 1 +| #define HAVE_GETPROGNAME 1 +| #define HAVE_READLINK 1 +| #define HAVE_SETENV 1 +| #define HAVE_WORKING_O_NOATIME 0 +| #define HAVE_WORKING_O_NOFOLLOW 1 +| #define HAVE_WCHAR_H 1 +| #define WORDS_LITTLEENDIAN 1 +| #define HAVE_ALLOCA_H 1 +| #define HAVE_ALLOCA 1 +| /* end confdefs.h. */ +| +| +| +| #include +| #if defined __MACH__ && defined __APPLE__ +| /* Avoid a crash on Mac OS X. */ +| #include +| #include +| #include +| #include +| #include +| #include +| /* The exception port on which our thread listens. */ +| static mach_port_t our_exception_port; +| /* The main function of the thread listening for exceptions of type +| EXC_BAD_ACCESS. */ +| static void * +| mach_exception_thread (void *arg) +| { +| /* Buffer for a message to be received. */ +| struct { +| mach_msg_header_t head; +| mach_msg_body_t msgh_body; +| char data[1024]; +| } msg; +| mach_msg_return_t retval; +| /* Wait for a message on the exception port. */ +| retval = mach_msg (&msg.head, MACH_RCV_MSG | MACH_RCV_LARGE, 0, sizeof (msg), +| our_exception_port, MACH_MSG_TIMEOUT_NONE, MACH_PORT_NULL); +| if (retval != MACH_MSG_SUCCESS) +| abort (); +| exit (1); +| } +| static void +| nocrash_init (void) +| { +| mach_port_t self = mach_task_self (); +| /* Allocate a port on which the thread shall listen for exceptions. */ +| if (mach_port_allocate (self, MACH_PORT_RIGHT_RECEIVE, &our_exception_port) +| == KERN_SUCCESS) { +| /* See https://web.mit.edu/darwin/src/modules/xnu/osfmk/man/mach_port_insert_right.html. */ +| if (mach_port_insert_right (self, our_exception_port, our_exception_port, +| MACH_MSG_TYPE_MAKE_SEND) +| == KERN_SUCCESS) { +| /* The exceptions we want to catch. Only EXC_BAD_ACCESS is interesting +| for us. */ +| exception_mask_t mask = EXC_MASK_BAD_ACCESS; +| /* Create the thread listening on the exception port. */ +| pthread_attr_t attr; +| pthread_t thread; +| if (pthread_attr_init (&attr) == 0 +| && pthread_attr_setdetachstate (&attr, PTHREAD_CREATE_DETACHED) == 0 +| && pthread_create (&thread, &attr, mach_exception_thread, NULL) == 0) { +| pthread_attr_destroy (&attr); +| /* Replace the exception port info for these exceptions with our own. +| Note that we replace the exception port for the entire task, not only +| for a particular thread. This has the effect that when our exception +| port gets the message, the thread specific exception port has already +| been asked, and we don't need to bother about it. +| See https://web.mit.edu/darwin/src/modules/xnu/osfmk/man/task_set_exception_ports.html. */ +| task_set_exception_ports (self, mask, our_exception_port, +| EXCEPTION_DEFAULT, MACHINE_THREAD_STATE); +| } +| } +| } +| } +| #elif defined _WIN32 && ! defined __CYGWIN__ +| /* Avoid a crash on native Windows. */ +| #define WIN32_LEAN_AND_MEAN +| #include +| #include +| static LONG WINAPI +| exception_filter (EXCEPTION_POINTERS *ExceptionInfo) +| { +| switch (ExceptionInfo->ExceptionRecord->ExceptionCode) +| { +| case EXCEPTION_ACCESS_VIOLATION: +| case EXCEPTION_IN_PAGE_ERROR: +| case EXCEPTION_STACK_OVERFLOW: +| case EXCEPTION_GUARD_PAGE: +| case EXCEPTION_PRIV_INSTRUCTION: +| case EXCEPTION_ILLEGAL_INSTRUCTION: +| case EXCEPTION_DATATYPE_MISALIGNMENT: +| case EXCEPTION_ARRAY_BOUNDS_EXCEEDED: +| case EXCEPTION_NONCONTINUABLE_EXCEPTION: +| exit (1); +| } +| return EXCEPTION_CONTINUE_SEARCH; +| } +| static void +| nocrash_init (void) +| { +| SetUnhandledExceptionFilter ((LPTOP_LEVEL_EXCEPTION_FILTER) exception_filter); +| } +| #else +| /* Avoid a crash on POSIX systems. */ +| #include +| #include +| /* A POSIX signal handler. */ +| static void +| exception_handler (int sig) +| { +| _exit (1); +| } +| static void +| nocrash_init (void) +| { +| #ifdef SIGSEGV +| signal (SIGSEGV, exception_handler); +| #endif +| #ifdef SIGBUS +| signal (SIGBUS, exception_handler); +| #endif +| } +| #endif +| +| #include +| #include +| #include +| +| int +| main (void) +| { +| +| int result = 0; +| /* This test fails on Solaris 10. */ +| { +| char *name = realpath ("conftest.a", NULL); +| if (!(name && *name == '/')) +| result |= 1; +| free (name); +| } +| /* This test fails on older versions of Cygwin. */ +| { +| char *name = realpath ("conftest.b/../conftest.a", NULL); +| if (name != NULL) +| result |= 2; +| free (name); +| } +| /* This test fails on Cygwin 2.9. */ +| #if HAVE_LSTAT +| { +| char *name = realpath ("conftest.l/../conftest.a", NULL); +| if (name != NULL || errno != ENOTDIR) +| result |= 4; +| free (name); +| } +| #endif +| /* This test fails on Mac OS X 10.13, OpenBSD 6.0. */ +| { +| char *name = realpath ("conftest.a/", NULL); +| if (name != NULL) +| result |= 8; +| free (name); +| } +| /* This test fails on AIX 7, Solaris 10. */ +| { +| char *name1 = realpath (".", NULL); +| char *name2 = realpath ("conftest.d//./..", NULL); +| if (! name1 || ! name2 || strcmp (name1, name2)) +| result |= 16; +| free (name1); +| free (name2); +| } +| #ifdef __linux__ +| /* On Linux, // is the same as /. See also double-slash-root.m4. +| realpath() should respect this. +| This test fails on musl libc 1.2.2. */ +| { +| char *name = realpath ("//", NULL); +| if (! name || strcmp (name, "/")) +| result |= 32; +| free (name); +| } +| #endif +| return result; +| +| ; +| return 0; +| } +| +configure:20533: result: no +configure:20557: checking for getcwd +configure:20557: gcc -o conftest -g -O2 conftest.c >&5 +configure:20557: $? = 0 +configure:20557: result: yes +configure:20764: checking for C/C++ restrict keyword +configure:20794: gcc -c -g -O2 conftest.c >&5 +configure:20794: $? = 0 +configure:20803: result: __restrict__ +configure:21272: checking if environ is properly declared +configure:21296: gcc -c -g -O2 conftest.c >&5 +configure:21296: $? = 0 +configure:21304: result: no +configure:21319: checking whether the preprocessor supports include_next +configure:21358: gcc -c -g -O2 -Iconftestd1b -Iconftestd2 conftest.c >&5 +configure:21358: $? = 0 +configure:21381: result: yes +configure:21403: checking whether source code line length is unlimited +configure:21428: result: yes +configure:21439: checking for complete errno.h +configure:21514: result: yes +configure:21819: checking for gcc options needed to detect all undeclared functions +configure:21841: gcc -c -g -O2 conftest.c >&5 +conftest.c:82:8: error: call to undeclared library function 'strchr' with type 'char *(const char *, int)'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration] +(void) strchr; + ^ +conftest.c:82:8: note: include the header or explicitly provide a declaration for 'strchr' +1 error generated. +configure:21841: $? = 1 +configure: failed program was: +| /* confdefs.h */ +| #define PACKAGE_NAME "libiconv" +| #define PACKAGE_TARNAME "libiconv" +| #define PACKAGE_VERSION "1.17" +| #define PACKAGE_STRING "libiconv 1.17" +| #define PACKAGE_BUGREPORT "" +| #define PACKAGE_URL "" +| #define PACKAGE "libiconv" +| #define VERSION "1.17" +| #define HAVE_STDIO_H 1 +| #define HAVE_STDLIB_H 1 +| #define HAVE_STRING_H 1 +| #define HAVE_INTTYPES_H 1 +| #define HAVE_STDINT_H 1 +| #define HAVE_STRINGS_H 1 +| #define HAVE_SYS_STAT_H 1 +| #define HAVE_SYS_TYPES_H 1 +| #define HAVE_UNISTD_H 1 +| #define HAVE_WCHAR_H 1 +| #define HAVE_SYS_PARAM_H 1 +| #define HAVE_SYS_SOCKET_H 1 +| #define HAVE_LIMITS_H 1 +| #define HAVE_SYS_TIME_H 1 +| #define STDC_HEADERS 1 +| #define _ALL_SOURCE 1 +| #define _DARWIN_C_SOURCE 1 +| #define _GNU_SOURCE 1 +| #define _HPUX_ALT_XOPEN_SOCKET_API 1 +| #define _NETBSD_SOURCE 1 +| #define _OPENBSD_SOURCE 1 +| #define _POSIX_PTHREAD_SEMANTICS 1 +| #define __STDC_WANT_IEC_60559_ATTRIBS_EXT__ 1 +| #define __STDC_WANT_IEC_60559_BFP_EXT__ 1 +| #define __STDC_WANT_IEC_60559_DFP_EXT__ 1 +| #define __STDC_WANT_IEC_60559_FUNCS_EXT__ 1 +| #define __STDC_WANT_IEC_60559_TYPES_EXT__ 1 +| #define __STDC_WANT_LIB_EXT2__ 1 +| #define __STDC_WANT_MATH_SPEC_FUNCS__ 1 +| #define _TANDEM_SOURCE 1 +| #define __EXTENSIONS__ 1 +| #define HAVE_DLFCN_H 1 +| #define LT_OBJDIR ".libs/" +| #define INSTALLPREFIX "/Users/yangzuhao/Downloads/libiconv-1.17/output" +| #define HAVE_VISIBILITY 1 +| #define HAVE_ICONV 1 +| #define ICONV_CONST +| #define HAVE_CFPREFERENCESCOPYAPPVALUE 1 +| #define HAVE_CFLOCALECOPYPREFERREDLANGUAGES 1 +| #define HAVE_ICONV 1 +| #define HAVE_MBSTATE_T 1 +| #define HAVE_WCHAR_T 1 +| #define HAVE_GETC_UNLOCKED 1 +| #define HAVE_MBRTOWC 1 +| #define HAVE_WCRTOMB 1 +| #define HAVE_MBSINIT 1 +| #define HAVE_SETLOCALE 1 +| #define HAVE_MEMMOVE 1 +| #define HAVE_LANGINFO_CODESET 1 +| #define HAVE_SYMLINK 1 +| #define HAVE_FACCESSAT 1 +| #define HAVE_REALPATH 1 +| #define HAVE_LSTAT 1 +| #define HAVE_READLINKAT 1 +| #define HAVE_FCNTL 1 +| #define HAVE_GETDTABLESIZE 1 +| #define HAVE_GETPROGNAME 1 +| #define HAVE_READLINK 1 +| #define HAVE_SETENV 1 +| #define HAVE_WORKING_O_NOATIME 0 +| #define HAVE_WORKING_O_NOFOLLOW 1 +| #define HAVE_WCHAR_H 1 +| #define WORDS_LITTLEENDIAN 1 +| #define HAVE_ALLOCA_H 1 +| #define HAVE_ALLOCA 1 +| #define HAVE_GETCWD 1 +| #define restrict __restrict__ +| /* end confdefs.h. */ +| +| int +| main (void) +| { +| (void) strchr; +| ; +| return 0; +| } +configure:21868: gcc -c -g -O2 conftest.c >&5 +configure:21868: $? = 0 +configure:21885: result: none needed +configure:21899: checking whether strerror_r is declared +configure:21899: gcc -c -g -O2 conftest.c >&5 -Werror=implicit-function-declaration +configure:21899: $? = 0 +configure:21899: result: yes +configure:21918: checking whether strerror_r returns char * +configure:21943: gcc -c -g -O2 conftest.c >&5 +conftest.c:86:13: error: indirection requires pointer operand ('int' invalid) + char x = *strerror_r (0, buf, sizeof buf); + ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +conftest.c:87:10: warning: incompatible integer to pointer conversion initializing 'char *' with an expression of type 'int' [-Wint-conversion] + char *p = strerror_r (0, buf, sizeof buf); + ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +1 warning and 1 error generated. +configure:21943: $? = 1 +configure: failed program was: +| /* confdefs.h */ +| #define PACKAGE_NAME "libiconv" +| #define PACKAGE_TARNAME "libiconv" +| #define PACKAGE_VERSION "1.17" +| #define PACKAGE_STRING "libiconv 1.17" +| #define PACKAGE_BUGREPORT "" +| #define PACKAGE_URL "" +| #define PACKAGE "libiconv" +| #define VERSION "1.17" +| #define HAVE_STDIO_H 1 +| #define HAVE_STDLIB_H 1 +| #define HAVE_STRING_H 1 +| #define HAVE_INTTYPES_H 1 +| #define HAVE_STDINT_H 1 +| #define HAVE_STRINGS_H 1 +| #define HAVE_SYS_STAT_H 1 +| #define HAVE_SYS_TYPES_H 1 +| #define HAVE_UNISTD_H 1 +| #define HAVE_WCHAR_H 1 +| #define HAVE_SYS_PARAM_H 1 +| #define HAVE_SYS_SOCKET_H 1 +| #define HAVE_LIMITS_H 1 +| #define HAVE_SYS_TIME_H 1 +| #define STDC_HEADERS 1 +| #define _ALL_SOURCE 1 +| #define _DARWIN_C_SOURCE 1 +| #define _GNU_SOURCE 1 +| #define _HPUX_ALT_XOPEN_SOCKET_API 1 +| #define _NETBSD_SOURCE 1 +| #define _OPENBSD_SOURCE 1 +| #define _POSIX_PTHREAD_SEMANTICS 1 +| #define __STDC_WANT_IEC_60559_ATTRIBS_EXT__ 1 +| #define __STDC_WANT_IEC_60559_BFP_EXT__ 1 +| #define __STDC_WANT_IEC_60559_DFP_EXT__ 1 +| #define __STDC_WANT_IEC_60559_FUNCS_EXT__ 1 +| #define __STDC_WANT_IEC_60559_TYPES_EXT__ 1 +| #define __STDC_WANT_LIB_EXT2__ 1 +| #define __STDC_WANT_MATH_SPEC_FUNCS__ 1 +| #define _TANDEM_SOURCE 1 +| #define __EXTENSIONS__ 1 +| #define HAVE_DLFCN_H 1 +| #define LT_OBJDIR ".libs/" +| #define INSTALLPREFIX "/Users/yangzuhao/Downloads/libiconv-1.17/output" +| #define HAVE_VISIBILITY 1 +| #define HAVE_ICONV 1 +| #define ICONV_CONST +| #define HAVE_CFPREFERENCESCOPYAPPVALUE 1 +| #define HAVE_CFLOCALECOPYPREFERREDLANGUAGES 1 +| #define HAVE_ICONV 1 +| #define HAVE_MBSTATE_T 1 +| #define HAVE_WCHAR_T 1 +| #define HAVE_GETC_UNLOCKED 1 +| #define HAVE_MBRTOWC 1 +| #define HAVE_WCRTOMB 1 +| #define HAVE_MBSINIT 1 +| #define HAVE_SETLOCALE 1 +| #define HAVE_MEMMOVE 1 +| #define HAVE_LANGINFO_CODESET 1 +| #define HAVE_SYMLINK 1 +| #define HAVE_FACCESSAT 1 +| #define HAVE_REALPATH 1 +| #define HAVE_LSTAT 1 +| #define HAVE_READLINKAT 1 +| #define HAVE_FCNTL 1 +| #define HAVE_GETDTABLESIZE 1 +| #define HAVE_GETPROGNAME 1 +| #define HAVE_READLINK 1 +| #define HAVE_SETENV 1 +| #define HAVE_WORKING_O_NOATIME 0 +| #define HAVE_WORKING_O_NOFOLLOW 1 +| #define HAVE_WCHAR_H 1 +| #define WORDS_LITTLEENDIAN 1 +| #define HAVE_ALLOCA_H 1 +| #define HAVE_ALLOCA 1 +| #define HAVE_GETCWD 1 +| #define restrict __restrict__ +| #define HAVE_DECL_STRERROR_R 1 +| #define HAVE_STRERROR_R 1 +| /* end confdefs.h. */ +| #include +| int +| main (void) +| { +| +| char buf[100]; +| char x = *strerror_r (0, buf, sizeof buf); +| char *p = strerror_r (0, buf, sizeof buf); +| return !p || x; +| +| ; +| return 0; +| } +configure:21952: result: no +configure:21964: checking whether ctype.h defines __header_inline +configure:21978: gcc -E conftest.c +configure:21978: $? = 0 +configure:21986: result: yes +configure:22036: checking for pid_t +configure:22036: gcc -c -g -O2 conftest.c >&5 +configure:22036: $? = 0 +configure:22036: gcc -c -g -O2 conftest.c >&5 +conftest.c:113:20: error: expected expression +if (sizeof ((pid_t))) + ^ +1 error generated. +configure:22036: $? = 1 +configure: failed program was: +| /* confdefs.h */ +| #define PACKAGE_NAME "libiconv" +| #define PACKAGE_TARNAME "libiconv" +| #define PACKAGE_VERSION "1.17" +| #define PACKAGE_STRING "libiconv 1.17" +| #define PACKAGE_BUGREPORT "" +| #define PACKAGE_URL "" +| #define PACKAGE "libiconv" +| #define VERSION "1.17" +| #define HAVE_STDIO_H 1 +| #define HAVE_STDLIB_H 1 +| #define HAVE_STRING_H 1 +| #define HAVE_INTTYPES_H 1 +| #define HAVE_STDINT_H 1 +| #define HAVE_STRINGS_H 1 +| #define HAVE_SYS_STAT_H 1 +| #define HAVE_SYS_TYPES_H 1 +| #define HAVE_UNISTD_H 1 +| #define HAVE_WCHAR_H 1 +| #define HAVE_SYS_PARAM_H 1 +| #define HAVE_SYS_SOCKET_H 1 +| #define HAVE_LIMITS_H 1 +| #define HAVE_SYS_TIME_H 1 +| #define STDC_HEADERS 1 +| #define _ALL_SOURCE 1 +| #define _DARWIN_C_SOURCE 1 +| #define _GNU_SOURCE 1 +| #define _HPUX_ALT_XOPEN_SOCKET_API 1 +| #define _NETBSD_SOURCE 1 +| #define _OPENBSD_SOURCE 1 +| #define _POSIX_PTHREAD_SEMANTICS 1 +| #define __STDC_WANT_IEC_60559_ATTRIBS_EXT__ 1 +| #define __STDC_WANT_IEC_60559_BFP_EXT__ 1 +| #define __STDC_WANT_IEC_60559_DFP_EXT__ 1 +| #define __STDC_WANT_IEC_60559_FUNCS_EXT__ 1 +| #define __STDC_WANT_IEC_60559_TYPES_EXT__ 1 +| #define __STDC_WANT_LIB_EXT2__ 1 +| #define __STDC_WANT_MATH_SPEC_FUNCS__ 1 +| #define _TANDEM_SOURCE 1 +| #define __EXTENSIONS__ 1 +| #define HAVE_DLFCN_H 1 +| #define LT_OBJDIR ".libs/" +| #define INSTALLPREFIX "/Users/yangzuhao/Downloads/libiconv-1.17/output" +| #define HAVE_VISIBILITY 1 +| #define HAVE_ICONV 1 +| #define ICONV_CONST +| #define HAVE_CFPREFERENCESCOPYAPPVALUE 1 +| #define HAVE_CFLOCALECOPYPREFERREDLANGUAGES 1 +| #define HAVE_ICONV 1 +| #define HAVE_MBSTATE_T 1 +| #define HAVE_WCHAR_T 1 +| #define HAVE_GETC_UNLOCKED 1 +| #define HAVE_MBRTOWC 1 +| #define HAVE_WCRTOMB 1 +| #define HAVE_MBSINIT 1 +| #define HAVE_SETLOCALE 1 +| #define HAVE_MEMMOVE 1 +| #define HAVE_LANGINFO_CODESET 1 +| #define HAVE_SYMLINK 1 +| #define HAVE_FACCESSAT 1 +| #define HAVE_REALPATH 1 +| #define HAVE_LSTAT 1 +| #define HAVE_READLINKAT 1 +| #define HAVE_FCNTL 1 +| #define HAVE_GETDTABLESIZE 1 +| #define HAVE_GETPROGNAME 1 +| #define HAVE_READLINK 1 +| #define HAVE_SETENV 1 +| #define HAVE_WORKING_O_NOATIME 0 +| #define HAVE_WORKING_O_NOFOLLOW 1 +| #define HAVE_WCHAR_H 1 +| #define WORDS_LITTLEENDIAN 1 +| #define HAVE_ALLOCA_H 1 +| #define HAVE_ALLOCA 1 +| #define HAVE_GETCWD 1 +| #define restrict __restrict__ +| #define HAVE_DECL_STRERROR_R 1 +| #define HAVE_STRERROR_R 1 +| #define HAVE___HEADER_INLINE 1 +| /* end confdefs.h. */ +| #include +| #ifdef HAVE_STDIO_H +| # include +| #endif +| #ifdef HAVE_STDLIB_H +| # include +| #endif +| #ifdef HAVE_STRING_H +| # include +| #endif +| #ifdef HAVE_INTTYPES_H +| # include +| #endif +| #ifdef HAVE_STDINT_H +| # include +| #endif +| #ifdef HAVE_STRINGS_H +| # include +| #endif +| #ifdef HAVE_SYS_TYPES_H +| # include +| #endif +| #ifdef HAVE_SYS_STAT_H +| # include +| #endif +| #ifdef HAVE_UNISTD_H +| # include +| #endif +| +| int +| main (void) +| { +| if (sizeof ((pid_t))) +| return 0; +| ; +| return 0; +| } +configure:22036: result: yes +configure:22072: checking for mode_t +configure:22072: gcc -c -g -O2 conftest.c >&5 +configure:22072: $? = 0 +configure:22072: gcc -c -g -O2 conftest.c >&5 +conftest.c:112:21: error: expected expression +if (sizeof ((mode_t))) + ^ +1 error generated. +configure:22072: $? = 1 +configure: failed program was: +| /* confdefs.h */ +| #define PACKAGE_NAME "libiconv" +| #define PACKAGE_TARNAME "libiconv" +| #define PACKAGE_VERSION "1.17" +| #define PACKAGE_STRING "libiconv 1.17" +| #define PACKAGE_BUGREPORT "" +| #define PACKAGE_URL "" +| #define PACKAGE "libiconv" +| #define VERSION "1.17" +| #define HAVE_STDIO_H 1 +| #define HAVE_STDLIB_H 1 +| #define HAVE_STRING_H 1 +| #define HAVE_INTTYPES_H 1 +| #define HAVE_STDINT_H 1 +| #define HAVE_STRINGS_H 1 +| #define HAVE_SYS_STAT_H 1 +| #define HAVE_SYS_TYPES_H 1 +| #define HAVE_UNISTD_H 1 +| #define HAVE_WCHAR_H 1 +| #define HAVE_SYS_PARAM_H 1 +| #define HAVE_SYS_SOCKET_H 1 +| #define HAVE_LIMITS_H 1 +| #define HAVE_SYS_TIME_H 1 +| #define STDC_HEADERS 1 +| #define _ALL_SOURCE 1 +| #define _DARWIN_C_SOURCE 1 +| #define _GNU_SOURCE 1 +| #define _HPUX_ALT_XOPEN_SOCKET_API 1 +| #define _NETBSD_SOURCE 1 +| #define _OPENBSD_SOURCE 1 +| #define _POSIX_PTHREAD_SEMANTICS 1 +| #define __STDC_WANT_IEC_60559_ATTRIBS_EXT__ 1 +| #define __STDC_WANT_IEC_60559_BFP_EXT__ 1 +| #define __STDC_WANT_IEC_60559_DFP_EXT__ 1 +| #define __STDC_WANT_IEC_60559_FUNCS_EXT__ 1 +| #define __STDC_WANT_IEC_60559_TYPES_EXT__ 1 +| #define __STDC_WANT_LIB_EXT2__ 1 +| #define __STDC_WANT_MATH_SPEC_FUNCS__ 1 +| #define _TANDEM_SOURCE 1 +| #define __EXTENSIONS__ 1 +| #define HAVE_DLFCN_H 1 +| #define LT_OBJDIR ".libs/" +| #define INSTALLPREFIX "/Users/yangzuhao/Downloads/libiconv-1.17/output" +| #define HAVE_VISIBILITY 1 +| #define HAVE_ICONV 1 +| #define ICONV_CONST +| #define HAVE_CFPREFERENCESCOPYAPPVALUE 1 +| #define HAVE_CFLOCALECOPYPREFERREDLANGUAGES 1 +| #define HAVE_ICONV 1 +| #define HAVE_MBSTATE_T 1 +| #define HAVE_WCHAR_T 1 +| #define HAVE_GETC_UNLOCKED 1 +| #define HAVE_MBRTOWC 1 +| #define HAVE_WCRTOMB 1 +| #define HAVE_MBSINIT 1 +| #define HAVE_SETLOCALE 1 +| #define HAVE_MEMMOVE 1 +| #define HAVE_LANGINFO_CODESET 1 +| #define HAVE_SYMLINK 1 +| #define HAVE_FACCESSAT 1 +| #define HAVE_REALPATH 1 +| #define HAVE_LSTAT 1 +| #define HAVE_READLINKAT 1 +| #define HAVE_FCNTL 1 +| #define HAVE_GETDTABLESIZE 1 +| #define HAVE_GETPROGNAME 1 +| #define HAVE_READLINK 1 +| #define HAVE_SETENV 1 +| #define HAVE_WORKING_O_NOATIME 0 +| #define HAVE_WORKING_O_NOFOLLOW 1 +| #define HAVE_WCHAR_H 1 +| #define WORDS_LITTLEENDIAN 1 +| #define HAVE_ALLOCA_H 1 +| #define HAVE_ALLOCA 1 +| #define HAVE_GETCWD 1 +| #define restrict __restrict__ +| #define HAVE_DECL_STRERROR_R 1 +| #define HAVE_STRERROR_R 1 +| #define HAVE___HEADER_INLINE 1 +| /* end confdefs.h. */ +| #include +| #ifdef HAVE_STDIO_H +| # include +| #endif +| #ifdef HAVE_STDLIB_H +| # include +| #endif +| #ifdef HAVE_STRING_H +| # include +| #endif +| #ifdef HAVE_INTTYPES_H +| # include +| #endif +| #ifdef HAVE_STDINT_H +| # include +| #endif +| #ifdef HAVE_STRINGS_H +| # include +| #endif +| #ifdef HAVE_SYS_TYPES_H +| # include +| #endif +| #ifdef HAVE_SYS_STAT_H +| # include +| #endif +| #ifdef HAVE_UNISTD_H +| # include +| #endif +| int +| main (void) +| { +| if (sizeof ((mode_t))) +| return 0; +| ; +| return 0; +| } +configure:22072: result: yes +configure:22192: checking whether stat file-mode macros are broken +configure:22220: gcc -c -g -O2 conftest.c >&5 +configure:22220: $? = 0 +configure:22228: result: no +configure:22415: checking for nlink_t +configure:22415: gcc -c -g -O2 conftest.c >&5 +configure:22415: $? = 0 +configure:22415: gcc -c -g -O2 conftest.c >&5 +conftest.c:87:22: error: expected expression +if (sizeof ((nlink_t))) + ^ +1 error generated. +configure:22415: $? = 1 +configure: failed program was: +| /* confdefs.h */ +| #define PACKAGE_NAME "libiconv" +| #define PACKAGE_TARNAME "libiconv" +| #define PACKAGE_VERSION "1.17" +| #define PACKAGE_STRING "libiconv 1.17" +| #define PACKAGE_BUGREPORT "" +| #define PACKAGE_URL "" +| #define PACKAGE "libiconv" +| #define VERSION "1.17" +| #define HAVE_STDIO_H 1 +| #define HAVE_STDLIB_H 1 +| #define HAVE_STRING_H 1 +| #define HAVE_INTTYPES_H 1 +| #define HAVE_STDINT_H 1 +| #define HAVE_STRINGS_H 1 +| #define HAVE_SYS_STAT_H 1 +| #define HAVE_SYS_TYPES_H 1 +| #define HAVE_UNISTD_H 1 +| #define HAVE_WCHAR_H 1 +| #define HAVE_SYS_PARAM_H 1 +| #define HAVE_SYS_SOCKET_H 1 +| #define HAVE_LIMITS_H 1 +| #define HAVE_SYS_TIME_H 1 +| #define STDC_HEADERS 1 +| #define _ALL_SOURCE 1 +| #define _DARWIN_C_SOURCE 1 +| #define _GNU_SOURCE 1 +| #define _HPUX_ALT_XOPEN_SOCKET_API 1 +| #define _NETBSD_SOURCE 1 +| #define _OPENBSD_SOURCE 1 +| #define _POSIX_PTHREAD_SEMANTICS 1 +| #define __STDC_WANT_IEC_60559_ATTRIBS_EXT__ 1 +| #define __STDC_WANT_IEC_60559_BFP_EXT__ 1 +| #define __STDC_WANT_IEC_60559_DFP_EXT__ 1 +| #define __STDC_WANT_IEC_60559_FUNCS_EXT__ 1 +| #define __STDC_WANT_IEC_60559_TYPES_EXT__ 1 +| #define __STDC_WANT_LIB_EXT2__ 1 +| #define __STDC_WANT_MATH_SPEC_FUNCS__ 1 +| #define _TANDEM_SOURCE 1 +| #define __EXTENSIONS__ 1 +| #define HAVE_DLFCN_H 1 +| #define LT_OBJDIR ".libs/" +| #define INSTALLPREFIX "/Users/yangzuhao/Downloads/libiconv-1.17/output" +| #define HAVE_VISIBILITY 1 +| #define HAVE_ICONV 1 +| #define ICONV_CONST +| #define HAVE_CFPREFERENCESCOPYAPPVALUE 1 +| #define HAVE_CFLOCALECOPYPREFERREDLANGUAGES 1 +| #define HAVE_ICONV 1 +| #define HAVE_MBSTATE_T 1 +| #define HAVE_WCHAR_T 1 +| #define HAVE_GETC_UNLOCKED 1 +| #define HAVE_MBRTOWC 1 +| #define HAVE_WCRTOMB 1 +| #define HAVE_MBSINIT 1 +| #define HAVE_SETLOCALE 1 +| #define HAVE_MEMMOVE 1 +| #define HAVE_LANGINFO_CODESET 1 +| #define HAVE_SYMLINK 1 +| #define HAVE_FACCESSAT 1 +| #define HAVE_REALPATH 1 +| #define HAVE_LSTAT 1 +| #define HAVE_READLINKAT 1 +| #define HAVE_FCNTL 1 +| #define HAVE_GETDTABLESIZE 1 +| #define HAVE_GETPROGNAME 1 +| #define HAVE_READLINK 1 +| #define HAVE_SETENV 1 +| #define HAVE_WORKING_O_NOATIME 0 +| #define HAVE_WORKING_O_NOFOLLOW 1 +| #define HAVE_WCHAR_H 1 +| #define WORDS_LITTLEENDIAN 1 +| #define HAVE_ALLOCA_H 1 +| #define HAVE_ALLOCA 1 +| #define HAVE_GETCWD 1 +| #define restrict __restrict__ +| #define HAVE_DECL_STRERROR_R 1 +| #define HAVE_STRERROR_R 1 +| #define HAVE___HEADER_INLINE 1 +| /* end confdefs.h. */ +| #include +| #include +| +| int +| main (void) +| { +| if (sizeof ((nlink_t))) +| return 0; +| ; +| return 0; +| } +configure:22415: result: yes +configure:22531: checking whether getdtablesize is declared +configure:22531: gcc -c -g -O2 conftest.c >&5 -Werror=implicit-function-declaration +configure:22531: $? = 0 +configure:22531: result: yes +configure:22624: checking whether limits.h has WORD_BIT, BOOL_WIDTH etc. +configure:22649: gcc -c -g -O2 conftest.c >&5 +conftest.c:88:24: error: use of undeclared identifier 'ULLONG_WIDTH' + int ullw = ULLONG_WIDTH; + ^ +conftest.c:89:22: error: use of undeclared identifier 'BOOL_WIDTH' + int bw = BOOL_WIDTH; + ^ +2 errors generated. +configure:22649: $? = 1 +configure: failed program was: +| /* confdefs.h */ +| #define PACKAGE_NAME "libiconv" +| #define PACKAGE_TARNAME "libiconv" +| #define PACKAGE_VERSION "1.17" +| #define PACKAGE_STRING "libiconv 1.17" +| #define PACKAGE_BUGREPORT "" +| #define PACKAGE_URL "" +| #define PACKAGE "libiconv" +| #define VERSION "1.17" +| #define HAVE_STDIO_H 1 +| #define HAVE_STDLIB_H 1 +| #define HAVE_STRING_H 1 +| #define HAVE_INTTYPES_H 1 +| #define HAVE_STDINT_H 1 +| #define HAVE_STRINGS_H 1 +| #define HAVE_SYS_STAT_H 1 +| #define HAVE_SYS_TYPES_H 1 +| #define HAVE_UNISTD_H 1 +| #define HAVE_WCHAR_H 1 +| #define HAVE_SYS_PARAM_H 1 +| #define HAVE_SYS_SOCKET_H 1 +| #define HAVE_LIMITS_H 1 +| #define HAVE_SYS_TIME_H 1 +| #define STDC_HEADERS 1 +| #define _ALL_SOURCE 1 +| #define _DARWIN_C_SOURCE 1 +| #define _GNU_SOURCE 1 +| #define _HPUX_ALT_XOPEN_SOCKET_API 1 +| #define _NETBSD_SOURCE 1 +| #define _OPENBSD_SOURCE 1 +| #define _POSIX_PTHREAD_SEMANTICS 1 +| #define __STDC_WANT_IEC_60559_ATTRIBS_EXT__ 1 +| #define __STDC_WANT_IEC_60559_BFP_EXT__ 1 +| #define __STDC_WANT_IEC_60559_DFP_EXT__ 1 +| #define __STDC_WANT_IEC_60559_FUNCS_EXT__ 1 +| #define __STDC_WANT_IEC_60559_TYPES_EXT__ 1 +| #define __STDC_WANT_LIB_EXT2__ 1 +| #define __STDC_WANT_MATH_SPEC_FUNCS__ 1 +| #define _TANDEM_SOURCE 1 +| #define __EXTENSIONS__ 1 +| #define HAVE_DLFCN_H 1 +| #define LT_OBJDIR ".libs/" +| #define INSTALLPREFIX "/Users/yangzuhao/Downloads/libiconv-1.17/output" +| #define HAVE_VISIBILITY 1 +| #define HAVE_ICONV 1 +| #define ICONV_CONST +| #define HAVE_CFPREFERENCESCOPYAPPVALUE 1 +| #define HAVE_CFLOCALECOPYPREFERREDLANGUAGES 1 +| #define HAVE_ICONV 1 +| #define HAVE_MBSTATE_T 1 +| #define HAVE_WCHAR_T 1 +| #define HAVE_GETC_UNLOCKED 1 +| #define HAVE_MBRTOWC 1 +| #define HAVE_WCRTOMB 1 +| #define HAVE_MBSINIT 1 +| #define HAVE_SETLOCALE 1 +| #define HAVE_MEMMOVE 1 +| #define HAVE_LANGINFO_CODESET 1 +| #define HAVE_SYMLINK 1 +| #define HAVE_FACCESSAT 1 +| #define HAVE_REALPATH 1 +| #define HAVE_LSTAT 1 +| #define HAVE_READLINKAT 1 +| #define HAVE_FCNTL 1 +| #define HAVE_GETDTABLESIZE 1 +| #define HAVE_GETPROGNAME 1 +| #define HAVE_READLINK 1 +| #define HAVE_SETENV 1 +| #define HAVE_WORKING_O_NOATIME 0 +| #define HAVE_WORKING_O_NOFOLLOW 1 +| #define HAVE_WCHAR_H 1 +| #define WORDS_LITTLEENDIAN 1 +| #define HAVE_ALLOCA_H 1 +| #define HAVE_ALLOCA 1 +| #define HAVE_GETCWD 1 +| #define restrict __restrict__ +| #define HAVE_DECL_STRERROR_R 1 +| #define HAVE_STRERROR_R 1 +| #define HAVE___HEADER_INLINE 1 +| #define HAVE_DECL_GETDTABLESIZE 1 +| /* end confdefs.h. */ +| #ifndef __STDC_WANT_IEC_60559_BFP_EXT__ +| #define __STDC_WANT_IEC_60559_BFP_EXT__ 1 +| #endif +| #include +| long long llm = LLONG_MAX; +| int wb = WORD_BIT; +| int ullw = ULLONG_WIDTH; +| int bw = BOOL_WIDTH; +| +| int +| main (void) +| { +| +| ; +| return 0; +| } +configure:22657: result: no +configure:22666: checking for wint_t +configure:22684: gcc -c -g -O2 conftest.c >&5 +configure:22684: $? = 0 +configure:22692: result: yes +configure:22699: checking whether wint_t is large enough +configure:22718: gcc -c -g -O2 conftest.c >&5 +configure:22718: $? = 0 +configure:22726: result: yes +configure:22739: checking whether the compiler produces multi-arch binaries +configure:22754: gcc -c -g -O2 conftest.c >&5 +configure:22754: $? = 0 +configure:22782: result: no +configure:22914: checking whether stdint.h conforms to C99 +configure:23091: gcc -c -g -O2 conftest.c >&5 +configure:23091: $? = 0 +configure:23176: gcc -o conftest -g -O2 conftest.c >&5 +configure:23176: $? = 0 +configure:23176: ./conftest +configure:23176: $? = 0 +configure:23189: result: yes +configure:23200: checking whether stdint.h works without ISO C predefines +configure:23233: gcc -c -g -O2 conftest.c >&5 +configure:23233: $? = 0 +configure:23240: result: yes +configure:23251: checking whether stdint.h has UINTMAX_WIDTH etc. +configure:23284: gcc -c -g -O2 conftest.c >&5 +conftest.c:99:24: error: use of undeclared identifier 'UINTMAX_WIDTH' + int iw = UINTMAX_WIDTH; + ^ +1 error generated. +configure:23284: $? = 1 +configure: failed program was: +| /* confdefs.h */ +| #define PACKAGE_NAME "libiconv" +| #define PACKAGE_TARNAME "libiconv" +| #define PACKAGE_VERSION "1.17" +| #define PACKAGE_STRING "libiconv 1.17" +| #define PACKAGE_BUGREPORT "" +| #define PACKAGE_URL "" +| #define PACKAGE "libiconv" +| #define VERSION "1.17" +| #define HAVE_STDIO_H 1 +| #define HAVE_STDLIB_H 1 +| #define HAVE_STRING_H 1 +| #define HAVE_INTTYPES_H 1 +| #define HAVE_STDINT_H 1 +| #define HAVE_STRINGS_H 1 +| #define HAVE_SYS_STAT_H 1 +| #define HAVE_SYS_TYPES_H 1 +| #define HAVE_UNISTD_H 1 +| #define HAVE_WCHAR_H 1 +| #define HAVE_SYS_PARAM_H 1 +| #define HAVE_SYS_SOCKET_H 1 +| #define HAVE_LIMITS_H 1 +| #define HAVE_SYS_TIME_H 1 +| #define STDC_HEADERS 1 +| #define _ALL_SOURCE 1 +| #define _DARWIN_C_SOURCE 1 +| #define _GNU_SOURCE 1 +| #define _HPUX_ALT_XOPEN_SOCKET_API 1 +| #define _NETBSD_SOURCE 1 +| #define _OPENBSD_SOURCE 1 +| #define _POSIX_PTHREAD_SEMANTICS 1 +| #define __STDC_WANT_IEC_60559_ATTRIBS_EXT__ 1 +| #define __STDC_WANT_IEC_60559_BFP_EXT__ 1 +| #define __STDC_WANT_IEC_60559_DFP_EXT__ 1 +| #define __STDC_WANT_IEC_60559_FUNCS_EXT__ 1 +| #define __STDC_WANT_IEC_60559_TYPES_EXT__ 1 +| #define __STDC_WANT_LIB_EXT2__ 1 +| #define __STDC_WANT_MATH_SPEC_FUNCS__ 1 +| #define _TANDEM_SOURCE 1 +| #define __EXTENSIONS__ 1 +| #define HAVE_DLFCN_H 1 +| #define LT_OBJDIR ".libs/" +| #define INSTALLPREFIX "/Users/yangzuhao/Downloads/libiconv-1.17/output" +| #define HAVE_VISIBILITY 1 +| #define HAVE_ICONV 1 +| #define ICONV_CONST +| #define HAVE_CFPREFERENCESCOPYAPPVALUE 1 +| #define HAVE_CFLOCALECOPYPREFERREDLANGUAGES 1 +| #define HAVE_ICONV 1 +| #define HAVE_MBSTATE_T 1 +| #define HAVE_WCHAR_T 1 +| #define HAVE_GETC_UNLOCKED 1 +| #define HAVE_MBRTOWC 1 +| #define HAVE_WCRTOMB 1 +| #define HAVE_MBSINIT 1 +| #define HAVE_SETLOCALE 1 +| #define HAVE_MEMMOVE 1 +| #define HAVE_LANGINFO_CODESET 1 +| #define HAVE_SYMLINK 1 +| #define HAVE_FACCESSAT 1 +| #define HAVE_REALPATH 1 +| #define HAVE_LSTAT 1 +| #define HAVE_READLINKAT 1 +| #define HAVE_FCNTL 1 +| #define HAVE_GETDTABLESIZE 1 +| #define HAVE_GETPROGNAME 1 +| #define HAVE_READLINK 1 +| #define HAVE_SETENV 1 +| #define HAVE_WORKING_O_NOATIME 0 +| #define HAVE_WORKING_O_NOFOLLOW 1 +| #define HAVE_WCHAR_H 1 +| #define WORDS_LITTLEENDIAN 1 +| #define HAVE_ALLOCA_H 1 +| #define HAVE_ALLOCA 1 +| #define HAVE_GETCWD 1 +| #define restrict __restrict__ +| #define HAVE_DECL_STRERROR_R 1 +| #define HAVE_STRERROR_R 1 +| #define HAVE___HEADER_INLINE 1 +| #define HAVE_DECL_GETDTABLESIZE 1 +| #define HAVE_WINT_T 1 +| #define HAVE_LONG_LONG_INT 1 +| #define HAVE_UNSIGNED_LONG_LONG_INT 1 +| /* end confdefs.h. */ +| +| /* Work if build is not clean. */ +| #define _GL_JUST_INCLUDE_SYSTEM_STDINT_H 1 +| #ifndef __STDC_WANT_IEC_60559_BFP_EXT__ +| #define __STDC_WANT_IEC_60559_BFP_EXT__ 1 +| #endif +| #include +| +| #include +| #include +| #if HAVE_WCHAR_H +| # include +| #endif +| +| int iw = UINTMAX_WIDTH; +| +| int +| main (void) +| { +| +| ; +| return 0; +| } +configure:23290: result: no +configure:23733: checking whether malloc is ptrdiff_t safe +configure:23770: gcc -c -g -O2 conftest.c >&5 +configure:23770: $? = 0 +configure:23779: result: yes +configure:23789: checking whether malloc, realloc, calloc set errno on failure +configure:23807: result: yes +configure:23824: checking whether malloc (0) returns nonnull +configure:23859: gcc -o conftest -g -O2 conftest.c >&5 +configure:23859: $? = 0 +configure:23859: ./conftest +configure:23859: $? = 0 +configure:23871: result: yes +configure:24105: checking whether defines MIN and MAX +configure:24123: gcc -c -g -O2 conftest.c >&5 +conftest.c:88:21: error: call to undeclared function 'MIN'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration] + int x = MIN (42, 17); + ^ +conftest.c:88:21: error: initializer element is not a compile-time constant + int x = MIN (42, 17); + ^~~~~~~~~~~~ +2 errors generated. +configure:24123: $? = 1 +configure: failed program was: +| /* confdefs.h */ +| #define PACKAGE_NAME "libiconv" +| #define PACKAGE_TARNAME "libiconv" +| #define PACKAGE_VERSION "1.17" +| #define PACKAGE_STRING "libiconv 1.17" +| #define PACKAGE_BUGREPORT "" +| #define PACKAGE_URL "" +| #define PACKAGE "libiconv" +| #define VERSION "1.17" +| #define HAVE_STDIO_H 1 +| #define HAVE_STDLIB_H 1 +| #define HAVE_STRING_H 1 +| #define HAVE_INTTYPES_H 1 +| #define HAVE_STDINT_H 1 +| #define HAVE_STRINGS_H 1 +| #define HAVE_SYS_STAT_H 1 +| #define HAVE_SYS_TYPES_H 1 +| #define HAVE_UNISTD_H 1 +| #define HAVE_WCHAR_H 1 +| #define HAVE_SYS_PARAM_H 1 +| #define HAVE_SYS_SOCKET_H 1 +| #define HAVE_LIMITS_H 1 +| #define HAVE_SYS_TIME_H 1 +| #define STDC_HEADERS 1 +| #define _ALL_SOURCE 1 +| #define _DARWIN_C_SOURCE 1 +| #define _GNU_SOURCE 1 +| #define _HPUX_ALT_XOPEN_SOCKET_API 1 +| #define _NETBSD_SOURCE 1 +| #define _OPENBSD_SOURCE 1 +| #define _POSIX_PTHREAD_SEMANTICS 1 +| #define __STDC_WANT_IEC_60559_ATTRIBS_EXT__ 1 +| #define __STDC_WANT_IEC_60559_BFP_EXT__ 1 +| #define __STDC_WANT_IEC_60559_DFP_EXT__ 1 +| #define __STDC_WANT_IEC_60559_FUNCS_EXT__ 1 +| #define __STDC_WANT_IEC_60559_TYPES_EXT__ 1 +| #define __STDC_WANT_LIB_EXT2__ 1 +| #define __STDC_WANT_MATH_SPEC_FUNCS__ 1 +| #define _TANDEM_SOURCE 1 +| #define __EXTENSIONS__ 1 +| #define HAVE_DLFCN_H 1 +| #define LT_OBJDIR ".libs/" +| #define INSTALLPREFIX "/Users/yangzuhao/Downloads/libiconv-1.17/output" +| #define HAVE_VISIBILITY 1 +| #define HAVE_ICONV 1 +| #define ICONV_CONST +| #define HAVE_CFPREFERENCESCOPYAPPVALUE 1 +| #define HAVE_CFLOCALECOPYPREFERREDLANGUAGES 1 +| #define HAVE_ICONV 1 +| #define HAVE_MBSTATE_T 1 +| #define HAVE_WCHAR_T 1 +| #define HAVE_GETC_UNLOCKED 1 +| #define HAVE_MBRTOWC 1 +| #define HAVE_WCRTOMB 1 +| #define HAVE_MBSINIT 1 +| #define HAVE_SETLOCALE 1 +| #define HAVE_MEMMOVE 1 +| #define HAVE_LANGINFO_CODESET 1 +| #define HAVE_SYMLINK 1 +| #define HAVE_FACCESSAT 1 +| #define HAVE_REALPATH 1 +| #define HAVE_LSTAT 1 +| #define HAVE_READLINKAT 1 +| #define HAVE_FCNTL 1 +| #define HAVE_GETDTABLESIZE 1 +| #define HAVE_GETPROGNAME 1 +| #define HAVE_READLINK 1 +| #define HAVE_SETENV 1 +| #define HAVE_WORKING_O_NOATIME 0 +| #define HAVE_WORKING_O_NOFOLLOW 1 +| #define HAVE_WCHAR_H 1 +| #define WORDS_LITTLEENDIAN 1 +| #define HAVE_ALLOCA_H 1 +| #define HAVE_ALLOCA 1 +| #define HAVE_GETCWD 1 +| #define restrict __restrict__ +| #define HAVE_DECL_STRERROR_R 1 +| #define HAVE_STRERROR_R 1 +| #define HAVE___HEADER_INLINE 1 +| #define HAVE_DECL_GETDTABLESIZE 1 +| #define HAVE_WINT_T 1 +| #define HAVE_LONG_LONG_INT 1 +| #define HAVE_UNSIGNED_LONG_LONG_INT 1 +| #define HAVE_MALLOC_POSIX 1 +| #define MALLOC_0_IS_NONNULL 1 +| /* end confdefs.h. */ +| #include +| int x = MIN (42, 17); +| int +| main (void) +| { +| +| ; +| return 0; +| } +configure:24131: result: no +configure:24144: checking whether defines MIN and MAX +configure:24162: gcc -c -g -O2 conftest.c >&5 +configure:24162: $? = 0 +configure:24170: result: yes +configure:24185: checking for O_CLOEXEC +configure:24206: gcc -c -g -O2 conftest.c >&5 +configure:24206: $? = 0 +configure:24214: result: yes +configure:24219: checking for promoted mode_t type +configure:24237: gcc -c -g -O2 conftest.c >&5 +configure:24237: $? = 0 +configure:24246: result: int +configure:24268: checking for sigset_t +configure:24268: gcc -c -g -O2 conftest.c >&5 +configure:24268: $? = 0 +configure:24268: gcc -c -g -O2 conftest.c >&5 +conftest.c:98:23: error: expected expression +if (sizeof ((sigset_t))) + ^ +1 error generated. +configure:24268: $? = 1 +configure: failed program was: +| /* confdefs.h */ +| #define PACKAGE_NAME "libiconv" +| #define PACKAGE_TARNAME "libiconv" +| #define PACKAGE_VERSION "1.17" +| #define PACKAGE_STRING "libiconv 1.17" +| #define PACKAGE_BUGREPORT "" +| #define PACKAGE_URL "" +| #define PACKAGE "libiconv" +| #define VERSION "1.17" +| #define HAVE_STDIO_H 1 +| #define HAVE_STDLIB_H 1 +| #define HAVE_STRING_H 1 +| #define HAVE_INTTYPES_H 1 +| #define HAVE_STDINT_H 1 +| #define HAVE_STRINGS_H 1 +| #define HAVE_SYS_STAT_H 1 +| #define HAVE_SYS_TYPES_H 1 +| #define HAVE_UNISTD_H 1 +| #define HAVE_WCHAR_H 1 +| #define HAVE_SYS_PARAM_H 1 +| #define HAVE_SYS_SOCKET_H 1 +| #define HAVE_LIMITS_H 1 +| #define HAVE_SYS_TIME_H 1 +| #define STDC_HEADERS 1 +| #define _ALL_SOURCE 1 +| #define _DARWIN_C_SOURCE 1 +| #define _GNU_SOURCE 1 +| #define _HPUX_ALT_XOPEN_SOCKET_API 1 +| #define _NETBSD_SOURCE 1 +| #define _OPENBSD_SOURCE 1 +| #define _POSIX_PTHREAD_SEMANTICS 1 +| #define __STDC_WANT_IEC_60559_ATTRIBS_EXT__ 1 +| #define __STDC_WANT_IEC_60559_BFP_EXT__ 1 +| #define __STDC_WANT_IEC_60559_DFP_EXT__ 1 +| #define __STDC_WANT_IEC_60559_FUNCS_EXT__ 1 +| #define __STDC_WANT_IEC_60559_TYPES_EXT__ 1 +| #define __STDC_WANT_LIB_EXT2__ 1 +| #define __STDC_WANT_MATH_SPEC_FUNCS__ 1 +| #define _TANDEM_SOURCE 1 +| #define __EXTENSIONS__ 1 +| #define HAVE_DLFCN_H 1 +| #define LT_OBJDIR ".libs/" +| #define INSTALLPREFIX "/Users/yangzuhao/Downloads/libiconv-1.17/output" +| #define HAVE_VISIBILITY 1 +| #define HAVE_ICONV 1 +| #define ICONV_CONST +| #define HAVE_CFPREFERENCESCOPYAPPVALUE 1 +| #define HAVE_CFLOCALECOPYPREFERREDLANGUAGES 1 +| #define HAVE_ICONV 1 +| #define HAVE_MBSTATE_T 1 +| #define HAVE_WCHAR_T 1 +| #define HAVE_GETC_UNLOCKED 1 +| #define HAVE_MBRTOWC 1 +| #define HAVE_WCRTOMB 1 +| #define HAVE_MBSINIT 1 +| #define HAVE_SETLOCALE 1 +| #define HAVE_MEMMOVE 1 +| #define HAVE_LANGINFO_CODESET 1 +| #define HAVE_SYMLINK 1 +| #define HAVE_FACCESSAT 1 +| #define HAVE_REALPATH 1 +| #define HAVE_LSTAT 1 +| #define HAVE_READLINKAT 1 +| #define HAVE_FCNTL 1 +| #define HAVE_GETDTABLESIZE 1 +| #define HAVE_GETPROGNAME 1 +| #define HAVE_READLINK 1 +| #define HAVE_SETENV 1 +| #define HAVE_WORKING_O_NOATIME 0 +| #define HAVE_WORKING_O_NOFOLLOW 1 +| #define HAVE_WCHAR_H 1 +| #define WORDS_LITTLEENDIAN 1 +| #define HAVE_ALLOCA_H 1 +| #define HAVE_ALLOCA 1 +| #define HAVE_GETCWD 1 +| #define restrict __restrict__ +| #define HAVE_DECL_STRERROR_R 1 +| #define HAVE_STRERROR_R 1 +| #define HAVE___HEADER_INLINE 1 +| #define HAVE_DECL_GETDTABLESIZE 1 +| #define HAVE_WINT_T 1 +| #define HAVE_LONG_LONG_INT 1 +| #define HAVE_UNSIGNED_LONG_LONG_INT 1 +| #define HAVE_MALLOC_POSIX 1 +| #define MALLOC_0_IS_NONNULL 1 +| #define HAVE_MINMAX_IN_SYS_PARAM_H 1 +| #define PROMOTED_MODE_T int +| /* end confdefs.h. */ +| +| #include +| /* Mingw defines sigset_t not in , but in . */ +| #include +| +| +| int +| main (void) +| { +| if (sizeof ((sigset_t))) +| return 0; +| ; +| return 0; +| } +configure:24268: result: yes +configure:24290: checking for SIGPIPE +configure:24317: result: yes +configure:24343: checking whether setenv is declared +configure:24343: gcc -c -g -O2 conftest.c >&5 -Werror=implicit-function-declaration +configure:24343: $? = 0 +configure:24343: result: yes +configure:24354: checking for ssize_t +configure:24372: gcc -c -g -O2 conftest.c >&5 +configure:24372: $? = 0 +configure:24380: result: yes +configure:24388: checking for uid_t in sys/types.h +configure:24409: result: yes +configure:24498: checking for volatile sig_atomic_t +configure:24498: gcc -c -g -O2 conftest.c >&5 +configure:24498: $? = 0 +configure:24498: gcc -c -g -O2 conftest.c >&5 +conftest.c:98:36: error: expected expression +if (sizeof ((volatile sig_atomic_t))) + ^ +1 error generated. +configure:24498: $? = 1 +configure: failed program was: +| /* confdefs.h */ +| #define PACKAGE_NAME "libiconv" +| #define PACKAGE_TARNAME "libiconv" +| #define PACKAGE_VERSION "1.17" +| #define PACKAGE_STRING "libiconv 1.17" +| #define PACKAGE_BUGREPORT "" +| #define PACKAGE_URL "" +| #define PACKAGE "libiconv" +| #define VERSION "1.17" +| #define HAVE_STDIO_H 1 +| #define HAVE_STDLIB_H 1 +| #define HAVE_STRING_H 1 +| #define HAVE_INTTYPES_H 1 +| #define HAVE_STDINT_H 1 +| #define HAVE_STRINGS_H 1 +| #define HAVE_SYS_STAT_H 1 +| #define HAVE_SYS_TYPES_H 1 +| #define HAVE_UNISTD_H 1 +| #define HAVE_WCHAR_H 1 +| #define HAVE_SYS_PARAM_H 1 +| #define HAVE_SYS_SOCKET_H 1 +| #define HAVE_LIMITS_H 1 +| #define HAVE_SYS_TIME_H 1 +| #define STDC_HEADERS 1 +| #define _ALL_SOURCE 1 +| #define _DARWIN_C_SOURCE 1 +| #define _GNU_SOURCE 1 +| #define _HPUX_ALT_XOPEN_SOCKET_API 1 +| #define _NETBSD_SOURCE 1 +| #define _OPENBSD_SOURCE 1 +| #define _POSIX_PTHREAD_SEMANTICS 1 +| #define __STDC_WANT_IEC_60559_ATTRIBS_EXT__ 1 +| #define __STDC_WANT_IEC_60559_BFP_EXT__ 1 +| #define __STDC_WANT_IEC_60559_DFP_EXT__ 1 +| #define __STDC_WANT_IEC_60559_FUNCS_EXT__ 1 +| #define __STDC_WANT_IEC_60559_TYPES_EXT__ 1 +| #define __STDC_WANT_LIB_EXT2__ 1 +| #define __STDC_WANT_MATH_SPEC_FUNCS__ 1 +| #define _TANDEM_SOURCE 1 +| #define __EXTENSIONS__ 1 +| #define HAVE_DLFCN_H 1 +| #define LT_OBJDIR ".libs/" +| #define INSTALLPREFIX "/Users/yangzuhao/Downloads/libiconv-1.17/output" +| #define HAVE_VISIBILITY 1 +| #define HAVE_ICONV 1 +| #define ICONV_CONST +| #define HAVE_CFPREFERENCESCOPYAPPVALUE 1 +| #define HAVE_CFLOCALECOPYPREFERREDLANGUAGES 1 +| #define HAVE_ICONV 1 +| #define HAVE_MBSTATE_T 1 +| #define HAVE_WCHAR_T 1 +| #define HAVE_GETC_UNLOCKED 1 +| #define HAVE_MBRTOWC 1 +| #define HAVE_WCRTOMB 1 +| #define HAVE_MBSINIT 1 +| #define HAVE_SETLOCALE 1 +| #define HAVE_MEMMOVE 1 +| #define HAVE_LANGINFO_CODESET 1 +| #define HAVE_SYMLINK 1 +| #define HAVE_FACCESSAT 1 +| #define HAVE_REALPATH 1 +| #define HAVE_LSTAT 1 +| #define HAVE_READLINKAT 1 +| #define HAVE_FCNTL 1 +| #define HAVE_GETDTABLESIZE 1 +| #define HAVE_GETPROGNAME 1 +| #define HAVE_READLINK 1 +| #define HAVE_SETENV 1 +| #define HAVE_WORKING_O_NOATIME 0 +| #define HAVE_WORKING_O_NOFOLLOW 1 +| #define HAVE_WCHAR_H 1 +| #define WORDS_LITTLEENDIAN 1 +| #define HAVE_ALLOCA_H 1 +| #define HAVE_ALLOCA 1 +| #define HAVE_GETCWD 1 +| #define restrict __restrict__ +| #define HAVE_DECL_STRERROR_R 1 +| #define HAVE_STRERROR_R 1 +| #define HAVE___HEADER_INLINE 1 +| #define HAVE_DECL_GETDTABLESIZE 1 +| #define HAVE_WINT_T 1 +| #define HAVE_LONG_LONG_INT 1 +| #define HAVE_UNSIGNED_LONG_LONG_INT 1 +| #define HAVE_MALLOC_POSIX 1 +| #define MALLOC_0_IS_NONNULL 1 +| #define HAVE_MINMAX_IN_SYS_PARAM_H 1 +| #define PROMOTED_MODE_T int +| #define HAVE_SIGSET_T 1 +| #define HAVE_DECL_SETENV 1 +| /* end confdefs.h. */ +| +| #include +| +| +| int +| main (void) +| { +| if (sizeof ((volatile sig_atomic_t))) +| return 0; +| ; +| return 0; +| } +configure:24498: result: yes +configure:24515: checking for sighandler_t +configure:24515: gcc -c -g -O2 conftest.c >&5 +conftest.c:98:13: error: use of undeclared identifier 'sighandler_t' +if (sizeof (sighandler_t)) + ^ +1 error generated. +configure:24515: $? = 1 +configure: failed program was: +| /* confdefs.h */ +| #define PACKAGE_NAME "libiconv" +| #define PACKAGE_TARNAME "libiconv" +| #define PACKAGE_VERSION "1.17" +| #define PACKAGE_STRING "libiconv 1.17" +| #define PACKAGE_BUGREPORT "" +| #define PACKAGE_URL "" +| #define PACKAGE "libiconv" +| #define VERSION "1.17" +| #define HAVE_STDIO_H 1 +| #define HAVE_STDLIB_H 1 +| #define HAVE_STRING_H 1 +| #define HAVE_INTTYPES_H 1 +| #define HAVE_STDINT_H 1 +| #define HAVE_STRINGS_H 1 +| #define HAVE_SYS_STAT_H 1 +| #define HAVE_SYS_TYPES_H 1 +| #define HAVE_UNISTD_H 1 +| #define HAVE_WCHAR_H 1 +| #define HAVE_SYS_PARAM_H 1 +| #define HAVE_SYS_SOCKET_H 1 +| #define HAVE_LIMITS_H 1 +| #define HAVE_SYS_TIME_H 1 +| #define STDC_HEADERS 1 +| #define _ALL_SOURCE 1 +| #define _DARWIN_C_SOURCE 1 +| #define _GNU_SOURCE 1 +| #define _HPUX_ALT_XOPEN_SOCKET_API 1 +| #define _NETBSD_SOURCE 1 +| #define _OPENBSD_SOURCE 1 +| #define _POSIX_PTHREAD_SEMANTICS 1 +| #define __STDC_WANT_IEC_60559_ATTRIBS_EXT__ 1 +| #define __STDC_WANT_IEC_60559_BFP_EXT__ 1 +| #define __STDC_WANT_IEC_60559_DFP_EXT__ 1 +| #define __STDC_WANT_IEC_60559_FUNCS_EXT__ 1 +| #define __STDC_WANT_IEC_60559_TYPES_EXT__ 1 +| #define __STDC_WANT_LIB_EXT2__ 1 +| #define __STDC_WANT_MATH_SPEC_FUNCS__ 1 +| #define _TANDEM_SOURCE 1 +| #define __EXTENSIONS__ 1 +| #define HAVE_DLFCN_H 1 +| #define LT_OBJDIR ".libs/" +| #define INSTALLPREFIX "/Users/yangzuhao/Downloads/libiconv-1.17/output" +| #define HAVE_VISIBILITY 1 +| #define HAVE_ICONV 1 +| #define ICONV_CONST +| #define HAVE_CFPREFERENCESCOPYAPPVALUE 1 +| #define HAVE_CFLOCALECOPYPREFERREDLANGUAGES 1 +| #define HAVE_ICONV 1 +| #define HAVE_MBSTATE_T 1 +| #define HAVE_WCHAR_T 1 +| #define HAVE_GETC_UNLOCKED 1 +| #define HAVE_MBRTOWC 1 +| #define HAVE_WCRTOMB 1 +| #define HAVE_MBSINIT 1 +| #define HAVE_SETLOCALE 1 +| #define HAVE_MEMMOVE 1 +| #define HAVE_LANGINFO_CODESET 1 +| #define HAVE_SYMLINK 1 +| #define HAVE_FACCESSAT 1 +| #define HAVE_REALPATH 1 +| #define HAVE_LSTAT 1 +| #define HAVE_READLINKAT 1 +| #define HAVE_FCNTL 1 +| #define HAVE_GETDTABLESIZE 1 +| #define HAVE_GETPROGNAME 1 +| #define HAVE_READLINK 1 +| #define HAVE_SETENV 1 +| #define HAVE_WORKING_O_NOATIME 0 +| #define HAVE_WORKING_O_NOFOLLOW 1 +| #define HAVE_WCHAR_H 1 +| #define WORDS_LITTLEENDIAN 1 +| #define HAVE_ALLOCA_H 1 +| #define HAVE_ALLOCA 1 +| #define HAVE_GETCWD 1 +| #define restrict __restrict__ +| #define HAVE_DECL_STRERROR_R 1 +| #define HAVE_STRERROR_R 1 +| #define HAVE___HEADER_INLINE 1 +| #define HAVE_DECL_GETDTABLESIZE 1 +| #define HAVE_WINT_T 1 +| #define HAVE_LONG_LONG_INT 1 +| #define HAVE_UNSIGNED_LONG_LONG_INT 1 +| #define HAVE_MALLOC_POSIX 1 +| #define MALLOC_0_IS_NONNULL 1 +| #define HAVE_MINMAX_IN_SYS_PARAM_H 1 +| #define PROMOTED_MODE_T int +| #define HAVE_SIGSET_T 1 +| #define HAVE_DECL_SETENV 1 +| /* end confdefs.h. */ +| +| #include +| +| +| int +| main (void) +| { +| if (sizeof (sighandler_t)) +| return 0; +| ; +| return 0; +| } +configure:24515: result: no +configure:24867: checking whether C symbols are prefixed with underscore at the linker level +configure:24881: gcc -g -O2 -S conftest.c +configure:24884: $? = 0 +configure:24894: result: yes +configure:24908: checking for stdbool.h that conforms to C99 +configure:24984: gcc -c -g -O2 conftest.c >&5 +conftest.c:149:24: warning: address of 's' will always evaluate to 'true' [-Wpointer-bool-conversion] + bool e = &s; + ~ ^ +conftest.c:154:40: warning: address of array 'p' will always evaluate to 'true' [-Wpointer-bool-conversion] + ~^ +conftest.c:154:35: warning: address of array 'o' will always evaluate to 'true' [-Wpointer-bool-conversion] + ~^ +conftest.c:154:30: warning: address of array 'n' will always evaluate to 'true' [-Wpointer-bool-conversion] + ~^ +conftest.c:153:63: warning: address of array 'i' will always evaluate to 'true' [-Wpointer-bool-conversion] + return (!a + !b + !c + !d + !e + !f + !g + !h + !i + !!j + !k + !!l + ~^ +conftest.c:153:58: warning: address of array 'h' will always evaluate to 'true' [-Wpointer-bool-conversion] + return (!a + !b + !c + !d + !e + !f + !g + !h + !i + !!j + !k + !!l + ~^ +conftest.c:153:53: warning: address of array 'g' will always evaluate to 'true' [-Wpointer-bool-conversion] + return (!a + !b + !c + !d + !e + !f + !g + !h + !i + !!j + !k + !!l + ~^ +conftest.c:153:48: warning: address of array 'f' will always evaluate to 'true' [-Wpointer-bool-conversion] + return (!a + !b + !c + !d + !e + !f + !g + !h + !i + !!j + !k + !!l + ~^ +conftest.c:153:38: warning: address of array 'd' will always evaluate to 'true' [-Wpointer-bool-conversion] + return (!a + !b + !c + !d + !e + !f + !g + !h + !i + !!j + !k + !!l + ~^ +conftest.c:153:33: warning: address of array 'c' will always evaluate to 'true' [-Wpointer-bool-conversion] + return (!a + !b + !c + !d + !e + !f + !g + !h + !i + !!j + !k + !!l + ~^ +conftest.c:153:28: warning: address of array 'b' will always evaluate to 'true' [-Wpointer-bool-conversion] + return (!a + !b + !c + !d + !e + !f + !g + !h + !i + !!j + !k + !!l + ~^ +conftest.c:153:23: warning: address of array 'a' will always evaluate to 'true' [-Wpointer-bool-conversion] + return (!a + !b + !c + !d + !e + !f + !g + !h + !i + !!j + !k + !!l + ~^ +12 warnings generated. +configure:24984: $? = 0 +configure:24992: result: yes +configure:24994: checking for _Bool +configure:24994: gcc -c -g -O2 conftest.c >&5 +configure:24994: $? = 0 +configure:24994: gcc -c -g -O2 conftest.c >&5 +conftest.c:123:20: error: expected expression +if (sizeof ((_Bool))) + ^ +1 error generated. +configure:24994: $? = 1 +configure: failed program was: +| /* confdefs.h */ +| #define PACKAGE_NAME "libiconv" +| #define PACKAGE_TARNAME "libiconv" +| #define PACKAGE_VERSION "1.17" +| #define PACKAGE_STRING "libiconv 1.17" +| #define PACKAGE_BUGREPORT "" +| #define PACKAGE_URL "" +| #define PACKAGE "libiconv" +| #define VERSION "1.17" +| #define HAVE_STDIO_H 1 +| #define HAVE_STDLIB_H 1 +| #define HAVE_STRING_H 1 +| #define HAVE_INTTYPES_H 1 +| #define HAVE_STDINT_H 1 +| #define HAVE_STRINGS_H 1 +| #define HAVE_SYS_STAT_H 1 +| #define HAVE_SYS_TYPES_H 1 +| #define HAVE_UNISTD_H 1 +| #define HAVE_WCHAR_H 1 +| #define HAVE_SYS_PARAM_H 1 +| #define HAVE_SYS_SOCKET_H 1 +| #define HAVE_LIMITS_H 1 +| #define HAVE_SYS_TIME_H 1 +| #define STDC_HEADERS 1 +| #define _ALL_SOURCE 1 +| #define _DARWIN_C_SOURCE 1 +| #define _GNU_SOURCE 1 +| #define _HPUX_ALT_XOPEN_SOCKET_API 1 +| #define _NETBSD_SOURCE 1 +| #define _OPENBSD_SOURCE 1 +| #define _POSIX_PTHREAD_SEMANTICS 1 +| #define __STDC_WANT_IEC_60559_ATTRIBS_EXT__ 1 +| #define __STDC_WANT_IEC_60559_BFP_EXT__ 1 +| #define __STDC_WANT_IEC_60559_DFP_EXT__ 1 +| #define __STDC_WANT_IEC_60559_FUNCS_EXT__ 1 +| #define __STDC_WANT_IEC_60559_TYPES_EXT__ 1 +| #define __STDC_WANT_LIB_EXT2__ 1 +| #define __STDC_WANT_MATH_SPEC_FUNCS__ 1 +| #define _TANDEM_SOURCE 1 +| #define __EXTENSIONS__ 1 +| #define HAVE_DLFCN_H 1 +| #define LT_OBJDIR ".libs/" +| #define INSTALLPREFIX "/Users/yangzuhao/Downloads/libiconv-1.17/output" +| #define HAVE_VISIBILITY 1 +| #define HAVE_ICONV 1 +| #define ICONV_CONST +| #define HAVE_CFPREFERENCESCOPYAPPVALUE 1 +| #define HAVE_CFLOCALECOPYPREFERREDLANGUAGES 1 +| #define HAVE_ICONV 1 +| #define HAVE_MBSTATE_T 1 +| #define HAVE_WCHAR_T 1 +| #define HAVE_GETC_UNLOCKED 1 +| #define HAVE_MBRTOWC 1 +| #define HAVE_WCRTOMB 1 +| #define HAVE_MBSINIT 1 +| #define HAVE_SETLOCALE 1 +| #define HAVE_MEMMOVE 1 +| #define HAVE_LANGINFO_CODESET 1 +| #define HAVE_SYMLINK 1 +| #define HAVE_FACCESSAT 1 +| #define HAVE_REALPATH 1 +| #define HAVE_LSTAT 1 +| #define HAVE_READLINKAT 1 +| #define HAVE_FCNTL 1 +| #define HAVE_GETDTABLESIZE 1 +| #define HAVE_GETPROGNAME 1 +| #define HAVE_READLINK 1 +| #define HAVE_SETENV 1 +| #define HAVE_WORKING_O_NOATIME 0 +| #define HAVE_WORKING_O_NOFOLLOW 1 +| #define HAVE_WCHAR_H 1 +| #define WORDS_LITTLEENDIAN 1 +| #define HAVE_ALLOCA_H 1 +| #define HAVE_ALLOCA 1 +| #define HAVE_GETCWD 1 +| #define restrict __restrict__ +| #define HAVE_DECL_STRERROR_R 1 +| #define HAVE_STRERROR_R 1 +| #define HAVE___HEADER_INLINE 1 +| #define HAVE_DECL_GETDTABLESIZE 1 +| #define HAVE_WINT_T 1 +| #define HAVE_LONG_LONG_INT 1 +| #define HAVE_UNSIGNED_LONG_LONG_INT 1 +| #define HAVE_MALLOC_POSIX 1 +| #define MALLOC_0_IS_NONNULL 1 +| #define HAVE_MINMAX_IN_SYS_PARAM_H 1 +| #define PROMOTED_MODE_T int +| #define HAVE_SIGSET_T 1 +| #define HAVE_DECL_SETENV 1 +| #define USER_LABEL_PREFIX _ +| /* end confdefs.h. */ +| #include +| #ifdef HAVE_STDIO_H +| # include +| #endif +| #ifdef HAVE_STDLIB_H +| # include +| #endif +| #ifdef HAVE_STRING_H +| # include +| #endif +| #ifdef HAVE_INTTYPES_H +| # include +| #endif +| #ifdef HAVE_STDINT_H +| # include +| #endif +| #ifdef HAVE_STRINGS_H +| # include +| #endif +| #ifdef HAVE_SYS_TYPES_H +| # include +| #endif +| #ifdef HAVE_SYS_STAT_H +| # include +| #endif +| #ifdef HAVE_UNISTD_H +| # include +| #endif +| int +| main (void) +| { +| if (sizeof ((_Bool))) +| return 0; +| ; +| return 0; +| } +configure:24994: result: yes +configure:25017: checking for good max_align_t +configure:25047: gcc -c -g -O2 conftest.c >&5 +configure:25047: $? = 0 +configure:25056: result: yes +configure:25068: checking whether NULL can be used in arbitrary expressions +configure:25087: gcc -c -g -O2 conftest.c >&5 +configure:25087: $? = 0 +configure:25095: result: yes +configure:25179: checking whether fcloseall is declared +configure:25179: gcc -c -g -O2 conftest.c >&5 -Werror=implicit-function-declaration +conftest.c:128:10: error: use of undeclared identifier 'fcloseall' + (void) fcloseall; + ^ +1 error generated. +configure:25179: $? = 1 +configure: failed program was: +| /* confdefs.h */ +| #define PACKAGE_NAME "libiconv" +| #define PACKAGE_TARNAME "libiconv" +| #define PACKAGE_VERSION "1.17" +| #define PACKAGE_STRING "libiconv 1.17" +| #define PACKAGE_BUGREPORT "" +| #define PACKAGE_URL "" +| #define PACKAGE "libiconv" +| #define VERSION "1.17" +| #define HAVE_STDIO_H 1 +| #define HAVE_STDLIB_H 1 +| #define HAVE_STRING_H 1 +| #define HAVE_INTTYPES_H 1 +| #define HAVE_STDINT_H 1 +| #define HAVE_STRINGS_H 1 +| #define HAVE_SYS_STAT_H 1 +| #define HAVE_SYS_TYPES_H 1 +| #define HAVE_UNISTD_H 1 +| #define HAVE_WCHAR_H 1 +| #define HAVE_SYS_PARAM_H 1 +| #define HAVE_SYS_SOCKET_H 1 +| #define HAVE_LIMITS_H 1 +| #define HAVE_SYS_TIME_H 1 +| #define STDC_HEADERS 1 +| #define _ALL_SOURCE 1 +| #define _DARWIN_C_SOURCE 1 +| #define _GNU_SOURCE 1 +| #define _HPUX_ALT_XOPEN_SOCKET_API 1 +| #define _NETBSD_SOURCE 1 +| #define _OPENBSD_SOURCE 1 +| #define _POSIX_PTHREAD_SEMANTICS 1 +| #define __STDC_WANT_IEC_60559_ATTRIBS_EXT__ 1 +| #define __STDC_WANT_IEC_60559_BFP_EXT__ 1 +| #define __STDC_WANT_IEC_60559_DFP_EXT__ 1 +| #define __STDC_WANT_IEC_60559_FUNCS_EXT__ 1 +| #define __STDC_WANT_IEC_60559_TYPES_EXT__ 1 +| #define __STDC_WANT_LIB_EXT2__ 1 +| #define __STDC_WANT_MATH_SPEC_FUNCS__ 1 +| #define _TANDEM_SOURCE 1 +| #define __EXTENSIONS__ 1 +| #define HAVE_DLFCN_H 1 +| #define LT_OBJDIR ".libs/" +| #define INSTALLPREFIX "/Users/yangzuhao/Downloads/libiconv-1.17/output" +| #define HAVE_VISIBILITY 1 +| #define HAVE_ICONV 1 +| #define ICONV_CONST +| #define HAVE_CFPREFERENCESCOPYAPPVALUE 1 +| #define HAVE_CFLOCALECOPYPREFERREDLANGUAGES 1 +| #define HAVE_ICONV 1 +| #define HAVE_MBSTATE_T 1 +| #define HAVE_WCHAR_T 1 +| #define HAVE_GETC_UNLOCKED 1 +| #define HAVE_MBRTOWC 1 +| #define HAVE_WCRTOMB 1 +| #define HAVE_MBSINIT 1 +| #define HAVE_SETLOCALE 1 +| #define HAVE_MEMMOVE 1 +| #define HAVE_LANGINFO_CODESET 1 +| #define HAVE_SYMLINK 1 +| #define HAVE_FACCESSAT 1 +| #define HAVE_REALPATH 1 +| #define HAVE_LSTAT 1 +| #define HAVE_READLINKAT 1 +| #define HAVE_FCNTL 1 +| #define HAVE_GETDTABLESIZE 1 +| #define HAVE_GETPROGNAME 1 +| #define HAVE_READLINK 1 +| #define HAVE_SETENV 1 +| #define HAVE_WORKING_O_NOATIME 0 +| #define HAVE_WORKING_O_NOFOLLOW 1 +| #define HAVE_WCHAR_H 1 +| #define WORDS_LITTLEENDIAN 1 +| #define HAVE_ALLOCA_H 1 +| #define HAVE_ALLOCA 1 +| #define HAVE_GETCWD 1 +| #define restrict __restrict__ +| #define HAVE_DECL_STRERROR_R 1 +| #define HAVE_STRERROR_R 1 +| #define HAVE___HEADER_INLINE 1 +| #define HAVE_DECL_GETDTABLESIZE 1 +| #define HAVE_WINT_T 1 +| #define HAVE_LONG_LONG_INT 1 +| #define HAVE_UNSIGNED_LONG_LONG_INT 1 +| #define HAVE_MALLOC_POSIX 1 +| #define MALLOC_0_IS_NONNULL 1 +| #define HAVE_MINMAX_IN_SYS_PARAM_H 1 +| #define PROMOTED_MODE_T int +| #define HAVE_SIGSET_T 1 +| #define HAVE_DECL_SETENV 1 +| #define USER_LABEL_PREFIX _ +| #define HAVE__BOOL 1 +| /* end confdefs.h. */ +| #include +| #ifdef HAVE_STDIO_H +| # include +| #endif +| #ifdef HAVE_STDLIB_H +| # include +| #endif +| #ifdef HAVE_STRING_H +| # include +| #endif +| #ifdef HAVE_INTTYPES_H +| # include +| #endif +| #ifdef HAVE_STDINT_H +| # include +| #endif +| #ifdef HAVE_STRINGS_H +| # include +| #endif +| #ifdef HAVE_SYS_TYPES_H +| # include +| #endif +| #ifdef HAVE_SYS_STAT_H +| # include +| #endif +| #ifdef HAVE_UNISTD_H +| # include +| #endif +| int +| main (void) +| { +| #ifndef fcloseall +| #ifdef __cplusplus +| (void) fcloseall; +| #else +| (void) fcloseall; +| #endif +| #endif +| +| ; +| return 0; +| } +configure:25179: result: no +configure:25266: checking which flavor of printf attribute matches inttypes macros +configure:25294: gcc -c -g -O2 conftest.c >&5 +configure:25294: $? = 0 +configure:25302: result: system +configure:25333: checking whether ecvt is declared +configure:25333: gcc -c -g -O2 conftest.c >&5 -Werror=implicit-function-declaration +configure:25333: $? = 0 +configure:25333: result: yes +configure:25342: checking whether fcvt is declared +configure:25342: gcc -c -g -O2 conftest.c >&5 -Werror=implicit-function-declaration +configure:25342: $? = 0 +configure:25342: result: yes +configure:25351: checking whether gcvt is declared +configure:25351: gcc -c -g -O2 conftest.c >&5 -Werror=implicit-function-declaration +configure:25351: $? = 0 +configure:25351: result: yes +configure:25456: checking whether strerror(0) succeeds +configure:25497: gcc -o conftest -g -O2 conftest.c >&5 +configure:25497: $? = 0 +configure:25497: ./conftest +configure:25497: $? = 4 +configure: program exited with status 4 +configure: failed program was: +| /* confdefs.h */ +| #define PACKAGE_NAME "libiconv" +| #define PACKAGE_TARNAME "libiconv" +| #define PACKAGE_VERSION "1.17" +| #define PACKAGE_STRING "libiconv 1.17" +| #define PACKAGE_BUGREPORT "" +| #define PACKAGE_URL "" +| #define PACKAGE "libiconv" +| #define VERSION "1.17" +| #define HAVE_STDIO_H 1 +| #define HAVE_STDLIB_H 1 +| #define HAVE_STRING_H 1 +| #define HAVE_INTTYPES_H 1 +| #define HAVE_STDINT_H 1 +| #define HAVE_STRINGS_H 1 +| #define HAVE_SYS_STAT_H 1 +| #define HAVE_SYS_TYPES_H 1 +| #define HAVE_UNISTD_H 1 +| #define HAVE_WCHAR_H 1 +| #define HAVE_SYS_PARAM_H 1 +| #define HAVE_SYS_SOCKET_H 1 +| #define HAVE_LIMITS_H 1 +| #define HAVE_SYS_TIME_H 1 +| #define STDC_HEADERS 1 +| #define _ALL_SOURCE 1 +| #define _DARWIN_C_SOURCE 1 +| #define _GNU_SOURCE 1 +| #define _HPUX_ALT_XOPEN_SOCKET_API 1 +| #define _NETBSD_SOURCE 1 +| #define _OPENBSD_SOURCE 1 +| #define _POSIX_PTHREAD_SEMANTICS 1 +| #define __STDC_WANT_IEC_60559_ATTRIBS_EXT__ 1 +| #define __STDC_WANT_IEC_60559_BFP_EXT__ 1 +| #define __STDC_WANT_IEC_60559_DFP_EXT__ 1 +| #define __STDC_WANT_IEC_60559_FUNCS_EXT__ 1 +| #define __STDC_WANT_IEC_60559_TYPES_EXT__ 1 +| #define __STDC_WANT_LIB_EXT2__ 1 +| #define __STDC_WANT_MATH_SPEC_FUNCS__ 1 +| #define _TANDEM_SOURCE 1 +| #define __EXTENSIONS__ 1 +| #define HAVE_DLFCN_H 1 +| #define LT_OBJDIR ".libs/" +| #define INSTALLPREFIX "/Users/yangzuhao/Downloads/libiconv-1.17/output" +| #define HAVE_VISIBILITY 1 +| #define HAVE_ICONV 1 +| #define ICONV_CONST +| #define HAVE_CFPREFERENCESCOPYAPPVALUE 1 +| #define HAVE_CFLOCALECOPYPREFERREDLANGUAGES 1 +| #define HAVE_ICONV 1 +| #define HAVE_MBSTATE_T 1 +| #define HAVE_WCHAR_T 1 +| #define HAVE_GETC_UNLOCKED 1 +| #define HAVE_MBRTOWC 1 +| #define HAVE_WCRTOMB 1 +| #define HAVE_MBSINIT 1 +| #define HAVE_SETLOCALE 1 +| #define HAVE_MEMMOVE 1 +| #define HAVE_LANGINFO_CODESET 1 +| #define HAVE_SYMLINK 1 +| #define HAVE_FACCESSAT 1 +| #define HAVE_REALPATH 1 +| #define HAVE_LSTAT 1 +| #define HAVE_READLINKAT 1 +| #define HAVE_FCNTL 1 +| #define HAVE_GETDTABLESIZE 1 +| #define HAVE_GETPROGNAME 1 +| #define HAVE_READLINK 1 +| #define HAVE_SETENV 1 +| #define HAVE_WORKING_O_NOATIME 0 +| #define HAVE_WORKING_O_NOFOLLOW 1 +| #define HAVE_WCHAR_H 1 +| #define WORDS_LITTLEENDIAN 1 +| #define HAVE_ALLOCA_H 1 +| #define HAVE_ALLOCA 1 +| #define HAVE_GETCWD 1 +| #define restrict __restrict__ +| #define HAVE_DECL_STRERROR_R 1 +| #define HAVE_STRERROR_R 1 +| #define HAVE___HEADER_INLINE 1 +| #define HAVE_DECL_GETDTABLESIZE 1 +| #define HAVE_WINT_T 1 +| #define HAVE_LONG_LONG_INT 1 +| #define HAVE_UNSIGNED_LONG_LONG_INT 1 +| #define HAVE_MALLOC_POSIX 1 +| #define MALLOC_0_IS_NONNULL 1 +| #define HAVE_MINMAX_IN_SYS_PARAM_H 1 +| #define PROMOTED_MODE_T int +| #define HAVE_SIGSET_T 1 +| #define HAVE_DECL_SETENV 1 +| #define USER_LABEL_PREFIX _ +| #define HAVE__BOOL 1 +| #define HAVE_DECL_FCLOSEALL 0 +| #define __USE_MINGW_ANSI_STDIO 1 +| #define HAVE_DECL_ECVT 1 +| #define HAVE_DECL_FCVT 1 +| #define HAVE_DECL_GCVT 1 +| /* end confdefs.h. */ +| #include +| #include +| +| int +| main (void) +| { +| int result = 0; +| char *str; +| errno = 0; +| str = strerror (0); +| if (!*str) result |= 1; +| if (errno) result |= 2; +| if (strstr (str, "nknown") || strstr (str, "ndefined")) +| result |= 4; +| return result; +| ; +| return 0; +| } +configure:25509: result: no +configure:25725: checking for struct timespec in +configure:25743: gcc -c -g -O2 conftest.c >&5 +configure:25743: $? = 0 +configure:25751: result: yes +configure:25941: checking for TIME_UTC in +configure:25959: gcc -c -g -O2 conftest.c >&5 +configure:25959: $? = 0 +configure:25967: result: yes +configure:26030: checking whether execvpe is declared +configure:26030: gcc -c -g -O2 conftest.c >&5 -Werror=implicit-function-declaration +conftest.c:135:10: error: use of undeclared identifier 'execvpe' + (void) execvpe; + ^ +1 error generated. +configure:26030: $? = 1 +configure: failed program was: +| /* confdefs.h */ +| #define PACKAGE_NAME "libiconv" +| #define PACKAGE_TARNAME "libiconv" +| #define PACKAGE_VERSION "1.17" +| #define PACKAGE_STRING "libiconv 1.17" +| #define PACKAGE_BUGREPORT "" +| #define PACKAGE_URL "" +| #define PACKAGE "libiconv" +| #define VERSION "1.17" +| #define HAVE_STDIO_H 1 +| #define HAVE_STDLIB_H 1 +| #define HAVE_STRING_H 1 +| #define HAVE_INTTYPES_H 1 +| #define HAVE_STDINT_H 1 +| #define HAVE_STRINGS_H 1 +| #define HAVE_SYS_STAT_H 1 +| #define HAVE_SYS_TYPES_H 1 +| #define HAVE_UNISTD_H 1 +| #define HAVE_WCHAR_H 1 +| #define HAVE_SYS_PARAM_H 1 +| #define HAVE_SYS_SOCKET_H 1 +| #define HAVE_LIMITS_H 1 +| #define HAVE_SYS_TIME_H 1 +| #define STDC_HEADERS 1 +| #define _ALL_SOURCE 1 +| #define _DARWIN_C_SOURCE 1 +| #define _GNU_SOURCE 1 +| #define _HPUX_ALT_XOPEN_SOCKET_API 1 +| #define _NETBSD_SOURCE 1 +| #define _OPENBSD_SOURCE 1 +| #define _POSIX_PTHREAD_SEMANTICS 1 +| #define __STDC_WANT_IEC_60559_ATTRIBS_EXT__ 1 +| #define __STDC_WANT_IEC_60559_BFP_EXT__ 1 +| #define __STDC_WANT_IEC_60559_DFP_EXT__ 1 +| #define __STDC_WANT_IEC_60559_FUNCS_EXT__ 1 +| #define __STDC_WANT_IEC_60559_TYPES_EXT__ 1 +| #define __STDC_WANT_LIB_EXT2__ 1 +| #define __STDC_WANT_MATH_SPEC_FUNCS__ 1 +| #define _TANDEM_SOURCE 1 +| #define __EXTENSIONS__ 1 +| #define HAVE_DLFCN_H 1 +| #define LT_OBJDIR ".libs/" +| #define INSTALLPREFIX "/Users/yangzuhao/Downloads/libiconv-1.17/output" +| #define HAVE_VISIBILITY 1 +| #define HAVE_ICONV 1 +| #define ICONV_CONST +| #define HAVE_CFPREFERENCESCOPYAPPVALUE 1 +| #define HAVE_CFLOCALECOPYPREFERREDLANGUAGES 1 +| #define HAVE_ICONV 1 +| #define HAVE_MBSTATE_T 1 +| #define HAVE_WCHAR_T 1 +| #define HAVE_GETC_UNLOCKED 1 +| #define HAVE_MBRTOWC 1 +| #define HAVE_WCRTOMB 1 +| #define HAVE_MBSINIT 1 +| #define HAVE_SETLOCALE 1 +| #define HAVE_MEMMOVE 1 +| #define HAVE_LANGINFO_CODESET 1 +| #define HAVE_SYMLINK 1 +| #define HAVE_FACCESSAT 1 +| #define HAVE_REALPATH 1 +| #define HAVE_LSTAT 1 +| #define HAVE_READLINKAT 1 +| #define HAVE_FCNTL 1 +| #define HAVE_GETDTABLESIZE 1 +| #define HAVE_GETPROGNAME 1 +| #define HAVE_READLINK 1 +| #define HAVE_SETENV 1 +| #define HAVE_WORKING_O_NOATIME 0 +| #define HAVE_WORKING_O_NOFOLLOW 1 +| #define HAVE_WCHAR_H 1 +| #define WORDS_LITTLEENDIAN 1 +| #define HAVE_ALLOCA_H 1 +| #define HAVE_ALLOCA 1 +| #define HAVE_GETCWD 1 +| #define restrict __restrict__ +| #define HAVE_DECL_STRERROR_R 1 +| #define HAVE_STRERROR_R 1 +| #define HAVE___HEADER_INLINE 1 +| #define HAVE_DECL_GETDTABLESIZE 1 +| #define HAVE_WINT_T 1 +| #define HAVE_LONG_LONG_INT 1 +| #define HAVE_UNSIGNED_LONG_LONG_INT 1 +| #define HAVE_MALLOC_POSIX 1 +| #define MALLOC_0_IS_NONNULL 1 +| #define HAVE_MINMAX_IN_SYS_PARAM_H 1 +| #define PROMOTED_MODE_T int +| #define HAVE_SIGSET_T 1 +| #define HAVE_DECL_SETENV 1 +| #define USER_LABEL_PREFIX _ +| #define HAVE__BOOL 1 +| #define HAVE_DECL_FCLOSEALL 0 +| #define __USE_MINGW_ANSI_STDIO 1 +| #define HAVE_DECL_ECVT 1 +| #define HAVE_DECL_FCVT 1 +| #define HAVE_DECL_GCVT 1 +| #define REPLACE_STRERROR_0 1 +| #define _USE_STD_STAT 1 +| /* end confdefs.h. */ +| #include +| #ifdef HAVE_STDIO_H +| # include +| #endif +| #ifdef HAVE_STDLIB_H +| # include +| #endif +| #ifdef HAVE_STRING_H +| # include +| #endif +| #ifdef HAVE_INTTYPES_H +| # include +| #endif +| #ifdef HAVE_STDINT_H +| # include +| #endif +| #ifdef HAVE_STRINGS_H +| # include +| #endif +| #ifdef HAVE_SYS_TYPES_H +| # include +| #endif +| #ifdef HAVE_SYS_STAT_H +| # include +| #endif +| #ifdef HAVE_UNISTD_H +| # include +| #endif +| int +| main (void) +| { +| #ifndef execvpe +| #ifdef __cplusplus +| (void) execvpe; +| #else +| (void) execvpe; +| #endif +| #endif +| +| ; +| return 0; +| } +configure:26030: result: no +configure:26172: checking whether clearerr_unlocked is declared +configure:26172: gcc -c -g -O2 conftest.c >&5 -Werror=implicit-function-declaration +configure:26172: $? = 0 +configure:26172: result: yes +configure:26181: checking whether feof_unlocked is declared +configure:26181: gcc -c -g -O2 conftest.c >&5 -Werror=implicit-function-declaration +configure:26181: $? = 0 +configure:26181: result: yes +configure:26190: checking whether ferror_unlocked is declared +configure:26190: gcc -c -g -O2 conftest.c >&5 -Werror=implicit-function-declaration +configure:26190: $? = 0 +configure:26190: result: yes +configure:26199: checking whether fflush_unlocked is declared +configure:26199: gcc -c -g -O2 conftest.c >&5 -Werror=implicit-function-declaration +conftest.c:139:10: error: use of undeclared identifier 'fflush_unlocked' + (void) fflush_unlocked; + ^ +1 error generated. +configure:26199: $? = 1 +configure: failed program was: +| /* confdefs.h */ +| #define PACKAGE_NAME "libiconv" +| #define PACKAGE_TARNAME "libiconv" +| #define PACKAGE_VERSION "1.17" +| #define PACKAGE_STRING "libiconv 1.17" +| #define PACKAGE_BUGREPORT "" +| #define PACKAGE_URL "" +| #define PACKAGE "libiconv" +| #define VERSION "1.17" +| #define HAVE_STDIO_H 1 +| #define HAVE_STDLIB_H 1 +| #define HAVE_STRING_H 1 +| #define HAVE_INTTYPES_H 1 +| #define HAVE_STDINT_H 1 +| #define HAVE_STRINGS_H 1 +| #define HAVE_SYS_STAT_H 1 +| #define HAVE_SYS_TYPES_H 1 +| #define HAVE_UNISTD_H 1 +| #define HAVE_WCHAR_H 1 +| #define HAVE_SYS_PARAM_H 1 +| #define HAVE_SYS_SOCKET_H 1 +| #define HAVE_LIMITS_H 1 +| #define HAVE_SYS_TIME_H 1 +| #define STDC_HEADERS 1 +| #define _ALL_SOURCE 1 +| #define _DARWIN_C_SOURCE 1 +| #define _GNU_SOURCE 1 +| #define _HPUX_ALT_XOPEN_SOCKET_API 1 +| #define _NETBSD_SOURCE 1 +| #define _OPENBSD_SOURCE 1 +| #define _POSIX_PTHREAD_SEMANTICS 1 +| #define __STDC_WANT_IEC_60559_ATTRIBS_EXT__ 1 +| #define __STDC_WANT_IEC_60559_BFP_EXT__ 1 +| #define __STDC_WANT_IEC_60559_DFP_EXT__ 1 +| #define __STDC_WANT_IEC_60559_FUNCS_EXT__ 1 +| #define __STDC_WANT_IEC_60559_TYPES_EXT__ 1 +| #define __STDC_WANT_LIB_EXT2__ 1 +| #define __STDC_WANT_MATH_SPEC_FUNCS__ 1 +| #define _TANDEM_SOURCE 1 +| #define __EXTENSIONS__ 1 +| #define HAVE_DLFCN_H 1 +| #define LT_OBJDIR ".libs/" +| #define INSTALLPREFIX "/Users/yangzuhao/Downloads/libiconv-1.17/output" +| #define HAVE_VISIBILITY 1 +| #define HAVE_ICONV 1 +| #define ICONV_CONST +| #define HAVE_CFPREFERENCESCOPYAPPVALUE 1 +| #define HAVE_CFLOCALECOPYPREFERREDLANGUAGES 1 +| #define HAVE_ICONV 1 +| #define HAVE_MBSTATE_T 1 +| #define HAVE_WCHAR_T 1 +| #define HAVE_GETC_UNLOCKED 1 +| #define HAVE_MBRTOWC 1 +| #define HAVE_WCRTOMB 1 +| #define HAVE_MBSINIT 1 +| #define HAVE_SETLOCALE 1 +| #define HAVE_MEMMOVE 1 +| #define HAVE_LANGINFO_CODESET 1 +| #define HAVE_SYMLINK 1 +| #define HAVE_FACCESSAT 1 +| #define HAVE_REALPATH 1 +| #define HAVE_LSTAT 1 +| #define HAVE_READLINKAT 1 +| #define HAVE_FCNTL 1 +| #define HAVE_GETDTABLESIZE 1 +| #define HAVE_GETPROGNAME 1 +| #define HAVE_READLINK 1 +| #define HAVE_SETENV 1 +| #define HAVE_WORKING_O_NOATIME 0 +| #define HAVE_WORKING_O_NOFOLLOW 1 +| #define HAVE_WCHAR_H 1 +| #define WORDS_LITTLEENDIAN 1 +| #define HAVE_ALLOCA_H 1 +| #define HAVE_ALLOCA 1 +| #define HAVE_GETCWD 1 +| #define restrict __restrict__ +| #define HAVE_DECL_STRERROR_R 1 +| #define HAVE_STRERROR_R 1 +| #define HAVE___HEADER_INLINE 1 +| #define HAVE_DECL_GETDTABLESIZE 1 +| #define HAVE_WINT_T 1 +| #define HAVE_LONG_LONG_INT 1 +| #define HAVE_UNSIGNED_LONG_LONG_INT 1 +| #define HAVE_MALLOC_POSIX 1 +| #define MALLOC_0_IS_NONNULL 1 +| #define HAVE_MINMAX_IN_SYS_PARAM_H 1 +| #define PROMOTED_MODE_T int +| #define HAVE_SIGSET_T 1 +| #define HAVE_DECL_SETENV 1 +| #define USER_LABEL_PREFIX _ +| #define HAVE__BOOL 1 +| #define HAVE_DECL_FCLOSEALL 0 +| #define __USE_MINGW_ANSI_STDIO 1 +| #define HAVE_DECL_ECVT 1 +| #define HAVE_DECL_FCVT 1 +| #define HAVE_DECL_GCVT 1 +| #define REPLACE_STRERROR_0 1 +| #define _USE_STD_STAT 1 +| #define HAVE_DECL_EXECVPE 0 +| #define HAVE_DECL_CLEARERR_UNLOCKED 1 +| #define HAVE_DECL_FEOF_UNLOCKED 1 +| #define HAVE_DECL_FERROR_UNLOCKED 1 +| /* end confdefs.h. */ +| #include +| #ifdef HAVE_STDIO_H +| # include +| #endif +| #ifdef HAVE_STDLIB_H +| # include +| #endif +| #ifdef HAVE_STRING_H +| # include +| #endif +| #ifdef HAVE_INTTYPES_H +| # include +| #endif +| #ifdef HAVE_STDINT_H +| # include +| #endif +| #ifdef HAVE_STRINGS_H +| # include +| #endif +| #ifdef HAVE_SYS_TYPES_H +| # include +| #endif +| #ifdef HAVE_SYS_STAT_H +| # include +| #endif +| #ifdef HAVE_UNISTD_H +| # include +| #endif +| int +| main (void) +| { +| #ifndef fflush_unlocked +| #ifdef __cplusplus +| (void) fflush_unlocked; +| #else +| (void) fflush_unlocked; +| #endif +| #endif +| +| ; +| return 0; +| } +configure:26199: result: no +configure:26208: checking whether fgets_unlocked is declared +configure:26208: gcc -c -g -O2 conftest.c >&5 -Werror=implicit-function-declaration +conftest.c:140:10: error: use of undeclared identifier 'fgets_unlocked' + (void) fgets_unlocked; + ^ +1 error generated. +configure:26208: $? = 1 +configure: failed program was: +| /* confdefs.h */ +| #define PACKAGE_NAME "libiconv" +| #define PACKAGE_TARNAME "libiconv" +| #define PACKAGE_VERSION "1.17" +| #define PACKAGE_STRING "libiconv 1.17" +| #define PACKAGE_BUGREPORT "" +| #define PACKAGE_URL "" +| #define PACKAGE "libiconv" +| #define VERSION "1.17" +| #define HAVE_STDIO_H 1 +| #define HAVE_STDLIB_H 1 +| #define HAVE_STRING_H 1 +| #define HAVE_INTTYPES_H 1 +| #define HAVE_STDINT_H 1 +| #define HAVE_STRINGS_H 1 +| #define HAVE_SYS_STAT_H 1 +| #define HAVE_SYS_TYPES_H 1 +| #define HAVE_UNISTD_H 1 +| #define HAVE_WCHAR_H 1 +| #define HAVE_SYS_PARAM_H 1 +| #define HAVE_SYS_SOCKET_H 1 +| #define HAVE_LIMITS_H 1 +| #define HAVE_SYS_TIME_H 1 +| #define STDC_HEADERS 1 +| #define _ALL_SOURCE 1 +| #define _DARWIN_C_SOURCE 1 +| #define _GNU_SOURCE 1 +| #define _HPUX_ALT_XOPEN_SOCKET_API 1 +| #define _NETBSD_SOURCE 1 +| #define _OPENBSD_SOURCE 1 +| #define _POSIX_PTHREAD_SEMANTICS 1 +| #define __STDC_WANT_IEC_60559_ATTRIBS_EXT__ 1 +| #define __STDC_WANT_IEC_60559_BFP_EXT__ 1 +| #define __STDC_WANT_IEC_60559_DFP_EXT__ 1 +| #define __STDC_WANT_IEC_60559_FUNCS_EXT__ 1 +| #define __STDC_WANT_IEC_60559_TYPES_EXT__ 1 +| #define __STDC_WANT_LIB_EXT2__ 1 +| #define __STDC_WANT_MATH_SPEC_FUNCS__ 1 +| #define _TANDEM_SOURCE 1 +| #define __EXTENSIONS__ 1 +| #define HAVE_DLFCN_H 1 +| #define LT_OBJDIR ".libs/" +| #define INSTALLPREFIX "/Users/yangzuhao/Downloads/libiconv-1.17/output" +| #define HAVE_VISIBILITY 1 +| #define HAVE_ICONV 1 +| #define ICONV_CONST +| #define HAVE_CFPREFERENCESCOPYAPPVALUE 1 +| #define HAVE_CFLOCALECOPYPREFERREDLANGUAGES 1 +| #define HAVE_ICONV 1 +| #define HAVE_MBSTATE_T 1 +| #define HAVE_WCHAR_T 1 +| #define HAVE_GETC_UNLOCKED 1 +| #define HAVE_MBRTOWC 1 +| #define HAVE_WCRTOMB 1 +| #define HAVE_MBSINIT 1 +| #define HAVE_SETLOCALE 1 +| #define HAVE_MEMMOVE 1 +| #define HAVE_LANGINFO_CODESET 1 +| #define HAVE_SYMLINK 1 +| #define HAVE_FACCESSAT 1 +| #define HAVE_REALPATH 1 +| #define HAVE_LSTAT 1 +| #define HAVE_READLINKAT 1 +| #define HAVE_FCNTL 1 +| #define HAVE_GETDTABLESIZE 1 +| #define HAVE_GETPROGNAME 1 +| #define HAVE_READLINK 1 +| #define HAVE_SETENV 1 +| #define HAVE_WORKING_O_NOATIME 0 +| #define HAVE_WORKING_O_NOFOLLOW 1 +| #define HAVE_WCHAR_H 1 +| #define WORDS_LITTLEENDIAN 1 +| #define HAVE_ALLOCA_H 1 +| #define HAVE_ALLOCA 1 +| #define HAVE_GETCWD 1 +| #define restrict __restrict__ +| #define HAVE_DECL_STRERROR_R 1 +| #define HAVE_STRERROR_R 1 +| #define HAVE___HEADER_INLINE 1 +| #define HAVE_DECL_GETDTABLESIZE 1 +| #define HAVE_WINT_T 1 +| #define HAVE_LONG_LONG_INT 1 +| #define HAVE_UNSIGNED_LONG_LONG_INT 1 +| #define HAVE_MALLOC_POSIX 1 +| #define MALLOC_0_IS_NONNULL 1 +| #define HAVE_MINMAX_IN_SYS_PARAM_H 1 +| #define PROMOTED_MODE_T int +| #define HAVE_SIGSET_T 1 +| #define HAVE_DECL_SETENV 1 +| #define USER_LABEL_PREFIX _ +| #define HAVE__BOOL 1 +| #define HAVE_DECL_FCLOSEALL 0 +| #define __USE_MINGW_ANSI_STDIO 1 +| #define HAVE_DECL_ECVT 1 +| #define HAVE_DECL_FCVT 1 +| #define HAVE_DECL_GCVT 1 +| #define REPLACE_STRERROR_0 1 +| #define _USE_STD_STAT 1 +| #define HAVE_DECL_EXECVPE 0 +| #define HAVE_DECL_CLEARERR_UNLOCKED 1 +| #define HAVE_DECL_FEOF_UNLOCKED 1 +| #define HAVE_DECL_FERROR_UNLOCKED 1 +| #define HAVE_DECL_FFLUSH_UNLOCKED 0 +| /* end confdefs.h. */ +| #include +| #ifdef HAVE_STDIO_H +| # include +| #endif +| #ifdef HAVE_STDLIB_H +| # include +| #endif +| #ifdef HAVE_STRING_H +| # include +| #endif +| #ifdef HAVE_INTTYPES_H +| # include +| #endif +| #ifdef HAVE_STDINT_H +| # include +| #endif +| #ifdef HAVE_STRINGS_H +| # include +| #endif +| #ifdef HAVE_SYS_TYPES_H +| # include +| #endif +| #ifdef HAVE_SYS_STAT_H +| # include +| #endif +| #ifdef HAVE_UNISTD_H +| # include +| #endif +| int +| main (void) +| { +| #ifndef fgets_unlocked +| #ifdef __cplusplus +| (void) fgets_unlocked; +| #else +| (void) fgets_unlocked; +| #endif +| #endif +| +| ; +| return 0; +| } +configure:26208: result: no +configure:26217: checking whether fputc_unlocked is declared +configure:26217: gcc -c -g -O2 conftest.c >&5 -Werror=implicit-function-declaration +conftest.c:141:10: error: use of undeclared identifier 'fputc_unlocked' + (void) fputc_unlocked; + ^ +1 error generated. +configure:26217: $? = 1 +configure: failed program was: +| /* confdefs.h */ +| #define PACKAGE_NAME "libiconv" +| #define PACKAGE_TARNAME "libiconv" +| #define PACKAGE_VERSION "1.17" +| #define PACKAGE_STRING "libiconv 1.17" +| #define PACKAGE_BUGREPORT "" +| #define PACKAGE_URL "" +| #define PACKAGE "libiconv" +| #define VERSION "1.17" +| #define HAVE_STDIO_H 1 +| #define HAVE_STDLIB_H 1 +| #define HAVE_STRING_H 1 +| #define HAVE_INTTYPES_H 1 +| #define HAVE_STDINT_H 1 +| #define HAVE_STRINGS_H 1 +| #define HAVE_SYS_STAT_H 1 +| #define HAVE_SYS_TYPES_H 1 +| #define HAVE_UNISTD_H 1 +| #define HAVE_WCHAR_H 1 +| #define HAVE_SYS_PARAM_H 1 +| #define HAVE_SYS_SOCKET_H 1 +| #define HAVE_LIMITS_H 1 +| #define HAVE_SYS_TIME_H 1 +| #define STDC_HEADERS 1 +| #define _ALL_SOURCE 1 +| #define _DARWIN_C_SOURCE 1 +| #define _GNU_SOURCE 1 +| #define _HPUX_ALT_XOPEN_SOCKET_API 1 +| #define _NETBSD_SOURCE 1 +| #define _OPENBSD_SOURCE 1 +| #define _POSIX_PTHREAD_SEMANTICS 1 +| #define __STDC_WANT_IEC_60559_ATTRIBS_EXT__ 1 +| #define __STDC_WANT_IEC_60559_BFP_EXT__ 1 +| #define __STDC_WANT_IEC_60559_DFP_EXT__ 1 +| #define __STDC_WANT_IEC_60559_FUNCS_EXT__ 1 +| #define __STDC_WANT_IEC_60559_TYPES_EXT__ 1 +| #define __STDC_WANT_LIB_EXT2__ 1 +| #define __STDC_WANT_MATH_SPEC_FUNCS__ 1 +| #define _TANDEM_SOURCE 1 +| #define __EXTENSIONS__ 1 +| #define HAVE_DLFCN_H 1 +| #define LT_OBJDIR ".libs/" +| #define INSTALLPREFIX "/Users/yangzuhao/Downloads/libiconv-1.17/output" +| #define HAVE_VISIBILITY 1 +| #define HAVE_ICONV 1 +| #define ICONV_CONST +| #define HAVE_CFPREFERENCESCOPYAPPVALUE 1 +| #define HAVE_CFLOCALECOPYPREFERREDLANGUAGES 1 +| #define HAVE_ICONV 1 +| #define HAVE_MBSTATE_T 1 +| #define HAVE_WCHAR_T 1 +| #define HAVE_GETC_UNLOCKED 1 +| #define HAVE_MBRTOWC 1 +| #define HAVE_WCRTOMB 1 +| #define HAVE_MBSINIT 1 +| #define HAVE_SETLOCALE 1 +| #define HAVE_MEMMOVE 1 +| #define HAVE_LANGINFO_CODESET 1 +| #define HAVE_SYMLINK 1 +| #define HAVE_FACCESSAT 1 +| #define HAVE_REALPATH 1 +| #define HAVE_LSTAT 1 +| #define HAVE_READLINKAT 1 +| #define HAVE_FCNTL 1 +| #define HAVE_GETDTABLESIZE 1 +| #define HAVE_GETPROGNAME 1 +| #define HAVE_READLINK 1 +| #define HAVE_SETENV 1 +| #define HAVE_WORKING_O_NOATIME 0 +| #define HAVE_WORKING_O_NOFOLLOW 1 +| #define HAVE_WCHAR_H 1 +| #define WORDS_LITTLEENDIAN 1 +| #define HAVE_ALLOCA_H 1 +| #define HAVE_ALLOCA 1 +| #define HAVE_GETCWD 1 +| #define restrict __restrict__ +| #define HAVE_DECL_STRERROR_R 1 +| #define HAVE_STRERROR_R 1 +| #define HAVE___HEADER_INLINE 1 +| #define HAVE_DECL_GETDTABLESIZE 1 +| #define HAVE_WINT_T 1 +| #define HAVE_LONG_LONG_INT 1 +| #define HAVE_UNSIGNED_LONG_LONG_INT 1 +| #define HAVE_MALLOC_POSIX 1 +| #define MALLOC_0_IS_NONNULL 1 +| #define HAVE_MINMAX_IN_SYS_PARAM_H 1 +| #define PROMOTED_MODE_T int +| #define HAVE_SIGSET_T 1 +| #define HAVE_DECL_SETENV 1 +| #define USER_LABEL_PREFIX _ +| #define HAVE__BOOL 1 +| #define HAVE_DECL_FCLOSEALL 0 +| #define __USE_MINGW_ANSI_STDIO 1 +| #define HAVE_DECL_ECVT 1 +| #define HAVE_DECL_FCVT 1 +| #define HAVE_DECL_GCVT 1 +| #define REPLACE_STRERROR_0 1 +| #define _USE_STD_STAT 1 +| #define HAVE_DECL_EXECVPE 0 +| #define HAVE_DECL_CLEARERR_UNLOCKED 1 +| #define HAVE_DECL_FEOF_UNLOCKED 1 +| #define HAVE_DECL_FERROR_UNLOCKED 1 +| #define HAVE_DECL_FFLUSH_UNLOCKED 0 +| #define HAVE_DECL_FGETS_UNLOCKED 0 +| /* end confdefs.h. */ +| #include +| #ifdef HAVE_STDIO_H +| # include +| #endif +| #ifdef HAVE_STDLIB_H +| # include +| #endif +| #ifdef HAVE_STRING_H +| # include +| #endif +| #ifdef HAVE_INTTYPES_H +| # include +| #endif +| #ifdef HAVE_STDINT_H +| # include +| #endif +| #ifdef HAVE_STRINGS_H +| # include +| #endif +| #ifdef HAVE_SYS_TYPES_H +| # include +| #endif +| #ifdef HAVE_SYS_STAT_H +| # include +| #endif +| #ifdef HAVE_UNISTD_H +| # include +| #endif +| int +| main (void) +| { +| #ifndef fputc_unlocked +| #ifdef __cplusplus +| (void) fputc_unlocked; +| #else +| (void) fputc_unlocked; +| #endif +| #endif +| +| ; +| return 0; +| } +configure:26217: result: no +configure:26226: checking whether fputs_unlocked is declared +configure:26226: gcc -c -g -O2 conftest.c >&5 -Werror=implicit-function-declaration +conftest.c:142:10: error: use of undeclared identifier 'fputs_unlocked' + (void) fputs_unlocked; + ^ +1 error generated. +configure:26226: $? = 1 +configure: failed program was: +| /* confdefs.h */ +| #define PACKAGE_NAME "libiconv" +| #define PACKAGE_TARNAME "libiconv" +| #define PACKAGE_VERSION "1.17" +| #define PACKAGE_STRING "libiconv 1.17" +| #define PACKAGE_BUGREPORT "" +| #define PACKAGE_URL "" +| #define PACKAGE "libiconv" +| #define VERSION "1.17" +| #define HAVE_STDIO_H 1 +| #define HAVE_STDLIB_H 1 +| #define HAVE_STRING_H 1 +| #define HAVE_INTTYPES_H 1 +| #define HAVE_STDINT_H 1 +| #define HAVE_STRINGS_H 1 +| #define HAVE_SYS_STAT_H 1 +| #define HAVE_SYS_TYPES_H 1 +| #define HAVE_UNISTD_H 1 +| #define HAVE_WCHAR_H 1 +| #define HAVE_SYS_PARAM_H 1 +| #define HAVE_SYS_SOCKET_H 1 +| #define HAVE_LIMITS_H 1 +| #define HAVE_SYS_TIME_H 1 +| #define STDC_HEADERS 1 +| #define _ALL_SOURCE 1 +| #define _DARWIN_C_SOURCE 1 +| #define _GNU_SOURCE 1 +| #define _HPUX_ALT_XOPEN_SOCKET_API 1 +| #define _NETBSD_SOURCE 1 +| #define _OPENBSD_SOURCE 1 +| #define _POSIX_PTHREAD_SEMANTICS 1 +| #define __STDC_WANT_IEC_60559_ATTRIBS_EXT__ 1 +| #define __STDC_WANT_IEC_60559_BFP_EXT__ 1 +| #define __STDC_WANT_IEC_60559_DFP_EXT__ 1 +| #define __STDC_WANT_IEC_60559_FUNCS_EXT__ 1 +| #define __STDC_WANT_IEC_60559_TYPES_EXT__ 1 +| #define __STDC_WANT_LIB_EXT2__ 1 +| #define __STDC_WANT_MATH_SPEC_FUNCS__ 1 +| #define _TANDEM_SOURCE 1 +| #define __EXTENSIONS__ 1 +| #define HAVE_DLFCN_H 1 +| #define LT_OBJDIR ".libs/" +| #define INSTALLPREFIX "/Users/yangzuhao/Downloads/libiconv-1.17/output" +| #define HAVE_VISIBILITY 1 +| #define HAVE_ICONV 1 +| #define ICONV_CONST +| #define HAVE_CFPREFERENCESCOPYAPPVALUE 1 +| #define HAVE_CFLOCALECOPYPREFERREDLANGUAGES 1 +| #define HAVE_ICONV 1 +| #define HAVE_MBSTATE_T 1 +| #define HAVE_WCHAR_T 1 +| #define HAVE_GETC_UNLOCKED 1 +| #define HAVE_MBRTOWC 1 +| #define HAVE_WCRTOMB 1 +| #define HAVE_MBSINIT 1 +| #define HAVE_SETLOCALE 1 +| #define HAVE_MEMMOVE 1 +| #define HAVE_LANGINFO_CODESET 1 +| #define HAVE_SYMLINK 1 +| #define HAVE_FACCESSAT 1 +| #define HAVE_REALPATH 1 +| #define HAVE_LSTAT 1 +| #define HAVE_READLINKAT 1 +| #define HAVE_FCNTL 1 +| #define HAVE_GETDTABLESIZE 1 +| #define HAVE_GETPROGNAME 1 +| #define HAVE_READLINK 1 +| #define HAVE_SETENV 1 +| #define HAVE_WORKING_O_NOATIME 0 +| #define HAVE_WORKING_O_NOFOLLOW 1 +| #define HAVE_WCHAR_H 1 +| #define WORDS_LITTLEENDIAN 1 +| #define HAVE_ALLOCA_H 1 +| #define HAVE_ALLOCA 1 +| #define HAVE_GETCWD 1 +| #define restrict __restrict__ +| #define HAVE_DECL_STRERROR_R 1 +| #define HAVE_STRERROR_R 1 +| #define HAVE___HEADER_INLINE 1 +| #define HAVE_DECL_GETDTABLESIZE 1 +| #define HAVE_WINT_T 1 +| #define HAVE_LONG_LONG_INT 1 +| #define HAVE_UNSIGNED_LONG_LONG_INT 1 +| #define HAVE_MALLOC_POSIX 1 +| #define MALLOC_0_IS_NONNULL 1 +| #define HAVE_MINMAX_IN_SYS_PARAM_H 1 +| #define PROMOTED_MODE_T int +| #define HAVE_SIGSET_T 1 +| #define HAVE_DECL_SETENV 1 +| #define USER_LABEL_PREFIX _ +| #define HAVE__BOOL 1 +| #define HAVE_DECL_FCLOSEALL 0 +| #define __USE_MINGW_ANSI_STDIO 1 +| #define HAVE_DECL_ECVT 1 +| #define HAVE_DECL_FCVT 1 +| #define HAVE_DECL_GCVT 1 +| #define REPLACE_STRERROR_0 1 +| #define _USE_STD_STAT 1 +| #define HAVE_DECL_EXECVPE 0 +| #define HAVE_DECL_CLEARERR_UNLOCKED 1 +| #define HAVE_DECL_FEOF_UNLOCKED 1 +| #define HAVE_DECL_FERROR_UNLOCKED 1 +| #define HAVE_DECL_FFLUSH_UNLOCKED 0 +| #define HAVE_DECL_FGETS_UNLOCKED 0 +| #define HAVE_DECL_FPUTC_UNLOCKED 0 +| /* end confdefs.h. */ +| #include +| #ifdef HAVE_STDIO_H +| # include +| #endif +| #ifdef HAVE_STDLIB_H +| # include +| #endif +| #ifdef HAVE_STRING_H +| # include +| #endif +| #ifdef HAVE_INTTYPES_H +| # include +| #endif +| #ifdef HAVE_STDINT_H +| # include +| #endif +| #ifdef HAVE_STRINGS_H +| # include +| #endif +| #ifdef HAVE_SYS_TYPES_H +| # include +| #endif +| #ifdef HAVE_SYS_STAT_H +| # include +| #endif +| #ifdef HAVE_UNISTD_H +| # include +| #endif +| int +| main (void) +| { +| #ifndef fputs_unlocked +| #ifdef __cplusplus +| (void) fputs_unlocked; +| #else +| (void) fputs_unlocked; +| #endif +| #endif +| +| ; +| return 0; +| } +configure:26226: result: no +configure:26235: checking whether fread_unlocked is declared +configure:26235: gcc -c -g -O2 conftest.c >&5 -Werror=implicit-function-declaration +conftest.c:143:10: error: use of undeclared identifier 'fread_unlocked' + (void) fread_unlocked; + ^ +1 error generated. +configure:26235: $? = 1 +configure: failed program was: +| /* confdefs.h */ +| #define PACKAGE_NAME "libiconv" +| #define PACKAGE_TARNAME "libiconv" +| #define PACKAGE_VERSION "1.17" +| #define PACKAGE_STRING "libiconv 1.17" +| #define PACKAGE_BUGREPORT "" +| #define PACKAGE_URL "" +| #define PACKAGE "libiconv" +| #define VERSION "1.17" +| #define HAVE_STDIO_H 1 +| #define HAVE_STDLIB_H 1 +| #define HAVE_STRING_H 1 +| #define HAVE_INTTYPES_H 1 +| #define HAVE_STDINT_H 1 +| #define HAVE_STRINGS_H 1 +| #define HAVE_SYS_STAT_H 1 +| #define HAVE_SYS_TYPES_H 1 +| #define HAVE_UNISTD_H 1 +| #define HAVE_WCHAR_H 1 +| #define HAVE_SYS_PARAM_H 1 +| #define HAVE_SYS_SOCKET_H 1 +| #define HAVE_LIMITS_H 1 +| #define HAVE_SYS_TIME_H 1 +| #define STDC_HEADERS 1 +| #define _ALL_SOURCE 1 +| #define _DARWIN_C_SOURCE 1 +| #define _GNU_SOURCE 1 +| #define _HPUX_ALT_XOPEN_SOCKET_API 1 +| #define _NETBSD_SOURCE 1 +| #define _OPENBSD_SOURCE 1 +| #define _POSIX_PTHREAD_SEMANTICS 1 +| #define __STDC_WANT_IEC_60559_ATTRIBS_EXT__ 1 +| #define __STDC_WANT_IEC_60559_BFP_EXT__ 1 +| #define __STDC_WANT_IEC_60559_DFP_EXT__ 1 +| #define __STDC_WANT_IEC_60559_FUNCS_EXT__ 1 +| #define __STDC_WANT_IEC_60559_TYPES_EXT__ 1 +| #define __STDC_WANT_LIB_EXT2__ 1 +| #define __STDC_WANT_MATH_SPEC_FUNCS__ 1 +| #define _TANDEM_SOURCE 1 +| #define __EXTENSIONS__ 1 +| #define HAVE_DLFCN_H 1 +| #define LT_OBJDIR ".libs/" +| #define INSTALLPREFIX "/Users/yangzuhao/Downloads/libiconv-1.17/output" +| #define HAVE_VISIBILITY 1 +| #define HAVE_ICONV 1 +| #define ICONV_CONST +| #define HAVE_CFPREFERENCESCOPYAPPVALUE 1 +| #define HAVE_CFLOCALECOPYPREFERREDLANGUAGES 1 +| #define HAVE_ICONV 1 +| #define HAVE_MBSTATE_T 1 +| #define HAVE_WCHAR_T 1 +| #define HAVE_GETC_UNLOCKED 1 +| #define HAVE_MBRTOWC 1 +| #define HAVE_WCRTOMB 1 +| #define HAVE_MBSINIT 1 +| #define HAVE_SETLOCALE 1 +| #define HAVE_MEMMOVE 1 +| #define HAVE_LANGINFO_CODESET 1 +| #define HAVE_SYMLINK 1 +| #define HAVE_FACCESSAT 1 +| #define HAVE_REALPATH 1 +| #define HAVE_LSTAT 1 +| #define HAVE_READLINKAT 1 +| #define HAVE_FCNTL 1 +| #define HAVE_GETDTABLESIZE 1 +| #define HAVE_GETPROGNAME 1 +| #define HAVE_READLINK 1 +| #define HAVE_SETENV 1 +| #define HAVE_WORKING_O_NOATIME 0 +| #define HAVE_WORKING_O_NOFOLLOW 1 +| #define HAVE_WCHAR_H 1 +| #define WORDS_LITTLEENDIAN 1 +| #define HAVE_ALLOCA_H 1 +| #define HAVE_ALLOCA 1 +| #define HAVE_GETCWD 1 +| #define restrict __restrict__ +| #define HAVE_DECL_STRERROR_R 1 +| #define HAVE_STRERROR_R 1 +| #define HAVE___HEADER_INLINE 1 +| #define HAVE_DECL_GETDTABLESIZE 1 +| #define HAVE_WINT_T 1 +| #define HAVE_LONG_LONG_INT 1 +| #define HAVE_UNSIGNED_LONG_LONG_INT 1 +| #define HAVE_MALLOC_POSIX 1 +| #define MALLOC_0_IS_NONNULL 1 +| #define HAVE_MINMAX_IN_SYS_PARAM_H 1 +| #define PROMOTED_MODE_T int +| #define HAVE_SIGSET_T 1 +| #define HAVE_DECL_SETENV 1 +| #define USER_LABEL_PREFIX _ +| #define HAVE__BOOL 1 +| #define HAVE_DECL_FCLOSEALL 0 +| #define __USE_MINGW_ANSI_STDIO 1 +| #define HAVE_DECL_ECVT 1 +| #define HAVE_DECL_FCVT 1 +| #define HAVE_DECL_GCVT 1 +| #define REPLACE_STRERROR_0 1 +| #define _USE_STD_STAT 1 +| #define HAVE_DECL_EXECVPE 0 +| #define HAVE_DECL_CLEARERR_UNLOCKED 1 +| #define HAVE_DECL_FEOF_UNLOCKED 1 +| #define HAVE_DECL_FERROR_UNLOCKED 1 +| #define HAVE_DECL_FFLUSH_UNLOCKED 0 +| #define HAVE_DECL_FGETS_UNLOCKED 0 +| #define HAVE_DECL_FPUTC_UNLOCKED 0 +| #define HAVE_DECL_FPUTS_UNLOCKED 0 +| /* end confdefs.h. */ +| #include +| #ifdef HAVE_STDIO_H +| # include +| #endif +| #ifdef HAVE_STDLIB_H +| # include +| #endif +| #ifdef HAVE_STRING_H +| # include +| #endif +| #ifdef HAVE_INTTYPES_H +| # include +| #endif +| #ifdef HAVE_STDINT_H +| # include +| #endif +| #ifdef HAVE_STRINGS_H +| # include +| #endif +| #ifdef HAVE_SYS_TYPES_H +| # include +| #endif +| #ifdef HAVE_SYS_STAT_H +| # include +| #endif +| #ifdef HAVE_UNISTD_H +| # include +| #endif +| int +| main (void) +| { +| #ifndef fread_unlocked +| #ifdef __cplusplus +| (void) fread_unlocked; +| #else +| (void) fread_unlocked; +| #endif +| #endif +| +| ; +| return 0; +| } +configure:26235: result: no +configure:26244: checking whether fwrite_unlocked is declared +configure:26244: gcc -c -g -O2 conftest.c >&5 -Werror=implicit-function-declaration +conftest.c:144:10: error: use of undeclared identifier 'fwrite_unlocked' + (void) fwrite_unlocked; + ^ +1 error generated. +configure:26244: $? = 1 +configure: failed program was: +| /* confdefs.h */ +| #define PACKAGE_NAME "libiconv" +| #define PACKAGE_TARNAME "libiconv" +| #define PACKAGE_VERSION "1.17" +| #define PACKAGE_STRING "libiconv 1.17" +| #define PACKAGE_BUGREPORT "" +| #define PACKAGE_URL "" +| #define PACKAGE "libiconv" +| #define VERSION "1.17" +| #define HAVE_STDIO_H 1 +| #define HAVE_STDLIB_H 1 +| #define HAVE_STRING_H 1 +| #define HAVE_INTTYPES_H 1 +| #define HAVE_STDINT_H 1 +| #define HAVE_STRINGS_H 1 +| #define HAVE_SYS_STAT_H 1 +| #define HAVE_SYS_TYPES_H 1 +| #define HAVE_UNISTD_H 1 +| #define HAVE_WCHAR_H 1 +| #define HAVE_SYS_PARAM_H 1 +| #define HAVE_SYS_SOCKET_H 1 +| #define HAVE_LIMITS_H 1 +| #define HAVE_SYS_TIME_H 1 +| #define STDC_HEADERS 1 +| #define _ALL_SOURCE 1 +| #define _DARWIN_C_SOURCE 1 +| #define _GNU_SOURCE 1 +| #define _HPUX_ALT_XOPEN_SOCKET_API 1 +| #define _NETBSD_SOURCE 1 +| #define _OPENBSD_SOURCE 1 +| #define _POSIX_PTHREAD_SEMANTICS 1 +| #define __STDC_WANT_IEC_60559_ATTRIBS_EXT__ 1 +| #define __STDC_WANT_IEC_60559_BFP_EXT__ 1 +| #define __STDC_WANT_IEC_60559_DFP_EXT__ 1 +| #define __STDC_WANT_IEC_60559_FUNCS_EXT__ 1 +| #define __STDC_WANT_IEC_60559_TYPES_EXT__ 1 +| #define __STDC_WANT_LIB_EXT2__ 1 +| #define __STDC_WANT_MATH_SPEC_FUNCS__ 1 +| #define _TANDEM_SOURCE 1 +| #define __EXTENSIONS__ 1 +| #define HAVE_DLFCN_H 1 +| #define LT_OBJDIR ".libs/" +| #define INSTALLPREFIX "/Users/yangzuhao/Downloads/libiconv-1.17/output" +| #define HAVE_VISIBILITY 1 +| #define HAVE_ICONV 1 +| #define ICONV_CONST +| #define HAVE_CFPREFERENCESCOPYAPPVALUE 1 +| #define HAVE_CFLOCALECOPYPREFERREDLANGUAGES 1 +| #define HAVE_ICONV 1 +| #define HAVE_MBSTATE_T 1 +| #define HAVE_WCHAR_T 1 +| #define HAVE_GETC_UNLOCKED 1 +| #define HAVE_MBRTOWC 1 +| #define HAVE_WCRTOMB 1 +| #define HAVE_MBSINIT 1 +| #define HAVE_SETLOCALE 1 +| #define HAVE_MEMMOVE 1 +| #define HAVE_LANGINFO_CODESET 1 +| #define HAVE_SYMLINK 1 +| #define HAVE_FACCESSAT 1 +| #define HAVE_REALPATH 1 +| #define HAVE_LSTAT 1 +| #define HAVE_READLINKAT 1 +| #define HAVE_FCNTL 1 +| #define HAVE_GETDTABLESIZE 1 +| #define HAVE_GETPROGNAME 1 +| #define HAVE_READLINK 1 +| #define HAVE_SETENV 1 +| #define HAVE_WORKING_O_NOATIME 0 +| #define HAVE_WORKING_O_NOFOLLOW 1 +| #define HAVE_WCHAR_H 1 +| #define WORDS_LITTLEENDIAN 1 +| #define HAVE_ALLOCA_H 1 +| #define HAVE_ALLOCA 1 +| #define HAVE_GETCWD 1 +| #define restrict __restrict__ +| #define HAVE_DECL_STRERROR_R 1 +| #define HAVE_STRERROR_R 1 +| #define HAVE___HEADER_INLINE 1 +| #define HAVE_DECL_GETDTABLESIZE 1 +| #define HAVE_WINT_T 1 +| #define HAVE_LONG_LONG_INT 1 +| #define HAVE_UNSIGNED_LONG_LONG_INT 1 +| #define HAVE_MALLOC_POSIX 1 +| #define MALLOC_0_IS_NONNULL 1 +| #define HAVE_MINMAX_IN_SYS_PARAM_H 1 +| #define PROMOTED_MODE_T int +| #define HAVE_SIGSET_T 1 +| #define HAVE_DECL_SETENV 1 +| #define USER_LABEL_PREFIX _ +| #define HAVE__BOOL 1 +| #define HAVE_DECL_FCLOSEALL 0 +| #define __USE_MINGW_ANSI_STDIO 1 +| #define HAVE_DECL_ECVT 1 +| #define HAVE_DECL_FCVT 1 +| #define HAVE_DECL_GCVT 1 +| #define REPLACE_STRERROR_0 1 +| #define _USE_STD_STAT 1 +| #define HAVE_DECL_EXECVPE 0 +| #define HAVE_DECL_CLEARERR_UNLOCKED 1 +| #define HAVE_DECL_FEOF_UNLOCKED 1 +| #define HAVE_DECL_FERROR_UNLOCKED 1 +| #define HAVE_DECL_FFLUSH_UNLOCKED 0 +| #define HAVE_DECL_FGETS_UNLOCKED 0 +| #define HAVE_DECL_FPUTC_UNLOCKED 0 +| #define HAVE_DECL_FPUTS_UNLOCKED 0 +| #define HAVE_DECL_FREAD_UNLOCKED 0 +| /* end confdefs.h. */ +| #include +| #ifdef HAVE_STDIO_H +| # include +| #endif +| #ifdef HAVE_STDLIB_H +| # include +| #endif +| #ifdef HAVE_STRING_H +| # include +| #endif +| #ifdef HAVE_INTTYPES_H +| # include +| #endif +| #ifdef HAVE_STDINT_H +| # include +| #endif +| #ifdef HAVE_STRINGS_H +| # include +| #endif +| #ifdef HAVE_SYS_TYPES_H +| # include +| #endif +| #ifdef HAVE_SYS_STAT_H +| # include +| #endif +| #ifdef HAVE_UNISTD_H +| # include +| #endif +| int +| main (void) +| { +| #ifndef fwrite_unlocked +| #ifdef __cplusplus +| (void) fwrite_unlocked; +| #else +| (void) fwrite_unlocked; +| #endif +| #endif +| +| ; +| return 0; +| } +configure:26244: result: no +configure:26253: checking whether getc_unlocked is declared +configure:26253: gcc -c -g -O2 conftest.c >&5 -Werror=implicit-function-declaration +configure:26253: $? = 0 +configure:26253: result: yes +configure:26262: checking whether getchar_unlocked is declared +configure:26262: gcc -c -g -O2 conftest.c >&5 -Werror=implicit-function-declaration +configure:26262: $? = 0 +configure:26262: result: yes +configure:26271: checking whether putc_unlocked is declared +configure:26271: gcc -c -g -O2 conftest.c >&5 -Werror=implicit-function-declaration +configure:26271: $? = 0 +configure:26271: result: yes +configure:26280: checking whether putchar_unlocked is declared +configure:26280: gcc -c -g -O2 conftest.c >&5 -Werror=implicit-function-declaration +configure:26280: $? = 0 +configure:26280: result: yes +configure:26350: checking whether uses 'inline' correctly +configure:26406: result: yes +configure:26547: checking whether wcsdup is declared +configure:26547: gcc -c -g -O2 conftest.c >&5 -Werror=implicit-function-declaration +configure:26547: $? = 0 +configure:26547: result: yes +configure:26735: checking for C compiler option to allow warnings +configure:26744: gcc -g -O2 -c conftest.c 2>conftest1.err +configure:26747: $? = 0 +configure:26750: gcc -g -O2 -Wno-error -c conftest.c 2>conftest2.err +configure:26753: $? = 0 +configure:26763: result: -Wno-error +configure:26803: gcc -g -O2 -E conftest.c > conftest.out +configure:26806: $? = 0 +configure:26910: checking for __builtin_expect +configure:26926: gcc -o conftest -g -O2 conftest.c >&5 +configure:26926: $? = 0 +configure:26953: result: yes +configure:27124: checking whether // is distinct from / +configure:27154: result: no +configure:27165: checking whether dup2 works +configure:27258: gcc -o conftest -g -O2 conftest.c >&5 +configure:27258: $? = 0 +configure:27258: ./conftest +configure:27258: $? = 0 +configure:27270: result: yes +configure:27380: checking for error_at_line +configure:27397: gcc -o conftest -g -O2 conftest.c >&5 +conftest.c:123:10: fatal error: 'error.h' file not found +#include + ^~~~~~~~~ +1 error generated. +configure:27397: $? = 1 +configure: failed program was: +| /* confdefs.h */ +| #define PACKAGE_NAME "libiconv" +| #define PACKAGE_TARNAME "libiconv" +| #define PACKAGE_VERSION "1.17" +| #define PACKAGE_STRING "libiconv 1.17" +| #define PACKAGE_BUGREPORT "" +| #define PACKAGE_URL "" +| #define PACKAGE "libiconv" +| #define VERSION "1.17" +| #define HAVE_STDIO_H 1 +| #define HAVE_STDLIB_H 1 +| #define HAVE_STRING_H 1 +| #define HAVE_INTTYPES_H 1 +| #define HAVE_STDINT_H 1 +| #define HAVE_STRINGS_H 1 +| #define HAVE_SYS_STAT_H 1 +| #define HAVE_SYS_TYPES_H 1 +| #define HAVE_UNISTD_H 1 +| #define HAVE_WCHAR_H 1 +| #define HAVE_SYS_PARAM_H 1 +| #define HAVE_SYS_SOCKET_H 1 +| #define HAVE_LIMITS_H 1 +| #define HAVE_SYS_TIME_H 1 +| #define STDC_HEADERS 1 +| #define _ALL_SOURCE 1 +| #define _DARWIN_C_SOURCE 1 +| #define _GNU_SOURCE 1 +| #define _HPUX_ALT_XOPEN_SOCKET_API 1 +| #define _NETBSD_SOURCE 1 +| #define _OPENBSD_SOURCE 1 +| #define _POSIX_PTHREAD_SEMANTICS 1 +| #define __STDC_WANT_IEC_60559_ATTRIBS_EXT__ 1 +| #define __STDC_WANT_IEC_60559_BFP_EXT__ 1 +| #define __STDC_WANT_IEC_60559_DFP_EXT__ 1 +| #define __STDC_WANT_IEC_60559_FUNCS_EXT__ 1 +| #define __STDC_WANT_IEC_60559_TYPES_EXT__ 1 +| #define __STDC_WANT_LIB_EXT2__ 1 +| #define __STDC_WANT_MATH_SPEC_FUNCS__ 1 +| #define _TANDEM_SOURCE 1 +| #define __EXTENSIONS__ 1 +| #define HAVE_DLFCN_H 1 +| #define LT_OBJDIR ".libs/" +| #define INSTALLPREFIX "/Users/yangzuhao/Downloads/libiconv-1.17/output" +| #define HAVE_VISIBILITY 1 +| #define HAVE_ICONV 1 +| #define ICONV_CONST +| #define HAVE_CFPREFERENCESCOPYAPPVALUE 1 +| #define HAVE_CFLOCALECOPYPREFERREDLANGUAGES 1 +| #define HAVE_ICONV 1 +| #define HAVE_MBSTATE_T 1 +| #define HAVE_WCHAR_T 1 +| #define HAVE_GETC_UNLOCKED 1 +| #define HAVE_MBRTOWC 1 +| #define HAVE_WCRTOMB 1 +| #define HAVE_MBSINIT 1 +| #define HAVE_SETLOCALE 1 +| #define HAVE_MEMMOVE 1 +| #define HAVE_LANGINFO_CODESET 1 +| #define HAVE_SYMLINK 1 +| #define HAVE_FACCESSAT 1 +| #define HAVE_REALPATH 1 +| #define HAVE_LSTAT 1 +| #define HAVE_READLINKAT 1 +| #define HAVE_FCNTL 1 +| #define HAVE_GETDTABLESIZE 1 +| #define HAVE_GETPROGNAME 1 +| #define HAVE_READLINK 1 +| #define HAVE_SETENV 1 +| #define HAVE_WORKING_O_NOATIME 0 +| #define HAVE_WORKING_O_NOFOLLOW 1 +| #define HAVE_WCHAR_H 1 +| #define WORDS_LITTLEENDIAN 1 +| #define HAVE_ALLOCA_H 1 +| #define HAVE_ALLOCA 1 +| #define HAVE_GETCWD 1 +| #define restrict __restrict__ +| #define HAVE_DECL_STRERROR_R 1 +| #define HAVE_STRERROR_R 1 +| #define HAVE___HEADER_INLINE 1 +| #define HAVE_DECL_GETDTABLESIZE 1 +| #define HAVE_WINT_T 1 +| #define HAVE_LONG_LONG_INT 1 +| #define HAVE_UNSIGNED_LONG_LONG_INT 1 +| #define HAVE_MALLOC_POSIX 1 +| #define MALLOC_0_IS_NONNULL 1 +| #define HAVE_MINMAX_IN_SYS_PARAM_H 1 +| #define PROMOTED_MODE_T int +| #define HAVE_SIGSET_T 1 +| #define HAVE_DECL_SETENV 1 +| #define USER_LABEL_PREFIX _ +| #define HAVE__BOOL 1 +| #define HAVE_DECL_FCLOSEALL 0 +| #define __USE_MINGW_ANSI_STDIO 1 +| #define HAVE_DECL_ECVT 1 +| #define HAVE_DECL_FCVT 1 +| #define HAVE_DECL_GCVT 1 +| #define REPLACE_STRERROR_0 1 +| #define _USE_STD_STAT 1 +| #define HAVE_DECL_EXECVPE 0 +| #define HAVE_DECL_CLEARERR_UNLOCKED 1 +| #define HAVE_DECL_FEOF_UNLOCKED 1 +| #define HAVE_DECL_FERROR_UNLOCKED 1 +| #define HAVE_DECL_FFLUSH_UNLOCKED 0 +| #define HAVE_DECL_FGETS_UNLOCKED 0 +| #define HAVE_DECL_FPUTC_UNLOCKED 0 +| #define HAVE_DECL_FPUTS_UNLOCKED 0 +| #define HAVE_DECL_FREAD_UNLOCKED 0 +| #define HAVE_DECL_FWRITE_UNLOCKED 0 +| #define HAVE_DECL_GETC_UNLOCKED 1 +| #define HAVE_DECL_GETCHAR_UNLOCKED 1 +| #define HAVE_DECL_PUTC_UNLOCKED 1 +| #define HAVE_DECL_PUTCHAR_UNLOCKED 1 +| #define HAVE_DECL_WCSDUP 1 +| #define HAVE___BUILTIN_EXPECT 1 +| #define GNULIB_CANONICALIZE_LGPL 1 +| #define GNULIB_TEST_CANONICALIZE_FILE_NAME 1 +| #define GNULIB_TEST_REALPATH 1 +| #define GNULIB_TEST_CLOEXEC 1 +| #define GNULIB_TEST_CLOSE 1 +| #define GNULIB_TEST_DUP2 1 +| #define GNULIB_TEST_ENVIRON 1 +| /* end confdefs.h. */ +| #include +| int +| main (void) +| { +| error_at_line (0, 0, "", 0, "an error occurred"); +| ; +| return 0; +| } +configure:27406: result: no +configure:27458: checking whether fcntl handles F_DUPFD correctly +configure:27522: gcc -o conftest -g -O2 conftest.c >&5 +configure:27522: $? = 0 +configure:27522: ./conftest +configure:27522: $? = 0 +configure:27533: result: yes +configure:27551: checking whether fcntl understands F_DUPFD_CLOEXEC +configure:27586: gcc -o conftest -g -O2 conftest.c >&5 +configure:27586: $? = 0 +configure:27586: ./conftest +configure:27586: $? = 0 +configure:27605: gcc -c -g -O2 conftest.c >&5 +configure:27605: $? = 0 +configure:27622: result: yes +configure:27683: checking whether free is known to preserve errno +configure:27707: gcc -c -g -O2 conftest.c >&5 +conftest.c:133:16: error: "'free' is not known to preserve errno" + #error "'free' is not known to preserve errno" + ^ +1 error generated. +configure:27707: $? = 1 +configure: failed program was: +| /* confdefs.h */ +| #define PACKAGE_NAME "libiconv" +| #define PACKAGE_TARNAME "libiconv" +| #define PACKAGE_VERSION "1.17" +| #define PACKAGE_STRING "libiconv 1.17" +| #define PACKAGE_BUGREPORT "" +| #define PACKAGE_URL "" +| #define PACKAGE "libiconv" +| #define VERSION "1.17" +| #define HAVE_STDIO_H 1 +| #define HAVE_STDLIB_H 1 +| #define HAVE_STRING_H 1 +| #define HAVE_INTTYPES_H 1 +| #define HAVE_STDINT_H 1 +| #define HAVE_STRINGS_H 1 +| #define HAVE_SYS_STAT_H 1 +| #define HAVE_SYS_TYPES_H 1 +| #define HAVE_UNISTD_H 1 +| #define HAVE_WCHAR_H 1 +| #define HAVE_SYS_PARAM_H 1 +| #define HAVE_SYS_SOCKET_H 1 +| #define HAVE_LIMITS_H 1 +| #define HAVE_SYS_TIME_H 1 +| #define STDC_HEADERS 1 +| #define _ALL_SOURCE 1 +| #define _DARWIN_C_SOURCE 1 +| #define _GNU_SOURCE 1 +| #define _HPUX_ALT_XOPEN_SOCKET_API 1 +| #define _NETBSD_SOURCE 1 +| #define _OPENBSD_SOURCE 1 +| #define _POSIX_PTHREAD_SEMANTICS 1 +| #define __STDC_WANT_IEC_60559_ATTRIBS_EXT__ 1 +| #define __STDC_WANT_IEC_60559_BFP_EXT__ 1 +| #define __STDC_WANT_IEC_60559_DFP_EXT__ 1 +| #define __STDC_WANT_IEC_60559_FUNCS_EXT__ 1 +| #define __STDC_WANT_IEC_60559_TYPES_EXT__ 1 +| #define __STDC_WANT_LIB_EXT2__ 1 +| #define __STDC_WANT_MATH_SPEC_FUNCS__ 1 +| #define _TANDEM_SOURCE 1 +| #define __EXTENSIONS__ 1 +| #define HAVE_DLFCN_H 1 +| #define LT_OBJDIR ".libs/" +| #define INSTALLPREFIX "/Users/yangzuhao/Downloads/libiconv-1.17/output" +| #define HAVE_VISIBILITY 1 +| #define HAVE_ICONV 1 +| #define ICONV_CONST +| #define HAVE_CFPREFERENCESCOPYAPPVALUE 1 +| #define HAVE_CFLOCALECOPYPREFERREDLANGUAGES 1 +| #define HAVE_ICONV 1 +| #define HAVE_MBSTATE_T 1 +| #define HAVE_WCHAR_T 1 +| #define HAVE_GETC_UNLOCKED 1 +| #define HAVE_MBRTOWC 1 +| #define HAVE_WCRTOMB 1 +| #define HAVE_MBSINIT 1 +| #define HAVE_SETLOCALE 1 +| #define HAVE_MEMMOVE 1 +| #define HAVE_LANGINFO_CODESET 1 +| #define HAVE_SYMLINK 1 +| #define HAVE_FACCESSAT 1 +| #define HAVE_REALPATH 1 +| #define HAVE_LSTAT 1 +| #define HAVE_READLINKAT 1 +| #define HAVE_FCNTL 1 +| #define HAVE_GETDTABLESIZE 1 +| #define HAVE_GETPROGNAME 1 +| #define HAVE_READLINK 1 +| #define HAVE_SETENV 1 +| #define HAVE_WORKING_O_NOATIME 0 +| #define HAVE_WORKING_O_NOFOLLOW 1 +| #define HAVE_WCHAR_H 1 +| #define WORDS_LITTLEENDIAN 1 +| #define HAVE_ALLOCA_H 1 +| #define HAVE_ALLOCA 1 +| #define HAVE_GETCWD 1 +| #define restrict __restrict__ +| #define HAVE_DECL_STRERROR_R 1 +| #define HAVE_STRERROR_R 1 +| #define HAVE___HEADER_INLINE 1 +| #define HAVE_DECL_GETDTABLESIZE 1 +| #define HAVE_WINT_T 1 +| #define HAVE_LONG_LONG_INT 1 +| #define HAVE_UNSIGNED_LONG_LONG_INT 1 +| #define HAVE_MALLOC_POSIX 1 +| #define MALLOC_0_IS_NONNULL 1 +| #define HAVE_MINMAX_IN_SYS_PARAM_H 1 +| #define PROMOTED_MODE_T int +| #define HAVE_SIGSET_T 1 +| #define HAVE_DECL_SETENV 1 +| #define USER_LABEL_PREFIX _ +| #define HAVE__BOOL 1 +| #define HAVE_DECL_FCLOSEALL 0 +| #define __USE_MINGW_ANSI_STDIO 1 +| #define HAVE_DECL_ECVT 1 +| #define HAVE_DECL_FCVT 1 +| #define HAVE_DECL_GCVT 1 +| #define REPLACE_STRERROR_0 1 +| #define _USE_STD_STAT 1 +| #define HAVE_DECL_EXECVPE 0 +| #define HAVE_DECL_CLEARERR_UNLOCKED 1 +| #define HAVE_DECL_FEOF_UNLOCKED 1 +| #define HAVE_DECL_FERROR_UNLOCKED 1 +| #define HAVE_DECL_FFLUSH_UNLOCKED 0 +| #define HAVE_DECL_FGETS_UNLOCKED 0 +| #define HAVE_DECL_FPUTC_UNLOCKED 0 +| #define HAVE_DECL_FPUTS_UNLOCKED 0 +| #define HAVE_DECL_FREAD_UNLOCKED 0 +| #define HAVE_DECL_FWRITE_UNLOCKED 0 +| #define HAVE_DECL_GETC_UNLOCKED 1 +| #define HAVE_DECL_GETCHAR_UNLOCKED 1 +| #define HAVE_DECL_PUTC_UNLOCKED 1 +| #define HAVE_DECL_PUTCHAR_UNLOCKED 1 +| #define HAVE_DECL_WCSDUP 1 +| #define HAVE___BUILTIN_EXPECT 1 +| #define GNULIB_CANONICALIZE_LGPL 1 +| #define GNULIB_TEST_CANONICALIZE_FILE_NAME 1 +| #define GNULIB_TEST_REALPATH 1 +| #define GNULIB_TEST_CLOEXEC 1 +| #define GNULIB_TEST_CLOSE 1 +| #define GNULIB_TEST_DUP2 1 +| #define GNULIB_TEST_ENVIRON 1 +| #define GNULIB_TEST_FCNTL 1 +| /* end confdefs.h. */ +| #include +| +| int +| main (void) +| { +| #if 2 < __GLIBC__ + (33 <= __GLIBC_MINOR__) +| #elif defined __OpenBSD__ +| #elif defined __sun +| #else +| #error "'free' is not known to preserve errno" +| #endif +| +| ; +| return 0; +| } +configure:27716: result: no +configure:27841: checking whether getdtablesize works +configure:27881: gcc -o conftest -g -O2 conftest.c >&5 +configure:27881: $? = 0 +configure:27881: ./conftest +configure:27881: $? = 0 +configure:27895: result: yes +configure:27947: checking whether program_invocation_name is declared +configure:27947: gcc -c -g -O2 conftest.c >&5 -Werror=implicit-function-declaration +conftest.c:136:10: error: use of undeclared identifier 'program_invocation_name' + (void) program_invocation_name; + ^ +1 error generated. +configure:27947: $? = 1 +configure: failed program was: +| /* confdefs.h */ +| #define PACKAGE_NAME "libiconv" +| #define PACKAGE_TARNAME "libiconv" +| #define PACKAGE_VERSION "1.17" +| #define PACKAGE_STRING "libiconv 1.17" +| #define PACKAGE_BUGREPORT "" +| #define PACKAGE_URL "" +| #define PACKAGE "libiconv" +| #define VERSION "1.17" +| #define HAVE_STDIO_H 1 +| #define HAVE_STDLIB_H 1 +| #define HAVE_STRING_H 1 +| #define HAVE_INTTYPES_H 1 +| #define HAVE_STDINT_H 1 +| #define HAVE_STRINGS_H 1 +| #define HAVE_SYS_STAT_H 1 +| #define HAVE_SYS_TYPES_H 1 +| #define HAVE_UNISTD_H 1 +| #define HAVE_WCHAR_H 1 +| #define HAVE_SYS_PARAM_H 1 +| #define HAVE_SYS_SOCKET_H 1 +| #define HAVE_LIMITS_H 1 +| #define HAVE_SYS_TIME_H 1 +| #define STDC_HEADERS 1 +| #define _ALL_SOURCE 1 +| #define _DARWIN_C_SOURCE 1 +| #define _GNU_SOURCE 1 +| #define _HPUX_ALT_XOPEN_SOCKET_API 1 +| #define _NETBSD_SOURCE 1 +| #define _OPENBSD_SOURCE 1 +| #define _POSIX_PTHREAD_SEMANTICS 1 +| #define __STDC_WANT_IEC_60559_ATTRIBS_EXT__ 1 +| #define __STDC_WANT_IEC_60559_BFP_EXT__ 1 +| #define __STDC_WANT_IEC_60559_DFP_EXT__ 1 +| #define __STDC_WANT_IEC_60559_FUNCS_EXT__ 1 +| #define __STDC_WANT_IEC_60559_TYPES_EXT__ 1 +| #define __STDC_WANT_LIB_EXT2__ 1 +| #define __STDC_WANT_MATH_SPEC_FUNCS__ 1 +| #define _TANDEM_SOURCE 1 +| #define __EXTENSIONS__ 1 +| #define HAVE_DLFCN_H 1 +| #define LT_OBJDIR ".libs/" +| #define INSTALLPREFIX "/Users/yangzuhao/Downloads/libiconv-1.17/output" +| #define HAVE_VISIBILITY 1 +| #define HAVE_ICONV 1 +| #define ICONV_CONST +| #define HAVE_CFPREFERENCESCOPYAPPVALUE 1 +| #define HAVE_CFLOCALECOPYPREFERREDLANGUAGES 1 +| #define HAVE_ICONV 1 +| #define HAVE_MBSTATE_T 1 +| #define HAVE_WCHAR_T 1 +| #define HAVE_GETC_UNLOCKED 1 +| #define HAVE_MBRTOWC 1 +| #define HAVE_WCRTOMB 1 +| #define HAVE_MBSINIT 1 +| #define HAVE_SETLOCALE 1 +| #define HAVE_MEMMOVE 1 +| #define HAVE_LANGINFO_CODESET 1 +| #define HAVE_SYMLINK 1 +| #define HAVE_FACCESSAT 1 +| #define HAVE_REALPATH 1 +| #define HAVE_LSTAT 1 +| #define HAVE_READLINKAT 1 +| #define HAVE_FCNTL 1 +| #define HAVE_GETDTABLESIZE 1 +| #define HAVE_GETPROGNAME 1 +| #define HAVE_READLINK 1 +| #define HAVE_SETENV 1 +| #define HAVE_WORKING_O_NOATIME 0 +| #define HAVE_WORKING_O_NOFOLLOW 1 +| #define HAVE_WCHAR_H 1 +| #define WORDS_LITTLEENDIAN 1 +| #define HAVE_ALLOCA_H 1 +| #define HAVE_ALLOCA 1 +| #define HAVE_GETCWD 1 +| #define restrict __restrict__ +| #define HAVE_DECL_STRERROR_R 1 +| #define HAVE_STRERROR_R 1 +| #define HAVE___HEADER_INLINE 1 +| #define HAVE_DECL_GETDTABLESIZE 1 +| #define HAVE_WINT_T 1 +| #define HAVE_LONG_LONG_INT 1 +| #define HAVE_UNSIGNED_LONG_LONG_INT 1 +| #define HAVE_MALLOC_POSIX 1 +| #define MALLOC_0_IS_NONNULL 1 +| #define HAVE_MINMAX_IN_SYS_PARAM_H 1 +| #define PROMOTED_MODE_T int +| #define HAVE_SIGSET_T 1 +| #define HAVE_DECL_SETENV 1 +| #define USER_LABEL_PREFIX _ +| #define HAVE__BOOL 1 +| #define HAVE_DECL_FCLOSEALL 0 +| #define __USE_MINGW_ANSI_STDIO 1 +| #define HAVE_DECL_ECVT 1 +| #define HAVE_DECL_FCVT 1 +| #define HAVE_DECL_GCVT 1 +| #define REPLACE_STRERROR_0 1 +| #define _USE_STD_STAT 1 +| #define HAVE_DECL_EXECVPE 0 +| #define HAVE_DECL_CLEARERR_UNLOCKED 1 +| #define HAVE_DECL_FEOF_UNLOCKED 1 +| #define HAVE_DECL_FERROR_UNLOCKED 1 +| #define HAVE_DECL_FFLUSH_UNLOCKED 0 +| #define HAVE_DECL_FGETS_UNLOCKED 0 +| #define HAVE_DECL_FPUTC_UNLOCKED 0 +| #define HAVE_DECL_FPUTS_UNLOCKED 0 +| #define HAVE_DECL_FREAD_UNLOCKED 0 +| #define HAVE_DECL_FWRITE_UNLOCKED 0 +| #define HAVE_DECL_GETC_UNLOCKED 1 +| #define HAVE_DECL_GETCHAR_UNLOCKED 1 +| #define HAVE_DECL_PUTC_UNLOCKED 1 +| #define HAVE_DECL_PUTCHAR_UNLOCKED 1 +| #define HAVE_DECL_WCSDUP 1 +| #define HAVE___BUILTIN_EXPECT 1 +| #define GNULIB_CANONICALIZE_LGPL 1 +| #define GNULIB_TEST_CANONICALIZE_FILE_NAME 1 +| #define GNULIB_TEST_REALPATH 1 +| #define GNULIB_TEST_CLOEXEC 1 +| #define GNULIB_TEST_CLOSE 1 +| #define GNULIB_TEST_DUP2 1 +| #define GNULIB_TEST_ENVIRON 1 +| #define GNULIB_TEST_FCNTL 1 +| #define GNULIB_TEST_FREE_POSIX 1 +| #define GNULIB_TEST_FSTAT 1 +| #define GNULIB_TEST_GETDTABLESIZE 1 +| /* end confdefs.h. */ +| #include +| +| int +| main (void) +| { +| #ifndef program_invocation_name +| #ifdef __cplusplus +| (void) program_invocation_name; +| #else +| (void) program_invocation_name; +| #endif +| #endif +| +| ; +| return 0; +| } +configure:27947: result: no +configure:27961: checking whether program_invocation_short_name is declared +configure:27961: gcc -c -g -O2 conftest.c >&5 -Werror=implicit-function-declaration +conftest.c:137:10: error: use of undeclared identifier 'program_invocation_short_name' + (void) program_invocation_short_name; + ^ +1 error generated. +configure:27961: $? = 1 +configure: failed program was: +| /* confdefs.h */ +| #define PACKAGE_NAME "libiconv" +| #define PACKAGE_TARNAME "libiconv" +| #define PACKAGE_VERSION "1.17" +| #define PACKAGE_STRING "libiconv 1.17" +| #define PACKAGE_BUGREPORT "" +| #define PACKAGE_URL "" +| #define PACKAGE "libiconv" +| #define VERSION "1.17" +| #define HAVE_STDIO_H 1 +| #define HAVE_STDLIB_H 1 +| #define HAVE_STRING_H 1 +| #define HAVE_INTTYPES_H 1 +| #define HAVE_STDINT_H 1 +| #define HAVE_STRINGS_H 1 +| #define HAVE_SYS_STAT_H 1 +| #define HAVE_SYS_TYPES_H 1 +| #define HAVE_UNISTD_H 1 +| #define HAVE_WCHAR_H 1 +| #define HAVE_SYS_PARAM_H 1 +| #define HAVE_SYS_SOCKET_H 1 +| #define HAVE_LIMITS_H 1 +| #define HAVE_SYS_TIME_H 1 +| #define STDC_HEADERS 1 +| #define _ALL_SOURCE 1 +| #define _DARWIN_C_SOURCE 1 +| #define _GNU_SOURCE 1 +| #define _HPUX_ALT_XOPEN_SOCKET_API 1 +| #define _NETBSD_SOURCE 1 +| #define _OPENBSD_SOURCE 1 +| #define _POSIX_PTHREAD_SEMANTICS 1 +| #define __STDC_WANT_IEC_60559_ATTRIBS_EXT__ 1 +| #define __STDC_WANT_IEC_60559_BFP_EXT__ 1 +| #define __STDC_WANT_IEC_60559_DFP_EXT__ 1 +| #define __STDC_WANT_IEC_60559_FUNCS_EXT__ 1 +| #define __STDC_WANT_IEC_60559_TYPES_EXT__ 1 +| #define __STDC_WANT_LIB_EXT2__ 1 +| #define __STDC_WANT_MATH_SPEC_FUNCS__ 1 +| #define _TANDEM_SOURCE 1 +| #define __EXTENSIONS__ 1 +| #define HAVE_DLFCN_H 1 +| #define LT_OBJDIR ".libs/" +| #define INSTALLPREFIX "/Users/yangzuhao/Downloads/libiconv-1.17/output" +| #define HAVE_VISIBILITY 1 +| #define HAVE_ICONV 1 +| #define ICONV_CONST +| #define HAVE_CFPREFERENCESCOPYAPPVALUE 1 +| #define HAVE_CFLOCALECOPYPREFERREDLANGUAGES 1 +| #define HAVE_ICONV 1 +| #define HAVE_MBSTATE_T 1 +| #define HAVE_WCHAR_T 1 +| #define HAVE_GETC_UNLOCKED 1 +| #define HAVE_MBRTOWC 1 +| #define HAVE_WCRTOMB 1 +| #define HAVE_MBSINIT 1 +| #define HAVE_SETLOCALE 1 +| #define HAVE_MEMMOVE 1 +| #define HAVE_LANGINFO_CODESET 1 +| #define HAVE_SYMLINK 1 +| #define HAVE_FACCESSAT 1 +| #define HAVE_REALPATH 1 +| #define HAVE_LSTAT 1 +| #define HAVE_READLINKAT 1 +| #define HAVE_FCNTL 1 +| #define HAVE_GETDTABLESIZE 1 +| #define HAVE_GETPROGNAME 1 +| #define HAVE_READLINK 1 +| #define HAVE_SETENV 1 +| #define HAVE_WORKING_O_NOATIME 0 +| #define HAVE_WORKING_O_NOFOLLOW 1 +| #define HAVE_WCHAR_H 1 +| #define WORDS_LITTLEENDIAN 1 +| #define HAVE_ALLOCA_H 1 +| #define HAVE_ALLOCA 1 +| #define HAVE_GETCWD 1 +| #define restrict __restrict__ +| #define HAVE_DECL_STRERROR_R 1 +| #define HAVE_STRERROR_R 1 +| #define HAVE___HEADER_INLINE 1 +| #define HAVE_DECL_GETDTABLESIZE 1 +| #define HAVE_WINT_T 1 +| #define HAVE_LONG_LONG_INT 1 +| #define HAVE_UNSIGNED_LONG_LONG_INT 1 +| #define HAVE_MALLOC_POSIX 1 +| #define MALLOC_0_IS_NONNULL 1 +| #define HAVE_MINMAX_IN_SYS_PARAM_H 1 +| #define PROMOTED_MODE_T int +| #define HAVE_SIGSET_T 1 +| #define HAVE_DECL_SETENV 1 +| #define USER_LABEL_PREFIX _ +| #define HAVE__BOOL 1 +| #define HAVE_DECL_FCLOSEALL 0 +| #define __USE_MINGW_ANSI_STDIO 1 +| #define HAVE_DECL_ECVT 1 +| #define HAVE_DECL_FCVT 1 +| #define HAVE_DECL_GCVT 1 +| #define REPLACE_STRERROR_0 1 +| #define _USE_STD_STAT 1 +| #define HAVE_DECL_EXECVPE 0 +| #define HAVE_DECL_CLEARERR_UNLOCKED 1 +| #define HAVE_DECL_FEOF_UNLOCKED 1 +| #define HAVE_DECL_FERROR_UNLOCKED 1 +| #define HAVE_DECL_FFLUSH_UNLOCKED 0 +| #define HAVE_DECL_FGETS_UNLOCKED 0 +| #define HAVE_DECL_FPUTC_UNLOCKED 0 +| #define HAVE_DECL_FPUTS_UNLOCKED 0 +| #define HAVE_DECL_FREAD_UNLOCKED 0 +| #define HAVE_DECL_FWRITE_UNLOCKED 0 +| #define HAVE_DECL_GETC_UNLOCKED 1 +| #define HAVE_DECL_GETCHAR_UNLOCKED 1 +| #define HAVE_DECL_PUTC_UNLOCKED 1 +| #define HAVE_DECL_PUTCHAR_UNLOCKED 1 +| #define HAVE_DECL_WCSDUP 1 +| #define HAVE___BUILTIN_EXPECT 1 +| #define GNULIB_CANONICALIZE_LGPL 1 +| #define GNULIB_TEST_CANONICALIZE_FILE_NAME 1 +| #define GNULIB_TEST_REALPATH 1 +| #define GNULIB_TEST_CLOEXEC 1 +| #define GNULIB_TEST_CLOSE 1 +| #define GNULIB_TEST_DUP2 1 +| #define GNULIB_TEST_ENVIRON 1 +| #define GNULIB_TEST_FCNTL 1 +| #define GNULIB_TEST_FREE_POSIX 1 +| #define GNULIB_TEST_FSTAT 1 +| #define GNULIB_TEST_GETDTABLESIZE 1 +| #define HAVE_DECL_PROGRAM_INVOCATION_NAME 0 +| /* end confdefs.h. */ +| #include +| +| int +| main (void) +| { +| #ifndef program_invocation_short_name +| #ifdef __cplusplus +| (void) program_invocation_short_name; +| #else +| (void) program_invocation_short_name; +| #endif +| #endif +| +| ; +| return 0; +| } +configure:27961: result: no +configure:27975: checking whether __argv is declared +configure:27975: gcc -c -g -O2 conftest.c >&5 -Werror=implicit-function-declaration +conftest.c:138:10: error: use of undeclared identifier '__argv' + (void) __argv; + ^ +1 error generated. +configure:27975: $? = 1 +configure: failed program was: +| /* confdefs.h */ +| #define PACKAGE_NAME "libiconv" +| #define PACKAGE_TARNAME "libiconv" +| #define PACKAGE_VERSION "1.17" +| #define PACKAGE_STRING "libiconv 1.17" +| #define PACKAGE_BUGREPORT "" +| #define PACKAGE_URL "" +| #define PACKAGE "libiconv" +| #define VERSION "1.17" +| #define HAVE_STDIO_H 1 +| #define HAVE_STDLIB_H 1 +| #define HAVE_STRING_H 1 +| #define HAVE_INTTYPES_H 1 +| #define HAVE_STDINT_H 1 +| #define HAVE_STRINGS_H 1 +| #define HAVE_SYS_STAT_H 1 +| #define HAVE_SYS_TYPES_H 1 +| #define HAVE_UNISTD_H 1 +| #define HAVE_WCHAR_H 1 +| #define HAVE_SYS_PARAM_H 1 +| #define HAVE_SYS_SOCKET_H 1 +| #define HAVE_LIMITS_H 1 +| #define HAVE_SYS_TIME_H 1 +| #define STDC_HEADERS 1 +| #define _ALL_SOURCE 1 +| #define _DARWIN_C_SOURCE 1 +| #define _GNU_SOURCE 1 +| #define _HPUX_ALT_XOPEN_SOCKET_API 1 +| #define _NETBSD_SOURCE 1 +| #define _OPENBSD_SOURCE 1 +| #define _POSIX_PTHREAD_SEMANTICS 1 +| #define __STDC_WANT_IEC_60559_ATTRIBS_EXT__ 1 +| #define __STDC_WANT_IEC_60559_BFP_EXT__ 1 +| #define __STDC_WANT_IEC_60559_DFP_EXT__ 1 +| #define __STDC_WANT_IEC_60559_FUNCS_EXT__ 1 +| #define __STDC_WANT_IEC_60559_TYPES_EXT__ 1 +| #define __STDC_WANT_LIB_EXT2__ 1 +| #define __STDC_WANT_MATH_SPEC_FUNCS__ 1 +| #define _TANDEM_SOURCE 1 +| #define __EXTENSIONS__ 1 +| #define HAVE_DLFCN_H 1 +| #define LT_OBJDIR ".libs/" +| #define INSTALLPREFIX "/Users/yangzuhao/Downloads/libiconv-1.17/output" +| #define HAVE_VISIBILITY 1 +| #define HAVE_ICONV 1 +| #define ICONV_CONST +| #define HAVE_CFPREFERENCESCOPYAPPVALUE 1 +| #define HAVE_CFLOCALECOPYPREFERREDLANGUAGES 1 +| #define HAVE_ICONV 1 +| #define HAVE_MBSTATE_T 1 +| #define HAVE_WCHAR_T 1 +| #define HAVE_GETC_UNLOCKED 1 +| #define HAVE_MBRTOWC 1 +| #define HAVE_WCRTOMB 1 +| #define HAVE_MBSINIT 1 +| #define HAVE_SETLOCALE 1 +| #define HAVE_MEMMOVE 1 +| #define HAVE_LANGINFO_CODESET 1 +| #define HAVE_SYMLINK 1 +| #define HAVE_FACCESSAT 1 +| #define HAVE_REALPATH 1 +| #define HAVE_LSTAT 1 +| #define HAVE_READLINKAT 1 +| #define HAVE_FCNTL 1 +| #define HAVE_GETDTABLESIZE 1 +| #define HAVE_GETPROGNAME 1 +| #define HAVE_READLINK 1 +| #define HAVE_SETENV 1 +| #define HAVE_WORKING_O_NOATIME 0 +| #define HAVE_WORKING_O_NOFOLLOW 1 +| #define HAVE_WCHAR_H 1 +| #define WORDS_LITTLEENDIAN 1 +| #define HAVE_ALLOCA_H 1 +| #define HAVE_ALLOCA 1 +| #define HAVE_GETCWD 1 +| #define restrict __restrict__ +| #define HAVE_DECL_STRERROR_R 1 +| #define HAVE_STRERROR_R 1 +| #define HAVE___HEADER_INLINE 1 +| #define HAVE_DECL_GETDTABLESIZE 1 +| #define HAVE_WINT_T 1 +| #define HAVE_LONG_LONG_INT 1 +| #define HAVE_UNSIGNED_LONG_LONG_INT 1 +| #define HAVE_MALLOC_POSIX 1 +| #define MALLOC_0_IS_NONNULL 1 +| #define HAVE_MINMAX_IN_SYS_PARAM_H 1 +| #define PROMOTED_MODE_T int +| #define HAVE_SIGSET_T 1 +| #define HAVE_DECL_SETENV 1 +| #define USER_LABEL_PREFIX _ +| #define HAVE__BOOL 1 +| #define HAVE_DECL_FCLOSEALL 0 +| #define __USE_MINGW_ANSI_STDIO 1 +| #define HAVE_DECL_ECVT 1 +| #define HAVE_DECL_FCVT 1 +| #define HAVE_DECL_GCVT 1 +| #define REPLACE_STRERROR_0 1 +| #define _USE_STD_STAT 1 +| #define HAVE_DECL_EXECVPE 0 +| #define HAVE_DECL_CLEARERR_UNLOCKED 1 +| #define HAVE_DECL_FEOF_UNLOCKED 1 +| #define HAVE_DECL_FERROR_UNLOCKED 1 +| #define HAVE_DECL_FFLUSH_UNLOCKED 0 +| #define HAVE_DECL_FGETS_UNLOCKED 0 +| #define HAVE_DECL_FPUTC_UNLOCKED 0 +| #define HAVE_DECL_FPUTS_UNLOCKED 0 +| #define HAVE_DECL_FREAD_UNLOCKED 0 +| #define HAVE_DECL_FWRITE_UNLOCKED 0 +| #define HAVE_DECL_GETC_UNLOCKED 1 +| #define HAVE_DECL_GETCHAR_UNLOCKED 1 +| #define HAVE_DECL_PUTC_UNLOCKED 1 +| #define HAVE_DECL_PUTCHAR_UNLOCKED 1 +| #define HAVE_DECL_WCSDUP 1 +| #define HAVE___BUILTIN_EXPECT 1 +| #define GNULIB_CANONICALIZE_LGPL 1 +| #define GNULIB_TEST_CANONICALIZE_FILE_NAME 1 +| #define GNULIB_TEST_REALPATH 1 +| #define GNULIB_TEST_CLOEXEC 1 +| #define GNULIB_TEST_CLOSE 1 +| #define GNULIB_TEST_DUP2 1 +| #define GNULIB_TEST_ENVIRON 1 +| #define GNULIB_TEST_FCNTL 1 +| #define GNULIB_TEST_FREE_POSIX 1 +| #define GNULIB_TEST_FSTAT 1 +| #define GNULIB_TEST_GETDTABLESIZE 1 +| #define HAVE_DECL_PROGRAM_INVOCATION_NAME 0 +| #define HAVE_DECL_PROGRAM_INVOCATION_SHORT_NAME 0 +| /* end confdefs.h. */ +| #include +| +| int +| main (void) +| { +| #ifndef __argv +| #ifdef __cplusplus +| (void) __argv; +| #else +| (void) __argv; +| #endif +| #endif +| +| ; +| return 0; +| } +configure:27975: result: no +configure:27994: checking whether __progname is defined in default libraries +configure:28014: gcc -o conftest -g -O2 conftest.c >&5 +configure:28014: $? = 0 +configure:28024: result: yes +configure:28050: checking whether the -Werror option is usable +configure:28079: result: yes +configure:28081: checking for simple visibility declarations +configure:28123: result: yes +configure:28137: checking whether the compiler supports the __inline keyword +configure:28155: gcc -c -g -O2 conftest.c >&5 +configure:28155: $? = 0 +configure:28163: result: yes +configure:28242: checking for mbstate_t +configure:28268: result: yes +configure:28286: checking for mempcpy +configure:28286: gcc -o conftest -g -O2 conftest.c >&5 +conftest.c:151:6: warning: incompatible redeclaration of library function 'mempcpy' [-Wincompatible-library-redeclaration] +char mempcpy (); + ^ +conftest.c:151:6: note: 'mempcpy' is a builtin with type 'void *(void *, const void *, unsigned long)' +1 warning generated. +Undefined symbols for architecture arm64: + "_mempcpy", referenced from: + _main in conftest-c9c4d9.o +ld: symbol(s) not found for architecture arm64 +clang: error: linker command failed with exit code 1 (use -v to see invocation) +configure:28286: $? = 1 +configure: failed program was: +| /* confdefs.h */ +| #define PACKAGE_NAME "libiconv" +| #define PACKAGE_TARNAME "libiconv" +| #define PACKAGE_VERSION "1.17" +| #define PACKAGE_STRING "libiconv 1.17" +| #define PACKAGE_BUGREPORT "" +| #define PACKAGE_URL "" +| #define PACKAGE "libiconv" +| #define VERSION "1.17" +| #define HAVE_STDIO_H 1 +| #define HAVE_STDLIB_H 1 +| #define HAVE_STRING_H 1 +| #define HAVE_INTTYPES_H 1 +| #define HAVE_STDINT_H 1 +| #define HAVE_STRINGS_H 1 +| #define HAVE_SYS_STAT_H 1 +| #define HAVE_SYS_TYPES_H 1 +| #define HAVE_UNISTD_H 1 +| #define HAVE_WCHAR_H 1 +| #define HAVE_SYS_PARAM_H 1 +| #define HAVE_SYS_SOCKET_H 1 +| #define HAVE_LIMITS_H 1 +| #define HAVE_SYS_TIME_H 1 +| #define STDC_HEADERS 1 +| #define _ALL_SOURCE 1 +| #define _DARWIN_C_SOURCE 1 +| #define _GNU_SOURCE 1 +| #define _HPUX_ALT_XOPEN_SOCKET_API 1 +| #define _NETBSD_SOURCE 1 +| #define _OPENBSD_SOURCE 1 +| #define _POSIX_PTHREAD_SEMANTICS 1 +| #define __STDC_WANT_IEC_60559_ATTRIBS_EXT__ 1 +| #define __STDC_WANT_IEC_60559_BFP_EXT__ 1 +| #define __STDC_WANT_IEC_60559_DFP_EXT__ 1 +| #define __STDC_WANT_IEC_60559_FUNCS_EXT__ 1 +| #define __STDC_WANT_IEC_60559_TYPES_EXT__ 1 +| #define __STDC_WANT_LIB_EXT2__ 1 +| #define __STDC_WANT_MATH_SPEC_FUNCS__ 1 +| #define _TANDEM_SOURCE 1 +| #define __EXTENSIONS__ 1 +| #define HAVE_DLFCN_H 1 +| #define LT_OBJDIR ".libs/" +| #define INSTALLPREFIX "/Users/yangzuhao/Downloads/libiconv-1.17/output" +| #define HAVE_VISIBILITY 1 +| #define HAVE_ICONV 1 +| #define ICONV_CONST +| #define HAVE_CFPREFERENCESCOPYAPPVALUE 1 +| #define HAVE_CFLOCALECOPYPREFERREDLANGUAGES 1 +| #define HAVE_ICONV 1 +| #define HAVE_MBSTATE_T 1 +| #define HAVE_WCHAR_T 1 +| #define HAVE_GETC_UNLOCKED 1 +| #define HAVE_MBRTOWC 1 +| #define HAVE_WCRTOMB 1 +| #define HAVE_MBSINIT 1 +| #define HAVE_SETLOCALE 1 +| #define HAVE_MEMMOVE 1 +| #define HAVE_LANGINFO_CODESET 1 +| #define HAVE_SYMLINK 1 +| #define HAVE_FACCESSAT 1 +| #define HAVE_REALPATH 1 +| #define HAVE_LSTAT 1 +| #define HAVE_READLINKAT 1 +| #define HAVE_FCNTL 1 +| #define HAVE_GETDTABLESIZE 1 +| #define HAVE_GETPROGNAME 1 +| #define HAVE_READLINK 1 +| #define HAVE_SETENV 1 +| #define HAVE_WORKING_O_NOATIME 0 +| #define HAVE_WORKING_O_NOFOLLOW 1 +| #define HAVE_WCHAR_H 1 +| #define WORDS_LITTLEENDIAN 1 +| #define HAVE_ALLOCA_H 1 +| #define HAVE_ALLOCA 1 +| #define HAVE_GETCWD 1 +| #define restrict __restrict__ +| #define HAVE_DECL_STRERROR_R 1 +| #define HAVE_STRERROR_R 1 +| #define HAVE___HEADER_INLINE 1 +| #define HAVE_DECL_GETDTABLESIZE 1 +| #define HAVE_WINT_T 1 +| #define HAVE_LONG_LONG_INT 1 +| #define HAVE_UNSIGNED_LONG_LONG_INT 1 +| #define HAVE_MALLOC_POSIX 1 +| #define MALLOC_0_IS_NONNULL 1 +| #define HAVE_MINMAX_IN_SYS_PARAM_H 1 +| #define PROMOTED_MODE_T int +| #define HAVE_SIGSET_T 1 +| #define HAVE_DECL_SETENV 1 +| #define USER_LABEL_PREFIX _ +| #define HAVE__BOOL 1 +| #define HAVE_DECL_FCLOSEALL 0 +| #define __USE_MINGW_ANSI_STDIO 1 +| #define HAVE_DECL_ECVT 1 +| #define HAVE_DECL_FCVT 1 +| #define HAVE_DECL_GCVT 1 +| #define REPLACE_STRERROR_0 1 +| #define _USE_STD_STAT 1 +| #define HAVE_DECL_EXECVPE 0 +| #define HAVE_DECL_CLEARERR_UNLOCKED 1 +| #define HAVE_DECL_FEOF_UNLOCKED 1 +| #define HAVE_DECL_FERROR_UNLOCKED 1 +| #define HAVE_DECL_FFLUSH_UNLOCKED 0 +| #define HAVE_DECL_FGETS_UNLOCKED 0 +| #define HAVE_DECL_FPUTC_UNLOCKED 0 +| #define HAVE_DECL_FPUTS_UNLOCKED 0 +| #define HAVE_DECL_FREAD_UNLOCKED 0 +| #define HAVE_DECL_FWRITE_UNLOCKED 0 +| #define HAVE_DECL_GETC_UNLOCKED 1 +| #define HAVE_DECL_GETCHAR_UNLOCKED 1 +| #define HAVE_DECL_PUTC_UNLOCKED 1 +| #define HAVE_DECL_PUTCHAR_UNLOCKED 1 +| #define HAVE_DECL_WCSDUP 1 +| #define HAVE___BUILTIN_EXPECT 1 +| #define GNULIB_CANONICALIZE_LGPL 1 +| #define GNULIB_TEST_CANONICALIZE_FILE_NAME 1 +| #define GNULIB_TEST_REALPATH 1 +| #define GNULIB_TEST_CLOEXEC 1 +| #define GNULIB_TEST_CLOSE 1 +| #define GNULIB_TEST_DUP2 1 +| #define GNULIB_TEST_ENVIRON 1 +| #define GNULIB_TEST_FCNTL 1 +| #define GNULIB_TEST_FREE_POSIX 1 +| #define GNULIB_TEST_FSTAT 1 +| #define GNULIB_TEST_GETDTABLESIZE 1 +| #define HAVE_DECL_PROGRAM_INVOCATION_NAME 0 +| #define HAVE_DECL_PROGRAM_INVOCATION_SHORT_NAME 0 +| #define HAVE_DECL___ARGV 0 +| #define HAVE_VAR___PROGNAME 1 +| #define HAVE_VISIBILITY 1 +| #define HAVE___INLINE 1 +| #define GNULIB_TEST_MALLOC_POSIX 1 +| #define HAVE_MBSTATE_T 1 +| /* end confdefs.h. */ +| /* Define mempcpy to an innocuous variant, in case declares mempcpy. +| For example, HP-UX 11i declares gettimeofday. */ +| #define mempcpy innocuous_mempcpy +| +| /* System header to define __stub macros and hopefully few prototypes, +| which can conflict with char mempcpy (); below. */ +| +| #include +| #undef mempcpy +| +| /* Override any GCC internal prototype to avoid an error. +| Use char because int might match the return type of a GCC +| builtin and then its argument prototype would still apply. */ +| #ifdef __cplusplus +| extern "C" +| #endif +| char mempcpy (); +| /* The GNU C library defines this for functions which it implements +| to always fail with ENOSYS. Some functions are actually named +| something starting with __ and the normal name is an alias. */ +| #if defined __stub_mempcpy || defined __stub___mempcpy +| choke me +| #endif +| +| int +| main (void) +| { +| return mempcpy (); +| ; +| return 0; +| } +configure:28286: result: no +configure:28395: checking whether open recognizes a trailing slash +configure:28440: gcc -o conftest -g -O2 conftest.c >&5 +configure:28440: $? = 0 +configure:28440: ./conftest +configure:28440: $? = 1 +configure: program exited with status 1 +configure: failed program was: +| /* confdefs.h */ +| #define PACKAGE_NAME "libiconv" +| #define PACKAGE_TARNAME "libiconv" +| #define PACKAGE_VERSION "1.17" +| #define PACKAGE_STRING "libiconv 1.17" +| #define PACKAGE_BUGREPORT "" +| #define PACKAGE_URL "" +| #define PACKAGE "libiconv" +| #define VERSION "1.17" +| #define HAVE_STDIO_H 1 +| #define HAVE_STDLIB_H 1 +| #define HAVE_STRING_H 1 +| #define HAVE_INTTYPES_H 1 +| #define HAVE_STDINT_H 1 +| #define HAVE_STRINGS_H 1 +| #define HAVE_SYS_STAT_H 1 +| #define HAVE_SYS_TYPES_H 1 +| #define HAVE_UNISTD_H 1 +| #define HAVE_WCHAR_H 1 +| #define HAVE_SYS_PARAM_H 1 +| #define HAVE_SYS_SOCKET_H 1 +| #define HAVE_LIMITS_H 1 +| #define HAVE_SYS_TIME_H 1 +| #define STDC_HEADERS 1 +| #define _ALL_SOURCE 1 +| #define _DARWIN_C_SOURCE 1 +| #define _GNU_SOURCE 1 +| #define _HPUX_ALT_XOPEN_SOCKET_API 1 +| #define _NETBSD_SOURCE 1 +| #define _OPENBSD_SOURCE 1 +| #define _POSIX_PTHREAD_SEMANTICS 1 +| #define __STDC_WANT_IEC_60559_ATTRIBS_EXT__ 1 +| #define __STDC_WANT_IEC_60559_BFP_EXT__ 1 +| #define __STDC_WANT_IEC_60559_DFP_EXT__ 1 +| #define __STDC_WANT_IEC_60559_FUNCS_EXT__ 1 +| #define __STDC_WANT_IEC_60559_TYPES_EXT__ 1 +| #define __STDC_WANT_LIB_EXT2__ 1 +| #define __STDC_WANT_MATH_SPEC_FUNCS__ 1 +| #define _TANDEM_SOURCE 1 +| #define __EXTENSIONS__ 1 +| #define HAVE_DLFCN_H 1 +| #define LT_OBJDIR ".libs/" +| #define INSTALLPREFIX "/Users/yangzuhao/Downloads/libiconv-1.17/output" +| #define HAVE_VISIBILITY 1 +| #define HAVE_ICONV 1 +| #define ICONV_CONST +| #define HAVE_CFPREFERENCESCOPYAPPVALUE 1 +| #define HAVE_CFLOCALECOPYPREFERREDLANGUAGES 1 +| #define HAVE_ICONV 1 +| #define HAVE_MBSTATE_T 1 +| #define HAVE_WCHAR_T 1 +| #define HAVE_GETC_UNLOCKED 1 +| #define HAVE_MBRTOWC 1 +| #define HAVE_WCRTOMB 1 +| #define HAVE_MBSINIT 1 +| #define HAVE_SETLOCALE 1 +| #define HAVE_MEMMOVE 1 +| #define HAVE_LANGINFO_CODESET 1 +| #define HAVE_SYMLINK 1 +| #define HAVE_FACCESSAT 1 +| #define HAVE_REALPATH 1 +| #define HAVE_LSTAT 1 +| #define HAVE_READLINKAT 1 +| #define HAVE_FCNTL 1 +| #define HAVE_GETDTABLESIZE 1 +| #define HAVE_GETPROGNAME 1 +| #define HAVE_READLINK 1 +| #define HAVE_SETENV 1 +| #define HAVE_WORKING_O_NOATIME 0 +| #define HAVE_WORKING_O_NOFOLLOW 1 +| #define HAVE_WCHAR_H 1 +| #define WORDS_LITTLEENDIAN 1 +| #define HAVE_ALLOCA_H 1 +| #define HAVE_ALLOCA 1 +| #define HAVE_GETCWD 1 +| #define restrict __restrict__ +| #define HAVE_DECL_STRERROR_R 1 +| #define HAVE_STRERROR_R 1 +| #define HAVE___HEADER_INLINE 1 +| #define HAVE_DECL_GETDTABLESIZE 1 +| #define HAVE_WINT_T 1 +| #define HAVE_LONG_LONG_INT 1 +| #define HAVE_UNSIGNED_LONG_LONG_INT 1 +| #define HAVE_MALLOC_POSIX 1 +| #define MALLOC_0_IS_NONNULL 1 +| #define HAVE_MINMAX_IN_SYS_PARAM_H 1 +| #define PROMOTED_MODE_T int +| #define HAVE_SIGSET_T 1 +| #define HAVE_DECL_SETENV 1 +| #define USER_LABEL_PREFIX _ +| #define HAVE__BOOL 1 +| #define HAVE_DECL_FCLOSEALL 0 +| #define __USE_MINGW_ANSI_STDIO 1 +| #define HAVE_DECL_ECVT 1 +| #define HAVE_DECL_FCVT 1 +| #define HAVE_DECL_GCVT 1 +| #define REPLACE_STRERROR_0 1 +| #define _USE_STD_STAT 1 +| #define HAVE_DECL_EXECVPE 0 +| #define HAVE_DECL_CLEARERR_UNLOCKED 1 +| #define HAVE_DECL_FEOF_UNLOCKED 1 +| #define HAVE_DECL_FERROR_UNLOCKED 1 +| #define HAVE_DECL_FFLUSH_UNLOCKED 0 +| #define HAVE_DECL_FGETS_UNLOCKED 0 +| #define HAVE_DECL_FPUTC_UNLOCKED 0 +| #define HAVE_DECL_FPUTS_UNLOCKED 0 +| #define HAVE_DECL_FREAD_UNLOCKED 0 +| #define HAVE_DECL_FWRITE_UNLOCKED 0 +| #define HAVE_DECL_GETC_UNLOCKED 1 +| #define HAVE_DECL_GETCHAR_UNLOCKED 1 +| #define HAVE_DECL_PUTC_UNLOCKED 1 +| #define HAVE_DECL_PUTCHAR_UNLOCKED 1 +| #define HAVE_DECL_WCSDUP 1 +| #define HAVE___BUILTIN_EXPECT 1 +| #define GNULIB_CANONICALIZE_LGPL 1 +| #define GNULIB_TEST_CANONICALIZE_FILE_NAME 1 +| #define GNULIB_TEST_REALPATH 1 +| #define GNULIB_TEST_CLOEXEC 1 +| #define GNULIB_TEST_CLOSE 1 +| #define GNULIB_TEST_DUP2 1 +| #define GNULIB_TEST_ENVIRON 1 +| #define GNULIB_TEST_FCNTL 1 +| #define GNULIB_TEST_FREE_POSIX 1 +| #define GNULIB_TEST_FSTAT 1 +| #define GNULIB_TEST_GETDTABLESIZE 1 +| #define HAVE_DECL_PROGRAM_INVOCATION_NAME 0 +| #define HAVE_DECL_PROGRAM_INVOCATION_SHORT_NAME 0 +| #define HAVE_DECL___ARGV 0 +| #define HAVE_VAR___PROGNAME 1 +| #define HAVE_VISIBILITY 1 +| #define HAVE___INLINE 1 +| #define GNULIB_TEST_MALLOC_POSIX 1 +| #define HAVE_MBSTATE_T 1 +| #define GNULIB_TEST_MEMPCPY 1 +| #define GNULIB_MSVC_NOTHROW 1 +| /* end confdefs.h. */ +| +| #include +| #if HAVE_UNISTD_H +| # include +| #endif +| +| +| +| #if defined _WIN32 && !defined __CYGWIN__ +| #define access _access +| #define chdir _chdir +| #define chmod _chmod +| #define close _close +| #define creat _creat +| #define dup _dup +| #define dup2 _dup2 +| #define ecvt _ecvt +| #define execl _execl +| #define execle _execle +| #define execlp _execlp +| #define execv _execv +| #define execve _execve +| #define execvp _execvp +| #define execvpe _execvpe +| #define fcloseall _fcloseall +| #define fcvt _fcvt +| #define fdopen _fdopen +| #define fileno _fileno +| #define gcvt _gcvt +| #define getcwd _getcwd +| #define getpid _getpid +| #define getw _getw +| #define isatty _isatty +| #define j0 _j0 +| #define j1 _j1 +| #define jn _jn +| #define lfind _lfind +| #define lsearch _lsearch +| #define lseek _lseek +| #define memccpy _memccpy +| #define mkdir _mkdir +| #define mktemp _mktemp +| #define open _open +| #define putenv _putenv +| #define putw _putw +| #define read _read +| #define rmdir _rmdir +| #define strdup _strdup +| #define swab _swab +| #define tempnam _tempnam +| #define tzset _tzset +| #define umask _umask +| #define unlink _unlink +| #define utime _utime +| #define wcsdup _wcsdup +| #define write _write +| #define y0 _y0 +| #define y1 _y1 +| #define yn _yn +| #endif +| +| +| int main () +| { +| int result = 0; +| #if HAVE_LSTAT +| if (open ("conftest.lnk/", O_RDONLY) != -1) +| result |= 1; +| #endif +| if (open ("conftest.sl/", O_CREAT, 0600) >= 0) +| result |= 2; +| return result; +| } +configure:28453: result: no +configure:28517: checking whether program_invocation_name is declared +configure:28517: result: no +configure:28527: checking whether program_invocation_short_name is declared +configure:28527: result: no +configure:28540: checking for raise +configure:28540: gcc -o conftest -g -O2 conftest.c >&5 +configure:28540: $? = 0 +configure:28540: result: yes +configure:28562: checking for sigprocmask +configure:28562: gcc -o conftest -g -O2 conftest.c >&5 +configure:28562: $? = 0 +configure:28562: result: yes +configure:28625: checking for rawmemchr +configure:28625: gcc -o conftest -g -O2 conftest.c >&5 +Undefined symbols for architecture arm64: + "_rawmemchr", referenced from: + _main in conftest-ab7cfe.o +ld: symbol(s) not found for architecture arm64 +clang: error: linker command failed with exit code 1 (use -v to see invocation) +configure:28625: $? = 1 +configure: failed program was: +| /* confdefs.h */ +| #define PACKAGE_NAME "libiconv" +| #define PACKAGE_TARNAME "libiconv" +| #define PACKAGE_VERSION "1.17" +| #define PACKAGE_STRING "libiconv 1.17" +| #define PACKAGE_BUGREPORT "" +| #define PACKAGE_URL "" +| #define PACKAGE "libiconv" +| #define VERSION "1.17" +| #define HAVE_STDIO_H 1 +| #define HAVE_STDLIB_H 1 +| #define HAVE_STRING_H 1 +| #define HAVE_INTTYPES_H 1 +| #define HAVE_STDINT_H 1 +| #define HAVE_STRINGS_H 1 +| #define HAVE_SYS_STAT_H 1 +| #define HAVE_SYS_TYPES_H 1 +| #define HAVE_UNISTD_H 1 +| #define HAVE_WCHAR_H 1 +| #define HAVE_SYS_PARAM_H 1 +| #define HAVE_SYS_SOCKET_H 1 +| #define HAVE_LIMITS_H 1 +| #define HAVE_SYS_TIME_H 1 +| #define STDC_HEADERS 1 +| #define _ALL_SOURCE 1 +| #define _DARWIN_C_SOURCE 1 +| #define _GNU_SOURCE 1 +| #define _HPUX_ALT_XOPEN_SOCKET_API 1 +| #define _NETBSD_SOURCE 1 +| #define _OPENBSD_SOURCE 1 +| #define _POSIX_PTHREAD_SEMANTICS 1 +| #define __STDC_WANT_IEC_60559_ATTRIBS_EXT__ 1 +| #define __STDC_WANT_IEC_60559_BFP_EXT__ 1 +| #define __STDC_WANT_IEC_60559_DFP_EXT__ 1 +| #define __STDC_WANT_IEC_60559_FUNCS_EXT__ 1 +| #define __STDC_WANT_IEC_60559_TYPES_EXT__ 1 +| #define __STDC_WANT_LIB_EXT2__ 1 +| #define __STDC_WANT_MATH_SPEC_FUNCS__ 1 +| #define _TANDEM_SOURCE 1 +| #define __EXTENSIONS__ 1 +| #define HAVE_DLFCN_H 1 +| #define LT_OBJDIR ".libs/" +| #define INSTALLPREFIX "/Users/yangzuhao/Downloads/libiconv-1.17/output" +| #define HAVE_VISIBILITY 1 +| #define HAVE_ICONV 1 +| #define ICONV_CONST +| #define HAVE_CFPREFERENCESCOPYAPPVALUE 1 +| #define HAVE_CFLOCALECOPYPREFERREDLANGUAGES 1 +| #define HAVE_ICONV 1 +| #define HAVE_MBSTATE_T 1 +| #define HAVE_WCHAR_T 1 +| #define HAVE_GETC_UNLOCKED 1 +| #define HAVE_MBRTOWC 1 +| #define HAVE_WCRTOMB 1 +| #define HAVE_MBSINIT 1 +| #define HAVE_SETLOCALE 1 +| #define HAVE_MEMMOVE 1 +| #define HAVE_LANGINFO_CODESET 1 +| #define HAVE_SYMLINK 1 +| #define HAVE_FACCESSAT 1 +| #define HAVE_REALPATH 1 +| #define HAVE_LSTAT 1 +| #define HAVE_READLINKAT 1 +| #define HAVE_FCNTL 1 +| #define HAVE_GETDTABLESIZE 1 +| #define HAVE_GETPROGNAME 1 +| #define HAVE_READLINK 1 +| #define HAVE_SETENV 1 +| #define HAVE_WORKING_O_NOATIME 0 +| #define HAVE_WORKING_O_NOFOLLOW 1 +| #define HAVE_WCHAR_H 1 +| #define WORDS_LITTLEENDIAN 1 +| #define HAVE_ALLOCA_H 1 +| #define HAVE_ALLOCA 1 +| #define HAVE_GETCWD 1 +| #define restrict __restrict__ +| #define HAVE_DECL_STRERROR_R 1 +| #define HAVE_STRERROR_R 1 +| #define HAVE___HEADER_INLINE 1 +| #define HAVE_DECL_GETDTABLESIZE 1 +| #define HAVE_WINT_T 1 +| #define HAVE_LONG_LONG_INT 1 +| #define HAVE_UNSIGNED_LONG_LONG_INT 1 +| #define HAVE_MALLOC_POSIX 1 +| #define MALLOC_0_IS_NONNULL 1 +| #define HAVE_MINMAX_IN_SYS_PARAM_H 1 +| #define PROMOTED_MODE_T int +| #define HAVE_SIGSET_T 1 +| #define HAVE_DECL_SETENV 1 +| #define USER_LABEL_PREFIX _ +| #define HAVE__BOOL 1 +| #define HAVE_DECL_FCLOSEALL 0 +| #define __USE_MINGW_ANSI_STDIO 1 +| #define HAVE_DECL_ECVT 1 +| #define HAVE_DECL_FCVT 1 +| #define HAVE_DECL_GCVT 1 +| #define REPLACE_STRERROR_0 1 +| #define _USE_STD_STAT 1 +| #define HAVE_DECL_EXECVPE 0 +| #define HAVE_DECL_CLEARERR_UNLOCKED 1 +| #define HAVE_DECL_FEOF_UNLOCKED 1 +| #define HAVE_DECL_FERROR_UNLOCKED 1 +| #define HAVE_DECL_FFLUSH_UNLOCKED 0 +| #define HAVE_DECL_FGETS_UNLOCKED 0 +| #define HAVE_DECL_FPUTC_UNLOCKED 0 +| #define HAVE_DECL_FPUTS_UNLOCKED 0 +| #define HAVE_DECL_FREAD_UNLOCKED 0 +| #define HAVE_DECL_FWRITE_UNLOCKED 0 +| #define HAVE_DECL_GETC_UNLOCKED 1 +| #define HAVE_DECL_GETCHAR_UNLOCKED 1 +| #define HAVE_DECL_PUTC_UNLOCKED 1 +| #define HAVE_DECL_PUTCHAR_UNLOCKED 1 +| #define HAVE_DECL_WCSDUP 1 +| #define HAVE___BUILTIN_EXPECT 1 +| #define GNULIB_CANONICALIZE_LGPL 1 +| #define GNULIB_TEST_CANONICALIZE_FILE_NAME 1 +| #define GNULIB_TEST_REALPATH 1 +| #define GNULIB_TEST_CLOEXEC 1 +| #define GNULIB_TEST_CLOSE 1 +| #define GNULIB_TEST_DUP2 1 +| #define GNULIB_TEST_ENVIRON 1 +| #define GNULIB_TEST_FCNTL 1 +| #define GNULIB_TEST_FREE_POSIX 1 +| #define GNULIB_TEST_FSTAT 1 +| #define GNULIB_TEST_GETDTABLESIZE 1 +| #define HAVE_DECL_PROGRAM_INVOCATION_NAME 0 +| #define HAVE_DECL_PROGRAM_INVOCATION_SHORT_NAME 0 +| #define HAVE_DECL___ARGV 0 +| #define HAVE_VAR___PROGNAME 1 +| #define HAVE_VISIBILITY 1 +| #define HAVE___INLINE 1 +| #define GNULIB_TEST_MALLOC_POSIX 1 +| #define HAVE_MBSTATE_T 1 +| #define GNULIB_TEST_MEMPCPY 1 +| #define GNULIB_MSVC_NOTHROW 1 +| #define OPEN_TRAILING_SLASH_BUG 1 +| #define GNULIB_TEST_OPEN 1 +| #define HAVE_DECL_PROGRAM_INVOCATION_NAME 0 +| #define HAVE_DECL_PROGRAM_INVOCATION_SHORT_NAME 0 +| #define HAVE_RAISE 1 +| #define GNULIB_TEST_RAISE 1 +| /* end confdefs.h. */ +| /* Define rawmemchr to an innocuous variant, in case declares rawmemchr. +| For example, HP-UX 11i declares gettimeofday. */ +| #define rawmemchr innocuous_rawmemchr +| +| /* System header to define __stub macros and hopefully few prototypes, +| which can conflict with char rawmemchr (); below. */ +| +| #include +| #undef rawmemchr +| +| /* Override any GCC internal prototype to avoid an error. +| Use char because int might match the return type of a GCC +| builtin and then its argument prototype would still apply. */ +| #ifdef __cplusplus +| extern "C" +| #endif +| char rawmemchr (); +| /* The GNU C library defines this for functions which it implements +| to always fail with ENOSYS. Some functions are actually named +| something starting with __ and the normal name is an alias. */ +| #if defined __stub_rawmemchr || defined __stub___rawmemchr +| choke me +| #endif +| +| int +| main (void) +| { +| return rawmemchr (); +| ; +| return 0; +| } +configure:28625: result: no +configure:28733: checking whether readlink signature is correct +configure:28752: gcc -c -g -O2 conftest.c >&5 +configure:28752: $? = 0 +configure:28760: result: yes +configure:28762: checking whether readlink handles trailing slash correctly +configure:28799: gcc -o conftest -g -O2 conftest.c >&5 +configure:28799: $? = 0 +configure:28799: ./conftest +configure:28799: $? = 1 +configure: program exited with status 1 +configure: failed program was: +| /* confdefs.h */ +| #define PACKAGE_NAME "libiconv" +| #define PACKAGE_TARNAME "libiconv" +| #define PACKAGE_VERSION "1.17" +| #define PACKAGE_STRING "libiconv 1.17" +| #define PACKAGE_BUGREPORT "" +| #define PACKAGE_URL "" +| #define PACKAGE "libiconv" +| #define VERSION "1.17" +| #define HAVE_STDIO_H 1 +| #define HAVE_STDLIB_H 1 +| #define HAVE_STRING_H 1 +| #define HAVE_INTTYPES_H 1 +| #define HAVE_STDINT_H 1 +| #define HAVE_STRINGS_H 1 +| #define HAVE_SYS_STAT_H 1 +| #define HAVE_SYS_TYPES_H 1 +| #define HAVE_UNISTD_H 1 +| #define HAVE_WCHAR_H 1 +| #define HAVE_SYS_PARAM_H 1 +| #define HAVE_SYS_SOCKET_H 1 +| #define HAVE_LIMITS_H 1 +| #define HAVE_SYS_TIME_H 1 +| #define STDC_HEADERS 1 +| #define _ALL_SOURCE 1 +| #define _DARWIN_C_SOURCE 1 +| #define _GNU_SOURCE 1 +| #define _HPUX_ALT_XOPEN_SOCKET_API 1 +| #define _NETBSD_SOURCE 1 +| #define _OPENBSD_SOURCE 1 +| #define _POSIX_PTHREAD_SEMANTICS 1 +| #define __STDC_WANT_IEC_60559_ATTRIBS_EXT__ 1 +| #define __STDC_WANT_IEC_60559_BFP_EXT__ 1 +| #define __STDC_WANT_IEC_60559_DFP_EXT__ 1 +| #define __STDC_WANT_IEC_60559_FUNCS_EXT__ 1 +| #define __STDC_WANT_IEC_60559_TYPES_EXT__ 1 +| #define __STDC_WANT_LIB_EXT2__ 1 +| #define __STDC_WANT_MATH_SPEC_FUNCS__ 1 +| #define _TANDEM_SOURCE 1 +| #define __EXTENSIONS__ 1 +| #define HAVE_DLFCN_H 1 +| #define LT_OBJDIR ".libs/" +| #define INSTALLPREFIX "/Users/yangzuhao/Downloads/libiconv-1.17/output" +| #define HAVE_VISIBILITY 1 +| #define HAVE_ICONV 1 +| #define ICONV_CONST +| #define HAVE_CFPREFERENCESCOPYAPPVALUE 1 +| #define HAVE_CFLOCALECOPYPREFERREDLANGUAGES 1 +| #define HAVE_ICONV 1 +| #define HAVE_MBSTATE_T 1 +| #define HAVE_WCHAR_T 1 +| #define HAVE_GETC_UNLOCKED 1 +| #define HAVE_MBRTOWC 1 +| #define HAVE_WCRTOMB 1 +| #define HAVE_MBSINIT 1 +| #define HAVE_SETLOCALE 1 +| #define HAVE_MEMMOVE 1 +| #define HAVE_LANGINFO_CODESET 1 +| #define HAVE_SYMLINK 1 +| #define HAVE_FACCESSAT 1 +| #define HAVE_REALPATH 1 +| #define HAVE_LSTAT 1 +| #define HAVE_READLINKAT 1 +| #define HAVE_FCNTL 1 +| #define HAVE_GETDTABLESIZE 1 +| #define HAVE_GETPROGNAME 1 +| #define HAVE_READLINK 1 +| #define HAVE_SETENV 1 +| #define HAVE_WORKING_O_NOATIME 0 +| #define HAVE_WORKING_O_NOFOLLOW 1 +| #define HAVE_WCHAR_H 1 +| #define WORDS_LITTLEENDIAN 1 +| #define HAVE_ALLOCA_H 1 +| #define HAVE_ALLOCA 1 +| #define HAVE_GETCWD 1 +| #define restrict __restrict__ +| #define HAVE_DECL_STRERROR_R 1 +| #define HAVE_STRERROR_R 1 +| #define HAVE___HEADER_INLINE 1 +| #define HAVE_DECL_GETDTABLESIZE 1 +| #define HAVE_WINT_T 1 +| #define HAVE_LONG_LONG_INT 1 +| #define HAVE_UNSIGNED_LONG_LONG_INT 1 +| #define HAVE_MALLOC_POSIX 1 +| #define MALLOC_0_IS_NONNULL 1 +| #define HAVE_MINMAX_IN_SYS_PARAM_H 1 +| #define PROMOTED_MODE_T int +| #define HAVE_SIGSET_T 1 +| #define HAVE_DECL_SETENV 1 +| #define USER_LABEL_PREFIX _ +| #define HAVE__BOOL 1 +| #define HAVE_DECL_FCLOSEALL 0 +| #define __USE_MINGW_ANSI_STDIO 1 +| #define HAVE_DECL_ECVT 1 +| #define HAVE_DECL_FCVT 1 +| #define HAVE_DECL_GCVT 1 +| #define REPLACE_STRERROR_0 1 +| #define _USE_STD_STAT 1 +| #define HAVE_DECL_EXECVPE 0 +| #define HAVE_DECL_CLEARERR_UNLOCKED 1 +| #define HAVE_DECL_FEOF_UNLOCKED 1 +| #define HAVE_DECL_FERROR_UNLOCKED 1 +| #define HAVE_DECL_FFLUSH_UNLOCKED 0 +| #define HAVE_DECL_FGETS_UNLOCKED 0 +| #define HAVE_DECL_FPUTC_UNLOCKED 0 +| #define HAVE_DECL_FPUTS_UNLOCKED 0 +| #define HAVE_DECL_FREAD_UNLOCKED 0 +| #define HAVE_DECL_FWRITE_UNLOCKED 0 +| #define HAVE_DECL_GETC_UNLOCKED 1 +| #define HAVE_DECL_GETCHAR_UNLOCKED 1 +| #define HAVE_DECL_PUTC_UNLOCKED 1 +| #define HAVE_DECL_PUTCHAR_UNLOCKED 1 +| #define HAVE_DECL_WCSDUP 1 +| #define HAVE___BUILTIN_EXPECT 1 +| #define GNULIB_CANONICALIZE_LGPL 1 +| #define GNULIB_TEST_CANONICALIZE_FILE_NAME 1 +| #define GNULIB_TEST_REALPATH 1 +| #define GNULIB_TEST_CLOEXEC 1 +| #define GNULIB_TEST_CLOSE 1 +| #define GNULIB_TEST_DUP2 1 +| #define GNULIB_TEST_ENVIRON 1 +| #define GNULIB_TEST_FCNTL 1 +| #define GNULIB_TEST_FREE_POSIX 1 +| #define GNULIB_TEST_FSTAT 1 +| #define GNULIB_TEST_GETDTABLESIZE 1 +| #define HAVE_DECL_PROGRAM_INVOCATION_NAME 0 +| #define HAVE_DECL_PROGRAM_INVOCATION_SHORT_NAME 0 +| #define HAVE_DECL___ARGV 0 +| #define HAVE_VAR___PROGNAME 1 +| #define HAVE_VISIBILITY 1 +| #define HAVE___INLINE 1 +| #define GNULIB_TEST_MALLOC_POSIX 1 +| #define HAVE_MBSTATE_T 1 +| #define GNULIB_TEST_MEMPCPY 1 +| #define GNULIB_MSVC_NOTHROW 1 +| #define OPEN_TRAILING_SLASH_BUG 1 +| #define GNULIB_TEST_OPEN 1 +| #define HAVE_DECL_PROGRAM_INVOCATION_NAME 0 +| #define HAVE_DECL_PROGRAM_INVOCATION_SHORT_NAME 0 +| #define HAVE_RAISE 1 +| #define GNULIB_TEST_RAISE 1 +| #define GNULIB_TEST_RAWMEMCHR 1 +| #define GNULIB_TEST_READ 1 +| /* end confdefs.h. */ +| #include +| +| int +| main (void) +| { +| char buf[20]; +| return readlink ("conftest.lnk2/", buf, sizeof buf) != -1; +| ; +| return 0; +| } +configure:28811: result: no +configure:28827: checking whether readlink truncates results correctly +configure:28863: gcc -o conftest -g -O2 conftest.c >&5 +configure:28863: $? = 0 +configure:28863: ./conftest +configure:28863: $? = 0 +configure:28875: result: yes +configure:29022: checking for getcwd +configure:29022: result: yes +configure:29057: checking whether free is known to preserve errno +configure:29090: result: no +configure:29108: checking for mempcpy +configure:29108: result: no +configure:29123: checking for rawmemchr +configure:29123: result: no +configure:29151: checking for search.h +configure:29151: gcc -c -g -O2 conftest.c >&5 +configure:29151: $? = 0 +configure:29151: result: yes +configure:29158: checking for tsearch +configure:29158: gcc -o conftest -g -O2 conftest.c >&5 +configure:29158: $? = 0 +configure:29158: result: yes +configure:29219: checking for sigprocmask +configure:29219: result: yes +configure:29266: checking for ssize_t +configure:29292: result: yes +configure:29309: checking whether stat handles trailing slashes on files +configure:29353: gcc -o conftest -g -O2 conftest.c >&5 +configure:29353: $? = 0 +configure:29353: ./conftest +configure:29353: $? = 2 +configure: program exited with status 2 +configure: failed program was: +| /* confdefs.h */ +| #define PACKAGE_NAME "libiconv" +| #define PACKAGE_TARNAME "libiconv" +| #define PACKAGE_VERSION "1.17" +| #define PACKAGE_STRING "libiconv 1.17" +| #define PACKAGE_BUGREPORT "" +| #define PACKAGE_URL "" +| #define PACKAGE "libiconv" +| #define VERSION "1.17" +| #define HAVE_STDIO_H 1 +| #define HAVE_STDLIB_H 1 +| #define HAVE_STRING_H 1 +| #define HAVE_INTTYPES_H 1 +| #define HAVE_STDINT_H 1 +| #define HAVE_STRINGS_H 1 +| #define HAVE_SYS_STAT_H 1 +| #define HAVE_SYS_TYPES_H 1 +| #define HAVE_UNISTD_H 1 +| #define HAVE_WCHAR_H 1 +| #define HAVE_SYS_PARAM_H 1 +| #define HAVE_SYS_SOCKET_H 1 +| #define HAVE_LIMITS_H 1 +| #define HAVE_SYS_TIME_H 1 +| #define STDC_HEADERS 1 +| #define _ALL_SOURCE 1 +| #define _DARWIN_C_SOURCE 1 +| #define _GNU_SOURCE 1 +| #define _HPUX_ALT_XOPEN_SOCKET_API 1 +| #define _NETBSD_SOURCE 1 +| #define _OPENBSD_SOURCE 1 +| #define _POSIX_PTHREAD_SEMANTICS 1 +| #define __STDC_WANT_IEC_60559_ATTRIBS_EXT__ 1 +| #define __STDC_WANT_IEC_60559_BFP_EXT__ 1 +| #define __STDC_WANT_IEC_60559_DFP_EXT__ 1 +| #define __STDC_WANT_IEC_60559_FUNCS_EXT__ 1 +| #define __STDC_WANT_IEC_60559_TYPES_EXT__ 1 +| #define __STDC_WANT_LIB_EXT2__ 1 +| #define __STDC_WANT_MATH_SPEC_FUNCS__ 1 +| #define _TANDEM_SOURCE 1 +| #define __EXTENSIONS__ 1 +| #define HAVE_DLFCN_H 1 +| #define LT_OBJDIR ".libs/" +| #define INSTALLPREFIX "/Users/yangzuhao/Downloads/libiconv-1.17/output" +| #define HAVE_VISIBILITY 1 +| #define HAVE_ICONV 1 +| #define ICONV_CONST +| #define HAVE_CFPREFERENCESCOPYAPPVALUE 1 +| #define HAVE_CFLOCALECOPYPREFERREDLANGUAGES 1 +| #define HAVE_ICONV 1 +| #define HAVE_MBSTATE_T 1 +| #define HAVE_WCHAR_T 1 +| #define HAVE_GETC_UNLOCKED 1 +| #define HAVE_MBRTOWC 1 +| #define HAVE_WCRTOMB 1 +| #define HAVE_MBSINIT 1 +| #define HAVE_SETLOCALE 1 +| #define HAVE_MEMMOVE 1 +| #define HAVE_LANGINFO_CODESET 1 +| #define HAVE_SYMLINK 1 +| #define HAVE_FACCESSAT 1 +| #define HAVE_REALPATH 1 +| #define HAVE_LSTAT 1 +| #define HAVE_READLINKAT 1 +| #define HAVE_FCNTL 1 +| #define HAVE_GETDTABLESIZE 1 +| #define HAVE_GETPROGNAME 1 +| #define HAVE_READLINK 1 +| #define HAVE_SETENV 1 +| #define HAVE_WORKING_O_NOATIME 0 +| #define HAVE_WORKING_O_NOFOLLOW 1 +| #define HAVE_WCHAR_H 1 +| #define WORDS_LITTLEENDIAN 1 +| #define HAVE_ALLOCA_H 1 +| #define HAVE_ALLOCA 1 +| #define HAVE_GETCWD 1 +| #define restrict __restrict__ +| #define HAVE_DECL_STRERROR_R 1 +| #define HAVE_STRERROR_R 1 +| #define HAVE___HEADER_INLINE 1 +| #define HAVE_DECL_GETDTABLESIZE 1 +| #define HAVE_WINT_T 1 +| #define HAVE_LONG_LONG_INT 1 +| #define HAVE_UNSIGNED_LONG_LONG_INT 1 +| #define HAVE_MALLOC_POSIX 1 +| #define MALLOC_0_IS_NONNULL 1 +| #define HAVE_MINMAX_IN_SYS_PARAM_H 1 +| #define PROMOTED_MODE_T int +| #define HAVE_SIGSET_T 1 +| #define HAVE_DECL_SETENV 1 +| #define USER_LABEL_PREFIX _ +| #define HAVE__BOOL 1 +| #define HAVE_DECL_FCLOSEALL 0 +| #define __USE_MINGW_ANSI_STDIO 1 +| #define HAVE_DECL_ECVT 1 +| #define HAVE_DECL_FCVT 1 +| #define HAVE_DECL_GCVT 1 +| #define REPLACE_STRERROR_0 1 +| #define _USE_STD_STAT 1 +| #define HAVE_DECL_EXECVPE 0 +| #define HAVE_DECL_CLEARERR_UNLOCKED 1 +| #define HAVE_DECL_FEOF_UNLOCKED 1 +| #define HAVE_DECL_FERROR_UNLOCKED 1 +| #define HAVE_DECL_FFLUSH_UNLOCKED 0 +| #define HAVE_DECL_FGETS_UNLOCKED 0 +| #define HAVE_DECL_FPUTC_UNLOCKED 0 +| #define HAVE_DECL_FPUTS_UNLOCKED 0 +| #define HAVE_DECL_FREAD_UNLOCKED 0 +| #define HAVE_DECL_FWRITE_UNLOCKED 0 +| #define HAVE_DECL_GETC_UNLOCKED 1 +| #define HAVE_DECL_GETCHAR_UNLOCKED 1 +| #define HAVE_DECL_PUTC_UNLOCKED 1 +| #define HAVE_DECL_PUTCHAR_UNLOCKED 1 +| #define HAVE_DECL_WCSDUP 1 +| #define HAVE___BUILTIN_EXPECT 1 +| #define GNULIB_CANONICALIZE_LGPL 1 +| #define GNULIB_TEST_CANONICALIZE_FILE_NAME 1 +| #define GNULIB_TEST_REALPATH 1 +| #define GNULIB_TEST_CLOEXEC 1 +| #define GNULIB_TEST_CLOSE 1 +| #define GNULIB_TEST_DUP2 1 +| #define GNULIB_TEST_ENVIRON 1 +| #define GNULIB_TEST_FCNTL 1 +| #define GNULIB_TEST_FREE_POSIX 1 +| #define GNULIB_TEST_FSTAT 1 +| #define GNULIB_TEST_GETDTABLESIZE 1 +| #define HAVE_DECL_PROGRAM_INVOCATION_NAME 0 +| #define HAVE_DECL_PROGRAM_INVOCATION_SHORT_NAME 0 +| #define HAVE_DECL___ARGV 0 +| #define HAVE_VAR___PROGNAME 1 +| #define HAVE_VISIBILITY 1 +| #define HAVE___INLINE 1 +| #define GNULIB_TEST_MALLOC_POSIX 1 +| #define HAVE_MBSTATE_T 1 +| #define GNULIB_TEST_MEMPCPY 1 +| #define GNULIB_MSVC_NOTHROW 1 +| #define OPEN_TRAILING_SLASH_BUG 1 +| #define GNULIB_TEST_OPEN 1 +| #define HAVE_DECL_PROGRAM_INVOCATION_NAME 0 +| #define HAVE_DECL_PROGRAM_INVOCATION_SHORT_NAME 0 +| #define HAVE_RAISE 1 +| #define GNULIB_TEST_RAISE 1 +| #define GNULIB_TEST_RAWMEMCHR 1 +| #define GNULIB_TEST_READ 1 +| #define READLINK_TRAILING_SLASH_BUG 1 +| #define GNULIB_TEST_READLINK 1 +| #define GNULIB_TEST_REALLOC_POSIX 1 +| #define HAVE_GETCWD 1 +| #define HAVE_MALLOC_POSIX 1 +| #define HAVE_SEARCH_H 1 +| #define HAVE_TSEARCH 1 +| #define GNULIB_SIGPIPE 1 +| #define GNULIB_TEST_SIGPROCMASK 1 +| /* end confdefs.h. */ +| #include +| +| int +| main (void) +| { +| int result = 0; +| struct stat st; +| if (!stat ("conftest.tmp/", &st)) +| result |= 1; +| #if HAVE_LSTAT +| if (!stat ("conftest.lnk/", &st)) +| result |= 2; +| #endif +| return result; +| +| ; +| return 0; +| } +configure:29365: result: no +configure:29441: checking for struct stat.st_atim.tv_nsec +configure:29441: gcc -c -g -O2 conftest.c >&5 +conftest.c:163:13: error: no member named 'st_atim' in 'struct stat' +if (ac_aggr.st_atim.tv_nsec) + ~~~~~~~ ^ +1 error generated. +configure:29441: $? = 1 +configure: failed program was: +| /* confdefs.h */ +| #define PACKAGE_NAME "libiconv" +| #define PACKAGE_TARNAME "libiconv" +| #define PACKAGE_VERSION "1.17" +| #define PACKAGE_STRING "libiconv 1.17" +| #define PACKAGE_BUGREPORT "" +| #define PACKAGE_URL "" +| #define PACKAGE "libiconv" +| #define VERSION "1.17" +| #define HAVE_STDIO_H 1 +| #define HAVE_STDLIB_H 1 +| #define HAVE_STRING_H 1 +| #define HAVE_INTTYPES_H 1 +| #define HAVE_STDINT_H 1 +| #define HAVE_STRINGS_H 1 +| #define HAVE_SYS_STAT_H 1 +| #define HAVE_SYS_TYPES_H 1 +| #define HAVE_UNISTD_H 1 +| #define HAVE_WCHAR_H 1 +| #define HAVE_SYS_PARAM_H 1 +| #define HAVE_SYS_SOCKET_H 1 +| #define HAVE_LIMITS_H 1 +| #define HAVE_SYS_TIME_H 1 +| #define STDC_HEADERS 1 +| #define _ALL_SOURCE 1 +| #define _DARWIN_C_SOURCE 1 +| #define _GNU_SOURCE 1 +| #define _HPUX_ALT_XOPEN_SOCKET_API 1 +| #define _NETBSD_SOURCE 1 +| #define _OPENBSD_SOURCE 1 +| #define _POSIX_PTHREAD_SEMANTICS 1 +| #define __STDC_WANT_IEC_60559_ATTRIBS_EXT__ 1 +| #define __STDC_WANT_IEC_60559_BFP_EXT__ 1 +| #define __STDC_WANT_IEC_60559_DFP_EXT__ 1 +| #define __STDC_WANT_IEC_60559_FUNCS_EXT__ 1 +| #define __STDC_WANT_IEC_60559_TYPES_EXT__ 1 +| #define __STDC_WANT_LIB_EXT2__ 1 +| #define __STDC_WANT_MATH_SPEC_FUNCS__ 1 +| #define _TANDEM_SOURCE 1 +| #define __EXTENSIONS__ 1 +| #define HAVE_DLFCN_H 1 +| #define LT_OBJDIR ".libs/" +| #define INSTALLPREFIX "/Users/yangzuhao/Downloads/libiconv-1.17/output" +| #define HAVE_VISIBILITY 1 +| #define HAVE_ICONV 1 +| #define ICONV_CONST +| #define HAVE_CFPREFERENCESCOPYAPPVALUE 1 +| #define HAVE_CFLOCALECOPYPREFERREDLANGUAGES 1 +| #define HAVE_ICONV 1 +| #define HAVE_MBSTATE_T 1 +| #define HAVE_WCHAR_T 1 +| #define HAVE_GETC_UNLOCKED 1 +| #define HAVE_MBRTOWC 1 +| #define HAVE_WCRTOMB 1 +| #define HAVE_MBSINIT 1 +| #define HAVE_SETLOCALE 1 +| #define HAVE_MEMMOVE 1 +| #define HAVE_LANGINFO_CODESET 1 +| #define HAVE_SYMLINK 1 +| #define HAVE_FACCESSAT 1 +| #define HAVE_REALPATH 1 +| #define HAVE_LSTAT 1 +| #define HAVE_READLINKAT 1 +| #define HAVE_FCNTL 1 +| #define HAVE_GETDTABLESIZE 1 +| #define HAVE_GETPROGNAME 1 +| #define HAVE_READLINK 1 +| #define HAVE_SETENV 1 +| #define HAVE_WORKING_O_NOATIME 0 +| #define HAVE_WORKING_O_NOFOLLOW 1 +| #define HAVE_WCHAR_H 1 +| #define WORDS_LITTLEENDIAN 1 +| #define HAVE_ALLOCA_H 1 +| #define HAVE_ALLOCA 1 +| #define HAVE_GETCWD 1 +| #define restrict __restrict__ +| #define HAVE_DECL_STRERROR_R 1 +| #define HAVE_STRERROR_R 1 +| #define HAVE___HEADER_INLINE 1 +| #define HAVE_DECL_GETDTABLESIZE 1 +| #define HAVE_WINT_T 1 +| #define HAVE_LONG_LONG_INT 1 +| #define HAVE_UNSIGNED_LONG_LONG_INT 1 +| #define HAVE_MALLOC_POSIX 1 +| #define MALLOC_0_IS_NONNULL 1 +| #define HAVE_MINMAX_IN_SYS_PARAM_H 1 +| #define PROMOTED_MODE_T int +| #define HAVE_SIGSET_T 1 +| #define HAVE_DECL_SETENV 1 +| #define USER_LABEL_PREFIX _ +| #define HAVE__BOOL 1 +| #define HAVE_DECL_FCLOSEALL 0 +| #define __USE_MINGW_ANSI_STDIO 1 +| #define HAVE_DECL_ECVT 1 +| #define HAVE_DECL_FCVT 1 +| #define HAVE_DECL_GCVT 1 +| #define REPLACE_STRERROR_0 1 +| #define _USE_STD_STAT 1 +| #define HAVE_DECL_EXECVPE 0 +| #define HAVE_DECL_CLEARERR_UNLOCKED 1 +| #define HAVE_DECL_FEOF_UNLOCKED 1 +| #define HAVE_DECL_FERROR_UNLOCKED 1 +| #define HAVE_DECL_FFLUSH_UNLOCKED 0 +| #define HAVE_DECL_FGETS_UNLOCKED 0 +| #define HAVE_DECL_FPUTC_UNLOCKED 0 +| #define HAVE_DECL_FPUTS_UNLOCKED 0 +| #define HAVE_DECL_FREAD_UNLOCKED 0 +| #define HAVE_DECL_FWRITE_UNLOCKED 0 +| #define HAVE_DECL_GETC_UNLOCKED 1 +| #define HAVE_DECL_GETCHAR_UNLOCKED 1 +| #define HAVE_DECL_PUTC_UNLOCKED 1 +| #define HAVE_DECL_PUTCHAR_UNLOCKED 1 +| #define HAVE_DECL_WCSDUP 1 +| #define HAVE___BUILTIN_EXPECT 1 +| #define GNULIB_CANONICALIZE_LGPL 1 +| #define GNULIB_TEST_CANONICALIZE_FILE_NAME 1 +| #define GNULIB_TEST_REALPATH 1 +| #define GNULIB_TEST_CLOEXEC 1 +| #define GNULIB_TEST_CLOSE 1 +| #define GNULIB_TEST_DUP2 1 +| #define GNULIB_TEST_ENVIRON 1 +| #define GNULIB_TEST_FCNTL 1 +| #define GNULIB_TEST_FREE_POSIX 1 +| #define GNULIB_TEST_FSTAT 1 +| #define GNULIB_TEST_GETDTABLESIZE 1 +| #define HAVE_DECL_PROGRAM_INVOCATION_NAME 0 +| #define HAVE_DECL_PROGRAM_INVOCATION_SHORT_NAME 0 +| #define HAVE_DECL___ARGV 0 +| #define HAVE_VAR___PROGNAME 1 +| #define HAVE_VISIBILITY 1 +| #define HAVE___INLINE 1 +| #define GNULIB_TEST_MALLOC_POSIX 1 +| #define HAVE_MBSTATE_T 1 +| #define GNULIB_TEST_MEMPCPY 1 +| #define GNULIB_MSVC_NOTHROW 1 +| #define OPEN_TRAILING_SLASH_BUG 1 +| #define GNULIB_TEST_OPEN 1 +| #define HAVE_DECL_PROGRAM_INVOCATION_NAME 0 +| #define HAVE_DECL_PROGRAM_INVOCATION_SHORT_NAME 0 +| #define HAVE_RAISE 1 +| #define GNULIB_TEST_RAISE 1 +| #define GNULIB_TEST_RAWMEMCHR 1 +| #define GNULIB_TEST_READ 1 +| #define READLINK_TRAILING_SLASH_BUG 1 +| #define GNULIB_TEST_READLINK 1 +| #define GNULIB_TEST_REALLOC_POSIX 1 +| #define HAVE_GETCWD 1 +| #define HAVE_MALLOC_POSIX 1 +| #define HAVE_SEARCH_H 1 +| #define HAVE_TSEARCH 1 +| #define GNULIB_SIGPIPE 1 +| #define GNULIB_TEST_SIGPROCMASK 1 +| #define REPLACE_FUNC_STAT_FILE 1 +| #define GNULIB_TEST_STAT 1 +| /* end confdefs.h. */ +| #include +| #include +| +| int +| main (void) +| { +| static struct stat ac_aggr; +| if (ac_aggr.st_atim.tv_nsec) +| return 0; +| ; +| return 0; +| } +configure:29441: gcc -c -g -O2 conftest.c >&5 +conftest.c:163:20: error: no member named 'st_atim' in 'struct stat' +if (sizeof ac_aggr.st_atim.tv_nsec) + ~~~~~~~ ^ +1 error generated. +configure:29441: $? = 1 +configure: failed program was: +| /* confdefs.h */ +| #define PACKAGE_NAME "libiconv" +| #define PACKAGE_TARNAME "libiconv" +| #define PACKAGE_VERSION "1.17" +| #define PACKAGE_STRING "libiconv 1.17" +| #define PACKAGE_BUGREPORT "" +| #define PACKAGE_URL "" +| #define PACKAGE "libiconv" +| #define VERSION "1.17" +| #define HAVE_STDIO_H 1 +| #define HAVE_STDLIB_H 1 +| #define HAVE_STRING_H 1 +| #define HAVE_INTTYPES_H 1 +| #define HAVE_STDINT_H 1 +| #define HAVE_STRINGS_H 1 +| #define HAVE_SYS_STAT_H 1 +| #define HAVE_SYS_TYPES_H 1 +| #define HAVE_UNISTD_H 1 +| #define HAVE_WCHAR_H 1 +| #define HAVE_SYS_PARAM_H 1 +| #define HAVE_SYS_SOCKET_H 1 +| #define HAVE_LIMITS_H 1 +| #define HAVE_SYS_TIME_H 1 +| #define STDC_HEADERS 1 +| #define _ALL_SOURCE 1 +| #define _DARWIN_C_SOURCE 1 +| #define _GNU_SOURCE 1 +| #define _HPUX_ALT_XOPEN_SOCKET_API 1 +| #define _NETBSD_SOURCE 1 +| #define _OPENBSD_SOURCE 1 +| #define _POSIX_PTHREAD_SEMANTICS 1 +| #define __STDC_WANT_IEC_60559_ATTRIBS_EXT__ 1 +| #define __STDC_WANT_IEC_60559_BFP_EXT__ 1 +| #define __STDC_WANT_IEC_60559_DFP_EXT__ 1 +| #define __STDC_WANT_IEC_60559_FUNCS_EXT__ 1 +| #define __STDC_WANT_IEC_60559_TYPES_EXT__ 1 +| #define __STDC_WANT_LIB_EXT2__ 1 +| #define __STDC_WANT_MATH_SPEC_FUNCS__ 1 +| #define _TANDEM_SOURCE 1 +| #define __EXTENSIONS__ 1 +| #define HAVE_DLFCN_H 1 +| #define LT_OBJDIR ".libs/" +| #define INSTALLPREFIX "/Users/yangzuhao/Downloads/libiconv-1.17/output" +| #define HAVE_VISIBILITY 1 +| #define HAVE_ICONV 1 +| #define ICONV_CONST +| #define HAVE_CFPREFERENCESCOPYAPPVALUE 1 +| #define HAVE_CFLOCALECOPYPREFERREDLANGUAGES 1 +| #define HAVE_ICONV 1 +| #define HAVE_MBSTATE_T 1 +| #define HAVE_WCHAR_T 1 +| #define HAVE_GETC_UNLOCKED 1 +| #define HAVE_MBRTOWC 1 +| #define HAVE_WCRTOMB 1 +| #define HAVE_MBSINIT 1 +| #define HAVE_SETLOCALE 1 +| #define HAVE_MEMMOVE 1 +| #define HAVE_LANGINFO_CODESET 1 +| #define HAVE_SYMLINK 1 +| #define HAVE_FACCESSAT 1 +| #define HAVE_REALPATH 1 +| #define HAVE_LSTAT 1 +| #define HAVE_READLINKAT 1 +| #define HAVE_FCNTL 1 +| #define HAVE_GETDTABLESIZE 1 +| #define HAVE_GETPROGNAME 1 +| #define HAVE_READLINK 1 +| #define HAVE_SETENV 1 +| #define HAVE_WORKING_O_NOATIME 0 +| #define HAVE_WORKING_O_NOFOLLOW 1 +| #define HAVE_WCHAR_H 1 +| #define WORDS_LITTLEENDIAN 1 +| #define HAVE_ALLOCA_H 1 +| #define HAVE_ALLOCA 1 +| #define HAVE_GETCWD 1 +| #define restrict __restrict__ +| #define HAVE_DECL_STRERROR_R 1 +| #define HAVE_STRERROR_R 1 +| #define HAVE___HEADER_INLINE 1 +| #define HAVE_DECL_GETDTABLESIZE 1 +| #define HAVE_WINT_T 1 +| #define HAVE_LONG_LONG_INT 1 +| #define HAVE_UNSIGNED_LONG_LONG_INT 1 +| #define HAVE_MALLOC_POSIX 1 +| #define MALLOC_0_IS_NONNULL 1 +| #define HAVE_MINMAX_IN_SYS_PARAM_H 1 +| #define PROMOTED_MODE_T int +| #define HAVE_SIGSET_T 1 +| #define HAVE_DECL_SETENV 1 +| #define USER_LABEL_PREFIX _ +| #define HAVE__BOOL 1 +| #define HAVE_DECL_FCLOSEALL 0 +| #define __USE_MINGW_ANSI_STDIO 1 +| #define HAVE_DECL_ECVT 1 +| #define HAVE_DECL_FCVT 1 +| #define HAVE_DECL_GCVT 1 +| #define REPLACE_STRERROR_0 1 +| #define _USE_STD_STAT 1 +| #define HAVE_DECL_EXECVPE 0 +| #define HAVE_DECL_CLEARERR_UNLOCKED 1 +| #define HAVE_DECL_FEOF_UNLOCKED 1 +| #define HAVE_DECL_FERROR_UNLOCKED 1 +| #define HAVE_DECL_FFLUSH_UNLOCKED 0 +| #define HAVE_DECL_FGETS_UNLOCKED 0 +| #define HAVE_DECL_FPUTC_UNLOCKED 0 +| #define HAVE_DECL_FPUTS_UNLOCKED 0 +| #define HAVE_DECL_FREAD_UNLOCKED 0 +| #define HAVE_DECL_FWRITE_UNLOCKED 0 +| #define HAVE_DECL_GETC_UNLOCKED 1 +| #define HAVE_DECL_GETCHAR_UNLOCKED 1 +| #define HAVE_DECL_PUTC_UNLOCKED 1 +| #define HAVE_DECL_PUTCHAR_UNLOCKED 1 +| #define HAVE_DECL_WCSDUP 1 +| #define HAVE___BUILTIN_EXPECT 1 +| #define GNULIB_CANONICALIZE_LGPL 1 +| #define GNULIB_TEST_CANONICALIZE_FILE_NAME 1 +| #define GNULIB_TEST_REALPATH 1 +| #define GNULIB_TEST_CLOEXEC 1 +| #define GNULIB_TEST_CLOSE 1 +| #define GNULIB_TEST_DUP2 1 +| #define GNULIB_TEST_ENVIRON 1 +| #define GNULIB_TEST_FCNTL 1 +| #define GNULIB_TEST_FREE_POSIX 1 +| #define GNULIB_TEST_FSTAT 1 +| #define GNULIB_TEST_GETDTABLESIZE 1 +| #define HAVE_DECL_PROGRAM_INVOCATION_NAME 0 +| #define HAVE_DECL_PROGRAM_INVOCATION_SHORT_NAME 0 +| #define HAVE_DECL___ARGV 0 +| #define HAVE_VAR___PROGNAME 1 +| #define HAVE_VISIBILITY 1 +| #define HAVE___INLINE 1 +| #define GNULIB_TEST_MALLOC_POSIX 1 +| #define HAVE_MBSTATE_T 1 +| #define GNULIB_TEST_MEMPCPY 1 +| #define GNULIB_MSVC_NOTHROW 1 +| #define OPEN_TRAILING_SLASH_BUG 1 +| #define GNULIB_TEST_OPEN 1 +| #define HAVE_DECL_PROGRAM_INVOCATION_NAME 0 +| #define HAVE_DECL_PROGRAM_INVOCATION_SHORT_NAME 0 +| #define HAVE_RAISE 1 +| #define GNULIB_TEST_RAISE 1 +| #define GNULIB_TEST_RAWMEMCHR 1 +| #define GNULIB_TEST_READ 1 +| #define READLINK_TRAILING_SLASH_BUG 1 +| #define GNULIB_TEST_READLINK 1 +| #define GNULIB_TEST_REALLOC_POSIX 1 +| #define HAVE_GETCWD 1 +| #define HAVE_MALLOC_POSIX 1 +| #define HAVE_SEARCH_H 1 +| #define HAVE_TSEARCH 1 +| #define GNULIB_SIGPIPE 1 +| #define GNULIB_TEST_SIGPROCMASK 1 +| #define REPLACE_FUNC_STAT_FILE 1 +| #define GNULIB_TEST_STAT 1 +| /* end confdefs.h. */ +| #include +| #include +| +| int +| main (void) +| { +| static struct stat ac_aggr; +| if (sizeof ac_aggr.st_atim.tv_nsec) +| return 0; +| ; +| return 0; +| } +configure:29441: result: no +configure:29493: checking for struct stat.st_atimespec.tv_nsec +configure:29493: gcc -c -g -O2 conftest.c >&5 +configure:29493: $? = 0 +configure:29493: result: yes +configure:29534: checking for struct stat.st_birthtimespec.tv_nsec +configure:29534: gcc -c -g -O2 conftest.c >&5 +configure:29534: $? = 0 +configure:29534: result: yes +configure:29571: checking for working stdalign.h +configure:29619: gcc -c -g -O2 conftest.c >&5 +configure:29619: $? = 0 +configure:29627: result: yes +configure:30516: checking for variable-length arrays +configure:30574: gcc -c -g -O2 conftest.c >&5 +configure:30574: $? = 0 +configure:30585: result: yes +configure:30815: checking that generated files are newer than configure +configure:30821: result: done +configure:30911: creating ./config.status + +## ---------------------- ## +## Running config.status. ## +## ---------------------- ## + +This file was extended by libiconv config.status 1.17, which was +generated by GNU Autoconf 2.71. Invocation command line was + + CONFIG_FILES = + CONFIG_HEADERS = + CONFIG_LINKS = + CONFIG_COMMANDS = + $ ./config.status + +on Yaha-baidu + +config.status:2228: creating Makefile +config.status:2228: creating lib/Makefile +config.status:2228: creating srclib/Makefile +config.status:2228: creating src/Makefile +config.status:2228: creating po/Makefile.in +config.status:2228: creating man/Makefile +config.status:2228: creating tests/Makefile +config.status:2228: creating include/iconv.h +config.status:2228: creating include/iconv.h.inst +config.status:2228: creating config.h +config.status:2228: creating lib/config.h +config.status:2457: executing depfiles commands +config.status:2457: executing libtool commands +config.status:2457: executing po-directories commands +configure:33472: === configuring in libcharset (/Users/yangzuhao/Downloads/libiconv-1.17/libcharset) +configure:33533: running /bin/sh ./configure --disable-option-checking '--prefix=/Users/yangzuhao/Downloads/libiconv-1.17/output' --cache-file=/dev/null --srcdir=. + +## ---------------- ## +## Cache variables. ## +## ---------------- ## + +ac_cv_build=aarch64-apple-darwin22.4.0 +ac_cv_c_bigendian=no +ac_cv_c_compiler_gnu=yes +ac_cv_c_restrict=__restrict__ +ac_cv_c_undeclared_builtin_options='none needed' +ac_cv_c_vararrays=yes +ac_cv_decl_EILSEQ=yes +ac_cv_env_CC_set= +ac_cv_env_CC_value= +ac_cv_env_CFLAGS_set= +ac_cv_env_CFLAGS_value= +ac_cv_env_CPPFLAGS_set= +ac_cv_env_CPPFLAGS_value= +ac_cv_env_CPP_set= +ac_cv_env_CPP_value= +ac_cv_env_LDFLAGS_set= +ac_cv_env_LDFLAGS_value= +ac_cv_env_LIBS_set= +ac_cv_env_LIBS_value= +ac_cv_env_LT_SYS_LIBRARY_PATH_set= +ac_cv_env_LT_SYS_LIBRARY_PATH_value= +ac_cv_env_build_alias_set= +ac_cv_env_build_alias_value= +ac_cv_env_host_alias_set= +ac_cv_env_host_alias_value= +ac_cv_env_target_alias_set= +ac_cv_env_target_alias_value= +ac_cv_func__set_invalid_parameter_handler=no +ac_cv_func_alloca_works=yes +ac_cv_func_canonicalize_file_name=no +ac_cv_func_faccessat=yes +ac_cv_func_fcntl=yes +ac_cv_func_getc_unlocked=yes +ac_cv_func_getcwd=yes +ac_cv_func_getdtablesize=yes +ac_cv_func_getexecname=no +ac_cv_func_getprogname=yes +ac_cv_func_lstat=yes +ac_cv_func_malloc_0_nonnull=yes +ac_cv_func_mbrtowc=yes +ac_cv_func_mbsinit=yes +ac_cv_func_memmove=yes +ac_cv_func_mempcpy=no +ac_cv_func_raise=yes +ac_cv_func_rawmemchr=no +ac_cv_func_readlink=yes +ac_cv_func_readlinkat=yes +ac_cv_func_realpath=yes +ac_cv_func_setenv=yes +ac_cv_func_setlocale=yes +ac_cv_func_sigprocmask=yes +ac_cv_func_strerror_r_char_p=no +ac_cv_func_symlink=yes +ac_cv_func_tsearch=yes +ac_cv_func_wcrtomb=yes +ac_cv_have_decl___argv=no +ac_cv_have_decl_clearerr_unlocked=yes +ac_cv_have_decl_ecvt=yes +ac_cv_have_decl_execvpe=no +ac_cv_have_decl_fcloseall=no +ac_cv_have_decl_fcvt=yes +ac_cv_have_decl_feof_unlocked=yes +ac_cv_have_decl_ferror_unlocked=yes +ac_cv_have_decl_fflush_unlocked=no +ac_cv_have_decl_fgets_unlocked=no +ac_cv_have_decl_fputc_unlocked=no +ac_cv_have_decl_fputs_unlocked=no +ac_cv_have_decl_fread_unlocked=no +ac_cv_have_decl_fwrite_unlocked=no +ac_cv_have_decl_gcvt=yes +ac_cv_have_decl_getc_unlocked=yes +ac_cv_have_decl_getchar_unlocked=yes +ac_cv_have_decl_getdtablesize=yes +ac_cv_have_decl_program_invocation_name=no +ac_cv_have_decl_program_invocation_short_name=no +ac_cv_have_decl_putc_unlocked=yes +ac_cv_have_decl_putchar_unlocked=yes +ac_cv_have_decl_setenv=yes +ac_cv_have_decl_strerror_r=yes +ac_cv_have_decl_wcsdup=yes +ac_cv_header_crtdefs_h=no +ac_cv_header_dlfcn_h=yes +ac_cv_header_features_h=no +ac_cv_header_inttypes_h=yes +ac_cv_header_limits_h=yes +ac_cv_header_minix_config_h=no +ac_cv_header_search_h=yes +ac_cv_header_stat_broken=no +ac_cv_header_stdbool_h=yes +ac_cv_header_stdint_h=yes +ac_cv_header_stdio_h=yes +ac_cv_header_stdlib_h=yes +ac_cv_header_string_h=yes +ac_cv_header_strings_h=yes +ac_cv_header_sys_param_h=yes +ac_cv_header_sys_socket_h=yes +ac_cv_header_sys_stat_h=yes +ac_cv_header_sys_time_h=yes +ac_cv_header_sys_types_h=yes +ac_cv_header_unistd_h=yes +ac_cv_header_wchar_h=yes +ac_cv_host=aarch64-apple-darwin22.4.0 +ac_cv_lib_error_at_line=no +ac_cv_member_struct_stat_st_atim_tv_nsec=no +ac_cv_member_struct_stat_st_atimespec_tv_nsec=yes +ac_cv_member_struct_stat_st_birthtimespec_tv_nsec=yes +ac_cv_objext=o +ac_cv_path_EGREP='/usr/bin/grep -E' +ac_cv_path_FGREP='/usr/bin/grep -F' +ac_cv_path_GMSGFMT=/opt/homebrew/bin/msgfmt +ac_cv_path_GREP=/usr/bin/grep +ac_cv_path_MSGFMT=/opt/homebrew/bin/msgfmt +ac_cv_path_MSGMERGE=/opt/homebrew/bin/msgmerge +ac_cv_path_SED=/usr/bin/sed +ac_cv_path_STRIP=/usr/bin/strip +ac_cv_path_XGETTEXT=/opt/homebrew/bin/xgettext +ac_cv_path_install='/opt/homebrew/bin/ginstall -c' +ac_cv_path_lt_DD=/bin/dd +ac_cv_path_mkdir=/opt/homebrew/bin/gmkdir +ac_cv_prog_AWK=gawk +ac_cv_prog_CPP='gcc -E' +ac_cv_prog_ac_ct_AR=ar +ac_cv_prog_ac_ct_CC=gcc +ac_cv_prog_ac_ct_DSYMUTIL=dsymutil +ac_cv_prog_ac_ct_FILECMD=file +ac_cv_prog_ac_ct_LIPO=lipo +ac_cv_prog_ac_ct_NMEDIT=nmedit +ac_cv_prog_ac_ct_OBJDUMP=objdump +ac_cv_prog_ac_ct_OTOOL=otool +ac_cv_prog_ac_ct_RANLIB=ranlib +ac_cv_prog_ac_ct_STRIP=/usr/bin/strip +ac_cv_prog_cc_c11= +ac_cv_prog_cc_g=yes +ac_cv_prog_cc_stdc= +ac_cv_prog_make_make_set=yes +ac_cv_safe_to_define___extensions__=yes +ac_cv_should_define__xopen_source=no +ac_cv_sys_file_offset_bits=no +ac_cv_sys_largefile_CC=no +ac_cv_type__Bool=yes +ac_cv_type_mbstate_t=yes +ac_cv_type_mode_t=yes +ac_cv_type_nlink_t=yes +ac_cv_type_pid_t=yes +ac_cv_type_sighandler_t=no +ac_cv_type_sigset_t=yes +ac_cv_type_size_t=yes +ac_cv_type_uid_t=yes +ac_cv_type_volatile_sig_atomic_t=yes +ac_cv_working_alloca_h=yes +acl_cv_hardcode_direct=no +acl_cv_hardcode_libdir_flag_spec= +acl_cv_hardcode_libdir_separator= +acl_cv_hardcode_minus_L=no +acl_cv_libdirstems=lib,lib,lib +acl_cv_libext=a +acl_cv_libname_spec='lib$name' +acl_cv_libpath=DYLD_LIBRARY_PATH +acl_cv_library_names_spec='$libname$shrext' +acl_cv_prog_gnu_ld=no +acl_cv_rpath=done +acl_cv_shlibext=dylib +acl_cv_shlibpath_var=DYLD_LIBRARY_PATH +acl_cv_wl=-Wl, +am_cv_CC_dependencies_compiler_type=none +am_cv_func_iconv=yes +am_cv_func_iconv_works=yes +am_cv_langinfo_codeset=yes +am_cv_lib_iconv=yes +am_cv_make_support_nested_variables=yes +am_cv_prog_cc_c_o=yes +cl_cv_prog_LN=ln +cl_cv_prog_cp='cp -p' +gl_cv___builtin_expect=yes +gl_cv_c___inline=yes +gl_cv_c_amsterdam_compiler=no +gl_cv_c_multiarch=no +gl_cv_cc_vis_werror=yes +gl_cv_cc_visibility=yes +gl_cv_cc_wallow=-Wno-error +gl_cv_compiler_check_decl_option=-Werror=implicit-function-declaration +gl_cv_compiler_clang=yes +gl_cv_decl_null_works=yes +gl_cv_decl_readlink_works=yes +gl_cv_double_slash_root=no +gl_cv_elf=no +gl_cv_func_dup2_works=yes +gl_cv_func_fcntl_f_dupfd_cloexec=yes +gl_cv_func_fcntl_f_dupfd_works=yes +gl_cv_func_free_preserves_errno=no +gl_cv_func_getdtablesize_works=yes +gl_cv_func_lstat_dereferences_slashed_symlink=no +gl_cv_func_malloc_0_nonnull=1 +gl_cv_func_malloc_posix=yes +gl_cv_func_open_slash=no +gl_cv_func_printf_attribute_flavor=system +gl_cv_func_readlink_trailing_slash=no +gl_cv_func_readlink_truncate=yes +gl_cv_func_realpath_works=no +gl_cv_func_stat_file_slash=no +gl_cv_func_strerror_0_works=no +gl_cv_have___header_inline=yes +gl_cv_have_include_next=yes +gl_cv_header_errno_h_complete=yes +gl_cv_header_limits_width=no +gl_cv_header_signal_h_SIGPIPE=yes +gl_cv_header_stdint_width=no +gl_cv_header_stdint_without_STDC_macros=yes +gl_cv_header_wchar_h_correct_inline=yes +gl_cv_header_wchar_h_standalone=yes +gl_cv_header_working_fcntl_h='no (bad O_NOATIME)' +gl_cv_header_working_stdalign_h=yes +gl_cv_header_working_stdint_h=yes +gl_cv_host_cpu_c_abi_32bit=no +gl_cv_iconv_nonconst=yes +gl_cv_macro_O_CLOEXEC=yes +gl_cv_malloc_ptrdiff=yes +gl_cv_minmax_in_limits_h=no +gl_cv_minmax_in_sys_param_h=yes +gl_cv_next_fcntl_h='' +gl_cv_next_inttypes_h='' +gl_cv_next_limits_h='' +gl_cv_next_signal_h='' +gl_cv_next_stdint_h='' +gl_cv_next_stdio_h='' +gl_cv_next_stdlib_h='' +gl_cv_next_string_h='' +gl_cv_next_sys_stat_h='' +gl_cv_next_sys_types_h='' +gl_cv_next_time_h='' +gl_cv_next_unistd_h='' +gl_cv_next_wchar_h='' +gl_cv_prog_as_underscore=yes +gl_cv_promoted_mode_t=int +gl_cv_source_line_length_unlimited=yes +gl_cv_sys_struct_timespec_in_time_h=yes +gl_cv_time_h_has_TIME_UTC=yes +gl_cv_type_max_align_t=yes +gl_cv_type_sigset_t=yes +gl_cv_type_wint_t_large_enough=yes +gl_cv_var___progname=yes +gt_cv_c_wchar_t=yes +gt_cv_c_wint_t=yes +gt_cv_func_CFLocaleCopyPreferredLanguages=yes +gt_cv_func_CFPreferencesCopyAppValue=yes +gt_cv_func_gnugettext2_libc=no +gt_cv_func_gnugettext2_libintl=no +gt_cv_ssize_t=yes +gt_cv_var_environ_declaration=no +lt_cv_apple_cc_single_mod=yes +lt_cv_ar_at_file=no +lt_cv_deplibs_check_method=pass_all +lt_cv_file_magic_cmd='$MAGIC_CMD' +lt_cv_file_magic_test_file= +lt_cv_ld_exported_symbols_list=yes +lt_cv_ld_force_load=yes +lt_cv_ld_reload_flag=-r +lt_cv_nm_interface='BSD nm' +lt_cv_objdir=.libs +lt_cv_path_LD=/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ld +lt_cv_path_NM='/usr/bin/nm -B' +lt_cv_path_mainfest_tool=no +lt_cv_prog_compiler_c_o=yes +lt_cv_prog_compiler_c_o_RC=yes +lt_cv_prog_compiler_pic='-fno-common -DPIC' +lt_cv_prog_compiler_pic_works=yes +lt_cv_prog_compiler_rtti_exceptions=yes +lt_cv_prog_compiler_static_works=no +lt_cv_prog_gnu_ld=no +lt_cv_sharedlib_from_linklib_cmd='printf %s\n' +lt_cv_sys_global_symbol_pipe='/usr/bin/sed -n -e '\''s/^.*[ ]\([ABCDGIRSTW][ABCDGIRSTW]*\)[ ][ ]*_\([_A-Za-z][_A-Za-z0-9]*\)$/\1 _\2 \2/p'\'' | /usr/bin/sed '\''/ __gnu_lto/d'\''' +lt_cv_sys_global_symbol_to_c_name_address='/usr/bin/sed -n -e '\''s/^: \(.*\) .*$/ {"\1", (void *) 0},/p'\'' -e '\''s/^[ABCDGIRSTW][ABCDGIRSTW]* .* \(.*\)$/ {"\1", (void *) \&\1},/p'\''' +lt_cv_sys_global_symbol_to_c_name_address_lib_prefix='/usr/bin/sed -n -e '\''s/^: \(.*\) .*$/ {"\1", (void *) 0},/p'\'' -e '\''s/^[ABCDGIRSTW][ABCDGIRSTW]* .* \(lib.*\)$/ {"\1", (void *) \&\1},/p'\'' -e '\''s/^[ABCDGIRSTW][ABCDGIRSTW]* .* \(.*\)$/ {"lib\1", (void *) \&\1},/p'\''' +lt_cv_sys_global_symbol_to_cdecl='/usr/bin/sed -n -e '\''s/^T .* \(.*\)$/extern int \1();/p'\'' -e '\''s/^[ABCDGIRSTW][ABCDGIRSTW]* .* \(.*\)$/extern char \1;/p'\''' +lt_cv_sys_global_symbol_to_import= +lt_cv_sys_max_cmd_len=786432 +lt_cv_to_host_file_cmd=func_convert_file_noop +lt_cv_to_tool_file_cmd=func_convert_file_noop +lt_cv_truncate_bin='/bin/dd bs=4096 count=1' + +## ----------------- ## +## Output variables. ## +## ----------------- ## + +ACLOCAL='${SHELL} '\''/Users/yangzuhao/Downloads/libiconv-1.17/build-aux/missing'\'' aclocal-1.16' +ALLOCA='' +ALLOCA_H='alloca.h' +AMDEPBACKSLASH='\' +AMDEP_FALSE='#' +AMDEP_TRUE='' +AMTAR='$${TAR-tar}' +AM_BACKSLASH='\' +AM_DEFAULT_V='$(AM_DEFAULT_VERBOSITY)' +AM_DEFAULT_VERBOSITY='1' +AM_V='$(V)' +APPLE_UNIVERSAL_BUILD='0' +AR='ar' +ARFLAGS='cr' +AS='as' +ASM_SYMBOL_PREFIX='"_"' +AUTOCONF='${SHELL} '\''/Users/yangzuhao/Downloads/libiconv-1.17/build-aux/missing'\'' autoconf' +AUTOHEADER='${SHELL} '\''/Users/yangzuhao/Downloads/libiconv-1.17/build-aux/missing'\'' autoheader' +AUTOMAKE='${SHELL} '\''/Users/yangzuhao/Downloads/libiconv-1.17/build-aux/missing'\'' automake-1.16' +AWK='gawk' +BITSIZEOF_PTRDIFF_T='' +BITSIZEOF_SIG_ATOMIC_T='' +BITSIZEOF_SIZE_T='' +BITSIZEOF_WCHAR_T='' +BITSIZEOF_WINT_T='' +BROKEN_WCHAR_H='0' +CC='gcc' +CCDEPMODE='depmode=none' +CFLAGS='-g -O2' +CFLAG_VISIBILITY='-fvisibility=hidden' +CP='cp -p' +CPP='gcc -E' +CPPFLAGS='' +CSCOPE='cscope' +CTAGS='ctags' +CYGPATH_W='echo' +DEFS='-DHAVE_CONFIG_H' +DEPDIR='.deps' +DLLTOOL='false' +DLL_VARIABLE='' +DSYMUTIL='dsymutil' +DUMPBIN='' +ECHO_C='\c' +ECHO_N='' +ECHO_T='' +EGREP='/usr/bin/grep -E' +EILSEQ='' +EMULTIHOP_HIDDEN='' +EMULTIHOP_VALUE='' +ENOLINK_HIDDEN='' +ENOLINK_VALUE='' +EOVERFLOW_HIDDEN='' +EOVERFLOW_VALUE='' +ERRNO_H='' +ETAGS='etags' +EXEEXT='' +FGREP='/usr/bin/grep -F' +FILECMD='file' +GETTEXT_MACRO_VERSION='0.20' +GL_CFLAG_ALLOW_WARNINGS='-Wno-error' +GL_CFLAG_GNULIB_WARNINGS=' -Wno-cast-qual -Wno-conversion -Wno-float-equal -Wno-sign-compare -Wno-undef -Wno-unused-function -Wno-unused-parameter -Wno-float-conversion -Wimplicit-fallthrough -Wno-pedantic -Wno-sign-conversion -Wno-type-limits' +GL_COND_LIBTOOL_FALSE='' +GL_COND_LIBTOOL_TRUE='#' +GL_COND_OBJ_CANONICALIZE_LGPL_FALSE='#' +GL_COND_OBJ_CANONICALIZE_LGPL_TRUE='' +GL_COND_OBJ_CLOSE_FALSE='' +GL_COND_OBJ_CLOSE_TRUE='#' +GL_COND_OBJ_DUP2_FALSE='' +GL_COND_OBJ_DUP2_TRUE='#' +GL_COND_OBJ_ERROR_FALSE='#' +GL_COND_OBJ_ERROR_TRUE='' +GL_COND_OBJ_FCNTL_FALSE='' +GL_COND_OBJ_FCNTL_TRUE='#' +GL_COND_OBJ_FREE_FALSE='#' +GL_COND_OBJ_FREE_TRUE='' +GL_COND_OBJ_FSTAT_FALSE='' +GL_COND_OBJ_FSTAT_TRUE='#' +GL_COND_OBJ_GETDTABLESIZE_FALSE='' +GL_COND_OBJ_GETDTABLESIZE_TRUE='#' +GL_COND_OBJ_MEMPCPY_FALSE='#' +GL_COND_OBJ_MEMPCPY_TRUE='' +GL_COND_OBJ_MSVC_INVAL_FALSE='' +GL_COND_OBJ_MSVC_INVAL_TRUE='#' +GL_COND_OBJ_MSVC_NOTHROW_FALSE='' +GL_COND_OBJ_MSVC_NOTHROW_TRUE='#' +GL_COND_OBJ_OPEN_FALSE='#' +GL_COND_OBJ_OPEN_TRUE='' +GL_COND_OBJ_PROGRELOC_FALSE='' +GL_COND_OBJ_PROGRELOC_TRUE='#' +GL_COND_OBJ_RAISE_FALSE='' +GL_COND_OBJ_RAISE_TRUE='#' +GL_COND_OBJ_RAWMEMCHR_FALSE='#' +GL_COND_OBJ_RAWMEMCHR_TRUE='' +GL_COND_OBJ_READLINK_FALSE='#' +GL_COND_OBJ_READLINK_TRUE='' +GL_COND_OBJ_READ_FALSE='' +GL_COND_OBJ_READ_TRUE='#' +GL_COND_OBJ_SIGPROCMASK_FALSE='' +GL_COND_OBJ_SIGPROCMASK_TRUE='#' +GL_COND_OBJ_STAT_FALSE='#' +GL_COND_OBJ_STAT_TRUE='' +GL_COND_OBJ_STDIO_READ_FALSE='' +GL_COND_OBJ_STDIO_READ_TRUE='#' +GL_COND_OBJ_STDIO_WRITE_FALSE='' +GL_COND_OBJ_STDIO_WRITE_TRUE='#' +GL_COND_OBJ_STRERROR_FALSE='#' +GL_COND_OBJ_STRERROR_OVERRIDE_FALSE='#' +GL_COND_OBJ_STRERROR_OVERRIDE_TRUE='' +GL_COND_OBJ_STRERROR_TRUE='' +GL_GENERATE_ALLOCA_H_FALSE='#' +GL_GENERATE_ALLOCA_H_TRUE='' +GL_GENERATE_ERRNO_H_FALSE='' +GL_GENERATE_ERRNO_H_TRUE='#' +GL_GENERATE_LIMITS_H_FALSE='#' +GL_GENERATE_LIMITS_H_TRUE='' +GL_GENERATE_STDALIGN_H_FALSE='' +GL_GENERATE_STDALIGN_H_TRUE='#' +GL_GENERATE_STDBOOL_H_FALSE='' +GL_GENERATE_STDBOOL_H_TRUE='#' +GL_GENERATE_STDDEF_H_FALSE='' +GL_GENERATE_STDDEF_H_TRUE='#' +GL_GENERATE_STDINT_H_FALSE='#' +GL_GENERATE_STDINT_H_TRUE='' +GL_GNULIB_ACCESS='0' +GL_GNULIB_ALIGNED_ALLOC='0' +GL_GNULIB_ATOLL='0' +GL_GNULIB_BTOWC='0' +GL_GNULIB_CALLOC_GNU='0' +GL_GNULIB_CALLOC_POSIX='0' +GL_GNULIB_CANONICALIZE_FILE_NAME='1' +GL_GNULIB_CHDIR='0' +GL_GNULIB_CHOWN='0' +GL_GNULIB_CLOSE='1' +GL_GNULIB_COPY_FILE_RANGE='0' +GL_GNULIB_CREAT='0' +GL_GNULIB_CTIME='0' +GL_GNULIB_DPRINTF='0' +GL_GNULIB_DUP2='1' +GL_GNULIB_DUP3='0' +GL_GNULIB_DUP='0' +GL_GNULIB_ENVIRON='1' +GL_GNULIB_EUIDACCESS='0' +GL_GNULIB_EXECL='0' +GL_GNULIB_EXECLE='0' +GL_GNULIB_EXECLP='0' +GL_GNULIB_EXECV='0' +GL_GNULIB_EXECVE='0' +GL_GNULIB_EXECVP='0' +GL_GNULIB_EXECVPE='0' +GL_GNULIB_EXPLICIT_BZERO='0' +GL_GNULIB_FACCESSAT='0' +GL_GNULIB_FCHDIR='0' +GL_GNULIB_FCHMODAT='0' +GL_GNULIB_FCHOWNAT='0' +GL_GNULIB_FCLOSE='0' +GL_GNULIB_FCNTL='1' +GL_GNULIB_FDATASYNC='0' +GL_GNULIB_FDOPEN='0' +GL_GNULIB_FFLUSH='0' +GL_GNULIB_FFSL='0' +GL_GNULIB_FFSLL='0' +GL_GNULIB_FGETC='1' +GL_GNULIB_FGETS='1' +GL_GNULIB_FOPEN='0' +GL_GNULIB_FOPEN_GNU='0' +GL_GNULIB_FPRINTF='1' +GL_GNULIB_FPRINTF_POSIX='0' +GL_GNULIB_FPURGE='0' +GL_GNULIB_FPUTC='1' +GL_GNULIB_FPUTS='1' +GL_GNULIB_FREAD='1' +GL_GNULIB_FREE_POSIX='1' +GL_GNULIB_FREOPEN='0' +GL_GNULIB_FSCANF='1' +GL_GNULIB_FSEEK='0' +GL_GNULIB_FSEEKO='0' +GL_GNULIB_FSTAT='1' +GL_GNULIB_FSTATAT='0' +GL_GNULIB_FSYNC='0' +GL_GNULIB_FTELL='0' +GL_GNULIB_FTELLO='0' +GL_GNULIB_FTRUNCATE='0' +GL_GNULIB_FUTIMENS='0' +GL_GNULIB_FWRITE='1' +GL_GNULIB_GETC='1' +GL_GNULIB_GETCHAR='1' +GL_GNULIB_GETCWD='0' +GL_GNULIB_GETDELIM='0' +GL_GNULIB_GETDOMAINNAME='0' +GL_GNULIB_GETDTABLESIZE='1' +GL_GNULIB_GETENTROPY='0' +GL_GNULIB_GETGROUPS='0' +GL_GNULIB_GETHOSTNAME='0' +GL_GNULIB_GETLINE='0' +GL_GNULIB_GETLOADAVG='0' +GL_GNULIB_GETLOGIN='0' +GL_GNULIB_GETLOGIN_R='0' +GL_GNULIB_GETOPT_POSIX='0' +GL_GNULIB_GETPAGESIZE='0' +GL_GNULIB_GETPASS='0' +GL_GNULIB_GETPASS_GNU='0' +GL_GNULIB_GETSUBOPT='0' +GL_GNULIB_GETUMASK='0' +GL_GNULIB_GETUSERSHELL='0' +GL_GNULIB_GRANTPT='0' +GL_GNULIB_GROUP_MEMBER='0' +GL_GNULIB_IMAXABS='0' +GL_GNULIB_IMAXDIV='0' +GL_GNULIB_ISATTY='0' +GL_GNULIB_LCHMOD='0' +GL_GNULIB_LCHOWN='0' +GL_GNULIB_LINK='0' +GL_GNULIB_LINKAT='0' +GL_GNULIB_LOCALTIME='0' +GL_GNULIB_LSEEK='0' +GL_GNULIB_LSTAT='0' +GL_GNULIB_MALLOC_GNU='0' +GL_GNULIB_MALLOC_POSIX='1' +GL_GNULIB_MBRLEN='0' +GL_GNULIB_MBRTOWC='0' +GL_GNULIB_MBSCASECMP='0' +GL_GNULIB_MBSCASESTR='0' +GL_GNULIB_MBSCHR='0' +GL_GNULIB_MBSCSPN='0' +GL_GNULIB_MBSINIT='0' +GL_GNULIB_MBSLEN='0' +GL_GNULIB_MBSNCASECMP='0' +GL_GNULIB_MBSNLEN='0' +GL_GNULIB_MBSNRTOWCS='0' +GL_GNULIB_MBSPBRK='0' +GL_GNULIB_MBSPCASECMP='0' +GL_GNULIB_MBSRCHR='0' +GL_GNULIB_MBSRTOWCS='0' +GL_GNULIB_MBSSEP='0' +GL_GNULIB_MBSSPN='0' +GL_GNULIB_MBSSTR='0' +GL_GNULIB_MBSTOK_R='0' +GL_GNULIB_MBTOWC='0' +GL_GNULIB_MDA_ACCESS='1' +GL_GNULIB_MDA_CHDIR='1' +GL_GNULIB_MDA_CHMOD='1' +GL_GNULIB_MDA_CLOSE='1' +GL_GNULIB_MDA_CREAT='1' +GL_GNULIB_MDA_DUP2='1' +GL_GNULIB_MDA_DUP='1' +GL_GNULIB_MDA_ECVT='1' +GL_GNULIB_MDA_EXECL='1' +GL_GNULIB_MDA_EXECLE='1' +GL_GNULIB_MDA_EXECLP='1' +GL_GNULIB_MDA_EXECV='1' +GL_GNULIB_MDA_EXECVE='1' +GL_GNULIB_MDA_EXECVP='1' +GL_GNULIB_MDA_EXECVPE='1' +GL_GNULIB_MDA_FCLOSEALL='1' +GL_GNULIB_MDA_FCVT='1' +GL_GNULIB_MDA_FDOPEN='1' +GL_GNULIB_MDA_FILENO='1' +GL_GNULIB_MDA_GCVT='1' +GL_GNULIB_MDA_GETCWD='1' +GL_GNULIB_MDA_GETPID='1' +GL_GNULIB_MDA_GETW='1' +GL_GNULIB_MDA_ISATTY='1' +GL_GNULIB_MDA_LSEEK='1' +GL_GNULIB_MDA_MEMCCPY='1' +GL_GNULIB_MDA_MKDIR='1' +GL_GNULIB_MDA_MKTEMP='1' +GL_GNULIB_MDA_OPEN='1' +GL_GNULIB_MDA_PUTENV='1' +GL_GNULIB_MDA_PUTW='1' +GL_GNULIB_MDA_READ='1' +GL_GNULIB_MDA_RMDIR='1' +GL_GNULIB_MDA_STRDUP='1' +GL_GNULIB_MDA_SWAB='1' +GL_GNULIB_MDA_TEMPNAM='1' +GL_GNULIB_MDA_TZSET='1' +GL_GNULIB_MDA_UMASK='1' +GL_GNULIB_MDA_UNLINK='1' +GL_GNULIB_MDA_WCSDUP='1' +GL_GNULIB_MDA_WRITE='1' +GL_GNULIB_MEMCHR='0' +GL_GNULIB_MEMMEM='0' +GL_GNULIB_MEMPCPY='1' +GL_GNULIB_MEMRCHR='0' +GL_GNULIB_MKDIR='0' +GL_GNULIB_MKDIRAT='0' +GL_GNULIB_MKDTEMP='0' +GL_GNULIB_MKFIFO='0' +GL_GNULIB_MKFIFOAT='0' +GL_GNULIB_MKNOD='0' +GL_GNULIB_MKNODAT='0' +GL_GNULIB_MKOSTEMP='0' +GL_GNULIB_MKOSTEMPS='0' +GL_GNULIB_MKSTEMP='0' +GL_GNULIB_MKSTEMPS='0' +GL_GNULIB_MKTIME='0' +GL_GNULIB_NANOSLEEP='0' +GL_GNULIB_NONBLOCKING='0' +GL_GNULIB_OBSTACK_PRINTF='0' +GL_GNULIB_OBSTACK_PRINTF_POSIX='0' +GL_GNULIB_OPEN='1' +GL_GNULIB_OPENAT='0' +GL_GNULIB_OVERRIDES_STRUCT_STAT='0' +GL_GNULIB_PCLOSE='0' +GL_GNULIB_PERROR='0' +GL_GNULIB_PIPE2='0' +GL_GNULIB_PIPE='0' +GL_GNULIB_POPEN='0' +GL_GNULIB_POSIX_MEMALIGN='0' +GL_GNULIB_POSIX_OPENPT='0' +GL_GNULIB_PREAD='0' +GL_GNULIB_PRINTF='1' +GL_GNULIB_PRINTF_POSIX='0' +GL_GNULIB_PTHREAD_SIGMASK='0' +GL_GNULIB_PTSNAME='0' +GL_GNULIB_PTSNAME_R='0' +GL_GNULIB_PUTC='1' +GL_GNULIB_PUTCHAR='1' +GL_GNULIB_PUTENV='0' +GL_GNULIB_PUTS='1' +GL_GNULIB_PWRITE='0' +GL_GNULIB_QSORT_R='0' +GL_GNULIB_RAISE='1' +GL_GNULIB_RANDOM='0' +GL_GNULIB_RANDOM_R='0' +GL_GNULIB_RAWMEMCHR='1' +GL_GNULIB_READ='1' +GL_GNULIB_READLINK='1' +GL_GNULIB_READLINKAT='0' +GL_GNULIB_REALLOCARRAY='0' +GL_GNULIB_REALLOC_GNU='0' +GL_GNULIB_REALLOC_POSIX='1' +GL_GNULIB_REALPATH='1' +GL_GNULIB_REMOVE='0' +GL_GNULIB_RENAME='0' +GL_GNULIB_RENAMEAT='0' +GL_GNULIB_RMDIR='0' +GL_GNULIB_RPMATCH='0' +GL_GNULIB_SCANF='1' +GL_GNULIB_SECURE_GETENV='0' +GL_GNULIB_SETENV='0' +GL_GNULIB_SETHOSTNAME='0' +GL_GNULIB_SIGABBREV_NP='0' +GL_GNULIB_SIGACTION='0' +GL_GNULIB_SIGDESCR_NP='0' +GL_GNULIB_SIGNAL_H_SIGPIPE='1' +GL_GNULIB_SIGPROCMASK='1' +GL_GNULIB_SLEEP='0' +GL_GNULIB_SNPRINTF='0' +GL_GNULIB_SPRINTF_POSIX='0' +GL_GNULIB_STAT='1' +GL_GNULIB_STDIO_H_NONBLOCKING='0' +GL_GNULIB_STDIO_H_SIGPIPE='1' +GL_GNULIB_STPCPY='0' +GL_GNULIB_STPNCPY='0' +GL_GNULIB_STRCASESTR='0' +GL_GNULIB_STRCHRNUL='0' +GL_GNULIB_STRDUP='0' +GL_GNULIB_STRERROR='1' +GL_GNULIB_STRERRORNAME_NP='0' +GL_GNULIB_STRERROR_R='0' +GL_GNULIB_STRFTIME='0' +GL_GNULIB_STRNCAT='0' +GL_GNULIB_STRNDUP='0' +GL_GNULIB_STRNLEN='0' +GL_GNULIB_STRPBRK='0' +GL_GNULIB_STRPTIME='0' +GL_GNULIB_STRSEP='0' +GL_GNULIB_STRSIGNAL='0' +GL_GNULIB_STRSTR='0' +GL_GNULIB_STRTOD='0' +GL_GNULIB_STRTOIMAX='0' +GL_GNULIB_STRTOK_R='0' +GL_GNULIB_STRTOL='0' +GL_GNULIB_STRTOLD='0' +GL_GNULIB_STRTOLL='0' +GL_GNULIB_STRTOUL='0' +GL_GNULIB_STRTOULL='0' +GL_GNULIB_STRTOUMAX='0' +GL_GNULIB_STRVERSCMP='0' +GL_GNULIB_SYMLINK='0' +GL_GNULIB_SYMLINKAT='0' +GL_GNULIB_SYSTEM_POSIX='0' +GL_GNULIB_TIMEGM='0' +GL_GNULIB_TIMESPEC_GET='0' +GL_GNULIB_TIMESPEC_GETRES='0' +GL_GNULIB_TIME_R='0' +GL_GNULIB_TIME_RZ='0' +GL_GNULIB_TMPFILE='0' +GL_GNULIB_TRUNCATE='0' +GL_GNULIB_TTYNAME_R='0' +GL_GNULIB_TZSET='0' +GL_GNULIB_UNISTD_H_GETOPT='0' +GL_GNULIB_UNISTD_H_NONBLOCKING='0' +GL_GNULIB_UNISTD_H_SIGPIPE='1' +GL_GNULIB_UNLINK='0' +GL_GNULIB_UNLINKAT='0' +GL_GNULIB_UNLOCKPT='0' +GL_GNULIB_UNSETENV='0' +GL_GNULIB_USLEEP='0' +GL_GNULIB_UTIMENSAT='0' +GL_GNULIB_VASPRINTF='0' +GL_GNULIB_VDPRINTF='0' +GL_GNULIB_VFPRINTF='1' +GL_GNULIB_VFPRINTF_POSIX='0' +GL_GNULIB_VFSCANF='0' +GL_GNULIB_VPRINTF='1' +GL_GNULIB_VPRINTF_POSIX='0' +GL_GNULIB_VSCANF='0' +GL_GNULIB_VSNPRINTF='0' +GL_GNULIB_VSPRINTF_POSIX='0' +GL_GNULIB_WCPCPY='0' +GL_GNULIB_WCPNCPY='0' +GL_GNULIB_WCRTOMB='0' +GL_GNULIB_WCSCASECMP='0' +GL_GNULIB_WCSCAT='0' +GL_GNULIB_WCSCHR='0' +GL_GNULIB_WCSCMP='0' +GL_GNULIB_WCSCOLL='0' +GL_GNULIB_WCSCPY='0' +GL_GNULIB_WCSCSPN='0' +GL_GNULIB_WCSDUP='0' +GL_GNULIB_WCSFTIME='0' +GL_GNULIB_WCSLEN='0' +GL_GNULIB_WCSNCASECMP='0' +GL_GNULIB_WCSNCAT='0' +GL_GNULIB_WCSNCMP='0' +GL_GNULIB_WCSNCPY='0' +GL_GNULIB_WCSNLEN='0' +GL_GNULIB_WCSNRTOMBS='0' +GL_GNULIB_WCSPBRK='0' +GL_GNULIB_WCSRCHR='0' +GL_GNULIB_WCSRTOMBS='0' +GL_GNULIB_WCSSPN='0' +GL_GNULIB_WCSSTR='0' +GL_GNULIB_WCSTOK='0' +GL_GNULIB_WCSWIDTH='0' +GL_GNULIB_WCSXFRM='0' +GL_GNULIB_WCTOB='0' +GL_GNULIB_WCTOMB='0' +GL_GNULIB_WCWIDTH='0' +GL_GNULIB_WMEMCHR='0' +GL_GNULIB_WMEMCMP='0' +GL_GNULIB_WMEMCPY='0' +GL_GNULIB_WMEMMOVE='0' +GL_GNULIB_WMEMPCPY='0' +GL_GNULIB_WMEMSET='0' +GL_GNULIB_WRITE='0' +GL_GNULIB__EXIT='0' +GMSGFMT='/opt/homebrew/bin/msgfmt' +GMSGFMT_015='/opt/homebrew/bin/msgfmt' +GNULIBHEADERS_OVERRIDE_WINT_T='0' +GNULIB_GETTIMEOFDAY='0' +GREP='/usr/bin/grep' +HAVE_ALIGNED_ALLOC='1' +HAVE_ATOLL='1' +HAVE_BTOWC='1' +HAVE_C99_STDINT_H='1' +HAVE_CANONICALIZE_FILE_NAME='0' +HAVE_CHOWN='1' +HAVE_COPY_FILE_RANGE='1' +HAVE_CRTDEFS_H='0' +HAVE_DECL_ECVT='1' +HAVE_DECL_ENVIRON='0' +HAVE_DECL_EXECVPE='0' +HAVE_DECL_FCHDIR='1' +HAVE_DECL_FCLOSEALL='0' +HAVE_DECL_FCVT='1' +HAVE_DECL_FDATASYNC='1' +HAVE_DECL_FPURGE='1' +HAVE_DECL_FSEEKO='1' +HAVE_DECL_FTELLO='1' +HAVE_DECL_GCVT='1' +HAVE_DECL_GETDELIM='1' +HAVE_DECL_GETDOMAINNAME='1' +HAVE_DECL_GETLINE='1' +HAVE_DECL_GETLOADAVG='1' +HAVE_DECL_GETLOGIN='1' +HAVE_DECL_GETLOGIN_R='1' +HAVE_DECL_GETPAGESIZE='1' +HAVE_DECL_GETUSERSHELL='1' +HAVE_DECL_IMAXABS='1' +HAVE_DECL_IMAXDIV='1' +HAVE_DECL_INITSTATE='1' +HAVE_DECL_LOCALTIME_R='1' +HAVE_DECL_MEMMEM='1' +HAVE_DECL_MEMRCHR='1' +HAVE_DECL_OBSTACK_PRINTF='1' +HAVE_DECL_SETENV='1' +HAVE_DECL_SETHOSTNAME='1' +HAVE_DECL_SETSTATE='1' +HAVE_DECL_SNPRINTF='1' +HAVE_DECL_STRDUP='1' +HAVE_DECL_STRERROR_R='1' +HAVE_DECL_STRNDUP='1' +HAVE_DECL_STRNLEN='1' +HAVE_DECL_STRSIGNAL='1' +HAVE_DECL_STRTOIMAX='1' +HAVE_DECL_STRTOK_R='1' +HAVE_DECL_STRTOUMAX='1' +HAVE_DECL_TRUNCATE='1' +HAVE_DECL_TTYNAME_R='1' +HAVE_DECL_UNSETENV='1' +HAVE_DECL_VSNPRINTF='1' +HAVE_DECL_WCSDUP='1' +HAVE_DECL_WCTOB='1' +HAVE_DECL_WCWIDTH='1' +HAVE_DPRINTF='1' +HAVE_DUP3='1' +HAVE_EUIDACCESS='1' +HAVE_EXECVPE='1' +HAVE_EXPLICIT_BZERO='1' +HAVE_FACCESSAT='1' +HAVE_FCHDIR='1' +HAVE_FCHMODAT='1' +HAVE_FCHOWNAT='1' +HAVE_FCNTL='1' +HAVE_FDATASYNC='1' +HAVE_FEATURES_H='0' +HAVE_FFSL='1' +HAVE_FFSLL='1' +HAVE_FSEEKO='1' +HAVE_FSTATAT='1' +HAVE_FSYNC='1' +HAVE_FTELLO='1' +HAVE_FTRUNCATE='1' +HAVE_FUTIMENS='1' +HAVE_GETDTABLESIZE='1' +HAVE_GETENTROPY='1' +HAVE_GETGROUPS='1' +HAVE_GETHOSTNAME='1' +HAVE_GETLOGIN='1' +HAVE_GETPAGESIZE='1' +HAVE_GETPASS='1' +HAVE_GETSUBOPT='1' +HAVE_GETUMASK='1' +HAVE_GRANTPT='1' +HAVE_GROUP_MEMBER='1' +HAVE_IMAXDIV_T='1' +HAVE_INITSTATE='1' +HAVE_INTTYPES_H='1' +HAVE_LCHMOD='1' +HAVE_LCHOWN='1' +HAVE_LINK='1' +HAVE_LINKAT='1' +HAVE_LSTAT='1' +HAVE_MAX_ALIGN_T='1' +HAVE_MBRLEN='1' +HAVE_MBRTOWC='1' +HAVE_MBSINIT='1' +HAVE_MBSLEN='0' +HAVE_MBSNRTOWCS='1' +HAVE_MBSRTOWCS='1' +HAVE_MBTOWC='1' +HAVE_MEMPCPY='0' +HAVE_MKDIRAT='1' +HAVE_MKDTEMP='1' +HAVE_MKFIFO='1' +HAVE_MKFIFOAT='1' +HAVE_MKNOD='1' +HAVE_MKNODAT='1' +HAVE_MKOSTEMP='1' +HAVE_MKOSTEMPS='1' +HAVE_MKSTEMP='1' +HAVE_MKSTEMPS='1' +HAVE_MSVC_INVALID_PARAMETER_HANDLER='0' +HAVE_NANOSLEEP='1' +HAVE_OPENAT='1' +HAVE_OS_H='0' +HAVE_PCLOSE='1' +HAVE_PIPE2='1' +HAVE_PIPE='1' +HAVE_POPEN='1' +HAVE_POSIX_MEMALIGN='1' +HAVE_POSIX_OPENPT='1' +HAVE_POSIX_SIGNALBLOCKING='1' +HAVE_PREAD='1' +HAVE_PTHREAD_SIGMASK='1' +HAVE_PTSNAME='1' +HAVE_PTSNAME_R='1' +HAVE_PWRITE='1' +HAVE_QSORT_R='1' +HAVE_RAISE='1' +HAVE_RANDOM='1' +HAVE_RANDOM_H='1' +HAVE_RANDOM_R='1' +HAVE_RAWMEMCHR='0' +HAVE_READLINK='1' +HAVE_READLINKAT='1' +HAVE_REALLOCARRAY='1' +HAVE_REALPATH='1' +HAVE_RENAMEAT='1' +HAVE_RPMATCH='1' +HAVE_SECURE_GETENV='1' +HAVE_SETENV='1' +HAVE_SETHOSTNAME='1' +HAVE_SETSTATE='1' +HAVE_SIGABBREV_NP='1' +HAVE_SIGACTION='1' +HAVE_SIGDESCR_NP='1' +HAVE_SIGHANDLER_T='0' +HAVE_SIGINFO_T='1' +HAVE_SIGNED_SIG_ATOMIC_T='' +HAVE_SIGNED_WCHAR_T='' +HAVE_SIGNED_WINT_T='' +HAVE_SIGSET_T='1' +HAVE_SLEEP='1' +HAVE_STDINT_H='1' +HAVE_STPCPY='1' +HAVE_STPNCPY='1' +HAVE_STRCASESTR='1' +HAVE_STRCHRNUL='1' +HAVE_STRERRORNAME_NP='1' +HAVE_STRPBRK='1' +HAVE_STRPTIME='1' +HAVE_STRSEP='1' +HAVE_STRTOD='1' +HAVE_STRTOL='1' +HAVE_STRTOLD='1' +HAVE_STRTOLL='1' +HAVE_STRTOUL='1' +HAVE_STRTOULL='1' +HAVE_STRUCT_RANDOM_DATA='1' +HAVE_STRUCT_SIGACTION_SA_SIGACTION='1' +HAVE_STRVERSCMP='1' +HAVE_SYMLINK='1' +HAVE_SYMLINKAT='1' +HAVE_SYS_BITYPES_H='0' +HAVE_SYS_INTTYPES_H='0' +HAVE_SYS_LOADAVG_H='0' +HAVE_SYS_PARAM_H='0' +HAVE_SYS_TYPES_H='1' +HAVE_TIMEGM='1' +HAVE_TIMESPEC_GET='1' +HAVE_TIMESPEC_GETRES='1' +HAVE_TIMEZONE_T='0' +HAVE_TYPE_VOLATILE_SIG_ATOMIC_T='1' +HAVE_UNISTD_H='1' +HAVE_UNLINKAT='1' +HAVE_UNLOCKPT='1' +HAVE_USLEEP='1' +HAVE_UTIMENSAT='1' +HAVE_VASPRINTF='1' +HAVE_VDPRINTF='1' +HAVE_VISIBILITY='1' +HAVE_WCHAR_H='1' +HAVE_WCHAR_T='1' +HAVE_WCPCPY='1' +HAVE_WCPNCPY='1' +HAVE_WCRTOMB='1' +HAVE_WCSCASECMP='1' +HAVE_WCSCAT='1' +HAVE_WCSCHR='1' +HAVE_WCSCMP='1' +HAVE_WCSCOLL='1' +HAVE_WCSCPY='1' +HAVE_WCSCSPN='1' +HAVE_WCSDUP='1' +HAVE_WCSFTIME='1' +HAVE_WCSLEN='1' +HAVE_WCSNCASECMP='1' +HAVE_WCSNCAT='1' +HAVE_WCSNCMP='1' +HAVE_WCSNCPY='1' +HAVE_WCSNLEN='1' +HAVE_WCSNRTOMBS='1' +HAVE_WCSPBRK='1' +HAVE_WCSRCHR='1' +HAVE_WCSRTOMBS='1' +HAVE_WCSSPN='1' +HAVE_WCSSTR='1' +HAVE_WCSTOK='1' +HAVE_WCSWIDTH='1' +HAVE_WCSXFRM='1' +HAVE_WINSOCK2_H='0' +HAVE_WINT_T='1' +HAVE_WMEMCHR='1' +HAVE_WMEMCMP='1' +HAVE_WMEMCPY='1' +HAVE_WMEMMOVE='1' +HAVE_WMEMPCPY='1' +HAVE_WMEMSET='1' +HAVE__BOOL='1' +HAVE__EXIT='1' +ICONV_CONST='' +INCLUDE_NEXT='include_next' +INCLUDE_NEXT_AS_FIRST_DIRECTIVE='include_next' +INSTALL_DATA='${INSTALL} -m 644' +INSTALL_PROGRAM='${INSTALL}' +INSTALL_PROGRAM_ENV='' +INSTALL_SCRIPT='${INSTALL}' +INSTALL_STRIP_PROGRAM='$(install_sh) -c -s' +INT32_MAX_LT_INTMAX_MAX='1' +INT64_MAX_EQ_LONG_MAX='defined _LP64' +INTLLIBS='' +INTL_MACOSX_LIBS='-Wl,-framework -Wl,CoreFoundation' +LD='/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ld' +LDFLAGS='' +LIBICONV='-liconv' +LIBICRT_LIBDEPS='' +LIBICRT_LTLIBDEPS='' +LIBINTL='' +LIBOBJS='' +LIBS='' +LIBTOOL='/bin/sh $(top_builddir)/libtool' +LIBUNISTRING_COMPILE_UNIWIDTH_WIDTH_FALSE='#' +LIBUNISTRING_COMPILE_UNIWIDTH_WIDTH_TRUE='' +LIBUNISTRING_UNITYPES_H='unitypes.h' +LIBUNISTRING_UNIWIDTH_H='uniwidth.h' +LIMITS_H='limits.h' +LIPO='lipo' +LN='ln' +LN_S='ln -s' +LTLIBICONV='-liconv' +LTLIBINTL='' +LTLIBOBJS='' +LT_SYS_LIBRARY_PATH='' +MAKEINFO='${SHELL} '\''/Users/yangzuhao/Downloads/libiconv-1.17/build-aux/missing'\'' makeinfo' +MANIFEST_TOOL=':' +MKDIR_P='/opt/homebrew/bin/gmkdir -p' +MSGFMT='/opt/homebrew/bin/msgfmt' +MSGMERGE='/opt/homebrew/bin/msgmerge' +MSGMERGE_FOR_MSGFMT_OPTION='--for-msgfmt' +NEXT_AS_FIRST_DIRECTIVE_ERRNO_H='' +NEXT_AS_FIRST_DIRECTIVE_FCNTL_H='' +NEXT_AS_FIRST_DIRECTIVE_INTTYPES_H='' +NEXT_AS_FIRST_DIRECTIVE_LIMITS_H='' +NEXT_AS_FIRST_DIRECTIVE_SIGNAL_H='' +NEXT_AS_FIRST_DIRECTIVE_STDDEF_H='' +NEXT_AS_FIRST_DIRECTIVE_STDINT_H='' +NEXT_AS_FIRST_DIRECTIVE_STDIO_H='' +NEXT_AS_FIRST_DIRECTIVE_STDLIB_H='' +NEXT_AS_FIRST_DIRECTIVE_STRING_H='' +NEXT_AS_FIRST_DIRECTIVE_SYS_STAT_H='' +NEXT_AS_FIRST_DIRECTIVE_SYS_TYPES_H='' +NEXT_AS_FIRST_DIRECTIVE_TIME_H='' +NEXT_AS_FIRST_DIRECTIVE_UNISTD_H='' +NEXT_AS_FIRST_DIRECTIVE_WCHAR_H='' +NEXT_ERRNO_H='' +NEXT_FCNTL_H='' +NEXT_INTTYPES_H='' +NEXT_LIMITS_H='' +NEXT_SIGNAL_H='' +NEXT_STDDEF_H='' +NEXT_STDINT_H='' +NEXT_STDIO_H='' +NEXT_STDLIB_H='' +NEXT_STRING_H='' +NEXT_SYS_STAT_H='' +NEXT_SYS_TYPES_H='' +NEXT_TIME_H='' +NEXT_UNISTD_H='' +NEXT_WCHAR_H='' +NM='/usr/bin/nm -B' +NMEDIT='nmedit' +OBJDUMP='objdump' +OBJEXT='o' +OTOOL64=':' +OTOOL='otool' +PACKAGE='libiconv' +PACKAGE_BUGREPORT='' +PACKAGE_NAME='libiconv' +PACKAGE_STRING='libiconv 1.17' +PACKAGE_TARNAME='libiconv' +PACKAGE_URL='' +PACKAGE_VERSION='1.17' +PATH_SEPARATOR=':' +POSUB='' +PRAGMA_COLUMNS='' +PRAGMA_SYSTEM_HEADER='#pragma GCC system_header' +PRIPTR_PREFIX='__PRIPTR_PREFIX' +PTHREAD_H_DEFINES_STRUCT_TIMESPEC='0' +PTRDIFF_T_SUFFIX='' +RANLIB='ranlib' +RC='' +RELOCATABLE='no' +RELOCATABLE_BUILD_DIR='$(top_builddir)/srclib' +RELOCATABLE_CONFIG_H_DIR='$(top_builddir)' +RELOCATABLE_LDFLAGS='' +RELOCATABLE_LIBRARY_PATH='' +RELOCATABLE_SRC_DIR='$(top_srcdir)/srclib' +RELOCATABLE_STRIP=':' +RELOCATABLE_VIA_LD_FALSE='' +RELOCATABLE_VIA_LD_TRUE='#' +RELOCATABLE_VIA_WRAPPER_FALSE='' +RELOCATABLE_VIA_WRAPPER_TRUE='#' +REPLACE_ACCESS='0' +REPLACE_ALIGNED_ALLOC='0' +REPLACE_BTOWC='0' +REPLACE_CALLOC_FOR_CALLOC_GNU='0' +REPLACE_CALLOC_FOR_CALLOC_POSIX='0' +REPLACE_CANONICALIZE_FILE_NAME='0' +REPLACE_CHOWN='0' +REPLACE_CLOSE='0' +REPLACE_COPY_FILE_RANGE='0' +REPLACE_CREAT='0' +REPLACE_CTIME='GNULIB_PORTCHECK' +REPLACE_DPRINTF='0' +REPLACE_DUP2='0' +REPLACE_DUP='0' +REPLACE_EXECL='0' +REPLACE_EXECLE='0' +REPLACE_EXECLP='0' +REPLACE_EXECV='0' +REPLACE_EXECVE='0' +REPLACE_EXECVP='0' +REPLACE_EXECVPE='0' +REPLACE_FACCESSAT='0' +REPLACE_FCHMODAT='0' +REPLACE_FCHOWNAT='0' +REPLACE_FCLOSE='0' +REPLACE_FCNTL='0' +REPLACE_FDOPEN='0' +REPLACE_FFLUSH='0' +REPLACE_FFSLL='0' +REPLACE_FOPEN='0' +REPLACE_FOPEN_FOR_FOPEN_GNU='0' +REPLACE_FPRINTF='0' +REPLACE_FPURGE='0' +REPLACE_FREE='1' +REPLACE_FREOPEN='0' +REPLACE_FSEEK='0' +REPLACE_FSEEKO='0' +REPLACE_FSTAT='0' +REPLACE_FSTATAT='0' +REPLACE_FTELL='0' +REPLACE_FTELLO='0' +REPLACE_FTRUNCATE='0' +REPLACE_FUTIMENS='0' +REPLACE_GETCWD='0' +REPLACE_GETDELIM='0' +REPLACE_GETDOMAINNAME='0' +REPLACE_GETDTABLESIZE='0' +REPLACE_GETGROUPS='0' +REPLACE_GETLINE='0' +REPLACE_GETLOGIN_R='0' +REPLACE_GETPAGESIZE='0' +REPLACE_GETPASS='0' +REPLACE_GETPASS_FOR_GETPASS_GNU='0' +REPLACE_GMTIME='0' +REPLACE_INITSTATE='0' +REPLACE_ISATTY='0' +REPLACE_LCHOWN='0' +REPLACE_LINK='0' +REPLACE_LINKAT='0' +REPLACE_LOCALTIME='0' +REPLACE_LOCALTIME_R='GNULIB_PORTCHECK' +REPLACE_LSEEK='0' +REPLACE_LSTAT='0' +REPLACE_MALLOC_FOR_MALLOC_GNU='0' +REPLACE_MALLOC_FOR_MALLOC_POSIX='0' +REPLACE_MBRLEN='0' +REPLACE_MBRTOWC='0' +REPLACE_MBSINIT='0' +REPLACE_MBSNRTOWCS='0' +REPLACE_MBSRTOWCS='0' +REPLACE_MBSTATE_T='0' +REPLACE_MBTOWC='0' +REPLACE_MEMCHR='0' +REPLACE_MEMMEM='0' +REPLACE_MKDIR='0' +REPLACE_MKFIFO='0' +REPLACE_MKFIFOAT='0' +REPLACE_MKNOD='0' +REPLACE_MKNODAT='0' +REPLACE_MKSTEMP='0' +REPLACE_MKTIME='GNULIB_PORTCHECK' +REPLACE_NANOSLEEP='GNULIB_PORTCHECK' +REPLACE_NULL='0' +REPLACE_OBSTACK_PRINTF='0' +REPLACE_OPEN='1' +REPLACE_OPENAT='0' +REPLACE_PERROR='0' +REPLACE_POPEN='0' +REPLACE_POSIX_MEMALIGN='0' +REPLACE_PREAD='0' +REPLACE_PRINTF='0' +REPLACE_PTHREAD_SIGMASK='0' +REPLACE_PTSNAME='0' +REPLACE_PTSNAME_R='0' +REPLACE_PUTENV='0' +REPLACE_PWRITE='0' +REPLACE_QSORT_R='0' +REPLACE_RAISE='0' +REPLACE_RANDOM='0' +REPLACE_RANDOM_R='0' +REPLACE_READ='0' +REPLACE_READLINK='1' +REPLACE_READLINKAT='0' +REPLACE_REALLOCARRAY='0' +REPLACE_REALLOC_FOR_REALLOC_GNU='0' +REPLACE_REALLOC_FOR_REALLOC_POSIX='0' +REPLACE_REALPATH='1' +REPLACE_REMOVE='0' +REPLACE_RENAME='0' +REPLACE_RENAMEAT='0' +REPLACE_RMDIR='0' +REPLACE_SETENV='0' +REPLACE_SETSTATE='0' +REPLACE_SLEEP='0' +REPLACE_SNPRINTF='0' +REPLACE_SPRINTF='0' +REPLACE_STAT='1' +REPLACE_STDIO_READ_FUNCS='0' +REPLACE_STDIO_WRITE_FUNCS='0' +REPLACE_STPNCPY='0' +REPLACE_STRCASESTR='0' +REPLACE_STRCHRNUL='0' +REPLACE_STRDUP='0' +REPLACE_STRERROR='1' +REPLACE_STRERRORNAME_NP='0' +REPLACE_STRERROR_R='0' +REPLACE_STRFTIME='GNULIB_PORTCHECK' +REPLACE_STRNCAT='0' +REPLACE_STRNDUP='0' +REPLACE_STRNLEN='0' +REPLACE_STRSIGNAL='0' +REPLACE_STRSTR='0' +REPLACE_STRTOD='0' +REPLACE_STRTOIMAX='0' +REPLACE_STRTOK_R='0' +REPLACE_STRTOL='0' +REPLACE_STRTOLD='0' +REPLACE_STRTOLL='0' +REPLACE_STRTOUL='0' +REPLACE_STRTOULL='0' +REPLACE_STRTOUMAX='0' +REPLACE_SYMLINK='0' +REPLACE_SYMLINKAT='0' +REPLACE_TIMEGM='GNULIB_PORTCHECK' +REPLACE_TMPFILE='0' +REPLACE_TRUNCATE='0' +REPLACE_TTYNAME_R='0' +REPLACE_TZSET='GNULIB_PORTCHECK' +REPLACE_UNLINK='0' +REPLACE_UNLINKAT='0' +REPLACE_UNSETENV='0' +REPLACE_USLEEP='0' +REPLACE_UTIMENSAT='0' +REPLACE_VASPRINTF='0' +REPLACE_VDPRINTF='0' +REPLACE_VFPRINTF='0' +REPLACE_VPRINTF='0' +REPLACE_VSNPRINTF='0' +REPLACE_VSPRINTF='0' +REPLACE_WCRTOMB='0' +REPLACE_WCSFTIME='0' +REPLACE_WCSNRTOMBS='0' +REPLACE_WCSRTOMBS='0' +REPLACE_WCSTOK='0' +REPLACE_WCSWIDTH='0' +REPLACE_WCTOB='0' +REPLACE_WCTOMB='0' +REPLACE_WCWIDTH='0' +REPLACE_WRITE='0' +SED='/usr/bin/sed' +SET_MAKE='' +SHELL='/bin/sh' +SIG_ATOMIC_T_SUFFIX='' +SIZE_T_SUFFIX='' +SRCLIBOBJS='' +STDALIGN_H='' +STDBOOL_H='' +STDDEF_H='' +STDINT_H='stdint.h' +STRIP='/usr/bin/strip' +SYS_TIME_H_DEFINES_STRUCT_TIMESPEC='0' +TIME_H_DEFINES_STRUCT_TIMESPEC='1' +TIME_H_DEFINES_TIME_UTC='1' +UINT32_MAX_LT_UINTMAX_MAX='1' +UINT64_MAX_EQ_ULONG_MAX='defined _LP64' +UNDEFINE_STRTOK_R='0' +UNISTD_H_DEFINES_STRUCT_TIMESPEC='0' +UNISTD_H_HAVE_SYS_RANDOM_H='0' +UNISTD_H_HAVE_WINSOCK2_H='0' +UNISTD_H_HAVE_WINSOCK2_H_AND_USE_SOCKETS='0' +USE_EXTRA_ENCODINGS='no' +USE_MBSTATE_T='1' +USE_NLS='no' +VERSION='1.17' +WCHAR_T_SUFFIX='' +WINDOWS_64_BIT_OFF_T='0' +WINDOWS_64_BIT_ST_SIZE='0' +WINDOWS_STAT_INODES='0' +WINDOWS_STAT_TIMESPEC='0' +WINDRES='' +WINT_T_SUFFIX='' +WOE32='no' +WOE32DLL='no' +XGETTEXT='/opt/homebrew/bin/xgettext' +XGETTEXT_015='/opt/homebrew/bin/xgettext' +XGETTEXT_EXTRA_OPTIONS=' --flag=error:3:c-format --flag=error_at_line:5:c-format' +ac_ct_AR='ar' +ac_ct_CC='gcc' +ac_ct_DUMPBIN='' +am__EXEEXT_FALSE='' +am__EXEEXT_TRUE='#' +am__fastdepCC_FALSE='' +am__fastdepCC_TRUE='#' +am__include='include' +am__isrc='' +am__leading_dot='.' +am__nodep='_no' +am__quote='' +am__tar='$${TAR-tar} chof - "$$tardir"' +am__untar='$${TAR-tar} xf -' +bindir='${exec_prefix}/bin' +build='aarch64-apple-darwin22.4.0' +build_alias='' +build_cpu='aarch64' +build_os='darwin22.4.0' +build_vendor='apple' +datadir='${datarootdir}' +datarootdir='${prefix}/share' +docdir='${datarootdir}/doc/${PACKAGE_TARNAME}' +dvidir='${docdir}' +exec_prefix='${prefix}' +gl_LIBOBJDEPS='' +gl_LIBOBJS='' +gl_LTLIBOBJS='' +gltests_LIBOBJDEPS='' +gltests_LIBOBJS='' +gltests_LTLIBOBJS='' +gltests_WITNESS='IN_LIBICONV_GNULIB_TESTS' +host='aarch64-apple-darwin22.4.0' +host_alias='' +host_cpu='aarch64' +host_os='darwin22.4.0' +host_vendor='apple' +htmldir='${docdir}' +includedir='${prefix}/include' +infodir='${datarootdir}/info' +install_sh='${SHELL} /Users/yangzuhao/Downloads/libiconv-1.17/build-aux/install-sh' +libdir='${exec_prefix}/lib' +libexecdir='${exec_prefix}/libexec' +localedir='${datarootdir}/locale' +localstatedir='${prefix}/var' +mandir='${datarootdir}/man' +mkdir_p='$(MKDIR_P)' +oldincludedir='/usr/include' +pdfdir='${docdir}' +prefix='/Users/yangzuhao/Downloads/libiconv-1.17/output' +program_transform_name='s,x,x,' +psdir='${docdir}' +runstatedir='${localstatedir}/run' +sbindir='${exec_prefix}/sbin' +sharedstatedir='${prefix}/com' +subdirs=' libcharset' +sysconfdir='${prefix}/etc' +target_alias='' + +## ----------- ## +## confdefs.h. ## +## ----------- ## + +/* confdefs.h */ +#define PACKAGE_NAME "libiconv" +#define PACKAGE_TARNAME "libiconv" +#define PACKAGE_VERSION "1.17" +#define PACKAGE_STRING "libiconv 1.17" +#define PACKAGE_BUGREPORT "" +#define PACKAGE_URL "" +#define PACKAGE "libiconv" +#define VERSION "1.17" +#define HAVE_STDIO_H 1 +#define HAVE_STDLIB_H 1 +#define HAVE_STRING_H 1 +#define HAVE_INTTYPES_H 1 +#define HAVE_STDINT_H 1 +#define HAVE_STRINGS_H 1 +#define HAVE_SYS_STAT_H 1 +#define HAVE_SYS_TYPES_H 1 +#define HAVE_UNISTD_H 1 +#define HAVE_WCHAR_H 1 +#define HAVE_SYS_PARAM_H 1 +#define HAVE_SYS_SOCKET_H 1 +#define HAVE_LIMITS_H 1 +#define HAVE_SYS_TIME_H 1 +#define STDC_HEADERS 1 +#define _ALL_SOURCE 1 +#define _DARWIN_C_SOURCE 1 +#define _GNU_SOURCE 1 +#define _HPUX_ALT_XOPEN_SOCKET_API 1 +#define _NETBSD_SOURCE 1 +#define _OPENBSD_SOURCE 1 +#define _POSIX_PTHREAD_SEMANTICS 1 +#define __STDC_WANT_IEC_60559_ATTRIBS_EXT__ 1 +#define __STDC_WANT_IEC_60559_BFP_EXT__ 1 +#define __STDC_WANT_IEC_60559_DFP_EXT__ 1 +#define __STDC_WANT_IEC_60559_FUNCS_EXT__ 1 +#define __STDC_WANT_IEC_60559_TYPES_EXT__ 1 +#define __STDC_WANT_LIB_EXT2__ 1 +#define __STDC_WANT_MATH_SPEC_FUNCS__ 1 +#define _TANDEM_SOURCE 1 +#define __EXTENSIONS__ 1 +#define HAVE_DLFCN_H 1 +#define LT_OBJDIR ".libs/" +#define INSTALLPREFIX "/Users/yangzuhao/Downloads/libiconv-1.17/output" +#define HAVE_VISIBILITY 1 +#define HAVE_ICONV 1 +#define ICONV_CONST +#define HAVE_CFPREFERENCESCOPYAPPVALUE 1 +#define HAVE_CFLOCALECOPYPREFERREDLANGUAGES 1 +#define HAVE_ICONV 1 +#define HAVE_MBSTATE_T 1 +#define HAVE_WCHAR_T 1 +#define HAVE_GETC_UNLOCKED 1 +#define HAVE_MBRTOWC 1 +#define HAVE_WCRTOMB 1 +#define HAVE_MBSINIT 1 +#define HAVE_SETLOCALE 1 +#define HAVE_MEMMOVE 1 +#define HAVE_LANGINFO_CODESET 1 +#define HAVE_SYMLINK 1 +#define HAVE_FACCESSAT 1 +#define HAVE_REALPATH 1 +#define HAVE_LSTAT 1 +#define HAVE_READLINKAT 1 +#define HAVE_FCNTL 1 +#define HAVE_GETDTABLESIZE 1 +#define HAVE_GETPROGNAME 1 +#define HAVE_READLINK 1 +#define HAVE_SETENV 1 +#define HAVE_WORKING_O_NOATIME 0 +#define HAVE_WORKING_O_NOFOLLOW 1 +#define HAVE_WCHAR_H 1 +#define WORDS_LITTLEENDIAN 1 +#define HAVE_ALLOCA_H 1 +#define HAVE_ALLOCA 1 +#define HAVE_GETCWD 1 +#define restrict __restrict__ +#define HAVE_DECL_STRERROR_R 1 +#define HAVE_STRERROR_R 1 +#define HAVE___HEADER_INLINE 1 +#define HAVE_DECL_GETDTABLESIZE 1 +#define HAVE_WINT_T 1 +#define HAVE_LONG_LONG_INT 1 +#define HAVE_UNSIGNED_LONG_LONG_INT 1 +#define HAVE_MALLOC_POSIX 1 +#define MALLOC_0_IS_NONNULL 1 +#define HAVE_MINMAX_IN_SYS_PARAM_H 1 +#define PROMOTED_MODE_T int +#define HAVE_SIGSET_T 1 +#define HAVE_DECL_SETENV 1 +#define USER_LABEL_PREFIX _ +#define HAVE__BOOL 1 +#define HAVE_DECL_FCLOSEALL 0 +#define __USE_MINGW_ANSI_STDIO 1 +#define HAVE_DECL_ECVT 1 +#define HAVE_DECL_FCVT 1 +#define HAVE_DECL_GCVT 1 +#define REPLACE_STRERROR_0 1 +#define _USE_STD_STAT 1 +#define HAVE_DECL_EXECVPE 0 +#define HAVE_DECL_CLEARERR_UNLOCKED 1 +#define HAVE_DECL_FEOF_UNLOCKED 1 +#define HAVE_DECL_FERROR_UNLOCKED 1 +#define HAVE_DECL_FFLUSH_UNLOCKED 0 +#define HAVE_DECL_FGETS_UNLOCKED 0 +#define HAVE_DECL_FPUTC_UNLOCKED 0 +#define HAVE_DECL_FPUTS_UNLOCKED 0 +#define HAVE_DECL_FREAD_UNLOCKED 0 +#define HAVE_DECL_FWRITE_UNLOCKED 0 +#define HAVE_DECL_GETC_UNLOCKED 1 +#define HAVE_DECL_GETCHAR_UNLOCKED 1 +#define HAVE_DECL_PUTC_UNLOCKED 1 +#define HAVE_DECL_PUTCHAR_UNLOCKED 1 +#define HAVE_DECL_WCSDUP 1 +#define HAVE___BUILTIN_EXPECT 1 +#define GNULIB_CANONICALIZE_LGPL 1 +#define GNULIB_TEST_CANONICALIZE_FILE_NAME 1 +#define GNULIB_TEST_REALPATH 1 +#define GNULIB_TEST_CLOEXEC 1 +#define GNULIB_TEST_CLOSE 1 +#define GNULIB_TEST_DUP2 1 +#define GNULIB_TEST_ENVIRON 1 +#define GNULIB_TEST_FCNTL 1 +#define GNULIB_TEST_FREE_POSIX 1 +#define GNULIB_TEST_FSTAT 1 +#define GNULIB_TEST_GETDTABLESIZE 1 +#define HAVE_DECL_PROGRAM_INVOCATION_NAME 0 +#define HAVE_DECL_PROGRAM_INVOCATION_SHORT_NAME 0 +#define HAVE_DECL___ARGV 0 +#define HAVE_VAR___PROGNAME 1 +#define HAVE_VISIBILITY 1 +#define HAVE___INLINE 1 +#define GNULIB_TEST_MALLOC_POSIX 1 +#define HAVE_MBSTATE_T 1 +#define GNULIB_TEST_MEMPCPY 1 +#define GNULIB_MSVC_NOTHROW 1 +#define OPEN_TRAILING_SLASH_BUG 1 +#define GNULIB_TEST_OPEN 1 +#define HAVE_DECL_PROGRAM_INVOCATION_NAME 0 +#define HAVE_DECL_PROGRAM_INVOCATION_SHORT_NAME 0 +#define HAVE_RAISE 1 +#define GNULIB_TEST_RAISE 1 +#define GNULIB_TEST_RAWMEMCHR 1 +#define GNULIB_TEST_READ 1 +#define READLINK_TRAILING_SLASH_BUG 1 +#define GNULIB_TEST_READLINK 1 +#define GNULIB_TEST_REALLOC_POSIX 1 +#define HAVE_GETCWD 1 +#define HAVE_MALLOC_POSIX 1 +#define HAVE_SEARCH_H 1 +#define HAVE_TSEARCH 1 +#define GNULIB_SIGPIPE 1 +#define GNULIB_TEST_SIGPROCMASK 1 +#define REPLACE_FUNC_STAT_FILE 1 +#define GNULIB_TEST_STAT 1 +#define HAVE_STRUCT_STAT_ST_ATIMESPEC_TV_NSEC 1 +#define HAVE_STRUCT_STAT_ST_BIRTHTIMESPEC_TV_NSEC 1 +#define GNULIB_TEST_FSCANF 1 +#define GNULIB_FSCANF 1 +#define GNULIB_TEST_SCANF 1 +#define GNULIB_SCANF 1 +#define GNULIB_TEST_FGETC 1 +#define GNULIB_TEST_GETC 1 +#define GNULIB_TEST_GETCHAR 1 +#define GNULIB_TEST_FGETS 1 +#define GNULIB_TEST_FREAD 1 +#define GNULIB_TEST_FPRINTF 1 +#define GNULIB_TEST_PRINTF 1 +#define GNULIB_TEST_VFPRINTF 1 +#define GNULIB_TEST_VPRINTF 1 +#define GNULIB_TEST_FPUTC 1 +#define GNULIB_TEST_PUTC 1 +#define GNULIB_TEST_PUTCHAR 1 +#define GNULIB_TEST_FPUTS 1 +#define GNULIB_TEST_PUTS 1 +#define GNULIB_TEST_FWRITE 1 +#define GNULIB_STRERROR 1 +#define GNULIB_TEST_STRERROR 1 +#define GNULIB_STDIO_SINGLE_THREAD 1 +#define USE_UNLOCKED_IO GNULIB_STDIO_SINGLE_THREAD +#define HAVE_C_VARARRAYS 1 + +configure: exit 0 diff --git a/config.status b/config.status new file mode 100755 index 0000000..2469214 --- /dev/null +++ b/config.status @@ -0,0 +1,3368 @@ +#! /bin/sh +# Generated by configure. +# Run this file to recreate the current configuration. +# Compiler output produced by configure, useful for debugging +# configure, is in config.log if it exists. + +debug=false +ac_cs_recheck=false +ac_cs_silent=false + +SHELL=${CONFIG_SHELL-/bin/sh} +export SHELL +## -------------------- ## +## M4sh Initialization. ## +## -------------------- ## + +# Be more Bourne compatible +DUALCASE=1; export DUALCASE # for MKS sh +as_nop=: +if test ${ZSH_VERSION+y} && (emulate sh) >/dev/null 2>&1 +then : + emulate sh + NULLCMD=: + # Pre-4.2 versions of Zsh do word splitting on ${1+"$@"}, which + # is contrary to our usage. Disable this feature. + alias -g '${1+"$@"}'='"$@"' + setopt NO_GLOB_SUBST +else $as_nop + case `(set -o) 2>/dev/null` in #( + *posix*) : + set -o posix ;; #( + *) : + ;; +esac +fi + + + +# Reset variables that may have inherited troublesome values from +# the environment. + +# IFS needs to be set, to space, tab, and newline, in precisely that order. +# (If _AS_PATH_WALK were called with IFS unset, it would have the +# side effect of setting IFS to empty, thus disabling word splitting.) +# Quoting is to prevent editors from complaining about space-tab. +as_nl=' +' +export as_nl +IFS=" "" $as_nl" + +PS1='$ ' +PS2='> ' +PS4='+ ' + +# Ensure predictable behavior from utilities with locale-dependent output. +LC_ALL=C +export LC_ALL +LANGUAGE=C +export LANGUAGE + +# We cannot yet rely on "unset" to work, but we need these variables +# to be unset--not just set to an empty or harmless value--now, to +# avoid bugs in old shells (e.g. pre-3.0 UWIN ksh). This construct +# also avoids known problems related to "unset" and subshell syntax +# in other old shells (e.g. bash 2.01 and pdksh 5.2.14). +for as_var in BASH_ENV ENV MAIL MAILPATH CDPATH +do eval test \${$as_var+y} \ + && ( (unset $as_var) || exit 1) >/dev/null 2>&1 && unset $as_var || : +done + +# Ensure that fds 0, 1, and 2 are open. +if (exec 3>&0) 2>/dev/null; then :; else exec 0&1) 2>/dev/null; then :; else exec 1>/dev/null; fi +if (exec 3>&2) ; then :; else exec 2>/dev/null; fi + +# The user is always right. +if ${PATH_SEPARATOR+false} :; then + PATH_SEPARATOR=: + (PATH='/bin;/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 && { + (PATH='/bin:/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 || + PATH_SEPARATOR=';' + } +fi + + +# Find who we are. Look in the path if we contain no directory separator. +as_myself= +case $0 in #(( + *[\\/]* ) as_myself=$0 ;; + *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + case $as_dir in #((( + '') as_dir=./ ;; + */) ;; + *) as_dir=$as_dir/ ;; + esac + test -r "$as_dir$0" && as_myself=$as_dir$0 && break + done +IFS=$as_save_IFS + + ;; +esac +# We did not find ourselves, most probably we were run as `sh COMMAND' +# in which case we are not to be found in the path. +if test "x$as_myself" = x; then + as_myself=$0 +fi +if test ! -f "$as_myself"; then + printf "%s\n" "$as_myself: error: cannot find myself; rerun with an absolute file name" >&2 + exit 1 +fi + + + +# as_fn_error STATUS ERROR [LINENO LOG_FD] +# ---------------------------------------- +# Output "`basename $0`: error: ERROR" to stderr. If LINENO and LOG_FD are +# provided, also output the error to LOG_FD, referencing LINENO. Then exit the +# script with STATUS, using 1 if that was 0. +as_fn_error () +{ + as_status=$1; test $as_status -eq 0 && as_status=1 + if test "$4"; then + as_lineno=${as_lineno-"$3"} as_lineno_stack=as_lineno_stack=$as_lineno_stack + printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: $2" >&$4 + fi + printf "%s\n" "$as_me: error: $2" >&2 + as_fn_exit $as_status +} # as_fn_error + + + +# as_fn_set_status STATUS +# ----------------------- +# Set $? to STATUS, without forking. +as_fn_set_status () +{ + return $1 +} # as_fn_set_status + +# as_fn_exit STATUS +# ----------------- +# Exit the shell with STATUS, even in a "trap 0" or "set -e" context. +as_fn_exit () +{ + set +e + as_fn_set_status $1 + exit $1 +} # as_fn_exit + +# as_fn_unset VAR +# --------------- +# Portably unset VAR. +as_fn_unset () +{ + { eval $1=; unset $1;} +} +as_unset=as_fn_unset + +# as_fn_append VAR VALUE +# ---------------------- +# Append the text in VALUE to the end of the definition contained in VAR. Take +# advantage of any shell optimizations that allow amortized linear growth over +# repeated appends, instead of the typical quadratic growth present in naive +# implementations. +if (eval "as_var=1; as_var+=2; test x\$as_var = x12") 2>/dev/null +then : + eval 'as_fn_append () + { + eval $1+=\$2 + }' +else $as_nop + as_fn_append () + { + eval $1=\$$1\$2 + } +fi # as_fn_append + +# as_fn_arith ARG... +# ------------------ +# Perform arithmetic evaluation on the ARGs, and store the result in the +# global $as_val. Take advantage of shells that can avoid forks. The arguments +# must be portable across $(()) and expr. +if (eval "test \$(( 1 + 1 )) = 2") 2>/dev/null +then : + eval 'as_fn_arith () + { + as_val=$(( $* )) + }' +else $as_nop + as_fn_arith () + { + as_val=`expr "$@" || test $? -eq 1` + } +fi # as_fn_arith + + +if expr a : '\(a\)' >/dev/null 2>&1 && + test "X`expr 00001 : '.*\(...\)'`" = X001; then + as_expr=expr +else + as_expr=false +fi + +if (basename -- /) >/dev/null 2>&1 && test "X`basename -- / 2>&1`" = "X/"; then + as_basename=basename +else + as_basename=false +fi + +if (as_dir=`dirname -- /` && test "X$as_dir" = X/) >/dev/null 2>&1; then + as_dirname=dirname +else + as_dirname=false +fi + +as_me=`$as_basename -- "$0" || +$as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \ + X"$0" : 'X\(//\)$' \| \ + X"$0" : 'X\(/\)' \| . 2>/dev/null || +printf "%s\n" X/"$0" | + sed '/^.*\/\([^/][^/]*\)\/*$/{ + s//\1/ + q + } + /^X\/\(\/\/\)$/{ + s//\1/ + q + } + /^X\/\(\/\).*/{ + s//\1/ + q + } + s/.*/./; q'` + +# Avoid depending upon Character Ranges. +as_cr_letters='abcdefghijklmnopqrstuvwxyz' +as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ' +as_cr_Letters=$as_cr_letters$as_cr_LETTERS +as_cr_digits='0123456789' +as_cr_alnum=$as_cr_Letters$as_cr_digits + + +# Determine whether it's possible to make 'echo' print without a newline. +# These variables are no longer used directly by Autoconf, but are AC_SUBSTed +# for compatibility with existing Makefiles. +ECHO_C= ECHO_N= ECHO_T= +case `echo -n x` in #((((( +-n*) + case `echo 'xy\c'` in + *c*) ECHO_T=' ';; # ECHO_T is single tab character. + xy) ECHO_C='\c';; + *) echo `echo ksh88 bug on AIX 6.1` > /dev/null + ECHO_T=' ';; + esac;; +*) + ECHO_N='-n';; +esac + +# For backward compatibility with old third-party macros, we provide +# the shell variables $as_echo and $as_echo_n. New code should use +# AS_ECHO(["message"]) and AS_ECHO_N(["message"]), respectively. +as_echo='printf %s\n' +as_echo_n='printf %s' + +rm -f conf$$ conf$$.exe conf$$.file +if test -d conf$$.dir; then + rm -f conf$$.dir/conf$$.file +else + rm -f conf$$.dir + mkdir conf$$.dir 2>/dev/null +fi +if (echo >conf$$.file) 2>/dev/null; then + if ln -s conf$$.file conf$$ 2>/dev/null; then + as_ln_s='ln -s' + # ... but there are two gotchas: + # 1) On MSYS, both `ln -s file dir' and `ln file dir' fail. + # 2) DJGPP < 2.04 has no symlinks; `ln -s' creates a wrapper executable. + # In both cases, we have to default to `cp -pR'. + ln -s conf$$.file conf$$.dir 2>/dev/null && test ! -f conf$$.exe || + as_ln_s='cp -pR' + elif ln conf$$.file conf$$ 2>/dev/null; then + as_ln_s=ln + else + as_ln_s='cp -pR' + fi +else + as_ln_s='cp -pR' +fi +rm -f conf$$ conf$$.exe conf$$.dir/conf$$.file conf$$.file +rmdir conf$$.dir 2>/dev/null + + +# as_fn_mkdir_p +# ------------- +# Create "$as_dir" as a directory, including parents if necessary. +as_fn_mkdir_p () +{ + + case $as_dir in #( + -*) as_dir=./$as_dir;; + esac + test -d "$as_dir" || eval $as_mkdir_p || { + as_dirs= + while :; do + case $as_dir in #( + *\'*) as_qdir=`printf "%s\n" "$as_dir" | sed "s/'/'\\\\\\\\''/g"`;; #'( + *) as_qdir=$as_dir;; + esac + as_dirs="'$as_qdir' $as_dirs" + as_dir=`$as_dirname -- "$as_dir" || +$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ + X"$as_dir" : 'X\(//\)[^/]' \| \ + X"$as_dir" : 'X\(//\)$' \| \ + X"$as_dir" : 'X\(/\)' \| . 2>/dev/null || +printf "%s\n" X"$as_dir" | + sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ + s//\1/ + q + } + /^X\(\/\/\)[^/].*/{ + s//\1/ + q + } + /^X\(\/\/\)$/{ + s//\1/ + q + } + /^X\(\/\).*/{ + s//\1/ + q + } + s/.*/./; q'` + test -d "$as_dir" && break + done + test -z "$as_dirs" || eval "mkdir $as_dirs" + } || test -d "$as_dir" || as_fn_error $? "cannot create directory $as_dir" + + +} # as_fn_mkdir_p +if mkdir -p . 2>/dev/null; then + as_mkdir_p='mkdir -p "$as_dir"' +else + test -d ./-p && rmdir ./-p + as_mkdir_p=false +fi + + +# as_fn_executable_p FILE +# ----------------------- +# Test if FILE is an executable regular file. +as_fn_executable_p () +{ + test -f "$1" && test -x "$1" +} # as_fn_executable_p +as_test_x='test -x' +as_executable_p=as_fn_executable_p + +# Sed expression to map a string onto a valid CPP name. +as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'" + +# Sed expression to map a string onto a valid variable name. +as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'" + + +exec 6>&1 +## ----------------------------------- ## +## Main body of $CONFIG_STATUS script. ## +## ----------------------------------- ## +# Save the log message, to keep $0 and so on meaningful, and to +# report actual input values of CONFIG_FILES etc. instead of their +# values after options handling. +ac_log=" +This file was extended by libiconv $as_me 1.17, which was +generated by GNU Autoconf 2.71. Invocation command line was + + CONFIG_FILES = $CONFIG_FILES + CONFIG_HEADERS = $CONFIG_HEADERS + CONFIG_LINKS = $CONFIG_LINKS + CONFIG_COMMANDS = $CONFIG_COMMANDS + $ $0 $@ + +on `(hostname || uname -n) 2>/dev/null | sed 1q` +" + +# Files that config.status was made for. +config_files=" Makefile lib/Makefile srclib/Makefile src/Makefile po/Makefile.in man/Makefile tests/Makefile include/iconv.h:include/iconv.h.build.in include/iconv.h.inst:include/iconv.h.in" +config_headers=" config.h lib/config.h" +config_commands=" depfiles libtool po-directories" + +ac_cs_usage="\ +\`$as_me' instantiates files and other configuration actions +from templates according to the current configuration. Unless the files +and actions are specified as TAGs, all are instantiated by default. + +Usage: $0 [OPTION]... [TAG]... + + -h, --help print this help, then exit + -V, --version print version number and configuration settings, then exit + --config print configuration, then exit + -q, --quiet, --silent + do not print progress messages + -d, --debug don't remove temporary files + --recheck update $as_me by reconfiguring in the same conditions + --file=FILE[:TEMPLATE] + instantiate the configuration file FILE + --header=FILE[:TEMPLATE] + instantiate the configuration header FILE + +Configuration files: +$config_files + +Configuration headers: +$config_headers + +Configuration commands: +$config_commands + +Report bugs to the package provider." + +ac_cs_config='--prefix=/Users/yangzuhao/Downloads/libiconv-1.17/output' +ac_cs_version="\ +libiconv config.status 1.17 +configured by ./configure, generated by GNU Autoconf 2.71, + with options \"$ac_cs_config\" + +Copyright (C) 2021 Free Software Foundation, Inc. +This config.status script is free software; the Free Software Foundation +gives unlimited permission to copy, distribute and modify it." + +ac_pwd='/Users/yangzuhao/Downloads/libiconv-1.17' +srcdir='.' +INSTALL='/opt/homebrew/bin/ginstall -c' +MKDIR_P='/opt/homebrew/bin/gmkdir -p' +AWK='gawk' +test -n "$AWK" || AWK=awk +# The default lists apply if the user does not specify any file. +ac_need_defaults=: +while test $# != 0 +do + case $1 in + --*=?*) + ac_option=`expr "X$1" : 'X\([^=]*\)='` + ac_optarg=`expr "X$1" : 'X[^=]*=\(.*\)'` + ac_shift=: + ;; + --*=) + ac_option=`expr "X$1" : 'X\([^=]*\)='` + ac_optarg= + ac_shift=: + ;; + *) + ac_option=$1 + ac_optarg=$2 + ac_shift=shift + ;; + esac + + case $ac_option in + # Handling of the options. + -recheck | --recheck | --rechec | --reche | --rech | --rec | --re | --r) + ac_cs_recheck=: ;; + --version | --versio | --versi | --vers | --ver | --ve | --v | -V ) + printf "%s\n" "$ac_cs_version"; exit ;; + --config | --confi | --conf | --con | --co | --c ) + printf "%s\n" "$ac_cs_config"; exit ;; + --debug | --debu | --deb | --de | --d | -d ) + debug=: ;; + --file | --fil | --fi | --f ) + $ac_shift + case $ac_optarg in + *\'*) ac_optarg=`printf "%s\n" "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"` ;; + '') as_fn_error $? "missing file argument" ;; + esac + as_fn_append CONFIG_FILES " '$ac_optarg'" + ac_need_defaults=false;; + --header | --heade | --head | --hea ) + $ac_shift + case $ac_optarg in + *\'*) ac_optarg=`printf "%s\n" "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"` ;; + esac + as_fn_append CONFIG_HEADERS " '$ac_optarg'" + ac_need_defaults=false;; + --he | --h) + # Conflict between --help and --header + as_fn_error $? "ambiguous option: \`$1' +Try \`$0 --help' for more information.";; + --help | --hel | -h ) + printf "%s\n" "$ac_cs_usage"; exit ;; + -q | -quiet | --quiet | --quie | --qui | --qu | --q \ + | -silent | --silent | --silen | --sile | --sil | --si | --s) + ac_cs_silent=: ;; + + # This is an error. + -*) as_fn_error $? "unrecognized option: \`$1' +Try \`$0 --help' for more information." ;; + + *) as_fn_append ac_config_targets " $1" + ac_need_defaults=false ;; + + esac + shift +done + +ac_configure_extra_args= + +if $ac_cs_silent; then + exec 6>/dev/null + ac_configure_extra_args="$ac_configure_extra_args --silent" +fi + +if $ac_cs_recheck; then + set X /bin/sh './configure' '--prefix=/Users/yangzuhao/Downloads/libiconv-1.17/output' $ac_configure_extra_args --no-create --no-recursion + shift + \printf "%s\n" "running CONFIG_SHELL=/bin/sh $*" >&6 + CONFIG_SHELL='/bin/sh' + export CONFIG_SHELL + exec "$@" +fi + +exec 5>>config.log +{ + echo + sed 'h;s/./-/g;s/^.../## /;s/...$/ ##/;p;x;p;x' <<_ASBOX +## Running $as_me. ## +_ASBOX + printf "%s\n" "$ac_log" +} >&5 + +# +# INIT-COMMANDS +# +AMDEP_TRUE="" MAKE="make" + + +# The HP-UX ksh and POSIX shell print the target directory to stdout +# if CDPATH is set. +(unset CDPATH) >/dev/null 2>&1 && unset CDPATH + +sed_quote_subst='s/\(["`$\\]\)/\\\1/g' +double_quote_subst='s/\(["`\\]\)/\\\1/g' +delay_variable_subst='s/\\\\\\\\\\\$/\\\\\\$/g' +macro_version='2.4.7' +macro_revision='2.4.7' +enable_static='no' +AS='as' +DLLTOOL='false' +OBJDUMP='objdump' +enable_shared='yes' +pic_mode='default' +enable_fast_install='needless' +shared_archive_member_spec='' +SHELL='/bin/sh' +ECHO='printf %s\n' +PATH_SEPARATOR=':' +host_alias='' +host='aarch64-apple-darwin22.4.0' +host_os='darwin22.4.0' +build_alias='' +build='aarch64-apple-darwin22.4.0' +build_os='darwin22.4.0' +SED='/usr/bin/sed' +Xsed='/usr/bin/sed -e 1s/^X//' +GREP='/usr/bin/grep' +EGREP='/usr/bin/grep -E' +FGREP='/usr/bin/grep -F' +LD='/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ld' +NM='/usr/bin/nm -B' +LN_S='ln -s' +max_cmd_len='786432' +ac_objext='o' +exeext='' +lt_unset='unset' +lt_SP2NL='tr \040 \012' +lt_NL2SP='tr \015\012 \040\040' +lt_cv_to_host_file_cmd='func_convert_file_noop' +lt_cv_to_tool_file_cmd='func_convert_file_noop' +reload_flag=' -r' +reload_cmds='$LTCC $LTCFLAGS -nostdlib $wl-r -o $output$reload_objs' +FILECMD='file' +deplibs_check_method='pass_all' +file_magic_cmd='$MAGIC_CMD' +file_magic_glob='' +want_nocaseglob='no' +sharedlib_from_linklib_cmd='printf %s\n' +AR='ar' +lt_ar_flags='cr' +AR_FLAGS='cr' +archiver_list_spec='' +STRIP='/usr/bin/strip' +RANLIB='ranlib' +old_postinstall_cmds='chmod 644 $oldlib~$RANLIB $tool_oldlib' +old_postuninstall_cmds='' +old_archive_cmds='$AR $AR_FLAGS $oldlib$oldobjs~$RANLIB $tool_oldlib' +lock_old_archive_extraction='yes' +CC='gcc' +CFLAGS='-g -O2' +compiler='' +GCC='yes' +lt_cv_sys_global_symbol_pipe='/usr/bin/sed -n -e '\''s/^.*[ ]\([ABCDGIRSTW][ABCDGIRSTW]*\)[ ][ ]*_\([_A-Za-z][_A-Za-z0-9]*\)$/\1 _\2 \2/p'\'' | /usr/bin/sed '\''/ __gnu_lto/d'\''' +lt_cv_sys_global_symbol_to_cdecl='/usr/bin/sed -n -e '\''s/^T .* \(.*\)$/extern int \1();/p'\'' -e '\''s/^[ABCDGIRSTW][ABCDGIRSTW]* .* \(.*\)$/extern char \1;/p'\''' +lt_cv_sys_global_symbol_to_import='' +lt_cv_sys_global_symbol_to_c_name_address='/usr/bin/sed -n -e '\''s/^: \(.*\) .*$/ {"\1", (void *) 0},/p'\'' -e '\''s/^[ABCDGIRSTW][ABCDGIRSTW]* .* \(.*\)$/ {"\1", (void *) \&\1},/p'\''' +lt_cv_sys_global_symbol_to_c_name_address_lib_prefix='/usr/bin/sed -n -e '\''s/^: \(.*\) .*$/ {"\1", (void *) 0},/p'\'' -e '\''s/^[ABCDGIRSTW][ABCDGIRSTW]* .* \(lib.*\)$/ {"\1", (void *) \&\1},/p'\'' -e '\''s/^[ABCDGIRSTW][ABCDGIRSTW]* .* \(.*\)$/ {"lib\1", (void *) \&\1},/p'\''' +lt_cv_nm_interface='BSD nm' +nm_file_list_spec='@' +lt_sysroot='' +lt_cv_truncate_bin='/bin/dd bs=4096 count=1' +objdir='.libs' +MAGIC_CMD='file' +lt_prog_compiler_no_builtin_flag=' -fno-builtin -fno-rtti -fno-exceptions' +lt_prog_compiler_pic=' -fno-common -DPIC' +lt_prog_compiler_wl='-Wl,' +lt_prog_compiler_static='' +lt_cv_prog_compiler_c_o='yes' +need_locks='no' +MANIFEST_TOOL=':' +DSYMUTIL='dsymutil' +NMEDIT='nmedit' +LIPO='lipo' +OTOOL='otool' +OTOOL64=':' +libext='a' +shrext_cmds='`test .$module = .yes && echo .so || echo .dylib`' +extract_expsyms_cmds='' +archive_cmds_need_lc='no' +enable_shared_with_static_runtimes='no' +export_dynamic_flag_spec='' +whole_archive_flag_spec='`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience $wl-force_load,$conv\"; done; func_echo_all \"$new_convenience\"`' +compiler_needs_object='no' +old_archive_from_new_cmds='' +old_archive_from_expsyms_cmds='' +archive_cmds='$CC -dynamiclib $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags -install_name $rpath/$soname $verstring $single_module' +archive_expsym_cmds='/usr/bin/sed '\''s|^|_|'\'' < $export_symbols > $output_objdir/$libname-symbols.expsym~$CC -dynamiclib $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags -install_name $rpath/$soname $verstring $single_module $wl-exported_symbols_list,$output_objdir/$libname-symbols.expsym' +module_cmds='$CC $allow_undefined_flag -o $lib -bundle $libobjs $deplibs $compiler_flags' +module_expsym_cmds='/usr/bin/sed -e '\''s|^|_|'\'' < $export_symbols > $output_objdir/$libname-symbols.expsym~$CC $allow_undefined_flag -o $lib -bundle $libobjs $deplibs $compiler_flags $wl-exported_symbols_list,$output_objdir/$libname-symbols.expsym' +with_gnu_ld='no' +allow_undefined_flag='$wl-undefined ${wl}dynamic_lookup' +no_undefined_flag='' +hardcode_libdir_flag_spec='' +hardcode_libdir_separator='' +hardcode_direct='no' +hardcode_direct_absolute='no' +hardcode_minus_L='no' +hardcode_shlibpath_var='unsupported' +hardcode_automatic='yes' +inherit_rpath='no' +link_all_deplibs='yes' +always_export_symbols='no' +export_symbols_cmds='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols' +exclude_expsyms='_GLOBAL_OFFSET_TABLE_|_GLOBAL__F[ID]_.*' +include_expsyms='' +prelink_cmds='' +postlink_cmds='' +file_list_spec='' +variables_saved_for_relink='PATH DYLD_LIBRARY_PATH GCC_EXEC_PREFIX COMPILER_PATH LIBRARY_PATH' +need_lib_prefix='no' +need_version='no' +version_type='darwin' +runpath_var='' +shlibpath_var='DYLD_LIBRARY_PATH' +shlibpath_overrides_runpath='yes' +libname_spec='lib$name' +library_names_spec='$libname$release$major$shared_ext $libname$shared_ext' +soname_spec='$libname$release$major$shared_ext' +install_override_mode='' +postinstall_cmds='' +postuninstall_cmds='' +finish_cmds='' +finish_eval='' +hardcode_into_libs='no' +sys_lib_search_path_spec='/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/clang/14.0.3 /usr/local/lib' +configure_time_dlsearch_path='/usr/local/lib /lib /usr/lib' +configure_time_lt_sys_library_path='' +hardcode_action='immediate' +enable_dlopen='unknown' +enable_dlopen_self='unknown' +enable_dlopen_self_static='unknown' +old_striplib='/usr/bin/strip -S' +striplib='/usr/bin/strip -x' +LD_RC='' +reload_flag_RC='' +reload_cmds_RC='' +old_archive_cmds_RC='' +compiler_RC='' +GCC_RC='' +lt_prog_compiler_no_builtin_flag_RC='' +lt_prog_compiler_pic_RC='' +lt_prog_compiler_wl_RC='' +lt_prog_compiler_static_RC='' +lt_cv_prog_compiler_c_o_RC='yes' +archive_cmds_need_lc_RC='' +enable_shared_with_static_runtimes_RC='' +export_dynamic_flag_spec_RC='' +whole_archive_flag_spec_RC='' +compiler_needs_object_RC='' +old_archive_from_new_cmds_RC='' +old_archive_from_expsyms_cmds_RC='' +archive_cmds_RC='' +archive_expsym_cmds_RC='' +module_cmds_RC='' +module_expsym_cmds_RC='' +with_gnu_ld_RC='' +allow_undefined_flag_RC='' +no_undefined_flag_RC='' +hardcode_libdir_flag_spec_RC='' +hardcode_libdir_separator_RC='' +hardcode_direct_RC='' +hardcode_direct_absolute_RC='' +hardcode_minus_L_RC='' +hardcode_shlibpath_var_RC='' +hardcode_automatic_RC='' +inherit_rpath_RC='' +link_all_deplibs_RC='' +always_export_symbols_RC='' +export_symbols_cmds_RC='' +exclude_expsyms_RC='' +include_expsyms_RC='' +prelink_cmds_RC='' +postlink_cmds_RC='' +file_list_spec_RC='' +hardcode_action_RC='' + +LTCC='gcc' +LTCFLAGS='-g -O2' +compiler='gcc' + +# A function that is used when there is no print builtin or printf. +func_fallback_echo () +{ + eval 'cat <<_LTECHO_EOF +$1 +_LTECHO_EOF' +} + +# Quote evaled strings. +for var in AS DLLTOOL OBJDUMP SHELL ECHO PATH_SEPARATOR SED GREP EGREP FGREP LD NM LN_S lt_SP2NL lt_NL2SP reload_flag FILECMD deplibs_check_method file_magic_cmd file_magic_glob want_nocaseglob sharedlib_from_linklib_cmd AR archiver_list_spec STRIP RANLIB CC CFLAGS compiler lt_cv_sys_global_symbol_pipe lt_cv_sys_global_symbol_to_cdecl lt_cv_sys_global_symbol_to_import lt_cv_sys_global_symbol_to_c_name_address lt_cv_sys_global_symbol_to_c_name_address_lib_prefix lt_cv_nm_interface nm_file_list_spec lt_cv_truncate_bin lt_prog_compiler_no_builtin_flag lt_prog_compiler_pic lt_prog_compiler_wl lt_prog_compiler_static lt_cv_prog_compiler_c_o need_locks MANIFEST_TOOL DSYMUTIL NMEDIT LIPO OTOOL OTOOL64 shrext_cmds export_dynamic_flag_spec whole_archive_flag_spec compiler_needs_object with_gnu_ld allow_undefined_flag no_undefined_flag hardcode_libdir_flag_spec hardcode_libdir_separator exclude_expsyms include_expsyms file_list_spec variables_saved_for_relink libname_spec library_names_spec soname_spec install_override_mode finish_eval old_striplib striplib LD_RC reload_flag_RC compiler_RC lt_prog_compiler_no_builtin_flag_RC lt_prog_compiler_pic_RC lt_prog_compiler_wl_RC lt_prog_compiler_static_RC lt_cv_prog_compiler_c_o_RC export_dynamic_flag_spec_RC whole_archive_flag_spec_RC compiler_needs_object_RC with_gnu_ld_RC allow_undefined_flag_RC no_undefined_flag_RC hardcode_libdir_flag_spec_RC hardcode_libdir_separator_RC exclude_expsyms_RC include_expsyms_RC file_list_spec_RC; do + case `eval \\$ECHO \\""\\$$var"\\"` in + *[\\\`\"\$]*) + eval "lt_$var=\\\"\`\$ECHO \"\$$var\" | \$SED \"\$sed_quote_subst\"\`\\\"" ## exclude from sc_prohibit_nested_quotes + ;; + *) + eval "lt_$var=\\\"\$$var\\\"" + ;; + esac +done + +# Double-quote double-evaled strings. +for var in reload_cmds old_postinstall_cmds old_postuninstall_cmds old_archive_cmds extract_expsyms_cmds old_archive_from_new_cmds old_archive_from_expsyms_cmds archive_cmds archive_expsym_cmds module_cmds module_expsym_cmds export_symbols_cmds prelink_cmds postlink_cmds postinstall_cmds postuninstall_cmds finish_cmds sys_lib_search_path_spec configure_time_dlsearch_path configure_time_lt_sys_library_path reload_cmds_RC old_archive_cmds_RC old_archive_from_new_cmds_RC old_archive_from_expsyms_cmds_RC archive_cmds_RC archive_expsym_cmds_RC module_cmds_RC module_expsym_cmds_RC export_symbols_cmds_RC prelink_cmds_RC postlink_cmds_RC; do + case `eval \\$ECHO \\""\\$$var"\\"` in + *[\\\`\"\$]*) + eval "lt_$var=\\\"\`\$ECHO \"\$$var\" | \$SED -e \"\$double_quote_subst\" -e \"\$sed_quote_subst\" -e \"\$delay_variable_subst\"\`\\\"" ## exclude from sc_prohibit_nested_quotes + ;; + *) + eval "lt_$var=\\\"\$$var\\\"" + ;; + esac +done + +ac_aux_dir='./build-aux/' + +# See if we are running on zsh, and set the options that allow our +# commands through without removal of \ escapes INIT. +if test -n "${ZSH_VERSION+set}"; then + setopt NO_GLOB_SUBST +fi + + + PACKAGE='libiconv' + VERSION='1.17' + RM='rm -f' + ofile='libtool' + + + + + +# Capture the value of obsolete ALL_LINGUAS because we need it to compute + # POFILES, UPDATEPOFILES, DUMMYPOFILES, GMOFILES, CATALOGS. + OBSOLETE_ALL_LINGUAS="" + # Capture the value of LINGUAS because we need it to compute CATALOGS. + LINGUAS="%UNSET%" + + + +# Handling of arguments. +for ac_config_target in $ac_config_targets +do + case $ac_config_target in + "config.h") CONFIG_HEADERS="$CONFIG_HEADERS config.h" ;; + "lib/config.h") CONFIG_HEADERS="$CONFIG_HEADERS lib/config.h" ;; + "depfiles") CONFIG_COMMANDS="$CONFIG_COMMANDS depfiles" ;; + "libtool") CONFIG_COMMANDS="$CONFIG_COMMANDS libtool" ;; + "po-directories") CONFIG_COMMANDS="$CONFIG_COMMANDS po-directories" ;; + "Makefile") CONFIG_FILES="$CONFIG_FILES Makefile" ;; + "lib/Makefile") CONFIG_FILES="$CONFIG_FILES lib/Makefile" ;; + "srclib/Makefile") CONFIG_FILES="$CONFIG_FILES srclib/Makefile" ;; + "src/Makefile") CONFIG_FILES="$CONFIG_FILES src/Makefile" ;; + "po/Makefile.in") CONFIG_FILES="$CONFIG_FILES po/Makefile.in" ;; + "man/Makefile") CONFIG_FILES="$CONFIG_FILES man/Makefile" ;; + "tests/Makefile") CONFIG_FILES="$CONFIG_FILES tests/Makefile" ;; + "include/iconv.h") CONFIG_FILES="$CONFIG_FILES include/iconv.h:include/iconv.h.build.in" ;; + "include/iconv.h.inst") CONFIG_FILES="$CONFIG_FILES include/iconv.h.inst:include/iconv.h.in" ;; + + *) as_fn_error $? "invalid argument: \`$ac_config_target'" "$LINENO" 5;; + esac +done + + +# If the user did not use the arguments to specify the items to instantiate, +# then the envvar interface is used. Set only those that are not. +# We use the long form for the default assignment because of an extremely +# bizarre bug on SunOS 4.1.3. +if $ac_need_defaults; then + test ${CONFIG_FILES+y} || CONFIG_FILES=$config_files + test ${CONFIG_HEADERS+y} || CONFIG_HEADERS=$config_headers + test ${CONFIG_COMMANDS+y} || CONFIG_COMMANDS=$config_commands +fi + +# Have a temporary directory for convenience. Make it in the build tree +# simply because there is no reason against having it here, and in addition, +# creating and moving files from /tmp can sometimes cause problems. +# Hook for its removal unless debugging. +# Note that there is a small window in which the directory will not be cleaned: +# after its creation but before its name has been assigned to `$tmp'. +$debug || +{ + tmp= ac_tmp= + trap 'exit_status=$? + : "${ac_tmp:=$tmp}" + { test ! -d "$ac_tmp" || rm -fr "$ac_tmp"; } && exit $exit_status +' 0 + trap 'as_fn_exit 1' 1 2 13 15 +} +# Create a (secure) tmp directory for tmp files. + +{ + tmp=`(umask 077 && mktemp -d "./confXXXXXX") 2>/dev/null` && + test -d "$tmp" +} || +{ + tmp=./conf$$-$RANDOM + (umask 077 && mkdir "$tmp") +} || as_fn_error $? "cannot create a temporary directory in ." "$LINENO" 5 +ac_tmp=$tmp + +# Set up the scripts for CONFIG_FILES section. +# No need to generate them if there are no CONFIG_FILES. +# This happens for instance with `./config.status config.h'. +if test -n "$CONFIG_FILES"; then + + +ac_cr=`echo X | tr X '\015'` +# On cygwin, bash can eat \r inside `` if the user requested igncr. +# But we know of no other shell where ac_cr would be empty at this +# point, so we can use a bashism as a fallback. +if test "x$ac_cr" = x; then + eval ac_cr=\$\'\\r\' +fi +ac_cs_awk_cr=`$AWK 'BEGIN { print "a\rb" }' /dev/null` +if test "$ac_cs_awk_cr" = "a${ac_cr}b"; then + ac_cs_awk_cr='\\r' +else + ac_cs_awk_cr=$ac_cr +fi + +echo 'BEGIN {' >"$ac_tmp/subs1.awk" && +cat >>"$ac_tmp/subs1.awk" <<\_ACAWK && +S["gltests_LIBOBJDEPS"]="" +S["gltests_LTLIBOBJS"]="" +S["gltests_LIBOBJS"]="" +S["gl_LIBOBJDEPS"]="" +S["gl_LTLIBOBJS"]="" +S["gl_LIBOBJS"]="" +S["am__EXEEXT_FALSE"]="" +S["am__EXEEXT_TRUE"]="#" +S["LTLIBOBJS"]="" +S["LIBOBJS"]="" +S["subdirs"]=" libcharset" +S["DLL_VARIABLE"]="" +S["WOE32DLL"]="no" +S["SRCLIBOBJS"]="" +S["LIBICRT_LTLIBDEPS"]="" +S["LIBICRT_LIBDEPS"]="" +S["GL_CFLAG_GNULIB_WARNINGS"]=" -Wno-cast-qual -Wno-conversion -Wno-float-equal -Wno-sign-compare -Wno-undef -Wno-unused-function -Wno-unused-parameter -Wno-float-conversion -Wimp"\ +"licit-fallthrough -Wno-pedantic -Wno-sign-conversion -Wno-type-limits" +S["GL_CFLAG_ALLOW_WARNINGS"]="-Wno-error" +S["gltests_WITNESS"]="IN_LIBICONV_GNULIB_TESTS" +S["GL_GNULIB_MDA_WCSDUP"]="1" +S["GL_GNULIB_WCSFTIME"]="0" +S["GL_GNULIB_WCSWIDTH"]="0" +S["GL_GNULIB_WCSTOK"]="0" +S["GL_GNULIB_WCSSTR"]="0" +S["GL_GNULIB_WCSPBRK"]="0" +S["GL_GNULIB_WCSSPN"]="0" +S["GL_GNULIB_WCSCSPN"]="0" +S["GL_GNULIB_WCSRCHR"]="0" +S["GL_GNULIB_WCSCHR"]="0" +S["GL_GNULIB_WCSDUP"]="0" +S["GL_GNULIB_WCSXFRM"]="0" +S["GL_GNULIB_WCSCOLL"]="0" +S["GL_GNULIB_WCSNCASECMP"]="0" +S["GL_GNULIB_WCSCASECMP"]="0" +S["GL_GNULIB_WCSNCMP"]="0" +S["GL_GNULIB_WCSCMP"]="0" +S["GL_GNULIB_WCSNCAT"]="0" +S["GL_GNULIB_WCSCAT"]="0" +S["GL_GNULIB_WCPNCPY"]="0" +S["GL_GNULIB_WCSNCPY"]="0" +S["GL_GNULIB_WCPCPY"]="0" +S["GL_GNULIB_WCSCPY"]="0" +S["GL_GNULIB_WCSNLEN"]="0" +S["GL_GNULIB_WCSLEN"]="0" +S["GL_GNULIB_WMEMSET"]="0" +S["GL_GNULIB_WMEMPCPY"]="0" +S["GL_GNULIB_WMEMMOVE"]="0" +S["GL_GNULIB_WMEMCPY"]="0" +S["GL_GNULIB_WMEMCMP"]="0" +S["GL_GNULIB_WMEMCHR"]="0" +S["GL_GNULIB_WCWIDTH"]="0" +S["GL_GNULIB_WCSNRTOMBS"]="0" +S["GL_GNULIB_WCSRTOMBS"]="0" +S["GL_GNULIB_WCRTOMB"]="0" +S["GL_GNULIB_MBSNRTOWCS"]="0" +S["GL_GNULIB_MBSRTOWCS"]="0" +S["GL_GNULIB_MBRLEN"]="0" +S["GL_GNULIB_MBRTOWC"]="0" +S["GL_GNULIB_MBSINIT"]="0" +S["GL_GNULIB_WCTOB"]="0" +S["GL_GNULIB_BTOWC"]="0" +S["HAVE_CRTDEFS_H"]="0" +S["HAVE_WINT_T"]="1" +S["HAVE_FEATURES_H"]="0" +S["NEXT_AS_FIRST_DIRECTIVE_WCHAR_H"]="" +S["NEXT_WCHAR_H"]="" +S["REPLACE_WCSTOK"]="0" +S["REPLACE_WCSFTIME"]="0" +S["REPLACE_WCSWIDTH"]="0" +S["REPLACE_WCWIDTH"]="0" +S["REPLACE_WCSNRTOMBS"]="0" +S["REPLACE_WCSRTOMBS"]="0" +S["REPLACE_WCRTOMB"]="0" +S["REPLACE_MBSNRTOWCS"]="0" +S["REPLACE_MBSRTOWCS"]="0" +S["REPLACE_MBRLEN"]="0" +S["REPLACE_MBRTOWC"]="0" +S["REPLACE_MBSINIT"]="0" +S["REPLACE_WCTOB"]="0" +S["REPLACE_BTOWC"]="0" +S["REPLACE_MBSTATE_T"]="0" +S["HAVE_DECL_WCWIDTH"]="1" +S["HAVE_DECL_WCSDUP"]="1" +S["HAVE_DECL_WCTOB"]="1" +S["HAVE_WCSFTIME"]="1" +S["HAVE_WCSWIDTH"]="1" +S["HAVE_WCSTOK"]="1" +S["HAVE_WCSSTR"]="1" +S["HAVE_WCSPBRK"]="1" +S["HAVE_WCSSPN"]="1" +S["HAVE_WCSCSPN"]="1" +S["HAVE_WCSRCHR"]="1" +S["HAVE_WCSCHR"]="1" +S["HAVE_WCSDUP"]="1" +S["HAVE_WCSXFRM"]="1" +S["HAVE_WCSCOLL"]="1" +S["HAVE_WCSNCASECMP"]="1" +S["HAVE_WCSCASECMP"]="1" +S["HAVE_WCSNCMP"]="1" +S["HAVE_WCSCMP"]="1" +S["HAVE_WCSNCAT"]="1" +S["HAVE_WCSCAT"]="1" +S["HAVE_WCPNCPY"]="1" +S["HAVE_WCSNCPY"]="1" +S["HAVE_WCPCPY"]="1" +S["HAVE_WCSCPY"]="1" +S["HAVE_WCSNLEN"]="1" +S["HAVE_WCSLEN"]="1" +S["HAVE_WMEMSET"]="1" +S["HAVE_WMEMPCPY"]="1" +S["HAVE_WMEMMOVE"]="1" +S["HAVE_WMEMCPY"]="1" +S["HAVE_WMEMCMP"]="1" +S["HAVE_WMEMCHR"]="1" +S["HAVE_WCSNRTOMBS"]="1" +S["HAVE_WCSRTOMBS"]="1" +S["HAVE_WCRTOMB"]="1" +S["HAVE_MBSNRTOWCS"]="1" +S["HAVE_MBSRTOWCS"]="1" +S["HAVE_MBRLEN"]="1" +S["HAVE_MBRTOWC"]="1" +S["HAVE_MBSINIT"]="1" +S["HAVE_BTOWC"]="1" +S["LIBUNISTRING_COMPILE_UNIWIDTH_WIDTH_FALSE"]="#" +S["LIBUNISTRING_COMPILE_UNIWIDTH_WIDTH_TRUE"]="" +S["LIBUNISTRING_UNIWIDTH_H"]="uniwidth.h" +S["LIBUNISTRING_UNITYPES_H"]="unitypes.h" +S["HAVE_UNISTD_H"]="1" +S["NEXT_AS_FIRST_DIRECTIVE_UNISTD_H"]="" +S["NEXT_UNISTD_H"]="" +S["GL_GNULIB_MDA_TZSET"]="1" +S["GL_GNULIB_TZSET"]="0" +S["GL_GNULIB_TIME_RZ"]="0" +S["GL_GNULIB_TIME_R"]="0" +S["GL_GNULIB_TIMESPEC_GETRES"]="0" +S["GL_GNULIB_TIMESPEC_GET"]="0" +S["GL_GNULIB_TIMEGM"]="0" +S["GL_GNULIB_STRPTIME"]="0" +S["GL_GNULIB_STRFTIME"]="0" +S["GL_GNULIB_NANOSLEEP"]="0" +S["GL_GNULIB_LOCALTIME"]="0" +S["GL_GNULIB_MKTIME"]="0" +S["GL_GNULIB_CTIME"]="0" +S["TIME_H_DEFINES_TIME_UTC"]="1" +S["UNISTD_H_DEFINES_STRUCT_TIMESPEC"]="0" +S["PTHREAD_H_DEFINES_STRUCT_TIMESPEC"]="0" +S["SYS_TIME_H_DEFINES_STRUCT_TIMESPEC"]="0" +S["TIME_H_DEFINES_STRUCT_TIMESPEC"]="1" +S["NEXT_AS_FIRST_DIRECTIVE_TIME_H"]="" +S["NEXT_TIME_H"]="" +S["REPLACE_LOCALTIME"]="0" +S["REPLACE_GMTIME"]="0" +S["GNULIB_GETTIMEOFDAY"]="0" +S["REPLACE_TZSET"]="GNULIB_PORTCHECK" +S["REPLACE_TIMEGM"]="GNULIB_PORTCHECK" +S["REPLACE_STRFTIME"]="GNULIB_PORTCHECK" +S["REPLACE_NANOSLEEP"]="GNULIB_PORTCHECK" +S["REPLACE_MKTIME"]="GNULIB_PORTCHECK" +S["REPLACE_LOCALTIME_R"]="GNULIB_PORTCHECK" +S["REPLACE_CTIME"]="GNULIB_PORTCHECK" +S["HAVE_TIMEZONE_T"]="0" +S["HAVE_TIMESPEC_GETRES"]="1" +S["HAVE_TIMESPEC_GET"]="1" +S["HAVE_TIMEGM"]="1" +S["HAVE_STRPTIME"]="1" +S["HAVE_NANOSLEEP"]="1" +S["HAVE_DECL_LOCALTIME_R"]="1" +S["WINDOWS_STAT_INODES"]="0" +S["WINDOWS_64_BIT_OFF_T"]="0" +S["NEXT_AS_FIRST_DIRECTIVE_SYS_TYPES_H"]="" +S["NEXT_SYS_TYPES_H"]="" +S["NEXT_AS_FIRST_DIRECTIVE_STRING_H"]="" +S["NEXT_STRING_H"]="" +S["GL_COND_OBJ_STRERROR_OVERRIDE_FALSE"]="#" +S["GL_COND_OBJ_STRERROR_OVERRIDE_TRUE"]="" +S["GL_COND_OBJ_STRERROR_FALSE"]="#" +S["GL_COND_OBJ_STRERROR_TRUE"]="" +S["NEXT_AS_FIRST_DIRECTIVE_STDLIB_H"]="" +S["NEXT_STDLIB_H"]="" +S["GL_COND_OBJ_STDIO_WRITE_FALSE"]="" +S["GL_COND_OBJ_STDIO_WRITE_TRUE"]="#" +S["GL_COND_OBJ_STDIO_READ_FALSE"]="" +S["GL_COND_OBJ_STDIO_READ_TRUE"]="#" +S["NEXT_AS_FIRST_DIRECTIVE_STDIO_H"]="" +S["NEXT_STDIO_H"]="" +S["GL_GENERATE_STDINT_H_FALSE"]="#" +S["GL_GENERATE_STDINT_H_TRUE"]="" +S["STDINT_H"]="stdint.h" +S["GL_GENERATE_STDDEF_H_FALSE"]="" +S["GL_GENERATE_STDDEF_H_TRUE"]="#" +S["STDDEF_H"]="" +S["NEXT_AS_FIRST_DIRECTIVE_STDDEF_H"]="" +S["NEXT_STDDEF_H"]="" +S["HAVE_MAX_ALIGN_T"]="1" +S["REPLACE_NULL"]="0" +S["GL_GENERATE_STDBOOL_H_FALSE"]="" +S["GL_GENERATE_STDBOOL_H_TRUE"]="#" +S["STDBOOL_H"]="" +S["HAVE__BOOL"]="1" +S["GL_GENERATE_STDALIGN_H_FALSE"]="" +S["GL_GENERATE_STDALIGN_H_TRUE"]="#" +S["STDALIGN_H"]="" +S["GL_COND_OBJ_STAT_FALSE"]="#" +S["GL_COND_OBJ_STAT_TRUE"]="" +S["GL_COND_OBJ_SIGPROCMASK_FALSE"]="" +S["GL_COND_OBJ_SIGPROCMASK_TRUE"]="#" +S["ASM_SYMBOL_PREFIX"]="\"_\"" +S["REPLACE_VSPRINTF"]="0" +S["REPLACE_VSNPRINTF"]="0" +S["REPLACE_VPRINTF"]="0" +S["REPLACE_VFPRINTF"]="0" +S["REPLACE_VDPRINTF"]="0" +S["REPLACE_VASPRINTF"]="0" +S["REPLACE_TMPFILE"]="0" +S["REPLACE_STDIO_WRITE_FUNCS"]="0" +S["REPLACE_STDIO_READ_FUNCS"]="0" +S["REPLACE_SPRINTF"]="0" +S["REPLACE_SNPRINTF"]="0" +S["REPLACE_RENAMEAT"]="0" +S["REPLACE_RENAME"]="0" +S["REPLACE_REMOVE"]="0" +S["REPLACE_PRINTF"]="0" +S["REPLACE_POPEN"]="0" +S["REPLACE_PERROR"]="0" +S["REPLACE_OBSTACK_PRINTF"]="0" +S["REPLACE_GETLINE"]="0" +S["REPLACE_GETDELIM"]="0" +S["REPLACE_FTELLO"]="0" +S["REPLACE_FTELL"]="0" +S["REPLACE_FSEEKO"]="0" +S["REPLACE_FSEEK"]="0" +S["REPLACE_FREOPEN"]="0" +S["REPLACE_FPURGE"]="0" +S["REPLACE_FPRINTF"]="0" +S["REPLACE_FOPEN_FOR_FOPEN_GNU"]="0" +S["REPLACE_FOPEN"]="0" +S["REPLACE_FFLUSH"]="0" +S["REPLACE_FDOPEN"]="0" +S["REPLACE_FCLOSE"]="0" +S["REPLACE_DPRINTF"]="0" +S["HAVE_VDPRINTF"]="1" +S["HAVE_VASPRINTF"]="1" +S["HAVE_RENAMEAT"]="1" +S["HAVE_POPEN"]="1" +S["HAVE_PCLOSE"]="1" +S["HAVE_FTELLO"]="1" +S["HAVE_FSEEKO"]="1" +S["HAVE_DPRINTF"]="1" +S["HAVE_DECL_VSNPRINTF"]="1" +S["HAVE_DECL_SNPRINTF"]="1" +S["HAVE_DECL_OBSTACK_PRINTF"]="1" +S["HAVE_DECL_GETLINE"]="1" +S["HAVE_DECL_GETDELIM"]="1" +S["HAVE_DECL_FTELLO"]="1" +S["HAVE_DECL_FSEEKO"]="1" +S["HAVE_DECL_FPURGE"]="1" +S["HAVE_DECL_FCLOSEALL"]="0" +S["GL_GNULIB_MDA_TEMPNAM"]="1" +S["GL_GNULIB_MDA_PUTW"]="1" +S["GL_GNULIB_MDA_GETW"]="1" +S["GL_GNULIB_MDA_FILENO"]="1" +S["GL_GNULIB_MDA_FDOPEN"]="1" +S["GL_GNULIB_MDA_FCLOSEALL"]="1" +S["GL_GNULIB_VSPRINTF_POSIX"]="0" +S["GL_GNULIB_VSNPRINTF"]="0" +S["GL_GNULIB_VPRINTF_POSIX"]="0" +S["GL_GNULIB_VPRINTF"]="1" +S["GL_GNULIB_VFPRINTF_POSIX"]="0" +S["GL_GNULIB_VFPRINTF"]="1" +S["GL_GNULIB_VDPRINTF"]="0" +S["GL_GNULIB_VSCANF"]="0" +S["GL_GNULIB_VFSCANF"]="0" +S["GL_GNULIB_VASPRINTF"]="0" +S["GL_GNULIB_TMPFILE"]="0" +S["GL_GNULIB_STDIO_H_SIGPIPE"]="1" +S["GL_GNULIB_STDIO_H_NONBLOCKING"]="0" +S["GL_GNULIB_SPRINTF_POSIX"]="0" +S["GL_GNULIB_SNPRINTF"]="0" +S["GL_GNULIB_SCANF"]="1" +S["GL_GNULIB_RENAMEAT"]="0" +S["GL_GNULIB_RENAME"]="0" +S["GL_GNULIB_REMOVE"]="0" +S["GL_GNULIB_PUTS"]="1" +S["GL_GNULIB_PUTCHAR"]="1" +S["GL_GNULIB_PUTC"]="1" +S["GL_GNULIB_PRINTF_POSIX"]="0" +S["GL_GNULIB_PRINTF"]="1" +S["GL_GNULIB_POPEN"]="0" +S["GL_GNULIB_PERROR"]="0" +S["GL_GNULIB_PCLOSE"]="0" +S["GL_GNULIB_OBSTACK_PRINTF_POSIX"]="0" +S["GL_GNULIB_OBSTACK_PRINTF"]="0" +S["GL_GNULIB_GETLINE"]="0" +S["GL_GNULIB_GETDELIM"]="0" +S["GL_GNULIB_GETCHAR"]="1" +S["GL_GNULIB_GETC"]="1" +S["GL_GNULIB_FWRITE"]="1" +S["GL_GNULIB_FTELLO"]="0" +S["GL_GNULIB_FTELL"]="0" +S["GL_GNULIB_FSEEKO"]="0" +S["GL_GNULIB_FSEEK"]="0" +S["GL_GNULIB_FSCANF"]="1" +S["GL_GNULIB_FREOPEN"]="0" +S["GL_GNULIB_FREAD"]="1" +S["GL_GNULIB_FPUTS"]="1" +S["GL_GNULIB_FPUTC"]="1" +S["GL_GNULIB_FPURGE"]="0" +S["GL_GNULIB_FPRINTF_POSIX"]="0" +S["GL_GNULIB_FPRINTF"]="1" +S["GL_GNULIB_FOPEN_GNU"]="0" +S["GL_GNULIB_FOPEN"]="0" +S["GL_GNULIB_FGETS"]="1" +S["GL_GNULIB_FGETC"]="1" +S["GL_GNULIB_FFLUSH"]="0" +S["GL_GNULIB_FDOPEN"]="0" +S["GL_GNULIB_FCLOSE"]="0" +S["GL_GNULIB_DPRINTF"]="0" +S["NEXT_AS_FIRST_DIRECTIVE_SIGNAL_H"]="" +S["NEXT_SIGNAL_H"]="" +S["GL_COND_OBJ_PROGRELOC_FALSE"]="" +S["GL_COND_OBJ_PROGRELOC_TRUE"]="#" +S["GL_COND_OBJ_READLINK_FALSE"]="#" +S["GL_COND_OBJ_READLINK_TRUE"]="" +S["GL_COND_OBJ_READ_FALSE"]="" +S["GL_COND_OBJ_READ_TRUE"]="#" +S["GL_COND_OBJ_RAWMEMCHR_FALSE"]="#" +S["GL_COND_OBJ_RAWMEMCHR_TRUE"]="" +S["GL_GNULIB_SIGACTION"]="0" +S["GL_GNULIB_SIGPROCMASK"]="1" +S["GL_GNULIB_SIGNAL_H_SIGPIPE"]="1" +S["GL_GNULIB_RAISE"]="1" +S["GL_GNULIB_PTHREAD_SIGMASK"]="0" +S["GL_COND_OBJ_RAISE_FALSE"]="" +S["GL_COND_OBJ_RAISE_TRUE"]="#" +S["REPLACE_RAISE"]="0" +S["REPLACE_PTHREAD_SIGMASK"]="0" +S["HAVE_SIGHANDLER_T"]="0" +S["HAVE_TYPE_VOLATILE_SIG_ATOMIC_T"]="1" +S["HAVE_STRUCT_SIGACTION_SA_SIGACTION"]="1" +S["HAVE_SIGACTION"]="1" +S["HAVE_SIGINFO_T"]="1" +S["HAVE_SIGSET_T"]="1" +S["HAVE_RAISE"]="1" +S["HAVE_PTHREAD_SIGMASK"]="1" +S["HAVE_POSIX_SIGNALBLOCKING"]="1" +S["GL_COND_OBJ_OPEN_FALSE"]="#" +S["GL_COND_OBJ_OPEN_TRUE"]="" +S["GL_COND_OBJ_MSVC_NOTHROW_FALSE"]="" +S["GL_COND_OBJ_MSVC_NOTHROW_TRUE"]="#" +S["GL_COND_OBJ_MSVC_INVAL_FALSE"]="" +S["GL_COND_OBJ_MSVC_INVAL_TRUE"]="#" +S["GL_GNULIB_MDA_STRDUP"]="1" +S["GL_GNULIB_MDA_MEMCCPY"]="1" +S["GL_GNULIB_STRVERSCMP"]="0" +S["GL_GNULIB_STRSIGNAL"]="0" +S["GL_GNULIB_SIGDESCR_NP"]="0" +S["GL_GNULIB_SIGABBREV_NP"]="0" +S["GL_GNULIB_STRERRORNAME_NP"]="0" +S["GL_GNULIB_STRERROR_R"]="0" +S["GL_GNULIB_STRERROR"]="1" +S["GL_GNULIB_MBSTOK_R"]="0" +S["GL_GNULIB_MBSSEP"]="0" +S["GL_GNULIB_MBSSPN"]="0" +S["GL_GNULIB_MBSPBRK"]="0" +S["GL_GNULIB_MBSCSPN"]="0" +S["GL_GNULIB_MBSCASESTR"]="0" +S["GL_GNULIB_MBSPCASECMP"]="0" +S["GL_GNULIB_MBSNCASECMP"]="0" +S["GL_GNULIB_MBSCASECMP"]="0" +S["GL_GNULIB_MBSSTR"]="0" +S["GL_GNULIB_MBSRCHR"]="0" +S["GL_GNULIB_MBSCHR"]="0" +S["GL_GNULIB_MBSNLEN"]="0" +S["GL_GNULIB_MBSLEN"]="0" +S["GL_GNULIB_STRTOK_R"]="0" +S["GL_GNULIB_STRCASESTR"]="0" +S["GL_GNULIB_STRSTR"]="0" +S["GL_GNULIB_STRSEP"]="0" +S["GL_GNULIB_STRPBRK"]="0" +S["GL_GNULIB_STRNLEN"]="0" +S["GL_GNULIB_STRNDUP"]="0" +S["GL_GNULIB_STRNCAT"]="0" +S["GL_GNULIB_STRDUP"]="0" +S["GL_GNULIB_STRCHRNUL"]="0" +S["GL_GNULIB_STPNCPY"]="0" +S["GL_GNULIB_STPCPY"]="0" +S["GL_GNULIB_RAWMEMCHR"]="1" +S["GL_GNULIB_MEMRCHR"]="0" +S["GL_GNULIB_MEMPCPY"]="1" +S["GL_GNULIB_MEMMEM"]="0" +S["GL_GNULIB_MEMCHR"]="0" +S["GL_GNULIB_FFSLL"]="0" +S["GL_GNULIB_FFSL"]="0" +S["GL_GNULIB_EXPLICIT_BZERO"]="0" +S["GL_COND_OBJ_MEMPCPY_FALSE"]="#" +S["GL_COND_OBJ_MEMPCPY_TRUE"]="" +S["UNDEFINE_STRTOK_R"]="0" +S["REPLACE_STRSIGNAL"]="0" +S["REPLACE_STRERRORNAME_NP"]="0" +S["REPLACE_STRERROR_R"]="0" +S["REPLACE_STRERROR"]="1" +S["REPLACE_STRTOK_R"]="0" +S["REPLACE_STRCASESTR"]="0" +S["REPLACE_STRSTR"]="0" +S["REPLACE_STRNLEN"]="0" +S["REPLACE_STRNDUP"]="0" +S["REPLACE_STRNCAT"]="0" +S["REPLACE_STRDUP"]="0" +S["REPLACE_STRCHRNUL"]="0" +S["REPLACE_STPNCPY"]="0" +S["REPLACE_MEMMEM"]="0" +S["REPLACE_MEMCHR"]="0" +S["REPLACE_FFSLL"]="0" +S["HAVE_STRVERSCMP"]="1" +S["HAVE_DECL_STRSIGNAL"]="1" +S["HAVE_SIGDESCR_NP"]="1" +S["HAVE_SIGABBREV_NP"]="1" +S["HAVE_STRERRORNAME_NP"]="1" +S["HAVE_DECL_STRERROR_R"]="1" +S["HAVE_DECL_STRTOK_R"]="1" +S["HAVE_STRCASESTR"]="1" +S["HAVE_STRSEP"]="1" +S["HAVE_STRPBRK"]="1" +S["HAVE_DECL_STRNLEN"]="1" +S["HAVE_DECL_STRNDUP"]="1" +S["HAVE_DECL_STRDUP"]="1" +S["HAVE_STRCHRNUL"]="1" +S["HAVE_STPNCPY"]="1" +S["HAVE_STPCPY"]="1" +S["HAVE_RAWMEMCHR"]="0" +S["HAVE_DECL_MEMRCHR"]="1" +S["HAVE_MEMPCPY"]="0" +S["HAVE_DECL_MEMMEM"]="1" +S["HAVE_FFSLL"]="1" +S["HAVE_FFSL"]="1" +S["HAVE_EXPLICIT_BZERO"]="1" +S["HAVE_MBSLEN"]="0" +S["GL_GENERATE_LIMITS_H_FALSE"]="#" +S["GL_GENERATE_LIMITS_H_TRUE"]="" +S["LIMITS_H"]="limits.h" +S["GL_GNULIB_STRTOUMAX"]="0" +S["GL_GNULIB_STRTOIMAX"]="0" +S["GL_GNULIB_IMAXDIV"]="0" +S["GL_GNULIB_IMAXABS"]="0" +S["NEXT_AS_FIRST_DIRECTIVE_INTTYPES_H"]="" +S["NEXT_INTTYPES_H"]="" +S["UINT64_MAX_EQ_ULONG_MAX"]="defined _LP64" +S["UINT32_MAX_LT_UINTMAX_MAX"]="1" +S["PRIPTR_PREFIX"]="__PRIPTR_PREFIX" +S["INT64_MAX_EQ_LONG_MAX"]="defined _LP64" +S["INT32_MAX_LT_INTMAX_MAX"]="1" +S["REPLACE_STRTOUMAX"]="0" +S["REPLACE_STRTOIMAX"]="0" +S["HAVE_IMAXDIV_T"]="1" +S["HAVE_DECL_STRTOUMAX"]="1" +S["HAVE_DECL_STRTOIMAX"]="1" +S["HAVE_DECL_IMAXDIV"]="1" +S["HAVE_DECL_IMAXABS"]="1" +S["HAVE_SYS_INTTYPES_H"]="0" +S["HAVE_SYS_BITYPES_H"]="0" +S["HAVE_C99_STDINT_H"]="1" +S["WINT_T_SUFFIX"]="" +S["WCHAR_T_SUFFIX"]="" +S["SIG_ATOMIC_T_SUFFIX"]="" +S["SIZE_T_SUFFIX"]="" +S["PTRDIFF_T_SUFFIX"]="" +S["HAVE_SIGNED_WINT_T"]="" +S["HAVE_SIGNED_WCHAR_T"]="" +S["HAVE_SIGNED_SIG_ATOMIC_T"]="" +S["BITSIZEOF_WINT_T"]="" +S["BITSIZEOF_WCHAR_T"]="" +S["BITSIZEOF_SIG_ATOMIC_T"]="" +S["BITSIZEOF_SIZE_T"]="" +S["BITSIZEOF_PTRDIFF_T"]="" +S["APPLE_UNIVERSAL_BUILD"]="0" +S["HAVE_STDINT_H"]="1" +S["NEXT_AS_FIRST_DIRECTIVE_STDINT_H"]="" +S["NEXT_STDINT_H"]="" +S["HAVE_SYS_TYPES_H"]="1" +S["HAVE_INTTYPES_H"]="1" +S["HAVE_WCHAR_H"]="1" +S["GNULIBHEADERS_OVERRIDE_WINT_T"]="0" +S["NEXT_AS_FIRST_DIRECTIVE_LIMITS_H"]="" +S["NEXT_LIMITS_H"]="" +S["GL_COND_OBJ_GETDTABLESIZE_FALSE"]="" +S["GL_COND_OBJ_GETDTABLESIZE_TRUE"]="#" +S["GL_GNULIB_MDA_UMASK"]="1" +S["GL_GNULIB_MDA_MKDIR"]="1" +S["GL_GNULIB_MDA_CHMOD"]="1" +S["GL_GNULIB_OVERRIDES_STRUCT_STAT"]="0" +S["GL_GNULIB_UTIMENSAT"]="0" +S["GL_GNULIB_STAT"]="1" +S["GL_GNULIB_MKNODAT"]="0" +S["GL_GNULIB_MKNOD"]="0" +S["GL_GNULIB_MKFIFOAT"]="0" +S["GL_GNULIB_MKFIFO"]="0" +S["GL_GNULIB_MKDIRAT"]="0" +S["GL_GNULIB_MKDIR"]="0" +S["GL_GNULIB_LSTAT"]="0" +S["GL_GNULIB_LCHMOD"]="0" +S["GL_GNULIB_GETUMASK"]="0" +S["GL_GNULIB_FUTIMENS"]="0" +S["GL_GNULIB_FSTATAT"]="0" +S["GL_GNULIB_FSTAT"]="1" +S["GL_GNULIB_FCHMODAT"]="0" +S["WINDOWS_64_BIT_ST_SIZE"]="0" +S["WINDOWS_STAT_TIMESPEC"]="0" +S["NEXT_AS_FIRST_DIRECTIVE_SYS_STAT_H"]="" +S["NEXT_SYS_STAT_H"]="" +S["GL_COND_OBJ_FSTAT_FALSE"]="" +S["GL_COND_OBJ_FSTAT_TRUE"]="#" +S["REPLACE_UTIMENSAT"]="0" +S["REPLACE_STAT"]="1" +S["REPLACE_MKNODAT"]="0" +S["REPLACE_MKNOD"]="0" +S["REPLACE_MKFIFOAT"]="0" +S["REPLACE_MKFIFO"]="0" +S["REPLACE_MKDIR"]="0" +S["REPLACE_LSTAT"]="0" +S["REPLACE_FUTIMENS"]="0" +S["REPLACE_FSTATAT"]="0" +S["REPLACE_FSTAT"]="0" +S["REPLACE_FCHMODAT"]="0" +S["HAVE_UTIMENSAT"]="1" +S["HAVE_MKNODAT"]="1" +S["HAVE_MKNOD"]="1" +S["HAVE_MKFIFOAT"]="1" +S["HAVE_MKFIFO"]="1" +S["HAVE_MKDIRAT"]="1" +S["HAVE_LSTAT"]="1" +S["HAVE_LCHMOD"]="1" +S["HAVE_GETUMASK"]="1" +S["HAVE_FUTIMENS"]="1" +S["HAVE_FSTATAT"]="1" +S["HAVE_FCHMODAT"]="1" +S["GL_COND_OBJ_FREE_FALSE"]="#" +S["GL_COND_OBJ_FREE_TRUE"]="" +S["NEXT_AS_FIRST_DIRECTIVE_FCNTL_H"]="" +S["NEXT_FCNTL_H"]="" +S["GL_GNULIB_MDA_OPEN"]="1" +S["GL_GNULIB_MDA_CREAT"]="1" +S["GL_GNULIB_OPENAT"]="0" +S["GL_GNULIB_OPEN"]="1" +S["GL_GNULIB_NONBLOCKING"]="0" +S["GL_GNULIB_FCNTL"]="1" +S["GL_GNULIB_CREAT"]="0" +S["GL_COND_OBJ_FCNTL_FALSE"]="" +S["GL_COND_OBJ_FCNTL_TRUE"]="#" +S["REPLACE_OPENAT"]="0" +S["REPLACE_OPEN"]="1" +S["REPLACE_FCNTL"]="0" +S["REPLACE_CREAT"]="0" +S["HAVE_OPENAT"]="1" +S["HAVE_FCNTL"]="1" +S["GL_COND_OBJ_ERROR_FALSE"]="#" +S["GL_COND_OBJ_ERROR_TRUE"]="" +S["GL_GENERATE_ERRNO_H_FALSE"]="" +S["GL_GENERATE_ERRNO_H_TRUE"]="#" +S["ERRNO_H"]="" +S["EOVERFLOW_VALUE"]="" +S["EOVERFLOW_HIDDEN"]="" +S["ENOLINK_VALUE"]="" +S["ENOLINK_HIDDEN"]="" +S["EMULTIHOP_VALUE"]="" +S["EMULTIHOP_HIDDEN"]="" +S["NEXT_AS_FIRST_DIRECTIVE_ERRNO_H"]="" +S["NEXT_ERRNO_H"]="" +S["PRAGMA_COLUMNS"]="" +S["PRAGMA_SYSTEM_HEADER"]="#pragma GCC system_header" +S["INCLUDE_NEXT_AS_FIRST_DIRECTIVE"]="include_next" +S["INCLUDE_NEXT"]="include_next" +S["GL_COND_OBJ_DUP2_FALSE"]="" +S["GL_COND_OBJ_DUP2_TRUE"]="#" +S["GL_GNULIB_MDA_WRITE"]="1" +S["GL_GNULIB_MDA_UNLINK"]="1" +S["GL_GNULIB_MDA_SWAB"]="1" +S["GL_GNULIB_MDA_RMDIR"]="1" +S["GL_GNULIB_MDA_READ"]="1" +S["GL_GNULIB_MDA_LSEEK"]="1" +S["GL_GNULIB_MDA_ISATTY"]="1" +S["GL_GNULIB_MDA_GETPID"]="1" +S["GL_GNULIB_MDA_GETCWD"]="1" +S["GL_GNULIB_MDA_EXECVPE"]="1" +S["GL_GNULIB_MDA_EXECVP"]="1" +S["GL_GNULIB_MDA_EXECVE"]="1" +S["GL_GNULIB_MDA_EXECV"]="1" +S["GL_GNULIB_MDA_EXECLP"]="1" +S["GL_GNULIB_MDA_EXECLE"]="1" +S["GL_GNULIB_MDA_EXECL"]="1" +S["GL_GNULIB_MDA_DUP2"]="1" +S["GL_GNULIB_MDA_DUP"]="1" +S["GL_GNULIB_MDA_CLOSE"]="1" +S["GL_GNULIB_MDA_CHDIR"]="1" +S["GL_GNULIB_MDA_ACCESS"]="1" +S["GL_GNULIB_WRITE"]="0" +S["GL_GNULIB_USLEEP"]="0" +S["GL_GNULIB_UNLINKAT"]="0" +S["GL_GNULIB_UNLINK"]="0" +S["GL_GNULIB_UNISTD_H_SIGPIPE"]="1" +S["GL_GNULIB_UNISTD_H_NONBLOCKING"]="0" +S["GL_GNULIB_UNISTD_H_GETOPT"]="0" +S["GL_GNULIB_TTYNAME_R"]="0" +S["GL_GNULIB_TRUNCATE"]="0" +S["GL_GNULIB_SYMLINKAT"]="0" +S["GL_GNULIB_SYMLINK"]="0" +S["GL_GNULIB_SLEEP"]="0" +S["GL_GNULIB_SETHOSTNAME"]="0" +S["GL_GNULIB_RMDIR"]="0" +S["GL_GNULIB_READLINKAT"]="0" +S["GL_GNULIB_READLINK"]="1" +S["GL_GNULIB_READ"]="1" +S["GL_GNULIB_PWRITE"]="0" +S["GL_GNULIB_PREAD"]="0" +S["GL_GNULIB_PIPE2"]="0" +S["GL_GNULIB_PIPE"]="0" +S["GL_GNULIB_LSEEK"]="0" +S["GL_GNULIB_LINKAT"]="0" +S["GL_GNULIB_LINK"]="0" +S["GL_GNULIB_LCHOWN"]="0" +S["GL_GNULIB_ISATTY"]="0" +S["GL_GNULIB_GROUP_MEMBER"]="0" +S["GL_GNULIB_GETUSERSHELL"]="0" +S["GL_GNULIB_GETPASS_GNU"]="0" +S["GL_GNULIB_GETPASS"]="0" +S["GL_GNULIB_GETPAGESIZE"]="0" +S["GL_GNULIB_GETOPT_POSIX"]="0" +S["GL_GNULIB_GETLOGIN_R"]="0" +S["GL_GNULIB_GETLOGIN"]="0" +S["GL_GNULIB_GETHOSTNAME"]="0" +S["GL_GNULIB_GETGROUPS"]="0" +S["GL_GNULIB_GETENTROPY"]="0" +S["GL_GNULIB_GETDTABLESIZE"]="1" +S["GL_GNULIB_GETDOMAINNAME"]="0" +S["GL_GNULIB_GETCWD"]="0" +S["GL_GNULIB_FTRUNCATE"]="0" +S["GL_GNULIB_FSYNC"]="0" +S["GL_GNULIB_FDATASYNC"]="0" +S["GL_GNULIB_FCHOWNAT"]="0" +S["GL_GNULIB_FCHDIR"]="0" +S["GL_GNULIB_FACCESSAT"]="0" +S["GL_GNULIB_EXECVPE"]="0" +S["GL_GNULIB_EXECVP"]="0" +S["GL_GNULIB_EXECVE"]="0" +S["GL_GNULIB_EXECV"]="0" +S["GL_GNULIB_EXECLP"]="0" +S["GL_GNULIB_EXECLE"]="0" +S["GL_GNULIB_EXECL"]="0" +S["GL_GNULIB_EUIDACCESS"]="0" +S["GL_GNULIB_ENVIRON"]="1" +S["GL_GNULIB_DUP3"]="0" +S["GL_GNULIB_DUP2"]="1" +S["GL_GNULIB_DUP"]="0" +S["GL_GNULIB_COPY_FILE_RANGE"]="0" +S["GL_GNULIB_CLOSE"]="1" +S["GL_GNULIB_CHOWN"]="0" +S["GL_GNULIB_CHDIR"]="0" +S["GL_GNULIB_ACCESS"]="0" +S["GL_COND_OBJ_CLOSE_FALSE"]="" +S["GL_COND_OBJ_CLOSE_TRUE"]="#" +S["HAVE_WINSOCK2_H"]="0" +S["HAVE_MSVC_INVALID_PARAMETER_HANDLER"]="0" +S["UNISTD_H_HAVE_WINSOCK2_H_AND_USE_SOCKETS"]="0" +S["UNISTD_H_HAVE_WINSOCK2_H"]="0" +S["UNISTD_H_HAVE_SYS_RANDOM_H"]="0" +S["REPLACE_WRITE"]="0" +S["REPLACE_USLEEP"]="0" +S["REPLACE_UNLINKAT"]="0" +S["REPLACE_UNLINK"]="0" +S["REPLACE_TTYNAME_R"]="0" +S["REPLACE_TRUNCATE"]="0" +S["REPLACE_SYMLINKAT"]="0" +S["REPLACE_SYMLINK"]="0" +S["REPLACE_SLEEP"]="0" +S["REPLACE_RMDIR"]="0" +S["REPLACE_READLINKAT"]="0" +S["REPLACE_READLINK"]="1" +S["REPLACE_READ"]="0" +S["REPLACE_PWRITE"]="0" +S["REPLACE_PREAD"]="0" +S["REPLACE_LSEEK"]="0" +S["REPLACE_LINKAT"]="0" +S["REPLACE_LINK"]="0" +S["REPLACE_LCHOWN"]="0" +S["REPLACE_ISATTY"]="0" +S["REPLACE_GETPASS_FOR_GETPASS_GNU"]="0" +S["REPLACE_GETPASS"]="0" +S["REPLACE_GETPAGESIZE"]="0" +S["REPLACE_GETGROUPS"]="0" +S["REPLACE_GETLOGIN_R"]="0" +S["REPLACE_GETDTABLESIZE"]="0" +S["REPLACE_GETDOMAINNAME"]="0" +S["REPLACE_GETCWD"]="0" +S["REPLACE_FTRUNCATE"]="0" +S["REPLACE_FCHOWNAT"]="0" +S["REPLACE_FACCESSAT"]="0" +S["REPLACE_EXECVPE"]="0" +S["REPLACE_EXECVP"]="0" +S["REPLACE_EXECVE"]="0" +S["REPLACE_EXECV"]="0" +S["REPLACE_EXECLP"]="0" +S["REPLACE_EXECLE"]="0" +S["REPLACE_EXECL"]="0" +S["REPLACE_DUP2"]="0" +S["REPLACE_DUP"]="0" +S["REPLACE_COPY_FILE_RANGE"]="0" +S["REPLACE_CLOSE"]="0" +S["REPLACE_CHOWN"]="0" +S["REPLACE_ACCESS"]="0" +S["HAVE_SYS_PARAM_H"]="0" +S["HAVE_OS_H"]="0" +S["HAVE_DECL_TTYNAME_R"]="1" +S["HAVE_DECL_TRUNCATE"]="1" +S["HAVE_DECL_SETHOSTNAME"]="1" +S["HAVE_DECL_GETUSERSHELL"]="1" +S["HAVE_DECL_GETPAGESIZE"]="1" +S["HAVE_DECL_GETLOGIN_R"]="1" +S["HAVE_DECL_GETLOGIN"]="1" +S["HAVE_DECL_GETDOMAINNAME"]="1" +S["HAVE_DECL_FDATASYNC"]="1" +S["HAVE_DECL_FCHDIR"]="1" +S["HAVE_DECL_EXECVPE"]="0" +S["HAVE_DECL_ENVIRON"]="0" +S["HAVE_USLEEP"]="1" +S["HAVE_UNLINKAT"]="1" +S["HAVE_SYMLINKAT"]="1" +S["HAVE_SYMLINK"]="1" +S["HAVE_SLEEP"]="1" +S["HAVE_SETHOSTNAME"]="1" +S["HAVE_READLINKAT"]="1" +S["HAVE_READLINK"]="1" +S["HAVE_PWRITE"]="1" +S["HAVE_PREAD"]="1" +S["HAVE_PIPE2"]="1" +S["HAVE_PIPE"]="1" +S["HAVE_LINKAT"]="1" +S["HAVE_LINK"]="1" +S["HAVE_LCHOWN"]="1" +S["HAVE_GROUP_MEMBER"]="1" +S["HAVE_GETPASS"]="1" +S["HAVE_GETPAGESIZE"]="1" +S["HAVE_GETLOGIN"]="1" +S["HAVE_GETHOSTNAME"]="1" +S["HAVE_GETGROUPS"]="1" +S["HAVE_GETENTROPY"]="1" +S["HAVE_GETDTABLESIZE"]="1" +S["HAVE_FTRUNCATE"]="1" +S["HAVE_FSYNC"]="1" +S["HAVE_FDATASYNC"]="1" +S["HAVE_FCHOWNAT"]="1" +S["HAVE_FCHDIR"]="1" +S["HAVE_FACCESSAT"]="1" +S["HAVE_EXECVPE"]="1" +S["HAVE_EUIDACCESS"]="1" +S["HAVE_DUP3"]="1" +S["HAVE_COPY_FILE_RANGE"]="1" +S["HAVE_CHOWN"]="1" +S["GL_GNULIB_MDA_PUTENV"]="1" +S["GL_GNULIB_MDA_MKTEMP"]="1" +S["GL_GNULIB_MDA_GCVT"]="1" +S["GL_GNULIB_MDA_FCVT"]="1" +S["GL_GNULIB_MDA_ECVT"]="1" +S["GL_GNULIB_WCTOMB"]="0" +S["GL_GNULIB_UNSETENV"]="0" +S["GL_GNULIB_UNLOCKPT"]="0" +S["GL_GNULIB_SYSTEM_POSIX"]="0" +S["GL_GNULIB_STRTOULL"]="0" +S["GL_GNULIB_STRTOUL"]="0" +S["GL_GNULIB_STRTOLL"]="0" +S["GL_GNULIB_STRTOLD"]="0" +S["GL_GNULIB_STRTOL"]="0" +S["GL_GNULIB_STRTOD"]="0" +S["GL_GNULIB_SETENV"]="0" +S["GL_GNULIB_SECURE_GETENV"]="0" +S["GL_GNULIB_RPMATCH"]="0" +S["GL_GNULIB_REALPATH"]="1" +S["GL_GNULIB_REALLOC_POSIX"]="1" +S["GL_GNULIB_REALLOC_GNU"]="0" +S["GL_GNULIB_REALLOCARRAY"]="0" +S["GL_GNULIB_RANDOM_R"]="0" +S["GL_GNULIB_RANDOM"]="0" +S["GL_GNULIB_QSORT_R"]="0" +S["GL_GNULIB_PUTENV"]="0" +S["GL_GNULIB_PTSNAME_R"]="0" +S["GL_GNULIB_PTSNAME"]="0" +S["GL_GNULIB_POSIX_OPENPT"]="0" +S["GL_GNULIB_POSIX_MEMALIGN"]="0" +S["GL_GNULIB_MKSTEMPS"]="0" +S["GL_GNULIB_MKSTEMP"]="0" +S["GL_GNULIB_MKOSTEMPS"]="0" +S["GL_GNULIB_MKOSTEMP"]="0" +S["GL_GNULIB_MKDTEMP"]="0" +S["GL_GNULIB_MBTOWC"]="0" +S["GL_GNULIB_MALLOC_POSIX"]="1" +S["GL_GNULIB_MALLOC_GNU"]="0" +S["GL_GNULIB_GRANTPT"]="0" +S["GL_GNULIB_GETSUBOPT"]="0" +S["GL_GNULIB_GETLOADAVG"]="0" +S["GL_GNULIB_FREE_POSIX"]="1" +S["GL_GNULIB_CANONICALIZE_FILE_NAME"]="1" +S["GL_GNULIB_CALLOC_POSIX"]="0" +S["GL_GNULIB_CALLOC_GNU"]="0" +S["GL_GNULIB_ATOLL"]="0" +S["GL_GNULIB_ALIGNED_ALLOC"]="0" +S["GL_GNULIB__EXIT"]="0" +S["GL_COND_OBJ_CANONICALIZE_LGPL_FALSE"]="#" +S["GL_COND_OBJ_CANONICALIZE_LGPL_TRUE"]="" +S["REPLACE_WCTOMB"]="0" +S["REPLACE_UNSETENV"]="0" +S["REPLACE_STRTOULL"]="0" +S["REPLACE_STRTOUL"]="0" +S["REPLACE_STRTOLL"]="0" +S["REPLACE_STRTOLD"]="0" +S["REPLACE_STRTOL"]="0" +S["REPLACE_STRTOD"]="0" +S["REPLACE_SETSTATE"]="0" +S["REPLACE_SETENV"]="0" +S["REPLACE_REALPATH"]="1" +S["REPLACE_REALLOCARRAY"]="0" +S["REPLACE_REALLOC_FOR_REALLOC_POSIX"]="0" +S["REPLACE_REALLOC_FOR_REALLOC_GNU"]="0" +S["REPLACE_RANDOM_R"]="0" +S["REPLACE_RANDOM"]="0" +S["REPLACE_QSORT_R"]="0" +S["REPLACE_PUTENV"]="0" +S["REPLACE_PTSNAME_R"]="0" +S["REPLACE_PTSNAME"]="0" +S["REPLACE_POSIX_MEMALIGN"]="0" +S["REPLACE_MKSTEMP"]="0" +S["REPLACE_MBTOWC"]="0" +S["REPLACE_MALLOC_FOR_MALLOC_POSIX"]="0" +S["REPLACE_MALLOC_FOR_MALLOC_GNU"]="0" +S["REPLACE_INITSTATE"]="0" +S["REPLACE_FREE"]="1" +S["REPLACE_CANONICALIZE_FILE_NAME"]="0" +S["REPLACE_CALLOC_FOR_CALLOC_POSIX"]="0" +S["REPLACE_CALLOC_FOR_CALLOC_GNU"]="0" +S["REPLACE_ALIGNED_ALLOC"]="0" +S["HAVE_DECL_UNSETENV"]="1" +S["HAVE_UNLOCKPT"]="1" +S["HAVE_SYS_LOADAVG_H"]="0" +S["HAVE_STRUCT_RANDOM_DATA"]="1" +S["HAVE_STRTOULL"]="1" +S["HAVE_STRTOUL"]="1" +S["HAVE_STRTOLL"]="1" +S["HAVE_STRTOLD"]="1" +S["HAVE_STRTOL"]="1" +S["HAVE_STRTOD"]="1" +S["HAVE_DECL_SETSTATE"]="1" +S["HAVE_SETSTATE"]="1" +S["HAVE_DECL_SETENV"]="1" +S["HAVE_SETENV"]="1" +S["HAVE_SECURE_GETENV"]="1" +S["HAVE_RPMATCH"]="1" +S["HAVE_REALPATH"]="1" +S["HAVE_REALLOCARRAY"]="1" +S["HAVE_RANDOM_R"]="1" +S["HAVE_RANDOM_H"]="1" +S["HAVE_RANDOM"]="1" +S["HAVE_QSORT_R"]="1" +S["HAVE_PTSNAME_R"]="1" +S["HAVE_PTSNAME"]="1" +S["HAVE_POSIX_OPENPT"]="1" +S["HAVE_POSIX_MEMALIGN"]="1" +S["HAVE_MKSTEMPS"]="1" +S["HAVE_MKSTEMP"]="1" +S["HAVE_MKOSTEMPS"]="1" +S["HAVE_MKOSTEMP"]="1" +S["HAVE_MKDTEMP"]="1" +S["HAVE_MBTOWC"]="1" +S["HAVE_DECL_INITSTATE"]="1" +S["HAVE_INITSTATE"]="1" +S["HAVE_GRANTPT"]="1" +S["HAVE_GETSUBOPT"]="1" +S["HAVE_DECL_GETLOADAVG"]="1" +S["HAVE_DECL_GCVT"]="1" +S["HAVE_DECL_FCVT"]="1" +S["HAVE_DECL_ECVT"]="1" +S["HAVE_CANONICALIZE_FILE_NAME"]="0" +S["HAVE_ATOLL"]="1" +S["HAVE_ALIGNED_ALLOC"]="1" +S["HAVE__EXIT"]="1" +S["GL_GENERATE_ALLOCA_H_FALSE"]="#" +S["GL_GENERATE_ALLOCA_H_TRUE"]="" +S["ALLOCA_H"]="alloca.h" +S["ALLOCA"]="" +S["GL_COND_LIBTOOL_FALSE"]="" +S["GL_COND_LIBTOOL_TRUE"]="#" +S["EILSEQ"]="" +S["BROKEN_WCHAR_H"]="0" +S["USE_MBSTATE_T"]="1" +S["HAVE_WCHAR_T"]="1" +S["ICONV_CONST"]="" +S["POSUB"]="" +S["LTLIBINTL"]="" +S["LIBINTL"]="" +S["INTLLIBS"]="" +S["INTL_MACOSX_LIBS"]="-Wl,-framework -Wl,CoreFoundation" +S["XGETTEXT_EXTRA_OPTIONS"]=" --flag=error:3:c-format --flag=error_at_line:5:c-format" +S["MSGMERGE_FOR_MSGFMT_OPTION"]="--for-msgfmt" +S["MSGMERGE"]="/opt/homebrew/bin/msgmerge" +S["XGETTEXT_015"]="/opt/homebrew/bin/xgettext" +S["XGETTEXT"]="/opt/homebrew/bin/xgettext" +S["GMSGFMT_015"]="/opt/homebrew/bin/msgfmt" +S["GMSGFMT"]="/opt/homebrew/bin/msgfmt" +S["MSGFMT"]="/opt/homebrew/bin/msgfmt" +S["GETTEXT_MACRO_VERSION"]="0.20" +S["USE_NLS"]="no" +S["LTLIBICONV"]="-liconv" +S["LIBICONV"]="-liconv" +S["HAVE_VISIBILITY"]="1" +S["CFLAG_VISIBILITY"]="-fvisibility=hidden" +S["WINDRES"]="" +S["WOE32"]="no" +S["RC"]="" +S["LN"]="ln" +S["CP"]="cp -p" +S["USE_EXTRA_ENCODINGS"]="no" +S["RELOCATABLE_STRIP"]=":" +S["RELOCATABLE_BUILD_DIR"]="$(top_builddir)/srclib" +S["RELOCATABLE_SRC_DIR"]="$(top_srcdir)/srclib" +S["RELOCATABLE_CONFIG_H_DIR"]="$(top_builddir)" +S["RELOCATABLE_LIBRARY_PATH"]="" +S["RELOCATABLE_VIA_WRAPPER_FALSE"]="" +S["RELOCATABLE_VIA_WRAPPER_TRUE"]="#" +S["RELOCATABLE_VIA_LD_FALSE"]="" +S["RELOCATABLE_VIA_LD_TRUE"]="#" +S["INSTALL_PROGRAM_ENV"]="" +S["RELOCATABLE_LDFLAGS"]="" +S["RELOCATABLE"]="no" +S["LT_SYS_LIBRARY_PATH"]="" +S["OTOOL64"]=":" +S["OTOOL"]="otool" +S["LIPO"]="lipo" +S["NMEDIT"]="nmedit" +S["DSYMUTIL"]="dsymutil" +S["MANIFEST_TOOL"]=":" +S["ac_ct_AR"]="ar" +S["FILECMD"]="file" +S["LN_S"]="ln -s" +S["NM"]="/usr/bin/nm -B" +S["ac_ct_DUMPBIN"]="" +S["DUMPBIN"]="" +S["LD"]="/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ld" +S["FGREP"]="/usr/bin/grep -F" +S["SED"]="/usr/bin/sed" +S["LIBTOOL"]="/bin/sh $(top_builddir)/libtool" +S["OBJDUMP"]="objdump" +S["DLLTOOL"]="false" +S["AS"]="as" +S["RANLIB"]="ranlib" +S["ARFLAGS"]="cr" +S["AR"]="ar" +S["EGREP"]="/usr/bin/grep -E" +S["GREP"]="/usr/bin/grep" +S["host_os"]="darwin22.4.0" +S["host_vendor"]="apple" +S["host_cpu"]="aarch64" +S["host"]="aarch64-apple-darwin22.4.0" +S["build_os"]="darwin22.4.0" +S["build_vendor"]="apple" +S["build_cpu"]="aarch64" +S["build"]="aarch64-apple-darwin22.4.0" +S["CPP"]="gcc -E" +S["am__fastdepCC_FALSE"]="" +S["am__fastdepCC_TRUE"]="#" +S["CCDEPMODE"]="depmode=none" +S["am__nodep"]="_no" +S["AMDEPBACKSLASH"]="\\" +S["AMDEP_FALSE"]="#" +S["AMDEP_TRUE"]="" +S["am__include"]="include" +S["DEPDIR"]=".deps" +S["OBJEXT"]="o" +S["EXEEXT"]="" +S["ac_ct_CC"]="gcc" +S["CPPFLAGS"]="" +S["LDFLAGS"]="" +S["CFLAGS"]="-g -O2" +S["CC"]="gcc" +S["AM_BACKSLASH"]="\\" +S["AM_DEFAULT_VERBOSITY"]="1" +S["AM_DEFAULT_V"]="$(AM_DEFAULT_VERBOSITY)" +S["AM_V"]="$(V)" +S["CSCOPE"]="cscope" +S["ETAGS"]="etags" +S["CTAGS"]="ctags" +S["am__untar"]="$${TAR-tar} xf -" +S["am__tar"]="$${TAR-tar} chof - \"$$tardir\"" +S["AMTAR"]="$${TAR-tar}" +S["am__leading_dot"]="." +S["SET_MAKE"]="" +S["AWK"]="gawk" +S["mkdir_p"]="$(MKDIR_P)" +S["MKDIR_P"]="/opt/homebrew/bin/gmkdir -p" +S["INSTALL_STRIP_PROGRAM"]="$(install_sh) -c -s" +S["STRIP"]="/usr/bin/strip" +S["install_sh"]="${SHELL} /Users/yangzuhao/Downloads/libiconv-1.17/build-aux/install-sh" +S["MAKEINFO"]="${SHELL} '/Users/yangzuhao/Downloads/libiconv-1.17/build-aux/missing' makeinfo" +S["AUTOHEADER"]="${SHELL} '/Users/yangzuhao/Downloads/libiconv-1.17/build-aux/missing' autoheader" +S["AUTOMAKE"]="${SHELL} '/Users/yangzuhao/Downloads/libiconv-1.17/build-aux/missing' automake-1.16" +S["AUTOCONF"]="${SHELL} '/Users/yangzuhao/Downloads/libiconv-1.17/build-aux/missing' autoconf" +S["ACLOCAL"]="${SHELL} '/Users/yangzuhao/Downloads/libiconv-1.17/build-aux/missing' aclocal-1.16" +S["VERSION"]="1.17" +S["PACKAGE"]="libiconv" +S["CYGPATH_W"]="echo" +S["am__isrc"]="" +S["INSTALL_DATA"]="${INSTALL} -m 644" +S["INSTALL_SCRIPT"]="${INSTALL}" +S["INSTALL_PROGRAM"]="${INSTALL}" +S["target_alias"]="" +S["host_alias"]="" +S["build_alias"]="" +S["LIBS"]="" +S["ECHO_T"]="" +S["ECHO_N"]="" +S["ECHO_C"]="\\c" +S["DEFS"]="-DHAVE_CONFIG_H" +S["mandir"]="${datarootdir}/man" +S["localedir"]="${datarootdir}/locale" +S["libdir"]="${exec_prefix}/lib" +S["psdir"]="${docdir}" +S["pdfdir"]="${docdir}" +S["dvidir"]="${docdir}" +S["htmldir"]="${docdir}" +S["infodir"]="${datarootdir}/info" +S["docdir"]="${datarootdir}/doc/${PACKAGE_TARNAME}" +S["oldincludedir"]="/usr/include" +S["includedir"]="${prefix}/include" +S["runstatedir"]="${localstatedir}/run" +S["localstatedir"]="${prefix}/var" +S["sharedstatedir"]="${prefix}/com" +S["sysconfdir"]="${prefix}/etc" +S["datadir"]="${datarootdir}" +S["datarootdir"]="${prefix}/share" +S["libexecdir"]="${exec_prefix}/libexec" +S["sbindir"]="${exec_prefix}/sbin" +S["bindir"]="${exec_prefix}/bin" +S["program_transform_name"]="s,x,x," +S["prefix"]="/Users/yangzuhao/Downloads/libiconv-1.17/output" +S["exec_prefix"]="${prefix}" +S["PACKAGE_URL"]="" +S["PACKAGE_BUGREPORT"]="" +S["PACKAGE_STRING"]="libiconv 1.17" +S["PACKAGE_VERSION"]="1.17" +S["PACKAGE_TARNAME"]="libiconv" +S["PACKAGE_NAME"]="libiconv" +S["PATH_SEPARATOR"]=":" +S["SHELL"]="/bin/sh" +S["am__quote"]="" +_ACAWK +cat >>"$ac_tmp/subs1.awk" <<_ACAWK && + for (key in S) S_is_set[key] = 1 + FS = "" + +} +{ + line = $ 0 + nfields = split(line, field, "@") + substed = 0 + len = length(field[1]) + for (i = 2; i < nfields; i++) { + key = field[i] + keylen = length(key) + if (S_is_set[key]) { + value = S[key] + line = substr(line, 1, len) "" value "" substr(line, len + keylen + 3) + len += length(value) + length(field[++i]) + substed = 1 + } else + len += 1 + keylen + } + + print line +} + +_ACAWK +if sed "s/$ac_cr//" < /dev/null > /dev/null 2>&1; then + sed "s/$ac_cr\$//; s/$ac_cr/$ac_cs_awk_cr/g" +else + cat +fi < "$ac_tmp/subs1.awk" > "$ac_tmp/subs.awk" \ + || as_fn_error $? "could not setup config files machinery" "$LINENO" 5 +fi # test -n "$CONFIG_FILES" + +# Set up the scripts for CONFIG_HEADERS section. +# No need to generate them if there are no CONFIG_HEADERS. +# This happens for instance with `./config.status Makefile'. +if test -n "$CONFIG_HEADERS"; then +cat >"$ac_tmp/defines.awk" <<\_ACAWK || +BEGIN { +D["PACKAGE_NAME"]=" \"libiconv\"" +D["PACKAGE_TARNAME"]=" \"libiconv\"" +D["PACKAGE_VERSION"]=" \"1.17\"" +D["PACKAGE_STRING"]=" \"libiconv 1.17\"" +D["PACKAGE_BUGREPORT"]=" \"\"" +D["PACKAGE_URL"]=" \"\"" +D["PACKAGE"]=" \"libiconv\"" +D["VERSION"]=" \"1.17\"" +D["HAVE_STDIO_H"]=" 1" +D["HAVE_STDLIB_H"]=" 1" +D["HAVE_STRING_H"]=" 1" +D["HAVE_INTTYPES_H"]=" 1" +D["HAVE_STDINT_H"]=" 1" +D["HAVE_STRINGS_H"]=" 1" +D["HAVE_SYS_STAT_H"]=" 1" +D["HAVE_SYS_TYPES_H"]=" 1" +D["HAVE_UNISTD_H"]=" 1" +D["HAVE_WCHAR_H"]=" 1" +D["HAVE_SYS_PARAM_H"]=" 1" +D["HAVE_SYS_SOCKET_H"]=" 1" +D["HAVE_LIMITS_H"]=" 1" +D["HAVE_SYS_TIME_H"]=" 1" +D["STDC_HEADERS"]=" 1" +D["_ALL_SOURCE"]=" 1" +D["_DARWIN_C_SOURCE"]=" 1" +D["_GNU_SOURCE"]=" 1" +D["_HPUX_ALT_XOPEN_SOCKET_API"]=" 1" +D["_NETBSD_SOURCE"]=" 1" +D["_OPENBSD_SOURCE"]=" 1" +D["_POSIX_PTHREAD_SEMANTICS"]=" 1" +D["__STDC_WANT_IEC_60559_ATTRIBS_EXT__"]=" 1" +D["__STDC_WANT_IEC_60559_BFP_EXT__"]=" 1" +D["__STDC_WANT_IEC_60559_DFP_EXT__"]=" 1" +D["__STDC_WANT_IEC_60559_FUNCS_EXT__"]=" 1" +D["__STDC_WANT_IEC_60559_TYPES_EXT__"]=" 1" +D["__STDC_WANT_LIB_EXT2__"]=" 1" +D["__STDC_WANT_MATH_SPEC_FUNCS__"]=" 1" +D["_TANDEM_SOURCE"]=" 1" +D["__EXTENSIONS__"]=" 1" +D["HAVE_DLFCN_H"]=" 1" +D["LT_OBJDIR"]=" \".libs/\"" +D["INSTALLPREFIX"]=" \"/Users/yangzuhao/Downloads/libiconv-1.17/output\"" +D["HAVE_VISIBILITY"]=" 1" +D["HAVE_ICONV"]=" 1" +D["ICONV_CONST"]=" " +D["HAVE_CFPREFERENCESCOPYAPPVALUE"]=" 1" +D["HAVE_CFLOCALECOPYPREFERREDLANGUAGES"]=" 1" +D["HAVE_ICONV"]=" 1" +D["HAVE_MBSTATE_T"]=" 1" +D["HAVE_WCHAR_T"]=" 1" +D["HAVE_GETC_UNLOCKED"]=" 1" +D["HAVE_MBRTOWC"]=" 1" +D["HAVE_WCRTOMB"]=" 1" +D["HAVE_MBSINIT"]=" 1" +D["HAVE_SETLOCALE"]=" 1" +D["HAVE_MEMMOVE"]=" 1" +D["HAVE_LANGINFO_CODESET"]=" 1" +D["HAVE_SYMLINK"]=" 1" +D["HAVE_FACCESSAT"]=" 1" +D["HAVE_REALPATH"]=" 1" +D["HAVE_LSTAT"]=" 1" +D["HAVE_READLINKAT"]=" 1" +D["HAVE_FCNTL"]=" 1" +D["HAVE_GETDTABLESIZE"]=" 1" +D["HAVE_GETPROGNAME"]=" 1" +D["HAVE_READLINK"]=" 1" +D["HAVE_SETENV"]=" 1" +D["HAVE_WORKING_O_NOATIME"]=" 0" +D["HAVE_WORKING_O_NOFOLLOW"]=" 1" +D["HAVE_WCHAR_H"]=" 1" +D["WORDS_LITTLEENDIAN"]=" 1" +D["HAVE_ALLOCA_H"]=" 1" +D["HAVE_ALLOCA"]=" 1" +D["HAVE_GETCWD"]=" 1" +D["restrict"]=" __restrict__" +D["HAVE_DECL_STRERROR_R"]=" 1" +D["HAVE_STRERROR_R"]=" 1" +D["HAVE___HEADER_INLINE"]=" 1" +D["HAVE_DECL_GETDTABLESIZE"]=" 1" +D["HAVE_WINT_T"]=" 1" +D["HAVE_LONG_LONG_INT"]=" 1" +D["HAVE_UNSIGNED_LONG_LONG_INT"]=" 1" +D["HAVE_MALLOC_POSIX"]=" 1" +D["MALLOC_0_IS_NONNULL"]=" 1" +D["HAVE_MINMAX_IN_SYS_PARAM_H"]=" 1" +D["PROMOTED_MODE_T"]=" int" +D["HAVE_SIGSET_T"]=" 1" +D["HAVE_DECL_SETENV"]=" 1" +D["USER_LABEL_PREFIX"]=" _" +D["HAVE__BOOL"]=" 1" +D["HAVE_DECL_FCLOSEALL"]=" 0" +D["__USE_MINGW_ANSI_STDIO"]=" 1" +D["HAVE_DECL_ECVT"]=" 1" +D["HAVE_DECL_FCVT"]=" 1" +D["HAVE_DECL_GCVT"]=" 1" +D["REPLACE_STRERROR_0"]=" 1" +D["_USE_STD_STAT"]=" 1" +D["HAVE_DECL_EXECVPE"]=" 0" +D["HAVE_DECL_CLEARERR_UNLOCKED"]=" 1" +D["HAVE_DECL_FEOF_UNLOCKED"]=" 1" +D["HAVE_DECL_FERROR_UNLOCKED"]=" 1" +D["HAVE_DECL_FFLUSH_UNLOCKED"]=" 0" +D["HAVE_DECL_FGETS_UNLOCKED"]=" 0" +D["HAVE_DECL_FPUTC_UNLOCKED"]=" 0" +D["HAVE_DECL_FPUTS_UNLOCKED"]=" 0" +D["HAVE_DECL_FREAD_UNLOCKED"]=" 0" +D["HAVE_DECL_FWRITE_UNLOCKED"]=" 0" +D["HAVE_DECL_GETC_UNLOCKED"]=" 1" +D["HAVE_DECL_GETCHAR_UNLOCKED"]=" 1" +D["HAVE_DECL_PUTC_UNLOCKED"]=" 1" +D["HAVE_DECL_PUTCHAR_UNLOCKED"]=" 1" +D["HAVE_DECL_WCSDUP"]=" 1" +D["HAVE___BUILTIN_EXPECT"]=" 1" +D["GNULIB_CANONICALIZE_LGPL"]=" 1" +D["GNULIB_TEST_CANONICALIZE_FILE_NAME"]=" 1" +D["GNULIB_TEST_REALPATH"]=" 1" +D["GNULIB_TEST_CLOEXEC"]=" 1" +D["GNULIB_TEST_CLOSE"]=" 1" +D["GNULIB_TEST_DUP2"]=" 1" +D["GNULIB_TEST_ENVIRON"]=" 1" +D["GNULIB_TEST_FCNTL"]=" 1" +D["GNULIB_TEST_FREE_POSIX"]=" 1" +D["GNULIB_TEST_FSTAT"]=" 1" +D["GNULIB_TEST_GETDTABLESIZE"]=" 1" +D["HAVE_DECL_PROGRAM_INVOCATION_NAME"]=" 0" +D["HAVE_DECL_PROGRAM_INVOCATION_SHORT_NAME"]=" 0" +D["HAVE_DECL___ARGV"]=" 0" +D["HAVE_VAR___PROGNAME"]=" 1" +D["HAVE_VISIBILITY"]=" 1" +D["HAVE___INLINE"]=" 1" +D["GNULIB_TEST_MALLOC_POSIX"]=" 1" +D["HAVE_MBSTATE_T"]=" 1" +D["GNULIB_TEST_MEMPCPY"]=" 1" +D["GNULIB_MSVC_NOTHROW"]=" 1" +D["OPEN_TRAILING_SLASH_BUG"]=" 1" +D["GNULIB_TEST_OPEN"]=" 1" +D["HAVE_DECL_PROGRAM_INVOCATION_NAME"]=" 0" +D["HAVE_DECL_PROGRAM_INVOCATION_SHORT_NAME"]=" 0" +D["HAVE_RAISE"]=" 1" +D["GNULIB_TEST_RAISE"]=" 1" +D["GNULIB_TEST_RAWMEMCHR"]=" 1" +D["GNULIB_TEST_READ"]=" 1" +D["READLINK_TRAILING_SLASH_BUG"]=" 1" +D["GNULIB_TEST_READLINK"]=" 1" +D["GNULIB_TEST_REALLOC_POSIX"]=" 1" +D["HAVE_GETCWD"]=" 1" +D["HAVE_MALLOC_POSIX"]=" 1" +D["HAVE_SEARCH_H"]=" 1" +D["HAVE_TSEARCH"]=" 1" +D["GNULIB_SIGPIPE"]=" 1" +D["GNULIB_TEST_SIGPROCMASK"]=" 1" +D["REPLACE_FUNC_STAT_FILE"]=" 1" +D["GNULIB_TEST_STAT"]=" 1" +D["HAVE_STRUCT_STAT_ST_ATIMESPEC_TV_NSEC"]=" 1" +D["HAVE_STRUCT_STAT_ST_BIRTHTIMESPEC_TV_NSEC"]=" 1" +D["GNULIB_TEST_FSCANF"]=" 1" +D["GNULIB_FSCANF"]=" 1" +D["GNULIB_TEST_SCANF"]=" 1" +D["GNULIB_SCANF"]=" 1" +D["GNULIB_TEST_FGETC"]=" 1" +D["GNULIB_TEST_GETC"]=" 1" +D["GNULIB_TEST_GETCHAR"]=" 1" +D["GNULIB_TEST_FGETS"]=" 1" +D["GNULIB_TEST_FREAD"]=" 1" +D["GNULIB_TEST_FPRINTF"]=" 1" +D["GNULIB_TEST_PRINTF"]=" 1" +D["GNULIB_TEST_VFPRINTF"]=" 1" +D["GNULIB_TEST_VPRINTF"]=" 1" +D["GNULIB_TEST_FPUTC"]=" 1" +D["GNULIB_TEST_PUTC"]=" 1" +D["GNULIB_TEST_PUTCHAR"]=" 1" +D["GNULIB_TEST_FPUTS"]=" 1" +D["GNULIB_TEST_PUTS"]=" 1" +D["GNULIB_TEST_FWRITE"]=" 1" +D["GNULIB_STRERROR"]=" 1" +D["GNULIB_TEST_STRERROR"]=" 1" +D["GNULIB_STDIO_SINGLE_THREAD"]=" 1" +D["USE_UNLOCKED_IO"]=" GNULIB_STDIO_SINGLE_THREAD" +D["HAVE_C_VARARRAYS"]=" 1" + for (key in D) D_is_set[key] = 1 + FS = "" +} +/^[\t ]*#[\t ]*(define|undef)[\t ]+[_abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ][_abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789]*([\t (]|$)/ { + line = $ 0 + split(line, arg, " ") + if (arg[1] == "#") { + defundef = arg[2] + mac1 = arg[3] + } else { + defundef = substr(arg[1], 2) + mac1 = arg[2] + } + split(mac1, mac2, "(") #) + macro = mac2[1] + prefix = substr(line, 1, index(line, defundef) - 1) + if (D_is_set[macro]) { + # Preserve the white space surrounding the "#". + print prefix "define", macro P[macro] D[macro] + next + } else { + # Replace #undef with comments. This is necessary, for example, + # in the case of _POSIX_SOURCE, which is predefined and required + # on some systems where configure will not decide to define it. + if (defundef == "undef") { + print "/*", prefix defundef, macro, "*/" + next + } + } +} +{ print } +_ACAWK + as_fn_error $? "could not setup config headers machinery" "$LINENO" 5 +fi # test -n "$CONFIG_HEADERS" + + +eval set X " :F $CONFIG_FILES :H $CONFIG_HEADERS :C $CONFIG_COMMANDS" +shift +for ac_tag +do + case $ac_tag in + :[FHLC]) ac_mode=$ac_tag; continue;; + esac + case $ac_mode$ac_tag in + :[FHL]*:*);; + :L* | :C*:*) as_fn_error $? "invalid tag \`$ac_tag'" "$LINENO" 5;; + :[FH]-) ac_tag=-:-;; + :[FH]*) ac_tag=$ac_tag:$ac_tag.in;; + esac + ac_save_IFS=$IFS + IFS=: + set x $ac_tag + IFS=$ac_save_IFS + shift + ac_file=$1 + shift + + case $ac_mode in + :L) ac_source=$1;; + :[FH]) + ac_file_inputs= + for ac_f + do + case $ac_f in + -) ac_f="$ac_tmp/stdin";; + *) # Look for the file first in the build tree, then in the source tree + # (if the path is not absolute). The absolute path cannot be DOS-style, + # because $ac_f cannot contain `:'. + test -f "$ac_f" || + case $ac_f in + [\\/$]*) false;; + *) test -f "$srcdir/$ac_f" && ac_f="$srcdir/$ac_f";; + esac || + as_fn_error 1 "cannot find input file: \`$ac_f'" "$LINENO" 5;; + esac + case $ac_f in *\'*) ac_f=`printf "%s\n" "$ac_f" | sed "s/'/'\\\\\\\\''/g"`;; esac + as_fn_append ac_file_inputs " '$ac_f'" + done + + # Let's still pretend it is `configure' which instantiates (i.e., don't + # use $as_me), people would be surprised to read: + # /* config.h. Generated by config.status. */ + configure_input='Generated from '` + printf "%s\n" "$*" | sed 's|^[^:]*/||;s|:[^:]*/|, |g' + `' by configure.' + if test x"$ac_file" != x-; then + configure_input="$ac_file. $configure_input" + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: creating $ac_file" >&5 +printf "%s\n" "$as_me: creating $ac_file" >&6;} + fi + # Neutralize special characters interpreted by sed in replacement strings. + case $configure_input in #( + *\&* | *\|* | *\\* ) + ac_sed_conf_input=`printf "%s\n" "$configure_input" | + sed 's/[\\\\&|]/\\\\&/g'`;; #( + *) ac_sed_conf_input=$configure_input;; + esac + + case $ac_tag in + *:-:* | *:-) cat >"$ac_tmp/stdin" \ + || as_fn_error $? "could not create $ac_file" "$LINENO" 5 ;; + esac + ;; + esac + + ac_dir=`$as_dirname -- "$ac_file" || +$as_expr X"$ac_file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ + X"$ac_file" : 'X\(//\)[^/]' \| \ + X"$ac_file" : 'X\(//\)$' \| \ + X"$ac_file" : 'X\(/\)' \| . 2>/dev/null || +printf "%s\n" X"$ac_file" | + sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ + s//\1/ + q + } + /^X\(\/\/\)[^/].*/{ + s//\1/ + q + } + /^X\(\/\/\)$/{ + s//\1/ + q + } + /^X\(\/\).*/{ + s//\1/ + q + } + s/.*/./; q'` + as_dir="$ac_dir"; as_fn_mkdir_p + ac_builddir=. + +case "$ac_dir" in +.) ac_dir_suffix= ac_top_builddir_sub=. ac_top_build_prefix= ;; +*) + ac_dir_suffix=/`printf "%s\n" "$ac_dir" | sed 's|^\.[\\/]||'` + # A ".." for each directory in $ac_dir_suffix. + ac_top_builddir_sub=`printf "%s\n" "$ac_dir_suffix" | sed 's|/[^\\/]*|/..|g;s|/||'` + case $ac_top_builddir_sub in + "") ac_top_builddir_sub=. ac_top_build_prefix= ;; + *) ac_top_build_prefix=$ac_top_builddir_sub/ ;; + esac ;; +esac +ac_abs_top_builddir=$ac_pwd +ac_abs_builddir=$ac_pwd$ac_dir_suffix +# for backward compatibility: +ac_top_builddir=$ac_top_build_prefix + +case $srcdir in + .) # We are building in place. + ac_srcdir=. + ac_top_srcdir=$ac_top_builddir_sub + ac_abs_top_srcdir=$ac_pwd ;; + [\\/]* | ?:[\\/]* ) # Absolute name. + ac_srcdir=$srcdir$ac_dir_suffix; + ac_top_srcdir=$srcdir + ac_abs_top_srcdir=$srcdir ;; + *) # Relative name. + ac_srcdir=$ac_top_build_prefix$srcdir$ac_dir_suffix + ac_top_srcdir=$ac_top_build_prefix$srcdir + ac_abs_top_srcdir=$ac_pwd/$srcdir ;; +esac +ac_abs_srcdir=$ac_abs_top_srcdir$ac_dir_suffix + + + case $ac_mode in + :F) + # + # CONFIG_FILE + # + + case $INSTALL in + [\\/$]* | ?:[\\/]* ) ac_INSTALL=$INSTALL ;; + *) ac_INSTALL=$ac_top_build_prefix$INSTALL ;; + esac + ac_MKDIR_P=$MKDIR_P + case $MKDIR_P in + [\\/$]* | ?:[\\/]* ) ;; + */*) ac_MKDIR_P=$ac_top_build_prefix$MKDIR_P ;; + esac +# If the template does not know about datarootdir, expand it. +# FIXME: This hack should be removed a few years after 2.60. +ac_datarootdir_hack=; ac_datarootdir_seen= +ac_sed_dataroot=' +/datarootdir/ { + p + q +} +/@datadir@/p +/@docdir@/p +/@infodir@/p +/@localedir@/p +/@mandir@/p' +case `eval "sed -n \"\$ac_sed_dataroot\" $ac_file_inputs"` in +*datarootdir*) ac_datarootdir_seen=yes;; +*@datadir@*|*@docdir@*|*@infodir@*|*@localedir@*|*@mandir@*) + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&5 +printf "%s\n" "$as_me: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&2;} + ac_datarootdir_hack=' + s&@datadir@&${datarootdir}&g + s&@docdir@&${datarootdir}/doc/${PACKAGE_TARNAME}&g + s&@infodir@&${datarootdir}/info&g + s&@localedir@&${datarootdir}/locale&g + s&@mandir@&${datarootdir}/man&g + s&\${datarootdir}&${prefix}/share&g' ;; +esac +ac_sed_extra="/^[ ]*VPATH[ ]*=[ ]*/{ +h +s/// +s/^/:/ +s/[ ]*$/:/ +s/:\$(srcdir):/:/g +s/:\${srcdir}:/:/g +s/:@srcdir@:/:/g +s/^:*// +s/:*$// +x +s/\(=[ ]*\).*/\1/ +G +s/\n// +s/^[^=]*=[ ]*$// +} + +:t +/@[a-zA-Z_][a-zA-Z_0-9]*@/!b +s|@configure_input@|$ac_sed_conf_input|;t t +s&@top_builddir@&$ac_top_builddir_sub&;t t +s&@top_build_prefix@&$ac_top_build_prefix&;t t +s&@srcdir@&$ac_srcdir&;t t +s&@abs_srcdir@&$ac_abs_srcdir&;t t +s&@top_srcdir@&$ac_top_srcdir&;t t +s&@abs_top_srcdir@&$ac_abs_top_srcdir&;t t +s&@builddir@&$ac_builddir&;t t +s&@abs_builddir@&$ac_abs_builddir&;t t +s&@abs_top_builddir@&$ac_abs_top_builddir&;t t +s&@INSTALL@&$ac_INSTALL&;t t +s&@MKDIR_P@&$ac_MKDIR_P&;t t +$ac_datarootdir_hack +" +eval sed \"\$ac_sed_extra\" "$ac_file_inputs" | $AWK -f "$ac_tmp/subs.awk" \ + >$ac_tmp/out || as_fn_error $? "could not create $ac_file" "$LINENO" 5 + +test -z "$ac_datarootdir_hack$ac_datarootdir_seen" && + { ac_out=`sed -n '/\${datarootdir}/p' "$ac_tmp/out"`; test -n "$ac_out"; } && + { ac_out=`sed -n '/^[ ]*datarootdir[ ]*:*=/p' \ + "$ac_tmp/out"`; test -z "$ac_out"; } && + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: $ac_file contains a reference to the variable \`datarootdir' +which seems to be undefined. Please make sure it is defined" >&5 +printf "%s\n" "$as_me: WARNING: $ac_file contains a reference to the variable \`datarootdir' +which seems to be undefined. Please make sure it is defined" >&2;} + + rm -f "$ac_tmp/stdin" + case $ac_file in + -) cat "$ac_tmp/out" && rm -f "$ac_tmp/out";; + *) rm -f "$ac_file" && mv "$ac_tmp/out" "$ac_file";; + esac \ + || as_fn_error $? "could not create $ac_file" "$LINENO" 5 + ;; + :H) + # + # CONFIG_HEADER + # + if test x"$ac_file" != x-; then + { + printf "%s\n" "/* $configure_input */" >&1 \ + && eval '$AWK -f "$ac_tmp/defines.awk"' "$ac_file_inputs" + } >"$ac_tmp/config.h" \ + || as_fn_error $? "could not create $ac_file" "$LINENO" 5 + if diff "$ac_file" "$ac_tmp/config.h" >/dev/null 2>&1; then + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: $ac_file is unchanged" >&5 +printf "%s\n" "$as_me: $ac_file is unchanged" >&6;} + else + rm -f "$ac_file" + mv "$ac_tmp/config.h" "$ac_file" \ + || as_fn_error $? "could not create $ac_file" "$LINENO" 5 + fi + else + printf "%s\n" "/* $configure_input */" >&1 \ + && eval '$AWK -f "$ac_tmp/defines.awk"' "$ac_file_inputs" \ + || as_fn_error $? "could not create -" "$LINENO" 5 + fi +# Compute "$ac_file"'s index in $config_headers. +_am_arg="$ac_file" +_am_stamp_count=1 +for _am_header in $config_headers :; do + case $_am_header in + $_am_arg | $_am_arg:* ) + break ;; + * ) + _am_stamp_count=`expr $_am_stamp_count + 1` ;; + esac +done +echo "timestamp for $_am_arg" >`$as_dirname -- "$_am_arg" || +$as_expr X"$_am_arg" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ + X"$_am_arg" : 'X\(//\)[^/]' \| \ + X"$_am_arg" : 'X\(//\)$' \| \ + X"$_am_arg" : 'X\(/\)' \| . 2>/dev/null || +printf "%s\n" X"$_am_arg" | + sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ + s//\1/ + q + } + /^X\(\/\/\)[^/].*/{ + s//\1/ + q + } + /^X\(\/\/\)$/{ + s//\1/ + q + } + /^X\(\/\).*/{ + s//\1/ + q + } + s/.*/./; q'`/stamp-h$_am_stamp_count + ;; + + :C) { printf "%s\n" "$as_me:${as_lineno-$LINENO}: executing $ac_file commands" >&5 +printf "%s\n" "$as_me: executing $ac_file commands" >&6;} + ;; + esac + + + case $ac_file$ac_mode in + "depfiles":C) test x"$AMDEP_TRUE" != x"" || { + # Older Autoconf quotes --file arguments for eval, but not when files + # are listed without --file. Let's play safe and only enable the eval + # if we detect the quoting. + # TODO: see whether this extra hack can be removed once we start + # requiring Autoconf 2.70 or later. + case $CONFIG_FILES in #( + *\'*) : + eval set x "$CONFIG_FILES" ;; #( + *) : + set x $CONFIG_FILES ;; #( + *) : + ;; +esac + shift + # Used to flag and report bootstrapping failures. + am_rc=0 + for am_mf + do + # Strip MF so we end up with the name of the file. + am_mf=`printf "%s\n" "$am_mf" | sed -e 's/:.*$//'` + # Check whether this is an Automake generated Makefile which includes + # dependency-tracking related rules and includes. + # Grep'ing the whole file directly is not great: AIX grep has a line + # limit of 2048, but all sed's we know have understand at least 4000. + sed -n 's,^am--depfiles:.*,X,p' "$am_mf" | grep X >/dev/null 2>&1 \ + || continue + am_dirpart=`$as_dirname -- "$am_mf" || +$as_expr X"$am_mf" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ + X"$am_mf" : 'X\(//\)[^/]' \| \ + X"$am_mf" : 'X\(//\)$' \| \ + X"$am_mf" : 'X\(/\)' \| . 2>/dev/null || +printf "%s\n" X"$am_mf" | + sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ + s//\1/ + q + } + /^X\(\/\/\)[^/].*/{ + s//\1/ + q + } + /^X\(\/\/\)$/{ + s//\1/ + q + } + /^X\(\/\).*/{ + s//\1/ + q + } + s/.*/./; q'` + am_filepart=`$as_basename -- "$am_mf" || +$as_expr X/"$am_mf" : '.*/\([^/][^/]*\)/*$' \| \ + X"$am_mf" : 'X\(//\)$' \| \ + X"$am_mf" : 'X\(/\)' \| . 2>/dev/null || +printf "%s\n" X/"$am_mf" | + sed '/^.*\/\([^/][^/]*\)\/*$/{ + s//\1/ + q + } + /^X\/\(\/\/\)$/{ + s//\1/ + q + } + /^X\/\(\/\).*/{ + s//\1/ + q + } + s/.*/./; q'` + { echo "$as_me:$LINENO: cd "$am_dirpart" \ + && sed -e '/# am--include-marker/d' "$am_filepart" \ + | $MAKE -f - am--depfiles" >&5 + (cd "$am_dirpart" \ + && sed -e '/# am--include-marker/d' "$am_filepart" \ + | $MAKE -f - am--depfiles) >&5 2>&5 + ac_status=$? + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } || am_rc=$? + done + if test $am_rc -ne 0; then + { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 +printf "%s\n" "$as_me: error: in \`$ac_pwd':" >&2;} +as_fn_error $? "Something went wrong bootstrapping makefile fragments + for automatic dependency tracking. If GNU make was not used, consider + re-running the configure script with MAKE=\"gmake\" (or whatever is + necessary). You can also try re-running configure with the + '--disable-dependency-tracking' option to at least be able to build + the package (albeit without support for automatic dependency tracking). +See \`config.log' for more details" "$LINENO" 5; } + fi + { am_dirpart=; unset am_dirpart;} + { am_filepart=; unset am_filepart;} + { am_mf=; unset am_mf;} + { am_rc=; unset am_rc;} + rm -f conftest-deps.mk +} + ;; + "libtool":C) + + # See if we are running on zsh, and set the options that allow our + # commands through without removal of \ escapes. + if test -n "${ZSH_VERSION+set}"; then + setopt NO_GLOB_SUBST + fi + + cfgfile=${ofile}T + trap "$RM \"$cfgfile\"; exit 1" 1 2 15 + $RM "$cfgfile" + + cat <<_LT_EOF >> "$cfgfile" +#! $SHELL +# Generated automatically by $as_me ($PACKAGE) $VERSION +# Libtool was configured on host `(hostname || uname -n) 2>/dev/null | sed 1q`: +# NOTE: Changes made to this file will be lost: look at ltmain.sh. + +# Provide generalized library-building support services. +# Written by Gordon Matzigkeit, 1996 + +# Copyright (C) 2014 Free Software Foundation, Inc. +# This is free software; see the source for copying conditions. There is NO +# warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. + +# GNU Libtool is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of of the License, or +# (at your option) any later version. +# +# As a special exception to the GNU General Public License, if you +# distribute this file as part of a program or library that is built +# using GNU Libtool, you may include this file under the same +# distribution terms that you use for the rest of that program. +# +# GNU Libtool is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . + + +# The names of the tagged configurations supported by this script. +available_tags='RC ' + +# Configured defaults for sys_lib_dlsearch_path munging. +: \${LT_SYS_LIBRARY_PATH="$configure_time_lt_sys_library_path"} + +# ### BEGIN LIBTOOL CONFIG + +# Which release of libtool.m4 was used? +macro_version=$macro_version +macro_revision=$macro_revision + +# Whether or not to build static libraries. +build_old_libs=$enable_static + +# Assembler program. +AS=$lt_AS + +# DLL creation program. +DLLTOOL=$lt_DLLTOOL + +# Object dumper program. +OBJDUMP=$lt_OBJDUMP + +# Whether or not to build shared libraries. +build_libtool_libs=$enable_shared + +# What type of objects to build. +pic_mode=$pic_mode + +# Whether or not to optimize for fast installation. +fast_install=$enable_fast_install + +# Shared archive member basename,for filename based shared library versioning on AIX. +shared_archive_member_spec=$shared_archive_member_spec + +# Shell to use when invoking shell scripts. +SHELL=$lt_SHELL + +# An echo program that protects backslashes. +ECHO=$lt_ECHO + +# The PATH separator for the build system. +PATH_SEPARATOR=$lt_PATH_SEPARATOR + +# The host system. +host_alias=$host_alias +host=$host +host_os=$host_os + +# The build system. +build_alias=$build_alias +build=$build +build_os=$build_os + +# A sed program that does not truncate output. +SED=$lt_SED + +# Sed that helps us avoid accidentally triggering echo(1) options like -n. +Xsed="\$SED -e 1s/^X//" + +# A grep program that handles long lines. +GREP=$lt_GREP + +# An ERE matcher. +EGREP=$lt_EGREP + +# A literal string matcher. +FGREP=$lt_FGREP + +# A BSD- or MS-compatible name lister. +NM=$lt_NM + +# Whether we need soft or hard links. +LN_S=$lt_LN_S + +# What is the maximum length of a command? +max_cmd_len=$max_cmd_len + +# Object file suffix (normally "o"). +objext=$ac_objext + +# Executable file suffix (normally ""). +exeext=$exeext + +# whether the shell understands "unset". +lt_unset=$lt_unset + +# turn spaces into newlines. +SP2NL=$lt_lt_SP2NL + +# turn newlines into spaces. +NL2SP=$lt_lt_NL2SP + +# convert \$build file names to \$host format. +to_host_file_cmd=$lt_cv_to_host_file_cmd + +# convert \$build files to toolchain format. +to_tool_file_cmd=$lt_cv_to_tool_file_cmd + +# A file(cmd) program that detects file types. +FILECMD=$lt_FILECMD + +# Method to check whether dependent libraries are shared objects. +deplibs_check_method=$lt_deplibs_check_method + +# Command to use when deplibs_check_method = "file_magic". +file_magic_cmd=$lt_file_magic_cmd + +# How to find potential files when deplibs_check_method = "file_magic". +file_magic_glob=$lt_file_magic_glob + +# Find potential files using nocaseglob when deplibs_check_method = "file_magic". +want_nocaseglob=$lt_want_nocaseglob + +# Command to associate shared and link libraries. +sharedlib_from_linklib_cmd=$lt_sharedlib_from_linklib_cmd + +# The archiver. +AR=$lt_AR + +# Flags to create an archive (by configure). +lt_ar_flags=$lt_ar_flags + +# Flags to create an archive. +AR_FLAGS=\${ARFLAGS-"\$lt_ar_flags"} + +# How to feed a file listing to the archiver. +archiver_list_spec=$lt_archiver_list_spec + +# A symbol stripping program. +STRIP=$lt_STRIP + +# Commands used to install an old-style archive. +RANLIB=$lt_RANLIB +old_postinstall_cmds=$lt_old_postinstall_cmds +old_postuninstall_cmds=$lt_old_postuninstall_cmds + +# Whether to use a lock for old archive extraction. +lock_old_archive_extraction=$lock_old_archive_extraction + +# A C compiler. +LTCC=$lt_CC + +# LTCC compiler flags. +LTCFLAGS=$lt_CFLAGS + +# Take the output of nm and produce a listing of raw symbols and C names. +global_symbol_pipe=$lt_lt_cv_sys_global_symbol_pipe + +# Transform the output of nm in a proper C declaration. +global_symbol_to_cdecl=$lt_lt_cv_sys_global_symbol_to_cdecl + +# Transform the output of nm into a list of symbols to manually relocate. +global_symbol_to_import=$lt_lt_cv_sys_global_symbol_to_import + +# Transform the output of nm in a C name address pair. +global_symbol_to_c_name_address=$lt_lt_cv_sys_global_symbol_to_c_name_address + +# Transform the output of nm in a C name address pair when lib prefix is needed. +global_symbol_to_c_name_address_lib_prefix=$lt_lt_cv_sys_global_symbol_to_c_name_address_lib_prefix + +# The name lister interface. +nm_interface=$lt_lt_cv_nm_interface + +# Specify filename containing input files for \$NM. +nm_file_list_spec=$lt_nm_file_list_spec + +# The root where to search for dependent libraries,and where our libraries should be installed. +lt_sysroot=$lt_sysroot + +# Command to truncate a binary pipe. +lt_truncate_bin=$lt_lt_cv_truncate_bin + +# The name of the directory that contains temporary libtool files. +objdir=$objdir + +# Used to examine libraries when file_magic_cmd begins with "file". +MAGIC_CMD=$MAGIC_CMD + +# Must we lock files when doing compilation? +need_locks=$lt_need_locks + +# Manifest tool. +MANIFEST_TOOL=$lt_MANIFEST_TOOL + +# Tool to manipulate archived DWARF debug symbol files on Mac OS X. +DSYMUTIL=$lt_DSYMUTIL + +# Tool to change global to local symbols on Mac OS X. +NMEDIT=$lt_NMEDIT + +# Tool to manipulate fat objects and archives on Mac OS X. +LIPO=$lt_LIPO + +# ldd/readelf like tool for Mach-O binaries on Mac OS X. +OTOOL=$lt_OTOOL + +# ldd/readelf like tool for 64 bit Mach-O binaries on Mac OS X 10.4. +OTOOL64=$lt_OTOOL64 + +# Old archive suffix (normally "a"). +libext=$libext + +# Shared library suffix (normally ".so"). +shrext_cmds=$lt_shrext_cmds + +# The commands to extract the exported symbol list from a shared archive. +extract_expsyms_cmds=$lt_extract_expsyms_cmds + +# Variables whose values should be saved in libtool wrapper scripts and +# restored at link time. +variables_saved_for_relink=$lt_variables_saved_for_relink + +# Do we need the "lib" prefix for modules? +need_lib_prefix=$need_lib_prefix + +# Do we need a version for libraries? +need_version=$need_version + +# Library versioning type. +version_type=$version_type + +# Shared library runtime path variable. +runpath_var=$runpath_var + +# Shared library path variable. +shlibpath_var=$shlibpath_var + +# Is shlibpath searched before the hard-coded library search path? +shlibpath_overrides_runpath=$shlibpath_overrides_runpath + +# Format of library name prefix. +libname_spec=$lt_libname_spec + +# List of archive names. First name is the real one, the rest are links. +# The last name is the one that the linker finds with -lNAME +library_names_spec=$lt_library_names_spec + +# The coded name of the library, if different from the real name. +soname_spec=$lt_soname_spec + +# Permission mode override for installation of shared libraries. +install_override_mode=$lt_install_override_mode + +# Command to use after installation of a shared archive. +postinstall_cmds=$lt_postinstall_cmds + +# Command to use after uninstallation of a shared archive. +postuninstall_cmds=$lt_postuninstall_cmds + +# Commands used to finish a libtool library installation in a directory. +finish_cmds=$lt_finish_cmds + +# As "finish_cmds", except a single script fragment to be evaled but +# not shown. +finish_eval=$lt_finish_eval + +# Whether we should hardcode library paths into libraries. +hardcode_into_libs=$hardcode_into_libs + +# Compile-time system search path for libraries. +sys_lib_search_path_spec=$lt_sys_lib_search_path_spec + +# Detected run-time system search path for libraries. +sys_lib_dlsearch_path_spec=$lt_configure_time_dlsearch_path + +# Explicit LT_SYS_LIBRARY_PATH set during ./configure time. +configure_time_lt_sys_library_path=$lt_configure_time_lt_sys_library_path + +# Whether dlopen is supported. +dlopen_support=$enable_dlopen + +# Whether dlopen of programs is supported. +dlopen_self=$enable_dlopen_self + +# Whether dlopen of statically linked programs is supported. +dlopen_self_static=$enable_dlopen_self_static + +# Commands to strip libraries. +old_striplib=$lt_old_striplib +striplib=$lt_striplib + + +# The linker used to build libraries. +LD=$lt_LD + +# How to create reloadable object files. +reload_flag=$lt_reload_flag +reload_cmds=$lt_reload_cmds + +# Commands used to build an old-style archive. +old_archive_cmds=$lt_old_archive_cmds + +# A language specific compiler. +CC=$lt_compiler + +# Is the compiler the GNU compiler? +with_gcc=$GCC + +# Compiler flag to turn off builtin functions. +no_builtin_flag=$lt_lt_prog_compiler_no_builtin_flag + +# Additional compiler flags for building library objects. +pic_flag=$lt_lt_prog_compiler_pic + +# How to pass a linker flag through the compiler. +wl=$lt_lt_prog_compiler_wl + +# Compiler flag to prevent dynamic linking. +link_static_flag=$lt_lt_prog_compiler_static + +# Does compiler simultaneously support -c and -o options? +compiler_c_o=$lt_lt_cv_prog_compiler_c_o + +# Whether or not to add -lc for building shared libraries. +build_libtool_need_lc=$archive_cmds_need_lc + +# Whether or not to disallow shared libs when runtime libs are static. +allow_libtool_libs_with_static_runtimes=$enable_shared_with_static_runtimes + +# Compiler flag to allow reflexive dlopens. +export_dynamic_flag_spec=$lt_export_dynamic_flag_spec + +# Compiler flag to generate shared objects directly from archives. +whole_archive_flag_spec=$lt_whole_archive_flag_spec + +# Whether the compiler copes with passing no objects directly. +compiler_needs_object=$lt_compiler_needs_object + +# Create an old-style archive from a shared archive. +old_archive_from_new_cmds=$lt_old_archive_from_new_cmds + +# Create a temporary old-style archive to link instead of a shared archive. +old_archive_from_expsyms_cmds=$lt_old_archive_from_expsyms_cmds + +# Commands used to build a shared archive. +archive_cmds=$lt_archive_cmds +archive_expsym_cmds=$lt_archive_expsym_cmds + +# Commands used to build a loadable module if different from building +# a shared archive. +module_cmds=$lt_module_cmds +module_expsym_cmds=$lt_module_expsym_cmds + +# Whether we are building with GNU ld or not. +with_gnu_ld=$lt_with_gnu_ld + +# Flag that allows shared libraries with undefined symbols to be built. +allow_undefined_flag=$lt_allow_undefined_flag + +# Flag that enforces no undefined symbols. +no_undefined_flag=$lt_no_undefined_flag + +# Flag to hardcode \$libdir into a binary during linking. +# This must work even if \$libdir does not exist +hardcode_libdir_flag_spec=$lt_hardcode_libdir_flag_spec + +# Whether we need a single "-rpath" flag with a separated argument. +hardcode_libdir_separator=$lt_hardcode_libdir_separator + +# Set to "yes" if using DIR/libNAME\$shared_ext during linking hardcodes +# DIR into the resulting binary. +hardcode_direct=$hardcode_direct + +# Set to "yes" if using DIR/libNAME\$shared_ext during linking hardcodes +# DIR into the resulting binary and the resulting library dependency is +# "absolute",i.e impossible to change by setting \$shlibpath_var if the +# library is relocated. +hardcode_direct_absolute=$hardcode_direct_absolute + +# Set to "yes" if using the -LDIR flag during linking hardcodes DIR +# into the resulting binary. +hardcode_minus_L=$hardcode_minus_L + +# Set to "yes" if using SHLIBPATH_VAR=DIR during linking hardcodes DIR +# into the resulting binary. +hardcode_shlibpath_var=$hardcode_shlibpath_var + +# Set to "yes" if building a shared library automatically hardcodes DIR +# into the library and all subsequent libraries and executables linked +# against it. +hardcode_automatic=$hardcode_automatic + +# Set to yes if linker adds runtime paths of dependent libraries +# to runtime path list. +inherit_rpath=$inherit_rpath + +# Whether libtool must link a program against all its dependency libraries. +link_all_deplibs=$link_all_deplibs + +# Set to "yes" if exported symbols are required. +always_export_symbols=$always_export_symbols + +# The commands to list exported symbols. +export_symbols_cmds=$lt_export_symbols_cmds + +# Symbols that should not be listed in the preloaded symbols. +exclude_expsyms=$lt_exclude_expsyms + +# Symbols that must always be exported. +include_expsyms=$lt_include_expsyms + +# Commands necessary for linking programs (against libraries) with templates. +prelink_cmds=$lt_prelink_cmds + +# Commands necessary for finishing linking programs. +postlink_cmds=$lt_postlink_cmds + +# Specify filename containing input files. +file_list_spec=$lt_file_list_spec + +# How to hardcode a shared library path into an executable. +hardcode_action=$hardcode_action + +# ### END LIBTOOL CONFIG + +_LT_EOF + + cat <<'_LT_EOF' >> "$cfgfile" + +# ### BEGIN FUNCTIONS SHARED WITH CONFIGURE + +# func_munge_path_list VARIABLE PATH +# ----------------------------------- +# VARIABLE is name of variable containing _space_ separated list of +# directories to be munged by the contents of PATH, which is string +# having a format: +# "DIR[:DIR]:" +# string "DIR[ DIR]" will be prepended to VARIABLE +# ":DIR[:DIR]" +# string "DIR[ DIR]" will be appended to VARIABLE +# "DIRP[:DIRP]::[DIRA:]DIRA" +# string "DIRP[ DIRP]" will be prepended to VARIABLE and string +# "DIRA[ DIRA]" will be appended to VARIABLE +# "DIR[:DIR]" +# VARIABLE will be replaced by "DIR[ DIR]" +func_munge_path_list () +{ + case x$2 in + x) + ;; + *:) + eval $1=\"`$ECHO $2 | $SED 's/:/ /g'` \$$1\" + ;; + x:*) + eval $1=\"\$$1 `$ECHO $2 | $SED 's/:/ /g'`\" + ;; + *::*) + eval $1=\"\$$1\ `$ECHO $2 | $SED -e 's/.*:://' -e 's/:/ /g'`\" + eval $1=\"`$ECHO $2 | $SED -e 's/::.*//' -e 's/:/ /g'`\ \$$1\" + ;; + *) + eval $1=\"`$ECHO $2 | $SED 's/:/ /g'`\" + ;; + esac +} + + +# Calculate cc_basename. Skip known compiler wrappers and cross-prefix. +func_cc_basename () +{ + for cc_temp in $*""; do + case $cc_temp in + compile | *[\\/]compile | ccache | *[\\/]ccache ) ;; + distcc | *[\\/]distcc | purify | *[\\/]purify ) ;; + \-*) ;; + *) break;; + esac + done + func_cc_basename_result=`$ECHO "$cc_temp" | $SED "s%.*/%%; s%^$host_alias-%%"` +} + + +# ### END FUNCTIONS SHARED WITH CONFIGURE + +_LT_EOF + + case $host_os in + aix3*) + cat <<\_LT_EOF >> "$cfgfile" +# AIX sometimes has problems with the GCC collect2 program. For some +# reason, if we set the COLLECT_NAMES environment variable, the problems +# vanish in a puff of smoke. +if test set != "${COLLECT_NAMES+set}"; then + COLLECT_NAMES= + export COLLECT_NAMES +fi +_LT_EOF + ;; + esac + + + +ltmain=$ac_aux_dir/ltmain.sh + + + # We use sed instead of cat because bash on DJGPP gets confused if + # if finds mixed CR/LF and LF-only lines. Since sed operates in + # text mode, it properly converts lines to CR/LF. This bash problem + # is reportedly fixed, but why not run on old versions too? + $SED '$q' "$ltmain" >> "$cfgfile" \ + || (rm -f "$cfgfile"; exit 1) + + mv -f "$cfgfile" "$ofile" || + (rm -f "$ofile" && cp "$cfgfile" "$ofile" && rm -f "$cfgfile") + chmod +x "$ofile" + + + cat <<_LT_EOF >> "$ofile" + +# ### BEGIN LIBTOOL TAG CONFIG: RC + +# The linker used to build libraries. +LD=$lt_LD_RC + +# How to create reloadable object files. +reload_flag=$lt_reload_flag_RC +reload_cmds=$lt_reload_cmds_RC + +# Commands used to build an old-style archive. +old_archive_cmds=$lt_old_archive_cmds_RC + +# A language specific compiler. +CC=$lt_compiler_RC + +# Is the compiler the GNU compiler? +with_gcc=$GCC_RC + +# Compiler flag to turn off builtin functions. +no_builtin_flag=$lt_lt_prog_compiler_no_builtin_flag_RC + +# Additional compiler flags for building library objects. +pic_flag=$lt_lt_prog_compiler_pic_RC + +# How to pass a linker flag through the compiler. +wl=$lt_lt_prog_compiler_wl_RC + +# Compiler flag to prevent dynamic linking. +link_static_flag=$lt_lt_prog_compiler_static_RC + +# Does compiler simultaneously support -c and -o options? +compiler_c_o=$lt_lt_cv_prog_compiler_c_o_RC + +# Whether or not to add -lc for building shared libraries. +build_libtool_need_lc=$archive_cmds_need_lc_RC + +# Whether or not to disallow shared libs when runtime libs are static. +allow_libtool_libs_with_static_runtimes=$enable_shared_with_static_runtimes_RC + +# Compiler flag to allow reflexive dlopens. +export_dynamic_flag_spec=$lt_export_dynamic_flag_spec_RC + +# Compiler flag to generate shared objects directly from archives. +whole_archive_flag_spec=$lt_whole_archive_flag_spec_RC + +# Whether the compiler copes with passing no objects directly. +compiler_needs_object=$lt_compiler_needs_object_RC + +# Create an old-style archive from a shared archive. +old_archive_from_new_cmds=$lt_old_archive_from_new_cmds_RC + +# Create a temporary old-style archive to link instead of a shared archive. +old_archive_from_expsyms_cmds=$lt_old_archive_from_expsyms_cmds_RC + +# Commands used to build a shared archive. +archive_cmds=$lt_archive_cmds_RC +archive_expsym_cmds=$lt_archive_expsym_cmds_RC + +# Commands used to build a loadable module if different from building +# a shared archive. +module_cmds=$lt_module_cmds_RC +module_expsym_cmds=$lt_module_expsym_cmds_RC + +# Whether we are building with GNU ld or not. +with_gnu_ld=$lt_with_gnu_ld_RC + +# Flag that allows shared libraries with undefined symbols to be built. +allow_undefined_flag=$lt_allow_undefined_flag_RC + +# Flag that enforces no undefined symbols. +no_undefined_flag=$lt_no_undefined_flag_RC + +# Flag to hardcode \$libdir into a binary during linking. +# This must work even if \$libdir does not exist +hardcode_libdir_flag_spec=$lt_hardcode_libdir_flag_spec_RC + +# Whether we need a single "-rpath" flag with a separated argument. +hardcode_libdir_separator=$lt_hardcode_libdir_separator_RC + +# Set to "yes" if using DIR/libNAME\$shared_ext during linking hardcodes +# DIR into the resulting binary. +hardcode_direct=$hardcode_direct_RC + +# Set to "yes" if using DIR/libNAME\$shared_ext during linking hardcodes +# DIR into the resulting binary and the resulting library dependency is +# "absolute",i.e impossible to change by setting \$shlibpath_var if the +# library is relocated. +hardcode_direct_absolute=$hardcode_direct_absolute_RC + +# Set to "yes" if using the -LDIR flag during linking hardcodes DIR +# into the resulting binary. +hardcode_minus_L=$hardcode_minus_L_RC + +# Set to "yes" if using SHLIBPATH_VAR=DIR during linking hardcodes DIR +# into the resulting binary. +hardcode_shlibpath_var=$hardcode_shlibpath_var_RC + +# Set to "yes" if building a shared library automatically hardcodes DIR +# into the library and all subsequent libraries and executables linked +# against it. +hardcode_automatic=$hardcode_automatic_RC + +# Set to yes if linker adds runtime paths of dependent libraries +# to runtime path list. +inherit_rpath=$inherit_rpath_RC + +# Whether libtool must link a program against all its dependency libraries. +link_all_deplibs=$link_all_deplibs_RC + +# Set to "yes" if exported symbols are required. +always_export_symbols=$always_export_symbols_RC + +# The commands to list exported symbols. +export_symbols_cmds=$lt_export_symbols_cmds_RC + +# Symbols that should not be listed in the preloaded symbols. +exclude_expsyms=$lt_exclude_expsyms_RC + +# Symbols that must always be exported. +include_expsyms=$lt_include_expsyms_RC + +# Commands necessary for linking programs (against libraries) with templates. +prelink_cmds=$lt_prelink_cmds_RC + +# Commands necessary for finishing linking programs. +postlink_cmds=$lt_postlink_cmds_RC + +# Specify filename containing input files. +file_list_spec=$lt_file_list_spec_RC + +# How to hardcode a shared library path into an executable. +hardcode_action=$hardcode_action_RC + +# ### END LIBTOOL TAG CONFIG: RC +_LT_EOF + + ;; + "po-directories":C) + for ac_file in $CONFIG_FILES; do + # Support "outfile[:infile[:infile...]]" + case "$ac_file" in + *:*) ac_file=`echo "$ac_file"|sed 's%:.*%%'` ;; + esac + # PO directories have a Makefile.in generated from Makefile.in.in. + case "$ac_file" in */Makefile.in) + # Adjust a relative srcdir. + ac_dir=`echo "$ac_file"|sed 's%/[^/][^/]*$%%'` + ac_dir_suffix=/`echo "$ac_dir"|sed 's%^\./%%'` + ac_dots=`echo "$ac_dir_suffix"|sed 's%/[^/]*%../%g'` + # In autoconf-2.13 it is called $ac_given_srcdir. + # In autoconf-2.50 it is called $srcdir. + test -n "$ac_given_srcdir" || ac_given_srcdir="$srcdir" + case "$ac_given_srcdir" in + .) top_srcdir=`echo $ac_dots|sed 's%/$%%'` ;; + /*) top_srcdir="$ac_given_srcdir" ;; + *) top_srcdir="$ac_dots$ac_given_srcdir" ;; + esac + # Treat a directory as a PO directory if and only if it has a + # POTFILES.in file. This allows packages to have multiple PO + # directories under different names or in different locations. + if test -f "$ac_given_srcdir/$ac_dir/POTFILES.in"; then + rm -f "$ac_dir/POTFILES" + test -n "$as_me" && echo "$as_me: creating $ac_dir/POTFILES" || echo "creating $ac_dir/POTFILES" + gt_tab=`printf '\t'` + cat "$ac_given_srcdir/$ac_dir/POTFILES.in" | sed -e "/^#/d" -e "/^[ ${gt_tab}]*\$/d" -e "s,.*, $top_srcdir/& \\\\," | sed -e "\$s/\(.*\) \\\\/\1/" > "$ac_dir/POTFILES" + POMAKEFILEDEPS="POTFILES.in" + # ALL_LINGUAS, POFILES, UPDATEPOFILES, DUMMYPOFILES, GMOFILES depend + # on $ac_dir but don't depend on user-specified configuration + # parameters. + if test -f "$ac_given_srcdir/$ac_dir/LINGUAS"; then + # The LINGUAS file contains the set of available languages. + if test -n "$OBSOLETE_ALL_LINGUAS"; then + test -n "$as_me" && echo "$as_me: setting ALL_LINGUAS in configure.in is obsolete" || echo "setting ALL_LINGUAS in configure.in is obsolete" + fi + ALL_LINGUAS=`sed -e "/^#/d" -e "s/#.*//" "$ac_given_srcdir/$ac_dir/LINGUAS"` + POMAKEFILEDEPS="$POMAKEFILEDEPS LINGUAS" + else + # The set of available languages was given in configure.in. + ALL_LINGUAS=$OBSOLETE_ALL_LINGUAS + fi + # Compute POFILES + # as $(foreach lang, $(ALL_LINGUAS), $(srcdir)/$(lang).po) + # Compute UPDATEPOFILES + # as $(foreach lang, $(ALL_LINGUAS), $(lang).po-update) + # Compute DUMMYPOFILES + # as $(foreach lang, $(ALL_LINGUAS), $(lang).nop) + # Compute GMOFILES + # as $(foreach lang, $(ALL_LINGUAS), $(srcdir)/$(lang).gmo) + case "$ac_given_srcdir" in + .) srcdirpre= ;; + *) srcdirpre='$(srcdir)/' ;; + esac + POFILES= + UPDATEPOFILES= + DUMMYPOFILES= + GMOFILES= + for lang in $ALL_LINGUAS; do + POFILES="$POFILES $srcdirpre$lang.po" + UPDATEPOFILES="$UPDATEPOFILES $lang.po-update" + DUMMYPOFILES="$DUMMYPOFILES $lang.nop" + GMOFILES="$GMOFILES $srcdirpre$lang.gmo" + done + # CATALOGS depends on both $ac_dir and the user's LINGUAS + # environment variable. + INST_LINGUAS= + if test -n "$ALL_LINGUAS"; then + for presentlang in $ALL_LINGUAS; do + useit=no + if test "%UNSET%" != "$LINGUAS"; then + desiredlanguages="$LINGUAS" + else + desiredlanguages="$ALL_LINGUAS" + fi + for desiredlang in $desiredlanguages; do + # Use the presentlang catalog if desiredlang is + # a. equal to presentlang, or + # b. a variant of presentlang (because in this case, + # presentlang can be used as a fallback for messages + # which are not translated in the desiredlang catalog). + case "$desiredlang" in + "$presentlang"*) useit=yes;; + esac + done + if test $useit = yes; then + INST_LINGUAS="$INST_LINGUAS $presentlang" + fi + done + fi + CATALOGS= + if test -n "$INST_LINGUAS"; then + for lang in $INST_LINGUAS; do + CATALOGS="$CATALOGS $lang.gmo" + done + fi + test -n "$as_me" && echo "$as_me: creating $ac_dir/Makefile" || echo "creating $ac_dir/Makefile" + sed -e "/^POTFILES =/r $ac_dir/POTFILES" -e "/^# Makevars/r $ac_given_srcdir/$ac_dir/Makevars" -e "s|@POFILES@|$POFILES|g" -e "s|@UPDATEPOFILES@|$UPDATEPOFILES|g" -e "s|@DUMMYPOFILES@|$DUMMYPOFILES|g" -e "s|@GMOFILES@|$GMOFILES|g" -e "s|@CATALOGS@|$CATALOGS|g" -e "s|@POMAKEFILEDEPS@|$POMAKEFILEDEPS|g" "$ac_dir/Makefile.in" > "$ac_dir/Makefile" + for f in "$ac_given_srcdir/$ac_dir"/Rules-*; do + if test -f "$f"; then + case "$f" in + *.orig | *.bak | *~) ;; + *) cat "$f" >> "$ac_dir/Makefile" ;; + esac + fi + done + fi + ;; + esac + done ;; + + esac +done # for ac_tag + + +as_fn_exit 0 diff --git a/include/iconv.h b/include/iconv.h new file mode 100644 index 0000000..2f0b61c --- /dev/null +++ b/include/iconv.h @@ -0,0 +1,249 @@ +/* Copyright (C) 1999-2022 Free Software Foundation, Inc. + This file is part of the GNU LIBICONV Library. + + The GNU LIBICONV Library is free software; you can redistribute it + and/or modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either version 2.1 + of the License, or (at your option) any later version. + + The GNU LIBICONV Library is distributed in the hope that it will be + useful, but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU LIBICONV Library; see the file COPYING.LIB. + If not, see . */ + +/* When installed, this file is called "iconv.h". */ + +#ifndef _LIBICONV_H +#define _LIBICONV_H + +#define _LIBICONV_VERSION 0x0111 /* version number: (major<<8) + minor */ + +#if 1 && BUILDING_LIBICONV +#define LIBICONV_DLL_EXPORTED __attribute__((__visibility__("default"))) +#elif defined _MSC_VER && BUILDING_LIBICONV +#define LIBICONV_DLL_EXPORTED __declspec(dllexport) +#else +#define LIBICONV_DLL_EXPORTED +#endif +extern LIBICONV_DLL_EXPORTED int _libiconv_version; /* Likewise */ + +/* We would like to #include any system header file which could define + iconv_t, 1. in order to eliminate the risk that the user gets compilation + errors because some other system header file includes /usr/include/iconv.h + which defines iconv_t or declares iconv after this file, 2. when compiling + for LIBICONV_PLUG, we need the proper iconv_t type in order to produce + binary compatible code. + But gcc's #include_next is not portable. Thus, once libiconv's iconv.h + has been installed in /usr/local/include, there is no way any more to + include the original /usr/include/iconv.h. We simply have to get away + without it. + Ad 1. The risk that a system header file does + #include "iconv.h" or #include_next "iconv.h" + is small. They all do #include . + Ad 2. The iconv_t type is a pointer type in all cases I have seen. (It + has to be a scalar type because (iconv_t)(-1) is a possible return value + from iconv_open().) */ + +/* Define iconv_t ourselves. */ +#undef iconv_t +#define iconv_t libiconv_t +typedef void* iconv_t; + +/* Get size_t declaration. + Get wchar_t declaration if it exists. */ +#include + +/* Get errno declaration and values. */ +#include +/* Some systems, like SunOS 4, don't have EILSEQ. Some systems, like BSD/OS, + have EILSEQ in a different header. On these systems, define EILSEQ + ourselves. */ +#ifndef EILSEQ +#define EILSEQ +#endif + + +#ifdef __cplusplus +extern "C" { +#endif + + +/* Allocates descriptor for code conversion from encoding ‘fromcode’ to + encoding ‘tocode’. */ +#ifndef LIBICONV_PLUG +#define iconv_open libiconv_open +#endif +extern LIBICONV_DLL_EXPORTED iconv_t iconv_open (const char* tocode, const char* fromcode); + +/* Converts, using conversion descriptor ‘cd’, at most ‘*inbytesleft’ bytes + starting at ‘*inbuf’, writing at most ‘*outbytesleft’ bytes starting at + ‘*outbuf’. + Decrements ‘*inbytesleft’ and increments ‘*inbuf’ by the same amount. + Decrements ‘*outbytesleft’ and increments ‘*outbuf’ by the same amount. */ +#ifndef LIBICONV_PLUG +#define iconv libiconv +#endif +extern LIBICONV_DLL_EXPORTED size_t iconv (iconv_t cd, char* * inbuf, size_t *inbytesleft, char* * outbuf, size_t *outbytesleft); + +/* Frees resources allocated for conversion descriptor ‘cd’. */ +#ifndef LIBICONV_PLUG +#define iconv_close libiconv_close +#endif +extern LIBICONV_DLL_EXPORTED int iconv_close (iconv_t cd); + + +#ifdef __cplusplus +} +#endif + + +#ifndef LIBICONV_PLUG + +/* Nonstandard extensions. */ + +#if 1 +#if 0 +/* Tru64 with Desktop Toolkit C has a bug: must be included before + . + BSD/OS 4.0.1 has a bug: , and must be + included before . */ +#include +#include +#include +#endif +#include +#endif + +#ifdef __cplusplus +extern "C" { +#endif + +/* A type that holds all memory needed by a conversion descriptor. + A pointer to such an object can be used as an iconv_t. */ +typedef struct { + void* dummy1[28]; +#if 1 + mbstate_t dummy2; +#endif +} iconv_allocation_t; + +/* Allocates descriptor for code conversion from encoding ‘fromcode’ to + encoding ‘tocode’ into preallocated memory. Returns an error indicator + (0 or -1 with errno set). */ +#define iconv_open_into libiconv_open_into +extern LIBICONV_DLL_EXPORTED int iconv_open_into (const char* tocode, const char* fromcode, + iconv_allocation_t* resultp); + +/* Control of attributes. */ +#define iconvctl libiconvctl +extern LIBICONV_DLL_EXPORTED int iconvctl (iconv_t cd, int request, void* argument); + +/* Hook performed after every successful conversion of a Unicode character. */ +typedef void (*iconv_unicode_char_hook) (unsigned int uc, void* data); +/* Hook performed after every successful conversion of a wide character. */ +typedef void (*iconv_wide_char_hook) (wchar_t wc, void* data); +/* Set of hooks. */ +struct iconv_hooks { + iconv_unicode_char_hook uc_hook; + iconv_wide_char_hook wc_hook; + void* data; +}; + +/* Fallback function. Invoked when a small number of bytes could not be + converted to a Unicode character. This function should process all + bytes from inbuf and may produce replacement Unicode characters by calling + the write_replacement callback repeatedly. */ +typedef void (*iconv_unicode_mb_to_uc_fallback) + (const char* inbuf, size_t inbufsize, + void (*write_replacement) (const unsigned int *buf, size_t buflen, + void* callback_arg), + void* callback_arg, + void* data); +/* Fallback function. Invoked when a Unicode character could not be converted + to the target encoding. This function should process the character and + may produce replacement bytes (in the target encoding) by calling the + write_replacement callback repeatedly. */ +typedef void (*iconv_unicode_uc_to_mb_fallback) + (unsigned int code, + void (*write_replacement) (const char *buf, size_t buflen, + void* callback_arg), + void* callback_arg, + void* data); +#if 1 +/* Fallback function. Invoked when a number of bytes could not be converted to + a wide character. This function should process all bytes from inbuf and may + produce replacement wide characters by calling the write_replacement + callback repeatedly. */ +typedef void (*iconv_wchar_mb_to_wc_fallback) + (const char* inbuf, size_t inbufsize, + void (*write_replacement) (const wchar_t *buf, size_t buflen, + void* callback_arg), + void* callback_arg, + void* data); +/* Fallback function. Invoked when a wide character could not be converted to + the target encoding. This function should process the character and may + produce replacement bytes (in the target encoding) by calling the + write_replacement callback repeatedly. */ +typedef void (*iconv_wchar_wc_to_mb_fallback) + (wchar_t code, + void (*write_replacement) (const char *buf, size_t buflen, + void* callback_arg), + void* callback_arg, + void* data); +#else +/* If the wchar_t type does not exist, these two fallback functions are never + invoked. Their argument list therefore does not matter. */ +typedef void (*iconv_wchar_mb_to_wc_fallback) (); +typedef void (*iconv_wchar_wc_to_mb_fallback) (); +#endif +/* Set of fallbacks. */ +struct iconv_fallbacks { + iconv_unicode_mb_to_uc_fallback mb_to_uc_fallback; + iconv_unicode_uc_to_mb_fallback uc_to_mb_fallback; + iconv_wchar_mb_to_wc_fallback mb_to_wc_fallback; + iconv_wchar_wc_to_mb_fallback wc_to_mb_fallback; + void* data; +}; + +/* Requests for iconvctl. */ +#define ICONV_TRIVIALP 0 /* int *argument */ +#define ICONV_GET_TRANSLITERATE 1 /* int *argument */ +#define ICONV_SET_TRANSLITERATE 2 /* const int *argument */ +#define ICONV_GET_DISCARD_ILSEQ 3 /* int *argument */ +#define ICONV_SET_DISCARD_ILSEQ 4 /* const int *argument */ +#define ICONV_SET_HOOKS 5 /* const struct iconv_hooks *argument */ +#define ICONV_SET_FALLBACKS 6 /* const struct iconv_fallbacks *argument */ + +/* Listing of locale independent encodings. */ +#define iconvlist libiconvlist +extern LIBICONV_DLL_EXPORTED void iconvlist (int (*do_one) (unsigned int namescount, + const char * const * names, + void* data), + void* data); + +/* Canonicalize an encoding name. + The result is either a canonical encoding name, or name itself. */ +extern LIBICONV_DLL_EXPORTED const char * iconv_canonicalize (const char * name); + +/* Support for relocatable packages. */ + +/* Sets the original and the current installation prefix of the package. + Relocation simply replaces a pathname starting with the original prefix + by the corresponding pathname with the current prefix instead. Both + prefixes should be directory names without trailing slash (i.e. use "" + instead of "/"). */ +extern LIBICONV_DLL_EXPORTED void libiconv_set_relocation_prefix (const char *orig_prefix, + const char *curr_prefix); + +#ifdef __cplusplus +} +#endif + +#endif + + +#endif /* _LIBICONV_H */ diff --git a/include/iconv.h.inst b/include/iconv.h.inst new file mode 100644 index 0000000..a844d4c --- /dev/null +++ b/include/iconv.h.inst @@ -0,0 +1,241 @@ +/* Copyright (C) 1999-2022 Free Software Foundation, Inc. + This file is part of the GNU LIBICONV Library. + + The GNU LIBICONV Library is free software; you can redistribute it + and/or modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either version 2.1 + of the License, or (at your option) any later version. + + The GNU LIBICONV Library is distributed in the hope that it will be + useful, but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU LIBICONV Library; see the file COPYING.LIB. + If not, see . */ + +/* When installed, this file is called "iconv.h". */ + +#ifndef _LIBICONV_H +#define _LIBICONV_H + +#define _LIBICONV_VERSION 0x0111 /* version number: (major<<8) + minor */ +extern int _libiconv_version; /* Likewise */ + +/* We would like to #include any system header file which could define + iconv_t, 1. in order to eliminate the risk that the user gets compilation + errors because some other system header file includes /usr/include/iconv.h + which defines iconv_t or declares iconv after this file, 2. when compiling + for LIBICONV_PLUG, we need the proper iconv_t type in order to produce + binary compatible code. + But gcc's #include_next is not portable. Thus, once libiconv's iconv.h + has been installed in /usr/local/include, there is no way any more to + include the original /usr/include/iconv.h. We simply have to get away + without it. + Ad 1. The risk that a system header file does + #include "iconv.h" or #include_next "iconv.h" + is small. They all do #include . + Ad 2. The iconv_t type is a pointer type in all cases I have seen. (It + has to be a scalar type because (iconv_t)(-1) is a possible return value + from iconv_open().) */ + +/* Define iconv_t ourselves. */ +#undef iconv_t +#define iconv_t libiconv_t +typedef void* iconv_t; + +/* Get size_t declaration. + Get wchar_t declaration if it exists. */ +#include + +/* Get errno declaration and values. */ +#include +/* Some systems, like SunOS 4, don't have EILSEQ. Some systems, like BSD/OS, + have EILSEQ in a different header. On these systems, define EILSEQ + ourselves. */ +#ifndef EILSEQ +#define EILSEQ +#endif + + +#ifdef __cplusplus +extern "C" { +#endif + + +/* Allocates descriptor for code conversion from encoding ‘fromcode’ to + encoding ‘tocode’. */ +#ifndef LIBICONV_PLUG +#define iconv_open libiconv_open +#endif +extern iconv_t iconv_open (const char* tocode, const char* fromcode); + +/* Converts, using conversion descriptor ‘cd’, at most ‘*inbytesleft’ bytes + starting at ‘*inbuf’, writing at most ‘*outbytesleft’ bytes starting at + ‘*outbuf’. + Decrements ‘*inbytesleft’ and increments ‘*inbuf’ by the same amount. + Decrements ‘*outbytesleft’ and increments ‘*outbuf’ by the same amount. */ +#ifndef LIBICONV_PLUG +#define iconv libiconv +#endif +extern size_t iconv (iconv_t cd, char* * inbuf, size_t *inbytesleft, char* * outbuf, size_t *outbytesleft); + +/* Frees resources allocated for conversion descriptor ‘cd’. */ +#ifndef LIBICONV_PLUG +#define iconv_close libiconv_close +#endif +extern int iconv_close (iconv_t cd); + + +#ifdef __cplusplus +} +#endif + + +#ifndef LIBICONV_PLUG + +/* Nonstandard extensions. */ + +#if 1 +#if 0 +/* Tru64 with Desktop Toolkit C has a bug: must be included before + . + BSD/OS 4.0.1 has a bug: , and must be + included before . */ +#include +#include +#include +#endif +#include +#endif + +#ifdef __cplusplus +extern "C" { +#endif + +/* A type that holds all memory needed by a conversion descriptor. + A pointer to such an object can be used as an iconv_t. */ +typedef struct { + void* dummy1[28]; +#if 1 + mbstate_t dummy2; +#endif +} iconv_allocation_t; + +/* Allocates descriptor for code conversion from encoding ‘fromcode’ to + encoding ‘tocode’ into preallocated memory. Returns an error indicator + (0 or -1 with errno set). */ +#define iconv_open_into libiconv_open_into +extern int iconv_open_into (const char* tocode, const char* fromcode, + iconv_allocation_t* resultp); + +/* Control of attributes. */ +#define iconvctl libiconvctl +extern int iconvctl (iconv_t cd, int request, void* argument); + +/* Hook performed after every successful conversion of a Unicode character. */ +typedef void (*iconv_unicode_char_hook) (unsigned int uc, void* data); +/* Hook performed after every successful conversion of a wide character. */ +typedef void (*iconv_wide_char_hook) (wchar_t wc, void* data); +/* Set of hooks. */ +struct iconv_hooks { + iconv_unicode_char_hook uc_hook; + iconv_wide_char_hook wc_hook; + void* data; +}; + +/* Fallback function. Invoked when a small number of bytes could not be + converted to a Unicode character. This function should process all + bytes from inbuf and may produce replacement Unicode characters by calling + the write_replacement callback repeatedly. */ +typedef void (*iconv_unicode_mb_to_uc_fallback) + (const char* inbuf, size_t inbufsize, + void (*write_replacement) (const unsigned int *buf, size_t buflen, + void* callback_arg), + void* callback_arg, + void* data); +/* Fallback function. Invoked when a Unicode character could not be converted + to the target encoding. This function should process the character and + may produce replacement bytes (in the target encoding) by calling the + write_replacement callback repeatedly. */ +typedef void (*iconv_unicode_uc_to_mb_fallback) + (unsigned int code, + void (*write_replacement) (const char *buf, size_t buflen, + void* callback_arg), + void* callback_arg, + void* data); +#if 1 +/* Fallback function. Invoked when a number of bytes could not be converted to + a wide character. This function should process all bytes from inbuf and may + produce replacement wide characters by calling the write_replacement + callback repeatedly. */ +typedef void (*iconv_wchar_mb_to_wc_fallback) + (const char* inbuf, size_t inbufsize, + void (*write_replacement) (const wchar_t *buf, size_t buflen, + void* callback_arg), + void* callback_arg, + void* data); +/* Fallback function. Invoked when a wide character could not be converted to + the target encoding. This function should process the character and may + produce replacement bytes (in the target encoding) by calling the + write_replacement callback repeatedly. */ +typedef void (*iconv_wchar_wc_to_mb_fallback) + (wchar_t code, + void (*write_replacement) (const char *buf, size_t buflen, + void* callback_arg), + void* callback_arg, + void* data); +#else +/* If the wchar_t type does not exist, these two fallback functions are never + invoked. Their argument list therefore does not matter. */ +typedef void (*iconv_wchar_mb_to_wc_fallback) (); +typedef void (*iconv_wchar_wc_to_mb_fallback) (); +#endif +/* Set of fallbacks. */ +struct iconv_fallbacks { + iconv_unicode_mb_to_uc_fallback mb_to_uc_fallback; + iconv_unicode_uc_to_mb_fallback uc_to_mb_fallback; + iconv_wchar_mb_to_wc_fallback mb_to_wc_fallback; + iconv_wchar_wc_to_mb_fallback wc_to_mb_fallback; + void* data; +}; + +/* Requests for iconvctl. */ +#define ICONV_TRIVIALP 0 /* int *argument */ +#define ICONV_GET_TRANSLITERATE 1 /* int *argument */ +#define ICONV_SET_TRANSLITERATE 2 /* const int *argument */ +#define ICONV_GET_DISCARD_ILSEQ 3 /* int *argument */ +#define ICONV_SET_DISCARD_ILSEQ 4 /* const int *argument */ +#define ICONV_SET_HOOKS 5 /* const struct iconv_hooks *argument */ +#define ICONV_SET_FALLBACKS 6 /* const struct iconv_fallbacks *argument */ + +/* Listing of locale independent encodings. */ +#define iconvlist libiconvlist +extern void iconvlist (int (*do_one) (unsigned int namescount, + const char * const * names, + void* data), + void* data); + +/* Canonicalize an encoding name. + The result is either a canonical encoding name, or name itself. */ +extern const char * iconv_canonicalize (const char * name); + +/* Support for relocatable packages. */ + +/* Sets the original and the current installation prefix of the package. + Relocation simply replaces a pathname starting with the original prefix + by the corresponding pathname with the current prefix instead. Both + prefixes should be directory names without trailing slash (i.e. use "" + instead of "/"). */ +extern void libiconv_set_relocation_prefix (const char *orig_prefix, + const char *curr_prefix); + +#ifdef __cplusplus +} +#endif + +#endif + + +#endif /* _LIBICONV_H */ diff --git a/lib/Makefile b/lib/Makefile new file mode 100644 index 0000000..c02b228 --- /dev/null +++ b/lib/Makefile @@ -0,0 +1,434 @@ +# Makefile for libiconv/lib + +#### Start of system configuration section. #### + +# Directories used by "make": +srcdir = . + +# Directories used by "make install": +prefix = /Users/yangzuhao/Downloads/libiconv-1.17/output +local_prefix = /usr/local +exec_prefix = ${prefix} +libdir = ${exec_prefix}/lib + +# Programs used by "make": +CC = gcc +CFLAGS = -g -O2 -fvisibility=hidden +CPPFLAGS = +LDFLAGS = $(LDFLAGS_no) +LDFLAGS_yes = -Wl,--export-all-symbols +LDFLAGS_no = +INCLUDES = -I. -I$(srcdir) -I../include -I$(srcdir)/../include -I.. -I$(srcdir)/.. +# -DBUILDING_LIBICONV: Change expansion of LIBICONV_DLL_EXPORTED macro. +# -DBUILDING_LIBCHARSET: Change expansion of LIBCHARSET_DLL_EXPORTED macro in +# localcharset.h. +# -DBUILDING_DLL: Change expansion of RELOCATABLE_DLL_EXPORTED macro. +DEFS = \ + -DLIBDIR=\"$(libdir)\" \ + -DBUILDING_LIBICONV -DBUILDING_LIBCHARSET -DBUILDING_DLL \ + -DENABLE_RELOCATABLE=1 -DIN_LIBRARY -DINSTALLDIR=\"$(libdir)\" -DNO_XMALLOC \ + -Dset_relocation_prefix=libiconv_set_relocation_prefix \ + -Drelocate=libiconv_relocate \ + -Drelocate2=libiconv_relocate2 -DHAVE_CONFIG_H +LIBTOOL = /bin/sh $(top_builddir)/libtool +LIBTOOL_COMPILE = $(LIBTOOL) --mode=compile +LIBTOOL_LINK = $(LIBTOOL) --mode=link +LIBTOOL_INSTALL = $(LIBTOOL) --mode=install +LIBTOOL_UNINSTALL = $(LIBTOOL) --mode=uninstall +AR = ar +# Windows resource compiler (windres). Used via libtool. +RC = +CP = cp +MV = mv +LN = ln +LN_S = ln -s +RM = rm -f + +# Programs used by "make install": +INSTALL = /opt/homebrew/bin/ginstall -c +INSTALL_PROGRAM = ${INSTALL} +INSTALL_DATA = ${INSTALL} -m 644 +mkinstalldirs = $(SHELL) ../build-aux/mkinstalldirs + +#### End of system configuration section. #### + +SHELL = /bin/sh + +# Before making a release, change this according to the libtool documentation, +# section "Library interface versions". +LIBICONV_VERSION_INFO = 8:1:6 + +PACKAGE_VERSION = 1.17 + +# Needed by $(LIBTOOL). +top_builddir = .. + +SOURCES = $(srcdir)/iconv.c $(srcdir)/../libcharset/lib/localcharset.c $(srcdir)/relocatable.c + +OBJECTS = iconv.lo localcharset.lo relocatable.lo $(OBJECTS_EXP_no) $(OBJECTS_RES_no) +OBJECTS_EXP_yes = iconv-exports.lo +OBJECTS_EXP_no = +OBJECTS_RES_yes = libiconv.res.lo +OBJECTS_RES_no = + +all : libiconv.la + +libiconv.la : $(OBJECTS) + $(LIBTOOL_LINK) $(CC) $(LDFLAGS) $(CFLAGS) -o libiconv.la -rpath $(libdir) -version-info $(LIBICONV_VERSION_INFO) -no-undefined $(OBJECTS) + +iconv.lo : $(srcdir)/iconv.c $(srcdir)/converters.h \ + $(srcdir)/encodings.def $(srcdir)/encodings_aix.def $(srcdir)/encodings_osf1.def $(srcdir)/encodings_dos.def $(srcdir)/encodings_local.def \ + $(srcdir)/aliases.h $(srcdir)/aliases_sysaix.h $(srcdir)/aliases_syshpux.h $(srcdir)/aliases_sysosf1.h $(srcdir)/aliases_syssolaris.h \ + $(srcdir)/aliases_aix.h $(srcdir)/aliases_aix_sysaix.h \ + $(srcdir)/aliases_osf1.h $(srcdir)/aliases_osf1_sysosf1.h \ + $(srcdir)/aliases_dos.h \ + $(srcdir)/aliases_extra.h \ + $(srcdir)/flags.h $(srcdir)/translit.h + $(LIBTOOL_COMPILE) $(CC) $(INCLUDES) $(CPPFLAGS) $(CFLAGS) $(DEFS) -c $(srcdir)/iconv.c + +localcharset.lo : $(srcdir)/../libcharset/lib/localcharset.c $(srcdir)/relocatable.h + $(LIBTOOL_COMPILE) $(CC) $(INCLUDES) $(CPPFLAGS) $(CFLAGS) $(DEFS) -c $(srcdir)/../libcharset/lib/localcharset.c + +relocatable.lo : $(srcdir)/relocatable.c $(srcdir)/relocatable.h + $(LIBTOOL_COMPILE) $(CC) $(INCLUDES) $(CPPFLAGS) $(CFLAGS) $(DEFS) -c $(srcdir)/relocatable.c + +iconv-exports.lo : $(srcdir)/../woe32dll/iconv-exports.c + $(LIBTOOL_COMPILE) $(CC) $(INCLUDES) $(CPPFLAGS) $(CFLAGS) $(DEFS) -c $(srcdir)/../woe32dll/iconv-exports.c + +libiconv.res.lo : $(srcdir)/../windows/libiconv.rc + $(LIBTOOL_COMPILE) --tag=RC $(RC) `$(SHELL) $(srcdir)/../windows/windres-options --escape $(PACKAGE_VERSION)` -i $(srcdir)/../windows/libiconv.rc -o libiconv.res.lo --output-format=coff + +# Installs the library and include files only. Typically called with only +# $(libdir) and $(includedir) - don't use $(prefix) and $(exec_prefix) here. +install-lib : all force + if [ ! -d $(libdir) ] ; then $(mkinstalldirs) $(libdir) ; fi + $(LIBTOOL_INSTALL) $(INSTALL) libiconv.la $(libdir)/libiconv.la + +# On AIX, libiconv.a must include the object files of /lib/libiconv.a, +# otherwise the setlocale() call fails when invoked from executables linked +# with -rpath $(libdir), even if linked without -liconv. +install : all force + if [ ! -d $(DESTDIR)$(libdir) ] ; then $(mkinstalldirs) $(DESTDIR)$(libdir) ; fi + $(LIBTOOL_INSTALL) $(INSTALL) libiconv.la $(DESTDIR)$(libdir)/libiconv.la + case "darwin22.4.0" in \ + aix*) (cd $(DESTDIR)$(libdir) && \ + objects=`$(AR) t libiconv.a`" "`$(AR) t /lib/libiconv.a` && \ + $(AR) x libiconv.a && $(AR) x /lib/libiconv.a && \ + $(AR) q libiconv.new.a $$objects && \ + rm -f $$objects && \ + mv -f libiconv.new.a libiconv.a) ;; \ + esac + +install-strip : install + +installdirs : force + if [ ! -d $(DESTDIR)$(libdir) ] ; then $(mkinstalldirs) $(DESTDIR)$(libdir) ; fi + +uninstall : force + $(LIBTOOL_UNINSTALL) $(RM) $(DESTDIR)$(libdir)/libiconv.la + +check : all + +mostlyclean : clean + +clean : force + $(RM) *.o *.lo *.a *.la core *.stackdump so_locations + $(RM) -r .libs _libs + +distclean : clean + $(RM) Makefile config.h + +maintainer-clean : distclean + +# List of source files. +SOURCE_FILES = \ + Makefile.in config.h.in \ + encodings.def \ + encodings_aix.def \ + encodings_osf1.def \ + encodings_dos.def \ + encodings_zos.def \ + encodings_extra.def \ + encodings_local.def \ + translit.def \ + genaliases.c \ + genaliases2.c \ + genflags.c \ + gentranslit.c \ + iconv.c \ + converters.h \ + ascii.h \ + utf8.h \ + ucs2.h \ + ucs2be.h \ + ucs2le.h \ + ucs4.h \ + ucs4be.h \ + ucs4le.h \ + utf16.h \ + utf16be.h \ + utf16le.h \ + utf32.h \ + utf32be.h \ + utf32le.h \ + utf7.h \ + ucs2internal.h \ + ucs2swapped.h \ + ucs4internal.h \ + ucs4swapped.h \ + c99.h \ + java.h \ + iso8859_1.h \ + iso8859_2.h \ + iso8859_3.h \ + iso8859_4.h \ + iso8859_5.h \ + iso8859_6.h \ + iso8859_7.h \ + iso8859_8.h \ + iso8859_9.h \ + iso8859_10.h \ + iso8859_11.h \ + iso8859_13.h \ + iso8859_14.h \ + iso8859_15.h \ + iso8859_16.h \ + koi8_r.h \ + koi8_u.h \ + koi8_ru.h \ + cp1250.h \ + cp1251.h \ + cp1252.h \ + cp1253.h \ + cp1254.h \ + cp1255.h \ + cp1256.h \ + cp1257.h \ + cp1258.h \ + vietcomb.h \ + cp850.h \ + cp862.h \ + cp866.h \ + cp1131.h \ + mac_roman.h \ + mac_centraleurope.h \ + mac_iceland.h \ + mac_croatian.h \ + mac_romania.h \ + mac_cyrillic.h \ + mac_ukraine.h \ + mac_greek.h \ + mac_turkish.h \ + mac_hebrew.h \ + mac_arabic.h \ + mac_thai.h \ + hp_roman8.h \ + nextstep.h \ + armscii_8.h \ + georgian_academy.h \ + georgian_ps.h \ + koi8_t.h \ + pt154.h \ + rk1048.h \ + mulelao.h \ + cp1133.h \ + tis620.h \ + cp874.h \ + viscii.h \ + tcvn.h \ + iso646_jp.h \ + jisx0201.h \ + jisx0208.h \ + jisx0212.h \ + iso646_cn.h \ + gb2312.h \ + isoir165.h \ + isoir165ext.h \ + gb12345.h \ + gb12345ext.h \ + gbk.h \ + gbkext1.h \ + gbkext2.h \ + gbkext_inv.h \ + cp936ext.h \ + cns11643.h \ + cns11643_1.h \ + cns11643_2.h \ + cns11643_3.h \ + cns11643_4.h \ + cns11643_4a.h \ + cns11643_4b.h \ + cns11643_5.h \ + cns11643_6.h \ + cns11643_7.h \ + cns11643_15.h \ + cns11643_inv.h \ + big5.h \ + ksc5601.h \ + johab_hangul.h \ + euc_jp.h \ + sjis.h \ + cp932.h \ + cp932ext.h \ + iso2022_jp.h \ + iso2022_jp1.h \ + iso2022_jp2.h \ + iso2022_jpms.h \ + cp50221_0208_ext.h \ + cp50221_0212_ext.h \ + euc_cn.h \ + ces_gbk.h \ + cp936.h \ + gb18030.h \ + gb18030ext.h \ + gb18030uni.h \ + iso2022_cn.h \ + iso2022_cnext.h \ + hz.h \ + euc_tw.h \ + ces_big5.h \ + cp950.h \ + cp950ext.h \ + big5hkscs1999.h \ + hkscs1999.h \ + big5hkscs2001.h \ + hkscs2001.h \ + big5hkscs2004.h \ + hkscs2004.h \ + big5hkscs2008.h \ + hkscs2008.h \ + euc_kr.h \ + cp949.h \ + uhc_1.h \ + uhc_2.h \ + johab.h \ + iso2022_kr.h \ + cp856.h \ + cp922.h \ + cp943.h \ + cp1046.h \ + cp1124.h \ + cp1129.h \ + cp1161.h \ + cp1162.h \ + cp1163.h \ + dec_kanji.h \ + dec_hanyu.h \ + cp437.h \ + cp737.h \ + cp775.h \ + cp852.h \ + cp853.h \ + cp855.h \ + cp857.h \ + cp858.h \ + cp860.h \ + cp861.h \ + cp863.h \ + cp864.h \ + cp865.h \ + cp869.h \ + cp1125.h \ + ebcdic037.h \ + ebcdic273.h \ + ebcdic277.h \ + ebcdic278.h \ + ebcdic280.h \ + ebcdic282.h \ + ebcdic284.h \ + ebcdic285.h \ + ebcdic297.h \ + ebcdic423.h \ + ebcdic424.h \ + ebcdic425.h \ + ebcdic500.h \ + ebcdic838.h \ + ebcdic870.h \ + ebcdic871.h \ + ebcdic875.h \ + ebcdic880.h \ + ebcdic905.h \ + ebcdic924.h \ + ebcdic1025.h \ + ebcdic1026.h \ + ebcdic1047.h \ + ebcdic1097.h \ + ebcdic1112.h \ + ebcdic1122.h \ + ebcdic1123.h \ + ebcdic1130.h \ + ebcdic1132.h \ + ebcdic1137.h \ + ebcdic1140.h \ + ebcdic1141.h \ + ebcdic1142.h \ + ebcdic1143.h \ + ebcdic1144.h \ + ebcdic1145.h \ + ebcdic1146.h \ + ebcdic1147.h \ + ebcdic1148.h \ + ebcdic1149.h \ + ebcdic1153.h \ + ebcdic1154.h \ + ebcdic1155.h \ + ebcdic1156.h \ + ebcdic1157.h \ + ebcdic1158.h \ + ebcdic1160.h \ + ebcdic1164.h \ + ebcdic1165.h \ + ebcdic1166.h \ + ebcdic4971.h \ + ebcdic12712.h \ + ebcdic16804.h \ + euc_jisx0213.h \ + jisx0213.h \ + shift_jisx0213.h \ + iso2022_jp3.h \ + big5_2003.h \ + tds565.h \ + atarist.h \ + riscos1.h \ + flushwc.h \ + cjk_variants.h \ + loops.h \ + loop_unicode.h \ + loop_wchar.h \ + aliases2.h \ + iconv_open1.h \ + iconv_open2.h \ + relocatable.h relocatable.c +# List of distributed files imported from other packages. +IMPORTED_FILES = +# List of distributed files generated by autotools or Makefile.devel. +GENERATED_FILES = \ + aliases.gperf aliases_sysaix.gperf aliases_syshpux.gperf aliases_sysosf1.gperf aliases_syssolaris.gperf \ + aliases.h aliases_sysaix.h aliases_syshpux.h aliases_sysosf1.h aliases_syssolaris.h \ + aliases_aix.h aliases_aix_sysaix.h \ + aliases_osf1.h aliases_osf1_sysosf1.h \ + aliases_dos.h \ + aliases_zos.h \ + aliases_extra.h \ + canonical.h canonical_sysaix.h canonical_syshpux.h canonical_sysosf1.h canonical_syssolaris.h \ + canonical_aix.h canonical_aix_sysaix.h \ + canonical_osf1.h canonical_osf1_sysosf1.h \ + canonical_dos.h \ + canonical_zos.h \ + canonical_extra.h \ + canonical_local.h canonical_local_sysaix.h canonical_local_syshpux.h canonical_local_sysosf1.h canonical_local_syssolaris.h \ + flags.h \ + translit.h +# List of distributed files generated by "make". +DISTRIBUTED_BUILT_FILES = +# List of distributed files. +DISTFILES = $(SOURCE_FILES) $(IMPORTED_FILES) $(GENERATED_FILES) $(DISTRIBUTED_BUILT_FILES) + +distdir : $(DISTFILES) + for file in $(DISTFILES); do \ + if test -f $$file; then dir='.'; else dir='$(srcdir)'; fi; \ + cp -p "$$dir/$$file" '$(distdir)'/$$file || exit 1; \ + done + +force : + diff --git a/lib/config.h b/lib/config.h new file mode 100644 index 0000000..80eb72b --- /dev/null +++ b/lib/config.h @@ -0,0 +1,83 @@ +/* lib/config.h. Generated from config.h.in by configure. */ +/* Copyright (C) 1999-2003, 2005, 2007, 2010, 2012 Free Software Foundation, Inc. + This file is part of the GNU LIBICONV Library. + + The GNU LIBICONV Library is free software; you can redistribute it + and/or modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either version 2.1 + of the License, or (at your option) any later version. + + The GNU LIBICONV Library is distributed in the hope that it will be + useful, but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU LIBICONV Library; see the file COPYING.LIB. + If not, see . */ + + +/* Define to 1 to enable a few rarely used encodings. */ +/* #undef ENABLE_EXTRA */ + +/* Define to 1 if the package shall run at any location in the filesystem. */ +/* #undef ENABLE_RELOCATABLE */ + +/* Define to a type if does not define. */ +/* #undef mbstate_t */ + +/* Define if you have , the iconv_t type, and the + iconv_open, iconv, iconv_close functions. */ +#define HAVE_ICONV 1 +/* Define as const if the declaration of iconv() needs const. */ +#define ICONV_CONST + +/* Define to 1 if you have the getc_unlocked() function. */ +#define HAVE_GETC_UNLOCKED 1 + +/* Define if you have and nl_langinfo(CODESET). */ +#define HAVE_LANGINFO_CODESET 1 + +/* Define if you have the mbrtowc() function. */ +#define HAVE_MBRTOWC 1 + +/* Define to 1 if you have the setlocale() function. */ +#define HAVE_SETLOCALE 1 + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_STDDEF_H */ + +/* Define to 1 if you have the header file. */ +#define HAVE_STDLIB_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_STRING_H 1 + +/* Define to 1 or 0, depending whether the compiler supports simple visibility + declarations. */ +#define HAVE_VISIBILITY 1 + +/* Define if you have the wcrtomb() function. */ +#define HAVE_WCRTOMB 1 + +/* Define to 1 if O_NOFOLLOW works. */ +#define HAVE_WORKING_O_NOFOLLOW 1 + +/* Define if the machine's byte ordering is little endian. */ +#define WORDS_LITTLEENDIAN 1 + +/* Define to the value of ${prefix}, as a string. */ +#define INSTALLPREFIX "/Users/yangzuhao/Downloads/libiconv-1.17/output" + +/* Define to '__inline__' or '__inline' if that's what the C compiler + calls it, or to nothing if 'inline' is not supported under any name. */ +#ifndef __cplusplus +/* #undef inline */ +#endif + +/* Define to 'int' if does not define. */ +/* #undef mode_t */ + +/* Define as a signed type of the same size as size_t. */ +/* #undef ssize_t */ + diff --git a/lib/stamp-h2 b/lib/stamp-h2 new file mode 100644 index 0000000..8ce1fe9 --- /dev/null +++ b/lib/stamp-h2 @@ -0,0 +1 @@ +timestamp for lib/config.h diff --git a/libcharset/Makefile b/libcharset/Makefile new file mode 100644 index 0000000..8dc1311 --- /dev/null +++ b/libcharset/Makefile @@ -0,0 +1,150 @@ +# Makefile for libcharset + +#### Start of system configuration section. #### + + +# Directories used by "make": +srcdir = . + +# Directories used by "make install": +prefix = /Users/yangzuhao/Downloads/libiconv-1.17/output +local_prefix = /usr/local +exec_prefix = ${prefix} +datarootdir = ${prefix}/share +datadir = ${datarootdir} +libdir = ${exec_prefix}/lib +includedir = ${prefix}/include +mandir = ${datarootdir}/man + +# Programs used by "make": +CP = cp +RM = rm -f + + +# Programs used by "make install": +INSTALL = /opt/homebrew/bin/ginstall -c +INSTALL_DATA = ${INSTALL} -m 644 +mkinstalldirs = $(SHELL) ./build-aux/mkinstalldirs + +#### End of system configuration section. #### + +SHELL = /bin/sh + +all : force + cd lib && $(MAKE) all + +# Installs the library and include files only. Typically called with only +# $(libdir) and $(includedir) - don't use $(prefix) and $(exec_prefix) here. +install-lib : all force + cd lib && $(MAKE) install-lib libdir='$(libdir)' includedir='$(includedir)' + $(mkinstalldirs) $(includedir) + $(INSTALL_DATA) include/libcharset.h.inst $(includedir)/libcharset.h +# Here, use the include file that contains LIBCHARSET_DLL_EXPORTED annotations. + $(INSTALL_DATA) include/localcharset.h $(includedir)/localcharset.h + +install : all force + cd lib && $(MAKE) install prefix='$(prefix)' exec_prefix='$(exec_prefix)' libdir='$(libdir)' + $(mkinstalldirs) $(DESTDIR)$(includedir) + $(INSTALL_DATA) include/libcharset.h.inst $(DESTDIR)$(includedir)/libcharset.h + $(INSTALL_DATA) include/localcharset.h.inst $(DESTDIR)$(includedir)/localcharset.h + +install-strip : install + +installdirs : force + cd lib && $(MAKE) installdirs prefix='$(prefix)' exec_prefix='$(exec_prefix)' libdir='$(libdir)' + $(mkinstalldirs) $(DESTDIR)$(includedir) + +uninstall : force + cd lib && $(MAKE) uninstall prefix='$(prefix)' exec_prefix='$(exec_prefix)' libdir='$(libdir)' + $(RM) $(DESTDIR)$(includedir)/libcharset.h + $(RM) $(DESTDIR)$(includedir)/localcharset.h + +check : force + cd lib && $(MAKE) check + +mostlyclean : force + cd lib && $(MAKE) mostlyclean + +clean : force + cd lib && $(MAKE) clean + +distclean : force + cd lib && if test -f Makefile; then $(MAKE) distclean; fi + $(RM) include/libcharset.h include/libcharset.h.inst include/localcharset.h include/localcharset.h.inst + $(RM) config.status config.log config.cache Makefile config.h libtool + +maintainer-clean : force + cd lib && if test -f Makefile; then $(MAKE) maintainer-clean; fi + $(RM) include/libcharset.h include/libcharset.h.inst include/localcharset.h include/localcharset.h.inst + $(RM) config.status config.log config.cache Makefile config.h libtool + +# List of source files. +SOURCE_FILES = \ + README DEPENDENCIES INSTALL.windows HACKING INTEGRATE AUTHORS NEWS \ + ChangeLog Makefile.devel configure.ac Makefile.in \ + include/export.h include/libcharset.h.in include/localcharset.h.in \ + tools/README \ + tools/all-charsets tools/all-charsets-X11 tools/all-locales \ + tools/locale_charmap \ + tools/locale_charset.c \ + tools/locale_codeset.c \ + tools/locale_monthnames.c \ + tools/locale_x11encoding.c \ + tools/aix-3.2.5 tools/aix-4.1.5 tools/aix-4.2.0 tools/aix-4.3.2 \ + tools/beos-5 \ + tools/cygwin-1.7.2 \ + tools/darwin-6.8 tools/darwin-7.5 tools/darwin-9.5 \ + tools/freebsd-3.3 \ + tools/glibc-2.1.3 tools/glibc-2.1.90 tools/glibc-2.2 \ + tools/glibc-2.2-XF86-3.3.6 tools/glibc-2.2-XF86-4.0.1f \ + tools/hpux-10.01 tools/hpux-10.20 tools/hpux-11.00 \ + tools/irix-6.5 \ + tools/netbsd-3.0 \ + tools/openbsd-4.1 \ + tools/osf1-4.0a tools/osf1-4.0d tools/osf1-5.1 \ + tools/solaris-2.4 tools/solaris-2.5.1 tools/solaris-2.6 tools/solaris-2.6-cjk tools/solaris-2.7 \ + tools/sunos-4.1.4 \ + tools/win32 +# List of distributed files imported from other packages. +LIBTOOL_IMPORTED_FILES = \ + build-aux/ltmain.sh \ + m4/libtool.m4 \ + m4/lt~obsolete.m4 \ + m4/ltoptions.m4 \ + m4/ltsugar.m4 \ + m4/ltversion.m4 +PARENT_IMPORTED_FILES = \ + INSTALL.generic \ + build-aux/config.guess \ + build-aux/config.libpath \ + build-aux/config.sub \ + build-aux/install-sh \ + build-aux/libtool-reloc \ + build-aux/mkinstalldirs \ + m4/codeset.m4 \ + m4/fcntl-o.m4 \ + m4/visibility.m4 +IMPORTED_FILES = \ + COPYING.LIB \ + $(LIBTOOL_IMPORTED_FILES) $(PARENT_IMPORTED_FILES) +# List of distributed files generated by autotools or Makefile.devel. +GENERATED_FILES = \ + autoconf/aclocal.m4 configure config.h.in \ + include/libcharset.h.build.in \ + include/localcharset.h.build.in +# List of distributed files generated by "make". +DISTRIBUTED_BUILT_FILES = +# List of distributed files. +DISTFILES = $(SOURCE_FILES) $(IMPORTED_FILES) $(GENERATED_FILES) $(DISTRIBUTED_BUILT_FILES) + +distdir : $(DISTFILES) + for file in $(DISTFILES); do \ + if test -f $$file; then dir='.'; else dir='$(srcdir)'; fi; \ + destdir=`echo '$(distdir)'/$$file | sed -e 's|//*[^/]*$$||'`; \ + test -d "$$destdir" || mkdir "$$destdir"; \ + cp -p "$$dir/$$file" '$(distdir)'/$$file || exit 1; \ + done + test -d '$(distdir)'/lib || mkdir '$(distdir)'/lib; cd lib && $(MAKE) distdir distdir='$(distdir)'/lib + +force : + diff --git a/libcharset/config.h b/libcharset/config.h new file mode 100644 index 0000000..acf022d --- /dev/null +++ b/libcharset/config.h @@ -0,0 +1,186 @@ +/* config.h. Generated from config.h.in by configure. */ +/* config.h.in. Generated from configure.ac by autoheader. */ + +/* Define to 1 if the package shall run at any location in the file system. */ +/* #undef ENABLE_RELOCATABLE */ + +/* Define to 1 if you have the `copy_file_range' function. */ +/* #undef HAVE_COPY_FILE_RANGE */ + +/* Define to 1 if you have the header file. */ +#define HAVE_DLFCN_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_INTTYPES_H 1 + +/* Define if you have and nl_langinfo(CODESET). */ +#define HAVE_LANGINFO_CODESET 1 + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_MACH_O_DYLD_H */ + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_MINIX_CONFIG_H */ + +/* Define to 1 if you have the `setlocale' function. */ +#define HAVE_SETLOCALE 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_STDINT_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_STDIO_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_STDLIB_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_STRINGS_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_STRING_H 1 + +/* Define to 1 if you have the `symlink' function. */ +#define HAVE_SYMLINK 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_SYS_STAT_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_SYS_TYPES_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_UNISTD_H 1 + +/* Define to 1 or 0, depending whether the compiler supports simple visibility + declarations. */ +#define HAVE_VISIBILITY 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_WCHAR_H 1 + +/* Define to 1 if O_NOATIME works. */ +#define HAVE_WORKING_O_NOATIME 0 + +/* Define to 1 if O_NOFOLLOW works. */ +#define HAVE_WORKING_O_NOFOLLOW 0 + +/* Define to 1 if you have the `_NSGetExecutablePath' function. */ +/* #undef HAVE__NSGETEXECUTABLEPATH */ + +/* Define to the value of ${prefix}, as a string. */ +#define INSTALLPREFIX "/Users/yangzuhao/Downloads/libiconv-1.17/output" + +/* Define to the sub-directory where libtool stores uninstalled libraries. */ +#define LT_OBJDIR ".libs/" + +/* Define to the address where bug reports for this package should be sent. */ +#define PACKAGE_BUGREPORT "" + +/* Define to the full name of this package. */ +#define PACKAGE_NAME "libcharset" + +/* Define to the full name and version of this package. */ +#define PACKAGE_STRING "libcharset 1.5" + +/* Define to the one symbol short name of this package. */ +#define PACKAGE_TARNAME "libcharset" + +/* Define to the home page for this package. */ +#define PACKAGE_URL "" + +/* Define to the version of this package. */ +#define PACKAGE_VERSION "1.5" + +/* Define to 1 if all of the C90 standard headers exist (not just the ones + required in a freestanding environment). This macro is provided for + backward compatibility; new code need not use it. */ +#define STDC_HEADERS 1 + +/* Enable extensions on AIX 3, Interix. */ +#ifndef _ALL_SOURCE +# define _ALL_SOURCE 1 +#endif +/* Enable general extensions on macOS. */ +#ifndef _DARWIN_C_SOURCE +# define _DARWIN_C_SOURCE 1 +#endif +/* Enable general extensions on Solaris. */ +#ifndef __EXTENSIONS__ +# define __EXTENSIONS__ 1 +#endif +/* Enable GNU extensions on systems that have them. */ +#ifndef _GNU_SOURCE +# define _GNU_SOURCE 1 +#endif +/* Enable X/Open compliant socket functions that do not require linking + with -lxnet on HP-UX 11.11. */ +#ifndef _HPUX_ALT_XOPEN_SOCKET_API +# define _HPUX_ALT_XOPEN_SOCKET_API 1 +#endif +/* Identify the host operating system as Minix. + This macro does not affect the system headers' behavior. + A future release of Autoconf may stop defining this macro. */ +#ifndef _MINIX +/* # undef _MINIX */ +#endif +/* Enable general extensions on NetBSD. + Enable NetBSD compatibility extensions on Minix. */ +#ifndef _NETBSD_SOURCE +# define _NETBSD_SOURCE 1 +#endif +/* Enable OpenBSD compatibility extensions on NetBSD. + Oddly enough, this does nothing on OpenBSD. */ +#ifndef _OPENBSD_SOURCE +# define _OPENBSD_SOURCE 1 +#endif +/* Define to 1 if needed for POSIX-compatible behavior. */ +#ifndef _POSIX_SOURCE +/* # undef _POSIX_SOURCE */ +#endif +/* Define to 2 if needed for POSIX-compatible behavior. */ +#ifndef _POSIX_1_SOURCE +/* # undef _POSIX_1_SOURCE */ +#endif +/* Enable POSIX-compatible threading on Solaris. */ +#ifndef _POSIX_PTHREAD_SEMANTICS +# define _POSIX_PTHREAD_SEMANTICS 1 +#endif +/* Enable extensions specified by ISO/IEC TS 18661-5:2014. */ +#ifndef __STDC_WANT_IEC_60559_ATTRIBS_EXT__ +# define __STDC_WANT_IEC_60559_ATTRIBS_EXT__ 1 +#endif +/* Enable extensions specified by ISO/IEC TS 18661-1:2014. */ +#ifndef __STDC_WANT_IEC_60559_BFP_EXT__ +# define __STDC_WANT_IEC_60559_BFP_EXT__ 1 +#endif +/* Enable extensions specified by ISO/IEC TS 18661-2:2015. */ +#ifndef __STDC_WANT_IEC_60559_DFP_EXT__ +# define __STDC_WANT_IEC_60559_DFP_EXT__ 1 +#endif +/* Enable extensions specified by ISO/IEC TS 18661-4:2015. */ +#ifndef __STDC_WANT_IEC_60559_FUNCS_EXT__ +# define __STDC_WANT_IEC_60559_FUNCS_EXT__ 1 +#endif +/* Enable extensions specified by ISO/IEC TS 18661-3:2015. */ +#ifndef __STDC_WANT_IEC_60559_TYPES_EXT__ +# define __STDC_WANT_IEC_60559_TYPES_EXT__ 1 +#endif +/* Enable extensions specified by ISO/IEC TR 24731-2:2010. */ +#ifndef __STDC_WANT_LIB_EXT2__ +# define __STDC_WANT_LIB_EXT2__ 1 +#endif +/* Enable extensions specified by ISO/IEC 24747:2009. */ +#ifndef __STDC_WANT_MATH_SPEC_FUNCS__ +# define __STDC_WANT_MATH_SPEC_FUNCS__ 1 +#endif +/* Enable extensions on HP NonStop. */ +#ifndef _TANDEM_SOURCE +# define _TANDEM_SOURCE 1 +#endif +/* Enable X/Open extensions. Define to 500 only if necessary + to make mbstate_t available. */ +#ifndef _XOPEN_SOURCE +/* # undef _XOPEN_SOURCE */ +#endif + diff --git a/libcharset/config.log b/libcharset/config.log new file mode 100644 index 0000000..408641d --- /dev/null +++ b/libcharset/config.log @@ -0,0 +1,893 @@ +This file contains any messages produced by compilers while +running configure, to aid debugging if configure makes a mistake. + +It was created by libcharset configure 1.5, which was +generated by GNU Autoconf 2.71. Invocation command line was + + $ ./configure --disable-option-checking --prefix=/Users/yangzuhao/Downloads/libiconv-1.17/output --cache-file=/dev/null --srcdir=. + +## --------- ## +## Platform. ## +## --------- ## + +hostname = Yaha-baidu +uname -m = arm64 +uname -r = 22.4.0 +uname -s = Darwin +uname -v = Darwin Kernel Version 22.4.0: Mon Mar 6 21:00:41 PST 2023; root:xnu-8796.101.5~3/RELEASE_ARM64_T8103 + +/usr/bin/uname -p = arm +/bin/uname -X = unknown + +/bin/arch = unknown +/usr/bin/arch -k = unknown +/usr/convex/getsysinfo = unknown +/usr/bin/hostinfo = Mach kernel version: + Darwin Kernel Version 22.4.0: Mon Mar 6 21:00:41 PST 2023; root:xnu-8796.101.5~3/RELEASE_ARM64_T8103 +Kernel configured for up to 8 processors. +8 processors are physically available. +8 processors are logically available. +Processor type: arm64e (ARM64E) +Processors active: 0 1 2 3 4 5 6 7 +Primary memory available: 16.00 gigabytes +Default processor set: 467 tasks, 3514 threads, 8 processors +Load average: 3.40, Mach factor: 4.60 +/bin/machine = unknown +/usr/bin/oslevel = unknown +/bin/universe = unknown + +PATH: /Users/yangzuhao/.icafe/bin/ +PATH: HOME/Data/tools/ +PATH: /Users/yangzuhao/Data/code/gopath/bin/ +PATH: /Users/yangzuhao/Data/go-env/go1.18.5/bin/ +PATH: /opt/homebrew/bin/ +PATH: /opt/homebrew/sbin/ +PATH: /usr/local/bin/ +PATH: /System/Cryptexes/App/usr/bin/ +PATH: /usr/bin/ +PATH: /bin/ +PATH: /usr/sbin/ +PATH: /sbin/ +PATH: /Library/Apple/usr/bin/ +PATH: /var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/local/bin/ +PATH: /var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/bin/ +PATH: /var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/appleinternal/bin/ +PATH: /Users/yangzuhao/.otm/ +PATH: /Users/yangzuhao/Data/dev-env/flutter/bin/ + + +## ----------- ## +## Core tests. ## +## ----------- ## + +configure:2410: looking for aux files: ltmain.sh config.guess config.sub install-sh +configure:2423: trying ./build-aux/ +configure:2452: ./build-aux/ltmain.sh found +configure:2452: ./build-aux/config.guess found +configure:2452: ./build-aux/config.sub found +configure:2434: ./build-aux/install-sh found +configure:2567: checking whether make sets $(MAKE) +configure:2590: result: yes +configure:2663: checking for gcc +configure:2684: found /usr/bin/gcc +configure:2695: result: gcc +configure:3048: checking for C compiler version +configure:3057: gcc --version >&5 +Apple clang version 14.0.3 (clang-1403.0.22.14.1) +Target: arm64-apple-darwin22.4.0 +Thread model: posix +InstalledDir: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin +configure:3068: $? = 0 +configure:3057: gcc -v >&5 +Apple clang version 14.0.3 (clang-1403.0.22.14.1) +Target: arm64-apple-darwin22.4.0 +Thread model: posix +InstalledDir: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin +configure:3068: $? = 0 +configure:3057: gcc -V >&5 +clang: error: argument to '-V' is missing (expected 1 value) +clang: error: no input files +configure:3068: $? = 1 +configure:3057: gcc -qversion >&5 +clang: error: unknown argument '-qversion'; did you mean '--version'? +clang: error: no input files +configure:3068: $? = 1 +configure:3057: gcc -version >&5 +clang: error: unknown argument '-version'; did you mean '--version'? +clang: error: no input files +configure:3068: $? = 1 +configure:3088: checking whether the C compiler works +configure:3110: gcc conftest.c >&5 +configure:3114: $? = 0 +configure:3164: result: yes +configure:3167: checking for C compiler default output file name +configure:3169: result: a.out +configure:3175: checking for suffix of executables +configure:3182: gcc -o conftest conftest.c >&5 +configure:3186: $? = 0 +configure:3209: result: +configure:3231: checking whether we are cross compiling +configure:3239: gcc -o conftest conftest.c >&5 +configure:3243: $? = 0 +configure:3250: ./conftest +configure:3254: $? = 0 +configure:3269: result: no +configure:3274: checking for suffix of object files +configure:3297: gcc -c conftest.c >&5 +configure:3301: $? = 0 +configure:3323: result: o +configure:3327: checking whether the compiler supports GNU C +configure:3347: gcc -c conftest.c >&5 +configure:3347: $? = 0 +configure:3357: result: yes +configure:3368: checking whether gcc accepts -g +configure:3389: gcc -c -g conftest.c >&5 +configure:3389: $? = 0 +configure:3433: result: yes +configure:3453: checking for gcc option to enable C11 features +configure:3468: gcc -c -g -O2 conftest.c >&5 +conftest.c:23:14: warning: a function declaration without a prototype is deprecated in all versions of C and is not supported in C2x [-Wdeprecated-non-prototype] +static char *e (p, i) + ^ +1 warning generated. +configure:3468: $? = 0 +configure:3486: result: none needed +configure:3601: checking how to run the C preprocessor +configure:3627: gcc -E conftest.c +configure:3627: $? = 0 +configure:3642: gcc -E conftest.c +conftest.c:9:10: fatal error: 'ac_nonexistent.h' file not found +#include + ^~~~~~~~~~~~~~~~~~ +1 error generated. +configure:3642: $? = 1 +configure: failed program was: +| /* confdefs.h */ +| #define PACKAGE_NAME "libcharset" +| #define PACKAGE_TARNAME "libcharset" +| #define PACKAGE_VERSION "1.5" +| #define PACKAGE_STRING "libcharset 1.5" +| #define PACKAGE_BUGREPORT "" +| #define PACKAGE_URL "" +| /* end confdefs.h. */ +| #include +configure:3669: result: gcc -E +configure:3683: gcc -E conftest.c +configure:3683: $? = 0 +configure:3698: gcc -E conftest.c +conftest.c:9:10: fatal error: 'ac_nonexistent.h' file not found +#include + ^~~~~~~~~~~~~~~~~~ +1 error generated. +configure:3698: $? = 1 +configure: failed program was: +| /* confdefs.h */ +| #define PACKAGE_NAME "libcharset" +| #define PACKAGE_TARNAME "libcharset" +| #define PACKAGE_VERSION "1.5" +| #define PACKAGE_STRING "libcharset 1.5" +| #define PACKAGE_BUGREPORT "" +| #define PACKAGE_URL "" +| /* end confdefs.h. */ +| #include +configure:3744: checking for a BSD-compatible install +configure:3817: result: /opt/homebrew/bin/ginstall -c +configure:3836: checking build system type +configure:3851: result: aarch64-apple-darwin22.4.0 +configure:3871: checking host system type +configure:3885: result: aarch64-apple-darwin22.4.0 +configure:3914: checking for stdio.h +configure:3914: gcc -c -g -O2 conftest.c >&5 +configure:3914: $? = 0 +configure:3914: result: yes +configure:3914: checking for stdlib.h +configure:3914: gcc -c -g -O2 conftest.c >&5 +configure:3914: $? = 0 +configure:3914: result: yes +configure:3914: checking for string.h +configure:3914: gcc -c -g -O2 conftest.c >&5 +configure:3914: $? = 0 +configure:3914: result: yes +configure:3914: checking for inttypes.h +configure:3914: gcc -c -g -O2 conftest.c >&5 +configure:3914: $? = 0 +configure:3914: result: yes +configure:3914: checking for stdint.h +configure:3914: gcc -c -g -O2 conftest.c >&5 +configure:3914: $? = 0 +configure:3914: result: yes +configure:3914: checking for strings.h +configure:3914: gcc -c -g -O2 conftest.c >&5 +configure:3914: $? = 0 +configure:3914: result: yes +configure:3914: checking for sys/stat.h +configure:3914: gcc -c -g -O2 conftest.c >&5 +configure:3914: $? = 0 +configure:3914: result: yes +configure:3914: checking for sys/types.h +configure:3914: gcc -c -g -O2 conftest.c >&5 +configure:3914: $? = 0 +configure:3914: result: yes +configure:3914: checking for unistd.h +configure:3914: gcc -c -g -O2 conftest.c >&5 +configure:3914: $? = 0 +configure:3914: result: yes +configure:3914: checking for wchar.h +configure:3914: gcc -c -g -O2 conftest.c >&5 +configure:3914: $? = 0 +configure:3914: result: yes +configure:3914: checking for minix/config.h +configure:3914: gcc -c -g -O2 conftest.c >&5 +conftest.c:47:10: fatal error: 'minix/config.h' file not found +#include + ^~~~~~~~~~~~~~~~ +1 error generated. +configure:3914: $? = 1 +configure: failed program was: +| /* confdefs.h */ +| #define PACKAGE_NAME "libcharset" +| #define PACKAGE_TARNAME "libcharset" +| #define PACKAGE_VERSION "1.5" +| #define PACKAGE_STRING "libcharset 1.5" +| #define PACKAGE_BUGREPORT "" +| #define PACKAGE_URL "" +| #define HAVE_STDIO_H 1 +| #define HAVE_STDLIB_H 1 +| #define HAVE_STRING_H 1 +| #define HAVE_INTTYPES_H 1 +| #define HAVE_STDINT_H 1 +| #define HAVE_STRINGS_H 1 +| #define HAVE_SYS_STAT_H 1 +| #define HAVE_SYS_TYPES_H 1 +| #define HAVE_UNISTD_H 1 +| #define HAVE_WCHAR_H 1 +| /* end confdefs.h. */ +| #include +| #ifdef HAVE_STDIO_H +| # include +| #endif +| #ifdef HAVE_STDLIB_H +| # include +| #endif +| #ifdef HAVE_STRING_H +| # include +| #endif +| #ifdef HAVE_INTTYPES_H +| # include +| #endif +| #ifdef HAVE_STDINT_H +| # include +| #endif +| #ifdef HAVE_STRINGS_H +| # include +| #endif +| #ifdef HAVE_SYS_TYPES_H +| # include +| #endif +| #ifdef HAVE_SYS_STAT_H +| # include +| #endif +| #ifdef HAVE_UNISTD_H +| # include +| #endif +| #include +configure:3914: result: no +configure:3945: checking whether it is safe to define __EXTENSIONS__ +configure:3964: gcc -c -g -O2 conftest.c >&5 +configure:3964: $? = 0 +configure:3972: result: yes +configure:3975: checking whether _XOPEN_SOURCE should be defined +configure:3997: gcc -c -g -O2 conftest.c >&5 +configure:3997: $? = 0 +configure:4024: result: no +configure:4134: checking how to print strings +configure:4161: result: printf +configure:4182: checking for a sed that does not truncate output +configure:4252: result: /usr/bin/sed +configure:4270: checking for grep that handles long lines and -e +configure:4334: result: /usr/bin/grep +configure:4339: checking for egrep +configure:4407: result: /usr/bin/grep -E +configure:4412: checking for fgrep +configure:4480: result: /usr/bin/grep -F +configure:4516: checking for ld used by gcc +configure:4584: result: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ld +configure:4591: checking if the linker (/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ld) is GNU ld +configure:4607: result: no +configure:4619: checking for BSD- or MS-compatible name lister (nm) +configure:4674: result: /usr/bin/nm -B +configure:4814: checking the name lister (/usr/bin/nm -B) interface +configure:4822: gcc -c -g -O2 conftest.c >&5 +configure:4825: /usr/bin/nm -B "conftest.o" +configure:4828: output +000000000000025c S _some_variable +0000000000000000 t ltmp0 +000000000000025c s ltmp1 +configure:4835: result: BSD nm +configure:4838: checking whether ln -s works +configure:4842: result: yes +configure:4850: checking the maximum length of command line arguments +configure:4982: result: 786432 +configure:5030: checking how to convert aarch64-apple-darwin22.4.0 file names to aarch64-apple-darwin22.4.0 format +configure:5071: result: func_convert_file_noop +configure:5078: checking how to convert aarch64-apple-darwin22.4.0 file names to toolchain format +configure:5099: result: func_convert_file_noop +configure:5106: checking for /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ld option to reload object files +configure:5114: result: -r +configure:5193: checking for file +configure:5214: found /usr/bin/file +configure:5225: result: file +configure:5301: checking for objdump +configure:5322: found /usr/bin/objdump +configure:5333: result: objdump +configure:5362: checking how to recognize dependent libraries +configure:5563: result: pass_all +configure:5653: checking for dlltool +configure:5688: result: no +configure:5715: checking how to associate runtime and link libraries +configure:5743: result: printf %s\n +configure:5808: checking for ar +configure:5829: found /usr/bin/ar +configure:5840: result: ar +configure:5893: checking for archiver @FILE support +configure:5911: gcc -c -g -O2 conftest.c >&5 +configure:5911: $? = 0 +configure:5915: ar cr libconftest.a @conftest.lst >&5 +ar: @conftest.lst: No such file or directory +configure:5918: $? = 1 +configure:5938: result: no +configure:6001: checking for strip +configure:6022: found /usr/bin/strip +configure:6033: result: strip +configure:6110: checking for ranlib +configure:6131: found /usr/bin/ranlib +configure:6142: result: ranlib +configure:6219: checking for gawk +configure:6240: found /opt/homebrew/bin/gawk +configure:6251: result: gawk +configure:6291: checking command to parse /usr/bin/nm -B output from gcc object +configure:6445: gcc -c -g -O2 conftest.c >&5 +configure:6448: $? = 0 +configure:6452: /usr/bin/nm -B conftest.o \| /usr/bin/sed -n -e 's/^.*[ ]\([ABCDGIRSTW][ABCDGIRSTW]*\)[ ][ ]*\([_A-Za-z][_A-Za-z0-9]*\)$/\1 \2 \2/p' | /usr/bin/sed '/ __gnu_lto/d' \> conftest.nm +configure:6455: $? = 0 +cannot find nm_test_var in conftest.nm +configure:6445: gcc -c -g -O2 conftest.c >&5 +configure:6448: $? = 0 +configure:6452: /usr/bin/nm -B conftest.o \| /usr/bin/sed -n -e 's/^.*[ ]\([ABCDGIRSTW][ABCDGIRSTW]*\)[ ][ ]*_\([_A-Za-z][_A-Za-z0-9]*\)$/\1 _\2 \2/p' | /usr/bin/sed '/ __gnu_lto/d' \> conftest.nm +configure:6455: $? = 0 +configure:6521: gcc -o conftest -g -O2 conftest.c conftstm.o >&5 +warning: (arm64) could not find object file symbol for symbol _main +configure:6524: $? = 0 +configure:6562: result: ok +configure:6609: checking for sysroot +configure:6640: result: no +configure:6647: checking for a working dd +configure:6691: result: /bin/dd +configure:6695: checking how to truncate binary pipes +configure:6711: result: /bin/dd bs=4096 count=1 +configure:7048: checking for mt +configure:7083: result: no +configure:7103: checking if : is a manifest tool +configure:7110: : '-?' +configure:7118: result: no +configure:7179: checking for dsymutil +configure:7200: found /usr/bin/dsymutil +configure:7211: result: dsymutil +configure:7281: checking for nmedit +configure:7302: found /usr/bin/nmedit +configure:7313: result: nmedit +configure:7383: checking for lipo +configure:7404: found /usr/bin/lipo +configure:7415: result: lipo +configure:7485: checking for otool +configure:7506: found /usr/bin/otool +configure:7517: result: otool +configure:7587: checking for otool64 +configure:7622: result: no +configure:7667: checking for -single_module linker flag +gcc -g -O2 -o libconftest.dylib -dynamiclib -Wl,-single_module conftest.c +configure:7701: result: yes +configure:7704: checking for -exported_symbols_list linker flag +configure:7725: gcc -o conftest -g -O2 -Wl,-exported_symbols_list,conftest.sym conftest.c >&5 +configure:7725: $? = 0 +configure:7736: result: yes +configure:7739: checking for -force_load linker flag +gcc -g -O2 -c -o conftest.o conftest.c +ar cr libconftest.a conftest.o +ranlib libconftest.a +gcc -g -O2 -o conftest conftest.c -Wl,-force_load,./libconftest.a +configure:7772: result: yes +configure:7839: checking for dlfcn.h +configure:7839: gcc -c -g -O2 conftest.c >&5 +configure:7839: $? = 0 +configure:7839: result: yes +configure:8426: checking for objdir +configure:8442: result: .libs +configure:8706: checking if gcc supports -fno-rtti -fno-exceptions +configure:8725: gcc -c -g -O2 -fno-rtti -fno-exceptions conftest.c >&5 +configure:8729: $? = 0 +configure:8742: result: yes +configure:9100: checking for gcc option to produce PIC +configure:9108: result: -fno-common -DPIC +configure:9116: checking if gcc PIC flag -fno-common -DPIC works +configure:9135: gcc -c -g -O2 -fno-common -DPIC -DPIC conftest.c >&5 +configure:9139: $? = 0 +configure:9152: result: yes +configure:9181: checking if gcc static flag -static works +configure:9210: result: no +configure:9225: checking if gcc supports -c -o file.o +configure:9247: gcc -c -g -O2 -o out/conftest2.o conftest.c >&5 +configure:9251: $? = 0 +configure:9273: result: yes +configure:9281: checking if gcc supports -c -o file.o +configure:9329: result: yes +configure:9362: checking whether the gcc linker (/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ld) supports shared libraries +configure:10630: result: yes +configure:10871: checking dynamic linker characteristics +configure:11692: result: darwin22.4.0 dyld +configure:11814: checking how to hardcode library paths into programs +configure:11839: result: immediate +configure:12391: checking whether stripping libraries is possible +configure:12408: result: yes +configure:12442: checking if libtool supports shared libraries +configure:12444: result: yes +configure:12447: checking whether to build shared libraries +configure:12472: result: yes +configure:12475: checking whether to build static libraries +configure:12479: result: yes +configure:12540: checking for ld +configure:12671: result: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ld +configure:12678: checking if the linker (/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ld) is GNU ld +configure:12694: result: no +configure:12700: checking for shared library path variable +configure:12714: result: DYLD_LIBRARY_PATH +configure:12719: checking whether to activate relocatable installation +configure:12735: result: no +configure:12895: checking whether the -Werror option is usable +configure:12914: gcc -c -g -O2 -Werror conftest.c >&5 +configure:12914: $? = 0 +configure:12924: result: yes +configure:12926: checking for simple visibility declarations +configure:12958: gcc -c -g -O2 -fvisibility=hidden -Werror conftest.c >&5 +configure:12958: $? = 0 +configure:12968: result: yes +configure:12984: checking for nl_langinfo and CODESET +configure:13001: gcc -o conftest -g -O2 conftest.c >&5 +configure:13001: $? = 0 +configure:13011: result: yes +configure:13023: checking for symlink +configure:13023: gcc -o conftest -g -O2 conftest.c >&5 +configure:13023: $? = 0 +configure:13023: result: yes +configure:13037: checking for working fcntl.h +configure:13148: gcc -o conftest -g -O2 conftest.c >&5 +conftest.c:52:12: error: unknown type name 'GL_MDA_DEFINES' + GL_MDA_DEFINES + ^ +1 error generated. +configure:13148: $? = 1 +configure: program exited with status 1 +configure: failed program was: +| /* confdefs.h */ +| #define PACKAGE_NAME "libcharset" +| #define PACKAGE_TARNAME "libcharset" +| #define PACKAGE_VERSION "1.5" +| #define PACKAGE_STRING "libcharset 1.5" +| #define PACKAGE_BUGREPORT "" +| #define PACKAGE_URL "" +| #define HAVE_STDIO_H 1 +| #define HAVE_STDLIB_H 1 +| #define HAVE_STRING_H 1 +| #define HAVE_INTTYPES_H 1 +| #define HAVE_STDINT_H 1 +| #define HAVE_STRINGS_H 1 +| #define HAVE_SYS_STAT_H 1 +| #define HAVE_SYS_TYPES_H 1 +| #define HAVE_UNISTD_H 1 +| #define HAVE_WCHAR_H 1 +| #define STDC_HEADERS 1 +| #define _ALL_SOURCE 1 +| #define _DARWIN_C_SOURCE 1 +| #define _GNU_SOURCE 1 +| #define _HPUX_ALT_XOPEN_SOCKET_API 1 +| #define _NETBSD_SOURCE 1 +| #define _OPENBSD_SOURCE 1 +| #define _POSIX_PTHREAD_SEMANTICS 1 +| #define __STDC_WANT_IEC_60559_ATTRIBS_EXT__ 1 +| #define __STDC_WANT_IEC_60559_BFP_EXT__ 1 +| #define __STDC_WANT_IEC_60559_DFP_EXT__ 1 +| #define __STDC_WANT_IEC_60559_FUNCS_EXT__ 1 +| #define __STDC_WANT_IEC_60559_TYPES_EXT__ 1 +| #define __STDC_WANT_LIB_EXT2__ 1 +| #define __STDC_WANT_MATH_SPEC_FUNCS__ 1 +| #define _TANDEM_SOURCE 1 +| #define __EXTENSIONS__ 1 +| #define HAVE_DLFCN_H 1 +| #define LT_OBJDIR ".libs/" +| #define INSTALLPREFIX "/Users/yangzuhao/Downloads/libiconv-1.17/output" +| #define HAVE_VISIBILITY 1 +| #define HAVE_LANGINFO_CODESET 1 +| #define HAVE_SYMLINK 1 +| /* end confdefs.h. */ +| #include +| #include +| #if HAVE_UNISTD_H +| # include +| #else /* on Windows with MSVC */ +| # include +| # include +| # defined sleep(n) _sleep ((n) * 1000) +| #endif +| #include +| GL_MDA_DEFINES +| #ifndef O_NOATIME +| #define O_NOATIME 0 +| #endif +| #ifndef O_NOFOLLOW +| #define O_NOFOLLOW 0 +| #endif +| static int const constants[] = +| { +| O_CREAT, O_EXCL, O_NOCTTY, O_TRUNC, O_APPEND, +| O_NONBLOCK, O_SYNC, O_ACCMODE, O_RDONLY, O_RDWR, O_WRONLY +| }; +| +| int +| main (void) +| { +| +| int result = !constants; +| #if HAVE_SYMLINK +| { +| static char const sym[] = "conftest.sym"; +| if (symlink ("/dev/null", sym) != 0) +| result |= 2; +| else +| { +| int fd = open (sym, O_WRONLY | O_NOFOLLOW | O_CREAT, 0); +| if (fd >= 0) +| { +| close (fd); +| result |= 4; +| } +| } +| if (unlink (sym) != 0 || symlink (".", sym) != 0) +| result |= 2; +| else +| { +| int fd = open (sym, O_RDONLY | O_NOFOLLOW); +| if (fd >= 0) +| { +| close (fd); +| result |= 4; +| } +| } +| unlink (sym); +| } +| #endif +| { +| static char const file[] = "confdefs.h"; +| int fd = open (file, O_RDONLY | O_NOATIME); +| if (fd < 0) +| result |= 8; +| else +| { +| struct stat st0; +| if (fstat (fd, &st0) != 0) +| result |= 16; +| else +| { +| char c; +| sleep (1); +| if (read (fd, &c, 1) != 1) +| result |= 24; +| else +| { +| if (close (fd) != 0) +| result |= 32; +| else +| { +| struct stat st1; +| if (stat (file, &st1) != 0) +| result |= 40; +| else +| if (st0.st_atime != st1.st_atime) +| result |= 64; +| } +| } +| } +| } +| } +| return result; +| ; +| return 0; +| } +configure:13165: result: no +configure:13184: checking for setlocale +configure:13184: gcc -o conftest -g -O2 conftest.c >&5 +configure:13184: $? = 0 +configure:13184: result: yes +configure:13326: creating ./config.status + +## ---------------------- ## +## Running config.status. ## +## ---------------------- ## + +This file was extended by libcharset config.status 1.5, which was +generated by GNU Autoconf 2.71. Invocation command line was + + CONFIG_FILES = + CONFIG_HEADERS = + CONFIG_LINKS = + CONFIG_COMMANDS = + $ ./config.status + +on Yaha-baidu + +config.status:1084: creating Makefile +config.status:1084: creating lib/Makefile +config.status:1084: creating include/libcharset.h +config.status:1084: creating include/libcharset.h.inst +config.status:1084: creating include/localcharset.h +config.status:1084: creating include/localcharset.h.inst +config.status:1084: creating config.h +config.status:1273: executing libtool commands + +## ---------------- ## +## Cache variables. ## +## ---------------- ## + +ac_cv_build=aarch64-apple-darwin22.4.0 +ac_cv_c_compiler_gnu=yes +ac_cv_env_CC_set= +ac_cv_env_CC_value= +ac_cv_env_CFLAGS_set= +ac_cv_env_CFLAGS_value= +ac_cv_env_CPPFLAGS_set= +ac_cv_env_CPPFLAGS_value= +ac_cv_env_CPP_set= +ac_cv_env_CPP_value= +ac_cv_env_LDFLAGS_set= +ac_cv_env_LDFLAGS_value= +ac_cv_env_LIBS_set= +ac_cv_env_LIBS_value= +ac_cv_env_LT_SYS_LIBRARY_PATH_set= +ac_cv_env_LT_SYS_LIBRARY_PATH_value= +ac_cv_env_build_alias_set= +ac_cv_env_build_alias_value= +ac_cv_env_host_alias_set= +ac_cv_env_host_alias_value= +ac_cv_env_target_alias_set= +ac_cv_env_target_alias_value= +ac_cv_func_setlocale=yes +ac_cv_func_symlink=yes +ac_cv_header_dlfcn_h=yes +ac_cv_header_inttypes_h=yes +ac_cv_header_minix_config_h=no +ac_cv_header_stdint_h=yes +ac_cv_header_stdio_h=yes +ac_cv_header_stdlib_h=yes +ac_cv_header_string_h=yes +ac_cv_header_strings_h=yes +ac_cv_header_sys_stat_h=yes +ac_cv_header_sys_types_h=yes +ac_cv_header_unistd_h=yes +ac_cv_header_wchar_h=yes +ac_cv_host=aarch64-apple-darwin22.4.0 +ac_cv_objext=o +ac_cv_path_EGREP='/usr/bin/grep -E' +ac_cv_path_FGREP='/usr/bin/grep -F' +ac_cv_path_GREP=/usr/bin/grep +ac_cv_path_SED=/usr/bin/sed +ac_cv_path_install='/opt/homebrew/bin/ginstall -c' +ac_cv_path_lt_DD=/bin/dd +ac_cv_prog_AWK=gawk +ac_cv_prog_CPP='gcc -E' +ac_cv_prog_ac_ct_AR=ar +ac_cv_prog_ac_ct_CC=gcc +ac_cv_prog_ac_ct_DSYMUTIL=dsymutil +ac_cv_prog_ac_ct_FILECMD=file +ac_cv_prog_ac_ct_LIPO=lipo +ac_cv_prog_ac_ct_NMEDIT=nmedit +ac_cv_prog_ac_ct_OBJDUMP=objdump +ac_cv_prog_ac_ct_OTOOL=otool +ac_cv_prog_ac_ct_RANLIB=ranlib +ac_cv_prog_ac_ct_STRIP=strip +ac_cv_prog_cc_c11= +ac_cv_prog_cc_g=yes +ac_cv_prog_cc_stdc= +ac_cv_prog_make_make_set=yes +ac_cv_safe_to_define___extensions__=yes +ac_cv_should_define__xopen_source=no +acl_cv_libpath=DYLD_LIBRARY_PATH +acl_cv_prog_gnu_ld=no +acl_cv_shlibpath_var=DYLD_LIBRARY_PATH +am_cv_langinfo_codeset=yes +gl_cv_cc_vis_werror=yes +gl_cv_cc_visibility=yes +gl_cv_header_working_fcntl_h=no +lt_cv_apple_cc_single_mod=yes +lt_cv_ar_at_file=no +lt_cv_deplibs_check_method=pass_all +lt_cv_file_magic_cmd='$MAGIC_CMD' +lt_cv_file_magic_test_file= +lt_cv_ld_exported_symbols_list=yes +lt_cv_ld_force_load=yes +lt_cv_ld_reload_flag=-r +lt_cv_nm_interface='BSD nm' +lt_cv_objdir=.libs +lt_cv_path_LD=/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ld +lt_cv_path_NM='/usr/bin/nm -B' +lt_cv_path_mainfest_tool=no +lt_cv_prog_compiler_c_o=yes +lt_cv_prog_compiler_pic='-fno-common -DPIC' +lt_cv_prog_compiler_pic_works=yes +lt_cv_prog_compiler_rtti_exceptions=yes +lt_cv_prog_compiler_static_works=no +lt_cv_prog_gnu_ld=no +lt_cv_sharedlib_from_linklib_cmd='printf %s\n' +lt_cv_sys_global_symbol_pipe='/usr/bin/sed -n -e '\''s/^.*[ ]\([ABCDGIRSTW][ABCDGIRSTW]*\)[ ][ ]*_\([_A-Za-z][_A-Za-z0-9]*\)$/\1 _\2 \2/p'\'' | /usr/bin/sed '\''/ __gnu_lto/d'\''' +lt_cv_sys_global_symbol_to_c_name_address='/usr/bin/sed -n -e '\''s/^: \(.*\) .*$/ {"\1", (void *) 0},/p'\'' -e '\''s/^[ABCDGIRSTW][ABCDGIRSTW]* .* \(.*\)$/ {"\1", (void *) \&\1},/p'\''' +lt_cv_sys_global_symbol_to_c_name_address_lib_prefix='/usr/bin/sed -n -e '\''s/^: \(.*\) .*$/ {"\1", (void *) 0},/p'\'' -e '\''s/^[ABCDGIRSTW][ABCDGIRSTW]* .* \(lib.*\)$/ {"\1", (void *) \&\1},/p'\'' -e '\''s/^[ABCDGIRSTW][ABCDGIRSTW]* .* \(.*\)$/ {"lib\1", (void *) \&\1},/p'\''' +lt_cv_sys_global_symbol_to_cdecl='/usr/bin/sed -n -e '\''s/^T .* \(.*\)$/extern int \1();/p'\'' -e '\''s/^[ABCDGIRSTW][ABCDGIRSTW]* .* \(.*\)$/extern char \1;/p'\''' +lt_cv_sys_global_symbol_to_import= +lt_cv_sys_max_cmd_len=786432 +lt_cv_to_host_file_cmd=func_convert_file_noop +lt_cv_to_tool_file_cmd=func_convert_file_noop +lt_cv_truncate_bin='/bin/dd bs=4096 count=1' + +## ----------------- ## +## Output variables. ## +## ----------------- ## + +AR='ar' +AS='as' +AWK='gawk' +CC='gcc' +CFLAGS='-g -O2' +CFLAG_VISIBILITY='-fvisibility=hidden' +CPP='gcc -E' +CPPFLAGS='' +DEFS='-DHAVE_CONFIG_H' +DLLTOOL='false' +DSYMUTIL='dsymutil' +DUMPBIN='' +ECHO_C='\c' +ECHO_N='' +ECHO_T='' +EGREP='/usr/bin/grep -E' +EXEEXT='' +FGREP='/usr/bin/grep -F' +FILECMD='file' +GREP='/usr/bin/grep' +HAVE_VISIBILITY='1' +INSTALL_DATA='${INSTALL} -m 644' +INSTALL_PROGRAM='${INSTALL}' +INSTALL_PROGRAM_ENV='' +INSTALL_SCRIPT='${INSTALL}' +LD='/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ld' +LDFLAGS='' +LIBOBJS='' +LIBS='' +LIBTOOL='/bin/sh $(top_builddir)/libtool' +LIPO='lipo' +LN_S='ln -s' +LTLIBOBJS='' +LT_SYS_LIBRARY_PATH='' +MANIFEST_TOOL=':' +NM='/usr/bin/nm -B' +NMEDIT='nmedit' +OBJDUMP='objdump' +OBJEXT='o' +OTOOL64=':' +OTOOL='otool' +PACKAGE_BUGREPORT='' +PACKAGE_NAME='libcharset' +PACKAGE_STRING='libcharset 1.5' +PACKAGE_TARNAME='libcharset' +PACKAGE_URL='' +PACKAGE_VERSION='1.5' +PATH_SEPARATOR=':' +RANLIB='ranlib' +RELOCATABLE='no' +RELOCATABLE_BUILD_DIR='$(top_builddir)/' +RELOCATABLE_CONFIG_H_DIR='$(top_builddir)' +RELOCATABLE_LDFLAGS='' +RELOCATABLE_LIBRARY_PATH='' +RELOCATABLE_SRC_DIR='$(top_srcdir)/' +RELOCATABLE_STRIP=':' +RELOCATABLE_VIA_LD_FALSE='' +RELOCATABLE_VIA_LD_TRUE='#' +RELOCATABLE_VIA_WRAPPER_FALSE='' +RELOCATABLE_VIA_WRAPPER_TRUE='#' +SED='/usr/bin/sed' +SET_MAKE='' +SHELL='/bin/sh' +STRIP='strip' +ac_ct_AR='ar' +ac_ct_CC='gcc' +ac_ct_DUMPBIN='' +bindir='${exec_prefix}/bin' +build='aarch64-apple-darwin22.4.0' +build_alias='' +build_cpu='aarch64' +build_os='darwin22.4.0' +build_vendor='apple' +datadir='${datarootdir}' +datarootdir='${prefix}/share' +docdir='${datarootdir}/doc/${PACKAGE_TARNAME}' +dvidir='${docdir}' +exec_prefix='${prefix}' +host='aarch64-apple-darwin22.4.0' +host_alias='' +host_cpu='aarch64' +host_os='darwin22.4.0' +host_vendor='apple' +htmldir='${docdir}' +includedir='${prefix}/include' +infodir='${datarootdir}/info' +libdir='${exec_prefix}/lib' +libexecdir='${exec_prefix}/libexec' +localedir='${datarootdir}/locale' +localstatedir='${prefix}/var' +mandir='${datarootdir}/man' +oldincludedir='/usr/include' +pdfdir='${docdir}' +prefix='/Users/yangzuhao/Downloads/libiconv-1.17/output' +program_transform_name='s,x,x,' +psdir='${docdir}' +runstatedir='${localstatedir}/run' +sbindir='${exec_prefix}/sbin' +sharedstatedir='${prefix}/com' +sysconfdir='${prefix}/etc' +target_alias='' + +## ----------- ## +## confdefs.h. ## +## ----------- ## + +/* confdefs.h */ +#define PACKAGE_NAME "libcharset" +#define PACKAGE_TARNAME "libcharset" +#define PACKAGE_VERSION "1.5" +#define PACKAGE_STRING "libcharset 1.5" +#define PACKAGE_BUGREPORT "" +#define PACKAGE_URL "" +#define HAVE_STDIO_H 1 +#define HAVE_STDLIB_H 1 +#define HAVE_STRING_H 1 +#define HAVE_INTTYPES_H 1 +#define HAVE_STDINT_H 1 +#define HAVE_STRINGS_H 1 +#define HAVE_SYS_STAT_H 1 +#define HAVE_SYS_TYPES_H 1 +#define HAVE_UNISTD_H 1 +#define HAVE_WCHAR_H 1 +#define STDC_HEADERS 1 +#define _ALL_SOURCE 1 +#define _DARWIN_C_SOURCE 1 +#define _GNU_SOURCE 1 +#define _HPUX_ALT_XOPEN_SOCKET_API 1 +#define _NETBSD_SOURCE 1 +#define _OPENBSD_SOURCE 1 +#define _POSIX_PTHREAD_SEMANTICS 1 +#define __STDC_WANT_IEC_60559_ATTRIBS_EXT__ 1 +#define __STDC_WANT_IEC_60559_BFP_EXT__ 1 +#define __STDC_WANT_IEC_60559_DFP_EXT__ 1 +#define __STDC_WANT_IEC_60559_FUNCS_EXT__ 1 +#define __STDC_WANT_IEC_60559_TYPES_EXT__ 1 +#define __STDC_WANT_LIB_EXT2__ 1 +#define __STDC_WANT_MATH_SPEC_FUNCS__ 1 +#define _TANDEM_SOURCE 1 +#define __EXTENSIONS__ 1 +#define HAVE_DLFCN_H 1 +#define LT_OBJDIR ".libs/" +#define INSTALLPREFIX "/Users/yangzuhao/Downloads/libiconv-1.17/output" +#define HAVE_VISIBILITY 1 +#define HAVE_LANGINFO_CODESET 1 +#define HAVE_SYMLINK 1 +#define HAVE_WORKING_O_NOATIME 0 +#define HAVE_WORKING_O_NOFOLLOW 0 +#define HAVE_SETLOCALE 1 + +configure: exit 0 diff --git a/libcharset/config.status b/libcharset/config.status new file mode 100755 index 0000000..ad4b0e3 --- /dev/null +++ b/libcharset/config.status @@ -0,0 +1,1838 @@ +#! /bin/sh +# Generated by configure. +# Run this file to recreate the current configuration. +# Compiler output produced by configure, useful for debugging +# configure, is in config.log if it exists. + +debug=false +ac_cs_recheck=false +ac_cs_silent=false + +SHELL=${CONFIG_SHELL-/bin/sh} +export SHELL +## -------------------- ## +## M4sh Initialization. ## +## -------------------- ## + +# Be more Bourne compatible +DUALCASE=1; export DUALCASE # for MKS sh +as_nop=: +if test ${ZSH_VERSION+y} && (emulate sh) >/dev/null 2>&1 +then : + emulate sh + NULLCMD=: + # Pre-4.2 versions of Zsh do word splitting on ${1+"$@"}, which + # is contrary to our usage. Disable this feature. + alias -g '${1+"$@"}'='"$@"' + setopt NO_GLOB_SUBST +else $as_nop + case `(set -o) 2>/dev/null` in #( + *posix*) : + set -o posix ;; #( + *) : + ;; +esac +fi + + + +# Reset variables that may have inherited troublesome values from +# the environment. + +# IFS needs to be set, to space, tab, and newline, in precisely that order. +# (If _AS_PATH_WALK were called with IFS unset, it would have the +# side effect of setting IFS to empty, thus disabling word splitting.) +# Quoting is to prevent editors from complaining about space-tab. +as_nl=' +' +export as_nl +IFS=" "" $as_nl" + +PS1='$ ' +PS2='> ' +PS4='+ ' + +# Ensure predictable behavior from utilities with locale-dependent output. +LC_ALL=C +export LC_ALL +LANGUAGE=C +export LANGUAGE + +# We cannot yet rely on "unset" to work, but we need these variables +# to be unset--not just set to an empty or harmless value--now, to +# avoid bugs in old shells (e.g. pre-3.0 UWIN ksh). This construct +# also avoids known problems related to "unset" and subshell syntax +# in other old shells (e.g. bash 2.01 and pdksh 5.2.14). +for as_var in BASH_ENV ENV MAIL MAILPATH CDPATH +do eval test \${$as_var+y} \ + && ( (unset $as_var) || exit 1) >/dev/null 2>&1 && unset $as_var || : +done + +# Ensure that fds 0, 1, and 2 are open. +if (exec 3>&0) 2>/dev/null; then :; else exec 0&1) 2>/dev/null; then :; else exec 1>/dev/null; fi +if (exec 3>&2) ; then :; else exec 2>/dev/null; fi + +# The user is always right. +if ${PATH_SEPARATOR+false} :; then + PATH_SEPARATOR=: + (PATH='/bin;/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 && { + (PATH='/bin:/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 || + PATH_SEPARATOR=';' + } +fi + + +# Find who we are. Look in the path if we contain no directory separator. +as_myself= +case $0 in #(( + *[\\/]* ) as_myself=$0 ;; + *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + case $as_dir in #((( + '') as_dir=./ ;; + */) ;; + *) as_dir=$as_dir/ ;; + esac + test -r "$as_dir$0" && as_myself=$as_dir$0 && break + done +IFS=$as_save_IFS + + ;; +esac +# We did not find ourselves, most probably we were run as `sh COMMAND' +# in which case we are not to be found in the path. +if test "x$as_myself" = x; then + as_myself=$0 +fi +if test ! -f "$as_myself"; then + printf "%s\n" "$as_myself: error: cannot find myself; rerun with an absolute file name" >&2 + exit 1 +fi + + + +# as_fn_error STATUS ERROR [LINENO LOG_FD] +# ---------------------------------------- +# Output "`basename $0`: error: ERROR" to stderr. If LINENO and LOG_FD are +# provided, also output the error to LOG_FD, referencing LINENO. Then exit the +# script with STATUS, using 1 if that was 0. +as_fn_error () +{ + as_status=$1; test $as_status -eq 0 && as_status=1 + if test "$4"; then + as_lineno=${as_lineno-"$3"} as_lineno_stack=as_lineno_stack=$as_lineno_stack + printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: $2" >&$4 + fi + printf "%s\n" "$as_me: error: $2" >&2 + as_fn_exit $as_status +} # as_fn_error + + + +# as_fn_set_status STATUS +# ----------------------- +# Set $? to STATUS, without forking. +as_fn_set_status () +{ + return $1 +} # as_fn_set_status + +# as_fn_exit STATUS +# ----------------- +# Exit the shell with STATUS, even in a "trap 0" or "set -e" context. +as_fn_exit () +{ + set +e + as_fn_set_status $1 + exit $1 +} # as_fn_exit + +# as_fn_unset VAR +# --------------- +# Portably unset VAR. +as_fn_unset () +{ + { eval $1=; unset $1;} +} +as_unset=as_fn_unset + +# as_fn_append VAR VALUE +# ---------------------- +# Append the text in VALUE to the end of the definition contained in VAR. Take +# advantage of any shell optimizations that allow amortized linear growth over +# repeated appends, instead of the typical quadratic growth present in naive +# implementations. +if (eval "as_var=1; as_var+=2; test x\$as_var = x12") 2>/dev/null +then : + eval 'as_fn_append () + { + eval $1+=\$2 + }' +else $as_nop + as_fn_append () + { + eval $1=\$$1\$2 + } +fi # as_fn_append + +# as_fn_arith ARG... +# ------------------ +# Perform arithmetic evaluation on the ARGs, and store the result in the +# global $as_val. Take advantage of shells that can avoid forks. The arguments +# must be portable across $(()) and expr. +if (eval "test \$(( 1 + 1 )) = 2") 2>/dev/null +then : + eval 'as_fn_arith () + { + as_val=$(( $* )) + }' +else $as_nop + as_fn_arith () + { + as_val=`expr "$@" || test $? -eq 1` + } +fi # as_fn_arith + + +if expr a : '\(a\)' >/dev/null 2>&1 && + test "X`expr 00001 : '.*\(...\)'`" = X001; then + as_expr=expr +else + as_expr=false +fi + +if (basename -- /) >/dev/null 2>&1 && test "X`basename -- / 2>&1`" = "X/"; then + as_basename=basename +else + as_basename=false +fi + +if (as_dir=`dirname -- /` && test "X$as_dir" = X/) >/dev/null 2>&1; then + as_dirname=dirname +else + as_dirname=false +fi + +as_me=`$as_basename -- "$0" || +$as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \ + X"$0" : 'X\(//\)$' \| \ + X"$0" : 'X\(/\)' \| . 2>/dev/null || +printf "%s\n" X/"$0" | + sed '/^.*\/\([^/][^/]*\)\/*$/{ + s//\1/ + q + } + /^X\/\(\/\/\)$/{ + s//\1/ + q + } + /^X\/\(\/\).*/{ + s//\1/ + q + } + s/.*/./; q'` + +# Avoid depending upon Character Ranges. +as_cr_letters='abcdefghijklmnopqrstuvwxyz' +as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ' +as_cr_Letters=$as_cr_letters$as_cr_LETTERS +as_cr_digits='0123456789' +as_cr_alnum=$as_cr_Letters$as_cr_digits + + +# Determine whether it's possible to make 'echo' print without a newline. +# These variables are no longer used directly by Autoconf, but are AC_SUBSTed +# for compatibility with existing Makefiles. +ECHO_C= ECHO_N= ECHO_T= +case `echo -n x` in #((((( +-n*) + case `echo 'xy\c'` in + *c*) ECHO_T=' ';; # ECHO_T is single tab character. + xy) ECHO_C='\c';; + *) echo `echo ksh88 bug on AIX 6.1` > /dev/null + ECHO_T=' ';; + esac;; +*) + ECHO_N='-n';; +esac + +# For backward compatibility with old third-party macros, we provide +# the shell variables $as_echo and $as_echo_n. New code should use +# AS_ECHO(["message"]) and AS_ECHO_N(["message"]), respectively. +as_echo='printf %s\n' +as_echo_n='printf %s' + +rm -f conf$$ conf$$.exe conf$$.file +if test -d conf$$.dir; then + rm -f conf$$.dir/conf$$.file +else + rm -f conf$$.dir + mkdir conf$$.dir 2>/dev/null +fi +if (echo >conf$$.file) 2>/dev/null; then + if ln -s conf$$.file conf$$ 2>/dev/null; then + as_ln_s='ln -s' + # ... but there are two gotchas: + # 1) On MSYS, both `ln -s file dir' and `ln file dir' fail. + # 2) DJGPP < 2.04 has no symlinks; `ln -s' creates a wrapper executable. + # In both cases, we have to default to `cp -pR'. + ln -s conf$$.file conf$$.dir 2>/dev/null && test ! -f conf$$.exe || + as_ln_s='cp -pR' + elif ln conf$$.file conf$$ 2>/dev/null; then + as_ln_s=ln + else + as_ln_s='cp -pR' + fi +else + as_ln_s='cp -pR' +fi +rm -f conf$$ conf$$.exe conf$$.dir/conf$$.file conf$$.file +rmdir conf$$.dir 2>/dev/null + + +# as_fn_mkdir_p +# ------------- +# Create "$as_dir" as a directory, including parents if necessary. +as_fn_mkdir_p () +{ + + case $as_dir in #( + -*) as_dir=./$as_dir;; + esac + test -d "$as_dir" || eval $as_mkdir_p || { + as_dirs= + while :; do + case $as_dir in #( + *\'*) as_qdir=`printf "%s\n" "$as_dir" | sed "s/'/'\\\\\\\\''/g"`;; #'( + *) as_qdir=$as_dir;; + esac + as_dirs="'$as_qdir' $as_dirs" + as_dir=`$as_dirname -- "$as_dir" || +$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ + X"$as_dir" : 'X\(//\)[^/]' \| \ + X"$as_dir" : 'X\(//\)$' \| \ + X"$as_dir" : 'X\(/\)' \| . 2>/dev/null || +printf "%s\n" X"$as_dir" | + sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ + s//\1/ + q + } + /^X\(\/\/\)[^/].*/{ + s//\1/ + q + } + /^X\(\/\/\)$/{ + s//\1/ + q + } + /^X\(\/\).*/{ + s//\1/ + q + } + s/.*/./; q'` + test -d "$as_dir" && break + done + test -z "$as_dirs" || eval "mkdir $as_dirs" + } || test -d "$as_dir" || as_fn_error $? "cannot create directory $as_dir" + + +} # as_fn_mkdir_p +if mkdir -p . 2>/dev/null; then + as_mkdir_p='mkdir -p "$as_dir"' +else + test -d ./-p && rmdir ./-p + as_mkdir_p=false +fi + + +# as_fn_executable_p FILE +# ----------------------- +# Test if FILE is an executable regular file. +as_fn_executable_p () +{ + test -f "$1" && test -x "$1" +} # as_fn_executable_p +as_test_x='test -x' +as_executable_p=as_fn_executable_p + +# Sed expression to map a string onto a valid CPP name. +as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'" + +# Sed expression to map a string onto a valid variable name. +as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'" + + +exec 6>&1 +## ----------------------------------- ## +## Main body of $CONFIG_STATUS script. ## +## ----------------------------------- ## +# Save the log message, to keep $0 and so on meaningful, and to +# report actual input values of CONFIG_FILES etc. instead of their +# values after options handling. +ac_log=" +This file was extended by libcharset $as_me 1.5, which was +generated by GNU Autoconf 2.71. Invocation command line was + + CONFIG_FILES = $CONFIG_FILES + CONFIG_HEADERS = $CONFIG_HEADERS + CONFIG_LINKS = $CONFIG_LINKS + CONFIG_COMMANDS = $CONFIG_COMMANDS + $ $0 $@ + +on `(hostname || uname -n) 2>/dev/null | sed 1q` +" + +# Files that config.status was made for. +config_files=" Makefile lib/Makefile include/libcharset.h:include/libcharset.h.build.in include/libcharset.h.inst:include/libcharset.h.in include/localcharset.h:include/localcharset.h.build.in include/localcharset.h.inst:include/localcharset.h.in" +config_headers=" config.h" +config_commands=" libtool" + +ac_cs_usage="\ +\`$as_me' instantiates files and other configuration actions +from templates according to the current configuration. Unless the files +and actions are specified as TAGs, all are instantiated by default. + +Usage: $0 [OPTION]... [TAG]... + + -h, --help print this help, then exit + -V, --version print version number and configuration settings, then exit + --config print configuration, then exit + -q, --quiet, --silent + do not print progress messages + -d, --debug don't remove temporary files + --recheck update $as_me by reconfiguring in the same conditions + --file=FILE[:TEMPLATE] + instantiate the configuration file FILE + --header=FILE[:TEMPLATE] + instantiate the configuration header FILE + +Configuration files: +$config_files + +Configuration headers: +$config_headers + +Configuration commands: +$config_commands + +Report bugs to the package provider." + +ac_cs_config='--disable-option-checking --prefix=/Users/yangzuhao/Downloads/libiconv-1.17/output --cache-file=/dev/null --srcdir=.' +ac_cs_version="\ +libcharset config.status 1.5 +configured by ./configure, generated by GNU Autoconf 2.71, + with options \"$ac_cs_config\" + +Copyright (C) 2021 Free Software Foundation, Inc. +This config.status script is free software; the Free Software Foundation +gives unlimited permission to copy, distribute and modify it." + +ac_pwd='/Users/yangzuhao/Downloads/libiconv-1.17/libcharset' +srcdir='.' +INSTALL='/opt/homebrew/bin/ginstall -c' +AWK='gawk' +test -n "$AWK" || AWK=awk +# The default lists apply if the user does not specify any file. +ac_need_defaults=: +while test $# != 0 +do + case $1 in + --*=?*) + ac_option=`expr "X$1" : 'X\([^=]*\)='` + ac_optarg=`expr "X$1" : 'X[^=]*=\(.*\)'` + ac_shift=: + ;; + --*=) + ac_option=`expr "X$1" : 'X\([^=]*\)='` + ac_optarg= + ac_shift=: + ;; + *) + ac_option=$1 + ac_optarg=$2 + ac_shift=shift + ;; + esac + + case $ac_option in + # Handling of the options. + -recheck | --recheck | --rechec | --reche | --rech | --rec | --re | --r) + ac_cs_recheck=: ;; + --version | --versio | --versi | --vers | --ver | --ve | --v | -V ) + printf "%s\n" "$ac_cs_version"; exit ;; + --config | --confi | --conf | --con | --co | --c ) + printf "%s\n" "$ac_cs_config"; exit ;; + --debug | --debu | --deb | --de | --d | -d ) + debug=: ;; + --file | --fil | --fi | --f ) + $ac_shift + case $ac_optarg in + *\'*) ac_optarg=`printf "%s\n" "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"` ;; + '') as_fn_error $? "missing file argument" ;; + esac + as_fn_append CONFIG_FILES " '$ac_optarg'" + ac_need_defaults=false;; + --header | --heade | --head | --hea ) + $ac_shift + case $ac_optarg in + *\'*) ac_optarg=`printf "%s\n" "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"` ;; + esac + as_fn_append CONFIG_HEADERS " '$ac_optarg'" + ac_need_defaults=false;; + --he | --h) + # Conflict between --help and --header + as_fn_error $? "ambiguous option: \`$1' +Try \`$0 --help' for more information.";; + --help | --hel | -h ) + printf "%s\n" "$ac_cs_usage"; exit ;; + -q | -quiet | --quiet | --quie | --qui | --qu | --q \ + | -silent | --silent | --silen | --sile | --sil | --si | --s) + ac_cs_silent=: ;; + + # This is an error. + -*) as_fn_error $? "unrecognized option: \`$1' +Try \`$0 --help' for more information." ;; + + *) as_fn_append ac_config_targets " $1" + ac_need_defaults=false ;; + + esac + shift +done + +ac_configure_extra_args= + +if $ac_cs_silent; then + exec 6>/dev/null + ac_configure_extra_args="$ac_configure_extra_args --silent" +fi + +if $ac_cs_recheck; then + set X /bin/sh './configure' '--disable-option-checking' '--prefix=/Users/yangzuhao/Downloads/libiconv-1.17/output' '--cache-file=/dev/null' '--srcdir=.' $ac_configure_extra_args --no-create --no-recursion + shift + \printf "%s\n" "running CONFIG_SHELL=/bin/sh $*" >&6 + CONFIG_SHELL='/bin/sh' + export CONFIG_SHELL + exec "$@" +fi + +exec 5>>config.log +{ + echo + sed 'h;s/./-/g;s/^.../## /;s/...$/ ##/;p;x;p;x' <<_ASBOX +## Running $as_me. ## +_ASBOX + printf "%s\n" "$ac_log" +} >&5 + +# +# INIT-COMMANDS +# + + +# The HP-UX ksh and POSIX shell print the target directory to stdout +# if CDPATH is set. +(unset CDPATH) >/dev/null 2>&1 && unset CDPATH + +sed_quote_subst='s/\(["`$\\]\)/\\\1/g' +double_quote_subst='s/\(["`\\]\)/\\\1/g' +delay_variable_subst='s/\\\\\\\\\\\$/\\\\\\$/g' +macro_version='2.4.7' +macro_revision='2.4.7' +AS='as' +DLLTOOL='false' +OBJDUMP='objdump' +enable_shared='yes' +enable_static='yes' +pic_mode='default' +enable_fast_install='needless' +shared_archive_member_spec='' +SHELL='/bin/sh' +ECHO='printf %s\n' +PATH_SEPARATOR=':' +host_alias='' +host='aarch64-apple-darwin22.4.0' +host_os='darwin22.4.0' +build_alias='' +build='aarch64-apple-darwin22.4.0' +build_os='darwin22.4.0' +SED='/usr/bin/sed' +Xsed='/usr/bin/sed -e 1s/^X//' +GREP='/usr/bin/grep' +EGREP='/usr/bin/grep -E' +FGREP='/usr/bin/grep -F' +LD='/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ld' +NM='/usr/bin/nm -B' +LN_S='ln -s' +max_cmd_len='786432' +ac_objext='o' +exeext='' +lt_unset='unset' +lt_SP2NL='tr \040 \012' +lt_NL2SP='tr \015\012 \040\040' +lt_cv_to_host_file_cmd='func_convert_file_noop' +lt_cv_to_tool_file_cmd='func_convert_file_noop' +reload_flag=' -r' +reload_cmds='$LTCC $LTCFLAGS -nostdlib $wl-r -o $output$reload_objs' +FILECMD='file' +deplibs_check_method='pass_all' +file_magic_cmd='$MAGIC_CMD' +file_magic_glob='' +want_nocaseglob='no' +sharedlib_from_linklib_cmd='printf %s\n' +AR='ar' +lt_ar_flags='cr' +AR_FLAGS='cr' +archiver_list_spec='' +STRIP='strip' +RANLIB='ranlib' +old_postinstall_cmds='chmod 644 $oldlib~$RANLIB $tool_oldlib' +old_postuninstall_cmds='' +old_archive_cmds='$AR $AR_FLAGS $oldlib$oldobjs~$RANLIB $tool_oldlib' +lock_old_archive_extraction='yes' +CC='gcc' +CFLAGS='-g -O2' +compiler='gcc' +GCC='yes' +lt_cv_sys_global_symbol_pipe='/usr/bin/sed -n -e '\''s/^.*[ ]\([ABCDGIRSTW][ABCDGIRSTW]*\)[ ][ ]*_\([_A-Za-z][_A-Za-z0-9]*\)$/\1 _\2 \2/p'\'' | /usr/bin/sed '\''/ __gnu_lto/d'\''' +lt_cv_sys_global_symbol_to_cdecl='/usr/bin/sed -n -e '\''s/^T .* \(.*\)$/extern int \1();/p'\'' -e '\''s/^[ABCDGIRSTW][ABCDGIRSTW]* .* \(.*\)$/extern char \1;/p'\''' +lt_cv_sys_global_symbol_to_import='' +lt_cv_sys_global_symbol_to_c_name_address='/usr/bin/sed -n -e '\''s/^: \(.*\) .*$/ {"\1", (void *) 0},/p'\'' -e '\''s/^[ABCDGIRSTW][ABCDGIRSTW]* .* \(.*\)$/ {"\1", (void *) \&\1},/p'\''' +lt_cv_sys_global_symbol_to_c_name_address_lib_prefix='/usr/bin/sed -n -e '\''s/^: \(.*\) .*$/ {"\1", (void *) 0},/p'\'' -e '\''s/^[ABCDGIRSTW][ABCDGIRSTW]* .* \(lib.*\)$/ {"\1", (void *) \&\1},/p'\'' -e '\''s/^[ABCDGIRSTW][ABCDGIRSTW]* .* \(.*\)$/ {"lib\1", (void *) \&\1},/p'\''' +lt_cv_nm_interface='BSD nm' +nm_file_list_spec='@' +lt_sysroot='' +lt_cv_truncate_bin='/bin/dd bs=4096 count=1' +objdir='.libs' +MAGIC_CMD='file' +lt_prog_compiler_no_builtin_flag=' -fno-builtin -fno-rtti -fno-exceptions' +lt_prog_compiler_pic=' -fno-common -DPIC' +lt_prog_compiler_wl='-Wl,' +lt_prog_compiler_static='' +lt_cv_prog_compiler_c_o='yes' +need_locks='no' +MANIFEST_TOOL=':' +DSYMUTIL='dsymutil' +NMEDIT='nmedit' +LIPO='lipo' +OTOOL='otool' +OTOOL64=':' +libext='a' +shrext_cmds='`test .$module = .yes && echo .so || echo .dylib`' +extract_expsyms_cmds='' +archive_cmds_need_lc='no' +enable_shared_with_static_runtimes='no' +export_dynamic_flag_spec='' +whole_archive_flag_spec='`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience $wl-force_load,$conv\"; done; func_echo_all \"$new_convenience\"`' +compiler_needs_object='no' +old_archive_from_new_cmds='' +old_archive_from_expsyms_cmds='' +archive_cmds='$CC -dynamiclib $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags -install_name $rpath/$soname $verstring $single_module' +archive_expsym_cmds='/usr/bin/sed '\''s|^|_|'\'' < $export_symbols > $output_objdir/$libname-symbols.expsym~$CC -dynamiclib $allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags -install_name $rpath/$soname $verstring $single_module $wl-exported_symbols_list,$output_objdir/$libname-symbols.expsym' +module_cmds='$CC $allow_undefined_flag -o $lib -bundle $libobjs $deplibs $compiler_flags' +module_expsym_cmds='/usr/bin/sed -e '\''s|^|_|'\'' < $export_symbols > $output_objdir/$libname-symbols.expsym~$CC $allow_undefined_flag -o $lib -bundle $libobjs $deplibs $compiler_flags $wl-exported_symbols_list,$output_objdir/$libname-symbols.expsym' +with_gnu_ld='no' +allow_undefined_flag='$wl-undefined ${wl}dynamic_lookup' +no_undefined_flag='' +hardcode_libdir_flag_spec='' +hardcode_libdir_separator='' +hardcode_direct='no' +hardcode_direct_absolute='no' +hardcode_minus_L='no' +hardcode_shlibpath_var='unsupported' +hardcode_automatic='yes' +inherit_rpath='no' +link_all_deplibs='yes' +always_export_symbols='no' +export_symbols_cmds='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols' +exclude_expsyms='_GLOBAL_OFFSET_TABLE_|_GLOBAL__F[ID]_.*' +include_expsyms='' +prelink_cmds='' +postlink_cmds='' +file_list_spec='' +variables_saved_for_relink='PATH DYLD_LIBRARY_PATH GCC_EXEC_PREFIX COMPILER_PATH LIBRARY_PATH' +need_lib_prefix='no' +need_version='no' +version_type='darwin' +runpath_var='' +shlibpath_var='DYLD_LIBRARY_PATH' +shlibpath_overrides_runpath='yes' +libname_spec='lib$name' +library_names_spec='$libname$release$major$shared_ext $libname$shared_ext' +soname_spec='$libname$release$major$shared_ext' +install_override_mode='' +postinstall_cmds='' +postuninstall_cmds='' +finish_cmds='' +finish_eval='' +hardcode_into_libs='no' +sys_lib_search_path_spec='/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/clang/14.0.3 /usr/local/lib' +configure_time_dlsearch_path='/usr/local/lib /lib /usr/lib' +configure_time_lt_sys_library_path='' +hardcode_action='immediate' +enable_dlopen='unknown' +enable_dlopen_self='unknown' +enable_dlopen_self_static='unknown' +old_striplib='strip -S' +striplib='strip -x' + +LTCC='gcc' +LTCFLAGS='-g -O2' +compiler='gcc' + +# A function that is used when there is no print builtin or printf. +func_fallback_echo () +{ + eval 'cat <<_LTECHO_EOF +$1 +_LTECHO_EOF' +} + +# Quote evaled strings. +for var in AS DLLTOOL OBJDUMP SHELL ECHO PATH_SEPARATOR SED GREP EGREP FGREP LD NM LN_S lt_SP2NL lt_NL2SP reload_flag FILECMD deplibs_check_method file_magic_cmd file_magic_glob want_nocaseglob sharedlib_from_linklib_cmd AR archiver_list_spec STRIP RANLIB CC CFLAGS compiler lt_cv_sys_global_symbol_pipe lt_cv_sys_global_symbol_to_cdecl lt_cv_sys_global_symbol_to_import lt_cv_sys_global_symbol_to_c_name_address lt_cv_sys_global_symbol_to_c_name_address_lib_prefix lt_cv_nm_interface nm_file_list_spec lt_cv_truncate_bin lt_prog_compiler_no_builtin_flag lt_prog_compiler_pic lt_prog_compiler_wl lt_prog_compiler_static lt_cv_prog_compiler_c_o need_locks MANIFEST_TOOL DSYMUTIL NMEDIT LIPO OTOOL OTOOL64 shrext_cmds export_dynamic_flag_spec whole_archive_flag_spec compiler_needs_object with_gnu_ld allow_undefined_flag no_undefined_flag hardcode_libdir_flag_spec hardcode_libdir_separator exclude_expsyms include_expsyms file_list_spec variables_saved_for_relink libname_spec library_names_spec soname_spec install_override_mode finish_eval old_striplib striplib; do + case `eval \\$ECHO \\""\\$$var"\\"` in + *[\\\`\"\$]*) + eval "lt_$var=\\\"\`\$ECHO \"\$$var\" | \$SED \"\$sed_quote_subst\"\`\\\"" ## exclude from sc_prohibit_nested_quotes + ;; + *) + eval "lt_$var=\\\"\$$var\\\"" + ;; + esac +done + +# Double-quote double-evaled strings. +for var in reload_cmds old_postinstall_cmds old_postuninstall_cmds old_archive_cmds extract_expsyms_cmds old_archive_from_new_cmds old_archive_from_expsyms_cmds archive_cmds archive_expsym_cmds module_cmds module_expsym_cmds export_symbols_cmds prelink_cmds postlink_cmds postinstall_cmds postuninstall_cmds finish_cmds sys_lib_search_path_spec configure_time_dlsearch_path configure_time_lt_sys_library_path; do + case `eval \\$ECHO \\""\\$$var"\\"` in + *[\\\`\"\$]*) + eval "lt_$var=\\\"\`\$ECHO \"\$$var\" | \$SED -e \"\$double_quote_subst\" -e \"\$sed_quote_subst\" -e \"\$delay_variable_subst\"\`\\\"" ## exclude from sc_prohibit_nested_quotes + ;; + *) + eval "lt_$var=\\\"\$$var\\\"" + ;; + esac +done + +ac_aux_dir='./build-aux/' + +# See if we are running on zsh, and set the options that allow our +# commands through without removal of \ escapes INIT. +if test -n "${ZSH_VERSION+set}"; then + setopt NO_GLOB_SUBST +fi + + + PACKAGE='' + VERSION='' + RM='rm -f' + ofile='libtool' + + + + + +# Handling of arguments. +for ac_config_target in $ac_config_targets +do + case $ac_config_target in + "config.h") CONFIG_HEADERS="$CONFIG_HEADERS config.h" ;; + "libtool") CONFIG_COMMANDS="$CONFIG_COMMANDS libtool" ;; + "Makefile") CONFIG_FILES="$CONFIG_FILES Makefile" ;; + "lib/Makefile") CONFIG_FILES="$CONFIG_FILES lib/Makefile" ;; + "include/libcharset.h") CONFIG_FILES="$CONFIG_FILES include/libcharset.h:include/libcharset.h.build.in" ;; + "include/libcharset.h.inst") CONFIG_FILES="$CONFIG_FILES include/libcharset.h.inst:include/libcharset.h.in" ;; + "include/localcharset.h") CONFIG_FILES="$CONFIG_FILES include/localcharset.h:include/localcharset.h.build.in" ;; + "include/localcharset.h.inst") CONFIG_FILES="$CONFIG_FILES include/localcharset.h.inst:include/localcharset.h.in" ;; + + *) as_fn_error $? "invalid argument: \`$ac_config_target'" "$LINENO" 5;; + esac +done + + +# If the user did not use the arguments to specify the items to instantiate, +# then the envvar interface is used. Set only those that are not. +# We use the long form for the default assignment because of an extremely +# bizarre bug on SunOS 4.1.3. +if $ac_need_defaults; then + test ${CONFIG_FILES+y} || CONFIG_FILES=$config_files + test ${CONFIG_HEADERS+y} || CONFIG_HEADERS=$config_headers + test ${CONFIG_COMMANDS+y} || CONFIG_COMMANDS=$config_commands +fi + +# Have a temporary directory for convenience. Make it in the build tree +# simply because there is no reason against having it here, and in addition, +# creating and moving files from /tmp can sometimes cause problems. +# Hook for its removal unless debugging. +# Note that there is a small window in which the directory will not be cleaned: +# after its creation but before its name has been assigned to `$tmp'. +$debug || +{ + tmp= ac_tmp= + trap 'exit_status=$? + : "${ac_tmp:=$tmp}" + { test ! -d "$ac_tmp" || rm -fr "$ac_tmp"; } && exit $exit_status +' 0 + trap 'as_fn_exit 1' 1 2 13 15 +} +# Create a (secure) tmp directory for tmp files. + +{ + tmp=`(umask 077 && mktemp -d "./confXXXXXX") 2>/dev/null` && + test -d "$tmp" +} || +{ + tmp=./conf$$-$RANDOM + (umask 077 && mkdir "$tmp") +} || as_fn_error $? "cannot create a temporary directory in ." "$LINENO" 5 +ac_tmp=$tmp + +# Set up the scripts for CONFIG_FILES section. +# No need to generate them if there are no CONFIG_FILES. +# This happens for instance with `./config.status config.h'. +if test -n "$CONFIG_FILES"; then + + +ac_cr=`echo X | tr X '\015'` +# On cygwin, bash can eat \r inside `` if the user requested igncr. +# But we know of no other shell where ac_cr would be empty at this +# point, so we can use a bashism as a fallback. +if test "x$ac_cr" = x; then + eval ac_cr=\$\'\\r\' +fi +ac_cs_awk_cr=`$AWK 'BEGIN { print "a\rb" }' /dev/null` +if test "$ac_cs_awk_cr" = "a${ac_cr}b"; then + ac_cs_awk_cr='\\r' +else + ac_cs_awk_cr=$ac_cr +fi + +echo 'BEGIN {' >"$ac_tmp/subs1.awk" && +cat >>"$ac_tmp/subs1.awk" <<\_ACAWK && +S["LTLIBOBJS"]="" +S["LIBOBJS"]="" +S["HAVE_VISIBILITY"]="1" +S["CFLAG_VISIBILITY"]="-fvisibility=hidden" +S["RELOCATABLE_STRIP"]=":" +S["RELOCATABLE_BUILD_DIR"]="$(top_builddir)/" +S["RELOCATABLE_SRC_DIR"]="$(top_srcdir)/" +S["RELOCATABLE_CONFIG_H_DIR"]="$(top_builddir)" +S["RELOCATABLE_LIBRARY_PATH"]="" +S["RELOCATABLE_VIA_WRAPPER_FALSE"]="" +S["RELOCATABLE_VIA_WRAPPER_TRUE"]="#" +S["RELOCATABLE_VIA_LD_FALSE"]="" +S["RELOCATABLE_VIA_LD_TRUE"]="#" +S["INSTALL_PROGRAM_ENV"]="" +S["RELOCATABLE_LDFLAGS"]="" +S["RELOCATABLE"]="no" +S["LT_SYS_LIBRARY_PATH"]="" +S["OTOOL64"]=":" +S["OTOOL"]="otool" +S["LIPO"]="lipo" +S["NMEDIT"]="nmedit" +S["DSYMUTIL"]="dsymutil" +S["MANIFEST_TOOL"]=":" +S["AWK"]="gawk" +S["RANLIB"]="ranlib" +S["STRIP"]="strip" +S["ac_ct_AR"]="ar" +S["AR"]="ar" +S["FILECMD"]="file" +S["LN_S"]="ln -s" +S["NM"]="/usr/bin/nm -B" +S["ac_ct_DUMPBIN"]="" +S["DUMPBIN"]="" +S["LD"]="/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ld" +S["FGREP"]="/usr/bin/grep -F" +S["EGREP"]="/usr/bin/grep -E" +S["GREP"]="/usr/bin/grep" +S["SED"]="/usr/bin/sed" +S["LIBTOOL"]="/bin/sh $(top_builddir)/libtool" +S["OBJDUMP"]="objdump" +S["DLLTOOL"]="false" +S["AS"]="as" +S["host_os"]="darwin22.4.0" +S["host_vendor"]="apple" +S["host_cpu"]="aarch64" +S["host"]="aarch64-apple-darwin22.4.0" +S["build_os"]="darwin22.4.0" +S["build_vendor"]="apple" +S["build_cpu"]="aarch64" +S["build"]="aarch64-apple-darwin22.4.0" +S["INSTALL_DATA"]="${INSTALL} -m 644" +S["INSTALL_SCRIPT"]="${INSTALL}" +S["INSTALL_PROGRAM"]="${INSTALL}" +S["CPP"]="gcc -E" +S["OBJEXT"]="o" +S["EXEEXT"]="" +S["ac_ct_CC"]="gcc" +S["CPPFLAGS"]="" +S["LDFLAGS"]="" +S["CFLAGS"]="-g -O2" +S["CC"]="gcc" +S["SET_MAKE"]="" +S["target_alias"]="" +S["host_alias"]="" +S["build_alias"]="" +S["LIBS"]="" +S["ECHO_T"]="" +S["ECHO_N"]="" +S["ECHO_C"]="\\c" +S["DEFS"]="-DHAVE_CONFIG_H" +S["mandir"]="${datarootdir}/man" +S["localedir"]="${datarootdir}/locale" +S["libdir"]="${exec_prefix}/lib" +S["psdir"]="${docdir}" +S["pdfdir"]="${docdir}" +S["dvidir"]="${docdir}" +S["htmldir"]="${docdir}" +S["infodir"]="${datarootdir}/info" +S["docdir"]="${datarootdir}/doc/${PACKAGE_TARNAME}" +S["oldincludedir"]="/usr/include" +S["includedir"]="${prefix}/include" +S["runstatedir"]="${localstatedir}/run" +S["localstatedir"]="${prefix}/var" +S["sharedstatedir"]="${prefix}/com" +S["sysconfdir"]="${prefix}/etc" +S["datadir"]="${datarootdir}" +S["datarootdir"]="${prefix}/share" +S["libexecdir"]="${exec_prefix}/libexec" +S["sbindir"]="${exec_prefix}/sbin" +S["bindir"]="${exec_prefix}/bin" +S["program_transform_name"]="s,x,x," +S["prefix"]="/Users/yangzuhao/Downloads/libiconv-1.17/output" +S["exec_prefix"]="${prefix}" +S["PACKAGE_URL"]="" +S["PACKAGE_BUGREPORT"]="" +S["PACKAGE_STRING"]="libcharset 1.5" +S["PACKAGE_VERSION"]="1.5" +S["PACKAGE_TARNAME"]="libcharset" +S["PACKAGE_NAME"]="libcharset" +S["PATH_SEPARATOR"]=":" +S["SHELL"]="/bin/sh" +_ACAWK +cat >>"$ac_tmp/subs1.awk" <<_ACAWK && + for (key in S) S_is_set[key] = 1 + FS = "" + +} +{ + line = $ 0 + nfields = split(line, field, "@") + substed = 0 + len = length(field[1]) + for (i = 2; i < nfields; i++) { + key = field[i] + keylen = length(key) + if (S_is_set[key]) { + value = S[key] + line = substr(line, 1, len) "" value "" substr(line, len + keylen + 3) + len += length(value) + length(field[++i]) + substed = 1 + } else + len += 1 + keylen + } + + print line +} + +_ACAWK +if sed "s/$ac_cr//" < /dev/null > /dev/null 2>&1; then + sed "s/$ac_cr\$//; s/$ac_cr/$ac_cs_awk_cr/g" +else + cat +fi < "$ac_tmp/subs1.awk" > "$ac_tmp/subs.awk" \ + || as_fn_error $? "could not setup config files machinery" "$LINENO" 5 +fi # test -n "$CONFIG_FILES" + +# Set up the scripts for CONFIG_HEADERS section. +# No need to generate them if there are no CONFIG_HEADERS. +# This happens for instance with `./config.status Makefile'. +if test -n "$CONFIG_HEADERS"; then +cat >"$ac_tmp/defines.awk" <<\_ACAWK || +BEGIN { +D["PACKAGE_NAME"]=" \"libcharset\"" +D["PACKAGE_TARNAME"]=" \"libcharset\"" +D["PACKAGE_VERSION"]=" \"1.5\"" +D["PACKAGE_STRING"]=" \"libcharset 1.5\"" +D["PACKAGE_BUGREPORT"]=" \"\"" +D["PACKAGE_URL"]=" \"\"" +D["HAVE_STDIO_H"]=" 1" +D["HAVE_STDLIB_H"]=" 1" +D["HAVE_STRING_H"]=" 1" +D["HAVE_INTTYPES_H"]=" 1" +D["HAVE_STDINT_H"]=" 1" +D["HAVE_STRINGS_H"]=" 1" +D["HAVE_SYS_STAT_H"]=" 1" +D["HAVE_SYS_TYPES_H"]=" 1" +D["HAVE_UNISTD_H"]=" 1" +D["HAVE_WCHAR_H"]=" 1" +D["STDC_HEADERS"]=" 1" +D["_ALL_SOURCE"]=" 1" +D["_DARWIN_C_SOURCE"]=" 1" +D["_GNU_SOURCE"]=" 1" +D["_HPUX_ALT_XOPEN_SOCKET_API"]=" 1" +D["_NETBSD_SOURCE"]=" 1" +D["_OPENBSD_SOURCE"]=" 1" +D["_POSIX_PTHREAD_SEMANTICS"]=" 1" +D["__STDC_WANT_IEC_60559_ATTRIBS_EXT__"]=" 1" +D["__STDC_WANT_IEC_60559_BFP_EXT__"]=" 1" +D["__STDC_WANT_IEC_60559_DFP_EXT__"]=" 1" +D["__STDC_WANT_IEC_60559_FUNCS_EXT__"]=" 1" +D["__STDC_WANT_IEC_60559_TYPES_EXT__"]=" 1" +D["__STDC_WANT_LIB_EXT2__"]=" 1" +D["__STDC_WANT_MATH_SPEC_FUNCS__"]=" 1" +D["_TANDEM_SOURCE"]=" 1" +D["__EXTENSIONS__"]=" 1" +D["HAVE_DLFCN_H"]=" 1" +D["LT_OBJDIR"]=" \".libs/\"" +D["INSTALLPREFIX"]=" \"/Users/yangzuhao/Downloads/libiconv-1.17/output\"" +D["HAVE_VISIBILITY"]=" 1" +D["HAVE_LANGINFO_CODESET"]=" 1" +D["HAVE_SYMLINK"]=" 1" +D["HAVE_WORKING_O_NOATIME"]=" 0" +D["HAVE_WORKING_O_NOFOLLOW"]=" 0" +D["HAVE_SETLOCALE"]=" 1" + for (key in D) D_is_set[key] = 1 + FS = "" +} +/^[\t ]*#[\t ]*(define|undef)[\t ]+[_abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ][_abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789]*([\t (]|$)/ { + line = $ 0 + split(line, arg, " ") + if (arg[1] == "#") { + defundef = arg[2] + mac1 = arg[3] + } else { + defundef = substr(arg[1], 2) + mac1 = arg[2] + } + split(mac1, mac2, "(") #) + macro = mac2[1] + prefix = substr(line, 1, index(line, defundef) - 1) + if (D_is_set[macro]) { + # Preserve the white space surrounding the "#". + print prefix "define", macro P[macro] D[macro] + next + } else { + # Replace #undef with comments. This is necessary, for example, + # in the case of _POSIX_SOURCE, which is predefined and required + # on some systems where configure will not decide to define it. + if (defundef == "undef") { + print "/*", prefix defundef, macro, "*/" + next + } + } +} +{ print } +_ACAWK + as_fn_error $? "could not setup config headers machinery" "$LINENO" 5 +fi # test -n "$CONFIG_HEADERS" + + +eval set X " :F $CONFIG_FILES :H $CONFIG_HEADERS :C $CONFIG_COMMANDS" +shift +for ac_tag +do + case $ac_tag in + :[FHLC]) ac_mode=$ac_tag; continue;; + esac + case $ac_mode$ac_tag in + :[FHL]*:*);; + :L* | :C*:*) as_fn_error $? "invalid tag \`$ac_tag'" "$LINENO" 5;; + :[FH]-) ac_tag=-:-;; + :[FH]*) ac_tag=$ac_tag:$ac_tag.in;; + esac + ac_save_IFS=$IFS + IFS=: + set x $ac_tag + IFS=$ac_save_IFS + shift + ac_file=$1 + shift + + case $ac_mode in + :L) ac_source=$1;; + :[FH]) + ac_file_inputs= + for ac_f + do + case $ac_f in + -) ac_f="$ac_tmp/stdin";; + *) # Look for the file first in the build tree, then in the source tree + # (if the path is not absolute). The absolute path cannot be DOS-style, + # because $ac_f cannot contain `:'. + test -f "$ac_f" || + case $ac_f in + [\\/$]*) false;; + *) test -f "$srcdir/$ac_f" && ac_f="$srcdir/$ac_f";; + esac || + as_fn_error 1 "cannot find input file: \`$ac_f'" "$LINENO" 5;; + esac + case $ac_f in *\'*) ac_f=`printf "%s\n" "$ac_f" | sed "s/'/'\\\\\\\\''/g"`;; esac + as_fn_append ac_file_inputs " '$ac_f'" + done + + # Let's still pretend it is `configure' which instantiates (i.e., don't + # use $as_me), people would be surprised to read: + # /* config.h. Generated by config.status. */ + configure_input='Generated from '` + printf "%s\n" "$*" | sed 's|^[^:]*/||;s|:[^:]*/|, |g' + `' by configure.' + if test x"$ac_file" != x-; then + configure_input="$ac_file. $configure_input" + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: creating $ac_file" >&5 +printf "%s\n" "$as_me: creating $ac_file" >&6;} + fi + # Neutralize special characters interpreted by sed in replacement strings. + case $configure_input in #( + *\&* | *\|* | *\\* ) + ac_sed_conf_input=`printf "%s\n" "$configure_input" | + sed 's/[\\\\&|]/\\\\&/g'`;; #( + *) ac_sed_conf_input=$configure_input;; + esac + + case $ac_tag in + *:-:* | *:-) cat >"$ac_tmp/stdin" \ + || as_fn_error $? "could not create $ac_file" "$LINENO" 5 ;; + esac + ;; + esac + + ac_dir=`$as_dirname -- "$ac_file" || +$as_expr X"$ac_file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ + X"$ac_file" : 'X\(//\)[^/]' \| \ + X"$ac_file" : 'X\(//\)$' \| \ + X"$ac_file" : 'X\(/\)' \| . 2>/dev/null || +printf "%s\n" X"$ac_file" | + sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ + s//\1/ + q + } + /^X\(\/\/\)[^/].*/{ + s//\1/ + q + } + /^X\(\/\/\)$/{ + s//\1/ + q + } + /^X\(\/\).*/{ + s//\1/ + q + } + s/.*/./; q'` + as_dir="$ac_dir"; as_fn_mkdir_p + ac_builddir=. + +case "$ac_dir" in +.) ac_dir_suffix= ac_top_builddir_sub=. ac_top_build_prefix= ;; +*) + ac_dir_suffix=/`printf "%s\n" "$ac_dir" | sed 's|^\.[\\/]||'` + # A ".." for each directory in $ac_dir_suffix. + ac_top_builddir_sub=`printf "%s\n" "$ac_dir_suffix" | sed 's|/[^\\/]*|/..|g;s|/||'` + case $ac_top_builddir_sub in + "") ac_top_builddir_sub=. ac_top_build_prefix= ;; + *) ac_top_build_prefix=$ac_top_builddir_sub/ ;; + esac ;; +esac +ac_abs_top_builddir=$ac_pwd +ac_abs_builddir=$ac_pwd$ac_dir_suffix +# for backward compatibility: +ac_top_builddir=$ac_top_build_prefix + +case $srcdir in + .) # We are building in place. + ac_srcdir=. + ac_top_srcdir=$ac_top_builddir_sub + ac_abs_top_srcdir=$ac_pwd ;; + [\\/]* | ?:[\\/]* ) # Absolute name. + ac_srcdir=$srcdir$ac_dir_suffix; + ac_top_srcdir=$srcdir + ac_abs_top_srcdir=$srcdir ;; + *) # Relative name. + ac_srcdir=$ac_top_build_prefix$srcdir$ac_dir_suffix + ac_top_srcdir=$ac_top_build_prefix$srcdir + ac_abs_top_srcdir=$ac_pwd/$srcdir ;; +esac +ac_abs_srcdir=$ac_abs_top_srcdir$ac_dir_suffix + + + case $ac_mode in + :F) + # + # CONFIG_FILE + # + + case $INSTALL in + [\\/$]* | ?:[\\/]* ) ac_INSTALL=$INSTALL ;; + *) ac_INSTALL=$ac_top_build_prefix$INSTALL ;; + esac +# If the template does not know about datarootdir, expand it. +# FIXME: This hack should be removed a few years after 2.60. +ac_datarootdir_hack=; ac_datarootdir_seen= +ac_sed_dataroot=' +/datarootdir/ { + p + q +} +/@datadir@/p +/@docdir@/p +/@infodir@/p +/@localedir@/p +/@mandir@/p' +case `eval "sed -n \"\$ac_sed_dataroot\" $ac_file_inputs"` in +*datarootdir*) ac_datarootdir_seen=yes;; +*@datadir@*|*@docdir@*|*@infodir@*|*@localedir@*|*@mandir@*) + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&5 +printf "%s\n" "$as_me: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&2;} + ac_datarootdir_hack=' + s&@datadir@&${datarootdir}&g + s&@docdir@&${datarootdir}/doc/${PACKAGE_TARNAME}&g + s&@infodir@&${datarootdir}/info&g + s&@localedir@&${datarootdir}/locale&g + s&@mandir@&${datarootdir}/man&g + s&\${datarootdir}&${prefix}/share&g' ;; +esac +ac_sed_extra="/^[ ]*VPATH[ ]*=[ ]*/{ +h +s/// +s/^/:/ +s/[ ]*$/:/ +s/:\$(srcdir):/:/g +s/:\${srcdir}:/:/g +s/:@srcdir@:/:/g +s/^:*// +s/:*$// +x +s/\(=[ ]*\).*/\1/ +G +s/\n// +s/^[^=]*=[ ]*$// +} + +:t +/@[a-zA-Z_][a-zA-Z_0-9]*@/!b +s|@configure_input@|$ac_sed_conf_input|;t t +s&@top_builddir@&$ac_top_builddir_sub&;t t +s&@top_build_prefix@&$ac_top_build_prefix&;t t +s&@srcdir@&$ac_srcdir&;t t +s&@abs_srcdir@&$ac_abs_srcdir&;t t +s&@top_srcdir@&$ac_top_srcdir&;t t +s&@abs_top_srcdir@&$ac_abs_top_srcdir&;t t +s&@builddir@&$ac_builddir&;t t +s&@abs_builddir@&$ac_abs_builddir&;t t +s&@abs_top_builddir@&$ac_abs_top_builddir&;t t +s&@INSTALL@&$ac_INSTALL&;t t +$ac_datarootdir_hack +" +eval sed \"\$ac_sed_extra\" "$ac_file_inputs" | $AWK -f "$ac_tmp/subs.awk" \ + >$ac_tmp/out || as_fn_error $? "could not create $ac_file" "$LINENO" 5 + +test -z "$ac_datarootdir_hack$ac_datarootdir_seen" && + { ac_out=`sed -n '/\${datarootdir}/p' "$ac_tmp/out"`; test -n "$ac_out"; } && + { ac_out=`sed -n '/^[ ]*datarootdir[ ]*:*=/p' \ + "$ac_tmp/out"`; test -z "$ac_out"; } && + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: $ac_file contains a reference to the variable \`datarootdir' +which seems to be undefined. Please make sure it is defined" >&5 +printf "%s\n" "$as_me: WARNING: $ac_file contains a reference to the variable \`datarootdir' +which seems to be undefined. Please make sure it is defined" >&2;} + + rm -f "$ac_tmp/stdin" + case $ac_file in + -) cat "$ac_tmp/out" && rm -f "$ac_tmp/out";; + *) rm -f "$ac_file" && mv "$ac_tmp/out" "$ac_file";; + esac \ + || as_fn_error $? "could not create $ac_file" "$LINENO" 5 + ;; + :H) + # + # CONFIG_HEADER + # + if test x"$ac_file" != x-; then + { + printf "%s\n" "/* $configure_input */" >&1 \ + && eval '$AWK -f "$ac_tmp/defines.awk"' "$ac_file_inputs" + } >"$ac_tmp/config.h" \ + || as_fn_error $? "could not create $ac_file" "$LINENO" 5 + if diff "$ac_file" "$ac_tmp/config.h" >/dev/null 2>&1; then + { printf "%s\n" "$as_me:${as_lineno-$LINENO}: $ac_file is unchanged" >&5 +printf "%s\n" "$as_me: $ac_file is unchanged" >&6;} + else + rm -f "$ac_file" + mv "$ac_tmp/config.h" "$ac_file" \ + || as_fn_error $? "could not create $ac_file" "$LINENO" 5 + fi + else + printf "%s\n" "/* $configure_input */" >&1 \ + && eval '$AWK -f "$ac_tmp/defines.awk"' "$ac_file_inputs" \ + || as_fn_error $? "could not create -" "$LINENO" 5 + fi + ;; + + :C) { printf "%s\n" "$as_me:${as_lineno-$LINENO}: executing $ac_file commands" >&5 +printf "%s\n" "$as_me: executing $ac_file commands" >&6;} + ;; + esac + + + case $ac_file$ac_mode in + "libtool":C) + + # See if we are running on zsh, and set the options that allow our + # commands through without removal of \ escapes. + if test -n "${ZSH_VERSION+set}"; then + setopt NO_GLOB_SUBST + fi + + cfgfile=${ofile}T + trap "$RM \"$cfgfile\"; exit 1" 1 2 15 + $RM "$cfgfile" + + cat <<_LT_EOF >> "$cfgfile" +#! $SHELL +# Generated automatically by $as_me ($PACKAGE) $VERSION +# Libtool was configured on host `(hostname || uname -n) 2>/dev/null | sed 1q`: +# NOTE: Changes made to this file will be lost: look at ltmain.sh. + +# Provide generalized library-building support services. +# Written by Gordon Matzigkeit, 1996 + +# Copyright (C) 2014 Free Software Foundation, Inc. +# This is free software; see the source for copying conditions. There is NO +# warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. + +# GNU Libtool is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of of the License, or +# (at your option) any later version. +# +# As a special exception to the GNU General Public License, if you +# distribute this file as part of a program or library that is built +# using GNU Libtool, you may include this file under the same +# distribution terms that you use for the rest of that program. +# +# GNU Libtool is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . + + +# The names of the tagged configurations supported by this script. +available_tags='' + +# Configured defaults for sys_lib_dlsearch_path munging. +: \${LT_SYS_LIBRARY_PATH="$configure_time_lt_sys_library_path"} + +# ### BEGIN LIBTOOL CONFIG + +# Which release of libtool.m4 was used? +macro_version=$macro_version +macro_revision=$macro_revision + +# Assembler program. +AS=$lt_AS + +# DLL creation program. +DLLTOOL=$lt_DLLTOOL + +# Object dumper program. +OBJDUMP=$lt_OBJDUMP + +# Whether or not to build shared libraries. +build_libtool_libs=$enable_shared + +# Whether or not to build static libraries. +build_old_libs=$enable_static + +# What type of objects to build. +pic_mode=$pic_mode + +# Whether or not to optimize for fast installation. +fast_install=$enable_fast_install + +# Shared archive member basename,for filename based shared library versioning on AIX. +shared_archive_member_spec=$shared_archive_member_spec + +# Shell to use when invoking shell scripts. +SHELL=$lt_SHELL + +# An echo program that protects backslashes. +ECHO=$lt_ECHO + +# The PATH separator for the build system. +PATH_SEPARATOR=$lt_PATH_SEPARATOR + +# The host system. +host_alias=$host_alias +host=$host +host_os=$host_os + +# The build system. +build_alias=$build_alias +build=$build +build_os=$build_os + +# A sed program that does not truncate output. +SED=$lt_SED + +# Sed that helps us avoid accidentally triggering echo(1) options like -n. +Xsed="\$SED -e 1s/^X//" + +# A grep program that handles long lines. +GREP=$lt_GREP + +# An ERE matcher. +EGREP=$lt_EGREP + +# A literal string matcher. +FGREP=$lt_FGREP + +# A BSD- or MS-compatible name lister. +NM=$lt_NM + +# Whether we need soft or hard links. +LN_S=$lt_LN_S + +# What is the maximum length of a command? +max_cmd_len=$max_cmd_len + +# Object file suffix (normally "o"). +objext=$ac_objext + +# Executable file suffix (normally ""). +exeext=$exeext + +# whether the shell understands "unset". +lt_unset=$lt_unset + +# turn spaces into newlines. +SP2NL=$lt_lt_SP2NL + +# turn newlines into spaces. +NL2SP=$lt_lt_NL2SP + +# convert \$build file names to \$host format. +to_host_file_cmd=$lt_cv_to_host_file_cmd + +# convert \$build files to toolchain format. +to_tool_file_cmd=$lt_cv_to_tool_file_cmd + +# A file(cmd) program that detects file types. +FILECMD=$lt_FILECMD + +# Method to check whether dependent libraries are shared objects. +deplibs_check_method=$lt_deplibs_check_method + +# Command to use when deplibs_check_method = "file_magic". +file_magic_cmd=$lt_file_magic_cmd + +# How to find potential files when deplibs_check_method = "file_magic". +file_magic_glob=$lt_file_magic_glob + +# Find potential files using nocaseglob when deplibs_check_method = "file_magic". +want_nocaseglob=$lt_want_nocaseglob + +# Command to associate shared and link libraries. +sharedlib_from_linklib_cmd=$lt_sharedlib_from_linklib_cmd + +# The archiver. +AR=$lt_AR + +# Flags to create an archive (by configure). +lt_ar_flags=$lt_ar_flags + +# Flags to create an archive. +AR_FLAGS=\${ARFLAGS-"\$lt_ar_flags"} + +# How to feed a file listing to the archiver. +archiver_list_spec=$lt_archiver_list_spec + +# A symbol stripping program. +STRIP=$lt_STRIP + +# Commands used to install an old-style archive. +RANLIB=$lt_RANLIB +old_postinstall_cmds=$lt_old_postinstall_cmds +old_postuninstall_cmds=$lt_old_postuninstall_cmds + +# Whether to use a lock for old archive extraction. +lock_old_archive_extraction=$lock_old_archive_extraction + +# A C compiler. +LTCC=$lt_CC + +# LTCC compiler flags. +LTCFLAGS=$lt_CFLAGS + +# Take the output of nm and produce a listing of raw symbols and C names. +global_symbol_pipe=$lt_lt_cv_sys_global_symbol_pipe + +# Transform the output of nm in a proper C declaration. +global_symbol_to_cdecl=$lt_lt_cv_sys_global_symbol_to_cdecl + +# Transform the output of nm into a list of symbols to manually relocate. +global_symbol_to_import=$lt_lt_cv_sys_global_symbol_to_import + +# Transform the output of nm in a C name address pair. +global_symbol_to_c_name_address=$lt_lt_cv_sys_global_symbol_to_c_name_address + +# Transform the output of nm in a C name address pair when lib prefix is needed. +global_symbol_to_c_name_address_lib_prefix=$lt_lt_cv_sys_global_symbol_to_c_name_address_lib_prefix + +# The name lister interface. +nm_interface=$lt_lt_cv_nm_interface + +# Specify filename containing input files for \$NM. +nm_file_list_spec=$lt_nm_file_list_spec + +# The root where to search for dependent libraries,and where our libraries should be installed. +lt_sysroot=$lt_sysroot + +# Command to truncate a binary pipe. +lt_truncate_bin=$lt_lt_cv_truncate_bin + +# The name of the directory that contains temporary libtool files. +objdir=$objdir + +# Used to examine libraries when file_magic_cmd begins with "file". +MAGIC_CMD=$MAGIC_CMD + +# Must we lock files when doing compilation? +need_locks=$lt_need_locks + +# Manifest tool. +MANIFEST_TOOL=$lt_MANIFEST_TOOL + +# Tool to manipulate archived DWARF debug symbol files on Mac OS X. +DSYMUTIL=$lt_DSYMUTIL + +# Tool to change global to local symbols on Mac OS X. +NMEDIT=$lt_NMEDIT + +# Tool to manipulate fat objects and archives on Mac OS X. +LIPO=$lt_LIPO + +# ldd/readelf like tool for Mach-O binaries on Mac OS X. +OTOOL=$lt_OTOOL + +# ldd/readelf like tool for 64 bit Mach-O binaries on Mac OS X 10.4. +OTOOL64=$lt_OTOOL64 + +# Old archive suffix (normally "a"). +libext=$libext + +# Shared library suffix (normally ".so"). +shrext_cmds=$lt_shrext_cmds + +# The commands to extract the exported symbol list from a shared archive. +extract_expsyms_cmds=$lt_extract_expsyms_cmds + +# Variables whose values should be saved in libtool wrapper scripts and +# restored at link time. +variables_saved_for_relink=$lt_variables_saved_for_relink + +# Do we need the "lib" prefix for modules? +need_lib_prefix=$need_lib_prefix + +# Do we need a version for libraries? +need_version=$need_version + +# Library versioning type. +version_type=$version_type + +# Shared library runtime path variable. +runpath_var=$runpath_var + +# Shared library path variable. +shlibpath_var=$shlibpath_var + +# Is shlibpath searched before the hard-coded library search path? +shlibpath_overrides_runpath=$shlibpath_overrides_runpath + +# Format of library name prefix. +libname_spec=$lt_libname_spec + +# List of archive names. First name is the real one, the rest are links. +# The last name is the one that the linker finds with -lNAME +library_names_spec=$lt_library_names_spec + +# The coded name of the library, if different from the real name. +soname_spec=$lt_soname_spec + +# Permission mode override for installation of shared libraries. +install_override_mode=$lt_install_override_mode + +# Command to use after installation of a shared archive. +postinstall_cmds=$lt_postinstall_cmds + +# Command to use after uninstallation of a shared archive. +postuninstall_cmds=$lt_postuninstall_cmds + +# Commands used to finish a libtool library installation in a directory. +finish_cmds=$lt_finish_cmds + +# As "finish_cmds", except a single script fragment to be evaled but +# not shown. +finish_eval=$lt_finish_eval + +# Whether we should hardcode library paths into libraries. +hardcode_into_libs=$hardcode_into_libs + +# Compile-time system search path for libraries. +sys_lib_search_path_spec=$lt_sys_lib_search_path_spec + +# Detected run-time system search path for libraries. +sys_lib_dlsearch_path_spec=$lt_configure_time_dlsearch_path + +# Explicit LT_SYS_LIBRARY_PATH set during ./configure time. +configure_time_lt_sys_library_path=$lt_configure_time_lt_sys_library_path + +# Whether dlopen is supported. +dlopen_support=$enable_dlopen + +# Whether dlopen of programs is supported. +dlopen_self=$enable_dlopen_self + +# Whether dlopen of statically linked programs is supported. +dlopen_self_static=$enable_dlopen_self_static + +# Commands to strip libraries. +old_striplib=$lt_old_striplib +striplib=$lt_striplib + + +# The linker used to build libraries. +LD=$lt_LD + +# How to create reloadable object files. +reload_flag=$lt_reload_flag +reload_cmds=$lt_reload_cmds + +# Commands used to build an old-style archive. +old_archive_cmds=$lt_old_archive_cmds + +# A language specific compiler. +CC=$lt_compiler + +# Is the compiler the GNU compiler? +with_gcc=$GCC + +# Compiler flag to turn off builtin functions. +no_builtin_flag=$lt_lt_prog_compiler_no_builtin_flag + +# Additional compiler flags for building library objects. +pic_flag=$lt_lt_prog_compiler_pic + +# How to pass a linker flag through the compiler. +wl=$lt_lt_prog_compiler_wl + +# Compiler flag to prevent dynamic linking. +link_static_flag=$lt_lt_prog_compiler_static + +# Does compiler simultaneously support -c and -o options? +compiler_c_o=$lt_lt_cv_prog_compiler_c_o + +# Whether or not to add -lc for building shared libraries. +build_libtool_need_lc=$archive_cmds_need_lc + +# Whether or not to disallow shared libs when runtime libs are static. +allow_libtool_libs_with_static_runtimes=$enable_shared_with_static_runtimes + +# Compiler flag to allow reflexive dlopens. +export_dynamic_flag_spec=$lt_export_dynamic_flag_spec + +# Compiler flag to generate shared objects directly from archives. +whole_archive_flag_spec=$lt_whole_archive_flag_spec + +# Whether the compiler copes with passing no objects directly. +compiler_needs_object=$lt_compiler_needs_object + +# Create an old-style archive from a shared archive. +old_archive_from_new_cmds=$lt_old_archive_from_new_cmds + +# Create a temporary old-style archive to link instead of a shared archive. +old_archive_from_expsyms_cmds=$lt_old_archive_from_expsyms_cmds + +# Commands used to build a shared archive. +archive_cmds=$lt_archive_cmds +archive_expsym_cmds=$lt_archive_expsym_cmds + +# Commands used to build a loadable module if different from building +# a shared archive. +module_cmds=$lt_module_cmds +module_expsym_cmds=$lt_module_expsym_cmds + +# Whether we are building with GNU ld or not. +with_gnu_ld=$lt_with_gnu_ld + +# Flag that allows shared libraries with undefined symbols to be built. +allow_undefined_flag=$lt_allow_undefined_flag + +# Flag that enforces no undefined symbols. +no_undefined_flag=$lt_no_undefined_flag + +# Flag to hardcode \$libdir into a binary during linking. +# This must work even if \$libdir does not exist +hardcode_libdir_flag_spec=$lt_hardcode_libdir_flag_spec + +# Whether we need a single "-rpath" flag with a separated argument. +hardcode_libdir_separator=$lt_hardcode_libdir_separator + +# Set to "yes" if using DIR/libNAME\$shared_ext during linking hardcodes +# DIR into the resulting binary. +hardcode_direct=$hardcode_direct + +# Set to "yes" if using DIR/libNAME\$shared_ext during linking hardcodes +# DIR into the resulting binary and the resulting library dependency is +# "absolute",i.e impossible to change by setting \$shlibpath_var if the +# library is relocated. +hardcode_direct_absolute=$hardcode_direct_absolute + +# Set to "yes" if using the -LDIR flag during linking hardcodes DIR +# into the resulting binary. +hardcode_minus_L=$hardcode_minus_L + +# Set to "yes" if using SHLIBPATH_VAR=DIR during linking hardcodes DIR +# into the resulting binary. +hardcode_shlibpath_var=$hardcode_shlibpath_var + +# Set to "yes" if building a shared library automatically hardcodes DIR +# into the library and all subsequent libraries and executables linked +# against it. +hardcode_automatic=$hardcode_automatic + +# Set to yes if linker adds runtime paths of dependent libraries +# to runtime path list. +inherit_rpath=$inherit_rpath + +# Whether libtool must link a program against all its dependency libraries. +link_all_deplibs=$link_all_deplibs + +# Set to "yes" if exported symbols are required. +always_export_symbols=$always_export_symbols + +# The commands to list exported symbols. +export_symbols_cmds=$lt_export_symbols_cmds + +# Symbols that should not be listed in the preloaded symbols. +exclude_expsyms=$lt_exclude_expsyms + +# Symbols that must always be exported. +include_expsyms=$lt_include_expsyms + +# Commands necessary for linking programs (against libraries) with templates. +prelink_cmds=$lt_prelink_cmds + +# Commands necessary for finishing linking programs. +postlink_cmds=$lt_postlink_cmds + +# Specify filename containing input files. +file_list_spec=$lt_file_list_spec + +# How to hardcode a shared library path into an executable. +hardcode_action=$hardcode_action + +# ### END LIBTOOL CONFIG + +_LT_EOF + + cat <<'_LT_EOF' >> "$cfgfile" + +# ### BEGIN FUNCTIONS SHARED WITH CONFIGURE + +# func_munge_path_list VARIABLE PATH +# ----------------------------------- +# VARIABLE is name of variable containing _space_ separated list of +# directories to be munged by the contents of PATH, which is string +# having a format: +# "DIR[:DIR]:" +# string "DIR[ DIR]" will be prepended to VARIABLE +# ":DIR[:DIR]" +# string "DIR[ DIR]" will be appended to VARIABLE +# "DIRP[:DIRP]::[DIRA:]DIRA" +# string "DIRP[ DIRP]" will be prepended to VARIABLE and string +# "DIRA[ DIRA]" will be appended to VARIABLE +# "DIR[:DIR]" +# VARIABLE will be replaced by "DIR[ DIR]" +func_munge_path_list () +{ + case x$2 in + x) + ;; + *:) + eval $1=\"`$ECHO $2 | $SED 's/:/ /g'` \$$1\" + ;; + x:*) + eval $1=\"\$$1 `$ECHO $2 | $SED 's/:/ /g'`\" + ;; + *::*) + eval $1=\"\$$1\ `$ECHO $2 | $SED -e 's/.*:://' -e 's/:/ /g'`\" + eval $1=\"`$ECHO $2 | $SED -e 's/::.*//' -e 's/:/ /g'`\ \$$1\" + ;; + *) + eval $1=\"`$ECHO $2 | $SED 's/:/ /g'`\" + ;; + esac +} + + +# Calculate cc_basename. Skip known compiler wrappers and cross-prefix. +func_cc_basename () +{ + for cc_temp in $*""; do + case $cc_temp in + compile | *[\\/]compile | ccache | *[\\/]ccache ) ;; + distcc | *[\\/]distcc | purify | *[\\/]purify ) ;; + \-*) ;; + *) break;; + esac + done + func_cc_basename_result=`$ECHO "$cc_temp" | $SED "s%.*/%%; s%^$host_alias-%%"` +} + + +# ### END FUNCTIONS SHARED WITH CONFIGURE + +_LT_EOF + + case $host_os in + aix3*) + cat <<\_LT_EOF >> "$cfgfile" +# AIX sometimes has problems with the GCC collect2 program. For some +# reason, if we set the COLLECT_NAMES environment variable, the problems +# vanish in a puff of smoke. +if test set != "${COLLECT_NAMES+set}"; then + COLLECT_NAMES= + export COLLECT_NAMES +fi +_LT_EOF + ;; + esac + + + +ltmain=$ac_aux_dir/ltmain.sh + + + # We use sed instead of cat because bash on DJGPP gets confused if + # if finds mixed CR/LF and LF-only lines. Since sed operates in + # text mode, it properly converts lines to CR/LF. This bash problem + # is reportedly fixed, but why not run on old versions too? + $SED '$q' "$ltmain" >> "$cfgfile" \ + || (rm -f "$cfgfile"; exit 1) + + mv -f "$cfgfile" "$ofile" || + (rm -f "$ofile" && cp "$cfgfile" "$ofile" && rm -f "$cfgfile") + chmod +x "$ofile" + + ;; + + esac +done # for ac_tag + + +as_fn_exit 0 diff --git a/libcharset/include/libcharset.h b/libcharset/include/libcharset.h new file mode 100644 index 0000000..39cd877 --- /dev/null +++ b/libcharset/include/libcharset.h @@ -0,0 +1,53 @@ +/* Copyright (C) 2003 Free Software Foundation, Inc. + This file is part of the GNU CHARSET Library. + + The GNU CHARSET Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public License as + published by the Free Software Foundation; either version 2 of the + License, or (at your option) any later version. + + The GNU CHARSET Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public License + along with the GNU CHARSET Library; see the file COPYING.LIB. If not, + see . */ + +#ifndef _LIBCHARSET_H +#define _LIBCHARSET_H + +#if 1 && BUILDING_LIBCHARSET +#define LIBCHARSET_DLL_EXPORTED __attribute__((__visibility__("default"))) +#elif defined _MSC_VER && BUILDING_LIBCHARSET +#define LIBCHARSET_DLL_EXPORTED __declspec(dllexport) +#else +#define LIBCHARSET_DLL_EXPORTED +#endif + +#include + + +#ifdef __cplusplus +extern "C" { +#endif + + +/* Support for relocatable packages. */ + +/* Sets the original and the current installation prefix of the package. + Relocation simply replaces a pathname starting with the original prefix + by the corresponding pathname with the current prefix instead. Both + prefixes should be directory names without trailing slash (i.e. use "" + instead of "/"). */ +extern LIBCHARSET_DLL_EXPORTED void libcharset_set_relocation_prefix (const char *orig_prefix, + const char *curr_prefix); + + +#ifdef __cplusplus +} +#endif + + +#endif /* _LIBCHARSET_H */ diff --git a/libcharset/include/libcharset.h.inst b/libcharset/include/libcharset.h.inst new file mode 100644 index 0000000..fcf2274 --- /dev/null +++ b/libcharset/include/libcharset.h.inst @@ -0,0 +1,45 @@ +/* Copyright (C) 2003 Free Software Foundation, Inc. + This file is part of the GNU CHARSET Library. + + The GNU CHARSET Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public License as + published by the Free Software Foundation; either version 2 of the + License, or (at your option) any later version. + + The GNU CHARSET Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public License + along with the GNU CHARSET Library; see the file COPYING.LIB. If not, + see . */ + +#ifndef _LIBCHARSET_H +#define _LIBCHARSET_H + +#include + + +#ifdef __cplusplus +extern "C" { +#endif + + +/* Support for relocatable packages. */ + +/* Sets the original and the current installation prefix of the package. + Relocation simply replaces a pathname starting with the original prefix + by the corresponding pathname with the current prefix instead. Both + prefixes should be directory names without trailing slash (i.e. use "" + instead of "/"). */ +extern void libcharset_set_relocation_prefix (const char *orig_prefix, + const char *curr_prefix); + + +#ifdef __cplusplus +} +#endif + + +#endif /* _LIBCHARSET_H */ diff --git a/libcharset/include/localcharset.h b/libcharset/include/localcharset.h new file mode 100644 index 0000000..58d3e6a --- /dev/null +++ b/libcharset/include/localcharset.h @@ -0,0 +1,145 @@ +/* Determine a canonical name for the current locale's character encoding. + Copyright (C) 2000-2003, 2009-2019 Free Software Foundation, Inc. + This file is part of the GNU CHARSET Library. + + This program is free software; you can redistribute it and/or modify it + under the terms of the GNU Lesser General Public License as published + by the Free Software Foundation; either version 2, or (at your option) + any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public License + along with this program; if not, see . */ + +#ifndef _LOCALCHARSET_H +#define _LOCALCHARSET_H + +#if 1 && BUILDING_LIBCHARSET +#define LIBCHARSET_DLL_EXPORTED __attribute__((__visibility__("default"))) +#elif defined _MSC_VER && BUILDING_LIBCHARSET +#define LIBCHARSET_DLL_EXPORTED __declspec(dllexport) +#else +#define LIBCHARSET_DLL_EXPORTED +#endif + + +#ifdef __cplusplus +extern "C" { +#endif + + +/* Determine the current locale's character encoding, and canonicalize it + into one of the canonical names listed below. + The result must not be freed; it is statically allocated. The result + becomes invalid when setlocale() is used to change the global locale, or + when the value of one of the environment variables LC_ALL, LC_CTYPE, LANG + is changed; threads in multithreaded programs should not do this. + If the canonical name cannot be determined, the result is a non-canonical + name. */ +extern LIBCHARSET_DLL_EXPORTED const char * locale_charset (void); + +/* About GNU canonical names for character encodings: + + Every canonical name must be supported by GNU libiconv. Support by GNU libc + is also desirable. + + The name is case insensitive. Usually an upper case MIME charset name is + preferred. + + The current list of these GNU canonical names is: + + name MIME? used by which systems + (darwin = Mac OS X, windows = native Windows) + + ASCII, ANSI_X3.4-1968 glibc solaris freebsd netbsd darwin minix cygwin + ISO-8859-1 Y glibc aix hpux irix osf solaris freebsd netbsd openbsd darwin cygwin zos + ISO-8859-2 Y glibc aix hpux irix osf solaris freebsd netbsd openbsd darwin cygwin zos + ISO-8859-3 Y glibc solaris cygwin + ISO-8859-4 Y hpux osf solaris freebsd netbsd openbsd darwin + ISO-8859-5 Y glibc aix hpux irix osf solaris freebsd netbsd openbsd darwin cygwin zos + ISO-8859-6 Y glibc aix hpux solaris cygwin + ISO-8859-7 Y glibc aix hpux irix osf solaris freebsd netbsd openbsd darwin cygwin zos + ISO-8859-8 Y glibc aix hpux osf solaris cygwin zos + ISO-8859-9 Y glibc aix hpux irix osf solaris freebsd darwin cygwin zos + ISO-8859-13 glibc hpux solaris freebsd netbsd openbsd darwin cygwin + ISO-8859-14 glibc cygwin + ISO-8859-15 glibc aix irix osf solaris freebsd netbsd openbsd darwin cygwin + KOI8-R Y glibc hpux solaris freebsd netbsd openbsd darwin + KOI8-U Y glibc freebsd netbsd openbsd darwin cygwin + KOI8-T glibc + CP437 dos + CP775 dos + CP850 aix osf dos + CP852 dos + CP855 dos + CP856 aix + CP857 dos + CP861 dos + CP862 dos + CP864 dos + CP865 dos + CP866 freebsd netbsd openbsd darwin dos + CP869 dos + CP874 windows dos + CP922 aix + CP932 aix cygwin windows dos + CP943 aix zos + CP949 osf darwin windows dos + CP950 windows dos + CP1046 aix + CP1124 aix + CP1125 dos + CP1129 aix + CP1131 freebsd darwin + CP1250 windows + CP1251 glibc hpux solaris freebsd netbsd openbsd darwin cygwin windows + CP1252 aix windows + CP1253 windows + CP1254 windows + CP1255 glibc windows + CP1256 windows + CP1257 windows + GB2312 Y glibc aix hpux irix solaris freebsd netbsd darwin cygwin zos + EUC-JP Y glibc aix hpux irix osf solaris freebsd netbsd darwin cygwin + EUC-KR Y glibc aix hpux irix osf solaris freebsd netbsd darwin cygwin zos + EUC-TW glibc aix hpux irix osf solaris netbsd + BIG5 Y glibc aix hpux osf solaris freebsd netbsd darwin cygwin zos + BIG5-HKSCS glibc hpux solaris netbsd darwin + GBK glibc aix osf solaris freebsd darwin cygwin windows dos + GB18030 glibc hpux solaris freebsd netbsd darwin + SHIFT_JIS Y hpux osf solaris freebsd netbsd darwin + JOHAB glibc solaris windows + TIS-620 glibc aix hpux osf solaris cygwin zos + VISCII Y glibc + TCVN5712-1 glibc + ARMSCII-8 glibc freebsd netbsd darwin + GEORGIAN-PS glibc cygwin + PT154 glibc netbsd cygwin + HP-ROMAN8 hpux + HP-ARABIC8 hpux + HP-GREEK8 hpux + HP-HEBREW8 hpux + HP-TURKISH8 hpux + HP-KANA8 hpux + DEC-KANJI osf + DEC-HANYU osf + UTF-8 Y glibc aix hpux osf solaris netbsd darwin cygwin zos + + Note: Names which are not marked as being a MIME name should not be used in + Internet protocols for information interchange (mail, news, etc.). + + Note: ASCII and ANSI_X3.4-1968 are synonymous canonical names. Applications + must understand both names and treat them as equivalent. + */ + + +#ifdef __cplusplus +} +#endif + + +#endif /* _LOCALCHARSET_H */ diff --git a/libcharset/include/localcharset.h.inst b/libcharset/include/localcharset.h.inst new file mode 100644 index 0000000..34ce0ad --- /dev/null +++ b/libcharset/include/localcharset.h.inst @@ -0,0 +1,137 @@ +/* Determine a canonical name for the current locale's character encoding. + Copyright (C) 2000-2003, 2009-2019 Free Software Foundation, Inc. + This file is part of the GNU CHARSET Library. + + This program is free software; you can redistribute it and/or modify it + under the terms of the GNU Lesser General Public License as published + by the Free Software Foundation; either version 2, or (at your option) + any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public License + along with this program; if not, see . */ + +#ifndef _LOCALCHARSET_H +#define _LOCALCHARSET_H + + +#ifdef __cplusplus +extern "C" { +#endif + + +/* Determine the current locale's character encoding, and canonicalize it + into one of the canonical names listed below. + The result must not be freed; it is statically allocated. The result + becomes invalid when setlocale() is used to change the global locale, or + when the value of one of the environment variables LC_ALL, LC_CTYPE, LANG + is changed; threads in multithreaded programs should not do this. + If the canonical name cannot be determined, the result is a non-canonical + name. */ +extern const char * locale_charset (void); + +/* About GNU canonical names for character encodings: + + Every canonical name must be supported by GNU libiconv. Support by GNU libc + is also desirable. + + The name is case insensitive. Usually an upper case MIME charset name is + preferred. + + The current list of these GNU canonical names is: + + name MIME? used by which systems + (darwin = Mac OS X, windows = native Windows) + + ASCII, ANSI_X3.4-1968 glibc solaris freebsd netbsd darwin minix cygwin + ISO-8859-1 Y glibc aix hpux irix osf solaris freebsd netbsd openbsd darwin cygwin zos + ISO-8859-2 Y glibc aix hpux irix osf solaris freebsd netbsd openbsd darwin cygwin zos + ISO-8859-3 Y glibc solaris cygwin + ISO-8859-4 Y hpux osf solaris freebsd netbsd openbsd darwin + ISO-8859-5 Y glibc aix hpux irix osf solaris freebsd netbsd openbsd darwin cygwin zos + ISO-8859-6 Y glibc aix hpux solaris cygwin + ISO-8859-7 Y glibc aix hpux irix osf solaris freebsd netbsd openbsd darwin cygwin zos + ISO-8859-8 Y glibc aix hpux osf solaris cygwin zos + ISO-8859-9 Y glibc aix hpux irix osf solaris freebsd darwin cygwin zos + ISO-8859-13 glibc hpux solaris freebsd netbsd openbsd darwin cygwin + ISO-8859-14 glibc cygwin + ISO-8859-15 glibc aix irix osf solaris freebsd netbsd openbsd darwin cygwin + KOI8-R Y glibc hpux solaris freebsd netbsd openbsd darwin + KOI8-U Y glibc freebsd netbsd openbsd darwin cygwin + KOI8-T glibc + CP437 dos + CP775 dos + CP850 aix osf dos + CP852 dos + CP855 dos + CP856 aix + CP857 dos + CP861 dos + CP862 dos + CP864 dos + CP865 dos + CP866 freebsd netbsd openbsd darwin dos + CP869 dos + CP874 windows dos + CP922 aix + CP932 aix cygwin windows dos + CP943 aix zos + CP949 osf darwin windows dos + CP950 windows dos + CP1046 aix + CP1124 aix + CP1125 dos + CP1129 aix + CP1131 freebsd darwin + CP1250 windows + CP1251 glibc hpux solaris freebsd netbsd openbsd darwin cygwin windows + CP1252 aix windows + CP1253 windows + CP1254 windows + CP1255 glibc windows + CP1256 windows + CP1257 windows + GB2312 Y glibc aix hpux irix solaris freebsd netbsd darwin cygwin zos + EUC-JP Y glibc aix hpux irix osf solaris freebsd netbsd darwin cygwin + EUC-KR Y glibc aix hpux irix osf solaris freebsd netbsd darwin cygwin zos + EUC-TW glibc aix hpux irix osf solaris netbsd + BIG5 Y glibc aix hpux osf solaris freebsd netbsd darwin cygwin zos + BIG5-HKSCS glibc hpux solaris netbsd darwin + GBK glibc aix osf solaris freebsd darwin cygwin windows dos + GB18030 glibc hpux solaris freebsd netbsd darwin + SHIFT_JIS Y hpux osf solaris freebsd netbsd darwin + JOHAB glibc solaris windows + TIS-620 glibc aix hpux osf solaris cygwin zos + VISCII Y glibc + TCVN5712-1 glibc + ARMSCII-8 glibc freebsd netbsd darwin + GEORGIAN-PS glibc cygwin + PT154 glibc netbsd cygwin + HP-ROMAN8 hpux + HP-ARABIC8 hpux + HP-GREEK8 hpux + HP-HEBREW8 hpux + HP-TURKISH8 hpux + HP-KANA8 hpux + DEC-KANJI osf + DEC-HANYU osf + UTF-8 Y glibc aix hpux osf solaris netbsd darwin cygwin zos + + Note: Names which are not marked as being a MIME name should not be used in + Internet protocols for information interchange (mail, news, etc.). + + Note: ASCII and ANSI_X3.4-1968 are synonymous canonical names. Applications + must understand both names and treat them as equivalent. + */ + + +#ifdef __cplusplus +} +#endif + + +#endif /* _LOCALCHARSET_H */ diff --git a/libcharset/lib/Makefile b/libcharset/lib/Makefile new file mode 100644 index 0000000..dde579e --- /dev/null +++ b/libcharset/lib/Makefile @@ -0,0 +1,124 @@ +# Makefile for libcharset/lib + +#### Start of system configuration section. #### + +# Directories used by "make": +srcdir = . + +# Directories used by "make install": +prefix = /Users/yangzuhao/Downloads/libiconv-1.17/output +local_prefix = /usr/local +exec_prefix = ${prefix} +libdir = ${exec_prefix}/lib + +# Programs used by "make": +CC = gcc +CFLAGS = -g -O2 -fvisibility=hidden +CPPFLAGS = +LDFLAGS = +INCLUDES = -I. -I$(srcdir) -I.. -I$(srcdir)/.. -I../include +# -DBUILDING_LIBCHARSET: Change expansion of LIBCHARSET_DLL_EXPORTED macro. +DEFS = -DBUILDING_LIBCHARSET -DHAVE_CONFIG_H +LIBTOOL = /bin/sh $(top_builddir)/libtool +LIBTOOL_COMPILE = $(LIBTOOL) --mode=compile +LIBTOOL_LINK = $(LIBTOOL) --mode=link +LIBTOOL_INSTALL = $(LIBTOOL) --mode=install +LIBTOOL_UNINSTALL = $(LIBTOOL) --mode=uninstall +RM = rm -f + +# Programs used by "make install": +INSTALL = /opt/homebrew/bin/ginstall -c +INSTALL_DATA = ${INSTALL} -m 644 +mkinstalldirs = $(SHELL) ../build-aux/mkinstalldirs + +#### End of system configuration section. #### + +PACKAGE = @PACKAGE@ +VERSION = @VERSION@ + +SHELL = /bin/sh + +# Before making a release, change this according to the libtool documentation, +# section "Library interface versions". +LIBCHARSET_VERSION_INFO = 1:0:0 + +# Needed by $(LIBTOOL). +top_builddir = .. + +SOURCES = $(srcdir)/localcharset.c $(srcdir)/relocatable-stub.c + +OBJECTS = localcharset.lo relocatable-stub.lo + +all : libcharset.la + +libcharset.la : $(OBJECTS) + $(LIBTOOL_LINK) $(CC) $(LDFLAGS) $(CFLAGS) -o libcharset.la -rpath $(libdir) -version-info $(LIBCHARSET_VERSION_INFO) -no-undefined $(OBJECTS) + +localcharset.lo : $(srcdir)/localcharset.c + $(LIBTOOL_COMPILE) $(CC) $(INCLUDES) $(CFLAGS) $(CPPFLAGS) $(DEFS) -c $(srcdir)/localcharset.c + +relocatable-stub.lo : $(srcdir)/relocatable-stub.c + $(LIBTOOL_COMPILE) $(CC) $(INCLUDES) $(CFLAGS) $(CPPFLAGS) $(DEFS) -c $(srcdir)/relocatable-stub.c + +# Installs the library and include files only. Typically called with only +# $(libdir) and $(includedir) - don't use $(prefix) and $(exec_prefix) here. +install-lib : all force + $(mkinstalldirs) $(libdir) + $(LIBTOOL_INSTALL) $(INSTALL) libcharset.la $(libdir)/libcharset.la + +# The following is needed in order to install a simple file in $(libdir) +# which is shared with other installed packages. We use a list of referencing +# packages so that "make uninstall" will remove the file if and only if it +# is not used by another installed package. +# On systems with glibc-2.1 or newer, the file is redundant, therefore we +# avoid installing it. + +install : all force + $(mkinstalldirs) $(DESTDIR)$(libdir) ; \ + $(LIBTOOL_INSTALL) $(INSTALL) libcharset.la $(DESTDIR)$(libdir)/libcharset.la + +install-strip : install + +installdirs : force + $(mkinstalldirs) $(DESTDIR)$(libdir) + +uninstall : force + $(LIBTOOL_UNINSTALL) $(RM) $(DESTDIR)$(libdir)/libcharset.la + +check : all + +mostlyclean : clean + +clean : force + $(RM) *.o *.lo *.a *.la *.o.lock core *.stackdump + $(RM) -r .libs _libs + +distclean : clean + $(RM) Makefile + +maintainer-clean : distclean + +# List of source files. +SOURCE_FILES = \ + ChangeLog Makefile.in \ + relocatable-stub.c +# List of files bidirectionally synced with gnulib. +GNULIB_SYNCED_FILES = \ + localcharset.c +# List of distributed files imported from other packages. +IMPORTED_FILES = +# List of distributed files generated by autotools or Makefile.devel. +GENERATED_FILES = +# List of distributed files generated by "make". +DISTRIBUTED_BUILT_FILES = +# List of distributed files. +DISTFILES = $(SOURCE_FILES) $(GNULIB_SYNCED_FILES) $(IMPORTED_FILES) $(GENERATED_FILES) $(DISTRIBUTED_BUILT_FILES) + +distdir : $(DISTFILES) + for file in $(DISTFILES); do \ + if test -f $$file; then dir='.'; else dir='$(srcdir)'; fi; \ + cp -p "$$dir/$$file" '$(distdir)'/$$file || exit 1; \ + done + +force : + diff --git a/libcharset/libtool b/libcharset/libtool new file mode 100755 index 0000000..739c108 --- /dev/null +++ b/libcharset/libtool @@ -0,0 +1,11942 @@ +#! /bin/sh +# Generated automatically by config.status () +# Libtool was configured on host Yaha-baidu: +# NOTE: Changes made to this file will be lost: look at ltmain.sh. + +# Provide generalized library-building support services. +# Written by Gordon Matzigkeit, 1996 + +# Copyright (C) 2014 Free Software Foundation, Inc. +# This is free software; see the source for copying conditions. There is NO +# warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. + +# GNU Libtool is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of of the License, or +# (at your option) any later version. +# +# As a special exception to the GNU General Public License, if you +# distribute this file as part of a program or library that is built +# using GNU Libtool, you may include this file under the same +# distribution terms that you use for the rest of that program. +# +# GNU Libtool is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . + + +# The names of the tagged configurations supported by this script. +available_tags='' + +# Configured defaults for sys_lib_dlsearch_path munging. +: ${LT_SYS_LIBRARY_PATH=""} + +# ### BEGIN LIBTOOL CONFIG + +# Which release of libtool.m4 was used? +macro_version=2.4.7 +macro_revision=2.4.7 + +# Assembler program. +AS="as" + +# DLL creation program. +DLLTOOL="false" + +# Object dumper program. +OBJDUMP="objdump" + +# Whether or not to build shared libraries. +build_libtool_libs=yes + +# Whether or not to build static libraries. +build_old_libs=yes + +# What type of objects to build. +pic_mode=default + +# Whether or not to optimize for fast installation. +fast_install=needless + +# Shared archive member basename,for filename based shared library versioning on AIX. +shared_archive_member_spec= + +# Shell to use when invoking shell scripts. +SHELL="/bin/sh" + +# An echo program that protects backslashes. +ECHO="printf %s\\n" + +# The PATH separator for the build system. +PATH_SEPARATOR=":" + +# The host system. +host_alias= +host=aarch64-apple-darwin22.4.0 +host_os=darwin22.4.0 + +# The build system. +build_alias= +build=aarch64-apple-darwin22.4.0 +build_os=darwin22.4.0 + +# A sed program that does not truncate output. +SED="/usr/bin/sed" + +# Sed that helps us avoid accidentally triggering echo(1) options like -n. +Xsed="$SED -e 1s/^X//" + +# A grep program that handles long lines. +GREP="/usr/bin/grep" + +# An ERE matcher. +EGREP="/usr/bin/grep -E" + +# A literal string matcher. +FGREP="/usr/bin/grep -F" + +# A BSD- or MS-compatible name lister. +NM="/usr/bin/nm -B" + +# Whether we need soft or hard links. +LN_S="ln -s" + +# What is the maximum length of a command? +max_cmd_len=786432 + +# Object file suffix (normally "o"). +objext=o + +# Executable file suffix (normally ""). +exeext= + +# whether the shell understands "unset". +lt_unset=unset + +# turn spaces into newlines. +SP2NL="tr \\040 \\012" + +# turn newlines into spaces. +NL2SP="tr \\015\\012 \\040\\040" + +# convert $build file names to $host format. +to_host_file_cmd=func_convert_file_noop + +# convert $build files to toolchain format. +to_tool_file_cmd=func_convert_file_noop + +# A file(cmd) program that detects file types. +FILECMD="file" + +# Method to check whether dependent libraries are shared objects. +deplibs_check_method="pass_all" + +# Command to use when deplibs_check_method = "file_magic". +file_magic_cmd="\$MAGIC_CMD" + +# How to find potential files when deplibs_check_method = "file_magic". +file_magic_glob="" + +# Find potential files using nocaseglob when deplibs_check_method = "file_magic". +want_nocaseglob="no" + +# Command to associate shared and link libraries. +sharedlib_from_linklib_cmd="printf %s\\n" + +# The archiver. +AR="ar" + +# Flags to create an archive (by configure). +lt_ar_flags=cr + +# Flags to create an archive. +AR_FLAGS=${ARFLAGS-"$lt_ar_flags"} + +# How to feed a file listing to the archiver. +archiver_list_spec="" + +# A symbol stripping program. +STRIP="strip" + +# Commands used to install an old-style archive. +RANLIB="ranlib" +old_postinstall_cmds="chmod 644 \$oldlib~\$RANLIB \$tool_oldlib" +old_postuninstall_cmds="" + +# Whether to use a lock for old archive extraction. +lock_old_archive_extraction=yes + +# A C compiler. +LTCC="gcc" + +# LTCC compiler flags. +LTCFLAGS="-g -O2" + +# Take the output of nm and produce a listing of raw symbols and C names. +global_symbol_pipe="/usr/bin/sed -n -e 's/^.*[ ]\\([ABCDGIRSTW][ABCDGIRSTW]*\\)[ ][ ]*_\\([_A-Za-z][_A-Za-z0-9]*\\)\$/\\1 _\\2 \\2/p' | /usr/bin/sed '/ __gnu_lto/d'" + +# Transform the output of nm in a proper C declaration. +global_symbol_to_cdecl="/usr/bin/sed -n -e 's/^T .* \\(.*\\)\$/extern int \\1();/p' -e 's/^[ABCDGIRSTW][ABCDGIRSTW]* .* \\(.*\\)\$/extern char \\1;/p'" + +# Transform the output of nm into a list of symbols to manually relocate. +global_symbol_to_import="" + +# Transform the output of nm in a C name address pair. +global_symbol_to_c_name_address="/usr/bin/sed -n -e 's/^: \\(.*\\) .*\$/ {\"\\1\", (void *) 0},/p' -e 's/^[ABCDGIRSTW][ABCDGIRSTW]* .* \\(.*\\)\$/ {\"\\1\", (void *) \\&\\1},/p'" + +# Transform the output of nm in a C name address pair when lib prefix is needed. +global_symbol_to_c_name_address_lib_prefix="/usr/bin/sed -n -e 's/^: \\(.*\\) .*\$/ {\"\\1\", (void *) 0},/p' -e 's/^[ABCDGIRSTW][ABCDGIRSTW]* .* \\(lib.*\\)\$/ {\"\\1\", (void *) \\&\\1},/p' -e 's/^[ABCDGIRSTW][ABCDGIRSTW]* .* \\(.*\\)\$/ {\"lib\\1\", (void *) \\&\\1},/p'" + +# The name lister interface. +nm_interface="BSD nm" + +# Specify filename containing input files for $NM. +nm_file_list_spec="@" + +# The root where to search for dependent libraries,and where our libraries should be installed. +lt_sysroot= + +# Command to truncate a binary pipe. +lt_truncate_bin="/bin/dd bs=4096 count=1" + +# The name of the directory that contains temporary libtool files. +objdir=.libs + +# Used to examine libraries when file_magic_cmd begins with "file". +MAGIC_CMD=file + +# Must we lock files when doing compilation? +need_locks="no" + +# Manifest tool. +MANIFEST_TOOL=":" + +# Tool to manipulate archived DWARF debug symbol files on Mac OS X. +DSYMUTIL="dsymutil" + +# Tool to change global to local symbols on Mac OS X. +NMEDIT="nmedit" + +# Tool to manipulate fat objects and archives on Mac OS X. +LIPO="lipo" + +# ldd/readelf like tool for Mach-O binaries on Mac OS X. +OTOOL="otool" + +# ldd/readelf like tool for 64 bit Mach-O binaries on Mac OS X 10.4. +OTOOL64=":" + +# Old archive suffix (normally "a"). +libext=a + +# Shared library suffix (normally ".so"). +shrext_cmds="\`test .\$module = .yes && echo .so || echo .dylib\`" + +# The commands to extract the exported symbol list from a shared archive. +extract_expsyms_cmds="" + +# Variables whose values should be saved in libtool wrapper scripts and +# restored at link time. +variables_saved_for_relink="PATH DYLD_LIBRARY_PATH GCC_EXEC_PREFIX COMPILER_PATH LIBRARY_PATH" + +# Do we need the "lib" prefix for modules? +need_lib_prefix=no + +# Do we need a version for libraries? +need_version=no + +# Library versioning type. +version_type=darwin + +# Shared library runtime path variable. +runpath_var= + +# Shared library path variable. +shlibpath_var=DYLD_LIBRARY_PATH + +# Is shlibpath searched before the hard-coded library search path? +shlibpath_overrides_runpath=yes + +# Format of library name prefix. +libname_spec="lib\$name" + +# List of archive names. First name is the real one, the rest are links. +# The last name is the one that the linker finds with -lNAME +library_names_spec="\$libname\$release\$major\$shared_ext \$libname\$shared_ext" + +# The coded name of the library, if different from the real name. +soname_spec="\$libname\$release\$major\$shared_ext" + +# Permission mode override for installation of shared libraries. +install_override_mode="" + +# Command to use after installation of a shared archive. +postinstall_cmds="" + +# Command to use after uninstallation of a shared archive. +postuninstall_cmds="" + +# Commands used to finish a libtool library installation in a directory. +finish_cmds="" + +# As "finish_cmds", except a single script fragment to be evaled but +# not shown. +finish_eval="" + +# Whether we should hardcode library paths into libraries. +hardcode_into_libs=no + +# Compile-time system search path for libraries. +sys_lib_search_path_spec="/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/clang/14.0.3 /usr/local/lib" + +# Detected run-time system search path for libraries. +sys_lib_dlsearch_path_spec="/usr/local/lib /lib /usr/lib" + +# Explicit LT_SYS_LIBRARY_PATH set during ./configure time. +configure_time_lt_sys_library_path="" + +# Whether dlopen is supported. +dlopen_support=unknown + +# Whether dlopen of programs is supported. +dlopen_self=unknown + +# Whether dlopen of statically linked programs is supported. +dlopen_self_static=unknown + +# Commands to strip libraries. +old_striplib="strip -S" +striplib="strip -x" + + +# The linker used to build libraries. +LD="/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ld" + +# How to create reloadable object files. +reload_flag=" -r" +reload_cmds="\$LTCC \$LTCFLAGS -nostdlib \$wl-r -o \$output\$reload_objs" + +# Commands used to build an old-style archive. +old_archive_cmds="\$AR \$AR_FLAGS \$oldlib\$oldobjs~\$RANLIB \$tool_oldlib" + +# A language specific compiler. +CC="gcc" + +# Is the compiler the GNU compiler? +with_gcc=yes + +# Compiler flag to turn off builtin functions. +no_builtin_flag=" -fno-builtin -fno-rtti -fno-exceptions" + +# Additional compiler flags for building library objects. +pic_flag=" -fno-common -DPIC" + +# How to pass a linker flag through the compiler. +wl="-Wl," + +# Compiler flag to prevent dynamic linking. +link_static_flag="" + +# Does compiler simultaneously support -c and -o options? +compiler_c_o="yes" + +# Whether or not to add -lc for building shared libraries. +build_libtool_need_lc=no + +# Whether or not to disallow shared libs when runtime libs are static. +allow_libtool_libs_with_static_runtimes=no + +# Compiler flag to allow reflexive dlopens. +export_dynamic_flag_spec="" + +# Compiler flag to generate shared objects directly from archives. +whole_archive_flag_spec="\`for conv in \$convenience\\\"\\\"; do test -n \\\"\$conv\\\" && new_convenience=\\\"\$new_convenience \$wl-force_load,\$conv\\\"; done; func_echo_all \\\"\$new_convenience\\\"\`" + +# Whether the compiler copes with passing no objects directly. +compiler_needs_object="no" + +# Create an old-style archive from a shared archive. +old_archive_from_new_cmds="" + +# Create a temporary old-style archive to link instead of a shared archive. +old_archive_from_expsyms_cmds="" + +# Commands used to build a shared archive. +archive_cmds="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring \$single_module" +archive_expsym_cmds="/usr/bin/sed 's|^|_|' < \$export_symbols > \$output_objdir/\$libname-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring \$single_module \$wl-exported_symbols_list,\$output_objdir/\$libname-symbols.expsym" + +# Commands used to build a loadable module if different from building +# a shared archive. +module_cmds="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags" +module_expsym_cmds="/usr/bin/sed -e 's|^|_|' < \$export_symbols > \$output_objdir/\$libname-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags \$wl-exported_symbols_list,\$output_objdir/\$libname-symbols.expsym" + +# Whether we are building with GNU ld or not. +with_gnu_ld="no" + +# Flag that allows shared libraries with undefined symbols to be built. +allow_undefined_flag="\$wl-undefined \${wl}dynamic_lookup" + +# Flag that enforces no undefined symbols. +no_undefined_flag="" + +# Flag to hardcode $libdir into a binary during linking. +# This must work even if $libdir does not exist +hardcode_libdir_flag_spec="" + +# Whether we need a single "-rpath" flag with a separated argument. +hardcode_libdir_separator="" + +# Set to "yes" if using DIR/libNAME$shared_ext during linking hardcodes +# DIR into the resulting binary. +hardcode_direct=no + +# Set to "yes" if using DIR/libNAME$shared_ext during linking hardcodes +# DIR into the resulting binary and the resulting library dependency is +# "absolute",i.e impossible to change by setting $shlibpath_var if the +# library is relocated. +hardcode_direct_absolute=no + +# Set to "yes" if using the -LDIR flag during linking hardcodes DIR +# into the resulting binary. +hardcode_minus_L=no + +# Set to "yes" if using SHLIBPATH_VAR=DIR during linking hardcodes DIR +# into the resulting binary. +hardcode_shlibpath_var=unsupported + +# Set to "yes" if building a shared library automatically hardcodes DIR +# into the library and all subsequent libraries and executables linked +# against it. +hardcode_automatic=yes + +# Set to yes if linker adds runtime paths of dependent libraries +# to runtime path list. +inherit_rpath=no + +# Whether libtool must link a program against all its dependency libraries. +link_all_deplibs=yes + +# Set to "yes" if exported symbols are required. +always_export_symbols=no + +# The commands to list exported symbols. +export_symbols_cmds="\$NM \$libobjs \$convenience | \$global_symbol_pipe | \$SED 's/.* //' | sort | uniq > \$export_symbols" + +# Symbols that should not be listed in the preloaded symbols. +exclude_expsyms="_GLOBAL_OFFSET_TABLE_|_GLOBAL__F[ID]_.*" + +# Symbols that must always be exported. +include_expsyms="" + +# Commands necessary for linking programs (against libraries) with templates. +prelink_cmds="" + +# Commands necessary for finishing linking programs. +postlink_cmds="" + +# Specify filename containing input files. +file_list_spec="" + +# How to hardcode a shared library path into an executable. +hardcode_action=immediate + +# ### END LIBTOOL CONFIG + + +# ### BEGIN FUNCTIONS SHARED WITH CONFIGURE + +# func_munge_path_list VARIABLE PATH +# ----------------------------------- +# VARIABLE is name of variable containing _space_ separated list of +# directories to be munged by the contents of PATH, which is string +# having a format: +# "DIR[:DIR]:" +# string "DIR[ DIR]" will be prepended to VARIABLE +# ":DIR[:DIR]" +# string "DIR[ DIR]" will be appended to VARIABLE +# "DIRP[:DIRP]::[DIRA:]DIRA" +# string "DIRP[ DIRP]" will be prepended to VARIABLE and string +# "DIRA[ DIRA]" will be appended to VARIABLE +# "DIR[:DIR]" +# VARIABLE will be replaced by "DIR[ DIR]" +func_munge_path_list () +{ + case x$2 in + x) + ;; + *:) + eval $1=\"`$ECHO $2 | $SED 's/:/ /g'` \$$1\" + ;; + x:*) + eval $1=\"\$$1 `$ECHO $2 | $SED 's/:/ /g'`\" + ;; + *::*) + eval $1=\"\$$1\ `$ECHO $2 | $SED -e 's/.*:://' -e 's/:/ /g'`\" + eval $1=\"`$ECHO $2 | $SED -e 's/::.*//' -e 's/:/ /g'`\ \$$1\" + ;; + *) + eval $1=\"`$ECHO $2 | $SED 's/:/ /g'`\" + ;; + esac +} + + +# Calculate cc_basename. Skip known compiler wrappers and cross-prefix. +func_cc_basename () +{ + for cc_temp in $*""; do + case $cc_temp in + compile | *[\\/]compile | ccache | *[\\/]ccache ) ;; + distcc | *[\\/]distcc | purify | *[\\/]purify ) ;; + \-*) ;; + *) break;; + esac + done + func_cc_basename_result=`$ECHO "$cc_temp" | $SED "s%.*/%%; s%^$host_alias-%%"` +} + + +# ### END FUNCTIONS SHARED WITH CONFIGURE + +#! /usr/bin/env sh +## DO NOT EDIT - This file generated from ./build-aux/ltmain.in +## by inline-source v2019-02-19.15 + +# libtool (GNU libtool) 2.4.7 +# Provide generalized library-building support services. +# Written by Gordon Matzigkeit , 1996 + +# Copyright (C) 1996-2019, 2021-2022 Free Software Foundation, Inc. +# This is free software; see the source for copying conditions. There is NO +# warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. + +# GNU Libtool is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# As a special exception to the GNU General Public License, +# if you distribute this file as part of a program or library that +# is built using GNU Libtool, you may include this file under the +# same distribution terms that you use for the rest of that program. +# +# GNU Libtool is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . + + +PROGRAM=libtool +PACKAGE=libtool +VERSION=2.4.7 +package_revision=2.4.7 + + +## ------ ## +## Usage. ## +## ------ ## + +# Run './libtool --help' for help with using this script from the +# command line. + + +## ------------------------------- ## +## User overridable command paths. ## +## ------------------------------- ## + +# After configure completes, it has a better idea of some of the +# shell tools we need than the defaults used by the functions shared +# with bootstrap, so set those here where they can still be over- +# ridden by the user, but otherwise take precedence. + +: ${AUTOCONF="autoconf"} +: ${AUTOMAKE="automake"} + + +## -------------------------- ## +## Source external libraries. ## +## -------------------------- ## + +# Much of our low-level functionality needs to be sourced from external +# libraries, which are installed to $pkgauxdir. + +# Set a version string for this script. +scriptversion=2019-02-19.15; # UTC + +# General shell script boiler plate, and helper functions. +# Written by Gary V. Vaughan, 2004 + +# This is free software. There is NO warranty; not even for +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. +# +# Copyright (C) 2004-2019, 2021 Bootstrap Authors +# +# This file is dual licensed under the terms of the MIT license +# , and GPL version 2 or later +# . You must apply one of +# these licenses when using or redistributing this software or any of +# the files within it. See the URLs above, or the file `LICENSE` +# included in the Bootstrap distribution for the full license texts. + +# Please report bugs or propose patches to: +# + + +## ------ ## +## Usage. ## +## ------ ## + +# Evaluate this file near the top of your script to gain access to +# the functions and variables defined here: +# +# . `echo "$0" | ${SED-sed} 's|[^/]*$||'`/build-aux/funclib.sh +# +# If you need to override any of the default environment variable +# settings, do that before evaluating this file. + + +## -------------------- ## +## Shell normalisation. ## +## -------------------- ## + +# Some shells need a little help to be as Bourne compatible as possible. +# Before doing anything else, make sure all that help has been provided! + +DUALCASE=1; export DUALCASE # for MKS sh +if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then : + emulate sh + NULLCMD=: + # Pre-4.2 versions of Zsh do word splitting on ${1+"$@"}, which + # is contrary to our usage. Disable this feature. + alias -g '${1+"$@"}'='"$@"' + setopt NO_GLOB_SUBST +else + case `(set -o) 2>/dev/null` in *posix*) set -o posix ;; esac +fi + +# NLS nuisances: We save the old values in case they are required later. +_G_user_locale= +_G_safe_locale= +for _G_var in LANG LANGUAGE LC_ALL LC_CTYPE LC_COLLATE LC_MESSAGES +do + eval "if test set = \"\${$_G_var+set}\"; then + save_$_G_var=\$$_G_var + $_G_var=C + export $_G_var + _G_user_locale=\"$_G_var=\\\$save_\$_G_var; \$_G_user_locale\" + _G_safe_locale=\"$_G_var=C; \$_G_safe_locale\" + fi" +done +# These NLS vars are set unconditionally (bootstrap issue #24). Unset those +# in case the environment reset is needed later and the $save_* variant is not +# defined (see the code above). +LC_ALL=C +LANGUAGE=C +export LANGUAGE LC_ALL + +# Make sure IFS has a sensible default +sp=' ' +nl=' +' +IFS="$sp $nl" + +# There are apparently some retarded systems that use ';' as a PATH separator! +if test "${PATH_SEPARATOR+set}" != set; then + PATH_SEPARATOR=: + (PATH='/bin;/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 && { + (PATH='/bin:/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 || + PATH_SEPARATOR=';' + } +fi + + +# func_unset VAR +# -------------- +# Portably unset VAR. +# In some shells, an 'unset VAR' statement leaves a non-zero return +# status if VAR is already unset, which might be problematic if the +# statement is used at the end of a function (thus poisoning its return +# value) or when 'set -e' is active (causing even a spurious abort of +# the script in this case). +func_unset () +{ + { eval $1=; (eval unset $1) >/dev/null 2>&1 && eval unset $1 || : ; } +} + + +# Make sure CDPATH doesn't cause `cd` commands to output the target dir. +func_unset CDPATH + +# Make sure ${,E,F}GREP behave sanely. +func_unset GREP_OPTIONS + + +## ------------------------- ## +## Locate command utilities. ## +## ------------------------- ## + + +# func_executable_p FILE +# ---------------------- +# Check that FILE is an executable regular file. +func_executable_p () +{ + test -f "$1" && test -x "$1" +} + + +# func_path_progs PROGS_LIST CHECK_FUNC [PATH] +# -------------------------------------------- +# Search for either a program that responds to --version with output +# containing "GNU", or else returned by CHECK_FUNC otherwise, by +# trying all the directories in PATH with each of the elements of +# PROGS_LIST. +# +# CHECK_FUNC should accept the path to a candidate program, and +# set $func_check_prog_result if it truncates its output less than +# $_G_path_prog_max characters. +func_path_progs () +{ + _G_progs_list=$1 + _G_check_func=$2 + _G_PATH=${3-"$PATH"} + + _G_path_prog_max=0 + _G_path_prog_found=false + _G_save_IFS=$IFS; IFS=${PATH_SEPARATOR-:} + for _G_dir in $_G_PATH; do + IFS=$_G_save_IFS + test -z "$_G_dir" && _G_dir=. + for _G_prog_name in $_G_progs_list; do + for _exeext in '' .EXE; do + _G_path_prog=$_G_dir/$_G_prog_name$_exeext + func_executable_p "$_G_path_prog" || continue + case `"$_G_path_prog" --version 2>&1` in + *GNU*) func_path_progs_result=$_G_path_prog _G_path_prog_found=: ;; + *) $_G_check_func $_G_path_prog + func_path_progs_result=$func_check_prog_result + ;; + esac + $_G_path_prog_found && break 3 + done + done + done + IFS=$_G_save_IFS + test -z "$func_path_progs_result" && { + echo "no acceptable sed could be found in \$PATH" >&2 + exit 1 + } +} + + +# We want to be able to use the functions in this file before configure +# has figured out where the best binaries are kept, which means we have +# to search for them ourselves - except when the results are already set +# where we skip the searches. + +# Unless the user overrides by setting SED, search the path for either GNU +# sed, or the sed that truncates its output the least. +test -z "$SED" && { + _G_sed_script=s/aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb/ + for _G_i in 1 2 3 4 5 6 7; do + _G_sed_script=$_G_sed_script$nl$_G_sed_script + done + echo "$_G_sed_script" 2>/dev/null | sed 99q >conftest.sed + _G_sed_script= + + func_check_prog_sed () + { + _G_path_prog=$1 + + _G_count=0 + printf 0123456789 >conftest.in + while : + do + cat conftest.in conftest.in >conftest.tmp + mv conftest.tmp conftest.in + cp conftest.in conftest.nl + echo '' >> conftest.nl + "$_G_path_prog" -f conftest.sed conftest.out 2>/dev/null || break + diff conftest.out conftest.nl >/dev/null 2>&1 || break + _G_count=`expr $_G_count + 1` + if test "$_G_count" -gt "$_G_path_prog_max"; then + # Best one so far, save it but keep looking for a better one + func_check_prog_result=$_G_path_prog + _G_path_prog_max=$_G_count + fi + # 10*(2^10) chars as input seems more than enough + test 10 -lt "$_G_count" && break + done + rm -f conftest.in conftest.tmp conftest.nl conftest.out + } + + func_path_progs "sed gsed" func_check_prog_sed "$PATH:/usr/xpg4/bin" + rm -f conftest.sed + SED=$func_path_progs_result +} + + +# Unless the user overrides by setting GREP, search the path for either GNU +# grep, or the grep that truncates its output the least. +test -z "$GREP" && { + func_check_prog_grep () + { + _G_path_prog=$1 + + _G_count=0 + _G_path_prog_max=0 + printf 0123456789 >conftest.in + while : + do + cat conftest.in conftest.in >conftest.tmp + mv conftest.tmp conftest.in + cp conftest.in conftest.nl + echo 'GREP' >> conftest.nl + "$_G_path_prog" -e 'GREP$' -e '-(cannot match)-' conftest.out 2>/dev/null || break + diff conftest.out conftest.nl >/dev/null 2>&1 || break + _G_count=`expr $_G_count + 1` + if test "$_G_count" -gt "$_G_path_prog_max"; then + # Best one so far, save it but keep looking for a better one + func_check_prog_result=$_G_path_prog + _G_path_prog_max=$_G_count + fi + # 10*(2^10) chars as input seems more than enough + test 10 -lt "$_G_count" && break + done + rm -f conftest.in conftest.tmp conftest.nl conftest.out + } + + func_path_progs "grep ggrep" func_check_prog_grep "$PATH:/usr/xpg4/bin" + GREP=$func_path_progs_result +} + + +## ------------------------------- ## +## User overridable command paths. ## +## ------------------------------- ## + +# All uppercase variable names are used for environment variables. These +# variables can be overridden by the user before calling a script that +# uses them if a suitable command of that name is not already available +# in the command search PATH. + +: ${CP="cp -f"} +: ${ECHO="printf %s\n"} +: ${EGREP="$GREP -E"} +: ${FGREP="$GREP -F"} +: ${LN_S="ln -s"} +: ${MAKE="make"} +: ${MKDIR="mkdir"} +: ${MV="mv -f"} +: ${RM="rm -f"} +: ${SHELL="${CONFIG_SHELL-/bin/sh}"} + + +## -------------------- ## +## Useful sed snippets. ## +## -------------------- ## + +sed_dirname='s|/[^/]*$||' +sed_basename='s|^.*/||' + +# Sed substitution that helps us do robust quoting. It backslashifies +# metacharacters that are still active within double-quoted strings. +sed_quote_subst='s|\([`"$\\]\)|\\\1|g' + +# Same as above, but do not quote variable references. +sed_double_quote_subst='s/\(["`\\]\)/\\\1/g' + +# Sed substitution that turns a string into a regex matching for the +# string literally. +sed_make_literal_regex='s|[].[^$\\*\/]|\\&|g' + +# Sed substitution that converts a w32 file name or path +# that contains forward slashes, into one that contains +# (escaped) backslashes. A very naive implementation. +sed_naive_backslashify='s|\\\\*|\\|g;s|/|\\|g;s|\\|\\\\|g' + +# Re-'\' parameter expansions in output of sed_double_quote_subst that +# were '\'-ed in input to the same. If an odd number of '\' preceded a +# '$' in input to sed_double_quote_subst, that '$' was protected from +# expansion. Since each input '\' is now two '\'s, look for any number +# of runs of four '\'s followed by two '\'s and then a '$'. '\' that '$'. +_G_bs='\\' +_G_bs2='\\\\' +_G_bs4='\\\\\\\\' +_G_dollar='\$' +sed_double_backslash="\ + s/$_G_bs4/&\\ +/g + s/^$_G_bs2$_G_dollar/$_G_bs&/ + s/\\([^$_G_bs]\\)$_G_bs2$_G_dollar/\\1$_G_bs2$_G_bs$_G_dollar/g + s/\n//g" + +# require_check_ifs_backslash +# --------------------------- +# Check if we can use backslash as IFS='\' separator, and set +# $check_ifs_backshlash_broken to ':' or 'false'. +require_check_ifs_backslash=func_require_check_ifs_backslash +func_require_check_ifs_backslash () +{ + _G_save_IFS=$IFS + IFS='\' + _G_check_ifs_backshlash='a\\b' + for _G_i in $_G_check_ifs_backshlash + do + case $_G_i in + a) + check_ifs_backshlash_broken=false + ;; + '') + break + ;; + *) + check_ifs_backshlash_broken=: + break + ;; + esac + done + IFS=$_G_save_IFS + require_check_ifs_backslash=: +} + + +## ----------------- ## +## Global variables. ## +## ----------------- ## + +# Except for the global variables explicitly listed below, the following +# functions in the '^func_' namespace, and the '^require_' namespace +# variables initialised in the 'Resource management' section, sourcing +# this file will not pollute your global namespace with anything +# else. There's no portable way to scope variables in Bourne shell +# though, so actually running these functions will sometimes place +# results into a variable named after the function, and often use +# temporary variables in the '^_G_' namespace. If you are careful to +# avoid using those namespaces casually in your sourcing script, things +# should continue to work as you expect. And, of course, you can freely +# overwrite any of the functions or variables defined here before +# calling anything to customize them. + +EXIT_SUCCESS=0 +EXIT_FAILURE=1 +EXIT_MISMATCH=63 # $? = 63 is used to indicate version mismatch to missing. +EXIT_SKIP=77 # $? = 77 is used to indicate a skipped test to automake. + +# Allow overriding, eg assuming that you follow the convention of +# putting '$debug_cmd' at the start of all your functions, you can get +# bash to show function call trace with: +# +# debug_cmd='eval echo "${FUNCNAME[0]} $*" >&2' bash your-script-name +debug_cmd=${debug_cmd-":"} +exit_cmd=: + +# By convention, finish your script with: +# +# exit $exit_status +# +# so that you can set exit_status to non-zero if you want to indicate +# something went wrong during execution without actually bailing out at +# the point of failure. +exit_status=$EXIT_SUCCESS + +# Work around backward compatibility issue on IRIX 6.5. On IRIX 6.4+, sh +# is ksh but when the shell is invoked as "sh" and the current value of +# the _XPG environment variable is not equal to 1 (one), the special +# positional parameter $0, within a function call, is the name of the +# function. +progpath=$0 + +# The name of this program. +progname=`$ECHO "$progpath" |$SED "$sed_basename"` + +# Make sure we have an absolute progpath for reexecution: +case $progpath in + [\\/]*|[A-Za-z]:\\*) ;; + *[\\/]*) + progdir=`$ECHO "$progpath" |$SED "$sed_dirname"` + progdir=`cd "$progdir" && pwd` + progpath=$progdir/$progname + ;; + *) + _G_IFS=$IFS + IFS=${PATH_SEPARATOR-:} + for progdir in $PATH; do + IFS=$_G_IFS + test -x "$progdir/$progname" && break + done + IFS=$_G_IFS + test -n "$progdir" || progdir=`pwd` + progpath=$progdir/$progname + ;; +esac + + +## ----------------- ## +## Standard options. ## +## ----------------- ## + +# The following options affect the operation of the functions defined +# below, and should be set appropriately depending on run-time para- +# meters passed on the command line. + +opt_dry_run=false +opt_quiet=false +opt_verbose=false + +# Categories 'all' and 'none' are always available. Append any others +# you will pass as the first argument to func_warning from your own +# code. +warning_categories= + +# By default, display warnings according to 'opt_warning_types'. Set +# 'warning_func' to ':' to elide all warnings, or func_fatal_error to +# treat the next displayed warning as a fatal error. +warning_func=func_warn_and_continue + +# Set to 'all' to display all warnings, 'none' to suppress all +# warnings, or a space delimited list of some subset of +# 'warning_categories' to display only the listed warnings. +opt_warning_types=all + + +## -------------------- ## +## Resource management. ## +## -------------------- ## + +# This section contains definitions for functions that each ensure a +# particular resource (a file, or a non-empty configuration variable for +# example) is available, and if appropriate to extract default values +# from pertinent package files. Call them using their associated +# 'require_*' variable to ensure that they are executed, at most, once. +# +# It's entirely deliberate that calling these functions can set +# variables that don't obey the namespace limitations obeyed by the rest +# of this file, in order that that they be as useful as possible to +# callers. + + +# require_term_colors +# ------------------- +# Allow display of bold text on terminals that support it. +require_term_colors=func_require_term_colors +func_require_term_colors () +{ + $debug_cmd + + test -t 1 && { + # COLORTERM and USE_ANSI_COLORS environment variables take + # precedence, because most terminfo databases neglect to describe + # whether color sequences are supported. + test -n "${COLORTERM+set}" && : ${USE_ANSI_COLORS="1"} + + if test 1 = "$USE_ANSI_COLORS"; then + # Standard ANSI escape sequences + tc_reset='' + tc_bold=''; tc_standout='' + tc_red=''; tc_green='' + tc_blue=''; tc_cyan='' + else + # Otherwise trust the terminfo database after all. + test -n "`tput sgr0 2>/dev/null`" && { + tc_reset=`tput sgr0` + test -n "`tput bold 2>/dev/null`" && tc_bold=`tput bold` + tc_standout=$tc_bold + test -n "`tput smso 2>/dev/null`" && tc_standout=`tput smso` + test -n "`tput setaf 1 2>/dev/null`" && tc_red=`tput setaf 1` + test -n "`tput setaf 2 2>/dev/null`" && tc_green=`tput setaf 2` + test -n "`tput setaf 4 2>/dev/null`" && tc_blue=`tput setaf 4` + test -n "`tput setaf 5 2>/dev/null`" && tc_cyan=`tput setaf 5` + } + fi + } + + require_term_colors=: +} + + +## ----------------- ## +## Function library. ## +## ----------------- ## + +# This section contains a variety of useful functions to call in your +# scripts. Take note of the portable wrappers for features provided by +# some modern shells, which will fall back to slower equivalents on +# less featureful shells. + + +# func_append VAR VALUE +# --------------------- +# Append VALUE onto the existing contents of VAR. + + # We should try to minimise forks, especially on Windows where they are + # unreasonably slow, so skip the feature probes when bash or zsh are + # being used: + if test set = "${BASH_VERSION+set}${ZSH_VERSION+set}"; then + : ${_G_HAVE_ARITH_OP="yes"} + : ${_G_HAVE_XSI_OPS="yes"} + # The += operator was introduced in bash 3.1 + case $BASH_VERSION in + [12].* | 3.0 | 3.0*) ;; + *) + : ${_G_HAVE_PLUSEQ_OP="yes"} + ;; + esac + fi + + # _G_HAVE_PLUSEQ_OP + # Can be empty, in which case the shell is probed, "yes" if += is + # useable or anything else if it does not work. + test -z "$_G_HAVE_PLUSEQ_OP" \ + && (eval 'x=a; x+=" b"; test "a b" = "$x"') 2>/dev/null \ + && _G_HAVE_PLUSEQ_OP=yes + +if test yes = "$_G_HAVE_PLUSEQ_OP" +then + # This is an XSI compatible shell, allowing a faster implementation... + eval 'func_append () + { + $debug_cmd + + eval "$1+=\$2" + }' +else + # ...otherwise fall back to using expr, which is often a shell builtin. + func_append () + { + $debug_cmd + + eval "$1=\$$1\$2" + } +fi + + +# func_append_quoted VAR VALUE +# ---------------------------- +# Quote VALUE and append to the end of shell variable VAR, separated +# by a space. +if test yes = "$_G_HAVE_PLUSEQ_OP"; then + eval 'func_append_quoted () + { + $debug_cmd + + func_quote_arg pretty "$2" + eval "$1+=\\ \$func_quote_arg_result" + }' +else + func_append_quoted () + { + $debug_cmd + + func_quote_arg pretty "$2" + eval "$1=\$$1\\ \$func_quote_arg_result" + } +fi + + +# func_append_uniq VAR VALUE +# -------------------------- +# Append unique VALUE onto the existing contents of VAR, assuming +# entries are delimited by the first character of VALUE. For example: +# +# func_append_uniq options " --another-option option-argument" +# +# will only append to $options if " --another-option option-argument " +# is not already present somewhere in $options already (note spaces at +# each end implied by leading space in second argument). +func_append_uniq () +{ + $debug_cmd + + eval _G_current_value='`$ECHO $'$1'`' + _G_delim=`expr "$2" : '\(.\)'` + + case $_G_delim$_G_current_value$_G_delim in + *"$2$_G_delim"*) ;; + *) func_append "$@" ;; + esac +} + + +# func_arith TERM... +# ------------------ +# Set func_arith_result to the result of evaluating TERMs. + test -z "$_G_HAVE_ARITH_OP" \ + && (eval 'test 2 = $(( 1 + 1 ))') 2>/dev/null \ + && _G_HAVE_ARITH_OP=yes + +if test yes = "$_G_HAVE_ARITH_OP"; then + eval 'func_arith () + { + $debug_cmd + + func_arith_result=$(( $* )) + }' +else + func_arith () + { + $debug_cmd + + func_arith_result=`expr "$@"` + } +fi + + +# func_basename FILE +# ------------------ +# Set func_basename_result to FILE with everything up to and including +# the last / stripped. +if test yes = "$_G_HAVE_XSI_OPS"; then + # If this shell supports suffix pattern removal, then use it to avoid + # forking. Hide the definitions single quotes in case the shell chokes + # on unsupported syntax... + _b='func_basename_result=${1##*/}' + _d='case $1 in + */*) func_dirname_result=${1%/*}$2 ;; + * ) func_dirname_result=$3 ;; + esac' + +else + # ...otherwise fall back to using sed. + _b='func_basename_result=`$ECHO "$1" |$SED "$sed_basename"`' + _d='func_dirname_result=`$ECHO "$1" |$SED "$sed_dirname"` + if test "X$func_dirname_result" = "X$1"; then + func_dirname_result=$3 + else + func_append func_dirname_result "$2" + fi' +fi + +eval 'func_basename () +{ + $debug_cmd + + '"$_b"' +}' + + +# func_dirname FILE APPEND NONDIR_REPLACEMENT +# ------------------------------------------- +# Compute the dirname of FILE. If nonempty, add APPEND to the result, +# otherwise set result to NONDIR_REPLACEMENT. +eval 'func_dirname () +{ + $debug_cmd + + '"$_d"' +}' + + +# func_dirname_and_basename FILE APPEND NONDIR_REPLACEMENT +# -------------------------------------------------------- +# Perform func_basename and func_dirname in a single function +# call: +# dirname: Compute the dirname of FILE. If nonempty, +# add APPEND to the result, otherwise set result +# to NONDIR_REPLACEMENT. +# value returned in "$func_dirname_result" +# basename: Compute filename of FILE. +# value retuned in "$func_basename_result" +# For efficiency, we do not delegate to the functions above but instead +# duplicate the functionality here. +eval 'func_dirname_and_basename () +{ + $debug_cmd + + '"$_b"' + '"$_d"' +}' + + +# func_echo ARG... +# ---------------- +# Echo program name prefixed message. +func_echo () +{ + $debug_cmd + + _G_message=$* + + func_echo_IFS=$IFS + IFS=$nl + for _G_line in $_G_message; do + IFS=$func_echo_IFS + $ECHO "$progname: $_G_line" + done + IFS=$func_echo_IFS +} + + +# func_echo_all ARG... +# -------------------- +# Invoke $ECHO with all args, space-separated. +func_echo_all () +{ + $ECHO "$*" +} + + +# func_echo_infix_1 INFIX ARG... +# ------------------------------ +# Echo program name, followed by INFIX on the first line, with any +# additional lines not showing INFIX. +func_echo_infix_1 () +{ + $debug_cmd + + $require_term_colors + + _G_infix=$1; shift + _G_indent=$_G_infix + _G_prefix="$progname: $_G_infix: " + _G_message=$* + + # Strip color escape sequences before counting printable length + for _G_tc in "$tc_reset" "$tc_bold" "$tc_standout" "$tc_red" "$tc_green" "$tc_blue" "$tc_cyan" + do + test -n "$_G_tc" && { + _G_esc_tc=`$ECHO "$_G_tc" | $SED "$sed_make_literal_regex"` + _G_indent=`$ECHO "$_G_indent" | $SED "s|$_G_esc_tc||g"` + } + done + _G_indent="$progname: "`echo "$_G_indent" | $SED 's|.| |g'`" " ## exclude from sc_prohibit_nested_quotes + + func_echo_infix_1_IFS=$IFS + IFS=$nl + for _G_line in $_G_message; do + IFS=$func_echo_infix_1_IFS + $ECHO "$_G_prefix$tc_bold$_G_line$tc_reset" >&2 + _G_prefix=$_G_indent + done + IFS=$func_echo_infix_1_IFS +} + + +# func_error ARG... +# ----------------- +# Echo program name prefixed message to standard error. +func_error () +{ + $debug_cmd + + $require_term_colors + + func_echo_infix_1 " $tc_standout${tc_red}error$tc_reset" "$*" >&2 +} + + +# func_fatal_error ARG... +# ----------------------- +# Echo program name prefixed message to standard error, and exit. +func_fatal_error () +{ + $debug_cmd + + func_error "$*" + exit $EXIT_FAILURE +} + + +# func_grep EXPRESSION FILENAME +# ----------------------------- +# Check whether EXPRESSION matches any line of FILENAME, without output. +func_grep () +{ + $debug_cmd + + $GREP "$1" "$2" >/dev/null 2>&1 +} + + +# func_len STRING +# --------------- +# Set func_len_result to the length of STRING. STRING may not +# start with a hyphen. + test -z "$_G_HAVE_XSI_OPS" \ + && (eval 'x=a/b/c; + test 5aa/bb/cc = "${#x}${x%%/*}${x%/*}${x#*/}${x##*/}"') 2>/dev/null \ + && _G_HAVE_XSI_OPS=yes + +if test yes = "$_G_HAVE_XSI_OPS"; then + eval 'func_len () + { + $debug_cmd + + func_len_result=${#1} + }' +else + func_len () + { + $debug_cmd + + func_len_result=`expr "$1" : ".*" 2>/dev/null || echo $max_cmd_len` + } +fi + + +# func_mkdir_p DIRECTORY-PATH +# --------------------------- +# Make sure the entire path to DIRECTORY-PATH is available. +func_mkdir_p () +{ + $debug_cmd + + _G_directory_path=$1 + _G_dir_list= + + if test -n "$_G_directory_path" && test : != "$opt_dry_run"; then + + # Protect directory names starting with '-' + case $_G_directory_path in + -*) _G_directory_path=./$_G_directory_path ;; + esac + + # While some portion of DIR does not yet exist... + while test ! -d "$_G_directory_path"; do + # ...make a list in topmost first order. Use a colon delimited + # list incase some portion of path contains whitespace. + _G_dir_list=$_G_directory_path:$_G_dir_list + + # If the last portion added has no slash in it, the list is done + case $_G_directory_path in */*) ;; *) break ;; esac + + # ...otherwise throw away the child directory and loop + _G_directory_path=`$ECHO "$_G_directory_path" | $SED -e "$sed_dirname"` + done + _G_dir_list=`$ECHO "$_G_dir_list" | $SED 's|:*$||'` + + func_mkdir_p_IFS=$IFS; IFS=: + for _G_dir in $_G_dir_list; do + IFS=$func_mkdir_p_IFS + # mkdir can fail with a 'File exist' error if two processes + # try to create one of the directories concurrently. Don't + # stop in that case! + $MKDIR "$_G_dir" 2>/dev/null || : + done + IFS=$func_mkdir_p_IFS + + # Bail out if we (or some other process) failed to create a directory. + test -d "$_G_directory_path" || \ + func_fatal_error "Failed to create '$1'" + fi +} + + +# func_mktempdir [BASENAME] +# ------------------------- +# Make a temporary directory that won't clash with other running +# libtool processes, and avoids race conditions if possible. If +# given, BASENAME is the basename for that directory. +func_mktempdir () +{ + $debug_cmd + + _G_template=${TMPDIR-/tmp}/${1-$progname} + + if test : = "$opt_dry_run"; then + # Return a directory name, but don't create it in dry-run mode + _G_tmpdir=$_G_template-$$ + else + + # If mktemp works, use that first and foremost + _G_tmpdir=`mktemp -d "$_G_template-XXXXXXXX" 2>/dev/null` + + if test ! -d "$_G_tmpdir"; then + # Failing that, at least try and use $RANDOM to avoid a race + _G_tmpdir=$_G_template-${RANDOM-0}$$ + + func_mktempdir_umask=`umask` + umask 0077 + $MKDIR "$_G_tmpdir" + umask $func_mktempdir_umask + fi + + # If we're not in dry-run mode, bomb out on failure + test -d "$_G_tmpdir" || \ + func_fatal_error "cannot create temporary directory '$_G_tmpdir'" + fi + + $ECHO "$_G_tmpdir" +} + + +# func_normal_abspath PATH +# ------------------------ +# Remove doubled-up and trailing slashes, "." path components, +# and cancel out any ".." path components in PATH after making +# it an absolute path. +func_normal_abspath () +{ + $debug_cmd + + # These SED scripts presuppose an absolute path with a trailing slash. + _G_pathcar='s|^/\([^/]*\).*$|\1|' + _G_pathcdr='s|^/[^/]*||' + _G_removedotparts=':dotsl + s|/\./|/|g + t dotsl + s|/\.$|/|' + _G_collapseslashes='s|/\{1,\}|/|g' + _G_finalslash='s|/*$|/|' + + # Start from root dir and reassemble the path. + func_normal_abspath_result= + func_normal_abspath_tpath=$1 + func_normal_abspath_altnamespace= + case $func_normal_abspath_tpath in + "") + # Empty path, that just means $cwd. + func_stripname '' '/' "`pwd`" + func_normal_abspath_result=$func_stripname_result + return + ;; + # The next three entries are used to spot a run of precisely + # two leading slashes without using negated character classes; + # we take advantage of case's first-match behaviour. + ///*) + # Unusual form of absolute path, do nothing. + ;; + //*) + # Not necessarily an ordinary path; POSIX reserves leading '//' + # and for example Cygwin uses it to access remote file shares + # over CIFS/SMB, so we conserve a leading double slash if found. + func_normal_abspath_altnamespace=/ + ;; + /*) + # Absolute path, do nothing. + ;; + *) + # Relative path, prepend $cwd. + func_normal_abspath_tpath=`pwd`/$func_normal_abspath_tpath + ;; + esac + + # Cancel out all the simple stuff to save iterations. We also want + # the path to end with a slash for ease of parsing, so make sure + # there is one (and only one) here. + func_normal_abspath_tpath=`$ECHO "$func_normal_abspath_tpath" | $SED \ + -e "$_G_removedotparts" -e "$_G_collapseslashes" -e "$_G_finalslash"` + while :; do + # Processed it all yet? + if test / = "$func_normal_abspath_tpath"; then + # If we ascended to the root using ".." the result may be empty now. + if test -z "$func_normal_abspath_result"; then + func_normal_abspath_result=/ + fi + break + fi + func_normal_abspath_tcomponent=`$ECHO "$func_normal_abspath_tpath" | $SED \ + -e "$_G_pathcar"` + func_normal_abspath_tpath=`$ECHO "$func_normal_abspath_tpath" | $SED \ + -e "$_G_pathcdr"` + # Figure out what to do with it + case $func_normal_abspath_tcomponent in + "") + # Trailing empty path component, ignore it. + ;; + ..) + # Parent dir; strip last assembled component from result. + func_dirname "$func_normal_abspath_result" + func_normal_abspath_result=$func_dirname_result + ;; + *) + # Actual path component, append it. + func_append func_normal_abspath_result "/$func_normal_abspath_tcomponent" + ;; + esac + done + # Restore leading double-slash if one was found on entry. + func_normal_abspath_result=$func_normal_abspath_altnamespace$func_normal_abspath_result +} + + +# func_notquiet ARG... +# -------------------- +# Echo program name prefixed message only when not in quiet mode. +func_notquiet () +{ + $debug_cmd + + $opt_quiet || func_echo ${1+"$@"} + + # A bug in bash halts the script if the last line of a function + # fails when set -e is in force, so we need another command to + # work around that: + : +} + + +# func_relative_path SRCDIR DSTDIR +# -------------------------------- +# Set func_relative_path_result to the relative path from SRCDIR to DSTDIR. +func_relative_path () +{ + $debug_cmd + + func_relative_path_result= + func_normal_abspath "$1" + func_relative_path_tlibdir=$func_normal_abspath_result + func_normal_abspath "$2" + func_relative_path_tbindir=$func_normal_abspath_result + + # Ascend the tree starting from libdir + while :; do + # check if we have found a prefix of bindir + case $func_relative_path_tbindir in + $func_relative_path_tlibdir) + # found an exact match + func_relative_path_tcancelled= + break + ;; + $func_relative_path_tlibdir*) + # found a matching prefix + func_stripname "$func_relative_path_tlibdir" '' "$func_relative_path_tbindir" + func_relative_path_tcancelled=$func_stripname_result + if test -z "$func_relative_path_result"; then + func_relative_path_result=. + fi + break + ;; + *) + func_dirname $func_relative_path_tlibdir + func_relative_path_tlibdir=$func_dirname_result + if test -z "$func_relative_path_tlibdir"; then + # Have to descend all the way to the root! + func_relative_path_result=../$func_relative_path_result + func_relative_path_tcancelled=$func_relative_path_tbindir + break + fi + func_relative_path_result=../$func_relative_path_result + ;; + esac + done + + # Now calculate path; take care to avoid doubling-up slashes. + func_stripname '' '/' "$func_relative_path_result" + func_relative_path_result=$func_stripname_result + func_stripname '/' '/' "$func_relative_path_tcancelled" + if test -n "$func_stripname_result"; then + func_append func_relative_path_result "/$func_stripname_result" + fi + + # Normalisation. If bindir is libdir, return '.' else relative path. + if test -n "$func_relative_path_result"; then + func_stripname './' '' "$func_relative_path_result" + func_relative_path_result=$func_stripname_result + fi + + test -n "$func_relative_path_result" || func_relative_path_result=. + + : +} + + +# func_quote_portable EVAL ARG +# ---------------------------- +# Internal function to portably implement func_quote_arg. Note that we still +# keep attention to performance here so we as much as possible try to avoid +# calling sed binary (so far O(N) complexity as long as func_append is O(1)). +func_quote_portable () +{ + $debug_cmd + + $require_check_ifs_backslash + + func_quote_portable_result=$2 + + # one-time-loop (easy break) + while true + do + if $1; then + func_quote_portable_result=`$ECHO "$2" | $SED \ + -e "$sed_double_quote_subst" -e "$sed_double_backslash"` + break + fi + + # Quote for eval. + case $func_quote_portable_result in + *[\\\`\"\$]*) + # Fallback to sed for $func_check_bs_ifs_broken=:, or when the string + # contains the shell wildcard characters. + case $check_ifs_backshlash_broken$func_quote_portable_result in + :*|*[\[\*\?]*) + func_quote_portable_result=`$ECHO "$func_quote_portable_result" \ + | $SED "$sed_quote_subst"` + break + ;; + esac + + func_quote_portable_old_IFS=$IFS + for _G_char in '\' '`' '"' '$' + do + # STATE($1) PREV($2) SEPARATOR($3) + set start "" "" + func_quote_portable_result=dummy"$_G_char$func_quote_portable_result$_G_char"dummy + IFS=$_G_char + for _G_part in $func_quote_portable_result + do + case $1 in + quote) + func_append func_quote_portable_result "$3$2" + set quote "$_G_part" "\\$_G_char" + ;; + start) + set first "" "" + func_quote_portable_result= + ;; + first) + set quote "$_G_part" "" + ;; + esac + done + done + IFS=$func_quote_portable_old_IFS + ;; + *) ;; + esac + break + done + + func_quote_portable_unquoted_result=$func_quote_portable_result + case $func_quote_portable_result in + # double-quote args containing shell metacharacters to delay + # word splitting, command substitution and variable expansion + # for a subsequent eval. + # many bourne shells cannot handle close brackets correctly + # in scan sets, so we specify it separately. + *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"") + func_quote_portable_result=\"$func_quote_portable_result\" + ;; + esac +} + + +# func_quotefast_eval ARG +# ----------------------- +# Quote one ARG (internal). This is equivalent to 'func_quote_arg eval ARG', +# but optimized for speed. Result is stored in $func_quotefast_eval. +if test xyes = `(x=; printf -v x %q yes; echo x"$x") 2>/dev/null`; then + printf -v _GL_test_printf_tilde %q '~' + if test '\~' = "$_GL_test_printf_tilde"; then + func_quotefast_eval () + { + printf -v func_quotefast_eval_result %q "$1" + } + else + # Broken older Bash implementations. Make those faster too if possible. + func_quotefast_eval () + { + case $1 in + '~'*) + func_quote_portable false "$1" + func_quotefast_eval_result=$func_quote_portable_result + ;; + *) + printf -v func_quotefast_eval_result %q "$1" + ;; + esac + } + fi +else + func_quotefast_eval () + { + func_quote_portable false "$1" + func_quotefast_eval_result=$func_quote_portable_result + } +fi + + +# func_quote_arg MODEs ARG +# ------------------------ +# Quote one ARG to be evaled later. MODEs argument may contain zero or more +# specifiers listed below separated by ',' character. This function returns two +# values: +# i) func_quote_arg_result +# double-quoted (when needed), suitable for a subsequent eval +# ii) func_quote_arg_unquoted_result +# has all characters that are still active within double +# quotes backslashified. Available only if 'unquoted' is specified. +# +# Available modes: +# ---------------- +# 'eval' (default) +# - escape shell special characters +# 'expand' +# - the same as 'eval'; but do not quote variable references +# 'pretty' +# - request aesthetic output, i.e. '"a b"' instead of 'a\ b'. This might +# be used later in func_quote to get output like: 'echo "a b"' instead +# of 'echo a\ b'. This is slower than default on some shells. +# 'unquoted' +# - produce also $func_quote_arg_unquoted_result which does not contain +# wrapping double-quotes. +# +# Examples for 'func_quote_arg pretty,unquoted string': +# +# string | *_result | *_unquoted_result +# ------------+-----------------------+------------------- +# " | \" | \" +# a b | "a b" | a b +# "a b" | "\"a b\"" | \"a b\" +# * | "*" | * +# z="${x-$y}" | "z=\"\${x-\$y}\"" | z=\"\${x-\$y}\" +# +# Examples for 'func_quote_arg pretty,unquoted,expand string': +# +# string | *_result | *_unquoted_result +# --------------+---------------------+-------------------- +# z="${x-$y}" | "z=\"${x-$y}\"" | z=\"${x-$y}\" +func_quote_arg () +{ + _G_quote_expand=false + case ,$1, in + *,expand,*) + _G_quote_expand=: + ;; + esac + + case ,$1, in + *,pretty,*|*,expand,*|*,unquoted,*) + func_quote_portable $_G_quote_expand "$2" + func_quote_arg_result=$func_quote_portable_result + func_quote_arg_unquoted_result=$func_quote_portable_unquoted_result + ;; + *) + # Faster quote-for-eval for some shells. + func_quotefast_eval "$2" + func_quote_arg_result=$func_quotefast_eval_result + ;; + esac +} + + +# func_quote MODEs ARGs... +# ------------------------ +# Quote all ARGs to be evaled later and join them into single command. See +# func_quote_arg's description for more info. +func_quote () +{ + $debug_cmd + _G_func_quote_mode=$1 ; shift + func_quote_result= + while test 0 -lt $#; do + func_quote_arg "$_G_func_quote_mode" "$1" + if test -n "$func_quote_result"; then + func_append func_quote_result " $func_quote_arg_result" + else + func_append func_quote_result "$func_quote_arg_result" + fi + shift + done +} + + +# func_stripname PREFIX SUFFIX NAME +# --------------------------------- +# strip PREFIX and SUFFIX from NAME, and store in func_stripname_result. +# PREFIX and SUFFIX must not contain globbing or regex special +# characters, hashes, percent signs, but SUFFIX may contain a leading +# dot (in which case that matches only a dot). +if test yes = "$_G_HAVE_XSI_OPS"; then + eval 'func_stripname () + { + $debug_cmd + + # pdksh 5.2.14 does not do ${X%$Y} correctly if both X and Y are + # positional parameters, so assign one to ordinary variable first. + func_stripname_result=$3 + func_stripname_result=${func_stripname_result#"$1"} + func_stripname_result=${func_stripname_result%"$2"} + }' +else + func_stripname () + { + $debug_cmd + + case $2 in + .*) func_stripname_result=`$ECHO "$3" | $SED -e "s%^$1%%" -e "s%\\\\$2\$%%"`;; + *) func_stripname_result=`$ECHO "$3" | $SED -e "s%^$1%%" -e "s%$2\$%%"`;; + esac + } +fi + + +# func_show_eval CMD [FAIL_EXP] +# ----------------------------- +# Unless opt_quiet is true, then output CMD. Then, if opt_dryrun is +# not true, evaluate CMD. If the evaluation of CMD fails, and FAIL_EXP +# is given, then evaluate it. +func_show_eval () +{ + $debug_cmd + + _G_cmd=$1 + _G_fail_exp=${2-':'} + + func_quote_arg pretty,expand "$_G_cmd" + eval "func_notquiet $func_quote_arg_result" + + $opt_dry_run || { + eval "$_G_cmd" + _G_status=$? + if test 0 -ne "$_G_status"; then + eval "(exit $_G_status); $_G_fail_exp" + fi + } +} + + +# func_show_eval_locale CMD [FAIL_EXP] +# ------------------------------------ +# Unless opt_quiet is true, then output CMD. Then, if opt_dryrun is +# not true, evaluate CMD. If the evaluation of CMD fails, and FAIL_EXP +# is given, then evaluate it. Use the saved locale for evaluation. +func_show_eval_locale () +{ + $debug_cmd + + _G_cmd=$1 + _G_fail_exp=${2-':'} + + $opt_quiet || { + func_quote_arg expand,pretty "$_G_cmd" + eval "func_echo $func_quote_arg_result" + } + + $opt_dry_run || { + eval "$_G_user_locale + $_G_cmd" + _G_status=$? + eval "$_G_safe_locale" + if test 0 -ne "$_G_status"; then + eval "(exit $_G_status); $_G_fail_exp" + fi + } +} + + +# func_tr_sh +# ---------- +# Turn $1 into a string suitable for a shell variable name. +# Result is stored in $func_tr_sh_result. All characters +# not in the set a-zA-Z0-9_ are replaced with '_'. Further, +# if $1 begins with a digit, a '_' is prepended as well. +func_tr_sh () +{ + $debug_cmd + + case $1 in + [0-9]* | *[!a-zA-Z0-9_]*) + func_tr_sh_result=`$ECHO "$1" | $SED -e 's/^\([0-9]\)/_\1/' -e 's/[^a-zA-Z0-9_]/_/g'` + ;; + * ) + func_tr_sh_result=$1 + ;; + esac +} + + +# func_verbose ARG... +# ------------------- +# Echo program name prefixed message in verbose mode only. +func_verbose () +{ + $debug_cmd + + $opt_verbose && func_echo "$*" + + : +} + + +# func_warn_and_continue ARG... +# ----------------------------- +# Echo program name prefixed warning message to standard error. +func_warn_and_continue () +{ + $debug_cmd + + $require_term_colors + + func_echo_infix_1 "${tc_red}warning$tc_reset" "$*" >&2 +} + + +# func_warning CATEGORY ARG... +# ---------------------------- +# Echo program name prefixed warning message to standard error. Warning +# messages can be filtered according to CATEGORY, where this function +# elides messages where CATEGORY is not listed in the global variable +# 'opt_warning_types'. +func_warning () +{ + $debug_cmd + + # CATEGORY must be in the warning_categories list! + case " $warning_categories " in + *" $1 "*) ;; + *) func_internal_error "invalid warning category '$1'" ;; + esac + + _G_category=$1 + shift + + case " $opt_warning_types " in + *" $_G_category "*) $warning_func ${1+"$@"} ;; + esac +} + + +# func_sort_ver VER1 VER2 +# ----------------------- +# 'sort -V' is not generally available. +# Note this deviates from the version comparison in automake +# in that it treats 1.5 < 1.5.0, and treats 1.4.4a < 1.4-p3a +# but this should suffice as we won't be specifying old +# version formats or redundant trailing .0 in bootstrap.conf. +# If we did want full compatibility then we should probably +# use m4_version_compare from autoconf. +func_sort_ver () +{ + $debug_cmd + + printf '%s\n%s\n' "$1" "$2" \ + | sort -t. -k 1,1n -k 2,2n -k 3,3n -k 4,4n -k 5,5n -k 6,6n -k 7,7n -k 8,8n -k 9,9n +} + +# func_lt_ver PREV CURR +# --------------------- +# Return true if PREV and CURR are in the correct order according to +# func_sort_ver, otherwise false. Use it like this: +# +# func_lt_ver "$prev_ver" "$proposed_ver" || func_fatal_error "..." +func_lt_ver () +{ + $debug_cmd + + test "x$1" = x`func_sort_ver "$1" "$2" | $SED 1q` +} + + +# Local variables: +# mode: shell-script +# sh-indentation: 2 +# eval: (add-hook 'before-save-hook 'time-stamp) +# time-stamp-pattern: "10/scriptversion=%:y-%02m-%02d.%02H; # UTC" +# time-stamp-time-zone: "UTC" +# End: +#! /bin/sh + +# A portable, pluggable option parser for Bourne shell. +# Written by Gary V. Vaughan, 2010 + +# This is free software. There is NO warranty; not even for +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. +# +# Copyright (C) 2010-2019, 2021 Bootstrap Authors +# +# This file is dual licensed under the terms of the MIT license +# , and GPL version 2 or later +# . You must apply one of +# these licenses when using or redistributing this software or any of +# the files within it. See the URLs above, or the file `LICENSE` +# included in the Bootstrap distribution for the full license texts. + +# Please report bugs or propose patches to: +# + +# Set a version string for this script. +scriptversion=2019-02-19.15; # UTC + + +## ------ ## +## Usage. ## +## ------ ## + +# This file is a library for parsing options in your shell scripts along +# with assorted other useful supporting features that you can make use +# of too. +# +# For the simplest scripts you might need only: +# +# #!/bin/sh +# . relative/path/to/funclib.sh +# . relative/path/to/options-parser +# scriptversion=1.0 +# func_options ${1+"$@"} +# eval set dummy "$func_options_result"; shift +# ...rest of your script... +# +# In order for the '--version' option to work, you will need to have a +# suitably formatted comment like the one at the top of this file +# starting with '# Written by ' and ending with '# Copyright'. +# +# For '-h' and '--help' to work, you will also need a one line +# description of your script's purpose in a comment directly above the +# '# Written by ' line, like the one at the top of this file. +# +# The default options also support '--debug', which will turn on shell +# execution tracing (see the comment above debug_cmd below for another +# use), and '--verbose' and the func_verbose function to allow your script +# to display verbose messages only when your user has specified +# '--verbose'. +# +# After sourcing this file, you can plug in processing for additional +# options by amending the variables from the 'Configuration' section +# below, and following the instructions in the 'Option parsing' +# section further down. + +## -------------- ## +## Configuration. ## +## -------------- ## + +# You should override these variables in your script after sourcing this +# file so that they reflect the customisations you have added to the +# option parser. + +# The usage line for option parsing errors and the start of '-h' and +# '--help' output messages. You can embed shell variables for delayed +# expansion at the time the message is displayed, but you will need to +# quote other shell meta-characters carefully to prevent them being +# expanded when the contents are evaled. +usage='$progpath [OPTION]...' + +# Short help message in response to '-h' and '--help'. Add to this or +# override it after sourcing this library to reflect the full set of +# options your script accepts. +usage_message="\ + --debug enable verbose shell tracing + -W, --warnings=CATEGORY + report the warnings falling in CATEGORY [all] + -v, --verbose verbosely report processing + --version print version information and exit + -h, --help print short or long help message and exit +" + +# Additional text appended to 'usage_message' in response to '--help'. +long_help_message=" +Warning categories include: + 'all' show all warnings + 'none' turn off all the warnings + 'error' warnings are treated as fatal errors" + +# Help message printed before fatal option parsing errors. +fatal_help="Try '\$progname --help' for more information." + + + +## ------------------------- ## +## Hook function management. ## +## ------------------------- ## + +# This section contains functions for adding, removing, and running hooks +# in the main code. A hook is just a list of function names that can be +# run in order later on. + +# func_hookable FUNC_NAME +# ----------------------- +# Declare that FUNC_NAME will run hooks added with +# 'func_add_hook FUNC_NAME ...'. +func_hookable () +{ + $debug_cmd + + func_append hookable_fns " $1" +} + + +# func_add_hook FUNC_NAME HOOK_FUNC +# --------------------------------- +# Request that FUNC_NAME call HOOK_FUNC before it returns. FUNC_NAME must +# first have been declared "hookable" by a call to 'func_hookable'. +func_add_hook () +{ + $debug_cmd + + case " $hookable_fns " in + *" $1 "*) ;; + *) func_fatal_error "'$1' does not accept hook functions." ;; + esac + + eval func_append ${1}_hooks '" $2"' +} + + +# func_remove_hook FUNC_NAME HOOK_FUNC +# ------------------------------------ +# Remove HOOK_FUNC from the list of hook functions to be called by +# FUNC_NAME. +func_remove_hook () +{ + $debug_cmd + + eval ${1}_hooks='`$ECHO "\$'$1'_hooks" |$SED "s| '$2'||"`' +} + + +# func_propagate_result FUNC_NAME_A FUNC_NAME_B +# --------------------------------------------- +# If the *_result variable of FUNC_NAME_A _is set_, assign its value to +# *_result variable of FUNC_NAME_B. +func_propagate_result () +{ + $debug_cmd + + func_propagate_result_result=: + if eval "test \"\${${1}_result+set}\" = set" + then + eval "${2}_result=\$${1}_result" + else + func_propagate_result_result=false + fi +} + + +# func_run_hooks FUNC_NAME [ARG]... +# --------------------------------- +# Run all hook functions registered to FUNC_NAME. +# It's assumed that the list of hook functions contains nothing more +# than a whitespace-delimited list of legal shell function names, and +# no effort is wasted trying to catch shell meta-characters or preserve +# whitespace. +func_run_hooks () +{ + $debug_cmd + + case " $hookable_fns " in + *" $1 "*) ;; + *) func_fatal_error "'$1' does not support hook functions." ;; + esac + + eval _G_hook_fns=\$$1_hooks; shift + + for _G_hook in $_G_hook_fns; do + func_unset "${_G_hook}_result" + eval $_G_hook '${1+"$@"}' + func_propagate_result $_G_hook func_run_hooks + if $func_propagate_result_result; then + eval set dummy "$func_run_hooks_result"; shift + fi + done +} + + + +## --------------- ## +## Option parsing. ## +## --------------- ## + +# In order to add your own option parsing hooks, you must accept the +# full positional parameter list from your hook function. You may remove +# or edit any options that you action, and then pass back the remaining +# unprocessed options in '_result', escaped +# suitably for 'eval'. +# +# The '_result' variable is automatically unset +# before your hook gets called; for best performance, only set the +# *_result variable when necessary (i.e. don't call the 'func_quote' +# function unnecessarily because it can be an expensive operation on some +# machines). +# +# Like this: +# +# my_options_prep () +# { +# $debug_cmd +# +# # Extend the existing usage message. +# usage_message=$usage_message' +# -s, --silent don'\''t print informational messages +# ' +# # No change in '$@' (ignored completely by this hook). Leave +# # my_options_prep_result variable intact. +# } +# func_add_hook func_options_prep my_options_prep +# +# +# my_silent_option () +# { +# $debug_cmd +# +# args_changed=false +# +# # Note that, for efficiency, we parse as many options as we can +# # recognise in a loop before passing the remainder back to the +# # caller on the first unrecognised argument we encounter. +# while test $# -gt 0; do +# opt=$1; shift +# case $opt in +# --silent|-s) opt_silent=: +# args_changed=: +# ;; +# # Separate non-argument short options: +# -s*) func_split_short_opt "$_G_opt" +# set dummy "$func_split_short_opt_name" \ +# "-$func_split_short_opt_arg" ${1+"$@"} +# shift +# args_changed=: +# ;; +# *) # Make sure the first unrecognised option "$_G_opt" +# # is added back to "$@" in case we need it later, +# # if $args_changed was set to 'true'. +# set dummy "$_G_opt" ${1+"$@"}; shift; break ;; +# esac +# done +# +# # Only call 'func_quote' here if we processed at least one argument. +# if $args_changed; then +# func_quote eval ${1+"$@"} +# my_silent_option_result=$func_quote_result +# fi +# } +# func_add_hook func_parse_options my_silent_option +# +# +# my_option_validation () +# { +# $debug_cmd +# +# $opt_silent && $opt_verbose && func_fatal_help "\ +# '--silent' and '--verbose' options are mutually exclusive." +# } +# func_add_hook func_validate_options my_option_validation +# +# You'll also need to manually amend $usage_message to reflect the extra +# options you parse. It's preferable to append if you can, so that +# multiple option parsing hooks can be added safely. + + +# func_options_finish [ARG]... +# ---------------------------- +# Finishing the option parse loop (call 'func_options' hooks ATM). +func_options_finish () +{ + $debug_cmd + + func_run_hooks func_options ${1+"$@"} + func_propagate_result func_run_hooks func_options_finish +} + + +# func_options [ARG]... +# --------------------- +# All the functions called inside func_options are hookable. See the +# individual implementations for details. +func_hookable func_options +func_options () +{ + $debug_cmd + + _G_options_quoted=false + + for my_func in options_prep parse_options validate_options options_finish + do + func_unset func_${my_func}_result + func_unset func_run_hooks_result + eval func_$my_func '${1+"$@"}' + func_propagate_result func_$my_func func_options + if $func_propagate_result_result; then + eval set dummy "$func_options_result"; shift + _G_options_quoted=: + fi + done + + $_G_options_quoted || { + # As we (func_options) are top-level options-parser function and + # nobody quoted "$@" for us yet, we need to do it explicitly for + # caller. + func_quote eval ${1+"$@"} + func_options_result=$func_quote_result + } +} + + +# func_options_prep [ARG]... +# -------------------------- +# All initialisations required before starting the option parse loop. +# Note that when calling hook functions, we pass through the list of +# positional parameters. If a hook function modifies that list, and +# needs to propagate that back to rest of this script, then the complete +# modified list must be put in 'func_run_hooks_result' before returning. +func_hookable func_options_prep +func_options_prep () +{ + $debug_cmd + + # Option defaults: + opt_verbose=false + opt_warning_types= + + func_run_hooks func_options_prep ${1+"$@"} + func_propagate_result func_run_hooks func_options_prep +} + + +# func_parse_options [ARG]... +# --------------------------- +# The main option parsing loop. +func_hookable func_parse_options +func_parse_options () +{ + $debug_cmd + + _G_parse_options_requote=false + # this just eases exit handling + while test $# -gt 0; do + # Defer to hook functions for initial option parsing, so they + # get priority in the event of reusing an option name. + func_run_hooks func_parse_options ${1+"$@"} + func_propagate_result func_run_hooks func_parse_options + if $func_propagate_result_result; then + eval set dummy "$func_parse_options_result"; shift + # Even though we may have changed "$@", we passed the "$@" array + # down into the hook and it quoted it for us (because we are in + # this if-branch). No need to quote it again. + _G_parse_options_requote=false + fi + + # Break out of the loop if we already parsed every option. + test $# -gt 0 || break + + # We expect that one of the options parsed in this function matches + # and thus we remove _G_opt from "$@" and need to re-quote. + _G_match_parse_options=: + _G_opt=$1 + shift + case $_G_opt in + --debug|-x) debug_cmd='set -x' + func_echo "enabling shell trace mode" >&2 + $debug_cmd + ;; + + --no-warnings|--no-warning|--no-warn) + set dummy --warnings none ${1+"$@"} + shift + ;; + + --warnings|--warning|-W) + if test $# = 0 && func_missing_arg $_G_opt; then + _G_parse_options_requote=: + break + fi + case " $warning_categories $1" in + *" $1 "*) + # trailing space prevents matching last $1 above + func_append_uniq opt_warning_types " $1" + ;; + *all) + opt_warning_types=$warning_categories + ;; + *none) + opt_warning_types=none + warning_func=: + ;; + *error) + opt_warning_types=$warning_categories + warning_func=func_fatal_error + ;; + *) + func_fatal_error \ + "unsupported warning category: '$1'" + ;; + esac + shift + ;; + + --verbose|-v) opt_verbose=: ;; + --version) func_version ;; + -\?|-h) func_usage ;; + --help) func_help ;; + + # Separate optargs to long options (plugins may need this): + --*=*) func_split_equals "$_G_opt" + set dummy "$func_split_equals_lhs" \ + "$func_split_equals_rhs" ${1+"$@"} + shift + ;; + + # Separate optargs to short options: + -W*) + func_split_short_opt "$_G_opt" + set dummy "$func_split_short_opt_name" \ + "$func_split_short_opt_arg" ${1+"$@"} + shift + ;; + + # Separate non-argument short options: + -\?*|-h*|-v*|-x*) + func_split_short_opt "$_G_opt" + set dummy "$func_split_short_opt_name" \ + "-$func_split_short_opt_arg" ${1+"$@"} + shift + ;; + + --) _G_parse_options_requote=: ; break ;; + -*) func_fatal_help "unrecognised option: '$_G_opt'" ;; + *) set dummy "$_G_opt" ${1+"$@"}; shift + _G_match_parse_options=false + break + ;; + esac + + if $_G_match_parse_options; then + _G_parse_options_requote=: + fi + done + + if $_G_parse_options_requote; then + # save modified positional parameters for caller + func_quote eval ${1+"$@"} + func_parse_options_result=$func_quote_result + fi +} + + +# func_validate_options [ARG]... +# ------------------------------ +# Perform any sanity checks on option settings and/or unconsumed +# arguments. +func_hookable func_validate_options +func_validate_options () +{ + $debug_cmd + + # Display all warnings if -W was not given. + test -n "$opt_warning_types" || opt_warning_types=" $warning_categories" + + func_run_hooks func_validate_options ${1+"$@"} + func_propagate_result func_run_hooks func_validate_options + + # Bail if the options were screwed! + $exit_cmd $EXIT_FAILURE +} + + + +## ----------------- ## +## Helper functions. ## +## ----------------- ## + +# This section contains the helper functions used by the rest of the +# hookable option parser framework in ascii-betical order. + + +# func_fatal_help ARG... +# ---------------------- +# Echo program name prefixed message to standard error, followed by +# a help hint, and exit. +func_fatal_help () +{ + $debug_cmd + + eval \$ECHO \""Usage: $usage"\" + eval \$ECHO \""$fatal_help"\" + func_error ${1+"$@"} + exit $EXIT_FAILURE +} + + +# func_help +# --------- +# Echo long help message to standard output and exit. +func_help () +{ + $debug_cmd + + func_usage_message + $ECHO "$long_help_message" + exit 0 +} + + +# func_missing_arg ARGNAME +# ------------------------ +# Echo program name prefixed message to standard error and set global +# exit_cmd. +func_missing_arg () +{ + $debug_cmd + + func_error "Missing argument for '$1'." + exit_cmd=exit +} + + +# func_split_equals STRING +# ------------------------ +# Set func_split_equals_lhs and func_split_equals_rhs shell variables +# after splitting STRING at the '=' sign. +test -z "$_G_HAVE_XSI_OPS" \ + && (eval 'x=a/b/c; + test 5aa/bb/cc = "${#x}${x%%/*}${x%/*}${x#*/}${x##*/}"') 2>/dev/null \ + && _G_HAVE_XSI_OPS=yes + +if test yes = "$_G_HAVE_XSI_OPS" +then + # This is an XSI compatible shell, allowing a faster implementation... + eval 'func_split_equals () + { + $debug_cmd + + func_split_equals_lhs=${1%%=*} + func_split_equals_rhs=${1#*=} + if test "x$func_split_equals_lhs" = "x$1"; then + func_split_equals_rhs= + fi + }' +else + # ...otherwise fall back to using expr, which is often a shell builtin. + func_split_equals () + { + $debug_cmd + + func_split_equals_lhs=`expr "x$1" : 'x\([^=]*\)'` + func_split_equals_rhs= + test "x$func_split_equals_lhs=" = "x$1" \ + || func_split_equals_rhs=`expr "x$1" : 'x[^=]*=\(.*\)$'` + } +fi #func_split_equals + + +# func_split_short_opt SHORTOPT +# ----------------------------- +# Set func_split_short_opt_name and func_split_short_opt_arg shell +# variables after splitting SHORTOPT after the 2nd character. +if test yes = "$_G_HAVE_XSI_OPS" +then + # This is an XSI compatible shell, allowing a faster implementation... + eval 'func_split_short_opt () + { + $debug_cmd + + func_split_short_opt_arg=${1#??} + func_split_short_opt_name=${1%"$func_split_short_opt_arg"} + }' +else + # ...otherwise fall back to using expr, which is often a shell builtin. + func_split_short_opt () + { + $debug_cmd + + func_split_short_opt_name=`expr "x$1" : 'x\(-.\)'` + func_split_short_opt_arg=`expr "x$1" : 'x-.\(.*\)$'` + } +fi #func_split_short_opt + + +# func_usage +# ---------- +# Echo short help message to standard output and exit. +func_usage () +{ + $debug_cmd + + func_usage_message + $ECHO "Run '$progname --help |${PAGER-more}' for full usage" + exit 0 +} + + +# func_usage_message +# ------------------ +# Echo short help message to standard output. +func_usage_message () +{ + $debug_cmd + + eval \$ECHO \""Usage: $usage"\" + echo + $SED -n 's|^# || + /^Written by/{ + x;p;x + } + h + /^Written by/q' < "$progpath" + echo + eval \$ECHO \""$usage_message"\" +} + + +# func_version +# ------------ +# Echo version message to standard output and exit. +# The version message is extracted from the calling file's header +# comments, with leading '# ' stripped: +# 1. First display the progname and version +# 2. Followed by the header comment line matching /^# Written by / +# 3. Then a blank line followed by the first following line matching +# /^# Copyright / +# 4. Immediately followed by any lines between the previous matches, +# except lines preceding the intervening completely blank line. +# For example, see the header comments of this file. +func_version () +{ + $debug_cmd + + printf '%s\n' "$progname $scriptversion" + $SED -n ' + /^# Written by /!b + s|^# ||; p; n + + :fwd2blnk + /./ { + n + b fwd2blnk + } + p; n + + :holdwrnt + s|^# || + s|^# *$|| + /^Copyright /!{ + /./H + n + b holdwrnt + } + + s|\((C)\)[ 0-9,-]*[ ,-]\([1-9][0-9]* \)|\1 \2| + G + s|\(\n\)\n*|\1|g + p; q' < "$progpath" + + exit $? +} + + +# Local variables: +# mode: shell-script +# sh-indentation: 2 +# eval: (add-hook 'before-save-hook 'time-stamp) +# time-stamp-pattern: "30/scriptversion=%:y-%02m-%02d.%02H; # UTC" +# time-stamp-time-zone: "UTC" +# End: + +# Set a version string. +scriptversion='(GNU libtool) 2.4.7' + + +# func_echo ARG... +# ---------------- +# Libtool also displays the current mode in messages, so override +# funclib.sh func_echo with this custom definition. +func_echo () +{ + $debug_cmd + + _G_message=$* + + func_echo_IFS=$IFS + IFS=$nl + for _G_line in $_G_message; do + IFS=$func_echo_IFS + $ECHO "$progname${opt_mode+: $opt_mode}: $_G_line" + done + IFS=$func_echo_IFS +} + + +# func_warning ARG... +# ------------------- +# Libtool warnings are not categorized, so override funclib.sh +# func_warning with this simpler definition. +func_warning () +{ + $debug_cmd + + $warning_func ${1+"$@"} +} + + +## ---------------- ## +## Options parsing. ## +## ---------------- ## + +# Hook in the functions to make sure our own options are parsed during +# the option parsing loop. + +usage='$progpath [OPTION]... [MODE-ARG]...' + +# Short help message in response to '-h'. +usage_message="Options: + --config show all configuration variables + --debug enable verbose shell tracing + -n, --dry-run display commands without modifying any files + --features display basic configuration information and exit + --mode=MODE use operation mode MODE + --no-warnings equivalent to '-Wnone' + --preserve-dup-deps don't remove duplicate dependency libraries + --quiet, --silent don't print informational messages + --tag=TAG use configuration variables from tag TAG + -v, --verbose print more informational messages than default + --version print version information + -W, --warnings=CATEGORY report the warnings falling in CATEGORY [all] + -h, --help, --help-all print short, long, or detailed help message +" + +# Additional text appended to 'usage_message' in response to '--help'. +func_help () +{ + $debug_cmd + + func_usage_message + $ECHO "$long_help_message + +MODE must be one of the following: + + clean remove files from the build directory + compile compile a source file into a libtool object + execute automatically set library path, then run a program + finish complete the installation of libtool libraries + install install libraries or executables + link create a library or an executable + uninstall remove libraries from an installed directory + +MODE-ARGS vary depending on the MODE. When passed as first option, +'--mode=MODE' may be abbreviated as 'MODE' or a unique abbreviation of that. +Try '$progname --help --mode=MODE' for a more detailed description of MODE. + +When reporting a bug, please describe a test case to reproduce it and +include the following information: + + host-triplet: $host + shell: $SHELL + compiler: $LTCC + compiler flags: $LTCFLAGS + linker: $LD (gnu? $with_gnu_ld) + version: $progname (GNU libtool) 2.4.7 + automake: `($AUTOMAKE --version) 2>/dev/null |$SED 1q` + autoconf: `($AUTOCONF --version) 2>/dev/null |$SED 1q` + +Report bugs to . +GNU libtool home page: . +General help using GNU software: ." + exit 0 +} + + +# func_lo2o OBJECT-NAME +# --------------------- +# Transform OBJECT-NAME from a '.lo' suffix to the platform specific +# object suffix. + +lo2o=s/\\.lo\$/.$objext/ +o2lo=s/\\.$objext\$/.lo/ + +if test yes = "$_G_HAVE_XSI_OPS"; then + eval 'func_lo2o () + { + case $1 in + *.lo) func_lo2o_result=${1%.lo}.$objext ;; + * ) func_lo2o_result=$1 ;; + esac + }' + + # func_xform LIBOBJ-OR-SOURCE + # --------------------------- + # Transform LIBOBJ-OR-SOURCE from a '.o' or '.c' (or otherwise) + # suffix to a '.lo' libtool-object suffix. + eval 'func_xform () + { + func_xform_result=${1%.*}.lo + }' +else + # ...otherwise fall back to using sed. + func_lo2o () + { + func_lo2o_result=`$ECHO "$1" | $SED "$lo2o"` + } + + func_xform () + { + func_xform_result=`$ECHO "$1" | $SED 's|\.[^.]*$|.lo|'` + } +fi + + +# func_fatal_configuration ARG... +# ------------------------------- +# Echo program name prefixed message to standard error, followed by +# a configuration failure hint, and exit. +func_fatal_configuration () +{ + func_fatal_error ${1+"$@"} \ + "See the $PACKAGE documentation for more information." \ + "Fatal configuration error." +} + + +# func_config +# ----------- +# Display the configuration for all the tags in this script. +func_config () +{ + re_begincf='^# ### BEGIN LIBTOOL' + re_endcf='^# ### END LIBTOOL' + + # Default configuration. + $SED "1,/$re_begincf CONFIG/d;/$re_endcf CONFIG/,\$d" < "$progpath" + + # Now print the configurations for the tags. + for tagname in $taglist; do + $SED -n "/$re_begincf TAG CONFIG: $tagname\$/,/$re_endcf TAG CONFIG: $tagname\$/p" < "$progpath" + done + + exit $? +} + + +# func_features +# ------------- +# Display the features supported by this script. +func_features () +{ + echo "host: $host" + if test yes = "$build_libtool_libs"; then + echo "enable shared libraries" + else + echo "disable shared libraries" + fi + if test yes = "$build_old_libs"; then + echo "enable static libraries" + else + echo "disable static libraries" + fi + + exit $? +} + + +# func_enable_tag TAGNAME +# ----------------------- +# Verify that TAGNAME is valid, and either flag an error and exit, or +# enable the TAGNAME tag. We also add TAGNAME to the global $taglist +# variable here. +func_enable_tag () +{ + # Global variable: + tagname=$1 + + re_begincf="^# ### BEGIN LIBTOOL TAG CONFIG: $tagname\$" + re_endcf="^# ### END LIBTOOL TAG CONFIG: $tagname\$" + sed_extractcf=/$re_begincf/,/$re_endcf/p + + # Validate tagname. + case $tagname in + *[!-_A-Za-z0-9,/]*) + func_fatal_error "invalid tag name: $tagname" + ;; + esac + + # Don't test for the "default" C tag, as we know it's + # there but not specially marked. + case $tagname in + CC) ;; + *) + if $GREP "$re_begincf" "$progpath" >/dev/null 2>&1; then + taglist="$taglist $tagname" + + # Evaluate the configuration. Be careful to quote the path + # and the sed script, to avoid splitting on whitespace, but + # also don't use non-portable quotes within backquotes within + # quotes we have to do it in 2 steps: + extractedcf=`$SED -n -e "$sed_extractcf" < "$progpath"` + eval "$extractedcf" + else + func_error "ignoring unknown tag $tagname" + fi + ;; + esac +} + + +# func_check_version_match +# ------------------------ +# Ensure that we are using m4 macros, and libtool script from the same +# release of libtool. +func_check_version_match () +{ + if test "$package_revision" != "$macro_revision"; then + if test "$VERSION" != "$macro_version"; then + if test -z "$macro_version"; then + cat >&2 <<_LT_EOF +$progname: Version mismatch error. This is $PACKAGE $VERSION, but the +$progname: definition of this LT_INIT comes from an older release. +$progname: You should recreate aclocal.m4 with macros from $PACKAGE $VERSION +$progname: and run autoconf again. +_LT_EOF + else + cat >&2 <<_LT_EOF +$progname: Version mismatch error. This is $PACKAGE $VERSION, but the +$progname: definition of this LT_INIT comes from $PACKAGE $macro_version. +$progname: You should recreate aclocal.m4 with macros from $PACKAGE $VERSION +$progname: and run autoconf again. +_LT_EOF + fi + else + cat >&2 <<_LT_EOF +$progname: Version mismatch error. This is $PACKAGE $VERSION, revision $package_revision, +$progname: but the definition of this LT_INIT comes from revision $macro_revision. +$progname: You should recreate aclocal.m4 with macros from revision $package_revision +$progname: of $PACKAGE $VERSION and run autoconf again. +_LT_EOF + fi + + exit $EXIT_MISMATCH + fi +} + + +# libtool_options_prep [ARG]... +# ----------------------------- +# Preparation for options parsed by libtool. +libtool_options_prep () +{ + $debug_mode + + # Option defaults: + opt_config=false + opt_dlopen= + opt_dry_run=false + opt_help=false + opt_mode= + opt_preserve_dup_deps=false + opt_quiet=false + + nonopt= + preserve_args= + + _G_rc_lt_options_prep=: + + # Shorthand for --mode=foo, only valid as the first argument + case $1 in + clean|clea|cle|cl) + shift; set dummy --mode clean ${1+"$@"}; shift + ;; + compile|compil|compi|comp|com|co|c) + shift; set dummy --mode compile ${1+"$@"}; shift + ;; + execute|execut|execu|exec|exe|ex|e) + shift; set dummy --mode execute ${1+"$@"}; shift + ;; + finish|finis|fini|fin|fi|f) + shift; set dummy --mode finish ${1+"$@"}; shift + ;; + install|instal|insta|inst|ins|in|i) + shift; set dummy --mode install ${1+"$@"}; shift + ;; + link|lin|li|l) + shift; set dummy --mode link ${1+"$@"}; shift + ;; + uninstall|uninstal|uninsta|uninst|unins|unin|uni|un|u) + shift; set dummy --mode uninstall ${1+"$@"}; shift + ;; + *) + _G_rc_lt_options_prep=false + ;; + esac + + if $_G_rc_lt_options_prep; then + # Pass back the list of options. + func_quote eval ${1+"$@"} + libtool_options_prep_result=$func_quote_result + fi +} +func_add_hook func_options_prep libtool_options_prep + + +# libtool_parse_options [ARG]... +# --------------------------------- +# Provide handling for libtool specific options. +libtool_parse_options () +{ + $debug_cmd + + _G_rc_lt_parse_options=false + + # Perform our own loop to consume as many options as possible in + # each iteration. + while test $# -gt 0; do + _G_match_lt_parse_options=: + _G_opt=$1 + shift + case $_G_opt in + --dry-run|--dryrun|-n) + opt_dry_run=: + ;; + + --config) func_config ;; + + --dlopen|-dlopen) + opt_dlopen="${opt_dlopen+$opt_dlopen +}$1" + shift + ;; + + --preserve-dup-deps) + opt_preserve_dup_deps=: ;; + + --features) func_features ;; + + --finish) set dummy --mode finish ${1+"$@"}; shift ;; + + --help) opt_help=: ;; + + --help-all) opt_help=': help-all' ;; + + --mode) test $# = 0 && func_missing_arg $_G_opt && break + opt_mode=$1 + case $1 in + # Valid mode arguments: + clean|compile|execute|finish|install|link|relink|uninstall) ;; + + # Catch anything else as an error + *) func_error "invalid argument for $_G_opt" + exit_cmd=exit + break + ;; + esac + shift + ;; + + --no-silent|--no-quiet) + opt_quiet=false + func_append preserve_args " $_G_opt" + ;; + + --no-warnings|--no-warning|--no-warn) + opt_warning=false + func_append preserve_args " $_G_opt" + ;; + + --no-verbose) + opt_verbose=false + func_append preserve_args " $_G_opt" + ;; + + --silent|--quiet) + opt_quiet=: + opt_verbose=false + func_append preserve_args " $_G_opt" + ;; + + --tag) test $# = 0 && func_missing_arg $_G_opt && break + opt_tag=$1 + func_append preserve_args " $_G_opt $1" + func_enable_tag "$1" + shift + ;; + + --verbose|-v) opt_quiet=false + opt_verbose=: + func_append preserve_args " $_G_opt" + ;; + + # An option not handled by this hook function: + *) set dummy "$_G_opt" ${1+"$@"} ; shift + _G_match_lt_parse_options=false + break + ;; + esac + $_G_match_lt_parse_options && _G_rc_lt_parse_options=: + done + + if $_G_rc_lt_parse_options; then + # save modified positional parameters for caller + func_quote eval ${1+"$@"} + libtool_parse_options_result=$func_quote_result + fi +} +func_add_hook func_parse_options libtool_parse_options + + + +# libtool_validate_options [ARG]... +# --------------------------------- +# Perform any sanity checks on option settings and/or unconsumed +# arguments. +libtool_validate_options () +{ + # save first non-option argument + if test 0 -lt $#; then + nonopt=$1 + shift + fi + + # preserve --debug + test : = "$debug_cmd" || func_append preserve_args " --debug" + + case $host in + # Solaris2 added to fix http://debbugs.gnu.org/cgi/bugreport.cgi?bug=16452 + # see also: http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59788 + *cygwin* | *mingw* | *pw32* | *cegcc* | *solaris2* | *os2*) + # don't eliminate duplications in $postdeps and $predeps + opt_duplicate_compiler_generated_deps=: + ;; + *) + opt_duplicate_compiler_generated_deps=$opt_preserve_dup_deps + ;; + esac + + $opt_help || { + # Sanity checks first: + func_check_version_match + + test yes != "$build_libtool_libs" \ + && test yes != "$build_old_libs" \ + && func_fatal_configuration "not configured to build any kind of library" + + # Darwin sucks + eval std_shrext=\"$shrext_cmds\" + + # Only execute mode is allowed to have -dlopen flags. + if test -n "$opt_dlopen" && test execute != "$opt_mode"; then + func_error "unrecognized option '-dlopen'" + $ECHO "$help" 1>&2 + exit $EXIT_FAILURE + fi + + # Change the help message to a mode-specific one. + generic_help=$help + help="Try '$progname --help --mode=$opt_mode' for more information." + } + + # Pass back the unparsed argument list + func_quote eval ${1+"$@"} + libtool_validate_options_result=$func_quote_result +} +func_add_hook func_validate_options libtool_validate_options + + +# Process options as early as possible so that --help and --version +# can return quickly. +func_options ${1+"$@"} +eval set dummy "$func_options_result"; shift + + + +## ----------- ## +## Main. ## +## ----------- ## + +magic='%%%MAGIC variable%%%' +magic_exe='%%%MAGIC EXE variable%%%' + +# Global variables. +extracted_archives= +extracted_serial=0 + +# If this variable is set in any of the actions, the command in it +# will be execed at the end. This prevents here-documents from being +# left over by shells. +exec_cmd= + + +# A function that is used when there is no print builtin or printf. +func_fallback_echo () +{ + eval 'cat <<_LTECHO_EOF +$1 +_LTECHO_EOF' +} + +# func_generated_by_libtool +# True iff stdin has been generated by Libtool. This function is only +# a basic sanity check; it will hardly flush out determined imposters. +func_generated_by_libtool_p () +{ + $GREP "^# Generated by .*$PACKAGE" > /dev/null 2>&1 +} + +# func_lalib_p file +# True iff FILE is a libtool '.la' library or '.lo' object file. +# This function is only a basic sanity check; it will hardly flush out +# determined imposters. +func_lalib_p () +{ + test -f "$1" && + $SED -e 4q "$1" 2>/dev/null | func_generated_by_libtool_p +} + +# func_lalib_unsafe_p file +# True iff FILE is a libtool '.la' library or '.lo' object file. +# This function implements the same check as func_lalib_p without +# resorting to external programs. To this end, it redirects stdin and +# closes it afterwards, without saving the original file descriptor. +# As a safety measure, use it only where a negative result would be +# fatal anyway. Works if 'file' does not exist. +func_lalib_unsafe_p () +{ + lalib_p=no + if test -f "$1" && test -r "$1" && exec 5<&0 <"$1"; then + for lalib_p_l in 1 2 3 4 + do + read lalib_p_line + case $lalib_p_line in + \#\ Generated\ by\ *$PACKAGE* ) lalib_p=yes; break;; + esac + done + exec 0<&5 5<&- + fi + test yes = "$lalib_p" +} + +# func_ltwrapper_script_p file +# True iff FILE is a libtool wrapper script +# This function is only a basic sanity check; it will hardly flush out +# determined imposters. +func_ltwrapper_script_p () +{ + test -f "$1" && + $lt_truncate_bin < "$1" 2>/dev/null | func_generated_by_libtool_p +} + +# func_ltwrapper_executable_p file +# True iff FILE is a libtool wrapper executable +# This function is only a basic sanity check; it will hardly flush out +# determined imposters. +func_ltwrapper_executable_p () +{ + func_ltwrapper_exec_suffix= + case $1 in + *.exe) ;; + *) func_ltwrapper_exec_suffix=.exe ;; + esac + $GREP "$magic_exe" "$1$func_ltwrapper_exec_suffix" >/dev/null 2>&1 +} + +# func_ltwrapper_scriptname file +# Assumes file is an ltwrapper_executable +# uses $file to determine the appropriate filename for a +# temporary ltwrapper_script. +func_ltwrapper_scriptname () +{ + func_dirname_and_basename "$1" "" "." + func_stripname '' '.exe' "$func_basename_result" + func_ltwrapper_scriptname_result=$func_dirname_result/$objdir/${func_stripname_result}_ltshwrapper +} + +# func_ltwrapper_p file +# True iff FILE is a libtool wrapper script or wrapper executable +# This function is only a basic sanity check; it will hardly flush out +# determined imposters. +func_ltwrapper_p () +{ + func_ltwrapper_script_p "$1" || func_ltwrapper_executable_p "$1" +} + + +# func_execute_cmds commands fail_cmd +# Execute tilde-delimited COMMANDS. +# If FAIL_CMD is given, eval that upon failure. +# FAIL_CMD may read-access the current command in variable CMD! +func_execute_cmds () +{ + $debug_cmd + + save_ifs=$IFS; IFS='~' + for cmd in $1; do + IFS=$sp$nl + eval cmd=\"$cmd\" + IFS=$save_ifs + func_show_eval "$cmd" "${2-:}" + done + IFS=$save_ifs +} + + +# func_source file +# Source FILE, adding directory component if necessary. +# Note that it is not necessary on cygwin/mingw to append a dot to +# FILE even if both FILE and FILE.exe exist: automatic-append-.exe +# behavior happens only for exec(3), not for open(2)! Also, sourcing +# 'FILE.' does not work on cygwin managed mounts. +func_source () +{ + $debug_cmd + + case $1 in + */* | *\\*) . "$1" ;; + *) . "./$1" ;; + esac +} + + +# func_resolve_sysroot PATH +# Replace a leading = in PATH with a sysroot. Store the result into +# func_resolve_sysroot_result +func_resolve_sysroot () +{ + func_resolve_sysroot_result=$1 + case $func_resolve_sysroot_result in + =*) + func_stripname '=' '' "$func_resolve_sysroot_result" + func_resolve_sysroot_result=$lt_sysroot$func_stripname_result + ;; + esac +} + +# func_replace_sysroot PATH +# If PATH begins with the sysroot, replace it with = and +# store the result into func_replace_sysroot_result. +func_replace_sysroot () +{ + case $lt_sysroot:$1 in + ?*:"$lt_sysroot"*) + func_stripname "$lt_sysroot" '' "$1" + func_replace_sysroot_result='='$func_stripname_result + ;; + *) + # Including no sysroot. + func_replace_sysroot_result=$1 + ;; + esac +} + +# func_infer_tag arg +# Infer tagged configuration to use if any are available and +# if one wasn't chosen via the "--tag" command line option. +# Only attempt this if the compiler in the base compile +# command doesn't match the default compiler. +# arg is usually of the form 'gcc ...' +func_infer_tag () +{ + $debug_cmd + + if test -n "$available_tags" && test -z "$tagname"; then + CC_quoted= + for arg in $CC; do + func_append_quoted CC_quoted "$arg" + done + CC_expanded=`func_echo_all $CC` + CC_quoted_expanded=`func_echo_all $CC_quoted` + case $@ in + # Blanks in the command may have been stripped by the calling shell, + # but not from the CC environment variable when configure was run. + " $CC "* | "$CC "* | " $CC_expanded "* | "$CC_expanded "* | \ + " $CC_quoted"* | "$CC_quoted "* | " $CC_quoted_expanded "* | "$CC_quoted_expanded "*) ;; + # Blanks at the start of $base_compile will cause this to fail + # if we don't check for them as well. + *) + for z in $available_tags; do + if $GREP "^# ### BEGIN LIBTOOL TAG CONFIG: $z$" < "$progpath" > /dev/null; then + # Evaluate the configuration. + eval "`$SED -n -e '/^# ### BEGIN LIBTOOL TAG CONFIG: '$z'$/,/^# ### END LIBTOOL TAG CONFIG: '$z'$/p' < $progpath`" + CC_quoted= + for arg in $CC; do + # Double-quote args containing other shell metacharacters. + func_append_quoted CC_quoted "$arg" + done + CC_expanded=`func_echo_all $CC` + CC_quoted_expanded=`func_echo_all $CC_quoted` + case "$@ " in + " $CC "* | "$CC "* | " $CC_expanded "* | "$CC_expanded "* | \ + " $CC_quoted"* | "$CC_quoted "* | " $CC_quoted_expanded "* | "$CC_quoted_expanded "*) + # The compiler in the base compile command matches + # the one in the tagged configuration. + # Assume this is the tagged configuration we want. + tagname=$z + break + ;; + esac + fi + done + # If $tagname still isn't set, then no tagged configuration + # was found and let the user know that the "--tag" command + # line option must be used. + if test -z "$tagname"; then + func_echo "unable to infer tagged configuration" + func_fatal_error "specify a tag with '--tag'" +# else +# func_verbose "using $tagname tagged configuration" + fi + ;; + esac + fi +} + + + +# func_write_libtool_object output_name pic_name nonpic_name +# Create a libtool object file (analogous to a ".la" file), +# but don't create it if we're doing a dry run. +func_write_libtool_object () +{ + write_libobj=$1 + if test yes = "$build_libtool_libs"; then + write_lobj=\'$2\' + else + write_lobj=none + fi + + if test yes = "$build_old_libs"; then + write_oldobj=\'$3\' + else + write_oldobj=none + fi + + $opt_dry_run || { + cat >${write_libobj}T </dev/null` + if test "$?" -eq 0 && test -n "$func_convert_core_file_wine_to_w32_tmp"; then + func_convert_core_file_wine_to_w32_result=`$ECHO "$func_convert_core_file_wine_to_w32_tmp" | + $SED -e "$sed_naive_backslashify"` + else + func_convert_core_file_wine_to_w32_result= + fi + fi +} +# end: func_convert_core_file_wine_to_w32 + + +# func_convert_core_path_wine_to_w32 ARG +# Helper function used by path conversion functions when $build is *nix, and +# $host is mingw, cygwin, or some other w32 environment. Relies on a correctly +# configured wine environment available, with the winepath program in $build's +# $PATH. Assumes ARG has no leading or trailing path separator characters. +# +# ARG is path to be converted from $build format to win32. +# Result is available in $func_convert_core_path_wine_to_w32_result. +# Unconvertible file (directory) names in ARG are skipped; if no directory names +# are convertible, then the result may be empty. +func_convert_core_path_wine_to_w32 () +{ + $debug_cmd + + # unfortunately, winepath doesn't convert paths, only file names + func_convert_core_path_wine_to_w32_result= + if test -n "$1"; then + oldIFS=$IFS + IFS=: + for func_convert_core_path_wine_to_w32_f in $1; do + IFS=$oldIFS + func_convert_core_file_wine_to_w32 "$func_convert_core_path_wine_to_w32_f" + if test -n "$func_convert_core_file_wine_to_w32_result"; then + if test -z "$func_convert_core_path_wine_to_w32_result"; then + func_convert_core_path_wine_to_w32_result=$func_convert_core_file_wine_to_w32_result + else + func_append func_convert_core_path_wine_to_w32_result ";$func_convert_core_file_wine_to_w32_result" + fi + fi + done + IFS=$oldIFS + fi +} +# end: func_convert_core_path_wine_to_w32 + + +# func_cygpath ARGS... +# Wrapper around calling the cygpath program via LT_CYGPATH. This is used when +# when (1) $build is *nix and Cygwin is hosted via a wine environment; or (2) +# $build is MSYS and $host is Cygwin, or (3) $build is Cygwin. In case (1) or +# (2), returns the Cygwin file name or path in func_cygpath_result (input +# file name or path is assumed to be in w32 format, as previously converted +# from $build's *nix or MSYS format). In case (3), returns the w32 file name +# or path in func_cygpath_result (input file name or path is assumed to be in +# Cygwin format). Returns an empty string on error. +# +# ARGS are passed to cygpath, with the last one being the file name or path to +# be converted. +# +# Specify the absolute *nix (or w32) name to cygpath in the LT_CYGPATH +# environment variable; do not put it in $PATH. +func_cygpath () +{ + $debug_cmd + + if test -n "$LT_CYGPATH" && test -f "$LT_CYGPATH"; then + func_cygpath_result=`$LT_CYGPATH "$@" 2>/dev/null` + if test "$?" -ne 0; then + # on failure, ensure result is empty + func_cygpath_result= + fi + else + func_cygpath_result= + func_error "LT_CYGPATH is empty or specifies non-existent file: '$LT_CYGPATH'" + fi +} +#end: func_cygpath + + +# func_convert_core_msys_to_w32 ARG +# Convert file name or path ARG from MSYS format to w32 format. Return +# result in func_convert_core_msys_to_w32_result. +func_convert_core_msys_to_w32 () +{ + $debug_cmd + + # awkward: cmd appends spaces to result + func_convert_core_msys_to_w32_result=`( cmd //c echo "$1" ) 2>/dev/null | + $SED -e 's/[ ]*$//' -e "$sed_naive_backslashify"` +} +#end: func_convert_core_msys_to_w32 + + +# func_convert_file_check ARG1 ARG2 +# Verify that ARG1 (a file name in $build format) was converted to $host +# format in ARG2. Otherwise, emit an error message, but continue (resetting +# func_to_host_file_result to ARG1). +func_convert_file_check () +{ + $debug_cmd + + if test -z "$2" && test -n "$1"; then + func_error "Could not determine host file name corresponding to" + func_error " '$1'" + func_error "Continuing, but uninstalled executables may not work." + # Fallback: + func_to_host_file_result=$1 + fi +} +# end func_convert_file_check + + +# func_convert_path_check FROM_PATHSEP TO_PATHSEP FROM_PATH TO_PATH +# Verify that FROM_PATH (a path in $build format) was converted to $host +# format in TO_PATH. Otherwise, emit an error message, but continue, resetting +# func_to_host_file_result to a simplistic fallback value (see below). +func_convert_path_check () +{ + $debug_cmd + + if test -z "$4" && test -n "$3"; then + func_error "Could not determine the host path corresponding to" + func_error " '$3'" + func_error "Continuing, but uninstalled executables may not work." + # Fallback. This is a deliberately simplistic "conversion" and + # should not be "improved". See libtool.info. + if test "x$1" != "x$2"; then + lt_replace_pathsep_chars="s|$1|$2|g" + func_to_host_path_result=`echo "$3" | + $SED -e "$lt_replace_pathsep_chars"` + else + func_to_host_path_result=$3 + fi + fi +} +# end func_convert_path_check + + +# func_convert_path_front_back_pathsep FRONTPAT BACKPAT REPL ORIG +# Modifies func_to_host_path_result by prepending REPL if ORIG matches FRONTPAT +# and appending REPL if ORIG matches BACKPAT. +func_convert_path_front_back_pathsep () +{ + $debug_cmd + + case $4 in + $1 ) func_to_host_path_result=$3$func_to_host_path_result + ;; + esac + case $4 in + $2 ) func_append func_to_host_path_result "$3" + ;; + esac +} +# end func_convert_path_front_back_pathsep + + +################################################## +# $build to $host FILE NAME CONVERSION FUNCTIONS # +################################################## +# invoked via '$to_host_file_cmd ARG' +# +# In each case, ARG is the path to be converted from $build to $host format. +# Result will be available in $func_to_host_file_result. + + +# func_to_host_file ARG +# Converts the file name ARG from $build format to $host format. Return result +# in func_to_host_file_result. +func_to_host_file () +{ + $debug_cmd + + $to_host_file_cmd "$1" +} +# end func_to_host_file + + +# func_to_tool_file ARG LAZY +# converts the file name ARG from $build format to toolchain format. Return +# result in func_to_tool_file_result. If the conversion in use is listed +# in (the comma separated) LAZY, no conversion takes place. +func_to_tool_file () +{ + $debug_cmd + + case ,$2, in + *,"$to_tool_file_cmd",*) + func_to_tool_file_result=$1 + ;; + *) + $to_tool_file_cmd "$1" + func_to_tool_file_result=$func_to_host_file_result + ;; + esac +} +# end func_to_tool_file + + +# func_convert_file_noop ARG +# Copy ARG to func_to_host_file_result. +func_convert_file_noop () +{ + func_to_host_file_result=$1 +} +# end func_convert_file_noop + + +# func_convert_file_msys_to_w32 ARG +# Convert file name ARG from (mingw) MSYS to (mingw) w32 format; automatic +# conversion to w32 is not available inside the cwrapper. Returns result in +# func_to_host_file_result. +func_convert_file_msys_to_w32 () +{ + $debug_cmd + + func_to_host_file_result=$1 + if test -n "$1"; then + func_convert_core_msys_to_w32 "$1" + func_to_host_file_result=$func_convert_core_msys_to_w32_result + fi + func_convert_file_check "$1" "$func_to_host_file_result" +} +# end func_convert_file_msys_to_w32 + + +# func_convert_file_cygwin_to_w32 ARG +# Convert file name ARG from Cygwin to w32 format. Returns result in +# func_to_host_file_result. +func_convert_file_cygwin_to_w32 () +{ + $debug_cmd + + func_to_host_file_result=$1 + if test -n "$1"; then + # because $build is cygwin, we call "the" cygpath in $PATH; no need to use + # LT_CYGPATH in this case. + func_to_host_file_result=`cygpath -m "$1"` + fi + func_convert_file_check "$1" "$func_to_host_file_result" +} +# end func_convert_file_cygwin_to_w32 + + +# func_convert_file_nix_to_w32 ARG +# Convert file name ARG from *nix to w32 format. Requires a wine environment +# and a working winepath. Returns result in func_to_host_file_result. +func_convert_file_nix_to_w32 () +{ + $debug_cmd + + func_to_host_file_result=$1 + if test -n "$1"; then + func_convert_core_file_wine_to_w32 "$1" + func_to_host_file_result=$func_convert_core_file_wine_to_w32_result + fi + func_convert_file_check "$1" "$func_to_host_file_result" +} +# end func_convert_file_nix_to_w32 + + +# func_convert_file_msys_to_cygwin ARG +# Convert file name ARG from MSYS to Cygwin format. Requires LT_CYGPATH set. +# Returns result in func_to_host_file_result. +func_convert_file_msys_to_cygwin () +{ + $debug_cmd + + func_to_host_file_result=$1 + if test -n "$1"; then + func_convert_core_msys_to_w32 "$1" + func_cygpath -u "$func_convert_core_msys_to_w32_result" + func_to_host_file_result=$func_cygpath_result + fi + func_convert_file_check "$1" "$func_to_host_file_result" +} +# end func_convert_file_msys_to_cygwin + + +# func_convert_file_nix_to_cygwin ARG +# Convert file name ARG from *nix to Cygwin format. Requires Cygwin installed +# in a wine environment, working winepath, and LT_CYGPATH set. Returns result +# in func_to_host_file_result. +func_convert_file_nix_to_cygwin () +{ + $debug_cmd + + func_to_host_file_result=$1 + if test -n "$1"; then + # convert from *nix to w32, then use cygpath to convert from w32 to cygwin. + func_convert_core_file_wine_to_w32 "$1" + func_cygpath -u "$func_convert_core_file_wine_to_w32_result" + func_to_host_file_result=$func_cygpath_result + fi + func_convert_file_check "$1" "$func_to_host_file_result" +} +# end func_convert_file_nix_to_cygwin + + +############################################# +# $build to $host PATH CONVERSION FUNCTIONS # +############################################# +# invoked via '$to_host_path_cmd ARG' +# +# In each case, ARG is the path to be converted from $build to $host format. +# The result will be available in $func_to_host_path_result. +# +# Path separators are also converted from $build format to $host format. If +# ARG begins or ends with a path separator character, it is preserved (but +# converted to $host format) on output. +# +# All path conversion functions are named using the following convention: +# file name conversion function : func_convert_file_X_to_Y () +# path conversion function : func_convert_path_X_to_Y () +# where, for any given $build/$host combination the 'X_to_Y' value is the +# same. If conversion functions are added for new $build/$host combinations, +# the two new functions must follow this pattern, or func_init_to_host_path_cmd +# will break. + + +# func_init_to_host_path_cmd +# Ensures that function "pointer" variable $to_host_path_cmd is set to the +# appropriate value, based on the value of $to_host_file_cmd. +to_host_path_cmd= +func_init_to_host_path_cmd () +{ + $debug_cmd + + if test -z "$to_host_path_cmd"; then + func_stripname 'func_convert_file_' '' "$to_host_file_cmd" + to_host_path_cmd=func_convert_path_$func_stripname_result + fi +} + + +# func_to_host_path ARG +# Converts the path ARG from $build format to $host format. Return result +# in func_to_host_path_result. +func_to_host_path () +{ + $debug_cmd + + func_init_to_host_path_cmd + $to_host_path_cmd "$1" +} +# end func_to_host_path + + +# func_convert_path_noop ARG +# Copy ARG to func_to_host_path_result. +func_convert_path_noop () +{ + func_to_host_path_result=$1 +} +# end func_convert_path_noop + + +# func_convert_path_msys_to_w32 ARG +# Convert path ARG from (mingw) MSYS to (mingw) w32 format; automatic +# conversion to w32 is not available inside the cwrapper. Returns result in +# func_to_host_path_result. +func_convert_path_msys_to_w32 () +{ + $debug_cmd + + func_to_host_path_result=$1 + if test -n "$1"; then + # Remove leading and trailing path separator characters from ARG. MSYS + # behavior is inconsistent here; cygpath turns them into '.;' and ';.'; + # and winepath ignores them completely. + func_stripname : : "$1" + func_to_host_path_tmp1=$func_stripname_result + func_convert_core_msys_to_w32 "$func_to_host_path_tmp1" + func_to_host_path_result=$func_convert_core_msys_to_w32_result + func_convert_path_check : ";" \ + "$func_to_host_path_tmp1" "$func_to_host_path_result" + func_convert_path_front_back_pathsep ":*" "*:" ";" "$1" + fi +} +# end func_convert_path_msys_to_w32 + + +# func_convert_path_cygwin_to_w32 ARG +# Convert path ARG from Cygwin to w32 format. Returns result in +# func_to_host_file_result. +func_convert_path_cygwin_to_w32 () +{ + $debug_cmd + + func_to_host_path_result=$1 + if test -n "$1"; then + # See func_convert_path_msys_to_w32: + func_stripname : : "$1" + func_to_host_path_tmp1=$func_stripname_result + func_to_host_path_result=`cygpath -m -p "$func_to_host_path_tmp1"` + func_convert_path_check : ";" \ + "$func_to_host_path_tmp1" "$func_to_host_path_result" + func_convert_path_front_back_pathsep ":*" "*:" ";" "$1" + fi +} +# end func_convert_path_cygwin_to_w32 + + +# func_convert_path_nix_to_w32 ARG +# Convert path ARG from *nix to w32 format. Requires a wine environment and +# a working winepath. Returns result in func_to_host_file_result. +func_convert_path_nix_to_w32 () +{ + $debug_cmd + + func_to_host_path_result=$1 + if test -n "$1"; then + # See func_convert_path_msys_to_w32: + func_stripname : : "$1" + func_to_host_path_tmp1=$func_stripname_result + func_convert_core_path_wine_to_w32 "$func_to_host_path_tmp1" + func_to_host_path_result=$func_convert_core_path_wine_to_w32_result + func_convert_path_check : ";" \ + "$func_to_host_path_tmp1" "$func_to_host_path_result" + func_convert_path_front_back_pathsep ":*" "*:" ";" "$1" + fi +} +# end func_convert_path_nix_to_w32 + + +# func_convert_path_msys_to_cygwin ARG +# Convert path ARG from MSYS to Cygwin format. Requires LT_CYGPATH set. +# Returns result in func_to_host_file_result. +func_convert_path_msys_to_cygwin () +{ + $debug_cmd + + func_to_host_path_result=$1 + if test -n "$1"; then + # See func_convert_path_msys_to_w32: + func_stripname : : "$1" + func_to_host_path_tmp1=$func_stripname_result + func_convert_core_msys_to_w32 "$func_to_host_path_tmp1" + func_cygpath -u -p "$func_convert_core_msys_to_w32_result" + func_to_host_path_result=$func_cygpath_result + func_convert_path_check : : \ + "$func_to_host_path_tmp1" "$func_to_host_path_result" + func_convert_path_front_back_pathsep ":*" "*:" : "$1" + fi +} +# end func_convert_path_msys_to_cygwin + + +# func_convert_path_nix_to_cygwin ARG +# Convert path ARG from *nix to Cygwin format. Requires Cygwin installed in a +# a wine environment, working winepath, and LT_CYGPATH set. Returns result in +# func_to_host_file_result. +func_convert_path_nix_to_cygwin () +{ + $debug_cmd + + func_to_host_path_result=$1 + if test -n "$1"; then + # Remove leading and trailing path separator characters from + # ARG. msys behavior is inconsistent here, cygpath turns them + # into '.;' and ';.', and winepath ignores them completely. + func_stripname : : "$1" + func_to_host_path_tmp1=$func_stripname_result + func_convert_core_path_wine_to_w32 "$func_to_host_path_tmp1" + func_cygpath -u -p "$func_convert_core_path_wine_to_w32_result" + func_to_host_path_result=$func_cygpath_result + func_convert_path_check : : \ + "$func_to_host_path_tmp1" "$func_to_host_path_result" + func_convert_path_front_back_pathsep ":*" "*:" : "$1" + fi +} +# end func_convert_path_nix_to_cygwin + + +# func_dll_def_p FILE +# True iff FILE is a Windows DLL '.def' file. +# Keep in sync with _LT_DLL_DEF_P in libtool.m4 +func_dll_def_p () +{ + $debug_cmd + + func_dll_def_p_tmp=`$SED -n \ + -e 's/^[ ]*//' \ + -e '/^\(;.*\)*$/d' \ + -e 's/^\(EXPORTS\|LIBRARY\)\([ ].*\)*$/DEF/p' \ + -e q \ + "$1"` + test DEF = "$func_dll_def_p_tmp" +} + + +# func_mode_compile arg... +func_mode_compile () +{ + $debug_cmd + + # Get the compilation command and the source file. + base_compile= + srcfile=$nonopt # always keep a non-empty value in "srcfile" + suppress_opt=yes + suppress_output= + arg_mode=normal + libobj= + later= + pie_flag= + + for arg + do + case $arg_mode in + arg ) + # do not "continue". Instead, add this to base_compile + lastarg=$arg + arg_mode=normal + ;; + + target ) + libobj=$arg + arg_mode=normal + continue + ;; + + normal ) + # Accept any command-line options. + case $arg in + -o) + test -n "$libobj" && \ + func_fatal_error "you cannot specify '-o' more than once" + arg_mode=target + continue + ;; + + -pie | -fpie | -fPIE) + func_append pie_flag " $arg" + continue + ;; + + -shared | -static | -prefer-pic | -prefer-non-pic) + func_append later " $arg" + continue + ;; + + -no-suppress) + suppress_opt=no + continue + ;; + + -Xcompiler) + arg_mode=arg # the next one goes into the "base_compile" arg list + continue # The current "srcfile" will either be retained or + ;; # replaced later. I would guess that would be a bug. + + -Wc,*) + func_stripname '-Wc,' '' "$arg" + args=$func_stripname_result + lastarg= + save_ifs=$IFS; IFS=, + for arg in $args; do + IFS=$save_ifs + func_append_quoted lastarg "$arg" + done + IFS=$save_ifs + func_stripname ' ' '' "$lastarg" + lastarg=$func_stripname_result + + # Add the arguments to base_compile. + func_append base_compile " $lastarg" + continue + ;; + + *) + # Accept the current argument as the source file. + # The previous "srcfile" becomes the current argument. + # + lastarg=$srcfile + srcfile=$arg + ;; + esac # case $arg + ;; + esac # case $arg_mode + + # Aesthetically quote the previous argument. + func_append_quoted base_compile "$lastarg" + done # for arg + + case $arg_mode in + arg) + func_fatal_error "you must specify an argument for -Xcompile" + ;; + target) + func_fatal_error "you must specify a target with '-o'" + ;; + *) + # Get the name of the library object. + test -z "$libobj" && { + func_basename "$srcfile" + libobj=$func_basename_result + } + ;; + esac + + # Recognize several different file suffixes. + # If the user specifies -o file.o, it is replaced with file.lo + case $libobj in + *.[cCFSifmso] | \ + *.ada | *.adb | *.ads | *.asm | \ + *.c++ | *.cc | *.ii | *.class | *.cpp | *.cxx | \ + *.[fF][09]? | *.for | *.java | *.go | *.obj | *.sx | *.cu | *.cup) + func_xform "$libobj" + libobj=$func_xform_result + ;; + esac + + case $libobj in + *.lo) func_lo2o "$libobj"; obj=$func_lo2o_result ;; + *) + func_fatal_error "cannot determine name of library object from '$libobj'" + ;; + esac + + func_infer_tag $base_compile + + for arg in $later; do + case $arg in + -shared) + test yes = "$build_libtool_libs" \ + || func_fatal_configuration "cannot build a shared library" + build_old_libs=no + continue + ;; + + -static) + build_libtool_libs=no + build_old_libs=yes + continue + ;; + + -prefer-pic) + pic_mode=yes + continue + ;; + + -prefer-non-pic) + pic_mode=no + continue + ;; + esac + done + + func_quote_arg pretty "$libobj" + test "X$libobj" != "X$func_quote_arg_result" \ + && $ECHO "X$libobj" | $GREP '[]~#^*{};<>?"'"'"' &()|`$[]' \ + && func_warning "libobj name '$libobj' may not contain shell special characters." + func_dirname_and_basename "$obj" "/" "" + objname=$func_basename_result + xdir=$func_dirname_result + lobj=$xdir$objdir/$objname + + test -z "$base_compile" && \ + func_fatal_help "you must specify a compilation command" + + # Delete any leftover library objects. + if test yes = "$build_old_libs"; then + removelist="$obj $lobj $libobj ${libobj}T" + else + removelist="$lobj $libobj ${libobj}T" + fi + + # On Cygwin there's no "real" PIC flag so we must build both object types + case $host_os in + cygwin* | mingw* | pw32* | os2* | cegcc*) + pic_mode=default + ;; + esac + if test no = "$pic_mode" && test pass_all != "$deplibs_check_method"; then + # non-PIC code in shared libraries is not supported + pic_mode=default + fi + + # Calculate the filename of the output object if compiler does + # not support -o with -c + if test no = "$compiler_c_o"; then + output_obj=`$ECHO "$srcfile" | $SED 's%^.*/%%; s%\.[^.]*$%%'`.$objext + lockfile=$output_obj.lock + else + output_obj= + need_locks=no + lockfile= + fi + + # Lock this critical section if it is needed + # We use this script file to make the link, it avoids creating a new file + if test yes = "$need_locks"; then + until $opt_dry_run || ln "$progpath" "$lockfile" 2>/dev/null; do + func_echo "Waiting for $lockfile to be removed" + sleep 2 + done + elif test warn = "$need_locks"; then + if test -f "$lockfile"; then + $ECHO "\ +*** ERROR, $lockfile exists and contains: +`cat $lockfile 2>/dev/null` + +This indicates that another process is trying to use the same +temporary object file, and libtool could not work around it because +your compiler does not support '-c' and '-o' together. If you +repeat this compilation, it may succeed, by chance, but you had better +avoid parallel builds (make -j) in this platform, or get a better +compiler." + + $opt_dry_run || $RM $removelist + exit $EXIT_FAILURE + fi + func_append removelist " $output_obj" + $ECHO "$srcfile" > "$lockfile" + fi + + $opt_dry_run || $RM $removelist + func_append removelist " $lockfile" + trap '$opt_dry_run || $RM $removelist; exit $EXIT_FAILURE' 1 2 15 + + func_to_tool_file "$srcfile" func_convert_file_msys_to_w32 + srcfile=$func_to_tool_file_result + func_quote_arg pretty "$srcfile" + qsrcfile=$func_quote_arg_result + + # Only build a PIC object if we are building libtool libraries. + if test yes = "$build_libtool_libs"; then + # Without this assignment, base_compile gets emptied. + fbsd_hideous_sh_bug=$base_compile + + if test no != "$pic_mode"; then + command="$base_compile $qsrcfile $pic_flag" + else + # Don't build PIC code + command="$base_compile $qsrcfile" + fi + + func_mkdir_p "$xdir$objdir" + + if test -z "$output_obj"; then + # Place PIC objects in $objdir + func_append command " -o $lobj" + fi + + func_show_eval_locale "$command" \ + 'test -n "$output_obj" && $RM $removelist; exit $EXIT_FAILURE' + + if test warn = "$need_locks" && + test "X`cat $lockfile 2>/dev/null`" != "X$srcfile"; then + $ECHO "\ +*** ERROR, $lockfile contains: +`cat $lockfile 2>/dev/null` + +but it should contain: +$srcfile + +This indicates that another process is trying to use the same +temporary object file, and libtool could not work around it because +your compiler does not support '-c' and '-o' together. If you +repeat this compilation, it may succeed, by chance, but you had better +avoid parallel builds (make -j) in this platform, or get a better +compiler." + + $opt_dry_run || $RM $removelist + exit $EXIT_FAILURE + fi + + # Just move the object if needed, then go on to compile the next one + if test -n "$output_obj" && test "X$output_obj" != "X$lobj"; then + func_show_eval '$MV "$output_obj" "$lobj"' \ + 'error=$?; $opt_dry_run || $RM $removelist; exit $error' + fi + + # Allow error messages only from the first compilation. + if test yes = "$suppress_opt"; then + suppress_output=' >/dev/null 2>&1' + fi + fi + + # Only build a position-dependent object if we build old libraries. + if test yes = "$build_old_libs"; then + if test yes != "$pic_mode"; then + # Don't build PIC code + command="$base_compile $qsrcfile$pie_flag" + else + command="$base_compile $qsrcfile $pic_flag" + fi + if test yes = "$compiler_c_o"; then + func_append command " -o $obj" + fi + + # Suppress compiler output if we already did a PIC compilation. + func_append command "$suppress_output" + func_show_eval_locale "$command" \ + '$opt_dry_run || $RM $removelist; exit $EXIT_FAILURE' + + if test warn = "$need_locks" && + test "X`cat $lockfile 2>/dev/null`" != "X$srcfile"; then + $ECHO "\ +*** ERROR, $lockfile contains: +`cat $lockfile 2>/dev/null` + +but it should contain: +$srcfile + +This indicates that another process is trying to use the same +temporary object file, and libtool could not work around it because +your compiler does not support '-c' and '-o' together. If you +repeat this compilation, it may succeed, by chance, but you had better +avoid parallel builds (make -j) in this platform, or get a better +compiler." + + $opt_dry_run || $RM $removelist + exit $EXIT_FAILURE + fi + + # Just move the object if needed + if test -n "$output_obj" && test "X$output_obj" != "X$obj"; then + func_show_eval '$MV "$output_obj" "$obj"' \ + 'error=$?; $opt_dry_run || $RM $removelist; exit $error' + fi + fi + + $opt_dry_run || { + func_write_libtool_object "$libobj" "$objdir/$objname" "$objname" + + # Unlock the critical section if it was locked + if test no != "$need_locks"; then + removelist=$lockfile + $RM "$lockfile" + fi + } + + exit $EXIT_SUCCESS +} + +$opt_help || { + test compile = "$opt_mode" && func_mode_compile ${1+"$@"} +} + +func_mode_help () +{ + # We need to display help for each of the modes. + case $opt_mode in + "") + # Generic help is extracted from the usage comments + # at the start of this file. + func_help + ;; + + clean) + $ECHO \ +"Usage: $progname [OPTION]... --mode=clean RM [RM-OPTION]... FILE... + +Remove files from the build directory. + +RM is the name of the program to use to delete files associated with each FILE +(typically '/bin/rm'). RM-OPTIONS are options (such as '-f') to be passed +to RM. + +If FILE is a libtool library, object or program, all the files associated +with it are deleted. Otherwise, only FILE itself is deleted using RM." + ;; + + compile) + $ECHO \ +"Usage: $progname [OPTION]... --mode=compile COMPILE-COMMAND... SOURCEFILE + +Compile a source file into a libtool library object. + +This mode accepts the following additional options: + + -o OUTPUT-FILE set the output file name to OUTPUT-FILE + -no-suppress do not suppress compiler output for multiple passes + -prefer-pic try to build PIC objects only + -prefer-non-pic try to build non-PIC objects only + -shared do not build a '.o' file suitable for static linking + -static only build a '.o' file suitable for static linking + -Wc,FLAG + -Xcompiler FLAG pass FLAG directly to the compiler + +COMPILE-COMMAND is a command to be used in creating a 'standard' object file +from the given SOURCEFILE. + +The output file name is determined by removing the directory component from +SOURCEFILE, then substituting the C source code suffix '.c' with the +library object suffix, '.lo'." + ;; + + execute) + $ECHO \ +"Usage: $progname [OPTION]... --mode=execute COMMAND [ARGS]... + +Automatically set library path, then run a program. + +This mode accepts the following additional options: + + -dlopen FILE add the directory containing FILE to the library path + +This mode sets the library path environment variable according to '-dlopen' +flags. + +If any of the ARGS are libtool executable wrappers, then they are translated +into their corresponding uninstalled binary, and any of their required library +directories are added to the library path. + +Then, COMMAND is executed, with ARGS as arguments." + ;; + + finish) + $ECHO \ +"Usage: $progname [OPTION]... --mode=finish [LIBDIR]... + +Complete the installation of libtool libraries. + +Each LIBDIR is a directory that contains libtool libraries. + +The commands that this mode executes may require superuser privileges. Use +the '--dry-run' option if you just want to see what would be executed." + ;; + + install) + $ECHO \ +"Usage: $progname [OPTION]... --mode=install INSTALL-COMMAND... + +Install executables or libraries. + +INSTALL-COMMAND is the installation command. The first component should be +either the 'install' or 'cp' program. + +The following components of INSTALL-COMMAND are treated specially: + + -inst-prefix-dir PREFIX-DIR Use PREFIX-DIR as a staging area for installation + +The rest of the components are interpreted as arguments to that command (only +BSD-compatible install options are recognized)." + ;; + + link) + $ECHO \ +"Usage: $progname [OPTION]... --mode=link LINK-COMMAND... + +Link object files or libraries together to form another library, or to +create an executable program. + +LINK-COMMAND is a command using the C compiler that you would use to create +a program from several object files. + +The following components of LINK-COMMAND are treated specially: + + -all-static do not do any dynamic linking at all + -static do not do any dynamic linking at all + -avoid-version do not add a version suffix if possible + -bindir BINDIR specify path to binaries directory (for systems where + libraries must be found in the PATH setting at runtime) + -dlopen FILE '-dlpreopen' FILE if it cannot be dlopened at runtime + -dlpreopen FILE link in FILE and add its symbols to lt_preloaded_symbols + -export-dynamic allow symbols from OUTPUT-FILE to be resolved with dlsym(3) + -export-symbols SYMFILE + try to export only the symbols listed in SYMFILE + -export-symbols-regex REGEX + try to export only the symbols matching REGEX + -LLIBDIR search LIBDIR for required installed libraries + -lNAME OUTPUT-FILE requires the installed library libNAME + -module build a library that can dlopened + -no-fast-install disable the fast-install mode + -no-install link a not-installable executable + -no-undefined declare that a library does not refer to external symbols + -o OUTPUT-FILE create OUTPUT-FILE from the specified objects + -objectlist FILE use a list of object files found in FILE to specify objects + -os2dllname NAME force a short DLL name on OS/2 (no effect on other OSes) + -precious-files-regex REGEX + don't remove output files matching REGEX + -release RELEASE specify package release information + -rpath LIBDIR the created library will eventually be installed in LIBDIR + -R[ ]LIBDIR add LIBDIR to the runtime path of programs and libraries + -shared only do dynamic linking of libtool libraries + -shrext SUFFIX override the standard shared library file extension + -static-uninstalled-libs + do not do any dynamic linking of uninstalled libtool libraries + -static-libtool-libs + do not do any dynamic linking of libtool libraries + -version-info CURRENT[:REVISION[:AGE]] + specify library version info [each variable defaults to 0] + -weak LIBNAME declare that the target provides the LIBNAME interface + -Wc,FLAG + -Xcompiler FLAG pass linker-specific FLAG directly to the compiler + -Wa,FLAG + -Xassembler FLAG pass linker-specific FLAG directly to the assembler + -Wl,FLAG + -Xlinker FLAG pass linker-specific FLAG directly to the linker + -XCClinker FLAG pass link-specific FLAG to the compiler driver (CC) + +All other options (arguments beginning with '-') are ignored. + +Every other argument is treated as a filename. Files ending in '.la' are +treated as uninstalled libtool libraries, other files are standard or library +object files. + +If the OUTPUT-FILE ends in '.la', then a libtool library is created, +only library objects ('.lo' files) may be specified, and '-rpath' is +required, except when creating a convenience library. + +If OUTPUT-FILE ends in '.a' or '.lib', then a standard library is created +using 'ar' and 'ranlib', or on Windows using 'lib'. + +If OUTPUT-FILE ends in '.lo' or '.$objext', then a reloadable object file +is created, otherwise an executable program is created." + ;; + + uninstall) + $ECHO \ +"Usage: $progname [OPTION]... --mode=uninstall RM [RM-OPTION]... FILE... + +Remove libraries from an installation directory. + +RM is the name of the program to use to delete files associated with each FILE +(typically '/bin/rm'). RM-OPTIONS are options (such as '-f') to be passed +to RM. + +If FILE is a libtool library, all the files associated with it are deleted. +Otherwise, only FILE itself is deleted using RM." + ;; + + *) + func_fatal_help "invalid operation mode '$opt_mode'" + ;; + esac + + echo + $ECHO "Try '$progname --help' for more information about other modes." +} + +# Now that we've collected a possible --mode arg, show help if necessary +if $opt_help; then + if test : = "$opt_help"; then + func_mode_help + else + { + func_help noexit + for opt_mode in compile link execute install finish uninstall clean; do + func_mode_help + done + } | $SED -n '1p; 2,$s/^Usage:/ or: /p' + { + func_help noexit + for opt_mode in compile link execute install finish uninstall clean; do + echo + func_mode_help + done + } | + $SED '1d + /^When reporting/,/^Report/{ + H + d + } + $x + /information about other modes/d + /more detailed .*MODE/d + s/^Usage:.*--mode=\([^ ]*\) .*/Description of \1 mode:/' + fi + exit $? +fi + + +# func_mode_execute arg... +func_mode_execute () +{ + $debug_cmd + + # The first argument is the command name. + cmd=$nonopt + test -z "$cmd" && \ + func_fatal_help "you must specify a COMMAND" + + # Handle -dlopen flags immediately. + for file in $opt_dlopen; do + test -f "$file" \ + || func_fatal_help "'$file' is not a file" + + dir= + case $file in + *.la) + func_resolve_sysroot "$file" + file=$func_resolve_sysroot_result + + # Check to see that this really is a libtool archive. + func_lalib_unsafe_p "$file" \ + || func_fatal_help "'$lib' is not a valid libtool archive" + + # Read the libtool library. + dlname= + library_names= + func_source "$file" + + # Skip this library if it cannot be dlopened. + if test -z "$dlname"; then + # Warn if it was a shared library. + test -n "$library_names" && \ + func_warning "'$file' was not linked with '-export-dynamic'" + continue + fi + + func_dirname "$file" "" "." + dir=$func_dirname_result + + if test -f "$dir/$objdir/$dlname"; then + func_append dir "/$objdir" + else + if test ! -f "$dir/$dlname"; then + func_fatal_error "cannot find '$dlname' in '$dir' or '$dir/$objdir'" + fi + fi + ;; + + *.lo) + # Just add the directory containing the .lo file. + func_dirname "$file" "" "." + dir=$func_dirname_result + ;; + + *) + func_warning "'-dlopen' is ignored for non-libtool libraries and objects" + continue + ;; + esac + + # Get the absolute pathname. + absdir=`cd "$dir" && pwd` + test -n "$absdir" && dir=$absdir + + # Now add the directory to shlibpath_var. + if eval "test -z \"\$$shlibpath_var\""; then + eval "$shlibpath_var=\"\$dir\"" + else + eval "$shlibpath_var=\"\$dir:\$$shlibpath_var\"" + fi + done + + # This variable tells wrapper scripts just to set shlibpath_var + # rather than running their programs. + libtool_execute_magic=$magic + + # Check if any of the arguments is a wrapper script. + args= + for file + do + case $file in + -* | *.la | *.lo ) ;; + *) + # Do a test to see if this is really a libtool program. + if func_ltwrapper_script_p "$file"; then + func_source "$file" + # Transform arg to wrapped name. + file=$progdir/$program + elif func_ltwrapper_executable_p "$file"; then + func_ltwrapper_scriptname "$file" + func_source "$func_ltwrapper_scriptname_result" + # Transform arg to wrapped name. + file=$progdir/$program + fi + ;; + esac + # Quote arguments (to preserve shell metacharacters). + func_append_quoted args "$file" + done + + if $opt_dry_run; then + # Display what would be done. + if test -n "$shlibpath_var"; then + eval "\$ECHO \"\$shlibpath_var=\$$shlibpath_var\"" + echo "export $shlibpath_var" + fi + $ECHO "$cmd$args" + exit $EXIT_SUCCESS + else + if test -n "$shlibpath_var"; then + # Export the shlibpath_var. + eval "export $shlibpath_var" + fi + + # Restore saved environment variables + for lt_var in LANG LANGUAGE LC_ALL LC_CTYPE LC_COLLATE LC_MESSAGES + do + eval "if test \"\${save_$lt_var+set}\" = set; then + $lt_var=\$save_$lt_var; export $lt_var + else + $lt_unset $lt_var + fi" + done + + # Now prepare to actually exec the command. + exec_cmd=\$cmd$args + fi +} + +test execute = "$opt_mode" && func_mode_execute ${1+"$@"} + + +# func_mode_finish arg... +func_mode_finish () +{ + $debug_cmd + + libs= + libdirs= + admincmds= + + for opt in "$nonopt" ${1+"$@"} + do + if test -d "$opt"; then + func_append libdirs " $opt" + + elif test -f "$opt"; then + if func_lalib_unsafe_p "$opt"; then + func_append libs " $opt" + else + func_warning "'$opt' is not a valid libtool archive" + fi + + else + func_fatal_error "invalid argument '$opt'" + fi + done + + if test -n "$libs"; then + if test -n "$lt_sysroot"; then + sysroot_regex=`$ECHO "$lt_sysroot" | $SED "$sed_make_literal_regex"` + sysroot_cmd="s/\([ ']\)$sysroot_regex/\1/g;" + else + sysroot_cmd= + fi + + # Remove sysroot references + if $opt_dry_run; then + for lib in $libs; do + echo "removing references to $lt_sysroot and '=' prefixes from $lib" + done + else + tmpdir=`func_mktempdir` + for lib in $libs; do + $SED -e "$sysroot_cmd s/\([ ']-[LR]\)=/\1/g; s/\([ ']\)=/\1/g" $lib \ + > $tmpdir/tmp-la + mv -f $tmpdir/tmp-la $lib + done + ${RM}r "$tmpdir" + fi + fi + + if test -n "$finish_cmds$finish_eval" && test -n "$libdirs"; then + for libdir in $libdirs; do + if test -n "$finish_cmds"; then + # Do each command in the finish commands. + func_execute_cmds "$finish_cmds" 'admincmds="$admincmds +'"$cmd"'"' + fi + if test -n "$finish_eval"; then + # Do the single finish_eval. + eval cmds=\"$finish_eval\" + $opt_dry_run || eval "$cmds" || func_append admincmds " + $cmds" + fi + done + fi + + # Exit here if they wanted silent mode. + $opt_quiet && exit $EXIT_SUCCESS + + if test -n "$finish_cmds$finish_eval" && test -n "$libdirs"; then + echo "----------------------------------------------------------------------" + echo "Libraries have been installed in:" + for libdir in $libdirs; do + $ECHO " $libdir" + done + echo + echo "If you ever happen to want to link against installed libraries" + echo "in a given directory, LIBDIR, you must either use libtool, and" + echo "specify the full pathname of the library, or use the '-LLIBDIR'" + echo "flag during linking and do at least one of the following:" + if test -n "$shlibpath_var"; then + echo " - add LIBDIR to the '$shlibpath_var' environment variable" + echo " during execution" + fi + if test -n "$runpath_var"; then + echo " - add LIBDIR to the '$runpath_var' environment variable" + echo " during linking" + fi + if test -n "$hardcode_libdir_flag_spec"; then + libdir=LIBDIR + eval flag=\"$hardcode_libdir_flag_spec\" + + $ECHO " - use the '$flag' linker flag" + fi + if test -n "$admincmds"; then + $ECHO " - have your system administrator run these commands:$admincmds" + fi + if test -f /etc/ld.so.conf; then + echo " - have your system administrator add LIBDIR to '/etc/ld.so.conf'" + fi + echo + + echo "See any operating system documentation about shared libraries for" + case $host in + solaris2.[6789]|solaris2.1[0-9]) + echo "more information, such as the ld(1), crle(1) and ld.so(8) manual" + echo "pages." + ;; + *) + echo "more information, such as the ld(1) and ld.so(8) manual pages." + ;; + esac + echo "----------------------------------------------------------------------" + fi + exit $EXIT_SUCCESS +} + +test finish = "$opt_mode" && func_mode_finish ${1+"$@"} + + +# func_mode_install arg... +func_mode_install () +{ + $debug_cmd + + # There may be an optional sh(1) argument at the beginning of + # install_prog (especially on Windows NT). + if test "$SHELL" = "$nonopt" || test /bin/sh = "$nonopt" || + # Allow the use of GNU shtool's install command. + case $nonopt in *shtool*) :;; *) false;; esac + then + # Aesthetically quote it. + func_quote_arg pretty "$nonopt" + install_prog="$func_quote_arg_result " + arg=$1 + shift + else + install_prog= + arg=$nonopt + fi + + # The real first argument should be the name of the installation program. + # Aesthetically quote it. + func_quote_arg pretty "$arg" + func_append install_prog "$func_quote_arg_result" + install_shared_prog=$install_prog + case " $install_prog " in + *[\\\ /]cp\ *) install_cp=: ;; + *) install_cp=false ;; + esac + + # We need to accept at least all the BSD install flags. + dest= + files= + opts= + prev= + install_type= + isdir=false + stripme= + no_mode=: + for arg + do + arg2= + if test -n "$dest"; then + func_append files " $dest" + dest=$arg + continue + fi + + case $arg in + -d) isdir=: ;; + -f) + if $install_cp; then :; else + prev=$arg + fi + ;; + -g | -m | -o) + prev=$arg + ;; + -s) + stripme=" -s" + continue + ;; + -*) + ;; + *) + # If the previous option needed an argument, then skip it. + if test -n "$prev"; then + if test X-m = "X$prev" && test -n "$install_override_mode"; then + arg2=$install_override_mode + no_mode=false + fi + prev= + else + dest=$arg + continue + fi + ;; + esac + + # Aesthetically quote the argument. + func_quote_arg pretty "$arg" + func_append install_prog " $func_quote_arg_result" + if test -n "$arg2"; then + func_quote_arg pretty "$arg2" + fi + func_append install_shared_prog " $func_quote_arg_result" + done + + test -z "$install_prog" && \ + func_fatal_help "you must specify an install program" + + test -n "$prev" && \ + func_fatal_help "the '$prev' option requires an argument" + + if test -n "$install_override_mode" && $no_mode; then + if $install_cp; then :; else + func_quote_arg pretty "$install_override_mode" + func_append install_shared_prog " -m $func_quote_arg_result" + fi + fi + + if test -z "$files"; then + if test -z "$dest"; then + func_fatal_help "no file or destination specified" + else + func_fatal_help "you must specify a destination" + fi + fi + + # Strip any trailing slash from the destination. + func_stripname '' '/' "$dest" + dest=$func_stripname_result + + # Check to see that the destination is a directory. + test -d "$dest" && isdir=: + if $isdir; then + destdir=$dest + destname= + else + func_dirname_and_basename "$dest" "" "." + destdir=$func_dirname_result + destname=$func_basename_result + + # Not a directory, so check to see that there is only one file specified. + set dummy $files; shift + test "$#" -gt 1 && \ + func_fatal_help "'$dest' is not a directory" + fi + case $destdir in + [\\/]* | [A-Za-z]:[\\/]*) ;; + *) + for file in $files; do + case $file in + *.lo) ;; + *) + func_fatal_help "'$destdir' must be an absolute directory name" + ;; + esac + done + ;; + esac + + # This variable tells wrapper scripts just to set variables rather + # than running their programs. + libtool_install_magic=$magic + + staticlibs= + future_libdirs= + current_libdirs= + for file in $files; do + + # Do each installation. + case $file in + *.$libext) + # Do the static libraries later. + func_append staticlibs " $file" + ;; + + *.la) + func_resolve_sysroot "$file" + file=$func_resolve_sysroot_result + + # Check to see that this really is a libtool archive. + func_lalib_unsafe_p "$file" \ + || func_fatal_help "'$file' is not a valid libtool archive" + + library_names= + old_library= + relink_command= + func_source "$file" + + # Add the libdir to current_libdirs if it is the destination. + if test "X$destdir" = "X$libdir"; then + case "$current_libdirs " in + *" $libdir "*) ;; + *) func_append current_libdirs " $libdir" ;; + esac + else + # Note the libdir as a future libdir. + case "$future_libdirs " in + *" $libdir "*) ;; + *) func_append future_libdirs " $libdir" ;; + esac + fi + + func_dirname "$file" "/" "" + dir=$func_dirname_result + func_append dir "$objdir" + + if test -n "$relink_command"; then + # Determine the prefix the user has applied to our future dir. + inst_prefix_dir=`$ECHO "$destdir" | $SED -e "s%$libdir\$%%"` + + # Don't allow the user to place us outside of our expected + # location b/c this prevents finding dependent libraries that + # are installed to the same prefix. + # At present, this check doesn't affect windows .dll's that + # are installed into $libdir/../bin (currently, that works fine) + # but it's something to keep an eye on. + test "$inst_prefix_dir" = "$destdir" && \ + func_fatal_error "error: cannot install '$file' to a directory not ending in $libdir" + + if test -n "$inst_prefix_dir"; then + # Stick the inst_prefix_dir data into the link command. + relink_command=`$ECHO "$relink_command" | $SED "s%@inst_prefix_dir@%-inst-prefix-dir $inst_prefix_dir%"` + else + relink_command=`$ECHO "$relink_command" | $SED "s%@inst_prefix_dir@%%"` + fi + + func_warning "relinking '$file'" + func_show_eval "$relink_command" \ + 'func_fatal_error "error: relink '\''$file'\'' with the above command before installing it"' + fi + + # See the names of the shared library. + set dummy $library_names; shift + if test -n "$1"; then + realname=$1 + shift + + srcname=$realname + test -n "$relink_command" && srcname=${realname}T + + # Install the shared library and build the symlinks. + func_show_eval "$install_shared_prog $dir/$srcname $destdir/$realname" \ + 'exit $?' + tstripme=$stripme + case $host_os in + cygwin* | mingw* | pw32* | cegcc*) + case $realname in + *.dll.a) + tstripme= + ;; + esac + ;; + os2*) + case $realname in + *_dll.a) + tstripme= + ;; + esac + ;; + esac + if test -n "$tstripme" && test -n "$striplib"; then + func_show_eval "$striplib $destdir/$realname" 'exit $?' + fi + + if test "$#" -gt 0; then + # Delete the old symlinks, and create new ones. + # Try 'ln -sf' first, because the 'ln' binary might depend on + # the symlink we replace! Solaris /bin/ln does not understand -f, + # so we also need to try rm && ln -s. + for linkname + do + test "$linkname" != "$realname" \ + && func_show_eval "(cd $destdir && { $LN_S -f $realname $linkname || { $RM $linkname && $LN_S $realname $linkname; }; })" + done + fi + + # Do each command in the postinstall commands. + lib=$destdir/$realname + func_execute_cmds "$postinstall_cmds" 'exit $?' + fi + + # Install the pseudo-library for information purposes. + func_basename "$file" + name=$func_basename_result + instname=$dir/${name}i + func_show_eval "$install_prog $instname $destdir/$name" 'exit $?' + + # Maybe install the static library, too. + test -n "$old_library" && func_append staticlibs " $dir/$old_library" + ;; + + *.lo) + # Install (i.e. copy) a libtool object. + + # Figure out destination file name, if it wasn't already specified. + if test -n "$destname"; then + destfile=$destdir/$destname + else + func_basename "$file" + destfile=$func_basename_result + destfile=$destdir/$destfile + fi + + # Deduce the name of the destination old-style object file. + case $destfile in + *.lo) + func_lo2o "$destfile" + staticdest=$func_lo2o_result + ;; + *.$objext) + staticdest=$destfile + destfile= + ;; + *) + func_fatal_help "cannot copy a libtool object to '$destfile'" + ;; + esac + + # Install the libtool object if requested. + test -n "$destfile" && \ + func_show_eval "$install_prog $file $destfile" 'exit $?' + + # Install the old object if enabled. + if test yes = "$build_old_libs"; then + # Deduce the name of the old-style object file. + func_lo2o "$file" + staticobj=$func_lo2o_result + func_show_eval "$install_prog \$staticobj \$staticdest" 'exit $?' + fi + exit $EXIT_SUCCESS + ;; + + *) + # Figure out destination file name, if it wasn't already specified. + if test -n "$destname"; then + destfile=$destdir/$destname + else + func_basename "$file" + destfile=$func_basename_result + destfile=$destdir/$destfile + fi + + # If the file is missing, and there is a .exe on the end, strip it + # because it is most likely a libtool script we actually want to + # install + stripped_ext= + case $file in + *.exe) + if test ! -f "$file"; then + func_stripname '' '.exe' "$file" + file=$func_stripname_result + stripped_ext=.exe + fi + ;; + esac + + # Do a test to see if this is really a libtool program. + case $host in + *cygwin* | *mingw*) + if func_ltwrapper_executable_p "$file"; then + func_ltwrapper_scriptname "$file" + wrapper=$func_ltwrapper_scriptname_result + else + func_stripname '' '.exe' "$file" + wrapper=$func_stripname_result + fi + ;; + *) + wrapper=$file + ;; + esac + if func_ltwrapper_script_p "$wrapper"; then + notinst_deplibs= + relink_command= + + func_source "$wrapper" + + # Check the variables that should have been set. + test -z "$generated_by_libtool_version" && \ + func_fatal_error "invalid libtool wrapper script '$wrapper'" + + finalize=: + for lib in $notinst_deplibs; do + # Check to see that each library is installed. + libdir= + if test -f "$lib"; then + func_source "$lib" + fi + libfile=$libdir/`$ECHO "$lib" | $SED 's%^.*/%%g'` + if test -n "$libdir" && test ! -f "$libfile"; then + func_warning "'$lib' has not been installed in '$libdir'" + finalize=false + fi + done + + relink_command= + func_source "$wrapper" + + outputname= + if test no = "$fast_install" && test -n "$relink_command"; then + $opt_dry_run || { + if $finalize; then + tmpdir=`func_mktempdir` + func_basename "$file$stripped_ext" + file=$func_basename_result + outputname=$tmpdir/$file + # Replace the output file specification. + relink_command=`$ECHO "$relink_command" | $SED 's%@OUTPUT@%'"$outputname"'%g'` + + $opt_quiet || { + func_quote_arg expand,pretty "$relink_command" + eval "func_echo $func_quote_arg_result" + } + if eval "$relink_command"; then : + else + func_error "error: relink '$file' with the above command before installing it" + $opt_dry_run || ${RM}r "$tmpdir" + continue + fi + file=$outputname + else + func_warning "cannot relink '$file'" + fi + } + else + # Install the binary that we compiled earlier. + file=`$ECHO "$file$stripped_ext" | $SED "s%\([^/]*\)$%$objdir/\1%"` + fi + fi + + # remove .exe since cygwin /usr/bin/install will append another + # one anyway + case $install_prog,$host in + */usr/bin/install*,*cygwin*) + case $file:$destfile in + *.exe:*.exe) + # this is ok + ;; + *.exe:*) + destfile=$destfile.exe + ;; + *:*.exe) + func_stripname '' '.exe' "$destfile" + destfile=$func_stripname_result + ;; + esac + ;; + esac + func_show_eval "$install_prog\$stripme \$file \$destfile" 'exit $?' + $opt_dry_run || if test -n "$outputname"; then + ${RM}r "$tmpdir" + fi + ;; + esac + done + + for file in $staticlibs; do + func_basename "$file" + name=$func_basename_result + + # Set up the ranlib parameters. + oldlib=$destdir/$name + func_to_tool_file "$oldlib" func_convert_file_msys_to_w32 + tool_oldlib=$func_to_tool_file_result + + func_show_eval "$install_prog \$file \$oldlib" 'exit $?' + + if test -n "$stripme" && test -n "$old_striplib"; then + func_show_eval "$old_striplib $tool_oldlib" 'exit $?' + fi + + # Do each command in the postinstall commands. + func_execute_cmds "$old_postinstall_cmds" 'exit $?' + done + + test -n "$future_libdirs" && \ + func_warning "remember to run '$progname --finish$future_libdirs'" + + if test -n "$current_libdirs"; then + # Maybe just do a dry run. + $opt_dry_run && current_libdirs=" -n$current_libdirs" + exec_cmd='$SHELL "$progpath" $preserve_args --finish$current_libdirs' + else + exit $EXIT_SUCCESS + fi +} + +test install = "$opt_mode" && func_mode_install ${1+"$@"} + + +# func_generate_dlsyms outputname originator pic_p +# Extract symbols from dlprefiles and create ${outputname}S.o with +# a dlpreopen symbol table. +func_generate_dlsyms () +{ + $debug_cmd + + my_outputname=$1 + my_originator=$2 + my_pic_p=${3-false} + my_prefix=`$ECHO "$my_originator" | $SED 's%[^a-zA-Z0-9]%_%g'` + my_dlsyms= + + if test -n "$dlfiles$dlprefiles" || test no != "$dlself"; then + if test -n "$NM" && test -n "$global_symbol_pipe"; then + my_dlsyms=${my_outputname}S.c + else + func_error "not configured to extract global symbols from dlpreopened files" + fi + fi + + if test -n "$my_dlsyms"; then + case $my_dlsyms in + "") ;; + *.c) + # Discover the nlist of each of the dlfiles. + nlist=$output_objdir/$my_outputname.nm + + func_show_eval "$RM $nlist ${nlist}S ${nlist}T" + + # Parse the name list into a source file. + func_verbose "creating $output_objdir/$my_dlsyms" + + $opt_dry_run || $ECHO > "$output_objdir/$my_dlsyms" "\ +/* $my_dlsyms - symbol resolution table for '$my_outputname' dlsym emulation. */ +/* Generated by $PROGRAM (GNU $PACKAGE) $VERSION */ + +#ifdef __cplusplus +extern \"C\" { +#endif + +#if defined __GNUC__ && (((__GNUC__ == 4) && (__GNUC_MINOR__ >= 4)) || (__GNUC__ > 4)) +#pragma GCC diagnostic ignored \"-Wstrict-prototypes\" +#endif + +/* Keep this code in sync between libtool.m4, ltmain, lt_system.h, and tests. */ +#if defined _WIN32 || defined __CYGWIN__ || defined _WIN32_WCE +/* DATA imports from DLLs on WIN32 can't be const, because runtime + relocations are performed -- see ld's documentation on pseudo-relocs. */ +# define LT_DLSYM_CONST +#elif defined __osf__ +/* This system does not cope well with relocations in const data. */ +# define LT_DLSYM_CONST +#else +# define LT_DLSYM_CONST const +#endif + +#define STREQ(s1, s2) (strcmp ((s1), (s2)) == 0) + +/* External symbol declarations for the compiler. */\ +" + + if test yes = "$dlself"; then + func_verbose "generating symbol list for '$output'" + + $opt_dry_run || echo ': @PROGRAM@ ' > "$nlist" + + # Add our own program objects to the symbol list. + progfiles=`$ECHO "$objs$old_deplibs" | $SP2NL | $SED "$lo2o" | $NL2SP` + for progfile in $progfiles; do + func_to_tool_file "$progfile" func_convert_file_msys_to_w32 + func_verbose "extracting global C symbols from '$func_to_tool_file_result'" + $opt_dry_run || eval "$NM $func_to_tool_file_result | $global_symbol_pipe >> '$nlist'" + done + + if test -n "$exclude_expsyms"; then + $opt_dry_run || { + eval '$EGREP -v " ($exclude_expsyms)$" "$nlist" > "$nlist"T' + eval '$MV "$nlist"T "$nlist"' + } + fi + + if test -n "$export_symbols_regex"; then + $opt_dry_run || { + eval '$EGREP -e "$export_symbols_regex" "$nlist" > "$nlist"T' + eval '$MV "$nlist"T "$nlist"' + } + fi + + # Prepare the list of exported symbols + if test -z "$export_symbols"; then + export_symbols=$output_objdir/$outputname.exp + $opt_dry_run || { + $RM $export_symbols + eval "$SED -n -e '/^: @PROGRAM@ $/d' -e 's/^.* \(.*\)$/\1/p' "'< "$nlist" > "$export_symbols"' + case $host in + *cygwin* | *mingw* | *cegcc* ) + eval "echo EXPORTS "'> "$output_objdir/$outputname.def"' + eval 'cat "$export_symbols" >> "$output_objdir/$outputname.def"' + ;; + esac + } + else + $opt_dry_run || { + eval "$SED -e 's/\([].[*^$]\)/\\\\\1/g' -e 's/^/ /' -e 's/$/$/'"' < "$export_symbols" > "$output_objdir/$outputname.exp"' + eval '$GREP -f "$output_objdir/$outputname.exp" < "$nlist" > "$nlist"T' + eval '$MV "$nlist"T "$nlist"' + case $host in + *cygwin* | *mingw* | *cegcc* ) + eval "echo EXPORTS "'> "$output_objdir/$outputname.def"' + eval 'cat "$nlist" >> "$output_objdir/$outputname.def"' + ;; + esac + } + fi + fi + + for dlprefile in $dlprefiles; do + func_verbose "extracting global C symbols from '$dlprefile'" + func_basename "$dlprefile" + name=$func_basename_result + case $host in + *cygwin* | *mingw* | *cegcc* ) + # if an import library, we need to obtain dlname + if func_win32_import_lib_p "$dlprefile"; then + func_tr_sh "$dlprefile" + eval "curr_lafile=\$libfile_$func_tr_sh_result" + dlprefile_dlbasename= + if test -n "$curr_lafile" && func_lalib_p "$curr_lafile"; then + # Use subshell, to avoid clobbering current variable values + dlprefile_dlname=`source "$curr_lafile" && echo "$dlname"` + if test -n "$dlprefile_dlname"; then + func_basename "$dlprefile_dlname" + dlprefile_dlbasename=$func_basename_result + else + # no lafile. user explicitly requested -dlpreopen . + $sharedlib_from_linklib_cmd "$dlprefile" + dlprefile_dlbasename=$sharedlib_from_linklib_result + fi + fi + $opt_dry_run || { + if test -n "$dlprefile_dlbasename"; then + eval '$ECHO ": $dlprefile_dlbasename" >> "$nlist"' + else + func_warning "Could not compute DLL name from $name" + eval '$ECHO ": $name " >> "$nlist"' + fi + func_to_tool_file "$dlprefile" func_convert_file_msys_to_w32 + eval "$NM \"$func_to_tool_file_result\" 2>/dev/null | $global_symbol_pipe | + $SED -e '/I __imp/d' -e 's/I __nm_/D /;s/_nm__//' >> '$nlist'" + } + else # not an import lib + $opt_dry_run || { + eval '$ECHO ": $name " >> "$nlist"' + func_to_tool_file "$dlprefile" func_convert_file_msys_to_w32 + eval "$NM \"$func_to_tool_file_result\" 2>/dev/null | $global_symbol_pipe >> '$nlist'" + } + fi + ;; + *) + $opt_dry_run || { + eval '$ECHO ": $name " >> "$nlist"' + func_to_tool_file "$dlprefile" func_convert_file_msys_to_w32 + eval "$NM \"$func_to_tool_file_result\" 2>/dev/null | $global_symbol_pipe >> '$nlist'" + } + ;; + esac + done + + $opt_dry_run || { + # Make sure we have at least an empty file. + test -f "$nlist" || : > "$nlist" + + if test -n "$exclude_expsyms"; then + $EGREP -v " ($exclude_expsyms)$" "$nlist" > "$nlist"T + $MV "$nlist"T "$nlist" + fi + + # Try sorting and uniquifying the output. + if $GREP -v "^: " < "$nlist" | + if sort -k 3 /dev/null 2>&1; then + sort -k 3 + else + sort +2 + fi | + uniq > "$nlist"S; then + : + else + $GREP -v "^: " < "$nlist" > "$nlist"S + fi + + if test -f "$nlist"S; then + eval "$global_symbol_to_cdecl"' < "$nlist"S >> "$output_objdir/$my_dlsyms"' + else + echo '/* NONE */' >> "$output_objdir/$my_dlsyms" + fi + + func_show_eval '$RM "${nlist}I"' + if test -n "$global_symbol_to_import"; then + eval "$global_symbol_to_import"' < "$nlist"S > "$nlist"I' + fi + + echo >> "$output_objdir/$my_dlsyms" "\ + +/* The mapping between symbol names and symbols. */ +typedef struct { + const char *name; + void *address; +} lt_dlsymlist; +extern LT_DLSYM_CONST lt_dlsymlist +lt_${my_prefix}_LTX_preloaded_symbols[];\ +" + + if test -s "$nlist"I; then + echo >> "$output_objdir/$my_dlsyms" "\ +static void lt_syminit(void) +{ + LT_DLSYM_CONST lt_dlsymlist *symbol = lt_${my_prefix}_LTX_preloaded_symbols; + for (; symbol->name; ++symbol) + {" + $SED 's/.*/ if (STREQ (symbol->name, \"&\")) symbol->address = (void *) \&&;/' < "$nlist"I >> "$output_objdir/$my_dlsyms" + echo >> "$output_objdir/$my_dlsyms" "\ + } +}" + fi + echo >> "$output_objdir/$my_dlsyms" "\ +LT_DLSYM_CONST lt_dlsymlist +lt_${my_prefix}_LTX_preloaded_symbols[] = +{ {\"$my_originator\", (void *) 0}," + + if test -s "$nlist"I; then + echo >> "$output_objdir/$my_dlsyms" "\ + {\"@INIT@\", (void *) <_syminit}," + fi + + case $need_lib_prefix in + no) + eval "$global_symbol_to_c_name_address" < "$nlist" >> "$output_objdir/$my_dlsyms" + ;; + *) + eval "$global_symbol_to_c_name_address_lib_prefix" < "$nlist" >> "$output_objdir/$my_dlsyms" + ;; + esac + echo >> "$output_objdir/$my_dlsyms" "\ + {0, (void *) 0} +}; + +/* This works around a problem in FreeBSD linker */ +#ifdef FREEBSD_WORKAROUND +static const void *lt_preloaded_setup() { + return lt_${my_prefix}_LTX_preloaded_symbols; +} +#endif + +#ifdef __cplusplus +} +#endif\ +" + } # !$opt_dry_run + + pic_flag_for_symtable= + case "$compile_command " in + *" -static "*) ;; + *) + case $host in + # compiling the symbol table file with pic_flag works around + # a FreeBSD bug that causes programs to crash when -lm is + # linked before any other PIC object. But we must not use + # pic_flag when linking with -static. The problem exists in + # FreeBSD 2.2.6 and is fixed in FreeBSD 3.1. + *-*-freebsd2.*|*-*-freebsd3.0*|*-*-freebsdelf3.0*) + pic_flag_for_symtable=" $pic_flag -DFREEBSD_WORKAROUND" ;; + *-*-hpux*) + pic_flag_for_symtable=" $pic_flag" ;; + *) + $my_pic_p && pic_flag_for_symtable=" $pic_flag" + ;; + esac + ;; + esac + symtab_cflags= + for arg in $LTCFLAGS; do + case $arg in + -pie | -fpie | -fPIE) ;; + *) func_append symtab_cflags " $arg" ;; + esac + done + + # Now compile the dynamic symbol file. + func_show_eval '(cd $output_objdir && $LTCC$symtab_cflags -c$no_builtin_flag$pic_flag_for_symtable "$my_dlsyms")' 'exit $?' + + # Clean up the generated files. + func_show_eval '$RM "$output_objdir/$my_dlsyms" "$nlist" "${nlist}S" "${nlist}T" "${nlist}I"' + + # Transform the symbol file into the correct name. + symfileobj=$output_objdir/${my_outputname}S.$objext + case $host in + *cygwin* | *mingw* | *cegcc* ) + if test -f "$output_objdir/$my_outputname.def"; then + compile_command=`$ECHO "$compile_command" | $SED "s%@SYMFILE@%$output_objdir/$my_outputname.def $symfileobj%"` + finalize_command=`$ECHO "$finalize_command" | $SED "s%@SYMFILE@%$output_objdir/$my_outputname.def $symfileobj%"` + else + compile_command=`$ECHO "$compile_command" | $SED "s%@SYMFILE@%$symfileobj%"` + finalize_command=`$ECHO "$finalize_command" | $SED "s%@SYMFILE@%$symfileobj%"` + fi + ;; + *) + compile_command=`$ECHO "$compile_command" | $SED "s%@SYMFILE@%$symfileobj%"` + finalize_command=`$ECHO "$finalize_command" | $SED "s%@SYMFILE@%$symfileobj%"` + ;; + esac + ;; + *) + func_fatal_error "unknown suffix for '$my_dlsyms'" + ;; + esac + else + # We keep going just in case the user didn't refer to + # lt_preloaded_symbols. The linker will fail if global_symbol_pipe + # really was required. + + # Nullify the symbol file. + compile_command=`$ECHO "$compile_command" | $SED "s% @SYMFILE@%%"` + finalize_command=`$ECHO "$finalize_command" | $SED "s% @SYMFILE@%%"` + fi +} + +# func_cygming_gnu_implib_p ARG +# This predicate returns with zero status (TRUE) if +# ARG is a GNU/binutils-style import library. Returns +# with nonzero status (FALSE) otherwise. +func_cygming_gnu_implib_p () +{ + $debug_cmd + + func_to_tool_file "$1" func_convert_file_msys_to_w32 + func_cygming_gnu_implib_tmp=`$NM "$func_to_tool_file_result" | eval "$global_symbol_pipe" | $EGREP ' (_head_[A-Za-z0-9_]+_[ad]l*|[A-Za-z0-9_]+_[ad]l*_iname)$'` + test -n "$func_cygming_gnu_implib_tmp" +} + +# func_cygming_ms_implib_p ARG +# This predicate returns with zero status (TRUE) if +# ARG is an MS-style import library. Returns +# with nonzero status (FALSE) otherwise. +func_cygming_ms_implib_p () +{ + $debug_cmd + + func_to_tool_file "$1" func_convert_file_msys_to_w32 + func_cygming_ms_implib_tmp=`$NM "$func_to_tool_file_result" | eval "$global_symbol_pipe" | $GREP '_NULL_IMPORT_DESCRIPTOR'` + test -n "$func_cygming_ms_implib_tmp" +} + +# func_win32_libid arg +# return the library type of file 'arg' +# +# Need a lot of goo to handle *both* DLLs and import libs +# Has to be a shell function in order to 'eat' the argument +# that is supplied when $file_magic_command is called. +# Despite the name, also deal with 64 bit binaries. +func_win32_libid () +{ + $debug_cmd + + win32_libid_type=unknown + win32_fileres=`file -L $1 2>/dev/null` + case $win32_fileres in + *ar\ archive\ import\ library*) # definitely import + win32_libid_type="x86 archive import" + ;; + *ar\ archive*) # could be an import, or static + # Keep the egrep pattern in sync with the one in _LT_CHECK_MAGIC_METHOD. + if eval $OBJDUMP -f $1 | $SED -e '10q' 2>/dev/null | + $EGREP 'file format (pei*-i386(.*architecture: i386)?|pe-arm-wince|pe-x86-64)' >/dev/null; then + case $nm_interface in + "MS dumpbin") + if func_cygming_ms_implib_p "$1" || + func_cygming_gnu_implib_p "$1" + then + win32_nmres=import + else + win32_nmres= + fi + ;; + *) + func_to_tool_file "$1" func_convert_file_msys_to_w32 + win32_nmres=`eval $NM -f posix -A \"$func_to_tool_file_result\" | + $SED -n -e ' + 1,100{ + / I /{ + s|.*|import| + p + q + } + }'` + ;; + esac + case $win32_nmres in + import*) win32_libid_type="x86 archive import";; + *) win32_libid_type="x86 archive static";; + esac + fi + ;; + *DLL*) + win32_libid_type="x86 DLL" + ;; + *executable*) # but shell scripts are "executable" too... + case $win32_fileres in + *MS\ Windows\ PE\ Intel*) + win32_libid_type="x86 DLL" + ;; + esac + ;; + esac + $ECHO "$win32_libid_type" +} + +# func_cygming_dll_for_implib ARG +# +# Platform-specific function to extract the +# name of the DLL associated with the specified +# import library ARG. +# Invoked by eval'ing the libtool variable +# $sharedlib_from_linklib_cmd +# Result is available in the variable +# $sharedlib_from_linklib_result +func_cygming_dll_for_implib () +{ + $debug_cmd + + sharedlib_from_linklib_result=`$DLLTOOL --identify-strict --identify "$1"` +} + +# func_cygming_dll_for_implib_fallback_core SECTION_NAME LIBNAMEs +# +# The is the core of a fallback implementation of a +# platform-specific function to extract the name of the +# DLL associated with the specified import library LIBNAME. +# +# SECTION_NAME is either .idata$6 or .idata$7, depending +# on the platform and compiler that created the implib. +# +# Echos the name of the DLL associated with the +# specified import library. +func_cygming_dll_for_implib_fallback_core () +{ + $debug_cmd + + match_literal=`$ECHO "$1" | $SED "$sed_make_literal_regex"` + $OBJDUMP -s --section "$1" "$2" 2>/dev/null | + $SED '/^Contents of section '"$match_literal"':/{ + # Place marker at beginning of archive member dllname section + s/.*/====MARK====/ + p + d + } + # These lines can sometimes be longer than 43 characters, but + # are always uninteresting + /:[ ]*file format pe[i]\{,1\}-/d + /^In archive [^:]*:/d + # Ensure marker is printed + /^====MARK====/p + # Remove all lines with less than 43 characters + /^.\{43\}/!d + # From remaining lines, remove first 43 characters + s/^.\{43\}//' | + $SED -n ' + # Join marker and all lines until next marker into a single line + /^====MARK====/ b para + H + $ b para + b + :para + x + s/\n//g + # Remove the marker + s/^====MARK====// + # Remove trailing dots and whitespace + s/[\. \t]*$// + # Print + /./p' | + # we now have a list, one entry per line, of the stringified + # contents of the appropriate section of all members of the + # archive that possess that section. Heuristic: eliminate + # all those that have a first or second character that is + # a '.' (that is, objdump's representation of an unprintable + # character.) This should work for all archives with less than + # 0x302f exports -- but will fail for DLLs whose name actually + # begins with a literal '.' or a single character followed by + # a '.'. + # + # Of those that remain, print the first one. + $SED -e '/^\./d;/^.\./d;q' +} + +# func_cygming_dll_for_implib_fallback ARG +# Platform-specific function to extract the +# name of the DLL associated with the specified +# import library ARG. +# +# This fallback implementation is for use when $DLLTOOL +# does not support the --identify-strict option. +# Invoked by eval'ing the libtool variable +# $sharedlib_from_linklib_cmd +# Result is available in the variable +# $sharedlib_from_linklib_result +func_cygming_dll_for_implib_fallback () +{ + $debug_cmd + + if func_cygming_gnu_implib_p "$1"; then + # binutils import library + sharedlib_from_linklib_result=`func_cygming_dll_for_implib_fallback_core '.idata$7' "$1"` + elif func_cygming_ms_implib_p "$1"; then + # ms-generated import library + sharedlib_from_linklib_result=`func_cygming_dll_for_implib_fallback_core '.idata$6' "$1"` + else + # unknown + sharedlib_from_linklib_result= + fi +} + + +# func_extract_an_archive dir oldlib +func_extract_an_archive () +{ + $debug_cmd + + f_ex_an_ar_dir=$1; shift + f_ex_an_ar_oldlib=$1 + if test yes = "$lock_old_archive_extraction"; then + lockfile=$f_ex_an_ar_oldlib.lock + until $opt_dry_run || ln "$progpath" "$lockfile" 2>/dev/null; do + func_echo "Waiting for $lockfile to be removed" + sleep 2 + done + fi + func_show_eval "(cd \$f_ex_an_ar_dir && $AR x \"\$f_ex_an_ar_oldlib\")" \ + 'stat=$?; rm -f "$lockfile"; exit $stat' + if test yes = "$lock_old_archive_extraction"; then + $opt_dry_run || rm -f "$lockfile" + fi + if ($AR t "$f_ex_an_ar_oldlib" | sort | sort -uc >/dev/null 2>&1); then + : + else + func_fatal_error "object name conflicts in archive: $f_ex_an_ar_dir/$f_ex_an_ar_oldlib" + fi +} + + +# func_extract_archives gentop oldlib ... +func_extract_archives () +{ + $debug_cmd + + my_gentop=$1; shift + my_oldlibs=${1+"$@"} + my_oldobjs= + my_xlib= + my_xabs= + my_xdir= + + for my_xlib in $my_oldlibs; do + # Extract the objects. + case $my_xlib in + [\\/]* | [A-Za-z]:[\\/]*) my_xabs=$my_xlib ;; + *) my_xabs=`pwd`"/$my_xlib" ;; + esac + func_basename "$my_xlib" + my_xlib=$func_basename_result + my_xlib_u=$my_xlib + while :; do + case " $extracted_archives " in + *" $my_xlib_u "*) + func_arith $extracted_serial + 1 + extracted_serial=$func_arith_result + my_xlib_u=lt$extracted_serial-$my_xlib ;; + *) break ;; + esac + done + extracted_archives="$extracted_archives $my_xlib_u" + my_xdir=$my_gentop/$my_xlib_u + + func_mkdir_p "$my_xdir" + + case $host in + *-darwin*) + func_verbose "Extracting $my_xabs" + # Do not bother doing anything if just a dry run + $opt_dry_run || { + darwin_orig_dir=`pwd` + cd $my_xdir || exit $? + darwin_archive=$my_xabs + darwin_curdir=`pwd` + func_basename "$darwin_archive" + darwin_base_archive=$func_basename_result + darwin_arches=`$LIPO -info "$darwin_archive" 2>/dev/null | $GREP Architectures 2>/dev/null || true` + if test -n "$darwin_arches"; then + darwin_arches=`$ECHO "$darwin_arches" | $SED -e 's/.*are://'` + darwin_arch= + func_verbose "$darwin_base_archive has multiple architectures $darwin_arches" + for darwin_arch in $darwin_arches; do + func_mkdir_p "unfat-$$/$darwin_base_archive-$darwin_arch" + $LIPO -thin $darwin_arch -output "unfat-$$/$darwin_base_archive-$darwin_arch/$darwin_base_archive" "$darwin_archive" + cd "unfat-$$/$darwin_base_archive-$darwin_arch" + func_extract_an_archive "`pwd`" "$darwin_base_archive" + cd "$darwin_curdir" + $RM "unfat-$$/$darwin_base_archive-$darwin_arch/$darwin_base_archive" + done # $darwin_arches + ## Okay now we've a bunch of thin objects, gotta fatten them up :) + darwin_filelist=`find unfat-$$ -type f -name \*.o -print -o -name \*.lo -print | $SED -e "$sed_basename" | sort -u` + darwin_file= + darwin_files= + for darwin_file in $darwin_filelist; do + darwin_files=`find unfat-$$ -name $darwin_file -print | sort | $NL2SP` + $LIPO -create -output "$darwin_file" $darwin_files + done # $darwin_filelist + $RM -rf unfat-$$ + cd "$darwin_orig_dir" + else + cd $darwin_orig_dir + func_extract_an_archive "$my_xdir" "$my_xabs" + fi # $darwin_arches + } # !$opt_dry_run + ;; + *) + func_extract_an_archive "$my_xdir" "$my_xabs" + ;; + esac + my_oldobjs="$my_oldobjs "`find $my_xdir -name \*.$objext -print -o -name \*.lo -print | sort | $NL2SP` + done + + func_extract_archives_result=$my_oldobjs +} + + +# func_emit_wrapper [arg=no] +# +# Emit a libtool wrapper script on stdout. +# Don't directly open a file because we may want to +# incorporate the script contents within a cygwin/mingw +# wrapper executable. Must ONLY be called from within +# func_mode_link because it depends on a number of variables +# set therein. +# +# ARG is the value that the WRAPPER_SCRIPT_BELONGS_IN_OBJDIR +# variable will take. If 'yes', then the emitted script +# will assume that the directory where it is stored is +# the $objdir directory. This is a cygwin/mingw-specific +# behavior. +func_emit_wrapper () +{ + func_emit_wrapper_arg1=${1-no} + + $ECHO "\ +#! $SHELL + +# $output - temporary wrapper script for $objdir/$outputname +# Generated by $PROGRAM (GNU $PACKAGE) $VERSION +# +# The $output program cannot be directly executed until all the libtool +# libraries that it depends on are installed. +# +# This wrapper script should never be moved out of the build directory. +# If it is, it will not operate correctly. + +# Sed substitution that helps us do robust quoting. It backslashifies +# metacharacters that are still active within double-quoted strings. +sed_quote_subst='$sed_quote_subst' + +# Be Bourne compatible +if test -n \"\${ZSH_VERSION+set}\" && (emulate sh) >/dev/null 2>&1; then + emulate sh + NULLCMD=: + # Zsh 3.x and 4.x performs word splitting on \${1+\"\$@\"}, which + # is contrary to our usage. Disable this feature. + alias -g '\${1+\"\$@\"}'='\"\$@\"' + setopt NO_GLOB_SUBST +else + case \`(set -o) 2>/dev/null\` in *posix*) set -o posix;; esac +fi +BIN_SH=xpg4; export BIN_SH # for Tru64 +DUALCASE=1; export DUALCASE # for MKS sh + +# The HP-UX ksh and POSIX shell print the target directory to stdout +# if CDPATH is set. +(unset CDPATH) >/dev/null 2>&1 && unset CDPATH + +relink_command=\"$relink_command\" + +# This environment variable determines our operation mode. +if test \"\$libtool_install_magic\" = \"$magic\"; then + # install mode needs the following variables: + generated_by_libtool_version='$macro_version' + notinst_deplibs='$notinst_deplibs' +else + # When we are sourced in execute mode, \$file and \$ECHO are already set. + if test \"\$libtool_execute_magic\" != \"$magic\"; then + file=\"\$0\"" + + func_quote_arg pretty "$ECHO" + qECHO=$func_quote_arg_result + $ECHO "\ + +# A function that is used when there is no print builtin or printf. +func_fallback_echo () +{ + eval 'cat <<_LTECHO_EOF +\$1 +_LTECHO_EOF' +} + ECHO=$qECHO + fi + +# Very basic option parsing. These options are (a) specific to +# the libtool wrapper, (b) are identical between the wrapper +# /script/ and the wrapper /executable/ that is used only on +# windows platforms, and (c) all begin with the string "--lt-" +# (application programs are unlikely to have options that match +# this pattern). +# +# There are only two supported options: --lt-debug and +# --lt-dump-script. There is, deliberately, no --lt-help. +# +# The first argument to this parsing function should be the +# script's $0 value, followed by "$@". +lt_option_debug= +func_parse_lt_options () +{ + lt_script_arg0=\$0 + shift + for lt_opt + do + case \"\$lt_opt\" in + --lt-debug) lt_option_debug=1 ;; + --lt-dump-script) + lt_dump_D=\`\$ECHO \"X\$lt_script_arg0\" | $SED -e 's/^X//' -e 's%/[^/]*$%%'\` + test \"X\$lt_dump_D\" = \"X\$lt_script_arg0\" && lt_dump_D=. + lt_dump_F=\`\$ECHO \"X\$lt_script_arg0\" | $SED -e 's/^X//' -e 's%^.*/%%'\` + cat \"\$lt_dump_D/\$lt_dump_F\" + exit 0 + ;; + --lt-*) + \$ECHO \"Unrecognized --lt- option: '\$lt_opt'\" 1>&2 + exit 1 + ;; + esac + done + + # Print the debug banner immediately: + if test -n \"\$lt_option_debug\"; then + echo \"$outputname:$output:\$LINENO: libtool wrapper (GNU $PACKAGE) $VERSION\" 1>&2 + fi +} + +# Used when --lt-debug. Prints its arguments to stdout +# (redirection is the responsibility of the caller) +func_lt_dump_args () +{ + lt_dump_args_N=1; + for lt_arg + do + \$ECHO \"$outputname:$output:\$LINENO: newargv[\$lt_dump_args_N]: \$lt_arg\" + lt_dump_args_N=\`expr \$lt_dump_args_N + 1\` + done +} + +# Core function for launching the target application +func_exec_program_core () +{ +" + case $host in + # Backslashes separate directories on plain windows + *-*-mingw | *-*-os2* | *-cegcc*) + $ECHO "\ + if test -n \"\$lt_option_debug\"; then + \$ECHO \"$outputname:$output:\$LINENO: newargv[0]: \$progdir\\\\\$program\" 1>&2 + func_lt_dump_args \${1+\"\$@\"} 1>&2 + fi + exec \"\$progdir\\\\\$program\" \${1+\"\$@\"} +" + ;; + + *) + $ECHO "\ + if test -n \"\$lt_option_debug\"; then + \$ECHO \"$outputname:$output:\$LINENO: newargv[0]: \$progdir/\$program\" 1>&2 + func_lt_dump_args \${1+\"\$@\"} 1>&2 + fi + exec \"\$progdir/\$program\" \${1+\"\$@\"} +" + ;; + esac + $ECHO "\ + \$ECHO \"\$0: cannot exec \$program \$*\" 1>&2 + exit 1 +} + +# A function to encapsulate launching the target application +# Strips options in the --lt-* namespace from \$@ and +# launches target application with the remaining arguments. +func_exec_program () +{ + case \" \$* \" in + *\\ --lt-*) + for lt_wr_arg + do + case \$lt_wr_arg in + --lt-*) ;; + *) set x \"\$@\" \"\$lt_wr_arg\"; shift;; + esac + shift + done ;; + esac + func_exec_program_core \${1+\"\$@\"} +} + + # Parse options + func_parse_lt_options \"\$0\" \${1+\"\$@\"} + + # Find the directory that this script lives in. + thisdir=\`\$ECHO \"\$file\" | $SED 's%/[^/]*$%%'\` + test \"x\$thisdir\" = \"x\$file\" && thisdir=. + + # Follow symbolic links until we get to the real thisdir. + file=\`ls -ld \"\$file\" | $SED -n 's/.*-> //p'\` + while test -n \"\$file\"; do + destdir=\`\$ECHO \"\$file\" | $SED 's%/[^/]*\$%%'\` + + # If there was a directory component, then change thisdir. + if test \"x\$destdir\" != \"x\$file\"; then + case \"\$destdir\" in + [\\\\/]* | [A-Za-z]:[\\\\/]*) thisdir=\"\$destdir\" ;; + *) thisdir=\"\$thisdir/\$destdir\" ;; + esac + fi + + file=\`\$ECHO \"\$file\" | $SED 's%^.*/%%'\` + file=\`ls -ld \"\$thisdir/\$file\" | $SED -n 's/.*-> //p'\` + done + + # Usually 'no', except on cygwin/mingw when embedded into + # the cwrapper. + WRAPPER_SCRIPT_BELONGS_IN_OBJDIR=$func_emit_wrapper_arg1 + if test \"\$WRAPPER_SCRIPT_BELONGS_IN_OBJDIR\" = \"yes\"; then + # special case for '.' + if test \"\$thisdir\" = \".\"; then + thisdir=\`pwd\` + fi + # remove .libs from thisdir + case \"\$thisdir\" in + *[\\\\/]$objdir ) thisdir=\`\$ECHO \"\$thisdir\" | $SED 's%[\\\\/][^\\\\/]*$%%'\` ;; + $objdir ) thisdir=. ;; + esac + fi + + # Try to get the absolute directory name. + absdir=\`cd \"\$thisdir\" && pwd\` + test -n \"\$absdir\" && thisdir=\"\$absdir\" +" + + if test yes = "$fast_install"; then + $ECHO "\ + program=lt-'$outputname'$exeext + progdir=\"\$thisdir/$objdir\" + + if test ! -f \"\$progdir/\$program\" || + { file=\`ls -1dt \"\$progdir/\$program\" \"\$progdir/../\$program\" 2>/dev/null | $SED 1q\`; \\ + test \"X\$file\" != \"X\$progdir/\$program\"; }; then + + file=\"\$\$-\$program\" + + if test ! -d \"\$progdir\"; then + $MKDIR \"\$progdir\" + else + $RM \"\$progdir/\$file\" + fi" + + $ECHO "\ + + # relink executable if necessary + if test -n \"\$relink_command\"; then + if relink_command_output=\`eval \$relink_command 2>&1\`; then : + else + \$ECHO \"\$relink_command_output\" >&2 + $RM \"\$progdir/\$file\" + exit 1 + fi + fi + + $MV \"\$progdir/\$file\" \"\$progdir/\$program\" 2>/dev/null || + { $RM \"\$progdir/\$program\"; + $MV \"\$progdir/\$file\" \"\$progdir/\$program\"; } + $RM \"\$progdir/\$file\" + fi" + else + $ECHO "\ + program='$outputname' + progdir=\"\$thisdir/$objdir\" +" + fi + + $ECHO "\ + + if test -f \"\$progdir/\$program\"; then" + + # fixup the dll searchpath if we need to. + # + # Fix the DLL searchpath if we need to. Do this before prepending + # to shlibpath, because on Windows, both are PATH and uninstalled + # libraries must come first. + if test -n "$dllsearchpath"; then + $ECHO "\ + # Add the dll search path components to the executable PATH + PATH=$dllsearchpath:\$PATH +" + fi + + # Export our shlibpath_var if we have one. + if test yes = "$shlibpath_overrides_runpath" && test -n "$shlibpath_var" && test -n "$temp_rpath"; then + $ECHO "\ + # Add our own library path to $shlibpath_var + $shlibpath_var=\"$temp_rpath\$$shlibpath_var\" + + # Some systems cannot cope with colon-terminated $shlibpath_var + # The second colon is a workaround for a bug in BeOS R4 sed + $shlibpath_var=\`\$ECHO \"\$$shlibpath_var\" | $SED 's/::*\$//'\` + + export $shlibpath_var +" + fi + + $ECHO "\ + if test \"\$libtool_execute_magic\" != \"$magic\"; then + # Run the actual program with our arguments. + func_exec_program \${1+\"\$@\"} + fi + else + # The program doesn't exist. + \$ECHO \"\$0: error: '\$progdir/\$program' does not exist\" 1>&2 + \$ECHO \"This script is just a wrapper for \$program.\" 1>&2 + \$ECHO \"See the $PACKAGE documentation for more information.\" 1>&2 + exit 1 + fi +fi\ +" +} + + +# func_emit_cwrapperexe_src +# emit the source code for a wrapper executable on stdout +# Must ONLY be called from within func_mode_link because +# it depends on a number of variable set therein. +func_emit_cwrapperexe_src () +{ + cat < +#include +#ifdef _MSC_VER +# include +# include +# include +#else +# include +# include +# ifdef __CYGWIN__ +# include +# endif +#endif +#include +#include +#include +#include +#include +#include +#include +#include + +#define STREQ(s1, s2) (strcmp ((s1), (s2)) == 0) + +/* declarations of non-ANSI functions */ +#if defined __MINGW32__ +# ifdef __STRICT_ANSI__ +int _putenv (const char *); +# endif +#elif defined __CYGWIN__ +# ifdef __STRICT_ANSI__ +char *realpath (const char *, char *); +int putenv (char *); +int setenv (const char *, const char *, int); +# endif +/* #elif defined other_platform || defined ... */ +#endif + +/* portability defines, excluding path handling macros */ +#if defined _MSC_VER +# define setmode _setmode +# define stat _stat +# define chmod _chmod +# define getcwd _getcwd +# define putenv _putenv +# define S_IXUSR _S_IEXEC +#elif defined __MINGW32__ +# define setmode _setmode +# define stat _stat +# define chmod _chmod +# define getcwd _getcwd +# define putenv _putenv +#elif defined __CYGWIN__ +# define HAVE_SETENV +# define FOPEN_WB "wb" +/* #elif defined other platforms ... */ +#endif + +#if defined PATH_MAX +# define LT_PATHMAX PATH_MAX +#elif defined MAXPATHLEN +# define LT_PATHMAX MAXPATHLEN +#else +# define LT_PATHMAX 1024 +#endif + +#ifndef S_IXOTH +# define S_IXOTH 0 +#endif +#ifndef S_IXGRP +# define S_IXGRP 0 +#endif + +/* path handling portability macros */ +#ifndef DIR_SEPARATOR +# define DIR_SEPARATOR '/' +# define PATH_SEPARATOR ':' +#endif + +#if defined _WIN32 || defined __MSDOS__ || defined __DJGPP__ || \ + defined __OS2__ +# define HAVE_DOS_BASED_FILE_SYSTEM +# define FOPEN_WB "wb" +# ifndef DIR_SEPARATOR_2 +# define DIR_SEPARATOR_2 '\\' +# endif +# ifndef PATH_SEPARATOR_2 +# define PATH_SEPARATOR_2 ';' +# endif +#endif + +#ifndef DIR_SEPARATOR_2 +# define IS_DIR_SEPARATOR(ch) ((ch) == DIR_SEPARATOR) +#else /* DIR_SEPARATOR_2 */ +# define IS_DIR_SEPARATOR(ch) \ + (((ch) == DIR_SEPARATOR) || ((ch) == DIR_SEPARATOR_2)) +#endif /* DIR_SEPARATOR_2 */ + +#ifndef PATH_SEPARATOR_2 +# define IS_PATH_SEPARATOR(ch) ((ch) == PATH_SEPARATOR) +#else /* PATH_SEPARATOR_2 */ +# define IS_PATH_SEPARATOR(ch) ((ch) == PATH_SEPARATOR_2) +#endif /* PATH_SEPARATOR_2 */ + +#ifndef FOPEN_WB +# define FOPEN_WB "w" +#endif +#ifndef _O_BINARY +# define _O_BINARY 0 +#endif + +#define XMALLOC(type, num) ((type *) xmalloc ((num) * sizeof(type))) +#define XFREE(stale) do { \ + if (stale) { free (stale); stale = 0; } \ +} while (0) + +#if defined LT_DEBUGWRAPPER +static int lt_debug = 1; +#else +static int lt_debug = 0; +#endif + +const char *program_name = "libtool-wrapper"; /* in case xstrdup fails */ + +void *xmalloc (size_t num); +char *xstrdup (const char *string); +const char *base_name (const char *name); +char *find_executable (const char *wrapper); +char *chase_symlinks (const char *pathspec); +int make_executable (const char *path); +int check_executable (const char *path); +char *strendzap (char *str, const char *pat); +void lt_debugprintf (const char *file, int line, const char *fmt, ...); +void lt_fatal (const char *file, int line, const char *message, ...); +static const char *nonnull (const char *s); +static const char *nonempty (const char *s); +void lt_setenv (const char *name, const char *value); +char *lt_extend_str (const char *orig_value, const char *add, int to_end); +void lt_update_exe_path (const char *name, const char *value); +void lt_update_lib_path (const char *name, const char *value); +char **prepare_spawn (char **argv); +void lt_dump_script (FILE *f); +EOF + + cat <= 0) + && (st.st_mode & (S_IXUSR | S_IXGRP | S_IXOTH))) + return 1; + else + return 0; +} + +int +make_executable (const char *path) +{ + int rval = 0; + struct stat st; + + lt_debugprintf (__FILE__, __LINE__, "(make_executable): %s\n", + nonempty (path)); + if ((!path) || (!*path)) + return 0; + + if (stat (path, &st) >= 0) + { + rval = chmod (path, st.st_mode | S_IXOTH | S_IXGRP | S_IXUSR); + } + return rval; +} + +/* Searches for the full path of the wrapper. Returns + newly allocated full path name if found, NULL otherwise + Does not chase symlinks, even on platforms that support them. +*/ +char * +find_executable (const char *wrapper) +{ + int has_slash = 0; + const char *p; + const char *p_next; + /* static buffer for getcwd */ + char tmp[LT_PATHMAX + 1]; + size_t tmp_len; + char *concat_name; + + lt_debugprintf (__FILE__, __LINE__, "(find_executable): %s\n", + nonempty (wrapper)); + + if ((wrapper == NULL) || (*wrapper == '\0')) + return NULL; + + /* Absolute path? */ +#if defined HAVE_DOS_BASED_FILE_SYSTEM + if (isalpha ((unsigned char) wrapper[0]) && wrapper[1] == ':') + { + concat_name = xstrdup (wrapper); + if (check_executable (concat_name)) + return concat_name; + XFREE (concat_name); + } + else + { +#endif + if (IS_DIR_SEPARATOR (wrapper[0])) + { + concat_name = xstrdup (wrapper); + if (check_executable (concat_name)) + return concat_name; + XFREE (concat_name); + } +#if defined HAVE_DOS_BASED_FILE_SYSTEM + } +#endif + + for (p = wrapper; *p; p++) + if (*p == '/') + { + has_slash = 1; + break; + } + if (!has_slash) + { + /* no slashes; search PATH */ + const char *path = getenv ("PATH"); + if (path != NULL) + { + for (p = path; *p; p = p_next) + { + const char *q; + size_t p_len; + for (q = p; *q; q++) + if (IS_PATH_SEPARATOR (*q)) + break; + p_len = (size_t) (q - p); + p_next = (*q == '\0' ? q : q + 1); + if (p_len == 0) + { + /* empty path: current directory */ + if (getcwd (tmp, LT_PATHMAX) == NULL) + lt_fatal (__FILE__, __LINE__, "getcwd failed: %s", + nonnull (strerror (errno))); + tmp_len = strlen (tmp); + concat_name = + XMALLOC (char, tmp_len + 1 + strlen (wrapper) + 1); + memcpy (concat_name, tmp, tmp_len); + concat_name[tmp_len] = '/'; + strcpy (concat_name + tmp_len + 1, wrapper); + } + else + { + concat_name = + XMALLOC (char, p_len + 1 + strlen (wrapper) + 1); + memcpy (concat_name, p, p_len); + concat_name[p_len] = '/'; + strcpy (concat_name + p_len + 1, wrapper); + } + if (check_executable (concat_name)) + return concat_name; + XFREE (concat_name); + } + } + /* not found in PATH; assume curdir */ + } + /* Relative path | not found in path: prepend cwd */ + if (getcwd (tmp, LT_PATHMAX) == NULL) + lt_fatal (__FILE__, __LINE__, "getcwd failed: %s", + nonnull (strerror (errno))); + tmp_len = strlen (tmp); + concat_name = XMALLOC (char, tmp_len + 1 + strlen (wrapper) + 1); + memcpy (concat_name, tmp, tmp_len); + concat_name[tmp_len] = '/'; + strcpy (concat_name + tmp_len + 1, wrapper); + + if (check_executable (concat_name)) + return concat_name; + XFREE (concat_name); + return NULL; +} + +char * +chase_symlinks (const char *pathspec) +{ +#ifndef S_ISLNK + return xstrdup (pathspec); +#else + char buf[LT_PATHMAX]; + struct stat s; + char *tmp_pathspec = xstrdup (pathspec); + char *p; + int has_symlinks = 0; + while (strlen (tmp_pathspec) && !has_symlinks) + { + lt_debugprintf (__FILE__, __LINE__, + "checking path component for symlinks: %s\n", + tmp_pathspec); + if (lstat (tmp_pathspec, &s) == 0) + { + if (S_ISLNK (s.st_mode) != 0) + { + has_symlinks = 1; + break; + } + + /* search backwards for last DIR_SEPARATOR */ + p = tmp_pathspec + strlen (tmp_pathspec) - 1; + while ((p > tmp_pathspec) && (!IS_DIR_SEPARATOR (*p))) + p--; + if ((p == tmp_pathspec) && (!IS_DIR_SEPARATOR (*p))) + { + /* no more DIR_SEPARATORS left */ + break; + } + *p = '\0'; + } + else + { + lt_fatal (__FILE__, __LINE__, + "error accessing file \"%s\": %s", + tmp_pathspec, nonnull (strerror (errno))); + } + } + XFREE (tmp_pathspec); + + if (!has_symlinks) + { + return xstrdup (pathspec); + } + + tmp_pathspec = realpath (pathspec, buf); + if (tmp_pathspec == 0) + { + lt_fatal (__FILE__, __LINE__, + "could not follow symlinks for %s", pathspec); + } + return xstrdup (tmp_pathspec); +#endif +} + +char * +strendzap (char *str, const char *pat) +{ + size_t len, patlen; + + assert (str != NULL); + assert (pat != NULL); + + len = strlen (str); + patlen = strlen (pat); + + if (patlen <= len) + { + str += len - patlen; + if (STREQ (str, pat)) + *str = '\0'; + } + return str; +} + +void +lt_debugprintf (const char *file, int line, const char *fmt, ...) +{ + va_list args; + if (lt_debug) + { + (void) fprintf (stderr, "%s:%s:%d: ", program_name, file, line); + va_start (args, fmt); + (void) vfprintf (stderr, fmt, args); + va_end (args); + } +} + +static void +lt_error_core (int exit_status, const char *file, + int line, const char *mode, + const char *message, va_list ap) +{ + fprintf (stderr, "%s:%s:%d: %s: ", program_name, file, line, mode); + vfprintf (stderr, message, ap); + fprintf (stderr, ".\n"); + + if (exit_status >= 0) + exit (exit_status); +} + +void +lt_fatal (const char *file, int line, const char *message, ...) +{ + va_list ap; + va_start (ap, message); + lt_error_core (EXIT_FAILURE, file, line, "FATAL", message, ap); + va_end (ap); +} + +static const char * +nonnull (const char *s) +{ + return s ? s : "(null)"; +} + +static const char * +nonempty (const char *s) +{ + return (s && !*s) ? "(empty)" : nonnull (s); +} + +void +lt_setenv (const char *name, const char *value) +{ + lt_debugprintf (__FILE__, __LINE__, + "(lt_setenv) setting '%s' to '%s'\n", + nonnull (name), nonnull (value)); + { +#ifdef HAVE_SETENV + /* always make a copy, for consistency with !HAVE_SETENV */ + char *str = xstrdup (value); + setenv (name, str, 1); +#else + size_t len = strlen (name) + 1 + strlen (value) + 1; + char *str = XMALLOC (char, len); + sprintf (str, "%s=%s", name, value); + if (putenv (str) != EXIT_SUCCESS) + { + XFREE (str); + } +#endif + } +} + +char * +lt_extend_str (const char *orig_value, const char *add, int to_end) +{ + char *new_value; + if (orig_value && *orig_value) + { + size_t orig_value_len = strlen (orig_value); + size_t add_len = strlen (add); + new_value = XMALLOC (char, add_len + orig_value_len + 1); + if (to_end) + { + strcpy (new_value, orig_value); + strcpy (new_value + orig_value_len, add); + } + else + { + strcpy (new_value, add); + strcpy (new_value + add_len, orig_value); + } + } + else + { + new_value = xstrdup (add); + } + return new_value; +} + +void +lt_update_exe_path (const char *name, const char *value) +{ + lt_debugprintf (__FILE__, __LINE__, + "(lt_update_exe_path) modifying '%s' by prepending '%s'\n", + nonnull (name), nonnull (value)); + + if (name && *name && value && *value) + { + char *new_value = lt_extend_str (getenv (name), value, 0); + /* some systems can't cope with a ':'-terminated path #' */ + size_t len = strlen (new_value); + while ((len > 0) && IS_PATH_SEPARATOR (new_value[len-1])) + { + new_value[--len] = '\0'; + } + lt_setenv (name, new_value); + XFREE (new_value); + } +} + +void +lt_update_lib_path (const char *name, const char *value) +{ + lt_debugprintf (__FILE__, __LINE__, + "(lt_update_lib_path) modifying '%s' by prepending '%s'\n", + nonnull (name), nonnull (value)); + + if (name && *name && value && *value) + { + char *new_value = lt_extend_str (getenv (name), value, 0); + lt_setenv (name, new_value); + XFREE (new_value); + } +} + +EOF + case $host_os in + mingw*) + cat <<"EOF" + +/* Prepares an argument vector before calling spawn(). + Note that spawn() does not by itself call the command interpreter + (getenv ("COMSPEC") != NULL ? getenv ("COMSPEC") : + ({ OSVERSIONINFO v; v.dwOSVersionInfoSize = sizeof(OSVERSIONINFO); + GetVersionEx(&v); + v.dwPlatformId == VER_PLATFORM_WIN32_NT; + }) ? "cmd.exe" : "command.com"). + Instead it simply concatenates the arguments, separated by ' ', and calls + CreateProcess(). We must quote the arguments since Win32 CreateProcess() + interprets characters like ' ', '\t', '\\', '"' (but not '<' and '>') in a + special way: + - Space and tab are interpreted as delimiters. They are not treated as + delimiters if they are surrounded by double quotes: "...". + - Unescaped double quotes are removed from the input. Their only effect is + that within double quotes, space and tab are treated like normal + characters. + - Backslashes not followed by double quotes are not special. + - But 2*n+1 backslashes followed by a double quote become + n backslashes followed by a double quote (n >= 0): + \" -> " + \\\" -> \" + \\\\\" -> \\" + */ +#define SHELL_SPECIAL_CHARS "\"\\ \001\002\003\004\005\006\007\010\011\012\013\014\015\016\017\020\021\022\023\024\025\026\027\030\031\032\033\034\035\036\037" +#define SHELL_SPACE_CHARS " \001\002\003\004\005\006\007\010\011\012\013\014\015\016\017\020\021\022\023\024\025\026\027\030\031\032\033\034\035\036\037" +char ** +prepare_spawn (char **argv) +{ + size_t argc; + char **new_argv; + size_t i; + + /* Count number of arguments. */ + for (argc = 0; argv[argc] != NULL; argc++) + ; + + /* Allocate new argument vector. */ + new_argv = XMALLOC (char *, argc + 1); + + /* Put quoted arguments into the new argument vector. */ + for (i = 0; i < argc; i++) + { + const char *string = argv[i]; + + if (string[0] == '\0') + new_argv[i] = xstrdup ("\"\""); + else if (strpbrk (string, SHELL_SPECIAL_CHARS) != NULL) + { + int quote_around = (strpbrk (string, SHELL_SPACE_CHARS) != NULL); + size_t length; + unsigned int backslashes; + const char *s; + char *quoted_string; + char *p; + + length = 0; + backslashes = 0; + if (quote_around) + length++; + for (s = string; *s != '\0'; s++) + { + char c = *s; + if (c == '"') + length += backslashes + 1; + length++; + if (c == '\\') + backslashes++; + else + backslashes = 0; + } + if (quote_around) + length += backslashes + 1; + + quoted_string = XMALLOC (char, length + 1); + + p = quoted_string; + backslashes = 0; + if (quote_around) + *p++ = '"'; + for (s = string; *s != '\0'; s++) + { + char c = *s; + if (c == '"') + { + unsigned int j; + for (j = backslashes + 1; j > 0; j--) + *p++ = '\\'; + } + *p++ = c; + if (c == '\\') + backslashes++; + else + backslashes = 0; + } + if (quote_around) + { + unsigned int j; + for (j = backslashes; j > 0; j--) + *p++ = '\\'; + *p++ = '"'; + } + *p = '\0'; + + new_argv[i] = quoted_string; + } + else + new_argv[i] = (char *) string; + } + new_argv[argc] = NULL; + + return new_argv; +} +EOF + ;; + esac + + cat <<"EOF" +void lt_dump_script (FILE* f) +{ +EOF + func_emit_wrapper yes | + $SED -n -e ' +s/^\(.\{79\}\)\(..*\)/\1\ +\2/ +h +s/\([\\"]\)/\\\1/g +s/$/\\n/ +s/\([^\n]*\).*/ fputs ("\1", f);/p +g +D' + cat <<"EOF" +} +EOF +} +# end: func_emit_cwrapperexe_src + +# func_win32_import_lib_p ARG +# True if ARG is an import lib, as indicated by $file_magic_cmd +func_win32_import_lib_p () +{ + $debug_cmd + + case `eval $file_magic_cmd \"\$1\" 2>/dev/null | $SED -e 10q` in + *import*) : ;; + *) false ;; + esac +} + +# func_suncc_cstd_abi +# !!ONLY CALL THIS FOR SUN CC AFTER $compile_command IS FULLY EXPANDED!! +# Several compiler flags select an ABI that is incompatible with the +# Cstd library. Avoid specifying it if any are in CXXFLAGS. +func_suncc_cstd_abi () +{ + $debug_cmd + + case " $compile_command " in + *" -compat=g "*|*\ -std=c++[0-9][0-9]\ *|*" -library=stdcxx4 "*|*" -library=stlport4 "*) + suncc_use_cstd_abi=no + ;; + *) + suncc_use_cstd_abi=yes + ;; + esac +} + +# func_mode_link arg... +func_mode_link () +{ + $debug_cmd + + case $host in + *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2* | *-cegcc*) + # It is impossible to link a dll without this setting, and + # we shouldn't force the makefile maintainer to figure out + # what system we are compiling for in order to pass an extra + # flag for every libtool invocation. + # allow_undefined=no + + # FIXME: Unfortunately, there are problems with the above when trying + # to make a dll that has undefined symbols, in which case not + # even a static library is built. For now, we need to specify + # -no-undefined on the libtool link line when we can be certain + # that all symbols are satisfied, otherwise we get a static library. + allow_undefined=yes + ;; + *) + allow_undefined=yes + ;; + esac + libtool_args=$nonopt + base_compile="$nonopt $@" + compile_command=$nonopt + finalize_command=$nonopt + + compile_rpath= + finalize_rpath= + compile_shlibpath= + finalize_shlibpath= + convenience= + old_convenience= + deplibs= + old_deplibs= + compiler_flags= + linker_flags= + dllsearchpath= + lib_search_path=`pwd` + inst_prefix_dir= + new_inherited_linker_flags= + + avoid_version=no + bindir= + dlfiles= + dlprefiles= + dlself=no + export_dynamic=no + export_symbols= + export_symbols_regex= + generated= + libobjs= + ltlibs= + module=no + no_install=no + objs= + os2dllname= + non_pic_objects= + precious_files_regex= + prefer_static_libs=no + preload=false + prev= + prevarg= + release= + rpath= + xrpath= + perm_rpath= + temp_rpath= + thread_safe=no + vinfo= + vinfo_number=no + weak_libs= + single_module=$wl-single_module + func_infer_tag $base_compile + + # We need to know -static, to get the right output filenames. + for arg + do + case $arg in + -shared) + test yes != "$build_libtool_libs" \ + && func_fatal_configuration "cannot build a shared library" + build_old_libs=no + break + ;; + -all-static | -static | -static-uninstalled-libs | -static-libtool-libs) + case $arg in + -all-static | -static) + if test yes = "$build_libtool_libs" && test -z "$link_static_flag"; then + func_warning "complete static linking is impossible in this configuration" + fi + if test -n "$link_static_flag"; then + dlopen_self=$dlopen_self_static + fi + prefer_static_libs=yes + ;; + -static-uninstalled-libs) + if test -z "$pic_flag" && test -n "$link_static_flag"; then + dlopen_self=$dlopen_self_static + fi + prefer_static_libs=built + ;; + -static-libtool-libs) + if test -z "$pic_flag" && test -n "$link_static_flag"; then + dlopen_self=$dlopen_self_static + fi + prefer_static_libs=yes + ;; + esac + build_libtool_libs=no + build_old_libs=yes + break + ;; + esac + done + + # See if our shared archives depend on static archives. + test -n "$old_archive_from_new_cmds" && build_old_libs=yes + + # Go through the arguments, transforming them on the way. + while test "$#" -gt 0; do + arg=$1 + shift + func_quote_arg pretty,unquoted "$arg" + qarg=$func_quote_arg_unquoted_result + func_append libtool_args " $func_quote_arg_result" + + # If the previous option needs an argument, assign it. + if test -n "$prev"; then + case $prev in + output) + func_append compile_command " @OUTPUT@" + func_append finalize_command " @OUTPUT@" + ;; + esac + + case $prev in + bindir) + bindir=$arg + prev= + continue + ;; + dlfiles|dlprefiles) + $preload || { + # Add the symbol object into the linking commands. + func_append compile_command " @SYMFILE@" + func_append finalize_command " @SYMFILE@" + preload=: + } + case $arg in + *.la | *.lo) ;; # We handle these cases below. + force) + if test no = "$dlself"; then + dlself=needless + export_dynamic=yes + fi + prev= + continue + ;; + self) + if test dlprefiles = "$prev"; then + dlself=yes + elif test dlfiles = "$prev" && test yes != "$dlopen_self"; then + dlself=yes + else + dlself=needless + export_dynamic=yes + fi + prev= + continue + ;; + *) + if test dlfiles = "$prev"; then + func_append dlfiles " $arg" + else + func_append dlprefiles " $arg" + fi + prev= + continue + ;; + esac + ;; + expsyms) + export_symbols=$arg + test -f "$arg" \ + || func_fatal_error "symbol file '$arg' does not exist" + prev= + continue + ;; + expsyms_regex) + export_symbols_regex=$arg + prev= + continue + ;; + framework) + case $host in + *-*-darwin*) + case "$deplibs " in + *" $qarg.ltframework "*) ;; + *) func_append deplibs " $qarg.ltframework" # this is fixed later + ;; + esac + ;; + esac + prev= + continue + ;; + inst_prefix) + inst_prefix_dir=$arg + prev= + continue + ;; + mllvm) + # Clang does not use LLVM to link, so we can simply discard any + # '-mllvm $arg' options when doing the link step. + prev= + continue + ;; + objectlist) + if test -f "$arg"; then + save_arg=$arg + moreargs= + for fil in `cat "$save_arg"` + do +# func_append moreargs " $fil" + arg=$fil + # A libtool-controlled object. + + # Check to see that this really is a libtool object. + if func_lalib_unsafe_p "$arg"; then + pic_object= + non_pic_object= + + # Read the .lo file + func_source "$arg" + + if test -z "$pic_object" || + test -z "$non_pic_object" || + test none = "$pic_object" && + test none = "$non_pic_object"; then + func_fatal_error "cannot find name of object for '$arg'" + fi + + # Extract subdirectory from the argument. + func_dirname "$arg" "/" "" + xdir=$func_dirname_result + + if test none != "$pic_object"; then + # Prepend the subdirectory the object is found in. + pic_object=$xdir$pic_object + + if test dlfiles = "$prev"; then + if test yes = "$build_libtool_libs" && test yes = "$dlopen_support"; then + func_append dlfiles " $pic_object" + prev= + continue + else + # If libtool objects are unsupported, then we need to preload. + prev=dlprefiles + fi + fi + + # CHECK ME: I think I busted this. -Ossama + if test dlprefiles = "$prev"; then + # Preload the old-style object. + func_append dlprefiles " $pic_object" + prev= + fi + + # A PIC object. + func_append libobjs " $pic_object" + arg=$pic_object + fi + + # Non-PIC object. + if test none != "$non_pic_object"; then + # Prepend the subdirectory the object is found in. + non_pic_object=$xdir$non_pic_object + + # A standard non-PIC object + func_append non_pic_objects " $non_pic_object" + if test -z "$pic_object" || test none = "$pic_object"; then + arg=$non_pic_object + fi + else + # If the PIC object exists, use it instead. + # $xdir was prepended to $pic_object above. + non_pic_object=$pic_object + func_append non_pic_objects " $non_pic_object" + fi + else + # Only an error if not doing a dry-run. + if $opt_dry_run; then + # Extract subdirectory from the argument. + func_dirname "$arg" "/" "" + xdir=$func_dirname_result + + func_lo2o "$arg" + pic_object=$xdir$objdir/$func_lo2o_result + non_pic_object=$xdir$func_lo2o_result + func_append libobjs " $pic_object" + func_append non_pic_objects " $non_pic_object" + else + func_fatal_error "'$arg' is not a valid libtool object" + fi + fi + done + else + func_fatal_error "link input file '$arg' does not exist" + fi + arg=$save_arg + prev= + continue + ;; + os2dllname) + os2dllname=$arg + prev= + continue + ;; + precious_regex) + precious_files_regex=$arg + prev= + continue + ;; + release) + release=-$arg + prev= + continue + ;; + rpath | xrpath) + # We need an absolute path. + case $arg in + [\\/]* | [A-Za-z]:[\\/]*) ;; + *) + func_fatal_error "only absolute run-paths are allowed" + ;; + esac + if test rpath = "$prev"; then + case "$rpath " in + *" $arg "*) ;; + *) func_append rpath " $arg" ;; + esac + else + case "$xrpath " in + *" $arg "*) ;; + *) func_append xrpath " $arg" ;; + esac + fi + prev= + continue + ;; + shrext) + shrext_cmds=$arg + prev= + continue + ;; + weak) + func_append weak_libs " $arg" + prev= + continue + ;; + xassembler) + func_append compiler_flags " -Xassembler $qarg" + prev= + func_append compile_command " -Xassembler $qarg" + func_append finalize_command " -Xassembler $qarg" + continue + ;; + xcclinker) + func_append linker_flags " $qarg" + func_append compiler_flags " $qarg" + prev= + func_append compile_command " $qarg" + func_append finalize_command " $qarg" + continue + ;; + xcompiler) + func_append compiler_flags " $qarg" + prev= + func_append compile_command " $qarg" + func_append finalize_command " $qarg" + continue + ;; + xlinker) + func_append linker_flags " $qarg" + func_append compiler_flags " $wl$qarg" + prev= + func_append compile_command " $wl$qarg" + func_append finalize_command " $wl$qarg" + continue + ;; + *) + eval "$prev=\"\$arg\"" + prev= + continue + ;; + esac + fi # test -n "$prev" + + prevarg=$arg + + case $arg in + -all-static | -static) + if test -n "$link_static_flag"; then + # See comment for -static flag below, for more details. + func_append compile_command " $link_static_flag" + func_append finalize_command " $link_static_flag" + fi + continue + ;; + + -allow-undefined) + # FIXME: remove this flag sometime in the future. + func_fatal_error "'-allow-undefined' must not be used because it is the default" + ;; + + -avoid-version) + avoid_version=yes + continue + ;; + + -bindir) + prev=bindir + continue + ;; + + -dlopen) + prev=dlfiles + continue + ;; + + -dlpreopen) + prev=dlprefiles + continue + ;; + + -export-dynamic) + export_dynamic=yes + continue + ;; + + -export-symbols | -export-symbols-regex) + if test -n "$export_symbols" || test -n "$export_symbols_regex"; then + func_fatal_error "more than one -exported-symbols argument is not allowed" + fi + if test X-export-symbols = "X$arg"; then + prev=expsyms + else + prev=expsyms_regex + fi + continue + ;; + + -framework) + prev=framework + continue + ;; + + -inst-prefix-dir) + prev=inst_prefix + continue + ;; + + # The native IRIX linker understands -LANG:*, -LIST:* and -LNO:* + # so, if we see these flags be careful not to treat them like -L + -L[A-Z][A-Z]*:*) + case $with_gcc/$host in + no/*-*-irix* | /*-*-irix*) + func_append compile_command " $arg" + func_append finalize_command " $arg" + ;; + esac + continue + ;; + + -L*) + func_stripname "-L" '' "$arg" + if test -z "$func_stripname_result"; then + if test "$#" -gt 0; then + func_fatal_error "require no space between '-L' and '$1'" + else + func_fatal_error "need path for '-L' option" + fi + fi + func_resolve_sysroot "$func_stripname_result" + dir=$func_resolve_sysroot_result + # We need an absolute path. + case $dir in + [\\/]* | [A-Za-z]:[\\/]*) ;; + *) + absdir=`cd "$dir" && pwd` + test -z "$absdir" && \ + func_fatal_error "cannot determine absolute directory name of '$dir'" + dir=$absdir + ;; + esac + case "$deplibs " in + *" -L$dir "* | *" $arg "*) + # Will only happen for absolute or sysroot arguments + ;; + *) + # Preserve sysroot, but never include relative directories + case $dir in + [\\/]* | [A-Za-z]:[\\/]* | =*) func_append deplibs " $arg" ;; + *) func_append deplibs " -L$dir" ;; + esac + func_append lib_search_path " $dir" + ;; + esac + case $host in + *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2* | *-cegcc*) + testbindir=`$ECHO "$dir" | $SED 's*/lib$*/bin*'` + case :$dllsearchpath: in + *":$dir:"*) ;; + ::) dllsearchpath=$dir;; + *) func_append dllsearchpath ":$dir";; + esac + case :$dllsearchpath: in + *":$testbindir:"*) ;; + ::) dllsearchpath=$testbindir;; + *) func_append dllsearchpath ":$testbindir";; + esac + ;; + esac + continue + ;; + + -l*) + if test X-lc = "X$arg" || test X-lm = "X$arg"; then + case $host in + *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-beos* | *-cegcc* | *-*-haiku*) + # These systems don't actually have a C or math library (as such) + continue + ;; + *-*-os2*) + # These systems don't actually have a C library (as such) + test X-lc = "X$arg" && continue + ;; + *-*-openbsd* | *-*-freebsd* | *-*-dragonfly* | *-*-bitrig* | *-*-midnightbsd*) + # Do not include libc due to us having libc/libc_r. + test X-lc = "X$arg" && continue + ;; + *-*-rhapsody* | *-*-darwin1.[012]) + # Rhapsody C and math libraries are in the System framework + func_append deplibs " System.ltframework" + continue + ;; + *-*-sco3.2v5* | *-*-sco5v6*) + # Causes problems with __ctype + test X-lc = "X$arg" && continue + ;; + *-*-sysv4.2uw2* | *-*-sysv5* | *-*-unixware* | *-*-OpenUNIX*) + # Compiler inserts libc in the correct place for threads to work + test X-lc = "X$arg" && continue + ;; + esac + elif test X-lc_r = "X$arg"; then + case $host in + *-*-openbsd* | *-*-freebsd* | *-*-dragonfly* | *-*-bitrig* | *-*-midnightbsd*) + # Do not include libc_r directly, use -pthread flag. + continue + ;; + esac + fi + func_append deplibs " $arg" + continue + ;; + + -mllvm) + prev=mllvm + continue + ;; + + -module) + module=yes + continue + ;; + + # Tru64 UNIX uses -model [arg] to determine the layout of C++ + # classes, name mangling, and exception handling. + # Darwin uses the -arch flag to determine output architecture. + -model|-arch|-isysroot|--sysroot) + func_append compiler_flags " $arg" + func_append compile_command " $arg" + func_append finalize_command " $arg" + prev=xcompiler + continue + ;; + # Solaris ld rejects as of 11.4. Refer to Oracle bug 22985199. + -pthread) + case $host in + *solaris2*) ;; + *) + case "$new_inherited_linker_flags " in + *" $arg "*) ;; + * ) func_append new_inherited_linker_flags " $arg" ;; + esac + ;; + esac + continue + ;; + -mt|-mthreads|-kthread|-Kthread|-pthreads|--thread-safe \ + |-threads|-fopenmp|-openmp|-mp|-xopenmp|-omp|-qsmp=*) + func_append compiler_flags " $arg" + func_append compile_command " $arg" + func_append finalize_command " $arg" + case "$new_inherited_linker_flags " in + *" $arg "*) ;; + * ) func_append new_inherited_linker_flags " $arg" ;; + esac + continue + ;; + + -multi_module) + single_module=$wl-multi_module + continue + ;; + + -no-fast-install) + fast_install=no + continue + ;; + + -no-install) + case $host in + *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2* | *-*-darwin* | *-cegcc*) + # The PATH hackery in wrapper scripts is required on Windows + # and Darwin in order for the loader to find any dlls it needs. + func_warning "'-no-install' is ignored for $host" + func_warning "assuming '-no-fast-install' instead" + fast_install=no + ;; + *) no_install=yes ;; + esac + continue + ;; + + -no-undefined) + allow_undefined=no + continue + ;; + + -objectlist) + prev=objectlist + continue + ;; + + -os2dllname) + prev=os2dllname + continue + ;; + + -o) prev=output ;; + + -precious-files-regex) + prev=precious_regex + continue + ;; + + -release) + prev=release + continue + ;; + + -rpath) + prev=rpath + continue + ;; + + -R) + prev=xrpath + continue + ;; + + -R*) + func_stripname '-R' '' "$arg" + dir=$func_stripname_result + # We need an absolute path. + case $dir in + [\\/]* | [A-Za-z]:[\\/]*) ;; + =*) + func_stripname '=' '' "$dir" + dir=$lt_sysroot$func_stripname_result + ;; + *) + func_fatal_error "only absolute run-paths are allowed" + ;; + esac + case "$xrpath " in + *" $dir "*) ;; + *) func_append xrpath " $dir" ;; + esac + continue + ;; + + -shared) + # The effects of -shared are defined in a previous loop. + continue + ;; + + -shrext) + prev=shrext + continue + ;; + + -static-uninstalled-libs | -static-libtool-libs) + # The effects of -static-uninstalled-libs are defined in a previous + # loop. We used to do the same as -all-static on platforms that + # didn't have a PIC flag, but the assumption that the effects + # would be equivalent was wrong. It would break on at least + # Digital Unix and AIX. + continue + ;; + + -thread-safe) + thread_safe=yes + continue + ;; + + -version-info) + prev=vinfo + continue + ;; + + -version-number) + prev=vinfo + vinfo_number=yes + continue + ;; + + -weak) + prev=weak + continue + ;; + + -Wc,*) + func_stripname '-Wc,' '' "$arg" + args=$func_stripname_result + arg= + save_ifs=$IFS; IFS=, + for flag in $args; do + IFS=$save_ifs + func_quote_arg pretty "$flag" + func_append arg " $func_quote_arg_result" + func_append compiler_flags " $func_quote_arg_result" + done + IFS=$save_ifs + func_stripname ' ' '' "$arg" + arg=$func_stripname_result + ;; + + -Wl,*) + func_stripname '-Wl,' '' "$arg" + args=$func_stripname_result + arg= + save_ifs=$IFS; IFS=, + for flag in $args; do + IFS=$save_ifs + func_quote_arg pretty "$flag" + func_append arg " $wl$func_quote_arg_result" + func_append compiler_flags " $wl$func_quote_arg_result" + func_append linker_flags " $func_quote_arg_result" + done + IFS=$save_ifs + func_stripname ' ' '' "$arg" + arg=$func_stripname_result + ;; + + -Xassembler) + prev=xassembler + continue + ;; + + -Xcompiler) + prev=xcompiler + continue + ;; + + -Xlinker) + prev=xlinker + continue + ;; + + -XCClinker) + prev=xcclinker + continue + ;; + + # -msg_* for osf cc + -msg_*) + func_quote_arg pretty "$arg" + arg=$func_quote_arg_result + ;; + + # Flags to be passed through unchanged, with rationale: + # -64, -mips[0-9] enable 64-bit mode for the SGI compiler + # -r[0-9][0-9]* specify processor for the SGI compiler + # -xarch=*, -xtarget=* enable 64-bit mode for the Sun compiler + # +DA*, +DD* enable 64-bit mode for the HP compiler + # -q* compiler args for the IBM compiler + # -m*, -t[45]*, -txscale* architecture-specific flags for GCC + # -F/path path to uninstalled frameworks, gcc on darwin + # -p, -pg, --coverage, -fprofile-* profiling flags for GCC + # -fstack-protector* stack protector flags for GCC + # @file GCC response files + # -tp=* Portland pgcc target processor selection + # --sysroot=* for sysroot support + # -O*, -g*, -flto*, -fwhopr*, -fuse-linker-plugin GCC link-time optimization + # -specs=* GCC specs files + # -stdlib=* select c++ std lib with clang + # -fsanitize=* Clang/GCC memory and address sanitizer + # -fuse-ld=* Linker select flags for GCC + # -Wa,* Pass flags directly to the assembler + -64|-mips[0-9]|-r[0-9][0-9]*|-xarch=*|-xtarget=*|+DA*|+DD*|-q*|-m*| \ + -t[45]*|-txscale*|-p|-pg|--coverage|-fprofile-*|-F*|@*|-tp=*|--sysroot=*| \ + -O*|-g*|-flto*|-fwhopr*|-fuse-linker-plugin|-fstack-protector*|-stdlib=*| \ + -specs=*|-fsanitize=*|-fuse-ld=*|-Wa,*) + func_quote_arg pretty "$arg" + arg=$func_quote_arg_result + func_append compile_command " $arg" + func_append finalize_command " $arg" + func_append compiler_flags " $arg" + continue + ;; + + -Z*) + if test os2 = "`expr $host : '.*\(os2\)'`"; then + # OS/2 uses -Zxxx to specify OS/2-specific options + compiler_flags="$compiler_flags $arg" + func_append compile_command " $arg" + func_append finalize_command " $arg" + case $arg in + -Zlinker | -Zstack) + prev=xcompiler + ;; + esac + continue + else + # Otherwise treat like 'Some other compiler flag' below + func_quote_arg pretty "$arg" + arg=$func_quote_arg_result + fi + ;; + + # Some other compiler flag. + -* | +*) + func_quote_arg pretty "$arg" + arg=$func_quote_arg_result + ;; + + *.$objext) + # A standard object. + func_append objs " $arg" + ;; + + *.lo) + # A libtool-controlled object. + + # Check to see that this really is a libtool object. + if func_lalib_unsafe_p "$arg"; then + pic_object= + non_pic_object= + + # Read the .lo file + func_source "$arg" + + if test -z "$pic_object" || + test -z "$non_pic_object" || + test none = "$pic_object" && + test none = "$non_pic_object"; then + func_fatal_error "cannot find name of object for '$arg'" + fi + + # Extract subdirectory from the argument. + func_dirname "$arg" "/" "" + xdir=$func_dirname_result + + test none = "$pic_object" || { + # Prepend the subdirectory the object is found in. + pic_object=$xdir$pic_object + + if test dlfiles = "$prev"; then + if test yes = "$build_libtool_libs" && test yes = "$dlopen_support"; then + func_append dlfiles " $pic_object" + prev= + continue + else + # If libtool objects are unsupported, then we need to preload. + prev=dlprefiles + fi + fi + + # CHECK ME: I think I busted this. -Ossama + if test dlprefiles = "$prev"; then + # Preload the old-style object. + func_append dlprefiles " $pic_object" + prev= + fi + + # A PIC object. + func_append libobjs " $pic_object" + arg=$pic_object + } + + # Non-PIC object. + if test none != "$non_pic_object"; then + # Prepend the subdirectory the object is found in. + non_pic_object=$xdir$non_pic_object + + # A standard non-PIC object + func_append non_pic_objects " $non_pic_object" + if test -z "$pic_object" || test none = "$pic_object"; then + arg=$non_pic_object + fi + else + # If the PIC object exists, use it instead. + # $xdir was prepended to $pic_object above. + non_pic_object=$pic_object + func_append non_pic_objects " $non_pic_object" + fi + else + # Only an error if not doing a dry-run. + if $opt_dry_run; then + # Extract subdirectory from the argument. + func_dirname "$arg" "/" "" + xdir=$func_dirname_result + + func_lo2o "$arg" + pic_object=$xdir$objdir/$func_lo2o_result + non_pic_object=$xdir$func_lo2o_result + func_append libobjs " $pic_object" + func_append non_pic_objects " $non_pic_object" + else + func_fatal_error "'$arg' is not a valid libtool object" + fi + fi + ;; + + *.$libext) + # An archive. + func_append deplibs " $arg" + func_append old_deplibs " $arg" + continue + ;; + + *.la) + # A libtool-controlled library. + + func_resolve_sysroot "$arg" + if test dlfiles = "$prev"; then + # This library was specified with -dlopen. + func_append dlfiles " $func_resolve_sysroot_result" + prev= + elif test dlprefiles = "$prev"; then + # The library was specified with -dlpreopen. + func_append dlprefiles " $func_resolve_sysroot_result" + prev= + else + func_append deplibs " $func_resolve_sysroot_result" + fi + continue + ;; + + # Some other compiler argument. + *) + # Unknown arguments in both finalize_command and compile_command need + # to be aesthetically quoted because they are evaled later. + func_quote_arg pretty "$arg" + arg=$func_quote_arg_result + ;; + esac # arg + + # Now actually substitute the argument into the commands. + if test -n "$arg"; then + func_append compile_command " $arg" + func_append finalize_command " $arg" + fi + done # argument parsing loop + + test -n "$prev" && \ + func_fatal_help "the '$prevarg' option requires an argument" + + if test yes = "$export_dynamic" && test -n "$export_dynamic_flag_spec"; then + eval arg=\"$export_dynamic_flag_spec\" + func_append compile_command " $arg" + func_append finalize_command " $arg" + fi + + oldlibs= + # calculate the name of the file, without its directory + func_basename "$output" + outputname=$func_basename_result + libobjs_save=$libobjs + + if test -n "$shlibpath_var"; then + # get the directories listed in $shlibpath_var + eval shlib_search_path=\`\$ECHO \"\$$shlibpath_var\" \| \$SED \'s/:/ /g\'\` + else + shlib_search_path= + fi + eval sys_lib_search_path=\"$sys_lib_search_path_spec\" + eval sys_lib_dlsearch_path=\"$sys_lib_dlsearch_path_spec\" + + # Definition is injected by LT_CONFIG during libtool generation. + func_munge_path_list sys_lib_dlsearch_path "$LT_SYS_LIBRARY_PATH" + + func_dirname "$output" "/" "" + output_objdir=$func_dirname_result$objdir + func_to_tool_file "$output_objdir/" + tool_output_objdir=$func_to_tool_file_result + # Create the object directory. + func_mkdir_p "$output_objdir" + + # Determine the type of output + case $output in + "") + func_fatal_help "you must specify an output file" + ;; + *.$libext) linkmode=oldlib ;; + *.lo | *.$objext) linkmode=obj ;; + *.la) linkmode=lib ;; + *) linkmode=prog ;; # Anything else should be a program. + esac + + specialdeplibs= + + libs= + # Find all interdependent deplibs by searching for libraries + # that are linked more than once (e.g. -la -lb -la) + for deplib in $deplibs; do + if $opt_preserve_dup_deps; then + case "$libs " in + *" $deplib "*) func_append specialdeplibs " $deplib" ;; + esac + fi + func_append libs " $deplib" + done + + if test lib = "$linkmode"; then + libs="$predeps $libs $compiler_lib_search_path $postdeps" + + # Compute libraries that are listed more than once in $predeps + # $postdeps and mark them as special (i.e., whose duplicates are + # not to be eliminated). + pre_post_deps= + if $opt_duplicate_compiler_generated_deps; then + for pre_post_dep in $predeps $postdeps; do + case "$pre_post_deps " in + *" $pre_post_dep "*) func_append specialdeplibs " $pre_post_deps" ;; + esac + func_append pre_post_deps " $pre_post_dep" + done + fi + pre_post_deps= + fi + + deplibs= + newdependency_libs= + newlib_search_path= + need_relink=no # whether we're linking any uninstalled libtool libraries + notinst_deplibs= # not-installed libtool libraries + notinst_path= # paths that contain not-installed libtool libraries + + case $linkmode in + lib) + passes="conv dlpreopen link" + for file in $dlfiles $dlprefiles; do + case $file in + *.la) ;; + *) + func_fatal_help "libraries can '-dlopen' only libtool libraries: $file" + ;; + esac + done + ;; + prog) + compile_deplibs= + finalize_deplibs= + alldeplibs=false + newdlfiles= + newdlprefiles= + passes="conv scan dlopen dlpreopen link" + ;; + *) passes="conv" + ;; + esac + + for pass in $passes; do + # The preopen pass in lib mode reverses $deplibs; put it back here + # so that -L comes before libs that need it for instance... + if test lib,link = "$linkmode,$pass"; then + ## FIXME: Find the place where the list is rebuilt in the wrong + ## order, and fix it there properly + tmp_deplibs= + for deplib in $deplibs; do + tmp_deplibs="$deplib $tmp_deplibs" + done + deplibs=$tmp_deplibs + fi + + if test lib,link = "$linkmode,$pass" || + test prog,scan = "$linkmode,$pass"; then + libs=$deplibs + deplibs= + fi + if test prog = "$linkmode"; then + case $pass in + dlopen) libs=$dlfiles ;; + dlpreopen) libs=$dlprefiles ;; + link) libs="$deplibs %DEPLIBS% $dependency_libs" ;; + esac + fi + if test lib,dlpreopen = "$linkmode,$pass"; then + # Collect and forward deplibs of preopened libtool libs + for lib in $dlprefiles; do + # Ignore non-libtool-libs + dependency_libs= + func_resolve_sysroot "$lib" + case $lib in + *.la) func_source "$func_resolve_sysroot_result" ;; + esac + + # Collect preopened libtool deplibs, except any this library + # has declared as weak libs + for deplib in $dependency_libs; do + func_basename "$deplib" + deplib_base=$func_basename_result + case " $weak_libs " in + *" $deplib_base "*) ;; + *) func_append deplibs " $deplib" ;; + esac + done + done + libs=$dlprefiles + fi + if test dlopen = "$pass"; then + # Collect dlpreopened libraries + save_deplibs=$deplibs + deplibs= + fi + + for deplib in $libs; do + lib= + found=false + case $deplib in + -mt|-mthreads|-kthread|-Kthread|-pthread|-pthreads|--thread-safe \ + |-threads|-fopenmp|-openmp|-mp|-xopenmp|-omp|-qsmp=*) + if test prog,link = "$linkmode,$pass"; then + compile_deplibs="$deplib $compile_deplibs" + finalize_deplibs="$deplib $finalize_deplibs" + else + func_append compiler_flags " $deplib" + if test lib = "$linkmode"; then + case "$new_inherited_linker_flags " in + *" $deplib "*) ;; + * ) func_append new_inherited_linker_flags " $deplib" ;; + esac + fi + fi + continue + ;; + -l*) + if test lib != "$linkmode" && test prog != "$linkmode"; then + func_warning "'-l' is ignored for archives/objects" + continue + fi + func_stripname '-l' '' "$deplib" + name=$func_stripname_result + if test lib = "$linkmode"; then + searchdirs="$newlib_search_path $lib_search_path $compiler_lib_search_dirs $sys_lib_search_path $shlib_search_path" + else + searchdirs="$newlib_search_path $lib_search_path $sys_lib_search_path $shlib_search_path" + fi + for searchdir in $searchdirs; do + for search_ext in .la $std_shrext .so .a; do + # Search the libtool library + lib=$searchdir/lib$name$search_ext + if test -f "$lib"; then + if test .la = "$search_ext"; then + found=: + else + found=false + fi + break 2 + fi + done + done + if $found; then + # deplib is a libtool library + # If $allow_libtool_libs_with_static_runtimes && $deplib is a stdlib, + # We need to do some special things here, and not later. + if test yes = "$allow_libtool_libs_with_static_runtimes"; then + case " $predeps $postdeps " in + *" $deplib "*) + if func_lalib_p "$lib"; then + library_names= + old_library= + func_source "$lib" + for l in $old_library $library_names; do + ll=$l + done + if test "X$ll" = "X$old_library"; then # only static version available + found=false + func_dirname "$lib" "" "." + ladir=$func_dirname_result + lib=$ladir/$old_library + if test prog,link = "$linkmode,$pass"; then + compile_deplibs="$deplib $compile_deplibs" + finalize_deplibs="$deplib $finalize_deplibs" + else + deplibs="$deplib $deplibs" + test lib = "$linkmode" && newdependency_libs="$deplib $newdependency_libs" + fi + continue + fi + fi + ;; + *) ;; + esac + fi + else + # deplib doesn't seem to be a libtool library + if test prog,link = "$linkmode,$pass"; then + compile_deplibs="$deplib $compile_deplibs" + finalize_deplibs="$deplib $finalize_deplibs" + else + deplibs="$deplib $deplibs" + test lib = "$linkmode" && newdependency_libs="$deplib $newdependency_libs" + fi + continue + fi + ;; # -l + *.ltframework) + if test prog,link = "$linkmode,$pass"; then + compile_deplibs="$deplib $compile_deplibs" + finalize_deplibs="$deplib $finalize_deplibs" + else + deplibs="$deplib $deplibs" + if test lib = "$linkmode"; then + case "$new_inherited_linker_flags " in + *" $deplib "*) ;; + * ) func_append new_inherited_linker_flags " $deplib" ;; + esac + fi + fi + continue + ;; + -L*) + case $linkmode in + lib) + deplibs="$deplib $deplibs" + test conv = "$pass" && continue + newdependency_libs="$deplib $newdependency_libs" + func_stripname '-L' '' "$deplib" + func_resolve_sysroot "$func_stripname_result" + func_append newlib_search_path " $func_resolve_sysroot_result" + ;; + prog) + if test conv = "$pass"; then + deplibs="$deplib $deplibs" + continue + fi + if test scan = "$pass"; then + deplibs="$deplib $deplibs" + else + compile_deplibs="$deplib $compile_deplibs" + finalize_deplibs="$deplib $finalize_deplibs" + fi + func_stripname '-L' '' "$deplib" + func_resolve_sysroot "$func_stripname_result" + func_append newlib_search_path " $func_resolve_sysroot_result" + ;; + *) + func_warning "'-L' is ignored for archives/objects" + ;; + esac # linkmode + continue + ;; # -L + -R*) + if test link = "$pass"; then + func_stripname '-R' '' "$deplib" + func_resolve_sysroot "$func_stripname_result" + dir=$func_resolve_sysroot_result + # Make sure the xrpath contains only unique directories. + case "$xrpath " in + *" $dir "*) ;; + *) func_append xrpath " $dir" ;; + esac + fi + deplibs="$deplib $deplibs" + continue + ;; + *.la) + func_resolve_sysroot "$deplib" + lib=$func_resolve_sysroot_result + ;; + *.$libext) + if test conv = "$pass"; then + deplibs="$deplib $deplibs" + continue + fi + case $linkmode in + lib) + # Linking convenience modules into shared libraries is allowed, + # but linking other static libraries is non-portable. + case " $dlpreconveniencelibs " in + *" $deplib "*) ;; + *) + valid_a_lib=false + case $deplibs_check_method in + match_pattern*) + set dummy $deplibs_check_method; shift + match_pattern_regex=`expr "$deplibs_check_method" : "$1 \(.*\)"` + if eval "\$ECHO \"$deplib\"" 2>/dev/null | $SED 10q \ + | $EGREP "$match_pattern_regex" > /dev/null; then + valid_a_lib=: + fi + ;; + pass_all) + valid_a_lib=: + ;; + esac + if $valid_a_lib; then + echo + $ECHO "*** Warning: Linking the shared library $output against the" + $ECHO "*** static library $deplib is not portable!" + deplibs="$deplib $deplibs" + else + echo + $ECHO "*** Warning: Trying to link with static lib archive $deplib." + echo "*** I have the capability to make that library automatically link in when" + echo "*** you link to this library. But I can only do this if you have a" + echo "*** shared version of the library, which you do not appear to have" + echo "*** because the file extensions .$libext of this argument makes me believe" + echo "*** that it is just a static archive that I should not use here." + fi + ;; + esac + continue + ;; + prog) + if test link != "$pass"; then + deplibs="$deplib $deplibs" + else + compile_deplibs="$deplib $compile_deplibs" + finalize_deplibs="$deplib $finalize_deplibs" + fi + continue + ;; + esac # linkmode + ;; # *.$libext + *.lo | *.$objext) + if test conv = "$pass"; then + deplibs="$deplib $deplibs" + elif test prog = "$linkmode"; then + if test dlpreopen = "$pass" || test yes != "$dlopen_support" || test no = "$build_libtool_libs"; then + # If there is no dlopen support or we're linking statically, + # we need to preload. + func_append newdlprefiles " $deplib" + compile_deplibs="$deplib $compile_deplibs" + finalize_deplibs="$deplib $finalize_deplibs" + else + func_append newdlfiles " $deplib" + fi + fi + continue + ;; + %DEPLIBS%) + alldeplibs=: + continue + ;; + esac # case $deplib + + $found || test -f "$lib" \ + || func_fatal_error "cannot find the library '$lib' or unhandled argument '$deplib'" + + # Check to see that this really is a libtool archive. + func_lalib_unsafe_p "$lib" \ + || func_fatal_error "'$lib' is not a valid libtool archive" + + func_dirname "$lib" "" "." + ladir=$func_dirname_result + + dlname= + dlopen= + dlpreopen= + libdir= + library_names= + old_library= + inherited_linker_flags= + # If the library was installed with an old release of libtool, + # it will not redefine variables installed, or shouldnotlink + installed=yes + shouldnotlink=no + avoidtemprpath= + + + # Read the .la file + func_source "$lib" + + # Convert "-framework foo" to "foo.ltframework" + if test -n "$inherited_linker_flags"; then + tmp_inherited_linker_flags=`$ECHO "$inherited_linker_flags" | $SED 's/-framework \([^ $]*\)/\1.ltframework/g'` + for tmp_inherited_linker_flag in $tmp_inherited_linker_flags; do + case " $new_inherited_linker_flags " in + *" $tmp_inherited_linker_flag "*) ;; + *) func_append new_inherited_linker_flags " $tmp_inherited_linker_flag";; + esac + done + fi + dependency_libs=`$ECHO " $dependency_libs" | $SED 's% \([^ $]*\).ltframework% -framework \1%g'` + if test lib,link = "$linkmode,$pass" || + test prog,scan = "$linkmode,$pass" || + { test prog != "$linkmode" && test lib != "$linkmode"; }; then + test -n "$dlopen" && func_append dlfiles " $dlopen" + test -n "$dlpreopen" && func_append dlprefiles " $dlpreopen" + fi + + if test conv = "$pass"; then + # Only check for convenience libraries + deplibs="$lib $deplibs" + if test -z "$libdir"; then + if test -z "$old_library"; then + func_fatal_error "cannot find name of link library for '$lib'" + fi + # It is a libtool convenience library, so add in its objects. + func_append convenience " $ladir/$objdir/$old_library" + func_append old_convenience " $ladir/$objdir/$old_library" + elif test prog != "$linkmode" && test lib != "$linkmode"; then + func_fatal_error "'$lib' is not a convenience library" + fi + tmp_libs= + for deplib in $dependency_libs; do + deplibs="$deplib $deplibs" + if $opt_preserve_dup_deps; then + case "$tmp_libs " in + *" $deplib "*) func_append specialdeplibs " $deplib" ;; + esac + fi + func_append tmp_libs " $deplib" + done + continue + fi # $pass = conv + + + # Get the name of the library we link against. + linklib= + if test -n "$old_library" && + { test yes = "$prefer_static_libs" || + test built,no = "$prefer_static_libs,$installed"; }; then + linklib=$old_library + else + for l in $old_library $library_names; do + linklib=$l + done + fi + if test -z "$linklib"; then + func_fatal_error "cannot find name of link library for '$lib'" + fi + + # This library was specified with -dlopen. + if test dlopen = "$pass"; then + test -z "$libdir" \ + && func_fatal_error "cannot -dlopen a convenience library: '$lib'" + if test -z "$dlname" || + test yes != "$dlopen_support" || + test no = "$build_libtool_libs" + then + # If there is no dlname, no dlopen support or we're linking + # statically, we need to preload. We also need to preload any + # dependent libraries so libltdl's deplib preloader doesn't + # bomb out in the load deplibs phase. + func_append dlprefiles " $lib $dependency_libs" + else + func_append newdlfiles " $lib" + fi + continue + fi # $pass = dlopen + + # We need an absolute path. + case $ladir in + [\\/]* | [A-Za-z]:[\\/]*) abs_ladir=$ladir ;; + *) + abs_ladir=`cd "$ladir" && pwd` + if test -z "$abs_ladir"; then + func_warning "cannot determine absolute directory name of '$ladir'" + func_warning "passing it literally to the linker, although it might fail" + abs_ladir=$ladir + fi + ;; + esac + func_basename "$lib" + laname=$func_basename_result + + # Find the relevant object directory and library name. + if test yes = "$installed"; then + if test ! -f "$lt_sysroot$libdir/$linklib" && test -f "$abs_ladir/$linklib"; then + func_warning "library '$lib' was moved." + dir=$ladir + absdir=$abs_ladir + libdir=$abs_ladir + else + dir=$lt_sysroot$libdir + absdir=$lt_sysroot$libdir + fi + test yes = "$hardcode_automatic" && avoidtemprpath=yes + else + if test ! -f "$ladir/$objdir/$linklib" && test -f "$abs_ladir/$linklib"; then + dir=$ladir + absdir=$abs_ladir + # Remove this search path later + func_append notinst_path " $abs_ladir" + else + dir=$ladir/$objdir + absdir=$abs_ladir/$objdir + # Remove this search path later + func_append notinst_path " $abs_ladir" + fi + fi # $installed = yes + func_stripname 'lib' '.la' "$laname" + name=$func_stripname_result + + # This library was specified with -dlpreopen. + if test dlpreopen = "$pass"; then + if test -z "$libdir" && test prog = "$linkmode"; then + func_fatal_error "only libraries may -dlpreopen a convenience library: '$lib'" + fi + case $host in + # special handling for platforms with PE-DLLs. + *cygwin* | *mingw* | *cegcc* ) + # Linker will automatically link against shared library if both + # static and shared are present. Therefore, ensure we extract + # symbols from the import library if a shared library is present + # (otherwise, the dlopen module name will be incorrect). We do + # this by putting the import library name into $newdlprefiles. + # We recover the dlopen module name by 'saving' the la file + # name in a special purpose variable, and (later) extracting the + # dlname from the la file. + if test -n "$dlname"; then + func_tr_sh "$dir/$linklib" + eval "libfile_$func_tr_sh_result=\$abs_ladir/\$laname" + func_append newdlprefiles " $dir/$linklib" + else + func_append newdlprefiles " $dir/$old_library" + # Keep a list of preopened convenience libraries to check + # that they are being used correctly in the link pass. + test -z "$libdir" && \ + func_append dlpreconveniencelibs " $dir/$old_library" + fi + ;; + * ) + # Prefer using a static library (so that no silly _DYNAMIC symbols + # are required to link). + if test -n "$old_library"; then + func_append newdlprefiles " $dir/$old_library" + # Keep a list of preopened convenience libraries to check + # that they are being used correctly in the link pass. + test -z "$libdir" && \ + func_append dlpreconveniencelibs " $dir/$old_library" + # Otherwise, use the dlname, so that lt_dlopen finds it. + elif test -n "$dlname"; then + func_append newdlprefiles " $dir/$dlname" + else + func_append newdlprefiles " $dir/$linklib" + fi + ;; + esac + fi # $pass = dlpreopen + + if test -z "$libdir"; then + # Link the convenience library + if test lib = "$linkmode"; then + deplibs="$dir/$old_library $deplibs" + elif test prog,link = "$linkmode,$pass"; then + compile_deplibs="$dir/$old_library $compile_deplibs" + finalize_deplibs="$dir/$old_library $finalize_deplibs" + else + deplibs="$lib $deplibs" # used for prog,scan pass + fi + continue + fi + + + if test prog = "$linkmode" && test link != "$pass"; then + func_append newlib_search_path " $ladir" + deplibs="$lib $deplibs" + + linkalldeplibs=false + if test no != "$link_all_deplibs" || test -z "$library_names" || + test no = "$build_libtool_libs"; then + linkalldeplibs=: + fi + + tmp_libs= + for deplib in $dependency_libs; do + case $deplib in + -L*) func_stripname '-L' '' "$deplib" + func_resolve_sysroot "$func_stripname_result" + func_append newlib_search_path " $func_resolve_sysroot_result" + ;; + esac + # Need to link against all dependency_libs? + if $linkalldeplibs; then + deplibs="$deplib $deplibs" + else + # Need to hardcode shared library paths + # or/and link against static libraries + newdependency_libs="$deplib $newdependency_libs" + fi + if $opt_preserve_dup_deps; then + case "$tmp_libs " in + *" $deplib "*) func_append specialdeplibs " $deplib" ;; + esac + fi + func_append tmp_libs " $deplib" + done # for deplib + continue + fi # $linkmode = prog... + + if test prog,link = "$linkmode,$pass"; then + if test -n "$library_names" && + { { test no = "$prefer_static_libs" || + test built,yes = "$prefer_static_libs,$installed"; } || + test -z "$old_library"; }; then + # We need to hardcode the library path + if test -n "$shlibpath_var" && test -z "$avoidtemprpath"; then + # Make sure the rpath contains only unique directories. + case $temp_rpath: in + *"$absdir:"*) ;; + *) func_append temp_rpath "$absdir:" ;; + esac + fi + + # Hardcode the library path. + # Skip directories that are in the system default run-time + # search path. + case " $sys_lib_dlsearch_path " in + *" $absdir "*) ;; + *) + case "$compile_rpath " in + *" $absdir "*) ;; + *) func_append compile_rpath " $absdir" ;; + esac + ;; + esac + case " $sys_lib_dlsearch_path " in + *" $libdir "*) ;; + *) + case "$finalize_rpath " in + *" $libdir "*) ;; + *) func_append finalize_rpath " $libdir" ;; + esac + ;; + esac + fi # $linkmode,$pass = prog,link... + + if $alldeplibs && + { test pass_all = "$deplibs_check_method" || + { test yes = "$build_libtool_libs" && + test -n "$library_names"; }; }; then + # We only need to search for static libraries + continue + fi + fi + + link_static=no # Whether the deplib will be linked statically + use_static_libs=$prefer_static_libs + if test built = "$use_static_libs" && test yes = "$installed"; then + use_static_libs=no + fi + if test -n "$library_names" && + { test no = "$use_static_libs" || test -z "$old_library"; }; then + case $host in + *cygwin* | *mingw* | *cegcc* | *os2*) + # No point in relinking DLLs because paths are not encoded + func_append notinst_deplibs " $lib" + need_relink=no + ;; + *) + if test no = "$installed"; then + func_append notinst_deplibs " $lib" + need_relink=yes + fi + ;; + esac + # This is a shared library + + # Warn about portability, can't link against -module's on some + # systems (darwin). Don't bleat about dlopened modules though! + dlopenmodule= + for dlpremoduletest in $dlprefiles; do + if test "X$dlpremoduletest" = "X$lib"; then + dlopenmodule=$dlpremoduletest + break + fi + done + if test -z "$dlopenmodule" && test yes = "$shouldnotlink" && test link = "$pass"; then + echo + if test prog = "$linkmode"; then + $ECHO "*** Warning: Linking the executable $output against the loadable module" + else + $ECHO "*** Warning: Linking the shared library $output against the loadable module" + fi + $ECHO "*** $linklib is not portable!" + fi + if test lib = "$linkmode" && + test yes = "$hardcode_into_libs"; then + # Hardcode the library path. + # Skip directories that are in the system default run-time + # search path. + case " $sys_lib_dlsearch_path " in + *" $absdir "*) ;; + *) + case "$compile_rpath " in + *" $absdir "*) ;; + *) func_append compile_rpath " $absdir" ;; + esac + ;; + esac + case " $sys_lib_dlsearch_path " in + *" $libdir "*) ;; + *) + case "$finalize_rpath " in + *" $libdir "*) ;; + *) func_append finalize_rpath " $libdir" ;; + esac + ;; + esac + fi + + if test -n "$old_archive_from_expsyms_cmds"; then + # figure out the soname + set dummy $library_names + shift + realname=$1 + shift + libname=`eval "\\$ECHO \"$libname_spec\""` + # use dlname if we got it. it's perfectly good, no? + if test -n "$dlname"; then + soname=$dlname + elif test -n "$soname_spec"; then + # bleh windows + case $host in + *cygwin* | mingw* | *cegcc* | *os2*) + func_arith $current - $age + major=$func_arith_result + versuffix=-$major + ;; + esac + eval soname=\"$soname_spec\" + else + soname=$realname + fi + + # Make a new name for the extract_expsyms_cmds to use + soroot=$soname + func_basename "$soroot" + soname=$func_basename_result + func_stripname 'lib' '.dll' "$soname" + newlib=libimp-$func_stripname_result.a + + # If the library has no export list, then create one now + if test -f "$output_objdir/$soname-def"; then : + else + func_verbose "extracting exported symbol list from '$soname'" + func_execute_cmds "$extract_expsyms_cmds" 'exit $?' + fi + + # Create $newlib + if test -f "$output_objdir/$newlib"; then :; else + func_verbose "generating import library for '$soname'" + func_execute_cmds "$old_archive_from_expsyms_cmds" 'exit $?' + fi + # make sure the library variables are pointing to the new library + dir=$output_objdir + linklib=$newlib + fi # test -n "$old_archive_from_expsyms_cmds" + + if test prog = "$linkmode" || test relink != "$opt_mode"; then + add_shlibpath= + add_dir= + add= + lib_linked=yes + case $hardcode_action in + immediate | unsupported) + if test no = "$hardcode_direct"; then + add=$dir/$linklib + case $host in + *-*-sco3.2v5.0.[024]*) add_dir=-L$dir ;; + *-*-sysv4*uw2*) add_dir=-L$dir ;; + *-*-sysv5OpenUNIX* | *-*-sysv5UnixWare7.[01].[10]* | \ + *-*-unixware7*) add_dir=-L$dir ;; + *-*-darwin* ) + # if the lib is a (non-dlopened) module then we cannot + # link against it, someone is ignoring the earlier warnings + if /usr/bin/file -L $add 2> /dev/null | + $GREP ": [^:]* bundle" >/dev/null; then + if test "X$dlopenmodule" != "X$lib"; then + $ECHO "*** Warning: lib $linklib is a module, not a shared library" + if test -z "$old_library"; then + echo + echo "*** And there doesn't seem to be a static archive available" + echo "*** The link will probably fail, sorry" + else + add=$dir/$old_library + fi + elif test -n "$old_library"; then + add=$dir/$old_library + fi + fi + esac + elif test no = "$hardcode_minus_L"; then + case $host in + *-*-sunos*) add_shlibpath=$dir ;; + esac + add_dir=-L$dir + add=-l$name + elif test no = "$hardcode_shlibpath_var"; then + add_shlibpath=$dir + add=-l$name + else + lib_linked=no + fi + ;; + relink) + if test yes = "$hardcode_direct" && + test no = "$hardcode_direct_absolute"; then + add=$dir/$linklib + elif test yes = "$hardcode_minus_L"; then + add_dir=-L$absdir + # Try looking first in the location we're being installed to. + if test -n "$inst_prefix_dir"; then + case $libdir in + [\\/]*) + func_append add_dir " -L$inst_prefix_dir$libdir" + ;; + esac + fi + add=-l$name + elif test yes = "$hardcode_shlibpath_var"; then + add_shlibpath=$dir + add=-l$name + else + lib_linked=no + fi + ;; + *) lib_linked=no ;; + esac + + if test yes != "$lib_linked"; then + func_fatal_configuration "unsupported hardcode properties" + fi + + if test -n "$add_shlibpath"; then + case :$compile_shlibpath: in + *":$add_shlibpath:"*) ;; + *) func_append compile_shlibpath "$add_shlibpath:" ;; + esac + fi + if test prog = "$linkmode"; then + test -n "$add_dir" && compile_deplibs="$add_dir $compile_deplibs" + test -n "$add" && compile_deplibs="$add $compile_deplibs" + else + test -n "$add_dir" && deplibs="$add_dir $deplibs" + test -n "$add" && deplibs="$add $deplibs" + if test yes != "$hardcode_direct" && + test yes != "$hardcode_minus_L" && + test yes = "$hardcode_shlibpath_var"; then + case :$finalize_shlibpath: in + *":$libdir:"*) ;; + *) func_append finalize_shlibpath "$libdir:" ;; + esac + fi + fi + fi + + if test prog = "$linkmode" || test relink = "$opt_mode"; then + add_shlibpath= + add_dir= + add= + # Finalize command for both is simple: just hardcode it. + if test yes = "$hardcode_direct" && + test no = "$hardcode_direct_absolute"; then + add=$libdir/$linklib + elif test yes = "$hardcode_minus_L"; then + add_dir=-L$libdir + add=-l$name + elif test yes = "$hardcode_shlibpath_var"; then + case :$finalize_shlibpath: in + *":$libdir:"*) ;; + *) func_append finalize_shlibpath "$libdir:" ;; + esac + add=-l$name + elif test yes = "$hardcode_automatic"; then + if test -n "$inst_prefix_dir" && + test -f "$inst_prefix_dir$libdir/$linklib"; then + add=$inst_prefix_dir$libdir/$linklib + else + add=$libdir/$linklib + fi + else + # We cannot seem to hardcode it, guess we'll fake it. + add_dir=-L$libdir + # Try looking first in the location we're being installed to. + if test -n "$inst_prefix_dir"; then + case $libdir in + [\\/]*) + func_append add_dir " -L$inst_prefix_dir$libdir" + ;; + esac + fi + add=-l$name + fi + + if test prog = "$linkmode"; then + test -n "$add_dir" && finalize_deplibs="$add_dir $finalize_deplibs" + test -n "$add" && finalize_deplibs="$add $finalize_deplibs" + else + test -n "$add_dir" && deplibs="$add_dir $deplibs" + test -n "$add" && deplibs="$add $deplibs" + fi + fi + elif test prog = "$linkmode"; then + # Here we assume that one of hardcode_direct or hardcode_minus_L + # is not unsupported. This is valid on all known static and + # shared platforms. + if test unsupported != "$hardcode_direct"; then + test -n "$old_library" && linklib=$old_library + compile_deplibs="$dir/$linklib $compile_deplibs" + finalize_deplibs="$dir/$linklib $finalize_deplibs" + else + compile_deplibs="-l$name -L$dir $compile_deplibs" + finalize_deplibs="-l$name -L$dir $finalize_deplibs" + fi + elif test yes = "$build_libtool_libs"; then + # Not a shared library + if test pass_all != "$deplibs_check_method"; then + # We're trying link a shared library against a static one + # but the system doesn't support it. + + # Just print a warning and add the library to dependency_libs so + # that the program can be linked against the static library. + echo + $ECHO "*** Warning: This system cannot link to static lib archive $lib." + echo "*** I have the capability to make that library automatically link in when" + echo "*** you link to this library. But I can only do this if you have a" + echo "*** shared version of the library, which you do not appear to have." + if test yes = "$module"; then + echo "*** But as you try to build a module library, libtool will still create " + echo "*** a static module, that should work as long as the dlopening application" + echo "*** is linked with the -dlopen flag to resolve symbols at runtime." + if test -z "$global_symbol_pipe"; then + echo + echo "*** However, this would only work if libtool was able to extract symbol" + echo "*** lists from a program, using 'nm' or equivalent, but libtool could" + echo "*** not find such a program. So, this module is probably useless." + echo "*** 'nm' from GNU binutils and a full rebuild may help." + fi + if test no = "$build_old_libs"; then + build_libtool_libs=module + build_old_libs=yes + else + build_libtool_libs=no + fi + fi + else + deplibs="$dir/$old_library $deplibs" + link_static=yes + fi + fi # link shared/static library? + + if test lib = "$linkmode"; then + if test -n "$dependency_libs" && + { test yes != "$hardcode_into_libs" || + test yes = "$build_old_libs" || + test yes = "$link_static"; }; then + # Extract -R from dependency_libs + temp_deplibs= + for libdir in $dependency_libs; do + case $libdir in + -R*) func_stripname '-R' '' "$libdir" + temp_xrpath=$func_stripname_result + case " $xrpath " in + *" $temp_xrpath "*) ;; + *) func_append xrpath " $temp_xrpath";; + esac;; + *) func_append temp_deplibs " $libdir";; + esac + done + dependency_libs=$temp_deplibs + fi + + func_append newlib_search_path " $absdir" + # Link against this library + test no = "$link_static" && newdependency_libs="$abs_ladir/$laname $newdependency_libs" + # ... and its dependency_libs + tmp_libs= + for deplib in $dependency_libs; do + newdependency_libs="$deplib $newdependency_libs" + case $deplib in + -L*) func_stripname '-L' '' "$deplib" + func_resolve_sysroot "$func_stripname_result";; + *) func_resolve_sysroot "$deplib" ;; + esac + if $opt_preserve_dup_deps; then + case "$tmp_libs " in + *" $func_resolve_sysroot_result "*) + func_append specialdeplibs " $func_resolve_sysroot_result" ;; + esac + fi + func_append tmp_libs " $func_resolve_sysroot_result" + done + + if test no != "$link_all_deplibs"; then + # Add the search paths of all dependency libraries + for deplib in $dependency_libs; do + path= + case $deplib in + -L*) path=$deplib ;; + *.la) + func_resolve_sysroot "$deplib" + deplib=$func_resolve_sysroot_result + func_dirname "$deplib" "" "." + dir=$func_dirname_result + # We need an absolute path. + case $dir in + [\\/]* | [A-Za-z]:[\\/]*) absdir=$dir ;; + *) + absdir=`cd "$dir" && pwd` + if test -z "$absdir"; then + func_warning "cannot determine absolute directory name of '$dir'" + absdir=$dir + fi + ;; + esac + if $GREP "^installed=no" $deplib > /dev/null; then + case $host in + *-*-darwin*) + depdepl= + eval deplibrary_names=`$SED -n -e 's/^library_names=\(.*\)$/\1/p' $deplib` + if test -n "$deplibrary_names"; then + for tmp in $deplibrary_names; do + depdepl=$tmp + done + if test -f "$absdir/$objdir/$depdepl"; then + depdepl=$absdir/$objdir/$depdepl + darwin_install_name=`$OTOOL -L $depdepl | awk '{if (NR == 2) {print $1;exit}}'` + if test -z "$darwin_install_name"; then + darwin_install_name=`$OTOOL64 -L $depdepl | awk '{if (NR == 2) {print $1;exit}}'` + fi + func_append compiler_flags " $wl-dylib_file $wl$darwin_install_name:$depdepl" + func_append linker_flags " -dylib_file $darwin_install_name:$depdepl" + path= + fi + fi + ;; + *) + path=-L$absdir/$objdir + ;; + esac + else + eval libdir=`$SED -n -e 's/^libdir=\(.*\)$/\1/p' $deplib` + test -z "$libdir" && \ + func_fatal_error "'$deplib' is not a valid libtool archive" + test "$absdir" != "$libdir" && \ + func_warning "'$deplib' seems to be moved" + + path=-L$absdir + fi + ;; + esac + case " $deplibs " in + *" $path "*) ;; + *) deplibs="$path $deplibs" ;; + esac + done + fi # link_all_deplibs != no + fi # linkmode = lib + done # for deplib in $libs + if test link = "$pass"; then + if test prog = "$linkmode"; then + compile_deplibs="$new_inherited_linker_flags $compile_deplibs" + finalize_deplibs="$new_inherited_linker_flags $finalize_deplibs" + else + compiler_flags="$compiler_flags "`$ECHO " $new_inherited_linker_flags" | $SED 's% \([^ $]*\).ltframework% -framework \1%g'` + fi + fi + dependency_libs=$newdependency_libs + if test dlpreopen = "$pass"; then + # Link the dlpreopened libraries before other libraries + for deplib in $save_deplibs; do + deplibs="$deplib $deplibs" + done + fi + if test dlopen != "$pass"; then + test conv = "$pass" || { + # Make sure lib_search_path contains only unique directories. + lib_search_path= + for dir in $newlib_search_path; do + case "$lib_search_path " in + *" $dir "*) ;; + *) func_append lib_search_path " $dir" ;; + esac + done + newlib_search_path= + } + + if test prog,link = "$linkmode,$pass"; then + vars="compile_deplibs finalize_deplibs" + else + vars=deplibs + fi + for var in $vars dependency_libs; do + # Add libraries to $var in reverse order + eval tmp_libs=\"\$$var\" + new_libs= + for deplib in $tmp_libs; do + # FIXME: Pedantically, this is the right thing to do, so + # that some nasty dependency loop isn't accidentally + # broken: + #new_libs="$deplib $new_libs" + # Pragmatically, this seems to cause very few problems in + # practice: + case $deplib in + -L*) new_libs="$deplib $new_libs" ;; + -R*) ;; + *) + # And here is the reason: when a library appears more + # than once as an explicit dependence of a library, or + # is implicitly linked in more than once by the + # compiler, it is considered special, and multiple + # occurrences thereof are not removed. Compare this + # with having the same library being listed as a + # dependency of multiple other libraries: in this case, + # we know (pedantically, we assume) the library does not + # need to be listed more than once, so we keep only the + # last copy. This is not always right, but it is rare + # enough that we require users that really mean to play + # such unportable linking tricks to link the library + # using -Wl,-lname, so that libtool does not consider it + # for duplicate removal. + case " $specialdeplibs " in + *" $deplib "*) new_libs="$deplib $new_libs" ;; + *) + case " $new_libs " in + *" $deplib "*) ;; + *) new_libs="$deplib $new_libs" ;; + esac + ;; + esac + ;; + esac + done + tmp_libs= + for deplib in $new_libs; do + case $deplib in + -L*) + case " $tmp_libs " in + *" $deplib "*) ;; + *) func_append tmp_libs " $deplib" ;; + esac + ;; + *) func_append tmp_libs " $deplib" ;; + esac + done + eval $var=\"$tmp_libs\" + done # for var + fi + + # Add Sun CC postdeps if required: + test CXX = "$tagname" && { + case $host_os in + linux*) + case `$CC -V 2>&1 | $SED 5q` in + *Sun\ C*) # Sun C++ 5.9 + func_suncc_cstd_abi + + if test no != "$suncc_use_cstd_abi"; then + func_append postdeps ' -library=Cstd -library=Crun' + fi + ;; + esac + ;; + + solaris*) + func_cc_basename "$CC" + case $func_cc_basename_result in + CC* | sunCC*) + func_suncc_cstd_abi + + if test no != "$suncc_use_cstd_abi"; then + func_append postdeps ' -library=Cstd -library=Crun' + fi + ;; + esac + ;; + esac + } + + # Last step: remove runtime libs from dependency_libs + # (they stay in deplibs) + tmp_libs= + for i in $dependency_libs; do + case " $predeps $postdeps $compiler_lib_search_path " in + *" $i "*) + i= + ;; + esac + if test -n "$i"; then + func_append tmp_libs " $i" + fi + done + dependency_libs=$tmp_libs + done # for pass + if test prog = "$linkmode"; then + dlfiles=$newdlfiles + fi + if test prog = "$linkmode" || test lib = "$linkmode"; then + dlprefiles=$newdlprefiles + fi + + case $linkmode in + oldlib) + if test -n "$dlfiles$dlprefiles" || test no != "$dlself"; then + func_warning "'-dlopen' is ignored for archives" + fi + + case " $deplibs" in + *\ -l* | *\ -L*) + func_warning "'-l' and '-L' are ignored for archives" ;; + esac + + test -n "$rpath" && \ + func_warning "'-rpath' is ignored for archives" + + test -n "$xrpath" && \ + func_warning "'-R' is ignored for archives" + + test -n "$vinfo" && \ + func_warning "'-version-info/-version-number' is ignored for archives" + + test -n "$release" && \ + func_warning "'-release' is ignored for archives" + + test -n "$export_symbols$export_symbols_regex" && \ + func_warning "'-export-symbols' is ignored for archives" + + # Now set the variables for building old libraries. + build_libtool_libs=no + oldlibs=$output + func_append objs "$old_deplibs" + ;; + + lib) + # Make sure we only generate libraries of the form 'libNAME.la'. + case $outputname in + lib*) + func_stripname 'lib' '.la' "$outputname" + name=$func_stripname_result + eval shared_ext=\"$shrext_cmds\" + eval libname=\"$libname_spec\" + ;; + *) + test no = "$module" \ + && func_fatal_help "libtool library '$output' must begin with 'lib'" + + if test no != "$need_lib_prefix"; then + # Add the "lib" prefix for modules if required + func_stripname '' '.la' "$outputname" + name=$func_stripname_result + eval shared_ext=\"$shrext_cmds\" + eval libname=\"$libname_spec\" + else + func_stripname '' '.la' "$outputname" + libname=$func_stripname_result + fi + ;; + esac + + if test -n "$objs"; then + if test pass_all != "$deplibs_check_method"; then + func_fatal_error "cannot build libtool library '$output' from non-libtool objects on this host:$objs" + else + echo + $ECHO "*** Warning: Linking the shared library $output against the non-libtool" + $ECHO "*** objects $objs is not portable!" + func_append libobjs " $objs" + fi + fi + + test no = "$dlself" \ + || func_warning "'-dlopen self' is ignored for libtool libraries" + + set dummy $rpath + shift + test 1 -lt "$#" \ + && func_warning "ignoring multiple '-rpath's for a libtool library" + + install_libdir=$1 + + oldlibs= + if test -z "$rpath"; then + if test yes = "$build_libtool_libs"; then + # Building a libtool convenience library. + # Some compilers have problems with a '.al' extension so + # convenience libraries should have the same extension an + # archive normally would. + oldlibs="$output_objdir/$libname.$libext $oldlibs" + build_libtool_libs=convenience + build_old_libs=yes + fi + + test -n "$vinfo" && \ + func_warning "'-version-info/-version-number' is ignored for convenience libraries" + + test -n "$release" && \ + func_warning "'-release' is ignored for convenience libraries" + else + + # Parse the version information argument. + save_ifs=$IFS; IFS=: + set dummy $vinfo 0 0 0 + shift + IFS=$save_ifs + + test -n "$7" && \ + func_fatal_help "too many parameters to '-version-info'" + + # convert absolute version numbers to libtool ages + # this retains compatibility with .la files and attempts + # to make the code below a bit more comprehensible + + case $vinfo_number in + yes) + number_major=$1 + number_minor=$2 + number_revision=$3 + # + # There are really only two kinds -- those that + # use the current revision as the major version + # and those that subtract age and use age as + # a minor version. But, then there is irix + # that has an extra 1 added just for fun + # + case $version_type in + # correct linux to gnu/linux during the next big refactor + darwin|freebsd-elf|linux|midnightbsd-elf|osf|windows|none) + func_arith $number_major + $number_minor + current=$func_arith_result + age=$number_minor + revision=$number_revision + ;; + freebsd-aout|qnx|sunos) + current=$number_major + revision=$number_minor + age=0 + ;; + irix|nonstopux) + func_arith $number_major + $number_minor + current=$func_arith_result + age=$number_minor + revision=$number_minor + lt_irix_increment=no + ;; + esac + ;; + no) + current=$1 + revision=$2 + age=$3 + ;; + esac + + # Check that each of the things are valid numbers. + case $current in + 0|[1-9]|[1-9][0-9]|[1-9][0-9][0-9]|[1-9][0-9][0-9][0-9]|[1-9][0-9][0-9][0-9][0-9]) ;; + *) + func_error "CURRENT '$current' must be a nonnegative integer" + func_fatal_error "'$vinfo' is not valid version information" + ;; + esac + + case $revision in + 0|[1-9]|[1-9][0-9]|[1-9][0-9][0-9]|[1-9][0-9][0-9][0-9]|[1-9][0-9][0-9][0-9][0-9]) ;; + *) + func_error "REVISION '$revision' must be a nonnegative integer" + func_fatal_error "'$vinfo' is not valid version information" + ;; + esac + + case $age in + 0|[1-9]|[1-9][0-9]|[1-9][0-9][0-9]|[1-9][0-9][0-9][0-9]|[1-9][0-9][0-9][0-9][0-9]) ;; + *) + func_error "AGE '$age' must be a nonnegative integer" + func_fatal_error "'$vinfo' is not valid version information" + ;; + esac + + if test "$age" -gt "$current"; then + func_error "AGE '$age' is greater than the current interface number '$current'" + func_fatal_error "'$vinfo' is not valid version information" + fi + + # Calculate the version variables. + major= + versuffix= + verstring= + case $version_type in + none) ;; + + darwin) + # Like Linux, but with the current version available in + # verstring for coding it into the library header + func_arith $current - $age + major=.$func_arith_result + versuffix=$major.$age.$revision + # Darwin ld doesn't like 0 for these options... + func_arith $current + 1 + minor_current=$func_arith_result + xlcverstring="$wl-compatibility_version $wl$minor_current $wl-current_version $wl$minor_current.$revision" + verstring="-compatibility_version $minor_current -current_version $minor_current.$revision" + # On Darwin other compilers + case $CC in + nagfor*) + verstring="$wl-compatibility_version $wl$minor_current $wl-current_version $wl$minor_current.$revision" + ;; + *) + verstring="-compatibility_version $minor_current -current_version $minor_current.$revision" + ;; + esac + ;; + + freebsd-aout) + major=.$current + versuffix=.$current.$revision + ;; + + freebsd-elf | midnightbsd-elf) + func_arith $current - $age + major=.$func_arith_result + versuffix=$major.$age.$revision + ;; + + irix | nonstopux) + if test no = "$lt_irix_increment"; then + func_arith $current - $age + else + func_arith $current - $age + 1 + fi + major=$func_arith_result + + case $version_type in + nonstopux) verstring_prefix=nonstopux ;; + *) verstring_prefix=sgi ;; + esac + verstring=$verstring_prefix$major.$revision + + # Add in all the interfaces that we are compatible with. + loop=$revision + while test 0 -ne "$loop"; do + func_arith $revision - $loop + iface=$func_arith_result + func_arith $loop - 1 + loop=$func_arith_result + verstring=$verstring_prefix$major.$iface:$verstring + done + + # Before this point, $major must not contain '.'. + major=.$major + versuffix=$major.$revision + ;; + + linux) # correct to gnu/linux during the next big refactor + func_arith $current - $age + major=.$func_arith_result + versuffix=$major.$age.$revision + ;; + + osf) + func_arith $current - $age + major=.$func_arith_result + versuffix=.$current.$age.$revision + verstring=$current.$age.$revision + + # Add in all the interfaces that we are compatible with. + loop=$age + while test 0 -ne "$loop"; do + func_arith $current - $loop + iface=$func_arith_result + func_arith $loop - 1 + loop=$func_arith_result + verstring=$verstring:$iface.0 + done + + # Make executables depend on our current version. + func_append verstring ":$current.0" + ;; + + qnx) + major=.$current + versuffix=.$current + ;; + + sco) + major=.$current + versuffix=.$current + ;; + + sunos) + major=.$current + versuffix=.$current.$revision + ;; + + windows) + # Use '-' rather than '.', since we only want one + # extension on DOS 8.3 file systems. + func_arith $current - $age + major=$func_arith_result + versuffix=-$major + ;; + + *) + func_fatal_configuration "unknown library version type '$version_type'" + ;; + esac + + # Clear the version info if we defaulted, and they specified a release. + if test -z "$vinfo" && test -n "$release"; then + major= + case $version_type in + darwin) + # we can't check for "0.0" in archive_cmds due to quoting + # problems, so we reset it completely + verstring= + ;; + *) + verstring=0.0 + ;; + esac + if test no = "$need_version"; then + versuffix= + else + versuffix=.0.0 + fi + fi + + # Remove version info from name if versioning should be avoided + if test yes,no = "$avoid_version,$need_version"; then + major= + versuffix= + verstring= + fi + + # Check to see if the archive will have undefined symbols. + if test yes = "$allow_undefined"; then + if test unsupported = "$allow_undefined_flag"; then + if test yes = "$build_old_libs"; then + func_warning "undefined symbols not allowed in $host shared libraries; building static only" + build_libtool_libs=no + else + func_fatal_error "can't build $host shared library unless -no-undefined is specified" + fi + fi + else + # Don't allow undefined symbols. + allow_undefined_flag=$no_undefined_flag + fi + + fi + + func_generate_dlsyms "$libname" "$libname" : + func_append libobjs " $symfileobj" + test " " = "$libobjs" && libobjs= + + if test relink != "$opt_mode"; then + # Remove our outputs, but don't remove object files since they + # may have been created when compiling PIC objects. + removelist= + tempremovelist=`$ECHO "$output_objdir/*"` + for p in $tempremovelist; do + case $p in + *.$objext | *.gcno) + ;; + $output_objdir/$outputname | $output_objdir/$libname.* | $output_objdir/$libname$release.*) + if test -n "$precious_files_regex"; then + if $ECHO "$p" | $EGREP -e "$precious_files_regex" >/dev/null 2>&1 + then + continue + fi + fi + func_append removelist " $p" + ;; + *) ;; + esac + done + test -n "$removelist" && \ + func_show_eval "${RM}r \$removelist" + fi + + # Now set the variables for building old libraries. + if test yes = "$build_old_libs" && test convenience != "$build_libtool_libs"; then + func_append oldlibs " $output_objdir/$libname.$libext" + + # Transform .lo files to .o files. + oldobjs="$objs "`$ECHO "$libobjs" | $SP2NL | $SED "/\.$libext$/d; $lo2o" | $NL2SP` + fi + + # Eliminate all temporary directories. + #for path in $notinst_path; do + # lib_search_path=`$ECHO "$lib_search_path " | $SED "s% $path % %g"` + # deplibs=`$ECHO "$deplibs " | $SED "s% -L$path % %g"` + # dependency_libs=`$ECHO "$dependency_libs " | $SED "s% -L$path % %g"` + #done + + if test -n "$xrpath"; then + # If the user specified any rpath flags, then add them. + temp_xrpath= + for libdir in $xrpath; do + func_replace_sysroot "$libdir" + func_append temp_xrpath " -R$func_replace_sysroot_result" + case "$finalize_rpath " in + *" $libdir "*) ;; + *) func_append finalize_rpath " $libdir" ;; + esac + done + if test yes != "$hardcode_into_libs" || test yes = "$build_old_libs"; then + dependency_libs="$temp_xrpath $dependency_libs" + fi + fi + + # Make sure dlfiles contains only unique files that won't be dlpreopened + old_dlfiles=$dlfiles + dlfiles= + for lib in $old_dlfiles; do + case " $dlprefiles $dlfiles " in + *" $lib "*) ;; + *) func_append dlfiles " $lib" ;; + esac + done + + # Make sure dlprefiles contains only unique files + old_dlprefiles=$dlprefiles + dlprefiles= + for lib in $old_dlprefiles; do + case "$dlprefiles " in + *" $lib "*) ;; + *) func_append dlprefiles " $lib" ;; + esac + done + + if test yes = "$build_libtool_libs"; then + if test -n "$rpath"; then + case $host in + *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2* | *-*-beos* | *-cegcc* | *-*-haiku*) + # these systems don't actually have a c library (as such)! + ;; + *-*-rhapsody* | *-*-darwin1.[012]) + # Rhapsody C library is in the System framework + func_append deplibs " System.ltframework" + ;; + *-*-netbsd*) + # Don't link with libc until the a.out ld.so is fixed. + ;; + *-*-openbsd* | *-*-freebsd* | *-*-dragonfly* | *-*-midnightbsd*) + # Do not include libc due to us having libc/libc_r. + ;; + *-*-sco3.2v5* | *-*-sco5v6*) + # Causes problems with __ctype + ;; + *-*-sysv4.2uw2* | *-*-sysv5* | *-*-unixware* | *-*-OpenUNIX*) + # Compiler inserts libc in the correct place for threads to work + ;; + *) + # Add libc to deplibs on all other systems if necessary. + if test yes = "$build_libtool_need_lc"; then + func_append deplibs " -lc" + fi + ;; + esac + fi + + # Transform deplibs into only deplibs that can be linked in shared. + name_save=$name + libname_save=$libname + release_save=$release + versuffix_save=$versuffix + major_save=$major + # I'm not sure if I'm treating the release correctly. I think + # release should show up in the -l (ie -lgmp5) so we don't want to + # add it in twice. Is that correct? + release= + versuffix= + major= + newdeplibs= + droppeddeps=no + case $deplibs_check_method in + pass_all) + # Don't check for shared/static. Everything works. + # This might be a little naive. We might want to check + # whether the library exists or not. But this is on + # osf3 & osf4 and I'm not really sure... Just + # implementing what was already the behavior. + newdeplibs=$deplibs + ;; + test_compile) + # This code stresses the "libraries are programs" paradigm to its + # limits. Maybe even breaks it. We compile a program, linking it + # against the deplibs as a proxy for the library. Then we can check + # whether they linked in statically or dynamically with ldd. + $opt_dry_run || $RM conftest.c + cat > conftest.c </dev/null` + $nocaseglob + else + potential_libs=`ls $i/$libnameglob[.-]* 2>/dev/null` + fi + for potent_lib in $potential_libs; do + # Follow soft links. + if ls -lLd "$potent_lib" 2>/dev/null | + $GREP " -> " >/dev/null; then + continue + fi + # The statement above tries to avoid entering an + # endless loop below, in case of cyclic links. + # We might still enter an endless loop, since a link + # loop can be closed while we follow links, + # but so what? + potlib=$potent_lib + while test -h "$potlib" 2>/dev/null; do + potliblink=`ls -ld $potlib | $SED 's/.* -> //'` + case $potliblink in + [\\/]* | [A-Za-z]:[\\/]*) potlib=$potliblink;; + *) potlib=`$ECHO "$potlib" | $SED 's|[^/]*$||'`"$potliblink";; + esac + done + if eval $file_magic_cmd \"\$potlib\" 2>/dev/null | + $SED -e 10q | + $EGREP "$file_magic_regex" > /dev/null; then + func_append newdeplibs " $a_deplib" + a_deplib= + break 2 + fi + done + done + fi + if test -n "$a_deplib"; then + droppeddeps=yes + echo + $ECHO "*** Warning: linker path does not have real file for library $a_deplib." + echo "*** I have the capability to make that library automatically link in when" + echo "*** you link to this library. But I can only do this if you have a" + echo "*** shared version of the library, which you do not appear to have" + echo "*** because I did check the linker path looking for a file starting" + if test -z "$potlib"; then + $ECHO "*** with $libname but no candidates were found. (...for file magic test)" + else + $ECHO "*** with $libname and none of the candidates passed a file format test" + $ECHO "*** using a file magic. Last file checked: $potlib" + fi + fi + ;; + *) + # Add a -L argument. + func_append newdeplibs " $a_deplib" + ;; + esac + done # Gone through all deplibs. + ;; + match_pattern*) + set dummy $deplibs_check_method; shift + match_pattern_regex=`expr "$deplibs_check_method" : "$1 \(.*\)"` + for a_deplib in $deplibs; do + case $a_deplib in + -l*) + func_stripname -l '' "$a_deplib" + name=$func_stripname_result + if test yes = "$allow_libtool_libs_with_static_runtimes"; then + case " $predeps $postdeps " in + *" $a_deplib "*) + func_append newdeplibs " $a_deplib" + a_deplib= + ;; + esac + fi + if test -n "$a_deplib"; then + libname=`eval "\\$ECHO \"$libname_spec\""` + for i in $lib_search_path $sys_lib_search_path $shlib_search_path; do + potential_libs=`ls $i/$libname[.-]* 2>/dev/null` + for potent_lib in $potential_libs; do + potlib=$potent_lib # see symlink-check above in file_magic test + if eval "\$ECHO \"$potent_lib\"" 2>/dev/null | $SED 10q | \ + $EGREP "$match_pattern_regex" > /dev/null; then + func_append newdeplibs " $a_deplib" + a_deplib= + break 2 + fi + done + done + fi + if test -n "$a_deplib"; then + droppeddeps=yes + echo + $ECHO "*** Warning: linker path does not have real file for library $a_deplib." + echo "*** I have the capability to make that library automatically link in when" + echo "*** you link to this library. But I can only do this if you have a" + echo "*** shared version of the library, which you do not appear to have" + echo "*** because I did check the linker path looking for a file starting" + if test -z "$potlib"; then + $ECHO "*** with $libname but no candidates were found. (...for regex pattern test)" + else + $ECHO "*** with $libname and none of the candidates passed a file format test" + $ECHO "*** using a regex pattern. Last file checked: $potlib" + fi + fi + ;; + *) + # Add a -L argument. + func_append newdeplibs " $a_deplib" + ;; + esac + done # Gone through all deplibs. + ;; + none | unknown | *) + newdeplibs= + tmp_deplibs=`$ECHO " $deplibs" | $SED 's/ -lc$//; s/ -[LR][^ ]*//g'` + if test yes = "$allow_libtool_libs_with_static_runtimes"; then + for i in $predeps $postdeps; do + # can't use Xsed below, because $i might contain '/' + tmp_deplibs=`$ECHO " $tmp_deplibs" | $SED "s|$i||"` + done + fi + case $tmp_deplibs in + *[!\ \ ]*) + echo + if test none = "$deplibs_check_method"; then + echo "*** Warning: inter-library dependencies are not supported in this platform." + else + echo "*** Warning: inter-library dependencies are not known to be supported." + fi + echo "*** All declared inter-library dependencies are being dropped." + droppeddeps=yes + ;; + esac + ;; + esac + versuffix=$versuffix_save + major=$major_save + release=$release_save + libname=$libname_save + name=$name_save + + case $host in + *-*-rhapsody* | *-*-darwin1.[012]) + # On Rhapsody replace the C library with the System framework + newdeplibs=`$ECHO " $newdeplibs" | $SED 's/ -lc / System.ltframework /'` + ;; + esac + + if test yes = "$droppeddeps"; then + if test yes = "$module"; then + echo + echo "*** Warning: libtool could not satisfy all declared inter-library" + $ECHO "*** dependencies of module $libname. Therefore, libtool will create" + echo "*** a static module, that should work as long as the dlopening" + echo "*** application is linked with the -dlopen flag." + if test -z "$global_symbol_pipe"; then + echo + echo "*** However, this would only work if libtool was able to extract symbol" + echo "*** lists from a program, using 'nm' or equivalent, but libtool could" + echo "*** not find such a program. So, this module is probably useless." + echo "*** 'nm' from GNU binutils and a full rebuild may help." + fi + if test no = "$build_old_libs"; then + oldlibs=$output_objdir/$libname.$libext + build_libtool_libs=module + build_old_libs=yes + else + build_libtool_libs=no + fi + else + echo "*** The inter-library dependencies that have been dropped here will be" + echo "*** automatically added whenever a program is linked with this library" + echo "*** or is declared to -dlopen it." + + if test no = "$allow_undefined"; then + echo + echo "*** Since this library must not contain undefined symbols," + echo "*** because either the platform does not support them or" + echo "*** it was explicitly requested with -no-undefined," + echo "*** libtool will only create a static version of it." + if test no = "$build_old_libs"; then + oldlibs=$output_objdir/$libname.$libext + build_libtool_libs=module + build_old_libs=yes + else + build_libtool_libs=no + fi + fi + fi + fi + # Done checking deplibs! + deplibs=$newdeplibs + fi + # Time to change all our "foo.ltframework" stuff back to "-framework foo" + case $host in + *-*-darwin*) + newdeplibs=`$ECHO " $newdeplibs" | $SED 's% \([^ $]*\).ltframework% -framework \1%g'` + new_inherited_linker_flags=`$ECHO " $new_inherited_linker_flags" | $SED 's% \([^ $]*\).ltframework% -framework \1%g'` + deplibs=`$ECHO " $deplibs" | $SED 's% \([^ $]*\).ltframework% -framework \1%g'` + ;; + esac + + # move library search paths that coincide with paths to not yet + # installed libraries to the beginning of the library search list + new_libs= + for path in $notinst_path; do + case " $new_libs " in + *" -L$path/$objdir "*) ;; + *) + case " $deplibs " in + *" -L$path/$objdir "*) + func_append new_libs " -L$path/$objdir" ;; + esac + ;; + esac + done + for deplib in $deplibs; do + case $deplib in + -L*) + case " $new_libs " in + *" $deplib "*) ;; + *) func_append new_libs " $deplib" ;; + esac + ;; + *) func_append new_libs " $deplib" ;; + esac + done + deplibs=$new_libs + + # All the library-specific variables (install_libdir is set above). + library_names= + old_library= + dlname= + + # Test again, we may have decided not to build it any more + if test yes = "$build_libtool_libs"; then + # Remove $wl instances when linking with ld. + # FIXME: should test the right _cmds variable. + case $archive_cmds in + *\$LD\ *) wl= ;; + esac + if test yes = "$hardcode_into_libs"; then + # Hardcode the library paths + hardcode_libdirs= + dep_rpath= + rpath=$finalize_rpath + test relink = "$opt_mode" || rpath=$compile_rpath$rpath + for libdir in $rpath; do + if test -n "$hardcode_libdir_flag_spec"; then + if test -n "$hardcode_libdir_separator"; then + func_replace_sysroot "$libdir" + libdir=$func_replace_sysroot_result + if test -z "$hardcode_libdirs"; then + hardcode_libdirs=$libdir + else + # Just accumulate the unique libdirs. + case $hardcode_libdir_separator$hardcode_libdirs$hardcode_libdir_separator in + *"$hardcode_libdir_separator$libdir$hardcode_libdir_separator"*) + ;; + *) + func_append hardcode_libdirs "$hardcode_libdir_separator$libdir" + ;; + esac + fi + else + eval flag=\"$hardcode_libdir_flag_spec\" + func_append dep_rpath " $flag" + fi + elif test -n "$runpath_var"; then + case "$perm_rpath " in + *" $libdir "*) ;; + *) func_append perm_rpath " $libdir" ;; + esac + fi + done + # Substitute the hardcoded libdirs into the rpath. + if test -n "$hardcode_libdir_separator" && + test -n "$hardcode_libdirs"; then + libdir=$hardcode_libdirs + eval "dep_rpath=\"$hardcode_libdir_flag_spec\"" + fi + if test -n "$runpath_var" && test -n "$perm_rpath"; then + # We should set the runpath_var. + rpath= + for dir in $perm_rpath; do + func_append rpath "$dir:" + done + eval "$runpath_var='$rpath\$$runpath_var'; export $runpath_var" + fi + test -n "$dep_rpath" && deplibs="$dep_rpath $deplibs" + fi + + shlibpath=$finalize_shlibpath + test relink = "$opt_mode" || shlibpath=$compile_shlibpath$shlibpath + if test -n "$shlibpath"; then + eval "$shlibpath_var='$shlibpath\$$shlibpath_var'; export $shlibpath_var" + fi + + # Get the real and link names of the library. + eval shared_ext=\"$shrext_cmds\" + eval library_names=\"$library_names_spec\" + set dummy $library_names + shift + realname=$1 + shift + + if test -n "$soname_spec"; then + eval soname=\"$soname_spec\" + else + soname=$realname + fi + if test -z "$dlname"; then + dlname=$soname + fi + + lib=$output_objdir/$realname + linknames= + for link + do + func_append linknames " $link" + done + + # Use standard objects if they are pic + test -z "$pic_flag" && libobjs=`$ECHO "$libobjs" | $SP2NL | $SED "$lo2o" | $NL2SP` + test "X$libobjs" = "X " && libobjs= + + delfiles= + if test -n "$export_symbols" && test -n "$include_expsyms"; then + $opt_dry_run || cp "$export_symbols" "$output_objdir/$libname.uexp" + export_symbols=$output_objdir/$libname.uexp + func_append delfiles " $export_symbols" + fi + + orig_export_symbols= + case $host_os in + cygwin* | mingw* | cegcc*) + if test -n "$export_symbols" && test -z "$export_symbols_regex"; then + # exporting using user supplied symfile + func_dll_def_p "$export_symbols" || { + # and it's NOT already a .def file. Must figure out + # which of the given symbols are data symbols and tag + # them as such. So, trigger use of export_symbols_cmds. + # export_symbols gets reassigned inside the "prepare + # the list of exported symbols" if statement, so the + # include_expsyms logic still works. + orig_export_symbols=$export_symbols + export_symbols= + always_export_symbols=yes + } + fi + ;; + esac + + # Prepare the list of exported symbols + if test -z "$export_symbols"; then + if test yes = "$always_export_symbols" || test -n "$export_symbols_regex"; then + func_verbose "generating symbol list for '$libname.la'" + export_symbols=$output_objdir/$libname.exp + $opt_dry_run || $RM $export_symbols + cmds=$export_symbols_cmds + save_ifs=$IFS; IFS='~' + for cmd1 in $cmds; do + IFS=$save_ifs + # Take the normal branch if the nm_file_list_spec branch + # doesn't work or if tool conversion is not needed. + case $nm_file_list_spec~$to_tool_file_cmd in + *~func_convert_file_noop | *~func_convert_file_msys_to_w32 | ~*) + try_normal_branch=yes + eval cmd=\"$cmd1\" + func_len " $cmd" + len=$func_len_result + ;; + *) + try_normal_branch=no + ;; + esac + if test yes = "$try_normal_branch" \ + && { test "$len" -lt "$max_cmd_len" \ + || test "$max_cmd_len" -le -1; } + then + func_show_eval "$cmd" 'exit $?' + skipped_export=false + elif test -n "$nm_file_list_spec"; then + func_basename "$output" + output_la=$func_basename_result + save_libobjs=$libobjs + save_output=$output + output=$output_objdir/$output_la.nm + func_to_tool_file "$output" + libobjs=$nm_file_list_spec$func_to_tool_file_result + func_append delfiles " $output" + func_verbose "creating $NM input file list: $output" + for obj in $save_libobjs; do + func_to_tool_file "$obj" + $ECHO "$func_to_tool_file_result" + done > "$output" + eval cmd=\"$cmd1\" + func_show_eval "$cmd" 'exit $?' + output=$save_output + libobjs=$save_libobjs + skipped_export=false + else + # The command line is too long to execute in one step. + func_verbose "using reloadable object file for export list..." + skipped_export=: + # Break out early, otherwise skipped_export may be + # set to false by a later but shorter cmd. + break + fi + done + IFS=$save_ifs + if test -n "$export_symbols_regex" && test : != "$skipped_export"; then + func_show_eval '$EGREP -e "$export_symbols_regex" "$export_symbols" > "${export_symbols}T"' + func_show_eval '$MV "${export_symbols}T" "$export_symbols"' + fi + fi + fi + + if test -n "$export_symbols" && test -n "$include_expsyms"; then + tmp_export_symbols=$export_symbols + test -n "$orig_export_symbols" && tmp_export_symbols=$orig_export_symbols + $opt_dry_run || eval '$ECHO "$include_expsyms" | $SP2NL >> "$tmp_export_symbols"' + fi + + if test : != "$skipped_export" && test -n "$orig_export_symbols"; then + # The given exports_symbols file has to be filtered, so filter it. + func_verbose "filter symbol list for '$libname.la' to tag DATA exports" + # FIXME: $output_objdir/$libname.filter potentially contains lots of + # 's' commands, which not all seds can handle. GNU sed should be fine + # though. Also, the filter scales superlinearly with the number of + # global variables. join(1) would be nice here, but unfortunately + # isn't a blessed tool. + $opt_dry_run || $SED -e '/[ ,]DATA/!d;s,\(.*\)\([ \,].*\),s|^\1$|\1\2|,' < $export_symbols > $output_objdir/$libname.filter + func_append delfiles " $export_symbols $output_objdir/$libname.filter" + export_symbols=$output_objdir/$libname.def + $opt_dry_run || $SED -f $output_objdir/$libname.filter < $orig_export_symbols > $export_symbols + fi + + tmp_deplibs= + for test_deplib in $deplibs; do + case " $convenience " in + *" $test_deplib "*) ;; + *) + func_append tmp_deplibs " $test_deplib" + ;; + esac + done + deplibs=$tmp_deplibs + + if test -n "$convenience"; then + if test -n "$whole_archive_flag_spec" && + test yes = "$compiler_needs_object" && + test -z "$libobjs"; then + # extract the archives, so we have objects to list. + # TODO: could optimize this to just extract one archive. + whole_archive_flag_spec= + fi + if test -n "$whole_archive_flag_spec"; then + save_libobjs=$libobjs + eval libobjs=\"\$libobjs $whole_archive_flag_spec\" + test "X$libobjs" = "X " && libobjs= + else + gentop=$output_objdir/${outputname}x + func_append generated " $gentop" + + func_extract_archives $gentop $convenience + func_append libobjs " $func_extract_archives_result" + test "X$libobjs" = "X " && libobjs= + fi + fi + + if test yes = "$thread_safe" && test -n "$thread_safe_flag_spec"; then + eval flag=\"$thread_safe_flag_spec\" + func_append linker_flags " $flag" + fi + + # Make a backup of the uninstalled library when relinking + if test relink = "$opt_mode"; then + $opt_dry_run || eval '(cd $output_objdir && $RM ${realname}U && $MV $realname ${realname}U)' || exit $? + fi + + # Do each of the archive commands. + if test yes = "$module" && test -n "$module_cmds"; then + if test -n "$export_symbols" && test -n "$module_expsym_cmds"; then + eval test_cmds=\"$module_expsym_cmds\" + cmds=$module_expsym_cmds + else + eval test_cmds=\"$module_cmds\" + cmds=$module_cmds + fi + else + if test -n "$export_symbols" && test -n "$archive_expsym_cmds"; then + eval test_cmds=\"$archive_expsym_cmds\" + cmds=$archive_expsym_cmds + else + eval test_cmds=\"$archive_cmds\" + cmds=$archive_cmds + fi + fi + + if test : != "$skipped_export" && + func_len " $test_cmds" && + len=$func_len_result && + test "$len" -lt "$max_cmd_len" || test "$max_cmd_len" -le -1; then + : + else + # The command line is too long to link in one step, link piecewise + # or, if using GNU ld and skipped_export is not :, use a linker + # script. + + # Save the value of $output and $libobjs because we want to + # use them later. If we have whole_archive_flag_spec, we + # want to use save_libobjs as it was before + # whole_archive_flag_spec was expanded, because we can't + # assume the linker understands whole_archive_flag_spec. + # This may have to be revisited, in case too many + # convenience libraries get linked in and end up exceeding + # the spec. + if test -z "$convenience" || test -z "$whole_archive_flag_spec"; then + save_libobjs=$libobjs + fi + save_output=$output + func_basename "$output" + output_la=$func_basename_result + + # Clear the reloadable object creation command queue and + # initialize k to one. + test_cmds= + concat_cmds= + objlist= + last_robj= + k=1 + + if test -n "$save_libobjs" && test : != "$skipped_export" && test yes = "$with_gnu_ld"; then + output=$output_objdir/$output_la.lnkscript + func_verbose "creating GNU ld script: $output" + echo 'INPUT (' > $output + for obj in $save_libobjs + do + func_to_tool_file "$obj" + $ECHO "$func_to_tool_file_result" >> $output + done + echo ')' >> $output + func_append delfiles " $output" + func_to_tool_file "$output" + output=$func_to_tool_file_result + elif test -n "$save_libobjs" && test : != "$skipped_export" && test -n "$file_list_spec"; then + output=$output_objdir/$output_la.lnk + func_verbose "creating linker input file list: $output" + : > $output + set x $save_libobjs + shift + firstobj= + if test yes = "$compiler_needs_object"; then + firstobj="$1 " + shift + fi + for obj + do + func_to_tool_file "$obj" + $ECHO "$func_to_tool_file_result" >> $output + done + func_append delfiles " $output" + func_to_tool_file "$output" + output=$firstobj\"$file_list_spec$func_to_tool_file_result\" + else + if test -n "$save_libobjs"; then + func_verbose "creating reloadable object files..." + output=$output_objdir/$output_la-$k.$objext + eval test_cmds=\"$reload_cmds\" + func_len " $test_cmds" + len0=$func_len_result + len=$len0 + + # Loop over the list of objects to be linked. + for obj in $save_libobjs + do + func_len " $obj" + func_arith $len + $func_len_result + len=$func_arith_result + if test -z "$objlist" || + test "$len" -lt "$max_cmd_len"; then + func_append objlist " $obj" + else + # The command $test_cmds is almost too long, add a + # command to the queue. + if test 1 -eq "$k"; then + # The first file doesn't have a previous command to add. + reload_objs=$objlist + eval concat_cmds=\"$reload_cmds\" + else + # All subsequent reloadable object files will link in + # the last one created. + reload_objs="$objlist $last_robj" + eval concat_cmds=\"\$concat_cmds~$reload_cmds~\$RM $last_robj\" + fi + last_robj=$output_objdir/$output_la-$k.$objext + func_arith $k + 1 + k=$func_arith_result + output=$output_objdir/$output_la-$k.$objext + objlist=" $obj" + func_len " $last_robj" + func_arith $len0 + $func_len_result + len=$func_arith_result + fi + done + # Handle the remaining objects by creating one last + # reloadable object file. All subsequent reloadable object + # files will link in the last one created. + test -z "$concat_cmds" || concat_cmds=$concat_cmds~ + reload_objs="$objlist $last_robj" + eval concat_cmds=\"\$concat_cmds$reload_cmds\" + if test -n "$last_robj"; then + eval concat_cmds=\"\$concat_cmds~\$RM $last_robj\" + fi + func_append delfiles " $output" + + else + output= + fi + + ${skipped_export-false} && { + func_verbose "generating symbol list for '$libname.la'" + export_symbols=$output_objdir/$libname.exp + $opt_dry_run || $RM $export_symbols + libobjs=$output + # Append the command to create the export file. + test -z "$concat_cmds" || concat_cmds=$concat_cmds~ + eval concat_cmds=\"\$concat_cmds$export_symbols_cmds\" + if test -n "$last_robj"; then + eval concat_cmds=\"\$concat_cmds~\$RM $last_robj\" + fi + } + + test -n "$save_libobjs" && + func_verbose "creating a temporary reloadable object file: $output" + + # Loop through the commands generated above and execute them. + save_ifs=$IFS; IFS='~' + for cmd in $concat_cmds; do + IFS=$save_ifs + $opt_quiet || { + func_quote_arg expand,pretty "$cmd" + eval "func_echo $func_quote_arg_result" + } + $opt_dry_run || eval "$cmd" || { + lt_exit=$? + + # Restore the uninstalled library and exit + if test relink = "$opt_mode"; then + ( cd "$output_objdir" && \ + $RM "${realname}T" && \ + $MV "${realname}U" "$realname" ) + fi + + exit $lt_exit + } + done + IFS=$save_ifs + + if test -n "$export_symbols_regex" && ${skipped_export-false}; then + func_show_eval '$EGREP -e "$export_symbols_regex" "$export_symbols" > "${export_symbols}T"' + func_show_eval '$MV "${export_symbols}T" "$export_symbols"' + fi + fi + + ${skipped_export-false} && { + if test -n "$export_symbols" && test -n "$include_expsyms"; then + tmp_export_symbols=$export_symbols + test -n "$orig_export_symbols" && tmp_export_symbols=$orig_export_symbols + $opt_dry_run || eval '$ECHO "$include_expsyms" | $SP2NL >> "$tmp_export_symbols"' + fi + + if test -n "$orig_export_symbols"; then + # The given exports_symbols file has to be filtered, so filter it. + func_verbose "filter symbol list for '$libname.la' to tag DATA exports" + # FIXME: $output_objdir/$libname.filter potentially contains lots of + # 's' commands, which not all seds can handle. GNU sed should be fine + # though. Also, the filter scales superlinearly with the number of + # global variables. join(1) would be nice here, but unfortunately + # isn't a blessed tool. + $opt_dry_run || $SED -e '/[ ,]DATA/!d;s,\(.*\)\([ \,].*\),s|^\1$|\1\2|,' < $export_symbols > $output_objdir/$libname.filter + func_append delfiles " $export_symbols $output_objdir/$libname.filter" + export_symbols=$output_objdir/$libname.def + $opt_dry_run || $SED -f $output_objdir/$libname.filter < $orig_export_symbols > $export_symbols + fi + } + + libobjs=$output + # Restore the value of output. + output=$save_output + + if test -n "$convenience" && test -n "$whole_archive_flag_spec"; then + eval libobjs=\"\$libobjs $whole_archive_flag_spec\" + test "X$libobjs" = "X " && libobjs= + fi + # Expand the library linking commands again to reset the + # value of $libobjs for piecewise linking. + + # Do each of the archive commands. + if test yes = "$module" && test -n "$module_cmds"; then + if test -n "$export_symbols" && test -n "$module_expsym_cmds"; then + cmds=$module_expsym_cmds + else + cmds=$module_cmds + fi + else + if test -n "$export_symbols" && test -n "$archive_expsym_cmds"; then + cmds=$archive_expsym_cmds + else + cmds=$archive_cmds + fi + fi + fi + + if test -n "$delfiles"; then + # Append the command to remove temporary files to $cmds. + eval cmds=\"\$cmds~\$RM $delfiles\" + fi + + # Add any objects from preloaded convenience libraries + if test -n "$dlprefiles"; then + gentop=$output_objdir/${outputname}x + func_append generated " $gentop" + + func_extract_archives $gentop $dlprefiles + func_append libobjs " $func_extract_archives_result" + test "X$libobjs" = "X " && libobjs= + fi + + save_ifs=$IFS; IFS='~' + for cmd in $cmds; do + IFS=$sp$nl + eval cmd=\"$cmd\" + IFS=$save_ifs + $opt_quiet || { + func_quote_arg expand,pretty "$cmd" + eval "func_echo $func_quote_arg_result" + } + $opt_dry_run || eval "$cmd" || { + lt_exit=$? + + # Restore the uninstalled library and exit + if test relink = "$opt_mode"; then + ( cd "$output_objdir" && \ + $RM "${realname}T" && \ + $MV "${realname}U" "$realname" ) + fi + + exit $lt_exit + } + done + IFS=$save_ifs + + # Restore the uninstalled library and exit + if test relink = "$opt_mode"; then + $opt_dry_run || eval '(cd $output_objdir && $RM ${realname}T && $MV $realname ${realname}T && $MV ${realname}U $realname)' || exit $? + + if test -n "$convenience"; then + if test -z "$whole_archive_flag_spec"; then + func_show_eval '${RM}r "$gentop"' + fi + fi + + exit $EXIT_SUCCESS + fi + + # Create links to the real library. + for linkname in $linknames; do + if test "$realname" != "$linkname"; then + func_show_eval '(cd "$output_objdir" && $RM "$linkname" && $LN_S "$realname" "$linkname")' 'exit $?' + fi + done + + # If -module or -export-dynamic was specified, set the dlname. + if test yes = "$module" || test yes = "$export_dynamic"; then + # On all known operating systems, these are identical. + dlname=$soname + fi + fi + ;; + + obj) + if test -n "$dlfiles$dlprefiles" || test no != "$dlself"; then + func_warning "'-dlopen' is ignored for objects" + fi + + case " $deplibs" in + *\ -l* | *\ -L*) + func_warning "'-l' and '-L' are ignored for objects" ;; + esac + + test -n "$rpath" && \ + func_warning "'-rpath' is ignored for objects" + + test -n "$xrpath" && \ + func_warning "'-R' is ignored for objects" + + test -n "$vinfo" && \ + func_warning "'-version-info' is ignored for objects" + + test -n "$release" && \ + func_warning "'-release' is ignored for objects" + + case $output in + *.lo) + test -n "$objs$old_deplibs" && \ + func_fatal_error "cannot build library object '$output' from non-libtool objects" + + libobj=$output + func_lo2o "$libobj" + obj=$func_lo2o_result + ;; + *) + libobj= + obj=$output + ;; + esac + + # Delete the old objects. + $opt_dry_run || $RM $obj $libobj + + # Objects from convenience libraries. This assumes + # single-version convenience libraries. Whenever we create + # different ones for PIC/non-PIC, this we'll have to duplicate + # the extraction. + reload_conv_objs= + gentop= + # if reload_cmds runs $LD directly, get rid of -Wl from + # whole_archive_flag_spec and hope we can get by with turning comma + # into space. + case $reload_cmds in + *\$LD[\ \$]*) wl= ;; + esac + if test -n "$convenience"; then + if test -n "$whole_archive_flag_spec"; then + eval tmp_whole_archive_flags=\"$whole_archive_flag_spec\" + test -n "$wl" || tmp_whole_archive_flags=`$ECHO "$tmp_whole_archive_flags" | $SED 's|,| |g'` + reload_conv_objs=$reload_objs\ $tmp_whole_archive_flags + else + gentop=$output_objdir/${obj}x + func_append generated " $gentop" + + func_extract_archives $gentop $convenience + reload_conv_objs="$reload_objs $func_extract_archives_result" + fi + fi + + # If we're not building shared, we need to use non_pic_objs + test yes = "$build_libtool_libs" || libobjs=$non_pic_objects + + # Create the old-style object. + reload_objs=$objs$old_deplibs' '`$ECHO "$libobjs" | $SP2NL | $SED "/\.$libext$/d; /\.lib$/d; $lo2o" | $NL2SP`' '$reload_conv_objs + + output=$obj + func_execute_cmds "$reload_cmds" 'exit $?' + + # Exit if we aren't doing a library object file. + if test -z "$libobj"; then + if test -n "$gentop"; then + func_show_eval '${RM}r "$gentop"' + fi + + exit $EXIT_SUCCESS + fi + + test yes = "$build_libtool_libs" || { + if test -n "$gentop"; then + func_show_eval '${RM}r "$gentop"' + fi + + # Create an invalid libtool object if no PIC, so that we don't + # accidentally link it into a program. + # $show "echo timestamp > $libobj" + # $opt_dry_run || eval "echo timestamp > $libobj" || exit $? + exit $EXIT_SUCCESS + } + + if test -n "$pic_flag" || test default != "$pic_mode"; then + # Only do commands if we really have different PIC objects. + reload_objs="$libobjs $reload_conv_objs" + output=$libobj + func_execute_cmds "$reload_cmds" 'exit $?' + fi + + if test -n "$gentop"; then + func_show_eval '${RM}r "$gentop"' + fi + + exit $EXIT_SUCCESS + ;; + + prog) + case $host in + *cygwin*) func_stripname '' '.exe' "$output" + output=$func_stripname_result.exe;; + esac + test -n "$vinfo" && \ + func_warning "'-version-info' is ignored for programs" + + test -n "$release" && \ + func_warning "'-release' is ignored for programs" + + $preload \ + && test unknown,unknown,unknown = "$dlopen_support,$dlopen_self,$dlopen_self_static" \ + && func_warning "'LT_INIT([dlopen])' not used. Assuming no dlopen support." + + case $host in + *-*-rhapsody* | *-*-darwin1.[012]) + # On Rhapsody replace the C library is the System framework + compile_deplibs=`$ECHO " $compile_deplibs" | $SED 's/ -lc / System.ltframework /'` + finalize_deplibs=`$ECHO " $finalize_deplibs" | $SED 's/ -lc / System.ltframework /'` + ;; + esac + + case $host in + *-*-darwin*) + # Don't allow lazy linking, it breaks C++ global constructors + # But is supposedly fixed on 10.4 or later (yay!). + if test CXX = "$tagname"; then + case ${MACOSX_DEPLOYMENT_TARGET-10.0} in + 10.[0123]) + func_append compile_command " $wl-bind_at_load" + func_append finalize_command " $wl-bind_at_load" + ;; + esac + fi + # Time to change all our "foo.ltframework" stuff back to "-framework foo" + compile_deplibs=`$ECHO " $compile_deplibs" | $SED 's% \([^ $]*\).ltframework% -framework \1%g'` + finalize_deplibs=`$ECHO " $finalize_deplibs" | $SED 's% \([^ $]*\).ltframework% -framework \1%g'` + ;; + esac + + + # move library search paths that coincide with paths to not yet + # installed libraries to the beginning of the library search list + new_libs= + for path in $notinst_path; do + case " $new_libs " in + *" -L$path/$objdir "*) ;; + *) + case " $compile_deplibs " in + *" -L$path/$objdir "*) + func_append new_libs " -L$path/$objdir" ;; + esac + ;; + esac + done + for deplib in $compile_deplibs; do + case $deplib in + -L*) + case " $new_libs " in + *" $deplib "*) ;; + *) func_append new_libs " $deplib" ;; + esac + ;; + *) func_append new_libs " $deplib" ;; + esac + done + compile_deplibs=$new_libs + + + func_append compile_command " $compile_deplibs" + func_append finalize_command " $finalize_deplibs" + + if test -n "$rpath$xrpath"; then + # If the user specified any rpath flags, then add them. + for libdir in $rpath $xrpath; do + # This is the magic to use -rpath. + case "$finalize_rpath " in + *" $libdir "*) ;; + *) func_append finalize_rpath " $libdir" ;; + esac + done + fi + + # Now hardcode the library paths + rpath= + hardcode_libdirs= + for libdir in $compile_rpath $finalize_rpath; do + if test -n "$hardcode_libdir_flag_spec"; then + if test -n "$hardcode_libdir_separator"; then + if test -z "$hardcode_libdirs"; then + hardcode_libdirs=$libdir + else + # Just accumulate the unique libdirs. + case $hardcode_libdir_separator$hardcode_libdirs$hardcode_libdir_separator in + *"$hardcode_libdir_separator$libdir$hardcode_libdir_separator"*) + ;; + *) + func_append hardcode_libdirs "$hardcode_libdir_separator$libdir" + ;; + esac + fi + else + eval flag=\"$hardcode_libdir_flag_spec\" + func_append rpath " $flag" + fi + elif test -n "$runpath_var"; then + case "$perm_rpath " in + *" $libdir "*) ;; + *) func_append perm_rpath " $libdir" ;; + esac + fi + case $host in + *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2* | *-cegcc*) + testbindir=`$ECHO "$libdir" | $SED -e 's*/lib$*/bin*'` + case :$dllsearchpath: in + *":$libdir:"*) ;; + ::) dllsearchpath=$libdir;; + *) func_append dllsearchpath ":$libdir";; + esac + case :$dllsearchpath: in + *":$testbindir:"*) ;; + ::) dllsearchpath=$testbindir;; + *) func_append dllsearchpath ":$testbindir";; + esac + ;; + esac + done + # Substitute the hardcoded libdirs into the rpath. + if test -n "$hardcode_libdir_separator" && + test -n "$hardcode_libdirs"; then + libdir=$hardcode_libdirs + eval rpath=\" $hardcode_libdir_flag_spec\" + fi + compile_rpath=$rpath + + rpath= + hardcode_libdirs= + for libdir in $finalize_rpath; do + if test -n "$hardcode_libdir_flag_spec"; then + if test -n "$hardcode_libdir_separator"; then + if test -z "$hardcode_libdirs"; then + hardcode_libdirs=$libdir + else + # Just accumulate the unique libdirs. + case $hardcode_libdir_separator$hardcode_libdirs$hardcode_libdir_separator in + *"$hardcode_libdir_separator$libdir$hardcode_libdir_separator"*) + ;; + *) + func_append hardcode_libdirs "$hardcode_libdir_separator$libdir" + ;; + esac + fi + else + eval flag=\"$hardcode_libdir_flag_spec\" + func_append rpath " $flag" + fi + elif test -n "$runpath_var"; then + case "$finalize_perm_rpath " in + *" $libdir "*) ;; + *) func_append finalize_perm_rpath " $libdir" ;; + esac + fi + done + # Substitute the hardcoded libdirs into the rpath. + if test -n "$hardcode_libdir_separator" && + test -n "$hardcode_libdirs"; then + libdir=$hardcode_libdirs + eval rpath=\" $hardcode_libdir_flag_spec\" + fi + finalize_rpath=$rpath + + if test -n "$libobjs" && test yes = "$build_old_libs"; then + # Transform all the library objects into standard objects. + compile_command=`$ECHO "$compile_command" | $SP2NL | $SED "$lo2o" | $NL2SP` + finalize_command=`$ECHO "$finalize_command" | $SP2NL | $SED "$lo2o" | $NL2SP` + fi + + func_generate_dlsyms "$outputname" "@PROGRAM@" false + + # template prelinking step + if test -n "$prelink_cmds"; then + func_execute_cmds "$prelink_cmds" 'exit $?' + fi + + wrappers_required=: + case $host in + *cegcc* | *mingw32ce*) + # Disable wrappers for cegcc and mingw32ce hosts, we are cross compiling anyway. + wrappers_required=false + ;; + *cygwin* | *mingw* ) + test yes = "$build_libtool_libs" || wrappers_required=false + ;; + *) + if test no = "$need_relink" || test yes != "$build_libtool_libs"; then + wrappers_required=false + fi + ;; + esac + $wrappers_required || { + # Replace the output file specification. + compile_command=`$ECHO "$compile_command" | $SED 's%@OUTPUT@%'"$output"'%g'` + link_command=$compile_command$compile_rpath + + # We have no uninstalled library dependencies, so finalize right now. + exit_status=0 + func_show_eval "$link_command" 'exit_status=$?' + + if test -n "$postlink_cmds"; then + func_to_tool_file "$output" + postlink_cmds=`func_echo_all "$postlink_cmds" | $SED -e 's%@OUTPUT@%'"$output"'%g' -e 's%@TOOL_OUTPUT@%'"$func_to_tool_file_result"'%g'` + func_execute_cmds "$postlink_cmds" 'exit $?' + fi + + # Delete the generated files. + if test -f "$output_objdir/${outputname}S.$objext"; then + func_show_eval '$RM "$output_objdir/${outputname}S.$objext"' + fi + + exit $exit_status + } + + if test -n "$compile_shlibpath$finalize_shlibpath"; then + compile_command="$shlibpath_var=\"$compile_shlibpath$finalize_shlibpath\$$shlibpath_var\" $compile_command" + fi + if test -n "$finalize_shlibpath"; then + finalize_command="$shlibpath_var=\"$finalize_shlibpath\$$shlibpath_var\" $finalize_command" + fi + + compile_var= + finalize_var= + if test -n "$runpath_var"; then + if test -n "$perm_rpath"; then + # We should set the runpath_var. + rpath= + for dir in $perm_rpath; do + func_append rpath "$dir:" + done + compile_var="$runpath_var=\"$rpath\$$runpath_var\" " + fi + if test -n "$finalize_perm_rpath"; then + # We should set the runpath_var. + rpath= + for dir in $finalize_perm_rpath; do + func_append rpath "$dir:" + done + finalize_var="$runpath_var=\"$rpath\$$runpath_var\" " + fi + fi + + if test yes = "$no_install"; then + # We don't need to create a wrapper script. + link_command=$compile_var$compile_command$compile_rpath + # Replace the output file specification. + link_command=`$ECHO "$link_command" | $SED 's%@OUTPUT@%'"$output"'%g'` + # Delete the old output file. + $opt_dry_run || $RM $output + # Link the executable and exit + func_show_eval "$link_command" 'exit $?' + + if test -n "$postlink_cmds"; then + func_to_tool_file "$output" + postlink_cmds=`func_echo_all "$postlink_cmds" | $SED -e 's%@OUTPUT@%'"$output"'%g' -e 's%@TOOL_OUTPUT@%'"$func_to_tool_file_result"'%g'` + func_execute_cmds "$postlink_cmds" 'exit $?' + fi + + exit $EXIT_SUCCESS + fi + + case $hardcode_action,$fast_install in + relink,*) + # Fast installation is not supported + link_command=$compile_var$compile_command$compile_rpath + relink_command=$finalize_var$finalize_command$finalize_rpath + + func_warning "this platform does not like uninstalled shared libraries" + func_warning "'$output' will be relinked during installation" + ;; + *,yes) + link_command=$finalize_var$compile_command$finalize_rpath + relink_command=`$ECHO "$compile_var$compile_command$compile_rpath" | $SED 's%@OUTPUT@%\$progdir/\$file%g'` + ;; + *,no) + link_command=$compile_var$compile_command$compile_rpath + relink_command=$finalize_var$finalize_command$finalize_rpath + ;; + *,needless) + link_command=$finalize_var$compile_command$finalize_rpath + relink_command= + ;; + esac + + # Replace the output file specification. + link_command=`$ECHO "$link_command" | $SED 's%@OUTPUT@%'"$output_objdir/$outputname"'%g'` + + # Delete the old output files. + $opt_dry_run || $RM $output $output_objdir/$outputname $output_objdir/lt-$outputname + + func_show_eval "$link_command" 'exit $?' + + if test -n "$postlink_cmds"; then + func_to_tool_file "$output_objdir/$outputname" + postlink_cmds=`func_echo_all "$postlink_cmds" | $SED -e 's%@OUTPUT@%'"$output_objdir/$outputname"'%g' -e 's%@TOOL_OUTPUT@%'"$func_to_tool_file_result"'%g'` + func_execute_cmds "$postlink_cmds" 'exit $?' + fi + + # Now create the wrapper script. + func_verbose "creating $output" + + # Quote the relink command for shipping. + if test -n "$relink_command"; then + # Preserve any variables that may affect compiler behavior + for var in $variables_saved_for_relink; do + if eval test -z \"\${$var+set}\"; then + relink_command="{ test -z \"\${$var+set}\" || $lt_unset $var || { $var=; export $var; }; }; $relink_command" + elif eval var_value=\$$var; test -z "$var_value"; then + relink_command="$var=; export $var; $relink_command" + else + func_quote_arg pretty "$var_value" + relink_command="$var=$func_quote_arg_result; export $var; $relink_command" + fi + done + func_quote eval cd "`pwd`" + func_quote_arg pretty,unquoted "($func_quote_result; $relink_command)" + relink_command=$func_quote_arg_unquoted_result + fi + + # Only actually do things if not in dry run mode. + $opt_dry_run || { + # win32 will think the script is a binary if it has + # a .exe suffix, so we strip it off here. + case $output in + *.exe) func_stripname '' '.exe' "$output" + output=$func_stripname_result ;; + esac + # test for cygwin because mv fails w/o .exe extensions + case $host in + *cygwin*) + exeext=.exe + func_stripname '' '.exe' "$outputname" + outputname=$func_stripname_result ;; + *) exeext= ;; + esac + case $host in + *cygwin* | *mingw* ) + func_dirname_and_basename "$output" "" "." + output_name=$func_basename_result + output_path=$func_dirname_result + cwrappersource=$output_path/$objdir/lt-$output_name.c + cwrapper=$output_path/$output_name.exe + $RM $cwrappersource $cwrapper + trap "$RM $cwrappersource $cwrapper; exit $EXIT_FAILURE" 1 2 15 + + func_emit_cwrapperexe_src > $cwrappersource + + # The wrapper executable is built using the $host compiler, + # because it contains $host paths and files. If cross- + # compiling, it, like the target executable, must be + # executed on the $host or under an emulation environment. + $opt_dry_run || { + $LTCC $LTCFLAGS -o $cwrapper $cwrappersource + $STRIP $cwrapper + } + + # Now, create the wrapper script for func_source use: + func_ltwrapper_scriptname $cwrapper + $RM $func_ltwrapper_scriptname_result + trap "$RM $func_ltwrapper_scriptname_result; exit $EXIT_FAILURE" 1 2 15 + $opt_dry_run || { + # note: this script will not be executed, so do not chmod. + if test "x$build" = "x$host"; then + $cwrapper --lt-dump-script > $func_ltwrapper_scriptname_result + else + func_emit_wrapper no > $func_ltwrapper_scriptname_result + fi + } + ;; + * ) + $RM $output + trap "$RM $output; exit $EXIT_FAILURE" 1 2 15 + + func_emit_wrapper no > $output + chmod +x $output + ;; + esac + } + exit $EXIT_SUCCESS + ;; + esac + + # See if we need to build an old-fashioned archive. + for oldlib in $oldlibs; do + + case $build_libtool_libs in + convenience) + oldobjs="$libobjs_save $symfileobj" + addlibs=$convenience + build_libtool_libs=no + ;; + module) + oldobjs=$libobjs_save + addlibs=$old_convenience + build_libtool_libs=no + ;; + *) + oldobjs="$old_deplibs $non_pic_objects" + $preload && test -f "$symfileobj" \ + && func_append oldobjs " $symfileobj" + addlibs=$old_convenience + ;; + esac + + if test -n "$addlibs"; then + gentop=$output_objdir/${outputname}x + func_append generated " $gentop" + + func_extract_archives $gentop $addlibs + func_append oldobjs " $func_extract_archives_result" + fi + + # Do each command in the archive commands. + if test -n "$old_archive_from_new_cmds" && test yes = "$build_libtool_libs"; then + cmds=$old_archive_from_new_cmds + else + + # Add any objects from preloaded convenience libraries + if test -n "$dlprefiles"; then + gentop=$output_objdir/${outputname}x + func_append generated " $gentop" + + func_extract_archives $gentop $dlprefiles + func_append oldobjs " $func_extract_archives_result" + fi + + # POSIX demands no paths to be encoded in archives. We have + # to avoid creating archives with duplicate basenames if we + # might have to extract them afterwards, e.g., when creating a + # static archive out of a convenience library, or when linking + # the entirety of a libtool archive into another (currently + # not supported by libtool). + if (for obj in $oldobjs + do + func_basename "$obj" + $ECHO "$func_basename_result" + done | sort | sort -uc >/dev/null 2>&1); then + : + else + echo "copying selected object files to avoid basename conflicts..." + gentop=$output_objdir/${outputname}x + func_append generated " $gentop" + func_mkdir_p "$gentop" + save_oldobjs=$oldobjs + oldobjs= + counter=1 + for obj in $save_oldobjs + do + func_basename "$obj" + objbase=$func_basename_result + case " $oldobjs " in + " ") oldobjs=$obj ;; + *[\ /]"$objbase "*) + while :; do + # Make sure we don't pick an alternate name that also + # overlaps. + newobj=lt$counter-$objbase + func_arith $counter + 1 + counter=$func_arith_result + case " $oldobjs " in + *[\ /]"$newobj "*) ;; + *) if test ! -f "$gentop/$newobj"; then break; fi ;; + esac + done + func_show_eval "ln $obj $gentop/$newobj || cp $obj $gentop/$newobj" + func_append oldobjs " $gentop/$newobj" + ;; + *) func_append oldobjs " $obj" ;; + esac + done + fi + func_to_tool_file "$oldlib" func_convert_file_msys_to_w32 + tool_oldlib=$func_to_tool_file_result + eval cmds=\"$old_archive_cmds\" + + func_len " $cmds" + len=$func_len_result + if test "$len" -lt "$max_cmd_len" || test "$max_cmd_len" -le -1; then + cmds=$old_archive_cmds + elif test -n "$archiver_list_spec"; then + func_verbose "using command file archive linking..." + for obj in $oldobjs + do + func_to_tool_file "$obj" + $ECHO "$func_to_tool_file_result" + done > $output_objdir/$libname.libcmd + func_to_tool_file "$output_objdir/$libname.libcmd" + oldobjs=" $archiver_list_spec$func_to_tool_file_result" + cmds=$old_archive_cmds + else + # the command line is too long to link in one step, link in parts + func_verbose "using piecewise archive linking..." + save_RANLIB=$RANLIB + RANLIB=: + objlist= + concat_cmds= + save_oldobjs=$oldobjs + oldobjs= + # Is there a better way of finding the last object in the list? + for obj in $save_oldobjs + do + last_oldobj=$obj + done + eval test_cmds=\"$old_archive_cmds\" + func_len " $test_cmds" + len0=$func_len_result + len=$len0 + for obj in $save_oldobjs + do + func_len " $obj" + func_arith $len + $func_len_result + len=$func_arith_result + func_append objlist " $obj" + if test "$len" -lt "$max_cmd_len"; then + : + else + # the above command should be used before it gets too long + oldobjs=$objlist + if test "$obj" = "$last_oldobj"; then + RANLIB=$save_RANLIB + fi + test -z "$concat_cmds" || concat_cmds=$concat_cmds~ + eval concat_cmds=\"\$concat_cmds$old_archive_cmds\" + objlist= + len=$len0 + fi + done + RANLIB=$save_RANLIB + oldobjs=$objlist + if test -z "$oldobjs"; then + eval cmds=\"\$concat_cmds\" + else + eval cmds=\"\$concat_cmds~\$old_archive_cmds\" + fi + fi + fi + func_execute_cmds "$cmds" 'exit $?' + done + + test -n "$generated" && \ + func_show_eval "${RM}r$generated" + + # Now create the libtool archive. + case $output in + *.la) + old_library= + test yes = "$build_old_libs" && old_library=$libname.$libext + func_verbose "creating $output" + + # Preserve any variables that may affect compiler behavior + for var in $variables_saved_for_relink; do + if eval test -z \"\${$var+set}\"; then + relink_command="{ test -z \"\${$var+set}\" || $lt_unset $var || { $var=; export $var; }; }; $relink_command" + elif eval var_value=\$$var; test -z "$var_value"; then + relink_command="$var=; export $var; $relink_command" + else + func_quote_arg pretty,unquoted "$var_value" + relink_command="$var=$func_quote_arg_unquoted_result; export $var; $relink_command" + fi + done + # Quote the link command for shipping. + func_quote eval cd "`pwd`" + relink_command="($func_quote_result; $SHELL \"$progpath\" $preserve_args --mode=relink $libtool_args @inst_prefix_dir@)" + func_quote_arg pretty,unquoted "$relink_command" + relink_command=$func_quote_arg_unquoted_result + if test yes = "$hardcode_automatic"; then + relink_command= + fi + + # Only create the output if not a dry run. + $opt_dry_run || { + for installed in no yes; do + if test yes = "$installed"; then + if test -z "$install_libdir"; then + break + fi + output=$output_objdir/${outputname}i + # Replace all uninstalled libtool libraries with the installed ones + newdependency_libs= + for deplib in $dependency_libs; do + case $deplib in + *.la) + func_basename "$deplib" + name=$func_basename_result + func_resolve_sysroot "$deplib" + eval libdir=`$SED -n -e 's/^libdir=\(.*\)$/\1/p' $func_resolve_sysroot_result` + test -z "$libdir" && \ + func_fatal_error "'$deplib' is not a valid libtool archive" + func_append newdependency_libs " ${lt_sysroot:+=}$libdir/$name" + ;; + -L*) + func_stripname -L '' "$deplib" + func_replace_sysroot "$func_stripname_result" + func_append newdependency_libs " -L$func_replace_sysroot_result" + ;; + -R*) + func_stripname -R '' "$deplib" + func_replace_sysroot "$func_stripname_result" + func_append newdependency_libs " -R$func_replace_sysroot_result" + ;; + *) func_append newdependency_libs " $deplib" ;; + esac + done + dependency_libs=$newdependency_libs + newdlfiles= + + for lib in $dlfiles; do + case $lib in + *.la) + func_basename "$lib" + name=$func_basename_result + eval libdir=`$SED -n -e 's/^libdir=\(.*\)$/\1/p' $lib` + test -z "$libdir" && \ + func_fatal_error "'$lib' is not a valid libtool archive" + func_append newdlfiles " ${lt_sysroot:+=}$libdir/$name" + ;; + *) func_append newdlfiles " $lib" ;; + esac + done + dlfiles=$newdlfiles + newdlprefiles= + for lib in $dlprefiles; do + case $lib in + *.la) + # Only pass preopened files to the pseudo-archive (for + # eventual linking with the app. that links it) if we + # didn't already link the preopened objects directly into + # the library: + func_basename "$lib" + name=$func_basename_result + eval libdir=`$SED -n -e 's/^libdir=\(.*\)$/\1/p' $lib` + test -z "$libdir" && \ + func_fatal_error "'$lib' is not a valid libtool archive" + func_append newdlprefiles " ${lt_sysroot:+=}$libdir/$name" + ;; + esac + done + dlprefiles=$newdlprefiles + else + newdlfiles= + for lib in $dlfiles; do + case $lib in + [\\/]* | [A-Za-z]:[\\/]*) abs=$lib ;; + *) abs=`pwd`"/$lib" ;; + esac + func_append newdlfiles " $abs" + done + dlfiles=$newdlfiles + newdlprefiles= + for lib in $dlprefiles; do + case $lib in + [\\/]* | [A-Za-z]:[\\/]*) abs=$lib ;; + *) abs=`pwd`"/$lib" ;; + esac + func_append newdlprefiles " $abs" + done + dlprefiles=$newdlprefiles + fi + $RM $output + # place dlname in correct position for cygwin + # In fact, it would be nice if we could use this code for all target + # systems that can't hard-code library paths into their executables + # and that have no shared library path variable independent of PATH, + # but it turns out we can't easily determine that from inspecting + # libtool variables, so we have to hard-code the OSs to which it + # applies here; at the moment, that means platforms that use the PE + # object format with DLL files. See the long comment at the top of + # tests/bindir.at for full details. + tdlname=$dlname + case $host,$output,$installed,$module,$dlname in + *cygwin*,*lai,yes,no,*.dll | *mingw*,*lai,yes,no,*.dll | *cegcc*,*lai,yes,no,*.dll) + # If a -bindir argument was supplied, place the dll there. + if test -n "$bindir"; then + func_relative_path "$install_libdir" "$bindir" + tdlname=$func_relative_path_result/$dlname + else + # Otherwise fall back on heuristic. + tdlname=../bin/$dlname + fi + ;; + esac + $ECHO > $output "\ +# $outputname - a libtool library file +# Generated by $PROGRAM (GNU $PACKAGE) $VERSION +# +# Please DO NOT delete this file! +# It is necessary for linking the library. + +# The name that we can dlopen(3). +dlname='$tdlname' + +# Names of this library. +library_names='$library_names' + +# The name of the static archive. +old_library='$old_library' + +# Linker flags that cannot go in dependency_libs. +inherited_linker_flags='$new_inherited_linker_flags' + +# Libraries that this one depends upon. +dependency_libs='$dependency_libs' + +# Names of additional weak libraries provided by this library +weak_library_names='$weak_libs' + +# Version information for $libname. +current=$current +age=$age +revision=$revision + +# Is this an already installed library? +installed=$installed + +# Should we warn about portability when linking against -modules? +shouldnotlink=$module + +# Files to dlopen/dlpreopen +dlopen='$dlfiles' +dlpreopen='$dlprefiles' + +# Directory that this library needs to be installed in: +libdir='$install_libdir'" + if test no,yes = "$installed,$need_relink"; then + $ECHO >> $output "\ +relink_command=\"$relink_command\"" + fi + done + } + + # Do a symbolic link so that the libtool archive can be found in + # LD_LIBRARY_PATH before the program is installed. + func_show_eval '( cd "$output_objdir" && $RM "$outputname" && $LN_S "../$outputname" "$outputname" )' 'exit $?' + ;; + esac + exit $EXIT_SUCCESS +} + +if test link = "$opt_mode" || test relink = "$opt_mode"; then + func_mode_link ${1+"$@"} +fi + + +# func_mode_uninstall arg... +func_mode_uninstall () +{ + $debug_cmd + + RM=$nonopt + files= + rmforce=false + exit_status=0 + + # This variable tells wrapper scripts just to set variables rather + # than running their programs. + libtool_install_magic=$magic + + for arg + do + case $arg in + -f) func_append RM " $arg"; rmforce=: ;; + -*) func_append RM " $arg" ;; + *) func_append files " $arg" ;; + esac + done + + test -z "$RM" && \ + func_fatal_help "you must specify an RM program" + + rmdirs= + + for file in $files; do + func_dirname "$file" "" "." + dir=$func_dirname_result + if test . = "$dir"; then + odir=$objdir + else + odir=$dir/$objdir + fi + func_basename "$file" + name=$func_basename_result + test uninstall = "$opt_mode" && odir=$dir + + # Remember odir for removal later, being careful to avoid duplicates + if test clean = "$opt_mode"; then + case " $rmdirs " in + *" $odir "*) ;; + *) func_append rmdirs " $odir" ;; + esac + fi + + # Don't error if the file doesn't exist and rm -f was used. + if { test -L "$file"; } >/dev/null 2>&1 || + { test -h "$file"; } >/dev/null 2>&1 || + test -f "$file"; then + : + elif test -d "$file"; then + exit_status=1 + continue + elif $rmforce; then + continue + fi + + rmfiles=$file + + case $name in + *.la) + # Possibly a libtool archive, so verify it. + if func_lalib_p "$file"; then + func_source $dir/$name + + # Delete the libtool libraries and symlinks. + for n in $library_names; do + func_append rmfiles " $odir/$n" + done + test -n "$old_library" && func_append rmfiles " $odir/$old_library" + + case $opt_mode in + clean) + case " $library_names " in + *" $dlname "*) ;; + *) test -n "$dlname" && func_append rmfiles " $odir/$dlname" ;; + esac + test -n "$libdir" && func_append rmfiles " $odir/$name $odir/${name}i" + ;; + uninstall) + if test -n "$library_names"; then + # Do each command in the postuninstall commands. + func_execute_cmds "$postuninstall_cmds" '$rmforce || exit_status=1' + fi + + if test -n "$old_library"; then + # Do each command in the old_postuninstall commands. + func_execute_cmds "$old_postuninstall_cmds" '$rmforce || exit_status=1' + fi + # FIXME: should reinstall the best remaining shared library. + ;; + esac + fi + ;; + + *.lo) + # Possibly a libtool object, so verify it. + if func_lalib_p "$file"; then + + # Read the .lo file + func_source $dir/$name + + # Add PIC object to the list of files to remove. + if test -n "$pic_object" && test none != "$pic_object"; then + func_append rmfiles " $dir/$pic_object" + fi + + # Add non-PIC object to the list of files to remove. + if test -n "$non_pic_object" && test none != "$non_pic_object"; then + func_append rmfiles " $dir/$non_pic_object" + fi + fi + ;; + + *) + if test clean = "$opt_mode"; then + noexename=$name + case $file in + *.exe) + func_stripname '' '.exe' "$file" + file=$func_stripname_result + func_stripname '' '.exe' "$name" + noexename=$func_stripname_result + # $file with .exe has already been added to rmfiles, + # add $file without .exe + func_append rmfiles " $file" + ;; + esac + # Do a test to see if this is a libtool program. + if func_ltwrapper_p "$file"; then + if func_ltwrapper_executable_p "$file"; then + func_ltwrapper_scriptname "$file" + relink_command= + func_source $func_ltwrapper_scriptname_result + func_append rmfiles " $func_ltwrapper_scriptname_result" + else + relink_command= + func_source $dir/$noexename + fi + + # note $name still contains .exe if it was in $file originally + # as does the version of $file that was added into $rmfiles + func_append rmfiles " $odir/$name $odir/${name}S.$objext" + if test yes = "$fast_install" && test -n "$relink_command"; then + func_append rmfiles " $odir/lt-$name" + fi + if test "X$noexename" != "X$name"; then + func_append rmfiles " $odir/lt-$noexename.c" + fi + fi + fi + ;; + esac + func_show_eval "$RM $rmfiles" 'exit_status=1' + done + + # Try to remove the $objdir's in the directories where we deleted files + for dir in $rmdirs; do + if test -d "$dir"; then + func_show_eval "rmdir $dir >/dev/null 2>&1" + fi + done + + exit $exit_status +} + +if test uninstall = "$opt_mode" || test clean = "$opt_mode"; then + func_mode_uninstall ${1+"$@"} +fi + +test -z "$opt_mode" && { + help=$generic_help + func_fatal_help "you must specify a MODE" +} + +test -z "$exec_cmd" && \ + func_fatal_help "invalid operation mode '$opt_mode'" + +if test -n "$exec_cmd"; then + eval exec "$exec_cmd" + exit $EXIT_FAILURE +fi + +exit $exit_status + + +# The TAGs below are defined such that we never get into a situation +# where we disable both kinds of libraries. Given conflicting +# choices, we go for a static library, that is the most portable, +# since we can't tell whether shared libraries were disabled because +# the user asked for that or because the platform doesn't support +# them. This is particularly important on AIX, because we don't +# support having both static and shared libraries enabled at the same +# time on that platform, so we default to a shared-only configuration. +# If a disable-shared tag is given, we'll fallback to a static-only +# configuration. But we'll never go from static-only to shared-only. + +# ### BEGIN LIBTOOL TAG CONFIG: disable-shared +build_libtool_libs=no +build_old_libs=yes +# ### END LIBTOOL TAG CONFIG: disable-shared + +# ### BEGIN LIBTOOL TAG CONFIG: disable-static +build_old_libs=`case $build_libtool_libs in yes) echo no;; *) echo yes;; esac` +# ### END LIBTOOL TAG CONFIG: disable-static + +# Local Variables: +# mode:shell-script +# sh-indentation:2 +# End: diff --git a/libtool b/libtool new file mode 100755 index 0000000..b059a05 --- /dev/null +++ b/libtool @@ -0,0 +1,12077 @@ +#! /bin/sh +# Generated automatically by config.status (libiconv) 1.17 +# Libtool was configured on host Yaha-baidu: +# NOTE: Changes made to this file will be lost: look at ltmain.sh. + +# Provide generalized library-building support services. +# Written by Gordon Matzigkeit, 1996 + +# Copyright (C) 2014 Free Software Foundation, Inc. +# This is free software; see the source for copying conditions. There is NO +# warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. + +# GNU Libtool is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of of the License, or +# (at your option) any later version. +# +# As a special exception to the GNU General Public License, if you +# distribute this file as part of a program or library that is built +# using GNU Libtool, you may include this file under the same +# distribution terms that you use for the rest of that program. +# +# GNU Libtool is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . + + +# The names of the tagged configurations supported by this script. +available_tags='RC ' + +# Configured defaults for sys_lib_dlsearch_path munging. +: ${LT_SYS_LIBRARY_PATH=""} + +# ### BEGIN LIBTOOL CONFIG + +# Which release of libtool.m4 was used? +macro_version=2.4.7 +macro_revision=2.4.7 + +# Whether or not to build static libraries. +build_old_libs=no + +# Assembler program. +AS="as" + +# DLL creation program. +DLLTOOL="false" + +# Object dumper program. +OBJDUMP="objdump" + +# Whether or not to build shared libraries. +build_libtool_libs=yes + +# What type of objects to build. +pic_mode=default + +# Whether or not to optimize for fast installation. +fast_install=needless + +# Shared archive member basename,for filename based shared library versioning on AIX. +shared_archive_member_spec= + +# Shell to use when invoking shell scripts. +SHELL="/bin/sh" + +# An echo program that protects backslashes. +ECHO="printf %s\\n" + +# The PATH separator for the build system. +PATH_SEPARATOR=":" + +# The host system. +host_alias= +host=aarch64-apple-darwin22.4.0 +host_os=darwin22.4.0 + +# The build system. +build_alias= +build=aarch64-apple-darwin22.4.0 +build_os=darwin22.4.0 + +# A sed program that does not truncate output. +SED="/usr/bin/sed" + +# Sed that helps us avoid accidentally triggering echo(1) options like -n. +Xsed="$SED -e 1s/^X//" + +# A grep program that handles long lines. +GREP="/usr/bin/grep" + +# An ERE matcher. +EGREP="/usr/bin/grep -E" + +# A literal string matcher. +FGREP="/usr/bin/grep -F" + +# A BSD- or MS-compatible name lister. +NM="/usr/bin/nm -B" + +# Whether we need soft or hard links. +LN_S="ln -s" + +# What is the maximum length of a command? +max_cmd_len=786432 + +# Object file suffix (normally "o"). +objext=o + +# Executable file suffix (normally ""). +exeext= + +# whether the shell understands "unset". +lt_unset=unset + +# turn spaces into newlines. +SP2NL="tr \\040 \\012" + +# turn newlines into spaces. +NL2SP="tr \\015\\012 \\040\\040" + +# convert $build file names to $host format. +to_host_file_cmd=func_convert_file_noop + +# convert $build files to toolchain format. +to_tool_file_cmd=func_convert_file_noop + +# A file(cmd) program that detects file types. +FILECMD="file" + +# Method to check whether dependent libraries are shared objects. +deplibs_check_method="pass_all" + +# Command to use when deplibs_check_method = "file_magic". +file_magic_cmd="\$MAGIC_CMD" + +# How to find potential files when deplibs_check_method = "file_magic". +file_magic_glob="" + +# Find potential files using nocaseglob when deplibs_check_method = "file_magic". +want_nocaseglob="no" + +# Command to associate shared and link libraries. +sharedlib_from_linklib_cmd="printf %s\\n" + +# The archiver. +AR="ar" + +# Flags to create an archive (by configure). +lt_ar_flags=cr + +# Flags to create an archive. +AR_FLAGS=${ARFLAGS-"$lt_ar_flags"} + +# How to feed a file listing to the archiver. +archiver_list_spec="" + +# A symbol stripping program. +STRIP="/usr/bin/strip" + +# Commands used to install an old-style archive. +RANLIB="ranlib" +old_postinstall_cmds="chmod 644 \$oldlib~\$RANLIB \$tool_oldlib" +old_postuninstall_cmds="" + +# Whether to use a lock for old archive extraction. +lock_old_archive_extraction=yes + +# A C compiler. +LTCC="gcc" + +# LTCC compiler flags. +LTCFLAGS="-g -O2" + +# Take the output of nm and produce a listing of raw symbols and C names. +global_symbol_pipe="/usr/bin/sed -n -e 's/^.*[ ]\\([ABCDGIRSTW][ABCDGIRSTW]*\\)[ ][ ]*_\\([_A-Za-z][_A-Za-z0-9]*\\)\$/\\1 _\\2 \\2/p' | /usr/bin/sed '/ __gnu_lto/d'" + +# Transform the output of nm in a proper C declaration. +global_symbol_to_cdecl="/usr/bin/sed -n -e 's/^T .* \\(.*\\)\$/extern int \\1();/p' -e 's/^[ABCDGIRSTW][ABCDGIRSTW]* .* \\(.*\\)\$/extern char \\1;/p'" + +# Transform the output of nm into a list of symbols to manually relocate. +global_symbol_to_import="" + +# Transform the output of nm in a C name address pair. +global_symbol_to_c_name_address="/usr/bin/sed -n -e 's/^: \\(.*\\) .*\$/ {\"\\1\", (void *) 0},/p' -e 's/^[ABCDGIRSTW][ABCDGIRSTW]* .* \\(.*\\)\$/ {\"\\1\", (void *) \\&\\1},/p'" + +# Transform the output of nm in a C name address pair when lib prefix is needed. +global_symbol_to_c_name_address_lib_prefix="/usr/bin/sed -n -e 's/^: \\(.*\\) .*\$/ {\"\\1\", (void *) 0},/p' -e 's/^[ABCDGIRSTW][ABCDGIRSTW]* .* \\(lib.*\\)\$/ {\"\\1\", (void *) \\&\\1},/p' -e 's/^[ABCDGIRSTW][ABCDGIRSTW]* .* \\(.*\\)\$/ {\"lib\\1\", (void *) \\&\\1},/p'" + +# The name lister interface. +nm_interface="BSD nm" + +# Specify filename containing input files for $NM. +nm_file_list_spec="@" + +# The root where to search for dependent libraries,and where our libraries should be installed. +lt_sysroot= + +# Command to truncate a binary pipe. +lt_truncate_bin="/bin/dd bs=4096 count=1" + +# The name of the directory that contains temporary libtool files. +objdir=.libs + +# Used to examine libraries when file_magic_cmd begins with "file". +MAGIC_CMD=file + +# Must we lock files when doing compilation? +need_locks="no" + +# Manifest tool. +MANIFEST_TOOL=":" + +# Tool to manipulate archived DWARF debug symbol files on Mac OS X. +DSYMUTIL="dsymutil" + +# Tool to change global to local symbols on Mac OS X. +NMEDIT="nmedit" + +# Tool to manipulate fat objects and archives on Mac OS X. +LIPO="lipo" + +# ldd/readelf like tool for Mach-O binaries on Mac OS X. +OTOOL="otool" + +# ldd/readelf like tool for 64 bit Mach-O binaries on Mac OS X 10.4. +OTOOL64=":" + +# Old archive suffix (normally "a"). +libext=a + +# Shared library suffix (normally ".so"). +shrext_cmds="\`test .\$module = .yes && echo .so || echo .dylib\`" + +# The commands to extract the exported symbol list from a shared archive. +extract_expsyms_cmds="" + +# Variables whose values should be saved in libtool wrapper scripts and +# restored at link time. +variables_saved_for_relink="PATH DYLD_LIBRARY_PATH GCC_EXEC_PREFIX COMPILER_PATH LIBRARY_PATH" + +# Do we need the "lib" prefix for modules? +need_lib_prefix=no + +# Do we need a version for libraries? +need_version=no + +# Library versioning type. +version_type=darwin + +# Shared library runtime path variable. +runpath_var= + +# Shared library path variable. +shlibpath_var=DYLD_LIBRARY_PATH + +# Is shlibpath searched before the hard-coded library search path? +shlibpath_overrides_runpath=yes + +# Format of library name prefix. +libname_spec="lib\$name" + +# List of archive names. First name is the real one, the rest are links. +# The last name is the one that the linker finds with -lNAME +library_names_spec="\$libname\$release\$major\$shared_ext \$libname\$shared_ext" + +# The coded name of the library, if different from the real name. +soname_spec="\$libname\$release\$major\$shared_ext" + +# Permission mode override for installation of shared libraries. +install_override_mode="" + +# Command to use after installation of a shared archive. +postinstall_cmds="" + +# Command to use after uninstallation of a shared archive. +postuninstall_cmds="" + +# Commands used to finish a libtool library installation in a directory. +finish_cmds="" + +# As "finish_cmds", except a single script fragment to be evaled but +# not shown. +finish_eval="" + +# Whether we should hardcode library paths into libraries. +hardcode_into_libs=no + +# Compile-time system search path for libraries. +sys_lib_search_path_spec="/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/clang/14.0.3 /usr/local/lib" + +# Detected run-time system search path for libraries. +sys_lib_dlsearch_path_spec="/usr/local/lib /lib /usr/lib" + +# Explicit LT_SYS_LIBRARY_PATH set during ./configure time. +configure_time_lt_sys_library_path="" + +# Whether dlopen is supported. +dlopen_support=unknown + +# Whether dlopen of programs is supported. +dlopen_self=unknown + +# Whether dlopen of statically linked programs is supported. +dlopen_self_static=unknown + +# Commands to strip libraries. +old_striplib="/usr/bin/strip -S" +striplib="/usr/bin/strip -x" + + +# The linker used to build libraries. +LD="/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ld" + +# How to create reloadable object files. +reload_flag=" -r" +reload_cmds="\$LTCC \$LTCFLAGS -nostdlib \$wl-r -o \$output\$reload_objs" + +# Commands used to build an old-style archive. +old_archive_cmds="\$AR \$AR_FLAGS \$oldlib\$oldobjs~\$RANLIB \$tool_oldlib" + +# A language specific compiler. +CC="gcc" + +# Is the compiler the GNU compiler? +with_gcc=yes + +# Compiler flag to turn off builtin functions. +no_builtin_flag=" -fno-builtin -fno-rtti -fno-exceptions" + +# Additional compiler flags for building library objects. +pic_flag=" -fno-common -DPIC" + +# How to pass a linker flag through the compiler. +wl="-Wl," + +# Compiler flag to prevent dynamic linking. +link_static_flag="" + +# Does compiler simultaneously support -c and -o options? +compiler_c_o="yes" + +# Whether or not to add -lc for building shared libraries. +build_libtool_need_lc=no + +# Whether or not to disallow shared libs when runtime libs are static. +allow_libtool_libs_with_static_runtimes=no + +# Compiler flag to allow reflexive dlopens. +export_dynamic_flag_spec="" + +# Compiler flag to generate shared objects directly from archives. +whole_archive_flag_spec="\`for conv in \$convenience\\\"\\\"; do test -n \\\"\$conv\\\" && new_convenience=\\\"\$new_convenience \$wl-force_load,\$conv\\\"; done; func_echo_all \\\"\$new_convenience\\\"\`" + +# Whether the compiler copes with passing no objects directly. +compiler_needs_object="no" + +# Create an old-style archive from a shared archive. +old_archive_from_new_cmds="" + +# Create a temporary old-style archive to link instead of a shared archive. +old_archive_from_expsyms_cmds="" + +# Commands used to build a shared archive. +archive_cmds="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring \$single_module" +archive_expsym_cmds="/usr/bin/sed 's|^|_|' < \$export_symbols > \$output_objdir/\$libname-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring \$single_module \$wl-exported_symbols_list,\$output_objdir/\$libname-symbols.expsym" + +# Commands used to build a loadable module if different from building +# a shared archive. +module_cmds="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags" +module_expsym_cmds="/usr/bin/sed -e 's|^|_|' < \$export_symbols > \$output_objdir/\$libname-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags \$wl-exported_symbols_list,\$output_objdir/\$libname-symbols.expsym" + +# Whether we are building with GNU ld or not. +with_gnu_ld="no" + +# Flag that allows shared libraries with undefined symbols to be built. +allow_undefined_flag="\$wl-undefined \${wl}dynamic_lookup" + +# Flag that enforces no undefined symbols. +no_undefined_flag="" + +# Flag to hardcode $libdir into a binary during linking. +# This must work even if $libdir does not exist +hardcode_libdir_flag_spec="" + +# Whether we need a single "-rpath" flag with a separated argument. +hardcode_libdir_separator="" + +# Set to "yes" if using DIR/libNAME$shared_ext during linking hardcodes +# DIR into the resulting binary. +hardcode_direct=no + +# Set to "yes" if using DIR/libNAME$shared_ext during linking hardcodes +# DIR into the resulting binary and the resulting library dependency is +# "absolute",i.e impossible to change by setting $shlibpath_var if the +# library is relocated. +hardcode_direct_absolute=no + +# Set to "yes" if using the -LDIR flag during linking hardcodes DIR +# into the resulting binary. +hardcode_minus_L=no + +# Set to "yes" if using SHLIBPATH_VAR=DIR during linking hardcodes DIR +# into the resulting binary. +hardcode_shlibpath_var=unsupported + +# Set to "yes" if building a shared library automatically hardcodes DIR +# into the library and all subsequent libraries and executables linked +# against it. +hardcode_automatic=yes + +# Set to yes if linker adds runtime paths of dependent libraries +# to runtime path list. +inherit_rpath=no + +# Whether libtool must link a program against all its dependency libraries. +link_all_deplibs=yes + +# Set to "yes" if exported symbols are required. +always_export_symbols=no + +# The commands to list exported symbols. +export_symbols_cmds="\$NM \$libobjs \$convenience | \$global_symbol_pipe | \$SED 's/.* //' | sort | uniq > \$export_symbols" + +# Symbols that should not be listed in the preloaded symbols. +exclude_expsyms="_GLOBAL_OFFSET_TABLE_|_GLOBAL__F[ID]_.*" + +# Symbols that must always be exported. +include_expsyms="" + +# Commands necessary for linking programs (against libraries) with templates. +prelink_cmds="" + +# Commands necessary for finishing linking programs. +postlink_cmds="" + +# Specify filename containing input files. +file_list_spec="" + +# How to hardcode a shared library path into an executable. +hardcode_action=immediate + +# ### END LIBTOOL CONFIG + + +# ### BEGIN FUNCTIONS SHARED WITH CONFIGURE + +# func_munge_path_list VARIABLE PATH +# ----------------------------------- +# VARIABLE is name of variable containing _space_ separated list of +# directories to be munged by the contents of PATH, which is string +# having a format: +# "DIR[:DIR]:" +# string "DIR[ DIR]" will be prepended to VARIABLE +# ":DIR[:DIR]" +# string "DIR[ DIR]" will be appended to VARIABLE +# "DIRP[:DIRP]::[DIRA:]DIRA" +# string "DIRP[ DIRP]" will be prepended to VARIABLE and string +# "DIRA[ DIRA]" will be appended to VARIABLE +# "DIR[:DIR]" +# VARIABLE will be replaced by "DIR[ DIR]" +func_munge_path_list () +{ + case x$2 in + x) + ;; + *:) + eval $1=\"`$ECHO $2 | $SED 's/:/ /g'` \$$1\" + ;; + x:*) + eval $1=\"\$$1 `$ECHO $2 | $SED 's/:/ /g'`\" + ;; + *::*) + eval $1=\"\$$1\ `$ECHO $2 | $SED -e 's/.*:://' -e 's/:/ /g'`\" + eval $1=\"`$ECHO $2 | $SED -e 's/::.*//' -e 's/:/ /g'`\ \$$1\" + ;; + *) + eval $1=\"`$ECHO $2 | $SED 's/:/ /g'`\" + ;; + esac +} + + +# Calculate cc_basename. Skip known compiler wrappers and cross-prefix. +func_cc_basename () +{ + for cc_temp in $*""; do + case $cc_temp in + compile | *[\\/]compile | ccache | *[\\/]ccache ) ;; + distcc | *[\\/]distcc | purify | *[\\/]purify ) ;; + \-*) ;; + *) break;; + esac + done + func_cc_basename_result=`$ECHO "$cc_temp" | $SED "s%.*/%%; s%^$host_alias-%%"` +} + + +# ### END FUNCTIONS SHARED WITH CONFIGURE + +#! /usr/bin/env sh +## DO NOT EDIT - This file generated from ./build-aux/ltmain.in +## by inline-source v2019-02-19.15 + +# libtool (GNU libtool) 2.4.7 +# Provide generalized library-building support services. +# Written by Gordon Matzigkeit , 1996 + +# Copyright (C) 1996-2019, 2021-2022 Free Software Foundation, Inc. +# This is free software; see the source for copying conditions. There is NO +# warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. + +# GNU Libtool is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# As a special exception to the GNU General Public License, +# if you distribute this file as part of a program or library that +# is built using GNU Libtool, you may include this file under the +# same distribution terms that you use for the rest of that program. +# +# GNU Libtool is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . + + +PROGRAM=libtool +PACKAGE=libtool +VERSION=2.4.7 +package_revision=2.4.7 + + +## ------ ## +## Usage. ## +## ------ ## + +# Run './libtool --help' for help with using this script from the +# command line. + + +## ------------------------------- ## +## User overridable command paths. ## +## ------------------------------- ## + +# After configure completes, it has a better idea of some of the +# shell tools we need than the defaults used by the functions shared +# with bootstrap, so set those here where they can still be over- +# ridden by the user, but otherwise take precedence. + +: ${AUTOCONF="autoconf"} +: ${AUTOMAKE="automake"} + + +## -------------------------- ## +## Source external libraries. ## +## -------------------------- ## + +# Much of our low-level functionality needs to be sourced from external +# libraries, which are installed to $pkgauxdir. + +# Set a version string for this script. +scriptversion=2019-02-19.15; # UTC + +# General shell script boiler plate, and helper functions. +# Written by Gary V. Vaughan, 2004 + +# This is free software. There is NO warranty; not even for +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. +# +# Copyright (C) 2004-2019, 2021 Bootstrap Authors +# +# This file is dual licensed under the terms of the MIT license +# , and GPL version 2 or later +# . You must apply one of +# these licenses when using or redistributing this software or any of +# the files within it. See the URLs above, or the file `LICENSE` +# included in the Bootstrap distribution for the full license texts. + +# Please report bugs or propose patches to: +# + + +## ------ ## +## Usage. ## +## ------ ## + +# Evaluate this file near the top of your script to gain access to +# the functions and variables defined here: +# +# . `echo "$0" | ${SED-sed} 's|[^/]*$||'`/build-aux/funclib.sh +# +# If you need to override any of the default environment variable +# settings, do that before evaluating this file. + + +## -------------------- ## +## Shell normalisation. ## +## -------------------- ## + +# Some shells need a little help to be as Bourne compatible as possible. +# Before doing anything else, make sure all that help has been provided! + +DUALCASE=1; export DUALCASE # for MKS sh +if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then : + emulate sh + NULLCMD=: + # Pre-4.2 versions of Zsh do word splitting on ${1+"$@"}, which + # is contrary to our usage. Disable this feature. + alias -g '${1+"$@"}'='"$@"' + setopt NO_GLOB_SUBST +else + case `(set -o) 2>/dev/null` in *posix*) set -o posix ;; esac +fi + +# NLS nuisances: We save the old values in case they are required later. +_G_user_locale= +_G_safe_locale= +for _G_var in LANG LANGUAGE LC_ALL LC_CTYPE LC_COLLATE LC_MESSAGES +do + eval "if test set = \"\${$_G_var+set}\"; then + save_$_G_var=\$$_G_var + $_G_var=C + export $_G_var + _G_user_locale=\"$_G_var=\\\$save_\$_G_var; \$_G_user_locale\" + _G_safe_locale=\"$_G_var=C; \$_G_safe_locale\" + fi" +done +# These NLS vars are set unconditionally (bootstrap issue #24). Unset those +# in case the environment reset is needed later and the $save_* variant is not +# defined (see the code above). +LC_ALL=C +LANGUAGE=C +export LANGUAGE LC_ALL + +# Make sure IFS has a sensible default +sp=' ' +nl=' +' +IFS="$sp $nl" + +# There are apparently some retarded systems that use ';' as a PATH separator! +if test "${PATH_SEPARATOR+set}" != set; then + PATH_SEPARATOR=: + (PATH='/bin;/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 && { + (PATH='/bin:/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 || + PATH_SEPARATOR=';' + } +fi + + +# func_unset VAR +# -------------- +# Portably unset VAR. +# In some shells, an 'unset VAR' statement leaves a non-zero return +# status if VAR is already unset, which might be problematic if the +# statement is used at the end of a function (thus poisoning its return +# value) or when 'set -e' is active (causing even a spurious abort of +# the script in this case). +func_unset () +{ + { eval $1=; (eval unset $1) >/dev/null 2>&1 && eval unset $1 || : ; } +} + + +# Make sure CDPATH doesn't cause `cd` commands to output the target dir. +func_unset CDPATH + +# Make sure ${,E,F}GREP behave sanely. +func_unset GREP_OPTIONS + + +## ------------------------- ## +## Locate command utilities. ## +## ------------------------- ## + + +# func_executable_p FILE +# ---------------------- +# Check that FILE is an executable regular file. +func_executable_p () +{ + test -f "$1" && test -x "$1" +} + + +# func_path_progs PROGS_LIST CHECK_FUNC [PATH] +# -------------------------------------------- +# Search for either a program that responds to --version with output +# containing "GNU", or else returned by CHECK_FUNC otherwise, by +# trying all the directories in PATH with each of the elements of +# PROGS_LIST. +# +# CHECK_FUNC should accept the path to a candidate program, and +# set $func_check_prog_result if it truncates its output less than +# $_G_path_prog_max characters. +func_path_progs () +{ + _G_progs_list=$1 + _G_check_func=$2 + _G_PATH=${3-"$PATH"} + + _G_path_prog_max=0 + _G_path_prog_found=false + _G_save_IFS=$IFS; IFS=${PATH_SEPARATOR-:} + for _G_dir in $_G_PATH; do + IFS=$_G_save_IFS + test -z "$_G_dir" && _G_dir=. + for _G_prog_name in $_G_progs_list; do + for _exeext in '' .EXE; do + _G_path_prog=$_G_dir/$_G_prog_name$_exeext + func_executable_p "$_G_path_prog" || continue + case `"$_G_path_prog" --version 2>&1` in + *GNU*) func_path_progs_result=$_G_path_prog _G_path_prog_found=: ;; + *) $_G_check_func $_G_path_prog + func_path_progs_result=$func_check_prog_result + ;; + esac + $_G_path_prog_found && break 3 + done + done + done + IFS=$_G_save_IFS + test -z "$func_path_progs_result" && { + echo "no acceptable sed could be found in \$PATH" >&2 + exit 1 + } +} + + +# We want to be able to use the functions in this file before configure +# has figured out where the best binaries are kept, which means we have +# to search for them ourselves - except when the results are already set +# where we skip the searches. + +# Unless the user overrides by setting SED, search the path for either GNU +# sed, or the sed that truncates its output the least. +test -z "$SED" && { + _G_sed_script=s/aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb/ + for _G_i in 1 2 3 4 5 6 7; do + _G_sed_script=$_G_sed_script$nl$_G_sed_script + done + echo "$_G_sed_script" 2>/dev/null | sed 99q >conftest.sed + _G_sed_script= + + func_check_prog_sed () + { + _G_path_prog=$1 + + _G_count=0 + printf 0123456789 >conftest.in + while : + do + cat conftest.in conftest.in >conftest.tmp + mv conftest.tmp conftest.in + cp conftest.in conftest.nl + echo '' >> conftest.nl + "$_G_path_prog" -f conftest.sed conftest.out 2>/dev/null || break + diff conftest.out conftest.nl >/dev/null 2>&1 || break + _G_count=`expr $_G_count + 1` + if test "$_G_count" -gt "$_G_path_prog_max"; then + # Best one so far, save it but keep looking for a better one + func_check_prog_result=$_G_path_prog + _G_path_prog_max=$_G_count + fi + # 10*(2^10) chars as input seems more than enough + test 10 -lt "$_G_count" && break + done + rm -f conftest.in conftest.tmp conftest.nl conftest.out + } + + func_path_progs "sed gsed" func_check_prog_sed "$PATH:/usr/xpg4/bin" + rm -f conftest.sed + SED=$func_path_progs_result +} + + +# Unless the user overrides by setting GREP, search the path for either GNU +# grep, or the grep that truncates its output the least. +test -z "$GREP" && { + func_check_prog_grep () + { + _G_path_prog=$1 + + _G_count=0 + _G_path_prog_max=0 + printf 0123456789 >conftest.in + while : + do + cat conftest.in conftest.in >conftest.tmp + mv conftest.tmp conftest.in + cp conftest.in conftest.nl + echo 'GREP' >> conftest.nl + "$_G_path_prog" -e 'GREP$' -e '-(cannot match)-' conftest.out 2>/dev/null || break + diff conftest.out conftest.nl >/dev/null 2>&1 || break + _G_count=`expr $_G_count + 1` + if test "$_G_count" -gt "$_G_path_prog_max"; then + # Best one so far, save it but keep looking for a better one + func_check_prog_result=$_G_path_prog + _G_path_prog_max=$_G_count + fi + # 10*(2^10) chars as input seems more than enough + test 10 -lt "$_G_count" && break + done + rm -f conftest.in conftest.tmp conftest.nl conftest.out + } + + func_path_progs "grep ggrep" func_check_prog_grep "$PATH:/usr/xpg4/bin" + GREP=$func_path_progs_result +} + + +## ------------------------------- ## +## User overridable command paths. ## +## ------------------------------- ## + +# All uppercase variable names are used for environment variables. These +# variables can be overridden by the user before calling a script that +# uses them if a suitable command of that name is not already available +# in the command search PATH. + +: ${CP="cp -f"} +: ${ECHO="printf %s\n"} +: ${EGREP="$GREP -E"} +: ${FGREP="$GREP -F"} +: ${LN_S="ln -s"} +: ${MAKE="make"} +: ${MKDIR="mkdir"} +: ${MV="mv -f"} +: ${RM="rm -f"} +: ${SHELL="${CONFIG_SHELL-/bin/sh}"} + + +## -------------------- ## +## Useful sed snippets. ## +## -------------------- ## + +sed_dirname='s|/[^/]*$||' +sed_basename='s|^.*/||' + +# Sed substitution that helps us do robust quoting. It backslashifies +# metacharacters that are still active within double-quoted strings. +sed_quote_subst='s|\([`"$\\]\)|\\\1|g' + +# Same as above, but do not quote variable references. +sed_double_quote_subst='s/\(["`\\]\)/\\\1/g' + +# Sed substitution that turns a string into a regex matching for the +# string literally. +sed_make_literal_regex='s|[].[^$\\*\/]|\\&|g' + +# Sed substitution that converts a w32 file name or path +# that contains forward slashes, into one that contains +# (escaped) backslashes. A very naive implementation. +sed_naive_backslashify='s|\\\\*|\\|g;s|/|\\|g;s|\\|\\\\|g' + +# Re-'\' parameter expansions in output of sed_double_quote_subst that +# were '\'-ed in input to the same. If an odd number of '\' preceded a +# '$' in input to sed_double_quote_subst, that '$' was protected from +# expansion. Since each input '\' is now two '\'s, look for any number +# of runs of four '\'s followed by two '\'s and then a '$'. '\' that '$'. +_G_bs='\\' +_G_bs2='\\\\' +_G_bs4='\\\\\\\\' +_G_dollar='\$' +sed_double_backslash="\ + s/$_G_bs4/&\\ +/g + s/^$_G_bs2$_G_dollar/$_G_bs&/ + s/\\([^$_G_bs]\\)$_G_bs2$_G_dollar/\\1$_G_bs2$_G_bs$_G_dollar/g + s/\n//g" + +# require_check_ifs_backslash +# --------------------------- +# Check if we can use backslash as IFS='\' separator, and set +# $check_ifs_backshlash_broken to ':' or 'false'. +require_check_ifs_backslash=func_require_check_ifs_backslash +func_require_check_ifs_backslash () +{ + _G_save_IFS=$IFS + IFS='\' + _G_check_ifs_backshlash='a\\b' + for _G_i in $_G_check_ifs_backshlash + do + case $_G_i in + a) + check_ifs_backshlash_broken=false + ;; + '') + break + ;; + *) + check_ifs_backshlash_broken=: + break + ;; + esac + done + IFS=$_G_save_IFS + require_check_ifs_backslash=: +} + + +## ----------------- ## +## Global variables. ## +## ----------------- ## + +# Except for the global variables explicitly listed below, the following +# functions in the '^func_' namespace, and the '^require_' namespace +# variables initialised in the 'Resource management' section, sourcing +# this file will not pollute your global namespace with anything +# else. There's no portable way to scope variables in Bourne shell +# though, so actually running these functions will sometimes place +# results into a variable named after the function, and often use +# temporary variables in the '^_G_' namespace. If you are careful to +# avoid using those namespaces casually in your sourcing script, things +# should continue to work as you expect. And, of course, you can freely +# overwrite any of the functions or variables defined here before +# calling anything to customize them. + +EXIT_SUCCESS=0 +EXIT_FAILURE=1 +EXIT_MISMATCH=63 # $? = 63 is used to indicate version mismatch to missing. +EXIT_SKIP=77 # $? = 77 is used to indicate a skipped test to automake. + +# Allow overriding, eg assuming that you follow the convention of +# putting '$debug_cmd' at the start of all your functions, you can get +# bash to show function call trace with: +# +# debug_cmd='eval echo "${FUNCNAME[0]} $*" >&2' bash your-script-name +debug_cmd=${debug_cmd-":"} +exit_cmd=: + +# By convention, finish your script with: +# +# exit $exit_status +# +# so that you can set exit_status to non-zero if you want to indicate +# something went wrong during execution without actually bailing out at +# the point of failure. +exit_status=$EXIT_SUCCESS + +# Work around backward compatibility issue on IRIX 6.5. On IRIX 6.4+, sh +# is ksh but when the shell is invoked as "sh" and the current value of +# the _XPG environment variable is not equal to 1 (one), the special +# positional parameter $0, within a function call, is the name of the +# function. +progpath=$0 + +# The name of this program. +progname=`$ECHO "$progpath" |$SED "$sed_basename"` + +# Make sure we have an absolute progpath for reexecution: +case $progpath in + [\\/]*|[A-Za-z]:\\*) ;; + *[\\/]*) + progdir=`$ECHO "$progpath" |$SED "$sed_dirname"` + progdir=`cd "$progdir" && pwd` + progpath=$progdir/$progname + ;; + *) + _G_IFS=$IFS + IFS=${PATH_SEPARATOR-:} + for progdir in $PATH; do + IFS=$_G_IFS + test -x "$progdir/$progname" && break + done + IFS=$_G_IFS + test -n "$progdir" || progdir=`pwd` + progpath=$progdir/$progname + ;; +esac + + +## ----------------- ## +## Standard options. ## +## ----------------- ## + +# The following options affect the operation of the functions defined +# below, and should be set appropriately depending on run-time para- +# meters passed on the command line. + +opt_dry_run=false +opt_quiet=false +opt_verbose=false + +# Categories 'all' and 'none' are always available. Append any others +# you will pass as the first argument to func_warning from your own +# code. +warning_categories= + +# By default, display warnings according to 'opt_warning_types'. Set +# 'warning_func' to ':' to elide all warnings, or func_fatal_error to +# treat the next displayed warning as a fatal error. +warning_func=func_warn_and_continue + +# Set to 'all' to display all warnings, 'none' to suppress all +# warnings, or a space delimited list of some subset of +# 'warning_categories' to display only the listed warnings. +opt_warning_types=all + + +## -------------------- ## +## Resource management. ## +## -------------------- ## + +# This section contains definitions for functions that each ensure a +# particular resource (a file, or a non-empty configuration variable for +# example) is available, and if appropriate to extract default values +# from pertinent package files. Call them using their associated +# 'require_*' variable to ensure that they are executed, at most, once. +# +# It's entirely deliberate that calling these functions can set +# variables that don't obey the namespace limitations obeyed by the rest +# of this file, in order that that they be as useful as possible to +# callers. + + +# require_term_colors +# ------------------- +# Allow display of bold text on terminals that support it. +require_term_colors=func_require_term_colors +func_require_term_colors () +{ + $debug_cmd + + test -t 1 && { + # COLORTERM and USE_ANSI_COLORS environment variables take + # precedence, because most terminfo databases neglect to describe + # whether color sequences are supported. + test -n "${COLORTERM+set}" && : ${USE_ANSI_COLORS="1"} + + if test 1 = "$USE_ANSI_COLORS"; then + # Standard ANSI escape sequences + tc_reset='' + tc_bold=''; tc_standout='' + tc_red=''; tc_green='' + tc_blue=''; tc_cyan='' + else + # Otherwise trust the terminfo database after all. + test -n "`tput sgr0 2>/dev/null`" && { + tc_reset=`tput sgr0` + test -n "`tput bold 2>/dev/null`" && tc_bold=`tput bold` + tc_standout=$tc_bold + test -n "`tput smso 2>/dev/null`" && tc_standout=`tput smso` + test -n "`tput setaf 1 2>/dev/null`" && tc_red=`tput setaf 1` + test -n "`tput setaf 2 2>/dev/null`" && tc_green=`tput setaf 2` + test -n "`tput setaf 4 2>/dev/null`" && tc_blue=`tput setaf 4` + test -n "`tput setaf 5 2>/dev/null`" && tc_cyan=`tput setaf 5` + } + fi + } + + require_term_colors=: +} + + +## ----------------- ## +## Function library. ## +## ----------------- ## + +# This section contains a variety of useful functions to call in your +# scripts. Take note of the portable wrappers for features provided by +# some modern shells, which will fall back to slower equivalents on +# less featureful shells. + + +# func_append VAR VALUE +# --------------------- +# Append VALUE onto the existing contents of VAR. + + # We should try to minimise forks, especially on Windows where they are + # unreasonably slow, so skip the feature probes when bash or zsh are + # being used: + if test set = "${BASH_VERSION+set}${ZSH_VERSION+set}"; then + : ${_G_HAVE_ARITH_OP="yes"} + : ${_G_HAVE_XSI_OPS="yes"} + # The += operator was introduced in bash 3.1 + case $BASH_VERSION in + [12].* | 3.0 | 3.0*) ;; + *) + : ${_G_HAVE_PLUSEQ_OP="yes"} + ;; + esac + fi + + # _G_HAVE_PLUSEQ_OP + # Can be empty, in which case the shell is probed, "yes" if += is + # useable or anything else if it does not work. + test -z "$_G_HAVE_PLUSEQ_OP" \ + && (eval 'x=a; x+=" b"; test "a b" = "$x"') 2>/dev/null \ + && _G_HAVE_PLUSEQ_OP=yes + +if test yes = "$_G_HAVE_PLUSEQ_OP" +then + # This is an XSI compatible shell, allowing a faster implementation... + eval 'func_append () + { + $debug_cmd + + eval "$1+=\$2" + }' +else + # ...otherwise fall back to using expr, which is often a shell builtin. + func_append () + { + $debug_cmd + + eval "$1=\$$1\$2" + } +fi + + +# func_append_quoted VAR VALUE +# ---------------------------- +# Quote VALUE and append to the end of shell variable VAR, separated +# by a space. +if test yes = "$_G_HAVE_PLUSEQ_OP"; then + eval 'func_append_quoted () + { + $debug_cmd + + func_quote_arg pretty "$2" + eval "$1+=\\ \$func_quote_arg_result" + }' +else + func_append_quoted () + { + $debug_cmd + + func_quote_arg pretty "$2" + eval "$1=\$$1\\ \$func_quote_arg_result" + } +fi + + +# func_append_uniq VAR VALUE +# -------------------------- +# Append unique VALUE onto the existing contents of VAR, assuming +# entries are delimited by the first character of VALUE. For example: +# +# func_append_uniq options " --another-option option-argument" +# +# will only append to $options if " --another-option option-argument " +# is not already present somewhere in $options already (note spaces at +# each end implied by leading space in second argument). +func_append_uniq () +{ + $debug_cmd + + eval _G_current_value='`$ECHO $'$1'`' + _G_delim=`expr "$2" : '\(.\)'` + + case $_G_delim$_G_current_value$_G_delim in + *"$2$_G_delim"*) ;; + *) func_append "$@" ;; + esac +} + + +# func_arith TERM... +# ------------------ +# Set func_arith_result to the result of evaluating TERMs. + test -z "$_G_HAVE_ARITH_OP" \ + && (eval 'test 2 = $(( 1 + 1 ))') 2>/dev/null \ + && _G_HAVE_ARITH_OP=yes + +if test yes = "$_G_HAVE_ARITH_OP"; then + eval 'func_arith () + { + $debug_cmd + + func_arith_result=$(( $* )) + }' +else + func_arith () + { + $debug_cmd + + func_arith_result=`expr "$@"` + } +fi + + +# func_basename FILE +# ------------------ +# Set func_basename_result to FILE with everything up to and including +# the last / stripped. +if test yes = "$_G_HAVE_XSI_OPS"; then + # If this shell supports suffix pattern removal, then use it to avoid + # forking. Hide the definitions single quotes in case the shell chokes + # on unsupported syntax... + _b='func_basename_result=${1##*/}' + _d='case $1 in + */*) func_dirname_result=${1%/*}$2 ;; + * ) func_dirname_result=$3 ;; + esac' + +else + # ...otherwise fall back to using sed. + _b='func_basename_result=`$ECHO "$1" |$SED "$sed_basename"`' + _d='func_dirname_result=`$ECHO "$1" |$SED "$sed_dirname"` + if test "X$func_dirname_result" = "X$1"; then + func_dirname_result=$3 + else + func_append func_dirname_result "$2" + fi' +fi + +eval 'func_basename () +{ + $debug_cmd + + '"$_b"' +}' + + +# func_dirname FILE APPEND NONDIR_REPLACEMENT +# ------------------------------------------- +# Compute the dirname of FILE. If nonempty, add APPEND to the result, +# otherwise set result to NONDIR_REPLACEMENT. +eval 'func_dirname () +{ + $debug_cmd + + '"$_d"' +}' + + +# func_dirname_and_basename FILE APPEND NONDIR_REPLACEMENT +# -------------------------------------------------------- +# Perform func_basename and func_dirname in a single function +# call: +# dirname: Compute the dirname of FILE. If nonempty, +# add APPEND to the result, otherwise set result +# to NONDIR_REPLACEMENT. +# value returned in "$func_dirname_result" +# basename: Compute filename of FILE. +# value retuned in "$func_basename_result" +# For efficiency, we do not delegate to the functions above but instead +# duplicate the functionality here. +eval 'func_dirname_and_basename () +{ + $debug_cmd + + '"$_b"' + '"$_d"' +}' + + +# func_echo ARG... +# ---------------- +# Echo program name prefixed message. +func_echo () +{ + $debug_cmd + + _G_message=$* + + func_echo_IFS=$IFS + IFS=$nl + for _G_line in $_G_message; do + IFS=$func_echo_IFS + $ECHO "$progname: $_G_line" + done + IFS=$func_echo_IFS +} + + +# func_echo_all ARG... +# -------------------- +# Invoke $ECHO with all args, space-separated. +func_echo_all () +{ + $ECHO "$*" +} + + +# func_echo_infix_1 INFIX ARG... +# ------------------------------ +# Echo program name, followed by INFIX on the first line, with any +# additional lines not showing INFIX. +func_echo_infix_1 () +{ + $debug_cmd + + $require_term_colors + + _G_infix=$1; shift + _G_indent=$_G_infix + _G_prefix="$progname: $_G_infix: " + _G_message=$* + + # Strip color escape sequences before counting printable length + for _G_tc in "$tc_reset" "$tc_bold" "$tc_standout" "$tc_red" "$tc_green" "$tc_blue" "$tc_cyan" + do + test -n "$_G_tc" && { + _G_esc_tc=`$ECHO "$_G_tc" | $SED "$sed_make_literal_regex"` + _G_indent=`$ECHO "$_G_indent" | $SED "s|$_G_esc_tc||g"` + } + done + _G_indent="$progname: "`echo "$_G_indent" | $SED 's|.| |g'`" " ## exclude from sc_prohibit_nested_quotes + + func_echo_infix_1_IFS=$IFS + IFS=$nl + for _G_line in $_G_message; do + IFS=$func_echo_infix_1_IFS + $ECHO "$_G_prefix$tc_bold$_G_line$tc_reset" >&2 + _G_prefix=$_G_indent + done + IFS=$func_echo_infix_1_IFS +} + + +# func_error ARG... +# ----------------- +# Echo program name prefixed message to standard error. +func_error () +{ + $debug_cmd + + $require_term_colors + + func_echo_infix_1 " $tc_standout${tc_red}error$tc_reset" "$*" >&2 +} + + +# func_fatal_error ARG... +# ----------------------- +# Echo program name prefixed message to standard error, and exit. +func_fatal_error () +{ + $debug_cmd + + func_error "$*" + exit $EXIT_FAILURE +} + + +# func_grep EXPRESSION FILENAME +# ----------------------------- +# Check whether EXPRESSION matches any line of FILENAME, without output. +func_grep () +{ + $debug_cmd + + $GREP "$1" "$2" >/dev/null 2>&1 +} + + +# func_len STRING +# --------------- +# Set func_len_result to the length of STRING. STRING may not +# start with a hyphen. + test -z "$_G_HAVE_XSI_OPS" \ + && (eval 'x=a/b/c; + test 5aa/bb/cc = "${#x}${x%%/*}${x%/*}${x#*/}${x##*/}"') 2>/dev/null \ + && _G_HAVE_XSI_OPS=yes + +if test yes = "$_G_HAVE_XSI_OPS"; then + eval 'func_len () + { + $debug_cmd + + func_len_result=${#1} + }' +else + func_len () + { + $debug_cmd + + func_len_result=`expr "$1" : ".*" 2>/dev/null || echo $max_cmd_len` + } +fi + + +# func_mkdir_p DIRECTORY-PATH +# --------------------------- +# Make sure the entire path to DIRECTORY-PATH is available. +func_mkdir_p () +{ + $debug_cmd + + _G_directory_path=$1 + _G_dir_list= + + if test -n "$_G_directory_path" && test : != "$opt_dry_run"; then + + # Protect directory names starting with '-' + case $_G_directory_path in + -*) _G_directory_path=./$_G_directory_path ;; + esac + + # While some portion of DIR does not yet exist... + while test ! -d "$_G_directory_path"; do + # ...make a list in topmost first order. Use a colon delimited + # list incase some portion of path contains whitespace. + _G_dir_list=$_G_directory_path:$_G_dir_list + + # If the last portion added has no slash in it, the list is done + case $_G_directory_path in */*) ;; *) break ;; esac + + # ...otherwise throw away the child directory and loop + _G_directory_path=`$ECHO "$_G_directory_path" | $SED -e "$sed_dirname"` + done + _G_dir_list=`$ECHO "$_G_dir_list" | $SED 's|:*$||'` + + func_mkdir_p_IFS=$IFS; IFS=: + for _G_dir in $_G_dir_list; do + IFS=$func_mkdir_p_IFS + # mkdir can fail with a 'File exist' error if two processes + # try to create one of the directories concurrently. Don't + # stop in that case! + $MKDIR "$_G_dir" 2>/dev/null || : + done + IFS=$func_mkdir_p_IFS + + # Bail out if we (or some other process) failed to create a directory. + test -d "$_G_directory_path" || \ + func_fatal_error "Failed to create '$1'" + fi +} + + +# func_mktempdir [BASENAME] +# ------------------------- +# Make a temporary directory that won't clash with other running +# libtool processes, and avoids race conditions if possible. If +# given, BASENAME is the basename for that directory. +func_mktempdir () +{ + $debug_cmd + + _G_template=${TMPDIR-/tmp}/${1-$progname} + + if test : = "$opt_dry_run"; then + # Return a directory name, but don't create it in dry-run mode + _G_tmpdir=$_G_template-$$ + else + + # If mktemp works, use that first and foremost + _G_tmpdir=`mktemp -d "$_G_template-XXXXXXXX" 2>/dev/null` + + if test ! -d "$_G_tmpdir"; then + # Failing that, at least try and use $RANDOM to avoid a race + _G_tmpdir=$_G_template-${RANDOM-0}$$ + + func_mktempdir_umask=`umask` + umask 0077 + $MKDIR "$_G_tmpdir" + umask $func_mktempdir_umask + fi + + # If we're not in dry-run mode, bomb out on failure + test -d "$_G_tmpdir" || \ + func_fatal_error "cannot create temporary directory '$_G_tmpdir'" + fi + + $ECHO "$_G_tmpdir" +} + + +# func_normal_abspath PATH +# ------------------------ +# Remove doubled-up and trailing slashes, "." path components, +# and cancel out any ".." path components in PATH after making +# it an absolute path. +func_normal_abspath () +{ + $debug_cmd + + # These SED scripts presuppose an absolute path with a trailing slash. + _G_pathcar='s|^/\([^/]*\).*$|\1|' + _G_pathcdr='s|^/[^/]*||' + _G_removedotparts=':dotsl + s|/\./|/|g + t dotsl + s|/\.$|/|' + _G_collapseslashes='s|/\{1,\}|/|g' + _G_finalslash='s|/*$|/|' + + # Start from root dir and reassemble the path. + func_normal_abspath_result= + func_normal_abspath_tpath=$1 + func_normal_abspath_altnamespace= + case $func_normal_abspath_tpath in + "") + # Empty path, that just means $cwd. + func_stripname '' '/' "`pwd`" + func_normal_abspath_result=$func_stripname_result + return + ;; + # The next three entries are used to spot a run of precisely + # two leading slashes without using negated character classes; + # we take advantage of case's first-match behaviour. + ///*) + # Unusual form of absolute path, do nothing. + ;; + //*) + # Not necessarily an ordinary path; POSIX reserves leading '//' + # and for example Cygwin uses it to access remote file shares + # over CIFS/SMB, so we conserve a leading double slash if found. + func_normal_abspath_altnamespace=/ + ;; + /*) + # Absolute path, do nothing. + ;; + *) + # Relative path, prepend $cwd. + func_normal_abspath_tpath=`pwd`/$func_normal_abspath_tpath + ;; + esac + + # Cancel out all the simple stuff to save iterations. We also want + # the path to end with a slash for ease of parsing, so make sure + # there is one (and only one) here. + func_normal_abspath_tpath=`$ECHO "$func_normal_abspath_tpath" | $SED \ + -e "$_G_removedotparts" -e "$_G_collapseslashes" -e "$_G_finalslash"` + while :; do + # Processed it all yet? + if test / = "$func_normal_abspath_tpath"; then + # If we ascended to the root using ".." the result may be empty now. + if test -z "$func_normal_abspath_result"; then + func_normal_abspath_result=/ + fi + break + fi + func_normal_abspath_tcomponent=`$ECHO "$func_normal_abspath_tpath" | $SED \ + -e "$_G_pathcar"` + func_normal_abspath_tpath=`$ECHO "$func_normal_abspath_tpath" | $SED \ + -e "$_G_pathcdr"` + # Figure out what to do with it + case $func_normal_abspath_tcomponent in + "") + # Trailing empty path component, ignore it. + ;; + ..) + # Parent dir; strip last assembled component from result. + func_dirname "$func_normal_abspath_result" + func_normal_abspath_result=$func_dirname_result + ;; + *) + # Actual path component, append it. + func_append func_normal_abspath_result "/$func_normal_abspath_tcomponent" + ;; + esac + done + # Restore leading double-slash if one was found on entry. + func_normal_abspath_result=$func_normal_abspath_altnamespace$func_normal_abspath_result +} + + +# func_notquiet ARG... +# -------------------- +# Echo program name prefixed message only when not in quiet mode. +func_notquiet () +{ + $debug_cmd + + $opt_quiet || func_echo ${1+"$@"} + + # A bug in bash halts the script if the last line of a function + # fails when set -e is in force, so we need another command to + # work around that: + : +} + + +# func_relative_path SRCDIR DSTDIR +# -------------------------------- +# Set func_relative_path_result to the relative path from SRCDIR to DSTDIR. +func_relative_path () +{ + $debug_cmd + + func_relative_path_result= + func_normal_abspath "$1" + func_relative_path_tlibdir=$func_normal_abspath_result + func_normal_abspath "$2" + func_relative_path_tbindir=$func_normal_abspath_result + + # Ascend the tree starting from libdir + while :; do + # check if we have found a prefix of bindir + case $func_relative_path_tbindir in + $func_relative_path_tlibdir) + # found an exact match + func_relative_path_tcancelled= + break + ;; + $func_relative_path_tlibdir*) + # found a matching prefix + func_stripname "$func_relative_path_tlibdir" '' "$func_relative_path_tbindir" + func_relative_path_tcancelled=$func_stripname_result + if test -z "$func_relative_path_result"; then + func_relative_path_result=. + fi + break + ;; + *) + func_dirname $func_relative_path_tlibdir + func_relative_path_tlibdir=$func_dirname_result + if test -z "$func_relative_path_tlibdir"; then + # Have to descend all the way to the root! + func_relative_path_result=../$func_relative_path_result + func_relative_path_tcancelled=$func_relative_path_tbindir + break + fi + func_relative_path_result=../$func_relative_path_result + ;; + esac + done + + # Now calculate path; take care to avoid doubling-up slashes. + func_stripname '' '/' "$func_relative_path_result" + func_relative_path_result=$func_stripname_result + func_stripname '/' '/' "$func_relative_path_tcancelled" + if test -n "$func_stripname_result"; then + func_append func_relative_path_result "/$func_stripname_result" + fi + + # Normalisation. If bindir is libdir, return '.' else relative path. + if test -n "$func_relative_path_result"; then + func_stripname './' '' "$func_relative_path_result" + func_relative_path_result=$func_stripname_result + fi + + test -n "$func_relative_path_result" || func_relative_path_result=. + + : +} + + +# func_quote_portable EVAL ARG +# ---------------------------- +# Internal function to portably implement func_quote_arg. Note that we still +# keep attention to performance here so we as much as possible try to avoid +# calling sed binary (so far O(N) complexity as long as func_append is O(1)). +func_quote_portable () +{ + $debug_cmd + + $require_check_ifs_backslash + + func_quote_portable_result=$2 + + # one-time-loop (easy break) + while true + do + if $1; then + func_quote_portable_result=`$ECHO "$2" | $SED \ + -e "$sed_double_quote_subst" -e "$sed_double_backslash"` + break + fi + + # Quote for eval. + case $func_quote_portable_result in + *[\\\`\"\$]*) + # Fallback to sed for $func_check_bs_ifs_broken=:, or when the string + # contains the shell wildcard characters. + case $check_ifs_backshlash_broken$func_quote_portable_result in + :*|*[\[\*\?]*) + func_quote_portable_result=`$ECHO "$func_quote_portable_result" \ + | $SED "$sed_quote_subst"` + break + ;; + esac + + func_quote_portable_old_IFS=$IFS + for _G_char in '\' '`' '"' '$' + do + # STATE($1) PREV($2) SEPARATOR($3) + set start "" "" + func_quote_portable_result=dummy"$_G_char$func_quote_portable_result$_G_char"dummy + IFS=$_G_char + for _G_part in $func_quote_portable_result + do + case $1 in + quote) + func_append func_quote_portable_result "$3$2" + set quote "$_G_part" "\\$_G_char" + ;; + start) + set first "" "" + func_quote_portable_result= + ;; + first) + set quote "$_G_part" "" + ;; + esac + done + done + IFS=$func_quote_portable_old_IFS + ;; + *) ;; + esac + break + done + + func_quote_portable_unquoted_result=$func_quote_portable_result + case $func_quote_portable_result in + # double-quote args containing shell metacharacters to delay + # word splitting, command substitution and variable expansion + # for a subsequent eval. + # many bourne shells cannot handle close brackets correctly + # in scan sets, so we specify it separately. + *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"") + func_quote_portable_result=\"$func_quote_portable_result\" + ;; + esac +} + + +# func_quotefast_eval ARG +# ----------------------- +# Quote one ARG (internal). This is equivalent to 'func_quote_arg eval ARG', +# but optimized for speed. Result is stored in $func_quotefast_eval. +if test xyes = `(x=; printf -v x %q yes; echo x"$x") 2>/dev/null`; then + printf -v _GL_test_printf_tilde %q '~' + if test '\~' = "$_GL_test_printf_tilde"; then + func_quotefast_eval () + { + printf -v func_quotefast_eval_result %q "$1" + } + else + # Broken older Bash implementations. Make those faster too if possible. + func_quotefast_eval () + { + case $1 in + '~'*) + func_quote_portable false "$1" + func_quotefast_eval_result=$func_quote_portable_result + ;; + *) + printf -v func_quotefast_eval_result %q "$1" + ;; + esac + } + fi +else + func_quotefast_eval () + { + func_quote_portable false "$1" + func_quotefast_eval_result=$func_quote_portable_result + } +fi + + +# func_quote_arg MODEs ARG +# ------------------------ +# Quote one ARG to be evaled later. MODEs argument may contain zero or more +# specifiers listed below separated by ',' character. This function returns two +# values: +# i) func_quote_arg_result +# double-quoted (when needed), suitable for a subsequent eval +# ii) func_quote_arg_unquoted_result +# has all characters that are still active within double +# quotes backslashified. Available only if 'unquoted' is specified. +# +# Available modes: +# ---------------- +# 'eval' (default) +# - escape shell special characters +# 'expand' +# - the same as 'eval'; but do not quote variable references +# 'pretty' +# - request aesthetic output, i.e. '"a b"' instead of 'a\ b'. This might +# be used later in func_quote to get output like: 'echo "a b"' instead +# of 'echo a\ b'. This is slower than default on some shells. +# 'unquoted' +# - produce also $func_quote_arg_unquoted_result which does not contain +# wrapping double-quotes. +# +# Examples for 'func_quote_arg pretty,unquoted string': +# +# string | *_result | *_unquoted_result +# ------------+-----------------------+------------------- +# " | \" | \" +# a b | "a b" | a b +# "a b" | "\"a b\"" | \"a b\" +# * | "*" | * +# z="${x-$y}" | "z=\"\${x-\$y}\"" | z=\"\${x-\$y}\" +# +# Examples for 'func_quote_arg pretty,unquoted,expand string': +# +# string | *_result | *_unquoted_result +# --------------+---------------------+-------------------- +# z="${x-$y}" | "z=\"${x-$y}\"" | z=\"${x-$y}\" +func_quote_arg () +{ + _G_quote_expand=false + case ,$1, in + *,expand,*) + _G_quote_expand=: + ;; + esac + + case ,$1, in + *,pretty,*|*,expand,*|*,unquoted,*) + func_quote_portable $_G_quote_expand "$2" + func_quote_arg_result=$func_quote_portable_result + func_quote_arg_unquoted_result=$func_quote_portable_unquoted_result + ;; + *) + # Faster quote-for-eval for some shells. + func_quotefast_eval "$2" + func_quote_arg_result=$func_quotefast_eval_result + ;; + esac +} + + +# func_quote MODEs ARGs... +# ------------------------ +# Quote all ARGs to be evaled later and join them into single command. See +# func_quote_arg's description for more info. +func_quote () +{ + $debug_cmd + _G_func_quote_mode=$1 ; shift + func_quote_result= + while test 0 -lt $#; do + func_quote_arg "$_G_func_quote_mode" "$1" + if test -n "$func_quote_result"; then + func_append func_quote_result " $func_quote_arg_result" + else + func_append func_quote_result "$func_quote_arg_result" + fi + shift + done +} + + +# func_stripname PREFIX SUFFIX NAME +# --------------------------------- +# strip PREFIX and SUFFIX from NAME, and store in func_stripname_result. +# PREFIX and SUFFIX must not contain globbing or regex special +# characters, hashes, percent signs, but SUFFIX may contain a leading +# dot (in which case that matches only a dot). +if test yes = "$_G_HAVE_XSI_OPS"; then + eval 'func_stripname () + { + $debug_cmd + + # pdksh 5.2.14 does not do ${X%$Y} correctly if both X and Y are + # positional parameters, so assign one to ordinary variable first. + func_stripname_result=$3 + func_stripname_result=${func_stripname_result#"$1"} + func_stripname_result=${func_stripname_result%"$2"} + }' +else + func_stripname () + { + $debug_cmd + + case $2 in + .*) func_stripname_result=`$ECHO "$3" | $SED -e "s%^$1%%" -e "s%\\\\$2\$%%"`;; + *) func_stripname_result=`$ECHO "$3" | $SED -e "s%^$1%%" -e "s%$2\$%%"`;; + esac + } +fi + + +# func_show_eval CMD [FAIL_EXP] +# ----------------------------- +# Unless opt_quiet is true, then output CMD. Then, if opt_dryrun is +# not true, evaluate CMD. If the evaluation of CMD fails, and FAIL_EXP +# is given, then evaluate it. +func_show_eval () +{ + $debug_cmd + + _G_cmd=$1 + _G_fail_exp=${2-':'} + + func_quote_arg pretty,expand "$_G_cmd" + eval "func_notquiet $func_quote_arg_result" + + $opt_dry_run || { + eval "$_G_cmd" + _G_status=$? + if test 0 -ne "$_G_status"; then + eval "(exit $_G_status); $_G_fail_exp" + fi + } +} + + +# func_show_eval_locale CMD [FAIL_EXP] +# ------------------------------------ +# Unless opt_quiet is true, then output CMD. Then, if opt_dryrun is +# not true, evaluate CMD. If the evaluation of CMD fails, and FAIL_EXP +# is given, then evaluate it. Use the saved locale for evaluation. +func_show_eval_locale () +{ + $debug_cmd + + _G_cmd=$1 + _G_fail_exp=${2-':'} + + $opt_quiet || { + func_quote_arg expand,pretty "$_G_cmd" + eval "func_echo $func_quote_arg_result" + } + + $opt_dry_run || { + eval "$_G_user_locale + $_G_cmd" + _G_status=$? + eval "$_G_safe_locale" + if test 0 -ne "$_G_status"; then + eval "(exit $_G_status); $_G_fail_exp" + fi + } +} + + +# func_tr_sh +# ---------- +# Turn $1 into a string suitable for a shell variable name. +# Result is stored in $func_tr_sh_result. All characters +# not in the set a-zA-Z0-9_ are replaced with '_'. Further, +# if $1 begins with a digit, a '_' is prepended as well. +func_tr_sh () +{ + $debug_cmd + + case $1 in + [0-9]* | *[!a-zA-Z0-9_]*) + func_tr_sh_result=`$ECHO "$1" | $SED -e 's/^\([0-9]\)/_\1/' -e 's/[^a-zA-Z0-9_]/_/g'` + ;; + * ) + func_tr_sh_result=$1 + ;; + esac +} + + +# func_verbose ARG... +# ------------------- +# Echo program name prefixed message in verbose mode only. +func_verbose () +{ + $debug_cmd + + $opt_verbose && func_echo "$*" + + : +} + + +# func_warn_and_continue ARG... +# ----------------------------- +# Echo program name prefixed warning message to standard error. +func_warn_and_continue () +{ + $debug_cmd + + $require_term_colors + + func_echo_infix_1 "${tc_red}warning$tc_reset" "$*" >&2 +} + + +# func_warning CATEGORY ARG... +# ---------------------------- +# Echo program name prefixed warning message to standard error. Warning +# messages can be filtered according to CATEGORY, where this function +# elides messages where CATEGORY is not listed in the global variable +# 'opt_warning_types'. +func_warning () +{ + $debug_cmd + + # CATEGORY must be in the warning_categories list! + case " $warning_categories " in + *" $1 "*) ;; + *) func_internal_error "invalid warning category '$1'" ;; + esac + + _G_category=$1 + shift + + case " $opt_warning_types " in + *" $_G_category "*) $warning_func ${1+"$@"} ;; + esac +} + + +# func_sort_ver VER1 VER2 +# ----------------------- +# 'sort -V' is not generally available. +# Note this deviates from the version comparison in automake +# in that it treats 1.5 < 1.5.0, and treats 1.4.4a < 1.4-p3a +# but this should suffice as we won't be specifying old +# version formats or redundant trailing .0 in bootstrap.conf. +# If we did want full compatibility then we should probably +# use m4_version_compare from autoconf. +func_sort_ver () +{ + $debug_cmd + + printf '%s\n%s\n' "$1" "$2" \ + | sort -t. -k 1,1n -k 2,2n -k 3,3n -k 4,4n -k 5,5n -k 6,6n -k 7,7n -k 8,8n -k 9,9n +} + +# func_lt_ver PREV CURR +# --------------------- +# Return true if PREV and CURR are in the correct order according to +# func_sort_ver, otherwise false. Use it like this: +# +# func_lt_ver "$prev_ver" "$proposed_ver" || func_fatal_error "..." +func_lt_ver () +{ + $debug_cmd + + test "x$1" = x`func_sort_ver "$1" "$2" | $SED 1q` +} + + +# Local variables: +# mode: shell-script +# sh-indentation: 2 +# eval: (add-hook 'before-save-hook 'time-stamp) +# time-stamp-pattern: "10/scriptversion=%:y-%02m-%02d.%02H; # UTC" +# time-stamp-time-zone: "UTC" +# End: +#! /bin/sh + +# A portable, pluggable option parser for Bourne shell. +# Written by Gary V. Vaughan, 2010 + +# This is free software. There is NO warranty; not even for +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. +# +# Copyright (C) 2010-2019, 2021 Bootstrap Authors +# +# This file is dual licensed under the terms of the MIT license +# , and GPL version 2 or later +# . You must apply one of +# these licenses when using or redistributing this software or any of +# the files within it. See the URLs above, or the file `LICENSE` +# included in the Bootstrap distribution for the full license texts. + +# Please report bugs or propose patches to: +# + +# Set a version string for this script. +scriptversion=2019-02-19.15; # UTC + + +## ------ ## +## Usage. ## +## ------ ## + +# This file is a library for parsing options in your shell scripts along +# with assorted other useful supporting features that you can make use +# of too. +# +# For the simplest scripts you might need only: +# +# #!/bin/sh +# . relative/path/to/funclib.sh +# . relative/path/to/options-parser +# scriptversion=1.0 +# func_options ${1+"$@"} +# eval set dummy "$func_options_result"; shift +# ...rest of your script... +# +# In order for the '--version' option to work, you will need to have a +# suitably formatted comment like the one at the top of this file +# starting with '# Written by ' and ending with '# Copyright'. +# +# For '-h' and '--help' to work, you will also need a one line +# description of your script's purpose in a comment directly above the +# '# Written by ' line, like the one at the top of this file. +# +# The default options also support '--debug', which will turn on shell +# execution tracing (see the comment above debug_cmd below for another +# use), and '--verbose' and the func_verbose function to allow your script +# to display verbose messages only when your user has specified +# '--verbose'. +# +# After sourcing this file, you can plug in processing for additional +# options by amending the variables from the 'Configuration' section +# below, and following the instructions in the 'Option parsing' +# section further down. + +## -------------- ## +## Configuration. ## +## -------------- ## + +# You should override these variables in your script after sourcing this +# file so that they reflect the customisations you have added to the +# option parser. + +# The usage line for option parsing errors and the start of '-h' and +# '--help' output messages. You can embed shell variables for delayed +# expansion at the time the message is displayed, but you will need to +# quote other shell meta-characters carefully to prevent them being +# expanded when the contents are evaled. +usage='$progpath [OPTION]...' + +# Short help message in response to '-h' and '--help'. Add to this or +# override it after sourcing this library to reflect the full set of +# options your script accepts. +usage_message="\ + --debug enable verbose shell tracing + -W, --warnings=CATEGORY + report the warnings falling in CATEGORY [all] + -v, --verbose verbosely report processing + --version print version information and exit + -h, --help print short or long help message and exit +" + +# Additional text appended to 'usage_message' in response to '--help'. +long_help_message=" +Warning categories include: + 'all' show all warnings + 'none' turn off all the warnings + 'error' warnings are treated as fatal errors" + +# Help message printed before fatal option parsing errors. +fatal_help="Try '\$progname --help' for more information." + + + +## ------------------------- ## +## Hook function management. ## +## ------------------------- ## + +# This section contains functions for adding, removing, and running hooks +# in the main code. A hook is just a list of function names that can be +# run in order later on. + +# func_hookable FUNC_NAME +# ----------------------- +# Declare that FUNC_NAME will run hooks added with +# 'func_add_hook FUNC_NAME ...'. +func_hookable () +{ + $debug_cmd + + func_append hookable_fns " $1" +} + + +# func_add_hook FUNC_NAME HOOK_FUNC +# --------------------------------- +# Request that FUNC_NAME call HOOK_FUNC before it returns. FUNC_NAME must +# first have been declared "hookable" by a call to 'func_hookable'. +func_add_hook () +{ + $debug_cmd + + case " $hookable_fns " in + *" $1 "*) ;; + *) func_fatal_error "'$1' does not accept hook functions." ;; + esac + + eval func_append ${1}_hooks '" $2"' +} + + +# func_remove_hook FUNC_NAME HOOK_FUNC +# ------------------------------------ +# Remove HOOK_FUNC from the list of hook functions to be called by +# FUNC_NAME. +func_remove_hook () +{ + $debug_cmd + + eval ${1}_hooks='`$ECHO "\$'$1'_hooks" |$SED "s| '$2'||"`' +} + + +# func_propagate_result FUNC_NAME_A FUNC_NAME_B +# --------------------------------------------- +# If the *_result variable of FUNC_NAME_A _is set_, assign its value to +# *_result variable of FUNC_NAME_B. +func_propagate_result () +{ + $debug_cmd + + func_propagate_result_result=: + if eval "test \"\${${1}_result+set}\" = set" + then + eval "${2}_result=\$${1}_result" + else + func_propagate_result_result=false + fi +} + + +# func_run_hooks FUNC_NAME [ARG]... +# --------------------------------- +# Run all hook functions registered to FUNC_NAME. +# It's assumed that the list of hook functions contains nothing more +# than a whitespace-delimited list of legal shell function names, and +# no effort is wasted trying to catch shell meta-characters or preserve +# whitespace. +func_run_hooks () +{ + $debug_cmd + + case " $hookable_fns " in + *" $1 "*) ;; + *) func_fatal_error "'$1' does not support hook functions." ;; + esac + + eval _G_hook_fns=\$$1_hooks; shift + + for _G_hook in $_G_hook_fns; do + func_unset "${_G_hook}_result" + eval $_G_hook '${1+"$@"}' + func_propagate_result $_G_hook func_run_hooks + if $func_propagate_result_result; then + eval set dummy "$func_run_hooks_result"; shift + fi + done +} + + + +## --------------- ## +## Option parsing. ## +## --------------- ## + +# In order to add your own option parsing hooks, you must accept the +# full positional parameter list from your hook function. You may remove +# or edit any options that you action, and then pass back the remaining +# unprocessed options in '_result', escaped +# suitably for 'eval'. +# +# The '_result' variable is automatically unset +# before your hook gets called; for best performance, only set the +# *_result variable when necessary (i.e. don't call the 'func_quote' +# function unnecessarily because it can be an expensive operation on some +# machines). +# +# Like this: +# +# my_options_prep () +# { +# $debug_cmd +# +# # Extend the existing usage message. +# usage_message=$usage_message' +# -s, --silent don'\''t print informational messages +# ' +# # No change in '$@' (ignored completely by this hook). Leave +# # my_options_prep_result variable intact. +# } +# func_add_hook func_options_prep my_options_prep +# +# +# my_silent_option () +# { +# $debug_cmd +# +# args_changed=false +# +# # Note that, for efficiency, we parse as many options as we can +# # recognise in a loop before passing the remainder back to the +# # caller on the first unrecognised argument we encounter. +# while test $# -gt 0; do +# opt=$1; shift +# case $opt in +# --silent|-s) opt_silent=: +# args_changed=: +# ;; +# # Separate non-argument short options: +# -s*) func_split_short_opt "$_G_opt" +# set dummy "$func_split_short_opt_name" \ +# "-$func_split_short_opt_arg" ${1+"$@"} +# shift +# args_changed=: +# ;; +# *) # Make sure the first unrecognised option "$_G_opt" +# # is added back to "$@" in case we need it later, +# # if $args_changed was set to 'true'. +# set dummy "$_G_opt" ${1+"$@"}; shift; break ;; +# esac +# done +# +# # Only call 'func_quote' here if we processed at least one argument. +# if $args_changed; then +# func_quote eval ${1+"$@"} +# my_silent_option_result=$func_quote_result +# fi +# } +# func_add_hook func_parse_options my_silent_option +# +# +# my_option_validation () +# { +# $debug_cmd +# +# $opt_silent && $opt_verbose && func_fatal_help "\ +# '--silent' and '--verbose' options are mutually exclusive." +# } +# func_add_hook func_validate_options my_option_validation +# +# You'll also need to manually amend $usage_message to reflect the extra +# options you parse. It's preferable to append if you can, so that +# multiple option parsing hooks can be added safely. + + +# func_options_finish [ARG]... +# ---------------------------- +# Finishing the option parse loop (call 'func_options' hooks ATM). +func_options_finish () +{ + $debug_cmd + + func_run_hooks func_options ${1+"$@"} + func_propagate_result func_run_hooks func_options_finish +} + + +# func_options [ARG]... +# --------------------- +# All the functions called inside func_options are hookable. See the +# individual implementations for details. +func_hookable func_options +func_options () +{ + $debug_cmd + + _G_options_quoted=false + + for my_func in options_prep parse_options validate_options options_finish + do + func_unset func_${my_func}_result + func_unset func_run_hooks_result + eval func_$my_func '${1+"$@"}' + func_propagate_result func_$my_func func_options + if $func_propagate_result_result; then + eval set dummy "$func_options_result"; shift + _G_options_quoted=: + fi + done + + $_G_options_quoted || { + # As we (func_options) are top-level options-parser function and + # nobody quoted "$@" for us yet, we need to do it explicitly for + # caller. + func_quote eval ${1+"$@"} + func_options_result=$func_quote_result + } +} + + +# func_options_prep [ARG]... +# -------------------------- +# All initialisations required before starting the option parse loop. +# Note that when calling hook functions, we pass through the list of +# positional parameters. If a hook function modifies that list, and +# needs to propagate that back to rest of this script, then the complete +# modified list must be put in 'func_run_hooks_result' before returning. +func_hookable func_options_prep +func_options_prep () +{ + $debug_cmd + + # Option defaults: + opt_verbose=false + opt_warning_types= + + func_run_hooks func_options_prep ${1+"$@"} + func_propagate_result func_run_hooks func_options_prep +} + + +# func_parse_options [ARG]... +# --------------------------- +# The main option parsing loop. +func_hookable func_parse_options +func_parse_options () +{ + $debug_cmd + + _G_parse_options_requote=false + # this just eases exit handling + while test $# -gt 0; do + # Defer to hook functions for initial option parsing, so they + # get priority in the event of reusing an option name. + func_run_hooks func_parse_options ${1+"$@"} + func_propagate_result func_run_hooks func_parse_options + if $func_propagate_result_result; then + eval set dummy "$func_parse_options_result"; shift + # Even though we may have changed "$@", we passed the "$@" array + # down into the hook and it quoted it for us (because we are in + # this if-branch). No need to quote it again. + _G_parse_options_requote=false + fi + + # Break out of the loop if we already parsed every option. + test $# -gt 0 || break + + # We expect that one of the options parsed in this function matches + # and thus we remove _G_opt from "$@" and need to re-quote. + _G_match_parse_options=: + _G_opt=$1 + shift + case $_G_opt in + --debug|-x) debug_cmd='set -x' + func_echo "enabling shell trace mode" >&2 + $debug_cmd + ;; + + --no-warnings|--no-warning|--no-warn) + set dummy --warnings none ${1+"$@"} + shift + ;; + + --warnings|--warning|-W) + if test $# = 0 && func_missing_arg $_G_opt; then + _G_parse_options_requote=: + break + fi + case " $warning_categories $1" in + *" $1 "*) + # trailing space prevents matching last $1 above + func_append_uniq opt_warning_types " $1" + ;; + *all) + opt_warning_types=$warning_categories + ;; + *none) + opt_warning_types=none + warning_func=: + ;; + *error) + opt_warning_types=$warning_categories + warning_func=func_fatal_error + ;; + *) + func_fatal_error \ + "unsupported warning category: '$1'" + ;; + esac + shift + ;; + + --verbose|-v) opt_verbose=: ;; + --version) func_version ;; + -\?|-h) func_usage ;; + --help) func_help ;; + + # Separate optargs to long options (plugins may need this): + --*=*) func_split_equals "$_G_opt" + set dummy "$func_split_equals_lhs" \ + "$func_split_equals_rhs" ${1+"$@"} + shift + ;; + + # Separate optargs to short options: + -W*) + func_split_short_opt "$_G_opt" + set dummy "$func_split_short_opt_name" \ + "$func_split_short_opt_arg" ${1+"$@"} + shift + ;; + + # Separate non-argument short options: + -\?*|-h*|-v*|-x*) + func_split_short_opt "$_G_opt" + set dummy "$func_split_short_opt_name" \ + "-$func_split_short_opt_arg" ${1+"$@"} + shift + ;; + + --) _G_parse_options_requote=: ; break ;; + -*) func_fatal_help "unrecognised option: '$_G_opt'" ;; + *) set dummy "$_G_opt" ${1+"$@"}; shift + _G_match_parse_options=false + break + ;; + esac + + if $_G_match_parse_options; then + _G_parse_options_requote=: + fi + done + + if $_G_parse_options_requote; then + # save modified positional parameters for caller + func_quote eval ${1+"$@"} + func_parse_options_result=$func_quote_result + fi +} + + +# func_validate_options [ARG]... +# ------------------------------ +# Perform any sanity checks on option settings and/or unconsumed +# arguments. +func_hookable func_validate_options +func_validate_options () +{ + $debug_cmd + + # Display all warnings if -W was not given. + test -n "$opt_warning_types" || opt_warning_types=" $warning_categories" + + func_run_hooks func_validate_options ${1+"$@"} + func_propagate_result func_run_hooks func_validate_options + + # Bail if the options were screwed! + $exit_cmd $EXIT_FAILURE +} + + + +## ----------------- ## +## Helper functions. ## +## ----------------- ## + +# This section contains the helper functions used by the rest of the +# hookable option parser framework in ascii-betical order. + + +# func_fatal_help ARG... +# ---------------------- +# Echo program name prefixed message to standard error, followed by +# a help hint, and exit. +func_fatal_help () +{ + $debug_cmd + + eval \$ECHO \""Usage: $usage"\" + eval \$ECHO \""$fatal_help"\" + func_error ${1+"$@"} + exit $EXIT_FAILURE +} + + +# func_help +# --------- +# Echo long help message to standard output and exit. +func_help () +{ + $debug_cmd + + func_usage_message + $ECHO "$long_help_message" + exit 0 +} + + +# func_missing_arg ARGNAME +# ------------------------ +# Echo program name prefixed message to standard error and set global +# exit_cmd. +func_missing_arg () +{ + $debug_cmd + + func_error "Missing argument for '$1'." + exit_cmd=exit +} + + +# func_split_equals STRING +# ------------------------ +# Set func_split_equals_lhs and func_split_equals_rhs shell variables +# after splitting STRING at the '=' sign. +test -z "$_G_HAVE_XSI_OPS" \ + && (eval 'x=a/b/c; + test 5aa/bb/cc = "${#x}${x%%/*}${x%/*}${x#*/}${x##*/}"') 2>/dev/null \ + && _G_HAVE_XSI_OPS=yes + +if test yes = "$_G_HAVE_XSI_OPS" +then + # This is an XSI compatible shell, allowing a faster implementation... + eval 'func_split_equals () + { + $debug_cmd + + func_split_equals_lhs=${1%%=*} + func_split_equals_rhs=${1#*=} + if test "x$func_split_equals_lhs" = "x$1"; then + func_split_equals_rhs= + fi + }' +else + # ...otherwise fall back to using expr, which is often a shell builtin. + func_split_equals () + { + $debug_cmd + + func_split_equals_lhs=`expr "x$1" : 'x\([^=]*\)'` + func_split_equals_rhs= + test "x$func_split_equals_lhs=" = "x$1" \ + || func_split_equals_rhs=`expr "x$1" : 'x[^=]*=\(.*\)$'` + } +fi #func_split_equals + + +# func_split_short_opt SHORTOPT +# ----------------------------- +# Set func_split_short_opt_name and func_split_short_opt_arg shell +# variables after splitting SHORTOPT after the 2nd character. +if test yes = "$_G_HAVE_XSI_OPS" +then + # This is an XSI compatible shell, allowing a faster implementation... + eval 'func_split_short_opt () + { + $debug_cmd + + func_split_short_opt_arg=${1#??} + func_split_short_opt_name=${1%"$func_split_short_opt_arg"} + }' +else + # ...otherwise fall back to using expr, which is often a shell builtin. + func_split_short_opt () + { + $debug_cmd + + func_split_short_opt_name=`expr "x$1" : 'x\(-.\)'` + func_split_short_opt_arg=`expr "x$1" : 'x-.\(.*\)$'` + } +fi #func_split_short_opt + + +# func_usage +# ---------- +# Echo short help message to standard output and exit. +func_usage () +{ + $debug_cmd + + func_usage_message + $ECHO "Run '$progname --help |${PAGER-more}' for full usage" + exit 0 +} + + +# func_usage_message +# ------------------ +# Echo short help message to standard output. +func_usage_message () +{ + $debug_cmd + + eval \$ECHO \""Usage: $usage"\" + echo + $SED -n 's|^# || + /^Written by/{ + x;p;x + } + h + /^Written by/q' < "$progpath" + echo + eval \$ECHO \""$usage_message"\" +} + + +# func_version +# ------------ +# Echo version message to standard output and exit. +# The version message is extracted from the calling file's header +# comments, with leading '# ' stripped: +# 1. First display the progname and version +# 2. Followed by the header comment line matching /^# Written by / +# 3. Then a blank line followed by the first following line matching +# /^# Copyright / +# 4. Immediately followed by any lines between the previous matches, +# except lines preceding the intervening completely blank line. +# For example, see the header comments of this file. +func_version () +{ + $debug_cmd + + printf '%s\n' "$progname $scriptversion" + $SED -n ' + /^# Written by /!b + s|^# ||; p; n + + :fwd2blnk + /./ { + n + b fwd2blnk + } + p; n + + :holdwrnt + s|^# || + s|^# *$|| + /^Copyright /!{ + /./H + n + b holdwrnt + } + + s|\((C)\)[ 0-9,-]*[ ,-]\([1-9][0-9]* \)|\1 \2| + G + s|\(\n\)\n*|\1|g + p; q' < "$progpath" + + exit $? +} + + +# Local variables: +# mode: shell-script +# sh-indentation: 2 +# eval: (add-hook 'before-save-hook 'time-stamp) +# time-stamp-pattern: "30/scriptversion=%:y-%02m-%02d.%02H; # UTC" +# time-stamp-time-zone: "UTC" +# End: + +# Set a version string. +scriptversion='(GNU libtool) 2.4.7' + + +# func_echo ARG... +# ---------------- +# Libtool also displays the current mode in messages, so override +# funclib.sh func_echo with this custom definition. +func_echo () +{ + $debug_cmd + + _G_message=$* + + func_echo_IFS=$IFS + IFS=$nl + for _G_line in $_G_message; do + IFS=$func_echo_IFS + $ECHO "$progname${opt_mode+: $opt_mode}: $_G_line" + done + IFS=$func_echo_IFS +} + + +# func_warning ARG... +# ------------------- +# Libtool warnings are not categorized, so override funclib.sh +# func_warning with this simpler definition. +func_warning () +{ + $debug_cmd + + $warning_func ${1+"$@"} +} + + +## ---------------- ## +## Options parsing. ## +## ---------------- ## + +# Hook in the functions to make sure our own options are parsed during +# the option parsing loop. + +usage='$progpath [OPTION]... [MODE-ARG]...' + +# Short help message in response to '-h'. +usage_message="Options: + --config show all configuration variables + --debug enable verbose shell tracing + -n, --dry-run display commands without modifying any files + --features display basic configuration information and exit + --mode=MODE use operation mode MODE + --no-warnings equivalent to '-Wnone' + --preserve-dup-deps don't remove duplicate dependency libraries + --quiet, --silent don't print informational messages + --tag=TAG use configuration variables from tag TAG + -v, --verbose print more informational messages than default + --version print version information + -W, --warnings=CATEGORY report the warnings falling in CATEGORY [all] + -h, --help, --help-all print short, long, or detailed help message +" + +# Additional text appended to 'usage_message' in response to '--help'. +func_help () +{ + $debug_cmd + + func_usage_message + $ECHO "$long_help_message + +MODE must be one of the following: + + clean remove files from the build directory + compile compile a source file into a libtool object + execute automatically set library path, then run a program + finish complete the installation of libtool libraries + install install libraries or executables + link create a library or an executable + uninstall remove libraries from an installed directory + +MODE-ARGS vary depending on the MODE. When passed as first option, +'--mode=MODE' may be abbreviated as 'MODE' or a unique abbreviation of that. +Try '$progname --help --mode=MODE' for a more detailed description of MODE. + +When reporting a bug, please describe a test case to reproduce it and +include the following information: + + host-triplet: $host + shell: $SHELL + compiler: $LTCC + compiler flags: $LTCFLAGS + linker: $LD (gnu? $with_gnu_ld) + version: $progname (GNU libtool) 2.4.7 + automake: `($AUTOMAKE --version) 2>/dev/null |$SED 1q` + autoconf: `($AUTOCONF --version) 2>/dev/null |$SED 1q` + +Report bugs to . +GNU libtool home page: . +General help using GNU software: ." + exit 0 +} + + +# func_lo2o OBJECT-NAME +# --------------------- +# Transform OBJECT-NAME from a '.lo' suffix to the platform specific +# object suffix. + +lo2o=s/\\.lo\$/.$objext/ +o2lo=s/\\.$objext\$/.lo/ + +if test yes = "$_G_HAVE_XSI_OPS"; then + eval 'func_lo2o () + { + case $1 in + *.lo) func_lo2o_result=${1%.lo}.$objext ;; + * ) func_lo2o_result=$1 ;; + esac + }' + + # func_xform LIBOBJ-OR-SOURCE + # --------------------------- + # Transform LIBOBJ-OR-SOURCE from a '.o' or '.c' (or otherwise) + # suffix to a '.lo' libtool-object suffix. + eval 'func_xform () + { + func_xform_result=${1%.*}.lo + }' +else + # ...otherwise fall back to using sed. + func_lo2o () + { + func_lo2o_result=`$ECHO "$1" | $SED "$lo2o"` + } + + func_xform () + { + func_xform_result=`$ECHO "$1" | $SED 's|\.[^.]*$|.lo|'` + } +fi + + +# func_fatal_configuration ARG... +# ------------------------------- +# Echo program name prefixed message to standard error, followed by +# a configuration failure hint, and exit. +func_fatal_configuration () +{ + func_fatal_error ${1+"$@"} \ + "See the $PACKAGE documentation for more information." \ + "Fatal configuration error." +} + + +# func_config +# ----------- +# Display the configuration for all the tags in this script. +func_config () +{ + re_begincf='^# ### BEGIN LIBTOOL' + re_endcf='^# ### END LIBTOOL' + + # Default configuration. + $SED "1,/$re_begincf CONFIG/d;/$re_endcf CONFIG/,\$d" < "$progpath" + + # Now print the configurations for the tags. + for tagname in $taglist; do + $SED -n "/$re_begincf TAG CONFIG: $tagname\$/,/$re_endcf TAG CONFIG: $tagname\$/p" < "$progpath" + done + + exit $? +} + + +# func_features +# ------------- +# Display the features supported by this script. +func_features () +{ + echo "host: $host" + if test yes = "$build_libtool_libs"; then + echo "enable shared libraries" + else + echo "disable shared libraries" + fi + if test yes = "$build_old_libs"; then + echo "enable static libraries" + else + echo "disable static libraries" + fi + + exit $? +} + + +# func_enable_tag TAGNAME +# ----------------------- +# Verify that TAGNAME is valid, and either flag an error and exit, or +# enable the TAGNAME tag. We also add TAGNAME to the global $taglist +# variable here. +func_enable_tag () +{ + # Global variable: + tagname=$1 + + re_begincf="^# ### BEGIN LIBTOOL TAG CONFIG: $tagname\$" + re_endcf="^# ### END LIBTOOL TAG CONFIG: $tagname\$" + sed_extractcf=/$re_begincf/,/$re_endcf/p + + # Validate tagname. + case $tagname in + *[!-_A-Za-z0-9,/]*) + func_fatal_error "invalid tag name: $tagname" + ;; + esac + + # Don't test for the "default" C tag, as we know it's + # there but not specially marked. + case $tagname in + CC) ;; + *) + if $GREP "$re_begincf" "$progpath" >/dev/null 2>&1; then + taglist="$taglist $tagname" + + # Evaluate the configuration. Be careful to quote the path + # and the sed script, to avoid splitting on whitespace, but + # also don't use non-portable quotes within backquotes within + # quotes we have to do it in 2 steps: + extractedcf=`$SED -n -e "$sed_extractcf" < "$progpath"` + eval "$extractedcf" + else + func_error "ignoring unknown tag $tagname" + fi + ;; + esac +} + + +# func_check_version_match +# ------------------------ +# Ensure that we are using m4 macros, and libtool script from the same +# release of libtool. +func_check_version_match () +{ + if test "$package_revision" != "$macro_revision"; then + if test "$VERSION" != "$macro_version"; then + if test -z "$macro_version"; then + cat >&2 <<_LT_EOF +$progname: Version mismatch error. This is $PACKAGE $VERSION, but the +$progname: definition of this LT_INIT comes from an older release. +$progname: You should recreate aclocal.m4 with macros from $PACKAGE $VERSION +$progname: and run autoconf again. +_LT_EOF + else + cat >&2 <<_LT_EOF +$progname: Version mismatch error. This is $PACKAGE $VERSION, but the +$progname: definition of this LT_INIT comes from $PACKAGE $macro_version. +$progname: You should recreate aclocal.m4 with macros from $PACKAGE $VERSION +$progname: and run autoconf again. +_LT_EOF + fi + else + cat >&2 <<_LT_EOF +$progname: Version mismatch error. This is $PACKAGE $VERSION, revision $package_revision, +$progname: but the definition of this LT_INIT comes from revision $macro_revision. +$progname: You should recreate aclocal.m4 with macros from revision $package_revision +$progname: of $PACKAGE $VERSION and run autoconf again. +_LT_EOF + fi + + exit $EXIT_MISMATCH + fi +} + + +# libtool_options_prep [ARG]... +# ----------------------------- +# Preparation for options parsed by libtool. +libtool_options_prep () +{ + $debug_mode + + # Option defaults: + opt_config=false + opt_dlopen= + opt_dry_run=false + opt_help=false + opt_mode= + opt_preserve_dup_deps=false + opt_quiet=false + + nonopt= + preserve_args= + + _G_rc_lt_options_prep=: + + # Shorthand for --mode=foo, only valid as the first argument + case $1 in + clean|clea|cle|cl) + shift; set dummy --mode clean ${1+"$@"}; shift + ;; + compile|compil|compi|comp|com|co|c) + shift; set dummy --mode compile ${1+"$@"}; shift + ;; + execute|execut|execu|exec|exe|ex|e) + shift; set dummy --mode execute ${1+"$@"}; shift + ;; + finish|finis|fini|fin|fi|f) + shift; set dummy --mode finish ${1+"$@"}; shift + ;; + install|instal|insta|inst|ins|in|i) + shift; set dummy --mode install ${1+"$@"}; shift + ;; + link|lin|li|l) + shift; set dummy --mode link ${1+"$@"}; shift + ;; + uninstall|uninstal|uninsta|uninst|unins|unin|uni|un|u) + shift; set dummy --mode uninstall ${1+"$@"}; shift + ;; + *) + _G_rc_lt_options_prep=false + ;; + esac + + if $_G_rc_lt_options_prep; then + # Pass back the list of options. + func_quote eval ${1+"$@"} + libtool_options_prep_result=$func_quote_result + fi +} +func_add_hook func_options_prep libtool_options_prep + + +# libtool_parse_options [ARG]... +# --------------------------------- +# Provide handling for libtool specific options. +libtool_parse_options () +{ + $debug_cmd + + _G_rc_lt_parse_options=false + + # Perform our own loop to consume as many options as possible in + # each iteration. + while test $# -gt 0; do + _G_match_lt_parse_options=: + _G_opt=$1 + shift + case $_G_opt in + --dry-run|--dryrun|-n) + opt_dry_run=: + ;; + + --config) func_config ;; + + --dlopen|-dlopen) + opt_dlopen="${opt_dlopen+$opt_dlopen +}$1" + shift + ;; + + --preserve-dup-deps) + opt_preserve_dup_deps=: ;; + + --features) func_features ;; + + --finish) set dummy --mode finish ${1+"$@"}; shift ;; + + --help) opt_help=: ;; + + --help-all) opt_help=': help-all' ;; + + --mode) test $# = 0 && func_missing_arg $_G_opt && break + opt_mode=$1 + case $1 in + # Valid mode arguments: + clean|compile|execute|finish|install|link|relink|uninstall) ;; + + # Catch anything else as an error + *) func_error "invalid argument for $_G_opt" + exit_cmd=exit + break + ;; + esac + shift + ;; + + --no-silent|--no-quiet) + opt_quiet=false + func_append preserve_args " $_G_opt" + ;; + + --no-warnings|--no-warning|--no-warn) + opt_warning=false + func_append preserve_args " $_G_opt" + ;; + + --no-verbose) + opt_verbose=false + func_append preserve_args " $_G_opt" + ;; + + --silent|--quiet) + opt_quiet=: + opt_verbose=false + func_append preserve_args " $_G_opt" + ;; + + --tag) test $# = 0 && func_missing_arg $_G_opt && break + opt_tag=$1 + func_append preserve_args " $_G_opt $1" + func_enable_tag "$1" + shift + ;; + + --verbose|-v) opt_quiet=false + opt_verbose=: + func_append preserve_args " $_G_opt" + ;; + + # An option not handled by this hook function: + *) set dummy "$_G_opt" ${1+"$@"} ; shift + _G_match_lt_parse_options=false + break + ;; + esac + $_G_match_lt_parse_options && _G_rc_lt_parse_options=: + done + + if $_G_rc_lt_parse_options; then + # save modified positional parameters for caller + func_quote eval ${1+"$@"} + libtool_parse_options_result=$func_quote_result + fi +} +func_add_hook func_parse_options libtool_parse_options + + + +# libtool_validate_options [ARG]... +# --------------------------------- +# Perform any sanity checks on option settings and/or unconsumed +# arguments. +libtool_validate_options () +{ + # save first non-option argument + if test 0 -lt $#; then + nonopt=$1 + shift + fi + + # preserve --debug + test : = "$debug_cmd" || func_append preserve_args " --debug" + + case $host in + # Solaris2 added to fix http://debbugs.gnu.org/cgi/bugreport.cgi?bug=16452 + # see also: http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59788 + *cygwin* | *mingw* | *pw32* | *cegcc* | *solaris2* | *os2*) + # don't eliminate duplications in $postdeps and $predeps + opt_duplicate_compiler_generated_deps=: + ;; + *) + opt_duplicate_compiler_generated_deps=$opt_preserve_dup_deps + ;; + esac + + $opt_help || { + # Sanity checks first: + func_check_version_match + + test yes != "$build_libtool_libs" \ + && test yes != "$build_old_libs" \ + && func_fatal_configuration "not configured to build any kind of library" + + # Darwin sucks + eval std_shrext=\"$shrext_cmds\" + + # Only execute mode is allowed to have -dlopen flags. + if test -n "$opt_dlopen" && test execute != "$opt_mode"; then + func_error "unrecognized option '-dlopen'" + $ECHO "$help" 1>&2 + exit $EXIT_FAILURE + fi + + # Change the help message to a mode-specific one. + generic_help=$help + help="Try '$progname --help --mode=$opt_mode' for more information." + } + + # Pass back the unparsed argument list + func_quote eval ${1+"$@"} + libtool_validate_options_result=$func_quote_result +} +func_add_hook func_validate_options libtool_validate_options + + +# Process options as early as possible so that --help and --version +# can return quickly. +func_options ${1+"$@"} +eval set dummy "$func_options_result"; shift + + + +## ----------- ## +## Main. ## +## ----------- ## + +magic='%%%MAGIC variable%%%' +magic_exe='%%%MAGIC EXE variable%%%' + +# Global variables. +extracted_archives= +extracted_serial=0 + +# If this variable is set in any of the actions, the command in it +# will be execed at the end. This prevents here-documents from being +# left over by shells. +exec_cmd= + + +# A function that is used when there is no print builtin or printf. +func_fallback_echo () +{ + eval 'cat <<_LTECHO_EOF +$1 +_LTECHO_EOF' +} + +# func_generated_by_libtool +# True iff stdin has been generated by Libtool. This function is only +# a basic sanity check; it will hardly flush out determined imposters. +func_generated_by_libtool_p () +{ + $GREP "^# Generated by .*$PACKAGE" > /dev/null 2>&1 +} + +# func_lalib_p file +# True iff FILE is a libtool '.la' library or '.lo' object file. +# This function is only a basic sanity check; it will hardly flush out +# determined imposters. +func_lalib_p () +{ + test -f "$1" && + $SED -e 4q "$1" 2>/dev/null | func_generated_by_libtool_p +} + +# func_lalib_unsafe_p file +# True iff FILE is a libtool '.la' library or '.lo' object file. +# This function implements the same check as func_lalib_p without +# resorting to external programs. To this end, it redirects stdin and +# closes it afterwards, without saving the original file descriptor. +# As a safety measure, use it only where a negative result would be +# fatal anyway. Works if 'file' does not exist. +func_lalib_unsafe_p () +{ + lalib_p=no + if test -f "$1" && test -r "$1" && exec 5<&0 <"$1"; then + for lalib_p_l in 1 2 3 4 + do + read lalib_p_line + case $lalib_p_line in + \#\ Generated\ by\ *$PACKAGE* ) lalib_p=yes; break;; + esac + done + exec 0<&5 5<&- + fi + test yes = "$lalib_p" +} + +# func_ltwrapper_script_p file +# True iff FILE is a libtool wrapper script +# This function is only a basic sanity check; it will hardly flush out +# determined imposters. +func_ltwrapper_script_p () +{ + test -f "$1" && + $lt_truncate_bin < "$1" 2>/dev/null | func_generated_by_libtool_p +} + +# func_ltwrapper_executable_p file +# True iff FILE is a libtool wrapper executable +# This function is only a basic sanity check; it will hardly flush out +# determined imposters. +func_ltwrapper_executable_p () +{ + func_ltwrapper_exec_suffix= + case $1 in + *.exe) ;; + *) func_ltwrapper_exec_suffix=.exe ;; + esac + $GREP "$magic_exe" "$1$func_ltwrapper_exec_suffix" >/dev/null 2>&1 +} + +# func_ltwrapper_scriptname file +# Assumes file is an ltwrapper_executable +# uses $file to determine the appropriate filename for a +# temporary ltwrapper_script. +func_ltwrapper_scriptname () +{ + func_dirname_and_basename "$1" "" "." + func_stripname '' '.exe' "$func_basename_result" + func_ltwrapper_scriptname_result=$func_dirname_result/$objdir/${func_stripname_result}_ltshwrapper +} + +# func_ltwrapper_p file +# True iff FILE is a libtool wrapper script or wrapper executable +# This function is only a basic sanity check; it will hardly flush out +# determined imposters. +func_ltwrapper_p () +{ + func_ltwrapper_script_p "$1" || func_ltwrapper_executable_p "$1" +} + + +# func_execute_cmds commands fail_cmd +# Execute tilde-delimited COMMANDS. +# If FAIL_CMD is given, eval that upon failure. +# FAIL_CMD may read-access the current command in variable CMD! +func_execute_cmds () +{ + $debug_cmd + + save_ifs=$IFS; IFS='~' + for cmd in $1; do + IFS=$sp$nl + eval cmd=\"$cmd\" + IFS=$save_ifs + func_show_eval "$cmd" "${2-:}" + done + IFS=$save_ifs +} + + +# func_source file +# Source FILE, adding directory component if necessary. +# Note that it is not necessary on cygwin/mingw to append a dot to +# FILE even if both FILE and FILE.exe exist: automatic-append-.exe +# behavior happens only for exec(3), not for open(2)! Also, sourcing +# 'FILE.' does not work on cygwin managed mounts. +func_source () +{ + $debug_cmd + + case $1 in + */* | *\\*) . "$1" ;; + *) . "./$1" ;; + esac +} + + +# func_resolve_sysroot PATH +# Replace a leading = in PATH with a sysroot. Store the result into +# func_resolve_sysroot_result +func_resolve_sysroot () +{ + func_resolve_sysroot_result=$1 + case $func_resolve_sysroot_result in + =*) + func_stripname '=' '' "$func_resolve_sysroot_result" + func_resolve_sysroot_result=$lt_sysroot$func_stripname_result + ;; + esac +} + +# func_replace_sysroot PATH +# If PATH begins with the sysroot, replace it with = and +# store the result into func_replace_sysroot_result. +func_replace_sysroot () +{ + case $lt_sysroot:$1 in + ?*:"$lt_sysroot"*) + func_stripname "$lt_sysroot" '' "$1" + func_replace_sysroot_result='='$func_stripname_result + ;; + *) + # Including no sysroot. + func_replace_sysroot_result=$1 + ;; + esac +} + +# func_infer_tag arg +# Infer tagged configuration to use if any are available and +# if one wasn't chosen via the "--tag" command line option. +# Only attempt this if the compiler in the base compile +# command doesn't match the default compiler. +# arg is usually of the form 'gcc ...' +func_infer_tag () +{ + $debug_cmd + + if test -n "$available_tags" && test -z "$tagname"; then + CC_quoted= + for arg in $CC; do + func_append_quoted CC_quoted "$arg" + done + CC_expanded=`func_echo_all $CC` + CC_quoted_expanded=`func_echo_all $CC_quoted` + case $@ in + # Blanks in the command may have been stripped by the calling shell, + # but not from the CC environment variable when configure was run. + " $CC "* | "$CC "* | " $CC_expanded "* | "$CC_expanded "* | \ + " $CC_quoted"* | "$CC_quoted "* | " $CC_quoted_expanded "* | "$CC_quoted_expanded "*) ;; + # Blanks at the start of $base_compile will cause this to fail + # if we don't check for them as well. + *) + for z in $available_tags; do + if $GREP "^# ### BEGIN LIBTOOL TAG CONFIG: $z$" < "$progpath" > /dev/null; then + # Evaluate the configuration. + eval "`$SED -n -e '/^# ### BEGIN LIBTOOL TAG CONFIG: '$z'$/,/^# ### END LIBTOOL TAG CONFIG: '$z'$/p' < $progpath`" + CC_quoted= + for arg in $CC; do + # Double-quote args containing other shell metacharacters. + func_append_quoted CC_quoted "$arg" + done + CC_expanded=`func_echo_all $CC` + CC_quoted_expanded=`func_echo_all $CC_quoted` + case "$@ " in + " $CC "* | "$CC "* | " $CC_expanded "* | "$CC_expanded "* | \ + " $CC_quoted"* | "$CC_quoted "* | " $CC_quoted_expanded "* | "$CC_quoted_expanded "*) + # The compiler in the base compile command matches + # the one in the tagged configuration. + # Assume this is the tagged configuration we want. + tagname=$z + break + ;; + esac + fi + done + # If $tagname still isn't set, then no tagged configuration + # was found and let the user know that the "--tag" command + # line option must be used. + if test -z "$tagname"; then + func_echo "unable to infer tagged configuration" + func_fatal_error "specify a tag with '--tag'" +# else +# func_verbose "using $tagname tagged configuration" + fi + ;; + esac + fi +} + + + +# func_write_libtool_object output_name pic_name nonpic_name +# Create a libtool object file (analogous to a ".la" file), +# but don't create it if we're doing a dry run. +func_write_libtool_object () +{ + write_libobj=$1 + if test yes = "$build_libtool_libs"; then + write_lobj=\'$2\' + else + write_lobj=none + fi + + if test yes = "$build_old_libs"; then + write_oldobj=\'$3\' + else + write_oldobj=none + fi + + $opt_dry_run || { + cat >${write_libobj}T </dev/null` + if test "$?" -eq 0 && test -n "$func_convert_core_file_wine_to_w32_tmp"; then + func_convert_core_file_wine_to_w32_result=`$ECHO "$func_convert_core_file_wine_to_w32_tmp" | + $SED -e "$sed_naive_backslashify"` + else + func_convert_core_file_wine_to_w32_result= + fi + fi +} +# end: func_convert_core_file_wine_to_w32 + + +# func_convert_core_path_wine_to_w32 ARG +# Helper function used by path conversion functions when $build is *nix, and +# $host is mingw, cygwin, or some other w32 environment. Relies on a correctly +# configured wine environment available, with the winepath program in $build's +# $PATH. Assumes ARG has no leading or trailing path separator characters. +# +# ARG is path to be converted from $build format to win32. +# Result is available in $func_convert_core_path_wine_to_w32_result. +# Unconvertible file (directory) names in ARG are skipped; if no directory names +# are convertible, then the result may be empty. +func_convert_core_path_wine_to_w32 () +{ + $debug_cmd + + # unfortunately, winepath doesn't convert paths, only file names + func_convert_core_path_wine_to_w32_result= + if test -n "$1"; then + oldIFS=$IFS + IFS=: + for func_convert_core_path_wine_to_w32_f in $1; do + IFS=$oldIFS + func_convert_core_file_wine_to_w32 "$func_convert_core_path_wine_to_w32_f" + if test -n "$func_convert_core_file_wine_to_w32_result"; then + if test -z "$func_convert_core_path_wine_to_w32_result"; then + func_convert_core_path_wine_to_w32_result=$func_convert_core_file_wine_to_w32_result + else + func_append func_convert_core_path_wine_to_w32_result ";$func_convert_core_file_wine_to_w32_result" + fi + fi + done + IFS=$oldIFS + fi +} +# end: func_convert_core_path_wine_to_w32 + + +# func_cygpath ARGS... +# Wrapper around calling the cygpath program via LT_CYGPATH. This is used when +# when (1) $build is *nix and Cygwin is hosted via a wine environment; or (2) +# $build is MSYS and $host is Cygwin, or (3) $build is Cygwin. In case (1) or +# (2), returns the Cygwin file name or path in func_cygpath_result (input +# file name or path is assumed to be in w32 format, as previously converted +# from $build's *nix or MSYS format). In case (3), returns the w32 file name +# or path in func_cygpath_result (input file name or path is assumed to be in +# Cygwin format). Returns an empty string on error. +# +# ARGS are passed to cygpath, with the last one being the file name or path to +# be converted. +# +# Specify the absolute *nix (or w32) name to cygpath in the LT_CYGPATH +# environment variable; do not put it in $PATH. +func_cygpath () +{ + $debug_cmd + + if test -n "$LT_CYGPATH" && test -f "$LT_CYGPATH"; then + func_cygpath_result=`$LT_CYGPATH "$@" 2>/dev/null` + if test "$?" -ne 0; then + # on failure, ensure result is empty + func_cygpath_result= + fi + else + func_cygpath_result= + func_error "LT_CYGPATH is empty or specifies non-existent file: '$LT_CYGPATH'" + fi +} +#end: func_cygpath + + +# func_convert_core_msys_to_w32 ARG +# Convert file name or path ARG from MSYS format to w32 format. Return +# result in func_convert_core_msys_to_w32_result. +func_convert_core_msys_to_w32 () +{ + $debug_cmd + + # awkward: cmd appends spaces to result + func_convert_core_msys_to_w32_result=`( cmd //c echo "$1" ) 2>/dev/null | + $SED -e 's/[ ]*$//' -e "$sed_naive_backslashify"` +} +#end: func_convert_core_msys_to_w32 + + +# func_convert_file_check ARG1 ARG2 +# Verify that ARG1 (a file name in $build format) was converted to $host +# format in ARG2. Otherwise, emit an error message, but continue (resetting +# func_to_host_file_result to ARG1). +func_convert_file_check () +{ + $debug_cmd + + if test -z "$2" && test -n "$1"; then + func_error "Could not determine host file name corresponding to" + func_error " '$1'" + func_error "Continuing, but uninstalled executables may not work." + # Fallback: + func_to_host_file_result=$1 + fi +} +# end func_convert_file_check + + +# func_convert_path_check FROM_PATHSEP TO_PATHSEP FROM_PATH TO_PATH +# Verify that FROM_PATH (a path in $build format) was converted to $host +# format in TO_PATH. Otherwise, emit an error message, but continue, resetting +# func_to_host_file_result to a simplistic fallback value (see below). +func_convert_path_check () +{ + $debug_cmd + + if test -z "$4" && test -n "$3"; then + func_error "Could not determine the host path corresponding to" + func_error " '$3'" + func_error "Continuing, but uninstalled executables may not work." + # Fallback. This is a deliberately simplistic "conversion" and + # should not be "improved". See libtool.info. + if test "x$1" != "x$2"; then + lt_replace_pathsep_chars="s|$1|$2|g" + func_to_host_path_result=`echo "$3" | + $SED -e "$lt_replace_pathsep_chars"` + else + func_to_host_path_result=$3 + fi + fi +} +# end func_convert_path_check + + +# func_convert_path_front_back_pathsep FRONTPAT BACKPAT REPL ORIG +# Modifies func_to_host_path_result by prepending REPL if ORIG matches FRONTPAT +# and appending REPL if ORIG matches BACKPAT. +func_convert_path_front_back_pathsep () +{ + $debug_cmd + + case $4 in + $1 ) func_to_host_path_result=$3$func_to_host_path_result + ;; + esac + case $4 in + $2 ) func_append func_to_host_path_result "$3" + ;; + esac +} +# end func_convert_path_front_back_pathsep + + +################################################## +# $build to $host FILE NAME CONVERSION FUNCTIONS # +################################################## +# invoked via '$to_host_file_cmd ARG' +# +# In each case, ARG is the path to be converted from $build to $host format. +# Result will be available in $func_to_host_file_result. + + +# func_to_host_file ARG +# Converts the file name ARG from $build format to $host format. Return result +# in func_to_host_file_result. +func_to_host_file () +{ + $debug_cmd + + $to_host_file_cmd "$1" +} +# end func_to_host_file + + +# func_to_tool_file ARG LAZY +# converts the file name ARG from $build format to toolchain format. Return +# result in func_to_tool_file_result. If the conversion in use is listed +# in (the comma separated) LAZY, no conversion takes place. +func_to_tool_file () +{ + $debug_cmd + + case ,$2, in + *,"$to_tool_file_cmd",*) + func_to_tool_file_result=$1 + ;; + *) + $to_tool_file_cmd "$1" + func_to_tool_file_result=$func_to_host_file_result + ;; + esac +} +# end func_to_tool_file + + +# func_convert_file_noop ARG +# Copy ARG to func_to_host_file_result. +func_convert_file_noop () +{ + func_to_host_file_result=$1 +} +# end func_convert_file_noop + + +# func_convert_file_msys_to_w32 ARG +# Convert file name ARG from (mingw) MSYS to (mingw) w32 format; automatic +# conversion to w32 is not available inside the cwrapper. Returns result in +# func_to_host_file_result. +func_convert_file_msys_to_w32 () +{ + $debug_cmd + + func_to_host_file_result=$1 + if test -n "$1"; then + func_convert_core_msys_to_w32 "$1" + func_to_host_file_result=$func_convert_core_msys_to_w32_result + fi + func_convert_file_check "$1" "$func_to_host_file_result" +} +# end func_convert_file_msys_to_w32 + + +# func_convert_file_cygwin_to_w32 ARG +# Convert file name ARG from Cygwin to w32 format. Returns result in +# func_to_host_file_result. +func_convert_file_cygwin_to_w32 () +{ + $debug_cmd + + func_to_host_file_result=$1 + if test -n "$1"; then + # because $build is cygwin, we call "the" cygpath in $PATH; no need to use + # LT_CYGPATH in this case. + func_to_host_file_result=`cygpath -m "$1"` + fi + func_convert_file_check "$1" "$func_to_host_file_result" +} +# end func_convert_file_cygwin_to_w32 + + +# func_convert_file_nix_to_w32 ARG +# Convert file name ARG from *nix to w32 format. Requires a wine environment +# and a working winepath. Returns result in func_to_host_file_result. +func_convert_file_nix_to_w32 () +{ + $debug_cmd + + func_to_host_file_result=$1 + if test -n "$1"; then + func_convert_core_file_wine_to_w32 "$1" + func_to_host_file_result=$func_convert_core_file_wine_to_w32_result + fi + func_convert_file_check "$1" "$func_to_host_file_result" +} +# end func_convert_file_nix_to_w32 + + +# func_convert_file_msys_to_cygwin ARG +# Convert file name ARG from MSYS to Cygwin format. Requires LT_CYGPATH set. +# Returns result in func_to_host_file_result. +func_convert_file_msys_to_cygwin () +{ + $debug_cmd + + func_to_host_file_result=$1 + if test -n "$1"; then + func_convert_core_msys_to_w32 "$1" + func_cygpath -u "$func_convert_core_msys_to_w32_result" + func_to_host_file_result=$func_cygpath_result + fi + func_convert_file_check "$1" "$func_to_host_file_result" +} +# end func_convert_file_msys_to_cygwin + + +# func_convert_file_nix_to_cygwin ARG +# Convert file name ARG from *nix to Cygwin format. Requires Cygwin installed +# in a wine environment, working winepath, and LT_CYGPATH set. Returns result +# in func_to_host_file_result. +func_convert_file_nix_to_cygwin () +{ + $debug_cmd + + func_to_host_file_result=$1 + if test -n "$1"; then + # convert from *nix to w32, then use cygpath to convert from w32 to cygwin. + func_convert_core_file_wine_to_w32 "$1" + func_cygpath -u "$func_convert_core_file_wine_to_w32_result" + func_to_host_file_result=$func_cygpath_result + fi + func_convert_file_check "$1" "$func_to_host_file_result" +} +# end func_convert_file_nix_to_cygwin + + +############################################# +# $build to $host PATH CONVERSION FUNCTIONS # +############################################# +# invoked via '$to_host_path_cmd ARG' +# +# In each case, ARG is the path to be converted from $build to $host format. +# The result will be available in $func_to_host_path_result. +# +# Path separators are also converted from $build format to $host format. If +# ARG begins or ends with a path separator character, it is preserved (but +# converted to $host format) on output. +# +# All path conversion functions are named using the following convention: +# file name conversion function : func_convert_file_X_to_Y () +# path conversion function : func_convert_path_X_to_Y () +# where, for any given $build/$host combination the 'X_to_Y' value is the +# same. If conversion functions are added for new $build/$host combinations, +# the two new functions must follow this pattern, or func_init_to_host_path_cmd +# will break. + + +# func_init_to_host_path_cmd +# Ensures that function "pointer" variable $to_host_path_cmd is set to the +# appropriate value, based on the value of $to_host_file_cmd. +to_host_path_cmd= +func_init_to_host_path_cmd () +{ + $debug_cmd + + if test -z "$to_host_path_cmd"; then + func_stripname 'func_convert_file_' '' "$to_host_file_cmd" + to_host_path_cmd=func_convert_path_$func_stripname_result + fi +} + + +# func_to_host_path ARG +# Converts the path ARG from $build format to $host format. Return result +# in func_to_host_path_result. +func_to_host_path () +{ + $debug_cmd + + func_init_to_host_path_cmd + $to_host_path_cmd "$1" +} +# end func_to_host_path + + +# func_convert_path_noop ARG +# Copy ARG to func_to_host_path_result. +func_convert_path_noop () +{ + func_to_host_path_result=$1 +} +# end func_convert_path_noop + + +# func_convert_path_msys_to_w32 ARG +# Convert path ARG from (mingw) MSYS to (mingw) w32 format; automatic +# conversion to w32 is not available inside the cwrapper. Returns result in +# func_to_host_path_result. +func_convert_path_msys_to_w32 () +{ + $debug_cmd + + func_to_host_path_result=$1 + if test -n "$1"; then + # Remove leading and trailing path separator characters from ARG. MSYS + # behavior is inconsistent here; cygpath turns them into '.;' and ';.'; + # and winepath ignores them completely. + func_stripname : : "$1" + func_to_host_path_tmp1=$func_stripname_result + func_convert_core_msys_to_w32 "$func_to_host_path_tmp1" + func_to_host_path_result=$func_convert_core_msys_to_w32_result + func_convert_path_check : ";" \ + "$func_to_host_path_tmp1" "$func_to_host_path_result" + func_convert_path_front_back_pathsep ":*" "*:" ";" "$1" + fi +} +# end func_convert_path_msys_to_w32 + + +# func_convert_path_cygwin_to_w32 ARG +# Convert path ARG from Cygwin to w32 format. Returns result in +# func_to_host_file_result. +func_convert_path_cygwin_to_w32 () +{ + $debug_cmd + + func_to_host_path_result=$1 + if test -n "$1"; then + # See func_convert_path_msys_to_w32: + func_stripname : : "$1" + func_to_host_path_tmp1=$func_stripname_result + func_to_host_path_result=`cygpath -m -p "$func_to_host_path_tmp1"` + func_convert_path_check : ";" \ + "$func_to_host_path_tmp1" "$func_to_host_path_result" + func_convert_path_front_back_pathsep ":*" "*:" ";" "$1" + fi +} +# end func_convert_path_cygwin_to_w32 + + +# func_convert_path_nix_to_w32 ARG +# Convert path ARG from *nix to w32 format. Requires a wine environment and +# a working winepath. Returns result in func_to_host_file_result. +func_convert_path_nix_to_w32 () +{ + $debug_cmd + + func_to_host_path_result=$1 + if test -n "$1"; then + # See func_convert_path_msys_to_w32: + func_stripname : : "$1" + func_to_host_path_tmp1=$func_stripname_result + func_convert_core_path_wine_to_w32 "$func_to_host_path_tmp1" + func_to_host_path_result=$func_convert_core_path_wine_to_w32_result + func_convert_path_check : ";" \ + "$func_to_host_path_tmp1" "$func_to_host_path_result" + func_convert_path_front_back_pathsep ":*" "*:" ";" "$1" + fi +} +# end func_convert_path_nix_to_w32 + + +# func_convert_path_msys_to_cygwin ARG +# Convert path ARG from MSYS to Cygwin format. Requires LT_CYGPATH set. +# Returns result in func_to_host_file_result. +func_convert_path_msys_to_cygwin () +{ + $debug_cmd + + func_to_host_path_result=$1 + if test -n "$1"; then + # See func_convert_path_msys_to_w32: + func_stripname : : "$1" + func_to_host_path_tmp1=$func_stripname_result + func_convert_core_msys_to_w32 "$func_to_host_path_tmp1" + func_cygpath -u -p "$func_convert_core_msys_to_w32_result" + func_to_host_path_result=$func_cygpath_result + func_convert_path_check : : \ + "$func_to_host_path_tmp1" "$func_to_host_path_result" + func_convert_path_front_back_pathsep ":*" "*:" : "$1" + fi +} +# end func_convert_path_msys_to_cygwin + + +# func_convert_path_nix_to_cygwin ARG +# Convert path ARG from *nix to Cygwin format. Requires Cygwin installed in a +# a wine environment, working winepath, and LT_CYGPATH set. Returns result in +# func_to_host_file_result. +func_convert_path_nix_to_cygwin () +{ + $debug_cmd + + func_to_host_path_result=$1 + if test -n "$1"; then + # Remove leading and trailing path separator characters from + # ARG. msys behavior is inconsistent here, cygpath turns them + # into '.;' and ';.', and winepath ignores them completely. + func_stripname : : "$1" + func_to_host_path_tmp1=$func_stripname_result + func_convert_core_path_wine_to_w32 "$func_to_host_path_tmp1" + func_cygpath -u -p "$func_convert_core_path_wine_to_w32_result" + func_to_host_path_result=$func_cygpath_result + func_convert_path_check : : \ + "$func_to_host_path_tmp1" "$func_to_host_path_result" + func_convert_path_front_back_pathsep ":*" "*:" : "$1" + fi +} +# end func_convert_path_nix_to_cygwin + + +# func_dll_def_p FILE +# True iff FILE is a Windows DLL '.def' file. +# Keep in sync with _LT_DLL_DEF_P in libtool.m4 +func_dll_def_p () +{ + $debug_cmd + + func_dll_def_p_tmp=`$SED -n \ + -e 's/^[ ]*//' \ + -e '/^\(;.*\)*$/d' \ + -e 's/^\(EXPORTS\|LIBRARY\)\([ ].*\)*$/DEF/p' \ + -e q \ + "$1"` + test DEF = "$func_dll_def_p_tmp" +} + + +# func_mode_compile arg... +func_mode_compile () +{ + $debug_cmd + + # Get the compilation command and the source file. + base_compile= + srcfile=$nonopt # always keep a non-empty value in "srcfile" + suppress_opt=yes + suppress_output= + arg_mode=normal + libobj= + later= + pie_flag= + + for arg + do + case $arg_mode in + arg ) + # do not "continue". Instead, add this to base_compile + lastarg=$arg + arg_mode=normal + ;; + + target ) + libobj=$arg + arg_mode=normal + continue + ;; + + normal ) + # Accept any command-line options. + case $arg in + -o) + test -n "$libobj" && \ + func_fatal_error "you cannot specify '-o' more than once" + arg_mode=target + continue + ;; + + -pie | -fpie | -fPIE) + func_append pie_flag " $arg" + continue + ;; + + -shared | -static | -prefer-pic | -prefer-non-pic) + func_append later " $arg" + continue + ;; + + -no-suppress) + suppress_opt=no + continue + ;; + + -Xcompiler) + arg_mode=arg # the next one goes into the "base_compile" arg list + continue # The current "srcfile" will either be retained or + ;; # replaced later. I would guess that would be a bug. + + -Wc,*) + func_stripname '-Wc,' '' "$arg" + args=$func_stripname_result + lastarg= + save_ifs=$IFS; IFS=, + for arg in $args; do + IFS=$save_ifs + func_append_quoted lastarg "$arg" + done + IFS=$save_ifs + func_stripname ' ' '' "$lastarg" + lastarg=$func_stripname_result + + # Add the arguments to base_compile. + func_append base_compile " $lastarg" + continue + ;; + + *) + # Accept the current argument as the source file. + # The previous "srcfile" becomes the current argument. + # + lastarg=$srcfile + srcfile=$arg + ;; + esac # case $arg + ;; + esac # case $arg_mode + + # Aesthetically quote the previous argument. + func_append_quoted base_compile "$lastarg" + done # for arg + + case $arg_mode in + arg) + func_fatal_error "you must specify an argument for -Xcompile" + ;; + target) + func_fatal_error "you must specify a target with '-o'" + ;; + *) + # Get the name of the library object. + test -z "$libobj" && { + func_basename "$srcfile" + libobj=$func_basename_result + } + ;; + esac + + # Recognize several different file suffixes. + # If the user specifies -o file.o, it is replaced with file.lo + case $libobj in + *.[cCFSifmso] | \ + *.ada | *.adb | *.ads | *.asm | \ + *.c++ | *.cc | *.ii | *.class | *.cpp | *.cxx | \ + *.[fF][09]? | *.for | *.java | *.go | *.obj | *.sx | *.cu | *.cup) + func_xform "$libobj" + libobj=$func_xform_result + ;; + esac + + case $libobj in + *.lo) func_lo2o "$libobj"; obj=$func_lo2o_result ;; + *) + func_fatal_error "cannot determine name of library object from '$libobj'" + ;; + esac + + func_infer_tag $base_compile + + for arg in $later; do + case $arg in + -shared) + test yes = "$build_libtool_libs" \ + || func_fatal_configuration "cannot build a shared library" + build_old_libs=no + continue + ;; + + -static) + build_libtool_libs=no + build_old_libs=yes + continue + ;; + + -prefer-pic) + pic_mode=yes + continue + ;; + + -prefer-non-pic) + pic_mode=no + continue + ;; + esac + done + + func_quote_arg pretty "$libobj" + test "X$libobj" != "X$func_quote_arg_result" \ + && $ECHO "X$libobj" | $GREP '[]~#^*{};<>?"'"'"' &()|`$[]' \ + && func_warning "libobj name '$libobj' may not contain shell special characters." + func_dirname_and_basename "$obj" "/" "" + objname=$func_basename_result + xdir=$func_dirname_result + lobj=$xdir$objdir/$objname + + test -z "$base_compile" && \ + func_fatal_help "you must specify a compilation command" + + # Delete any leftover library objects. + if test yes = "$build_old_libs"; then + removelist="$obj $lobj $libobj ${libobj}T" + else + removelist="$lobj $libobj ${libobj}T" + fi + + # On Cygwin there's no "real" PIC flag so we must build both object types + case $host_os in + cygwin* | mingw* | pw32* | os2* | cegcc*) + pic_mode=default + ;; + esac + if test no = "$pic_mode" && test pass_all != "$deplibs_check_method"; then + # non-PIC code in shared libraries is not supported + pic_mode=default + fi + + # Calculate the filename of the output object if compiler does + # not support -o with -c + if test no = "$compiler_c_o"; then + output_obj=`$ECHO "$srcfile" | $SED 's%^.*/%%; s%\.[^.]*$%%'`.$objext + lockfile=$output_obj.lock + else + output_obj= + need_locks=no + lockfile= + fi + + # Lock this critical section if it is needed + # We use this script file to make the link, it avoids creating a new file + if test yes = "$need_locks"; then + until $opt_dry_run || ln "$progpath" "$lockfile" 2>/dev/null; do + func_echo "Waiting for $lockfile to be removed" + sleep 2 + done + elif test warn = "$need_locks"; then + if test -f "$lockfile"; then + $ECHO "\ +*** ERROR, $lockfile exists and contains: +`cat $lockfile 2>/dev/null` + +This indicates that another process is trying to use the same +temporary object file, and libtool could not work around it because +your compiler does not support '-c' and '-o' together. If you +repeat this compilation, it may succeed, by chance, but you had better +avoid parallel builds (make -j) in this platform, or get a better +compiler." + + $opt_dry_run || $RM $removelist + exit $EXIT_FAILURE + fi + func_append removelist " $output_obj" + $ECHO "$srcfile" > "$lockfile" + fi + + $opt_dry_run || $RM $removelist + func_append removelist " $lockfile" + trap '$opt_dry_run || $RM $removelist; exit $EXIT_FAILURE' 1 2 15 + + func_to_tool_file "$srcfile" func_convert_file_msys_to_w32 + srcfile=$func_to_tool_file_result + func_quote_arg pretty "$srcfile" + qsrcfile=$func_quote_arg_result + + # Only build a PIC object if we are building libtool libraries. + if test yes = "$build_libtool_libs"; then + # Without this assignment, base_compile gets emptied. + fbsd_hideous_sh_bug=$base_compile + + if test no != "$pic_mode"; then + command="$base_compile $qsrcfile $pic_flag" + else + # Don't build PIC code + command="$base_compile $qsrcfile" + fi + + func_mkdir_p "$xdir$objdir" + + if test -z "$output_obj"; then + # Place PIC objects in $objdir + func_append command " -o $lobj" + fi + + func_show_eval_locale "$command" \ + 'test -n "$output_obj" && $RM $removelist; exit $EXIT_FAILURE' + + if test warn = "$need_locks" && + test "X`cat $lockfile 2>/dev/null`" != "X$srcfile"; then + $ECHO "\ +*** ERROR, $lockfile contains: +`cat $lockfile 2>/dev/null` + +but it should contain: +$srcfile + +This indicates that another process is trying to use the same +temporary object file, and libtool could not work around it because +your compiler does not support '-c' and '-o' together. If you +repeat this compilation, it may succeed, by chance, but you had better +avoid parallel builds (make -j) in this platform, or get a better +compiler." + + $opt_dry_run || $RM $removelist + exit $EXIT_FAILURE + fi + + # Just move the object if needed, then go on to compile the next one + if test -n "$output_obj" && test "X$output_obj" != "X$lobj"; then + func_show_eval '$MV "$output_obj" "$lobj"' \ + 'error=$?; $opt_dry_run || $RM $removelist; exit $error' + fi + + # Allow error messages only from the first compilation. + if test yes = "$suppress_opt"; then + suppress_output=' >/dev/null 2>&1' + fi + fi + + # Only build a position-dependent object if we build old libraries. + if test yes = "$build_old_libs"; then + if test yes != "$pic_mode"; then + # Don't build PIC code + command="$base_compile $qsrcfile$pie_flag" + else + command="$base_compile $qsrcfile $pic_flag" + fi + if test yes = "$compiler_c_o"; then + func_append command " -o $obj" + fi + + # Suppress compiler output if we already did a PIC compilation. + func_append command "$suppress_output" + func_show_eval_locale "$command" \ + '$opt_dry_run || $RM $removelist; exit $EXIT_FAILURE' + + if test warn = "$need_locks" && + test "X`cat $lockfile 2>/dev/null`" != "X$srcfile"; then + $ECHO "\ +*** ERROR, $lockfile contains: +`cat $lockfile 2>/dev/null` + +but it should contain: +$srcfile + +This indicates that another process is trying to use the same +temporary object file, and libtool could not work around it because +your compiler does not support '-c' and '-o' together. If you +repeat this compilation, it may succeed, by chance, but you had better +avoid parallel builds (make -j) in this platform, or get a better +compiler." + + $opt_dry_run || $RM $removelist + exit $EXIT_FAILURE + fi + + # Just move the object if needed + if test -n "$output_obj" && test "X$output_obj" != "X$obj"; then + func_show_eval '$MV "$output_obj" "$obj"' \ + 'error=$?; $opt_dry_run || $RM $removelist; exit $error' + fi + fi + + $opt_dry_run || { + func_write_libtool_object "$libobj" "$objdir/$objname" "$objname" + + # Unlock the critical section if it was locked + if test no != "$need_locks"; then + removelist=$lockfile + $RM "$lockfile" + fi + } + + exit $EXIT_SUCCESS +} + +$opt_help || { + test compile = "$opt_mode" && func_mode_compile ${1+"$@"} +} + +func_mode_help () +{ + # We need to display help for each of the modes. + case $opt_mode in + "") + # Generic help is extracted from the usage comments + # at the start of this file. + func_help + ;; + + clean) + $ECHO \ +"Usage: $progname [OPTION]... --mode=clean RM [RM-OPTION]... FILE... + +Remove files from the build directory. + +RM is the name of the program to use to delete files associated with each FILE +(typically '/bin/rm'). RM-OPTIONS are options (such as '-f') to be passed +to RM. + +If FILE is a libtool library, object or program, all the files associated +with it are deleted. Otherwise, only FILE itself is deleted using RM." + ;; + + compile) + $ECHO \ +"Usage: $progname [OPTION]... --mode=compile COMPILE-COMMAND... SOURCEFILE + +Compile a source file into a libtool library object. + +This mode accepts the following additional options: + + -o OUTPUT-FILE set the output file name to OUTPUT-FILE + -no-suppress do not suppress compiler output for multiple passes + -prefer-pic try to build PIC objects only + -prefer-non-pic try to build non-PIC objects only + -shared do not build a '.o' file suitable for static linking + -static only build a '.o' file suitable for static linking + -Wc,FLAG + -Xcompiler FLAG pass FLAG directly to the compiler + +COMPILE-COMMAND is a command to be used in creating a 'standard' object file +from the given SOURCEFILE. + +The output file name is determined by removing the directory component from +SOURCEFILE, then substituting the C source code suffix '.c' with the +library object suffix, '.lo'." + ;; + + execute) + $ECHO \ +"Usage: $progname [OPTION]... --mode=execute COMMAND [ARGS]... + +Automatically set library path, then run a program. + +This mode accepts the following additional options: + + -dlopen FILE add the directory containing FILE to the library path + +This mode sets the library path environment variable according to '-dlopen' +flags. + +If any of the ARGS are libtool executable wrappers, then they are translated +into their corresponding uninstalled binary, and any of their required library +directories are added to the library path. + +Then, COMMAND is executed, with ARGS as arguments." + ;; + + finish) + $ECHO \ +"Usage: $progname [OPTION]... --mode=finish [LIBDIR]... + +Complete the installation of libtool libraries. + +Each LIBDIR is a directory that contains libtool libraries. + +The commands that this mode executes may require superuser privileges. Use +the '--dry-run' option if you just want to see what would be executed." + ;; + + install) + $ECHO \ +"Usage: $progname [OPTION]... --mode=install INSTALL-COMMAND... + +Install executables or libraries. + +INSTALL-COMMAND is the installation command. The first component should be +either the 'install' or 'cp' program. + +The following components of INSTALL-COMMAND are treated specially: + + -inst-prefix-dir PREFIX-DIR Use PREFIX-DIR as a staging area for installation + +The rest of the components are interpreted as arguments to that command (only +BSD-compatible install options are recognized)." + ;; + + link) + $ECHO \ +"Usage: $progname [OPTION]... --mode=link LINK-COMMAND... + +Link object files or libraries together to form another library, or to +create an executable program. + +LINK-COMMAND is a command using the C compiler that you would use to create +a program from several object files. + +The following components of LINK-COMMAND are treated specially: + + -all-static do not do any dynamic linking at all + -static do not do any dynamic linking at all + -avoid-version do not add a version suffix if possible + -bindir BINDIR specify path to binaries directory (for systems where + libraries must be found in the PATH setting at runtime) + -dlopen FILE '-dlpreopen' FILE if it cannot be dlopened at runtime + -dlpreopen FILE link in FILE and add its symbols to lt_preloaded_symbols + -export-dynamic allow symbols from OUTPUT-FILE to be resolved with dlsym(3) + -export-symbols SYMFILE + try to export only the symbols listed in SYMFILE + -export-symbols-regex REGEX + try to export only the symbols matching REGEX + -LLIBDIR search LIBDIR for required installed libraries + -lNAME OUTPUT-FILE requires the installed library libNAME + -module build a library that can dlopened + -no-fast-install disable the fast-install mode + -no-install link a not-installable executable + -no-undefined declare that a library does not refer to external symbols + -o OUTPUT-FILE create OUTPUT-FILE from the specified objects + -objectlist FILE use a list of object files found in FILE to specify objects + -os2dllname NAME force a short DLL name on OS/2 (no effect on other OSes) + -precious-files-regex REGEX + don't remove output files matching REGEX + -release RELEASE specify package release information + -rpath LIBDIR the created library will eventually be installed in LIBDIR + -R[ ]LIBDIR add LIBDIR to the runtime path of programs and libraries + -shared only do dynamic linking of libtool libraries + -shrext SUFFIX override the standard shared library file extension + -static-uninstalled-libs + do not do any dynamic linking of uninstalled libtool libraries + -static-libtool-libs + do not do any dynamic linking of libtool libraries + -version-info CURRENT[:REVISION[:AGE]] + specify library version info [each variable defaults to 0] + -weak LIBNAME declare that the target provides the LIBNAME interface + -Wc,FLAG + -Xcompiler FLAG pass linker-specific FLAG directly to the compiler + -Wa,FLAG + -Xassembler FLAG pass linker-specific FLAG directly to the assembler + -Wl,FLAG + -Xlinker FLAG pass linker-specific FLAG directly to the linker + -XCClinker FLAG pass link-specific FLAG to the compiler driver (CC) + +All other options (arguments beginning with '-') are ignored. + +Every other argument is treated as a filename. Files ending in '.la' are +treated as uninstalled libtool libraries, other files are standard or library +object files. + +If the OUTPUT-FILE ends in '.la', then a libtool library is created, +only library objects ('.lo' files) may be specified, and '-rpath' is +required, except when creating a convenience library. + +If OUTPUT-FILE ends in '.a' or '.lib', then a standard library is created +using 'ar' and 'ranlib', or on Windows using 'lib'. + +If OUTPUT-FILE ends in '.lo' or '.$objext', then a reloadable object file +is created, otherwise an executable program is created." + ;; + + uninstall) + $ECHO \ +"Usage: $progname [OPTION]... --mode=uninstall RM [RM-OPTION]... FILE... + +Remove libraries from an installation directory. + +RM is the name of the program to use to delete files associated with each FILE +(typically '/bin/rm'). RM-OPTIONS are options (such as '-f') to be passed +to RM. + +If FILE is a libtool library, all the files associated with it are deleted. +Otherwise, only FILE itself is deleted using RM." + ;; + + *) + func_fatal_help "invalid operation mode '$opt_mode'" + ;; + esac + + echo + $ECHO "Try '$progname --help' for more information about other modes." +} + +# Now that we've collected a possible --mode arg, show help if necessary +if $opt_help; then + if test : = "$opt_help"; then + func_mode_help + else + { + func_help noexit + for opt_mode in compile link execute install finish uninstall clean; do + func_mode_help + done + } | $SED -n '1p; 2,$s/^Usage:/ or: /p' + { + func_help noexit + for opt_mode in compile link execute install finish uninstall clean; do + echo + func_mode_help + done + } | + $SED '1d + /^When reporting/,/^Report/{ + H + d + } + $x + /information about other modes/d + /more detailed .*MODE/d + s/^Usage:.*--mode=\([^ ]*\) .*/Description of \1 mode:/' + fi + exit $? +fi + + +# func_mode_execute arg... +func_mode_execute () +{ + $debug_cmd + + # The first argument is the command name. + cmd=$nonopt + test -z "$cmd" && \ + func_fatal_help "you must specify a COMMAND" + + # Handle -dlopen flags immediately. + for file in $opt_dlopen; do + test -f "$file" \ + || func_fatal_help "'$file' is not a file" + + dir= + case $file in + *.la) + func_resolve_sysroot "$file" + file=$func_resolve_sysroot_result + + # Check to see that this really is a libtool archive. + func_lalib_unsafe_p "$file" \ + || func_fatal_help "'$lib' is not a valid libtool archive" + + # Read the libtool library. + dlname= + library_names= + func_source "$file" + + # Skip this library if it cannot be dlopened. + if test -z "$dlname"; then + # Warn if it was a shared library. + test -n "$library_names" && \ + func_warning "'$file' was not linked with '-export-dynamic'" + continue + fi + + func_dirname "$file" "" "." + dir=$func_dirname_result + + if test -f "$dir/$objdir/$dlname"; then + func_append dir "/$objdir" + else + if test ! -f "$dir/$dlname"; then + func_fatal_error "cannot find '$dlname' in '$dir' or '$dir/$objdir'" + fi + fi + ;; + + *.lo) + # Just add the directory containing the .lo file. + func_dirname "$file" "" "." + dir=$func_dirname_result + ;; + + *) + func_warning "'-dlopen' is ignored for non-libtool libraries and objects" + continue + ;; + esac + + # Get the absolute pathname. + absdir=`cd "$dir" && pwd` + test -n "$absdir" && dir=$absdir + + # Now add the directory to shlibpath_var. + if eval "test -z \"\$$shlibpath_var\""; then + eval "$shlibpath_var=\"\$dir\"" + else + eval "$shlibpath_var=\"\$dir:\$$shlibpath_var\"" + fi + done + + # This variable tells wrapper scripts just to set shlibpath_var + # rather than running their programs. + libtool_execute_magic=$magic + + # Check if any of the arguments is a wrapper script. + args= + for file + do + case $file in + -* | *.la | *.lo ) ;; + *) + # Do a test to see if this is really a libtool program. + if func_ltwrapper_script_p "$file"; then + func_source "$file" + # Transform arg to wrapped name. + file=$progdir/$program + elif func_ltwrapper_executable_p "$file"; then + func_ltwrapper_scriptname "$file" + func_source "$func_ltwrapper_scriptname_result" + # Transform arg to wrapped name. + file=$progdir/$program + fi + ;; + esac + # Quote arguments (to preserve shell metacharacters). + func_append_quoted args "$file" + done + + if $opt_dry_run; then + # Display what would be done. + if test -n "$shlibpath_var"; then + eval "\$ECHO \"\$shlibpath_var=\$$shlibpath_var\"" + echo "export $shlibpath_var" + fi + $ECHO "$cmd$args" + exit $EXIT_SUCCESS + else + if test -n "$shlibpath_var"; then + # Export the shlibpath_var. + eval "export $shlibpath_var" + fi + + # Restore saved environment variables + for lt_var in LANG LANGUAGE LC_ALL LC_CTYPE LC_COLLATE LC_MESSAGES + do + eval "if test \"\${save_$lt_var+set}\" = set; then + $lt_var=\$save_$lt_var; export $lt_var + else + $lt_unset $lt_var + fi" + done + + # Now prepare to actually exec the command. + exec_cmd=\$cmd$args + fi +} + +test execute = "$opt_mode" && func_mode_execute ${1+"$@"} + + +# func_mode_finish arg... +func_mode_finish () +{ + $debug_cmd + + libs= + libdirs= + admincmds= + + for opt in "$nonopt" ${1+"$@"} + do + if test -d "$opt"; then + func_append libdirs " $opt" + + elif test -f "$opt"; then + if func_lalib_unsafe_p "$opt"; then + func_append libs " $opt" + else + func_warning "'$opt' is not a valid libtool archive" + fi + + else + func_fatal_error "invalid argument '$opt'" + fi + done + + if test -n "$libs"; then + if test -n "$lt_sysroot"; then + sysroot_regex=`$ECHO "$lt_sysroot" | $SED "$sed_make_literal_regex"` + sysroot_cmd="s/\([ ']\)$sysroot_regex/\1/g;" + else + sysroot_cmd= + fi + + # Remove sysroot references + if $opt_dry_run; then + for lib in $libs; do + echo "removing references to $lt_sysroot and '=' prefixes from $lib" + done + else + tmpdir=`func_mktempdir` + for lib in $libs; do + $SED -e "$sysroot_cmd s/\([ ']-[LR]\)=/\1/g; s/\([ ']\)=/\1/g" $lib \ + > $tmpdir/tmp-la + mv -f $tmpdir/tmp-la $lib + done + ${RM}r "$tmpdir" + fi + fi + + if test -n "$finish_cmds$finish_eval" && test -n "$libdirs"; then + for libdir in $libdirs; do + if test -n "$finish_cmds"; then + # Do each command in the finish commands. + func_execute_cmds "$finish_cmds" 'admincmds="$admincmds +'"$cmd"'"' + fi + if test -n "$finish_eval"; then + # Do the single finish_eval. + eval cmds=\"$finish_eval\" + $opt_dry_run || eval "$cmds" || func_append admincmds " + $cmds" + fi + done + fi + + # Exit here if they wanted silent mode. + $opt_quiet && exit $EXIT_SUCCESS + + if test -n "$finish_cmds$finish_eval" && test -n "$libdirs"; then + echo "----------------------------------------------------------------------" + echo "Libraries have been installed in:" + for libdir in $libdirs; do + $ECHO " $libdir" + done + echo + echo "If you ever happen to want to link against installed libraries" + echo "in a given directory, LIBDIR, you must either use libtool, and" + echo "specify the full pathname of the library, or use the '-LLIBDIR'" + echo "flag during linking and do at least one of the following:" + if test -n "$shlibpath_var"; then + echo " - add LIBDIR to the '$shlibpath_var' environment variable" + echo " during execution" + fi + if test -n "$runpath_var"; then + echo " - add LIBDIR to the '$runpath_var' environment variable" + echo " during linking" + fi + if test -n "$hardcode_libdir_flag_spec"; then + libdir=LIBDIR + eval flag=\"$hardcode_libdir_flag_spec\" + + $ECHO " - use the '$flag' linker flag" + fi + if test -n "$admincmds"; then + $ECHO " - have your system administrator run these commands:$admincmds" + fi + if test -f /etc/ld.so.conf; then + echo " - have your system administrator add LIBDIR to '/etc/ld.so.conf'" + fi + echo + + echo "See any operating system documentation about shared libraries for" + case $host in + solaris2.[6789]|solaris2.1[0-9]) + echo "more information, such as the ld(1), crle(1) and ld.so(8) manual" + echo "pages." + ;; + *) + echo "more information, such as the ld(1) and ld.so(8) manual pages." + ;; + esac + echo "----------------------------------------------------------------------" + fi + exit $EXIT_SUCCESS +} + +test finish = "$opt_mode" && func_mode_finish ${1+"$@"} + + +# func_mode_install arg... +func_mode_install () +{ + $debug_cmd + + # There may be an optional sh(1) argument at the beginning of + # install_prog (especially on Windows NT). + if test "$SHELL" = "$nonopt" || test /bin/sh = "$nonopt" || + # Allow the use of GNU shtool's install command. + case $nonopt in *shtool*) :;; *) false;; esac + then + # Aesthetically quote it. + func_quote_arg pretty "$nonopt" + install_prog="$func_quote_arg_result " + arg=$1 + shift + else + install_prog= + arg=$nonopt + fi + + # The real first argument should be the name of the installation program. + # Aesthetically quote it. + func_quote_arg pretty "$arg" + func_append install_prog "$func_quote_arg_result" + install_shared_prog=$install_prog + case " $install_prog " in + *[\\\ /]cp\ *) install_cp=: ;; + *) install_cp=false ;; + esac + + # We need to accept at least all the BSD install flags. + dest= + files= + opts= + prev= + install_type= + isdir=false + stripme= + no_mode=: + for arg + do + arg2= + if test -n "$dest"; then + func_append files " $dest" + dest=$arg + continue + fi + + case $arg in + -d) isdir=: ;; + -f) + if $install_cp; then :; else + prev=$arg + fi + ;; + -g | -m | -o) + prev=$arg + ;; + -s) + stripme=" -s" + continue + ;; + -*) + ;; + *) + # If the previous option needed an argument, then skip it. + if test -n "$prev"; then + if test X-m = "X$prev" && test -n "$install_override_mode"; then + arg2=$install_override_mode + no_mode=false + fi + prev= + else + dest=$arg + continue + fi + ;; + esac + + # Aesthetically quote the argument. + func_quote_arg pretty "$arg" + func_append install_prog " $func_quote_arg_result" + if test -n "$arg2"; then + func_quote_arg pretty "$arg2" + fi + func_append install_shared_prog " $func_quote_arg_result" + done + + test -z "$install_prog" && \ + func_fatal_help "you must specify an install program" + + test -n "$prev" && \ + func_fatal_help "the '$prev' option requires an argument" + + if test -n "$install_override_mode" && $no_mode; then + if $install_cp; then :; else + func_quote_arg pretty "$install_override_mode" + func_append install_shared_prog " -m $func_quote_arg_result" + fi + fi + + if test -z "$files"; then + if test -z "$dest"; then + func_fatal_help "no file or destination specified" + else + func_fatal_help "you must specify a destination" + fi + fi + + # Strip any trailing slash from the destination. + func_stripname '' '/' "$dest" + dest=$func_stripname_result + + # Check to see that the destination is a directory. + test -d "$dest" && isdir=: + if $isdir; then + destdir=$dest + destname= + else + func_dirname_and_basename "$dest" "" "." + destdir=$func_dirname_result + destname=$func_basename_result + + # Not a directory, so check to see that there is only one file specified. + set dummy $files; shift + test "$#" -gt 1 && \ + func_fatal_help "'$dest' is not a directory" + fi + case $destdir in + [\\/]* | [A-Za-z]:[\\/]*) ;; + *) + for file in $files; do + case $file in + *.lo) ;; + *) + func_fatal_help "'$destdir' must be an absolute directory name" + ;; + esac + done + ;; + esac + + # This variable tells wrapper scripts just to set variables rather + # than running their programs. + libtool_install_magic=$magic + + staticlibs= + future_libdirs= + current_libdirs= + for file in $files; do + + # Do each installation. + case $file in + *.$libext) + # Do the static libraries later. + func_append staticlibs " $file" + ;; + + *.la) + func_resolve_sysroot "$file" + file=$func_resolve_sysroot_result + + # Check to see that this really is a libtool archive. + func_lalib_unsafe_p "$file" \ + || func_fatal_help "'$file' is not a valid libtool archive" + + library_names= + old_library= + relink_command= + func_source "$file" + + # Add the libdir to current_libdirs if it is the destination. + if test "X$destdir" = "X$libdir"; then + case "$current_libdirs " in + *" $libdir "*) ;; + *) func_append current_libdirs " $libdir" ;; + esac + else + # Note the libdir as a future libdir. + case "$future_libdirs " in + *" $libdir "*) ;; + *) func_append future_libdirs " $libdir" ;; + esac + fi + + func_dirname "$file" "/" "" + dir=$func_dirname_result + func_append dir "$objdir" + + if test -n "$relink_command"; then + # Determine the prefix the user has applied to our future dir. + inst_prefix_dir=`$ECHO "$destdir" | $SED -e "s%$libdir\$%%"` + + # Don't allow the user to place us outside of our expected + # location b/c this prevents finding dependent libraries that + # are installed to the same prefix. + # At present, this check doesn't affect windows .dll's that + # are installed into $libdir/../bin (currently, that works fine) + # but it's something to keep an eye on. + test "$inst_prefix_dir" = "$destdir" && \ + func_fatal_error "error: cannot install '$file' to a directory not ending in $libdir" + + if test -n "$inst_prefix_dir"; then + # Stick the inst_prefix_dir data into the link command. + relink_command=`$ECHO "$relink_command" | $SED "s%@inst_prefix_dir@%-inst-prefix-dir $inst_prefix_dir%"` + else + relink_command=`$ECHO "$relink_command" | $SED "s%@inst_prefix_dir@%%"` + fi + + func_warning "relinking '$file'" + func_show_eval "$relink_command" \ + 'func_fatal_error "error: relink '\''$file'\'' with the above command before installing it"' + fi + + # See the names of the shared library. + set dummy $library_names; shift + if test -n "$1"; then + realname=$1 + shift + + srcname=$realname + test -n "$relink_command" && srcname=${realname}T + + # Install the shared library and build the symlinks. + func_show_eval "$install_shared_prog $dir/$srcname $destdir/$realname" \ + 'exit $?' + tstripme=$stripme + case $host_os in + cygwin* | mingw* | pw32* | cegcc*) + case $realname in + *.dll.a) + tstripme= + ;; + esac + ;; + os2*) + case $realname in + *_dll.a) + tstripme= + ;; + esac + ;; + esac + if test -n "$tstripme" && test -n "$striplib"; then + func_show_eval "$striplib $destdir/$realname" 'exit $?' + fi + + if test "$#" -gt 0; then + # Delete the old symlinks, and create new ones. + # Try 'ln -sf' first, because the 'ln' binary might depend on + # the symlink we replace! Solaris /bin/ln does not understand -f, + # so we also need to try rm && ln -s. + for linkname + do + test "$linkname" != "$realname" \ + && func_show_eval "(cd $destdir && { $LN_S -f $realname $linkname || { $RM $linkname && $LN_S $realname $linkname; }; })" + done + fi + + # Do each command in the postinstall commands. + lib=$destdir/$realname + func_execute_cmds "$postinstall_cmds" 'exit $?' + fi + + # Install the pseudo-library for information purposes. + func_basename "$file" + name=$func_basename_result + instname=$dir/${name}i + func_show_eval "$install_prog $instname $destdir/$name" 'exit $?' + + # Maybe install the static library, too. + test -n "$old_library" && func_append staticlibs " $dir/$old_library" + ;; + + *.lo) + # Install (i.e. copy) a libtool object. + + # Figure out destination file name, if it wasn't already specified. + if test -n "$destname"; then + destfile=$destdir/$destname + else + func_basename "$file" + destfile=$func_basename_result + destfile=$destdir/$destfile + fi + + # Deduce the name of the destination old-style object file. + case $destfile in + *.lo) + func_lo2o "$destfile" + staticdest=$func_lo2o_result + ;; + *.$objext) + staticdest=$destfile + destfile= + ;; + *) + func_fatal_help "cannot copy a libtool object to '$destfile'" + ;; + esac + + # Install the libtool object if requested. + test -n "$destfile" && \ + func_show_eval "$install_prog $file $destfile" 'exit $?' + + # Install the old object if enabled. + if test yes = "$build_old_libs"; then + # Deduce the name of the old-style object file. + func_lo2o "$file" + staticobj=$func_lo2o_result + func_show_eval "$install_prog \$staticobj \$staticdest" 'exit $?' + fi + exit $EXIT_SUCCESS + ;; + + *) + # Figure out destination file name, if it wasn't already specified. + if test -n "$destname"; then + destfile=$destdir/$destname + else + func_basename "$file" + destfile=$func_basename_result + destfile=$destdir/$destfile + fi + + # If the file is missing, and there is a .exe on the end, strip it + # because it is most likely a libtool script we actually want to + # install + stripped_ext= + case $file in + *.exe) + if test ! -f "$file"; then + func_stripname '' '.exe' "$file" + file=$func_stripname_result + stripped_ext=.exe + fi + ;; + esac + + # Do a test to see if this is really a libtool program. + case $host in + *cygwin* | *mingw*) + if func_ltwrapper_executable_p "$file"; then + func_ltwrapper_scriptname "$file" + wrapper=$func_ltwrapper_scriptname_result + else + func_stripname '' '.exe' "$file" + wrapper=$func_stripname_result + fi + ;; + *) + wrapper=$file + ;; + esac + if func_ltwrapper_script_p "$wrapper"; then + notinst_deplibs= + relink_command= + + func_source "$wrapper" + + # Check the variables that should have been set. + test -z "$generated_by_libtool_version" && \ + func_fatal_error "invalid libtool wrapper script '$wrapper'" + + finalize=: + for lib in $notinst_deplibs; do + # Check to see that each library is installed. + libdir= + if test -f "$lib"; then + func_source "$lib" + fi + libfile=$libdir/`$ECHO "$lib" | $SED 's%^.*/%%g'` + if test -n "$libdir" && test ! -f "$libfile"; then + func_warning "'$lib' has not been installed in '$libdir'" + finalize=false + fi + done + + relink_command= + func_source "$wrapper" + + outputname= + if test no = "$fast_install" && test -n "$relink_command"; then + $opt_dry_run || { + if $finalize; then + tmpdir=`func_mktempdir` + func_basename "$file$stripped_ext" + file=$func_basename_result + outputname=$tmpdir/$file + # Replace the output file specification. + relink_command=`$ECHO "$relink_command" | $SED 's%@OUTPUT@%'"$outputname"'%g'` + + $opt_quiet || { + func_quote_arg expand,pretty "$relink_command" + eval "func_echo $func_quote_arg_result" + } + if eval "$relink_command"; then : + else + func_error "error: relink '$file' with the above command before installing it" + $opt_dry_run || ${RM}r "$tmpdir" + continue + fi + file=$outputname + else + func_warning "cannot relink '$file'" + fi + } + else + # Install the binary that we compiled earlier. + file=`$ECHO "$file$stripped_ext" | $SED "s%\([^/]*\)$%$objdir/\1%"` + fi + fi + + # remove .exe since cygwin /usr/bin/install will append another + # one anyway + case $install_prog,$host in + */usr/bin/install*,*cygwin*) + case $file:$destfile in + *.exe:*.exe) + # this is ok + ;; + *.exe:*) + destfile=$destfile.exe + ;; + *:*.exe) + func_stripname '' '.exe' "$destfile" + destfile=$func_stripname_result + ;; + esac + ;; + esac + func_show_eval "$install_prog\$stripme \$file \$destfile" 'exit $?' + $opt_dry_run || if test -n "$outputname"; then + ${RM}r "$tmpdir" + fi + ;; + esac + done + + for file in $staticlibs; do + func_basename "$file" + name=$func_basename_result + + # Set up the ranlib parameters. + oldlib=$destdir/$name + func_to_tool_file "$oldlib" func_convert_file_msys_to_w32 + tool_oldlib=$func_to_tool_file_result + + func_show_eval "$install_prog \$file \$oldlib" 'exit $?' + + if test -n "$stripme" && test -n "$old_striplib"; then + func_show_eval "$old_striplib $tool_oldlib" 'exit $?' + fi + + # Do each command in the postinstall commands. + func_execute_cmds "$old_postinstall_cmds" 'exit $?' + done + + test -n "$future_libdirs" && \ + func_warning "remember to run '$progname --finish$future_libdirs'" + + if test -n "$current_libdirs"; then + # Maybe just do a dry run. + $opt_dry_run && current_libdirs=" -n$current_libdirs" + exec_cmd='$SHELL "$progpath" $preserve_args --finish$current_libdirs' + else + exit $EXIT_SUCCESS + fi +} + +test install = "$opt_mode" && func_mode_install ${1+"$@"} + + +# func_generate_dlsyms outputname originator pic_p +# Extract symbols from dlprefiles and create ${outputname}S.o with +# a dlpreopen symbol table. +func_generate_dlsyms () +{ + $debug_cmd + + my_outputname=$1 + my_originator=$2 + my_pic_p=${3-false} + my_prefix=`$ECHO "$my_originator" | $SED 's%[^a-zA-Z0-9]%_%g'` + my_dlsyms= + + if test -n "$dlfiles$dlprefiles" || test no != "$dlself"; then + if test -n "$NM" && test -n "$global_symbol_pipe"; then + my_dlsyms=${my_outputname}S.c + else + func_error "not configured to extract global symbols from dlpreopened files" + fi + fi + + if test -n "$my_dlsyms"; then + case $my_dlsyms in + "") ;; + *.c) + # Discover the nlist of each of the dlfiles. + nlist=$output_objdir/$my_outputname.nm + + func_show_eval "$RM $nlist ${nlist}S ${nlist}T" + + # Parse the name list into a source file. + func_verbose "creating $output_objdir/$my_dlsyms" + + $opt_dry_run || $ECHO > "$output_objdir/$my_dlsyms" "\ +/* $my_dlsyms - symbol resolution table for '$my_outputname' dlsym emulation. */ +/* Generated by $PROGRAM (GNU $PACKAGE) $VERSION */ + +#ifdef __cplusplus +extern \"C\" { +#endif + +#if defined __GNUC__ && (((__GNUC__ == 4) && (__GNUC_MINOR__ >= 4)) || (__GNUC__ > 4)) +#pragma GCC diagnostic ignored \"-Wstrict-prototypes\" +#endif + +/* Keep this code in sync between libtool.m4, ltmain, lt_system.h, and tests. */ +#if defined _WIN32 || defined __CYGWIN__ || defined _WIN32_WCE +/* DATA imports from DLLs on WIN32 can't be const, because runtime + relocations are performed -- see ld's documentation on pseudo-relocs. */ +# define LT_DLSYM_CONST +#elif defined __osf__ +/* This system does not cope well with relocations in const data. */ +# define LT_DLSYM_CONST +#else +# define LT_DLSYM_CONST const +#endif + +#define STREQ(s1, s2) (strcmp ((s1), (s2)) == 0) + +/* External symbol declarations for the compiler. */\ +" + + if test yes = "$dlself"; then + func_verbose "generating symbol list for '$output'" + + $opt_dry_run || echo ': @PROGRAM@ ' > "$nlist" + + # Add our own program objects to the symbol list. + progfiles=`$ECHO "$objs$old_deplibs" | $SP2NL | $SED "$lo2o" | $NL2SP` + for progfile in $progfiles; do + func_to_tool_file "$progfile" func_convert_file_msys_to_w32 + func_verbose "extracting global C symbols from '$func_to_tool_file_result'" + $opt_dry_run || eval "$NM $func_to_tool_file_result | $global_symbol_pipe >> '$nlist'" + done + + if test -n "$exclude_expsyms"; then + $opt_dry_run || { + eval '$EGREP -v " ($exclude_expsyms)$" "$nlist" > "$nlist"T' + eval '$MV "$nlist"T "$nlist"' + } + fi + + if test -n "$export_symbols_regex"; then + $opt_dry_run || { + eval '$EGREP -e "$export_symbols_regex" "$nlist" > "$nlist"T' + eval '$MV "$nlist"T "$nlist"' + } + fi + + # Prepare the list of exported symbols + if test -z "$export_symbols"; then + export_symbols=$output_objdir/$outputname.exp + $opt_dry_run || { + $RM $export_symbols + eval "$SED -n -e '/^: @PROGRAM@ $/d' -e 's/^.* \(.*\)$/\1/p' "'< "$nlist" > "$export_symbols"' + case $host in + *cygwin* | *mingw* | *cegcc* ) + eval "echo EXPORTS "'> "$output_objdir/$outputname.def"' + eval 'cat "$export_symbols" >> "$output_objdir/$outputname.def"' + ;; + esac + } + else + $opt_dry_run || { + eval "$SED -e 's/\([].[*^$]\)/\\\\\1/g' -e 's/^/ /' -e 's/$/$/'"' < "$export_symbols" > "$output_objdir/$outputname.exp"' + eval '$GREP -f "$output_objdir/$outputname.exp" < "$nlist" > "$nlist"T' + eval '$MV "$nlist"T "$nlist"' + case $host in + *cygwin* | *mingw* | *cegcc* ) + eval "echo EXPORTS "'> "$output_objdir/$outputname.def"' + eval 'cat "$nlist" >> "$output_objdir/$outputname.def"' + ;; + esac + } + fi + fi + + for dlprefile in $dlprefiles; do + func_verbose "extracting global C symbols from '$dlprefile'" + func_basename "$dlprefile" + name=$func_basename_result + case $host in + *cygwin* | *mingw* | *cegcc* ) + # if an import library, we need to obtain dlname + if func_win32_import_lib_p "$dlprefile"; then + func_tr_sh "$dlprefile" + eval "curr_lafile=\$libfile_$func_tr_sh_result" + dlprefile_dlbasename= + if test -n "$curr_lafile" && func_lalib_p "$curr_lafile"; then + # Use subshell, to avoid clobbering current variable values + dlprefile_dlname=`source "$curr_lafile" && echo "$dlname"` + if test -n "$dlprefile_dlname"; then + func_basename "$dlprefile_dlname" + dlprefile_dlbasename=$func_basename_result + else + # no lafile. user explicitly requested -dlpreopen . + $sharedlib_from_linklib_cmd "$dlprefile" + dlprefile_dlbasename=$sharedlib_from_linklib_result + fi + fi + $opt_dry_run || { + if test -n "$dlprefile_dlbasename"; then + eval '$ECHO ": $dlprefile_dlbasename" >> "$nlist"' + else + func_warning "Could not compute DLL name from $name" + eval '$ECHO ": $name " >> "$nlist"' + fi + func_to_tool_file "$dlprefile" func_convert_file_msys_to_w32 + eval "$NM \"$func_to_tool_file_result\" 2>/dev/null | $global_symbol_pipe | + $SED -e '/I __imp/d' -e 's/I __nm_/D /;s/_nm__//' >> '$nlist'" + } + else # not an import lib + $opt_dry_run || { + eval '$ECHO ": $name " >> "$nlist"' + func_to_tool_file "$dlprefile" func_convert_file_msys_to_w32 + eval "$NM \"$func_to_tool_file_result\" 2>/dev/null | $global_symbol_pipe >> '$nlist'" + } + fi + ;; + *) + $opt_dry_run || { + eval '$ECHO ": $name " >> "$nlist"' + func_to_tool_file "$dlprefile" func_convert_file_msys_to_w32 + eval "$NM \"$func_to_tool_file_result\" 2>/dev/null | $global_symbol_pipe >> '$nlist'" + } + ;; + esac + done + + $opt_dry_run || { + # Make sure we have at least an empty file. + test -f "$nlist" || : > "$nlist" + + if test -n "$exclude_expsyms"; then + $EGREP -v " ($exclude_expsyms)$" "$nlist" > "$nlist"T + $MV "$nlist"T "$nlist" + fi + + # Try sorting and uniquifying the output. + if $GREP -v "^: " < "$nlist" | + if sort -k 3 /dev/null 2>&1; then + sort -k 3 + else + sort +2 + fi | + uniq > "$nlist"S; then + : + else + $GREP -v "^: " < "$nlist" > "$nlist"S + fi + + if test -f "$nlist"S; then + eval "$global_symbol_to_cdecl"' < "$nlist"S >> "$output_objdir/$my_dlsyms"' + else + echo '/* NONE */' >> "$output_objdir/$my_dlsyms" + fi + + func_show_eval '$RM "${nlist}I"' + if test -n "$global_symbol_to_import"; then + eval "$global_symbol_to_import"' < "$nlist"S > "$nlist"I' + fi + + echo >> "$output_objdir/$my_dlsyms" "\ + +/* The mapping between symbol names and symbols. */ +typedef struct { + const char *name; + void *address; +} lt_dlsymlist; +extern LT_DLSYM_CONST lt_dlsymlist +lt_${my_prefix}_LTX_preloaded_symbols[];\ +" + + if test -s "$nlist"I; then + echo >> "$output_objdir/$my_dlsyms" "\ +static void lt_syminit(void) +{ + LT_DLSYM_CONST lt_dlsymlist *symbol = lt_${my_prefix}_LTX_preloaded_symbols; + for (; symbol->name; ++symbol) + {" + $SED 's/.*/ if (STREQ (symbol->name, \"&\")) symbol->address = (void *) \&&;/' < "$nlist"I >> "$output_objdir/$my_dlsyms" + echo >> "$output_objdir/$my_dlsyms" "\ + } +}" + fi + echo >> "$output_objdir/$my_dlsyms" "\ +LT_DLSYM_CONST lt_dlsymlist +lt_${my_prefix}_LTX_preloaded_symbols[] = +{ {\"$my_originator\", (void *) 0}," + + if test -s "$nlist"I; then + echo >> "$output_objdir/$my_dlsyms" "\ + {\"@INIT@\", (void *) <_syminit}," + fi + + case $need_lib_prefix in + no) + eval "$global_symbol_to_c_name_address" < "$nlist" >> "$output_objdir/$my_dlsyms" + ;; + *) + eval "$global_symbol_to_c_name_address_lib_prefix" < "$nlist" >> "$output_objdir/$my_dlsyms" + ;; + esac + echo >> "$output_objdir/$my_dlsyms" "\ + {0, (void *) 0} +}; + +/* This works around a problem in FreeBSD linker */ +#ifdef FREEBSD_WORKAROUND +static const void *lt_preloaded_setup() { + return lt_${my_prefix}_LTX_preloaded_symbols; +} +#endif + +#ifdef __cplusplus +} +#endif\ +" + } # !$opt_dry_run + + pic_flag_for_symtable= + case "$compile_command " in + *" -static "*) ;; + *) + case $host in + # compiling the symbol table file with pic_flag works around + # a FreeBSD bug that causes programs to crash when -lm is + # linked before any other PIC object. But we must not use + # pic_flag when linking with -static. The problem exists in + # FreeBSD 2.2.6 and is fixed in FreeBSD 3.1. + *-*-freebsd2.*|*-*-freebsd3.0*|*-*-freebsdelf3.0*) + pic_flag_for_symtable=" $pic_flag -DFREEBSD_WORKAROUND" ;; + *-*-hpux*) + pic_flag_for_symtable=" $pic_flag" ;; + *) + $my_pic_p && pic_flag_for_symtable=" $pic_flag" + ;; + esac + ;; + esac + symtab_cflags= + for arg in $LTCFLAGS; do + case $arg in + -pie | -fpie | -fPIE) ;; + *) func_append symtab_cflags " $arg" ;; + esac + done + + # Now compile the dynamic symbol file. + func_show_eval '(cd $output_objdir && $LTCC$symtab_cflags -c$no_builtin_flag$pic_flag_for_symtable "$my_dlsyms")' 'exit $?' + + # Clean up the generated files. + func_show_eval '$RM "$output_objdir/$my_dlsyms" "$nlist" "${nlist}S" "${nlist}T" "${nlist}I"' + + # Transform the symbol file into the correct name. + symfileobj=$output_objdir/${my_outputname}S.$objext + case $host in + *cygwin* | *mingw* | *cegcc* ) + if test -f "$output_objdir/$my_outputname.def"; then + compile_command=`$ECHO "$compile_command" | $SED "s%@SYMFILE@%$output_objdir/$my_outputname.def $symfileobj%"` + finalize_command=`$ECHO "$finalize_command" | $SED "s%@SYMFILE@%$output_objdir/$my_outputname.def $symfileobj%"` + else + compile_command=`$ECHO "$compile_command" | $SED "s%@SYMFILE@%$symfileobj%"` + finalize_command=`$ECHO "$finalize_command" | $SED "s%@SYMFILE@%$symfileobj%"` + fi + ;; + *) + compile_command=`$ECHO "$compile_command" | $SED "s%@SYMFILE@%$symfileobj%"` + finalize_command=`$ECHO "$finalize_command" | $SED "s%@SYMFILE@%$symfileobj%"` + ;; + esac + ;; + *) + func_fatal_error "unknown suffix for '$my_dlsyms'" + ;; + esac + else + # We keep going just in case the user didn't refer to + # lt_preloaded_symbols. The linker will fail if global_symbol_pipe + # really was required. + + # Nullify the symbol file. + compile_command=`$ECHO "$compile_command" | $SED "s% @SYMFILE@%%"` + finalize_command=`$ECHO "$finalize_command" | $SED "s% @SYMFILE@%%"` + fi +} + +# func_cygming_gnu_implib_p ARG +# This predicate returns with zero status (TRUE) if +# ARG is a GNU/binutils-style import library. Returns +# with nonzero status (FALSE) otherwise. +func_cygming_gnu_implib_p () +{ + $debug_cmd + + func_to_tool_file "$1" func_convert_file_msys_to_w32 + func_cygming_gnu_implib_tmp=`$NM "$func_to_tool_file_result" | eval "$global_symbol_pipe" | $EGREP ' (_head_[A-Za-z0-9_]+_[ad]l*|[A-Za-z0-9_]+_[ad]l*_iname)$'` + test -n "$func_cygming_gnu_implib_tmp" +} + +# func_cygming_ms_implib_p ARG +# This predicate returns with zero status (TRUE) if +# ARG is an MS-style import library. Returns +# with nonzero status (FALSE) otherwise. +func_cygming_ms_implib_p () +{ + $debug_cmd + + func_to_tool_file "$1" func_convert_file_msys_to_w32 + func_cygming_ms_implib_tmp=`$NM "$func_to_tool_file_result" | eval "$global_symbol_pipe" | $GREP '_NULL_IMPORT_DESCRIPTOR'` + test -n "$func_cygming_ms_implib_tmp" +} + +# func_win32_libid arg +# return the library type of file 'arg' +# +# Need a lot of goo to handle *both* DLLs and import libs +# Has to be a shell function in order to 'eat' the argument +# that is supplied when $file_magic_command is called. +# Despite the name, also deal with 64 bit binaries. +func_win32_libid () +{ + $debug_cmd + + win32_libid_type=unknown + win32_fileres=`file -L $1 2>/dev/null` + case $win32_fileres in + *ar\ archive\ import\ library*) # definitely import + win32_libid_type="x86 archive import" + ;; + *ar\ archive*) # could be an import, or static + # Keep the egrep pattern in sync with the one in _LT_CHECK_MAGIC_METHOD. + if eval $OBJDUMP -f $1 | $SED -e '10q' 2>/dev/null | + $EGREP 'file format (pei*-i386(.*architecture: i386)?|pe-arm-wince|pe-x86-64)' >/dev/null; then + case $nm_interface in + "MS dumpbin") + if func_cygming_ms_implib_p "$1" || + func_cygming_gnu_implib_p "$1" + then + win32_nmres=import + else + win32_nmres= + fi + ;; + *) + func_to_tool_file "$1" func_convert_file_msys_to_w32 + win32_nmres=`eval $NM -f posix -A \"$func_to_tool_file_result\" | + $SED -n -e ' + 1,100{ + / I /{ + s|.*|import| + p + q + } + }'` + ;; + esac + case $win32_nmres in + import*) win32_libid_type="x86 archive import";; + *) win32_libid_type="x86 archive static";; + esac + fi + ;; + *DLL*) + win32_libid_type="x86 DLL" + ;; + *executable*) # but shell scripts are "executable" too... + case $win32_fileres in + *MS\ Windows\ PE\ Intel*) + win32_libid_type="x86 DLL" + ;; + esac + ;; + esac + $ECHO "$win32_libid_type" +} + +# func_cygming_dll_for_implib ARG +# +# Platform-specific function to extract the +# name of the DLL associated with the specified +# import library ARG. +# Invoked by eval'ing the libtool variable +# $sharedlib_from_linklib_cmd +# Result is available in the variable +# $sharedlib_from_linklib_result +func_cygming_dll_for_implib () +{ + $debug_cmd + + sharedlib_from_linklib_result=`$DLLTOOL --identify-strict --identify "$1"` +} + +# func_cygming_dll_for_implib_fallback_core SECTION_NAME LIBNAMEs +# +# The is the core of a fallback implementation of a +# platform-specific function to extract the name of the +# DLL associated with the specified import library LIBNAME. +# +# SECTION_NAME is either .idata$6 or .idata$7, depending +# on the platform and compiler that created the implib. +# +# Echos the name of the DLL associated with the +# specified import library. +func_cygming_dll_for_implib_fallback_core () +{ + $debug_cmd + + match_literal=`$ECHO "$1" | $SED "$sed_make_literal_regex"` + $OBJDUMP -s --section "$1" "$2" 2>/dev/null | + $SED '/^Contents of section '"$match_literal"':/{ + # Place marker at beginning of archive member dllname section + s/.*/====MARK====/ + p + d + } + # These lines can sometimes be longer than 43 characters, but + # are always uninteresting + /:[ ]*file format pe[i]\{,1\}-/d + /^In archive [^:]*:/d + # Ensure marker is printed + /^====MARK====/p + # Remove all lines with less than 43 characters + /^.\{43\}/!d + # From remaining lines, remove first 43 characters + s/^.\{43\}//' | + $SED -n ' + # Join marker and all lines until next marker into a single line + /^====MARK====/ b para + H + $ b para + b + :para + x + s/\n//g + # Remove the marker + s/^====MARK====// + # Remove trailing dots and whitespace + s/[\. \t]*$// + # Print + /./p' | + # we now have a list, one entry per line, of the stringified + # contents of the appropriate section of all members of the + # archive that possess that section. Heuristic: eliminate + # all those that have a first or second character that is + # a '.' (that is, objdump's representation of an unprintable + # character.) This should work for all archives with less than + # 0x302f exports -- but will fail for DLLs whose name actually + # begins with a literal '.' or a single character followed by + # a '.'. + # + # Of those that remain, print the first one. + $SED -e '/^\./d;/^.\./d;q' +} + +# func_cygming_dll_for_implib_fallback ARG +# Platform-specific function to extract the +# name of the DLL associated with the specified +# import library ARG. +# +# This fallback implementation is for use when $DLLTOOL +# does not support the --identify-strict option. +# Invoked by eval'ing the libtool variable +# $sharedlib_from_linklib_cmd +# Result is available in the variable +# $sharedlib_from_linklib_result +func_cygming_dll_for_implib_fallback () +{ + $debug_cmd + + if func_cygming_gnu_implib_p "$1"; then + # binutils import library + sharedlib_from_linklib_result=`func_cygming_dll_for_implib_fallback_core '.idata$7' "$1"` + elif func_cygming_ms_implib_p "$1"; then + # ms-generated import library + sharedlib_from_linklib_result=`func_cygming_dll_for_implib_fallback_core '.idata$6' "$1"` + else + # unknown + sharedlib_from_linklib_result= + fi +} + + +# func_extract_an_archive dir oldlib +func_extract_an_archive () +{ + $debug_cmd + + f_ex_an_ar_dir=$1; shift + f_ex_an_ar_oldlib=$1 + if test yes = "$lock_old_archive_extraction"; then + lockfile=$f_ex_an_ar_oldlib.lock + until $opt_dry_run || ln "$progpath" "$lockfile" 2>/dev/null; do + func_echo "Waiting for $lockfile to be removed" + sleep 2 + done + fi + func_show_eval "(cd \$f_ex_an_ar_dir && $AR x \"\$f_ex_an_ar_oldlib\")" \ + 'stat=$?; rm -f "$lockfile"; exit $stat' + if test yes = "$lock_old_archive_extraction"; then + $opt_dry_run || rm -f "$lockfile" + fi + if ($AR t "$f_ex_an_ar_oldlib" | sort | sort -uc >/dev/null 2>&1); then + : + else + func_fatal_error "object name conflicts in archive: $f_ex_an_ar_dir/$f_ex_an_ar_oldlib" + fi +} + + +# func_extract_archives gentop oldlib ... +func_extract_archives () +{ + $debug_cmd + + my_gentop=$1; shift + my_oldlibs=${1+"$@"} + my_oldobjs= + my_xlib= + my_xabs= + my_xdir= + + for my_xlib in $my_oldlibs; do + # Extract the objects. + case $my_xlib in + [\\/]* | [A-Za-z]:[\\/]*) my_xabs=$my_xlib ;; + *) my_xabs=`pwd`"/$my_xlib" ;; + esac + func_basename "$my_xlib" + my_xlib=$func_basename_result + my_xlib_u=$my_xlib + while :; do + case " $extracted_archives " in + *" $my_xlib_u "*) + func_arith $extracted_serial + 1 + extracted_serial=$func_arith_result + my_xlib_u=lt$extracted_serial-$my_xlib ;; + *) break ;; + esac + done + extracted_archives="$extracted_archives $my_xlib_u" + my_xdir=$my_gentop/$my_xlib_u + + func_mkdir_p "$my_xdir" + + case $host in + *-darwin*) + func_verbose "Extracting $my_xabs" + # Do not bother doing anything if just a dry run + $opt_dry_run || { + darwin_orig_dir=`pwd` + cd $my_xdir || exit $? + darwin_archive=$my_xabs + darwin_curdir=`pwd` + func_basename "$darwin_archive" + darwin_base_archive=$func_basename_result + darwin_arches=`$LIPO -info "$darwin_archive" 2>/dev/null | $GREP Architectures 2>/dev/null || true` + if test -n "$darwin_arches"; then + darwin_arches=`$ECHO "$darwin_arches" | $SED -e 's/.*are://'` + darwin_arch= + func_verbose "$darwin_base_archive has multiple architectures $darwin_arches" + for darwin_arch in $darwin_arches; do + func_mkdir_p "unfat-$$/$darwin_base_archive-$darwin_arch" + $LIPO -thin $darwin_arch -output "unfat-$$/$darwin_base_archive-$darwin_arch/$darwin_base_archive" "$darwin_archive" + cd "unfat-$$/$darwin_base_archive-$darwin_arch" + func_extract_an_archive "`pwd`" "$darwin_base_archive" + cd "$darwin_curdir" + $RM "unfat-$$/$darwin_base_archive-$darwin_arch/$darwin_base_archive" + done # $darwin_arches + ## Okay now we've a bunch of thin objects, gotta fatten them up :) + darwin_filelist=`find unfat-$$ -type f -name \*.o -print -o -name \*.lo -print | $SED -e "$sed_basename" | sort -u` + darwin_file= + darwin_files= + for darwin_file in $darwin_filelist; do + darwin_files=`find unfat-$$ -name $darwin_file -print | sort | $NL2SP` + $LIPO -create -output "$darwin_file" $darwin_files + done # $darwin_filelist + $RM -rf unfat-$$ + cd "$darwin_orig_dir" + else + cd $darwin_orig_dir + func_extract_an_archive "$my_xdir" "$my_xabs" + fi # $darwin_arches + } # !$opt_dry_run + ;; + *) + func_extract_an_archive "$my_xdir" "$my_xabs" + ;; + esac + my_oldobjs="$my_oldobjs "`find $my_xdir -name \*.$objext -print -o -name \*.lo -print | sort | $NL2SP` + done + + func_extract_archives_result=$my_oldobjs +} + + +# func_emit_wrapper [arg=no] +# +# Emit a libtool wrapper script on stdout. +# Don't directly open a file because we may want to +# incorporate the script contents within a cygwin/mingw +# wrapper executable. Must ONLY be called from within +# func_mode_link because it depends on a number of variables +# set therein. +# +# ARG is the value that the WRAPPER_SCRIPT_BELONGS_IN_OBJDIR +# variable will take. If 'yes', then the emitted script +# will assume that the directory where it is stored is +# the $objdir directory. This is a cygwin/mingw-specific +# behavior. +func_emit_wrapper () +{ + func_emit_wrapper_arg1=${1-no} + + $ECHO "\ +#! $SHELL + +# $output - temporary wrapper script for $objdir/$outputname +# Generated by $PROGRAM (GNU $PACKAGE) $VERSION +# +# The $output program cannot be directly executed until all the libtool +# libraries that it depends on are installed. +# +# This wrapper script should never be moved out of the build directory. +# If it is, it will not operate correctly. + +# Sed substitution that helps us do robust quoting. It backslashifies +# metacharacters that are still active within double-quoted strings. +sed_quote_subst='$sed_quote_subst' + +# Be Bourne compatible +if test -n \"\${ZSH_VERSION+set}\" && (emulate sh) >/dev/null 2>&1; then + emulate sh + NULLCMD=: + # Zsh 3.x and 4.x performs word splitting on \${1+\"\$@\"}, which + # is contrary to our usage. Disable this feature. + alias -g '\${1+\"\$@\"}'='\"\$@\"' + setopt NO_GLOB_SUBST +else + case \`(set -o) 2>/dev/null\` in *posix*) set -o posix;; esac +fi +BIN_SH=xpg4; export BIN_SH # for Tru64 +DUALCASE=1; export DUALCASE # for MKS sh + +# The HP-UX ksh and POSIX shell print the target directory to stdout +# if CDPATH is set. +(unset CDPATH) >/dev/null 2>&1 && unset CDPATH + +relink_command=\"$relink_command\" + +# This environment variable determines our operation mode. +if test \"\$libtool_install_magic\" = \"$magic\"; then + # install mode needs the following variables: + generated_by_libtool_version='$macro_version' + notinst_deplibs='$notinst_deplibs' +else + # When we are sourced in execute mode, \$file and \$ECHO are already set. + if test \"\$libtool_execute_magic\" != \"$magic\"; then + file=\"\$0\"" + + func_quote_arg pretty "$ECHO" + qECHO=$func_quote_arg_result + $ECHO "\ + +# A function that is used when there is no print builtin or printf. +func_fallback_echo () +{ + eval 'cat <<_LTECHO_EOF +\$1 +_LTECHO_EOF' +} + ECHO=$qECHO + fi + +# Very basic option parsing. These options are (a) specific to +# the libtool wrapper, (b) are identical between the wrapper +# /script/ and the wrapper /executable/ that is used only on +# windows platforms, and (c) all begin with the string "--lt-" +# (application programs are unlikely to have options that match +# this pattern). +# +# There are only two supported options: --lt-debug and +# --lt-dump-script. There is, deliberately, no --lt-help. +# +# The first argument to this parsing function should be the +# script's $0 value, followed by "$@". +lt_option_debug= +func_parse_lt_options () +{ + lt_script_arg0=\$0 + shift + for lt_opt + do + case \"\$lt_opt\" in + --lt-debug) lt_option_debug=1 ;; + --lt-dump-script) + lt_dump_D=\`\$ECHO \"X\$lt_script_arg0\" | $SED -e 's/^X//' -e 's%/[^/]*$%%'\` + test \"X\$lt_dump_D\" = \"X\$lt_script_arg0\" && lt_dump_D=. + lt_dump_F=\`\$ECHO \"X\$lt_script_arg0\" | $SED -e 's/^X//' -e 's%^.*/%%'\` + cat \"\$lt_dump_D/\$lt_dump_F\" + exit 0 + ;; + --lt-*) + \$ECHO \"Unrecognized --lt- option: '\$lt_opt'\" 1>&2 + exit 1 + ;; + esac + done + + # Print the debug banner immediately: + if test -n \"\$lt_option_debug\"; then + echo \"$outputname:$output:\$LINENO: libtool wrapper (GNU $PACKAGE) $VERSION\" 1>&2 + fi +} + +# Used when --lt-debug. Prints its arguments to stdout +# (redirection is the responsibility of the caller) +func_lt_dump_args () +{ + lt_dump_args_N=1; + for lt_arg + do + \$ECHO \"$outputname:$output:\$LINENO: newargv[\$lt_dump_args_N]: \$lt_arg\" + lt_dump_args_N=\`expr \$lt_dump_args_N + 1\` + done +} + +# Core function for launching the target application +func_exec_program_core () +{ +" + case $host in + # Backslashes separate directories on plain windows + *-*-mingw | *-*-os2* | *-cegcc*) + $ECHO "\ + if test -n \"\$lt_option_debug\"; then + \$ECHO \"$outputname:$output:\$LINENO: newargv[0]: \$progdir\\\\\$program\" 1>&2 + func_lt_dump_args \${1+\"\$@\"} 1>&2 + fi + exec \"\$progdir\\\\\$program\" \${1+\"\$@\"} +" + ;; + + *) + $ECHO "\ + if test -n \"\$lt_option_debug\"; then + \$ECHO \"$outputname:$output:\$LINENO: newargv[0]: \$progdir/\$program\" 1>&2 + func_lt_dump_args \${1+\"\$@\"} 1>&2 + fi + exec \"\$progdir/\$program\" \${1+\"\$@\"} +" + ;; + esac + $ECHO "\ + \$ECHO \"\$0: cannot exec \$program \$*\" 1>&2 + exit 1 +} + +# A function to encapsulate launching the target application +# Strips options in the --lt-* namespace from \$@ and +# launches target application with the remaining arguments. +func_exec_program () +{ + case \" \$* \" in + *\\ --lt-*) + for lt_wr_arg + do + case \$lt_wr_arg in + --lt-*) ;; + *) set x \"\$@\" \"\$lt_wr_arg\"; shift;; + esac + shift + done ;; + esac + func_exec_program_core \${1+\"\$@\"} +} + + # Parse options + func_parse_lt_options \"\$0\" \${1+\"\$@\"} + + # Find the directory that this script lives in. + thisdir=\`\$ECHO \"\$file\" | $SED 's%/[^/]*$%%'\` + test \"x\$thisdir\" = \"x\$file\" && thisdir=. + + # Follow symbolic links until we get to the real thisdir. + file=\`ls -ld \"\$file\" | $SED -n 's/.*-> //p'\` + while test -n \"\$file\"; do + destdir=\`\$ECHO \"\$file\" | $SED 's%/[^/]*\$%%'\` + + # If there was a directory component, then change thisdir. + if test \"x\$destdir\" != \"x\$file\"; then + case \"\$destdir\" in + [\\\\/]* | [A-Za-z]:[\\\\/]*) thisdir=\"\$destdir\" ;; + *) thisdir=\"\$thisdir/\$destdir\" ;; + esac + fi + + file=\`\$ECHO \"\$file\" | $SED 's%^.*/%%'\` + file=\`ls -ld \"\$thisdir/\$file\" | $SED -n 's/.*-> //p'\` + done + + # Usually 'no', except on cygwin/mingw when embedded into + # the cwrapper. + WRAPPER_SCRIPT_BELONGS_IN_OBJDIR=$func_emit_wrapper_arg1 + if test \"\$WRAPPER_SCRIPT_BELONGS_IN_OBJDIR\" = \"yes\"; then + # special case for '.' + if test \"\$thisdir\" = \".\"; then + thisdir=\`pwd\` + fi + # remove .libs from thisdir + case \"\$thisdir\" in + *[\\\\/]$objdir ) thisdir=\`\$ECHO \"\$thisdir\" | $SED 's%[\\\\/][^\\\\/]*$%%'\` ;; + $objdir ) thisdir=. ;; + esac + fi + + # Try to get the absolute directory name. + absdir=\`cd \"\$thisdir\" && pwd\` + test -n \"\$absdir\" && thisdir=\"\$absdir\" +" + + if test yes = "$fast_install"; then + $ECHO "\ + program=lt-'$outputname'$exeext + progdir=\"\$thisdir/$objdir\" + + if test ! -f \"\$progdir/\$program\" || + { file=\`ls -1dt \"\$progdir/\$program\" \"\$progdir/../\$program\" 2>/dev/null | $SED 1q\`; \\ + test \"X\$file\" != \"X\$progdir/\$program\"; }; then + + file=\"\$\$-\$program\" + + if test ! -d \"\$progdir\"; then + $MKDIR \"\$progdir\" + else + $RM \"\$progdir/\$file\" + fi" + + $ECHO "\ + + # relink executable if necessary + if test -n \"\$relink_command\"; then + if relink_command_output=\`eval \$relink_command 2>&1\`; then : + else + \$ECHO \"\$relink_command_output\" >&2 + $RM \"\$progdir/\$file\" + exit 1 + fi + fi + + $MV \"\$progdir/\$file\" \"\$progdir/\$program\" 2>/dev/null || + { $RM \"\$progdir/\$program\"; + $MV \"\$progdir/\$file\" \"\$progdir/\$program\"; } + $RM \"\$progdir/\$file\" + fi" + else + $ECHO "\ + program='$outputname' + progdir=\"\$thisdir/$objdir\" +" + fi + + $ECHO "\ + + if test -f \"\$progdir/\$program\"; then" + + # fixup the dll searchpath if we need to. + # + # Fix the DLL searchpath if we need to. Do this before prepending + # to shlibpath, because on Windows, both are PATH and uninstalled + # libraries must come first. + if test -n "$dllsearchpath"; then + $ECHO "\ + # Add the dll search path components to the executable PATH + PATH=$dllsearchpath:\$PATH +" + fi + + # Export our shlibpath_var if we have one. + if test yes = "$shlibpath_overrides_runpath" && test -n "$shlibpath_var" && test -n "$temp_rpath"; then + $ECHO "\ + # Add our own library path to $shlibpath_var + $shlibpath_var=\"$temp_rpath\$$shlibpath_var\" + + # Some systems cannot cope with colon-terminated $shlibpath_var + # The second colon is a workaround for a bug in BeOS R4 sed + $shlibpath_var=\`\$ECHO \"\$$shlibpath_var\" | $SED 's/::*\$//'\` + + export $shlibpath_var +" + fi + + $ECHO "\ + if test \"\$libtool_execute_magic\" != \"$magic\"; then + # Run the actual program with our arguments. + func_exec_program \${1+\"\$@\"} + fi + else + # The program doesn't exist. + \$ECHO \"\$0: error: '\$progdir/\$program' does not exist\" 1>&2 + \$ECHO \"This script is just a wrapper for \$program.\" 1>&2 + \$ECHO \"See the $PACKAGE documentation for more information.\" 1>&2 + exit 1 + fi +fi\ +" +} + + +# func_emit_cwrapperexe_src +# emit the source code for a wrapper executable on stdout +# Must ONLY be called from within func_mode_link because +# it depends on a number of variable set therein. +func_emit_cwrapperexe_src () +{ + cat < +#include +#ifdef _MSC_VER +# include +# include +# include +#else +# include +# include +# ifdef __CYGWIN__ +# include +# endif +#endif +#include +#include +#include +#include +#include +#include +#include +#include + +#define STREQ(s1, s2) (strcmp ((s1), (s2)) == 0) + +/* declarations of non-ANSI functions */ +#if defined __MINGW32__ +# ifdef __STRICT_ANSI__ +int _putenv (const char *); +# endif +#elif defined __CYGWIN__ +# ifdef __STRICT_ANSI__ +char *realpath (const char *, char *); +int putenv (char *); +int setenv (const char *, const char *, int); +# endif +/* #elif defined other_platform || defined ... */ +#endif + +/* portability defines, excluding path handling macros */ +#if defined _MSC_VER +# define setmode _setmode +# define stat _stat +# define chmod _chmod +# define getcwd _getcwd +# define putenv _putenv +# define S_IXUSR _S_IEXEC +#elif defined __MINGW32__ +# define setmode _setmode +# define stat _stat +# define chmod _chmod +# define getcwd _getcwd +# define putenv _putenv +#elif defined __CYGWIN__ +# define HAVE_SETENV +# define FOPEN_WB "wb" +/* #elif defined other platforms ... */ +#endif + +#if defined PATH_MAX +# define LT_PATHMAX PATH_MAX +#elif defined MAXPATHLEN +# define LT_PATHMAX MAXPATHLEN +#else +# define LT_PATHMAX 1024 +#endif + +#ifndef S_IXOTH +# define S_IXOTH 0 +#endif +#ifndef S_IXGRP +# define S_IXGRP 0 +#endif + +/* path handling portability macros */ +#ifndef DIR_SEPARATOR +# define DIR_SEPARATOR '/' +# define PATH_SEPARATOR ':' +#endif + +#if defined _WIN32 || defined __MSDOS__ || defined __DJGPP__ || \ + defined __OS2__ +# define HAVE_DOS_BASED_FILE_SYSTEM +# define FOPEN_WB "wb" +# ifndef DIR_SEPARATOR_2 +# define DIR_SEPARATOR_2 '\\' +# endif +# ifndef PATH_SEPARATOR_2 +# define PATH_SEPARATOR_2 ';' +# endif +#endif + +#ifndef DIR_SEPARATOR_2 +# define IS_DIR_SEPARATOR(ch) ((ch) == DIR_SEPARATOR) +#else /* DIR_SEPARATOR_2 */ +# define IS_DIR_SEPARATOR(ch) \ + (((ch) == DIR_SEPARATOR) || ((ch) == DIR_SEPARATOR_2)) +#endif /* DIR_SEPARATOR_2 */ + +#ifndef PATH_SEPARATOR_2 +# define IS_PATH_SEPARATOR(ch) ((ch) == PATH_SEPARATOR) +#else /* PATH_SEPARATOR_2 */ +# define IS_PATH_SEPARATOR(ch) ((ch) == PATH_SEPARATOR_2) +#endif /* PATH_SEPARATOR_2 */ + +#ifndef FOPEN_WB +# define FOPEN_WB "w" +#endif +#ifndef _O_BINARY +# define _O_BINARY 0 +#endif + +#define XMALLOC(type, num) ((type *) xmalloc ((num) * sizeof(type))) +#define XFREE(stale) do { \ + if (stale) { free (stale); stale = 0; } \ +} while (0) + +#if defined LT_DEBUGWRAPPER +static int lt_debug = 1; +#else +static int lt_debug = 0; +#endif + +const char *program_name = "libtool-wrapper"; /* in case xstrdup fails */ + +void *xmalloc (size_t num); +char *xstrdup (const char *string); +const char *base_name (const char *name); +char *find_executable (const char *wrapper); +char *chase_symlinks (const char *pathspec); +int make_executable (const char *path); +int check_executable (const char *path); +char *strendzap (char *str, const char *pat); +void lt_debugprintf (const char *file, int line, const char *fmt, ...); +void lt_fatal (const char *file, int line, const char *message, ...); +static const char *nonnull (const char *s); +static const char *nonempty (const char *s); +void lt_setenv (const char *name, const char *value); +char *lt_extend_str (const char *orig_value, const char *add, int to_end); +void lt_update_exe_path (const char *name, const char *value); +void lt_update_lib_path (const char *name, const char *value); +char **prepare_spawn (char **argv); +void lt_dump_script (FILE *f); +EOF + + cat <= 0) + && (st.st_mode & (S_IXUSR | S_IXGRP | S_IXOTH))) + return 1; + else + return 0; +} + +int +make_executable (const char *path) +{ + int rval = 0; + struct stat st; + + lt_debugprintf (__FILE__, __LINE__, "(make_executable): %s\n", + nonempty (path)); + if ((!path) || (!*path)) + return 0; + + if (stat (path, &st) >= 0) + { + rval = chmod (path, st.st_mode | S_IXOTH | S_IXGRP | S_IXUSR); + } + return rval; +} + +/* Searches for the full path of the wrapper. Returns + newly allocated full path name if found, NULL otherwise + Does not chase symlinks, even on platforms that support them. +*/ +char * +find_executable (const char *wrapper) +{ + int has_slash = 0; + const char *p; + const char *p_next; + /* static buffer for getcwd */ + char tmp[LT_PATHMAX + 1]; + size_t tmp_len; + char *concat_name; + + lt_debugprintf (__FILE__, __LINE__, "(find_executable): %s\n", + nonempty (wrapper)); + + if ((wrapper == NULL) || (*wrapper == '\0')) + return NULL; + + /* Absolute path? */ +#if defined HAVE_DOS_BASED_FILE_SYSTEM + if (isalpha ((unsigned char) wrapper[0]) && wrapper[1] == ':') + { + concat_name = xstrdup (wrapper); + if (check_executable (concat_name)) + return concat_name; + XFREE (concat_name); + } + else + { +#endif + if (IS_DIR_SEPARATOR (wrapper[0])) + { + concat_name = xstrdup (wrapper); + if (check_executable (concat_name)) + return concat_name; + XFREE (concat_name); + } +#if defined HAVE_DOS_BASED_FILE_SYSTEM + } +#endif + + for (p = wrapper; *p; p++) + if (*p == '/') + { + has_slash = 1; + break; + } + if (!has_slash) + { + /* no slashes; search PATH */ + const char *path = getenv ("PATH"); + if (path != NULL) + { + for (p = path; *p; p = p_next) + { + const char *q; + size_t p_len; + for (q = p; *q; q++) + if (IS_PATH_SEPARATOR (*q)) + break; + p_len = (size_t) (q - p); + p_next = (*q == '\0' ? q : q + 1); + if (p_len == 0) + { + /* empty path: current directory */ + if (getcwd (tmp, LT_PATHMAX) == NULL) + lt_fatal (__FILE__, __LINE__, "getcwd failed: %s", + nonnull (strerror (errno))); + tmp_len = strlen (tmp); + concat_name = + XMALLOC (char, tmp_len + 1 + strlen (wrapper) + 1); + memcpy (concat_name, tmp, tmp_len); + concat_name[tmp_len] = '/'; + strcpy (concat_name + tmp_len + 1, wrapper); + } + else + { + concat_name = + XMALLOC (char, p_len + 1 + strlen (wrapper) + 1); + memcpy (concat_name, p, p_len); + concat_name[p_len] = '/'; + strcpy (concat_name + p_len + 1, wrapper); + } + if (check_executable (concat_name)) + return concat_name; + XFREE (concat_name); + } + } + /* not found in PATH; assume curdir */ + } + /* Relative path | not found in path: prepend cwd */ + if (getcwd (tmp, LT_PATHMAX) == NULL) + lt_fatal (__FILE__, __LINE__, "getcwd failed: %s", + nonnull (strerror (errno))); + tmp_len = strlen (tmp); + concat_name = XMALLOC (char, tmp_len + 1 + strlen (wrapper) + 1); + memcpy (concat_name, tmp, tmp_len); + concat_name[tmp_len] = '/'; + strcpy (concat_name + tmp_len + 1, wrapper); + + if (check_executable (concat_name)) + return concat_name; + XFREE (concat_name); + return NULL; +} + +char * +chase_symlinks (const char *pathspec) +{ +#ifndef S_ISLNK + return xstrdup (pathspec); +#else + char buf[LT_PATHMAX]; + struct stat s; + char *tmp_pathspec = xstrdup (pathspec); + char *p; + int has_symlinks = 0; + while (strlen (tmp_pathspec) && !has_symlinks) + { + lt_debugprintf (__FILE__, __LINE__, + "checking path component for symlinks: %s\n", + tmp_pathspec); + if (lstat (tmp_pathspec, &s) == 0) + { + if (S_ISLNK (s.st_mode) != 0) + { + has_symlinks = 1; + break; + } + + /* search backwards for last DIR_SEPARATOR */ + p = tmp_pathspec + strlen (tmp_pathspec) - 1; + while ((p > tmp_pathspec) && (!IS_DIR_SEPARATOR (*p))) + p--; + if ((p == tmp_pathspec) && (!IS_DIR_SEPARATOR (*p))) + { + /* no more DIR_SEPARATORS left */ + break; + } + *p = '\0'; + } + else + { + lt_fatal (__FILE__, __LINE__, + "error accessing file \"%s\": %s", + tmp_pathspec, nonnull (strerror (errno))); + } + } + XFREE (tmp_pathspec); + + if (!has_symlinks) + { + return xstrdup (pathspec); + } + + tmp_pathspec = realpath (pathspec, buf); + if (tmp_pathspec == 0) + { + lt_fatal (__FILE__, __LINE__, + "could not follow symlinks for %s", pathspec); + } + return xstrdup (tmp_pathspec); +#endif +} + +char * +strendzap (char *str, const char *pat) +{ + size_t len, patlen; + + assert (str != NULL); + assert (pat != NULL); + + len = strlen (str); + patlen = strlen (pat); + + if (patlen <= len) + { + str += len - patlen; + if (STREQ (str, pat)) + *str = '\0'; + } + return str; +} + +void +lt_debugprintf (const char *file, int line, const char *fmt, ...) +{ + va_list args; + if (lt_debug) + { + (void) fprintf (stderr, "%s:%s:%d: ", program_name, file, line); + va_start (args, fmt); + (void) vfprintf (stderr, fmt, args); + va_end (args); + } +} + +static void +lt_error_core (int exit_status, const char *file, + int line, const char *mode, + const char *message, va_list ap) +{ + fprintf (stderr, "%s:%s:%d: %s: ", program_name, file, line, mode); + vfprintf (stderr, message, ap); + fprintf (stderr, ".\n"); + + if (exit_status >= 0) + exit (exit_status); +} + +void +lt_fatal (const char *file, int line, const char *message, ...) +{ + va_list ap; + va_start (ap, message); + lt_error_core (EXIT_FAILURE, file, line, "FATAL", message, ap); + va_end (ap); +} + +static const char * +nonnull (const char *s) +{ + return s ? s : "(null)"; +} + +static const char * +nonempty (const char *s) +{ + return (s && !*s) ? "(empty)" : nonnull (s); +} + +void +lt_setenv (const char *name, const char *value) +{ + lt_debugprintf (__FILE__, __LINE__, + "(lt_setenv) setting '%s' to '%s'\n", + nonnull (name), nonnull (value)); + { +#ifdef HAVE_SETENV + /* always make a copy, for consistency with !HAVE_SETENV */ + char *str = xstrdup (value); + setenv (name, str, 1); +#else + size_t len = strlen (name) + 1 + strlen (value) + 1; + char *str = XMALLOC (char, len); + sprintf (str, "%s=%s", name, value); + if (putenv (str) != EXIT_SUCCESS) + { + XFREE (str); + } +#endif + } +} + +char * +lt_extend_str (const char *orig_value, const char *add, int to_end) +{ + char *new_value; + if (orig_value && *orig_value) + { + size_t orig_value_len = strlen (orig_value); + size_t add_len = strlen (add); + new_value = XMALLOC (char, add_len + orig_value_len + 1); + if (to_end) + { + strcpy (new_value, orig_value); + strcpy (new_value + orig_value_len, add); + } + else + { + strcpy (new_value, add); + strcpy (new_value + add_len, orig_value); + } + } + else + { + new_value = xstrdup (add); + } + return new_value; +} + +void +lt_update_exe_path (const char *name, const char *value) +{ + lt_debugprintf (__FILE__, __LINE__, + "(lt_update_exe_path) modifying '%s' by prepending '%s'\n", + nonnull (name), nonnull (value)); + + if (name && *name && value && *value) + { + char *new_value = lt_extend_str (getenv (name), value, 0); + /* some systems can't cope with a ':'-terminated path #' */ + size_t len = strlen (new_value); + while ((len > 0) && IS_PATH_SEPARATOR (new_value[len-1])) + { + new_value[--len] = '\0'; + } + lt_setenv (name, new_value); + XFREE (new_value); + } +} + +void +lt_update_lib_path (const char *name, const char *value) +{ + lt_debugprintf (__FILE__, __LINE__, + "(lt_update_lib_path) modifying '%s' by prepending '%s'\n", + nonnull (name), nonnull (value)); + + if (name && *name && value && *value) + { + char *new_value = lt_extend_str (getenv (name), value, 0); + lt_setenv (name, new_value); + XFREE (new_value); + } +} + +EOF + case $host_os in + mingw*) + cat <<"EOF" + +/* Prepares an argument vector before calling spawn(). + Note that spawn() does not by itself call the command interpreter + (getenv ("COMSPEC") != NULL ? getenv ("COMSPEC") : + ({ OSVERSIONINFO v; v.dwOSVersionInfoSize = sizeof(OSVERSIONINFO); + GetVersionEx(&v); + v.dwPlatformId == VER_PLATFORM_WIN32_NT; + }) ? "cmd.exe" : "command.com"). + Instead it simply concatenates the arguments, separated by ' ', and calls + CreateProcess(). We must quote the arguments since Win32 CreateProcess() + interprets characters like ' ', '\t', '\\', '"' (but not '<' and '>') in a + special way: + - Space and tab are interpreted as delimiters. They are not treated as + delimiters if they are surrounded by double quotes: "...". + - Unescaped double quotes are removed from the input. Their only effect is + that within double quotes, space and tab are treated like normal + characters. + - Backslashes not followed by double quotes are not special. + - But 2*n+1 backslashes followed by a double quote become + n backslashes followed by a double quote (n >= 0): + \" -> " + \\\" -> \" + \\\\\" -> \\" + */ +#define SHELL_SPECIAL_CHARS "\"\\ \001\002\003\004\005\006\007\010\011\012\013\014\015\016\017\020\021\022\023\024\025\026\027\030\031\032\033\034\035\036\037" +#define SHELL_SPACE_CHARS " \001\002\003\004\005\006\007\010\011\012\013\014\015\016\017\020\021\022\023\024\025\026\027\030\031\032\033\034\035\036\037" +char ** +prepare_spawn (char **argv) +{ + size_t argc; + char **new_argv; + size_t i; + + /* Count number of arguments. */ + for (argc = 0; argv[argc] != NULL; argc++) + ; + + /* Allocate new argument vector. */ + new_argv = XMALLOC (char *, argc + 1); + + /* Put quoted arguments into the new argument vector. */ + for (i = 0; i < argc; i++) + { + const char *string = argv[i]; + + if (string[0] == '\0') + new_argv[i] = xstrdup ("\"\""); + else if (strpbrk (string, SHELL_SPECIAL_CHARS) != NULL) + { + int quote_around = (strpbrk (string, SHELL_SPACE_CHARS) != NULL); + size_t length; + unsigned int backslashes; + const char *s; + char *quoted_string; + char *p; + + length = 0; + backslashes = 0; + if (quote_around) + length++; + for (s = string; *s != '\0'; s++) + { + char c = *s; + if (c == '"') + length += backslashes + 1; + length++; + if (c == '\\') + backslashes++; + else + backslashes = 0; + } + if (quote_around) + length += backslashes + 1; + + quoted_string = XMALLOC (char, length + 1); + + p = quoted_string; + backslashes = 0; + if (quote_around) + *p++ = '"'; + for (s = string; *s != '\0'; s++) + { + char c = *s; + if (c == '"') + { + unsigned int j; + for (j = backslashes + 1; j > 0; j--) + *p++ = '\\'; + } + *p++ = c; + if (c == '\\') + backslashes++; + else + backslashes = 0; + } + if (quote_around) + { + unsigned int j; + for (j = backslashes; j > 0; j--) + *p++ = '\\'; + *p++ = '"'; + } + *p = '\0'; + + new_argv[i] = quoted_string; + } + else + new_argv[i] = (char *) string; + } + new_argv[argc] = NULL; + + return new_argv; +} +EOF + ;; + esac + + cat <<"EOF" +void lt_dump_script (FILE* f) +{ +EOF + func_emit_wrapper yes | + $SED -n -e ' +s/^\(.\{79\}\)\(..*\)/\1\ +\2/ +h +s/\([\\"]\)/\\\1/g +s/$/\\n/ +s/\([^\n]*\).*/ fputs ("\1", f);/p +g +D' + cat <<"EOF" +} +EOF +} +# end: func_emit_cwrapperexe_src + +# func_win32_import_lib_p ARG +# True if ARG is an import lib, as indicated by $file_magic_cmd +func_win32_import_lib_p () +{ + $debug_cmd + + case `eval $file_magic_cmd \"\$1\" 2>/dev/null | $SED -e 10q` in + *import*) : ;; + *) false ;; + esac +} + +# func_suncc_cstd_abi +# !!ONLY CALL THIS FOR SUN CC AFTER $compile_command IS FULLY EXPANDED!! +# Several compiler flags select an ABI that is incompatible with the +# Cstd library. Avoid specifying it if any are in CXXFLAGS. +func_suncc_cstd_abi () +{ + $debug_cmd + + case " $compile_command " in + *" -compat=g "*|*\ -std=c++[0-9][0-9]\ *|*" -library=stdcxx4 "*|*" -library=stlport4 "*) + suncc_use_cstd_abi=no + ;; + *) + suncc_use_cstd_abi=yes + ;; + esac +} + +# func_mode_link arg... +func_mode_link () +{ + $debug_cmd + + case $host in + *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2* | *-cegcc*) + # It is impossible to link a dll without this setting, and + # we shouldn't force the makefile maintainer to figure out + # what system we are compiling for in order to pass an extra + # flag for every libtool invocation. + # allow_undefined=no + + # FIXME: Unfortunately, there are problems with the above when trying + # to make a dll that has undefined symbols, in which case not + # even a static library is built. For now, we need to specify + # -no-undefined on the libtool link line when we can be certain + # that all symbols are satisfied, otherwise we get a static library. + allow_undefined=yes + ;; + *) + allow_undefined=yes + ;; + esac + libtool_args=$nonopt + base_compile="$nonopt $@" + compile_command=$nonopt + finalize_command=$nonopt + + compile_rpath= + finalize_rpath= + compile_shlibpath= + finalize_shlibpath= + convenience= + old_convenience= + deplibs= + old_deplibs= + compiler_flags= + linker_flags= + dllsearchpath= + lib_search_path=`pwd` + inst_prefix_dir= + new_inherited_linker_flags= + + avoid_version=no + bindir= + dlfiles= + dlprefiles= + dlself=no + export_dynamic=no + export_symbols= + export_symbols_regex= + generated= + libobjs= + ltlibs= + module=no + no_install=no + objs= + os2dllname= + non_pic_objects= + precious_files_regex= + prefer_static_libs=no + preload=false + prev= + prevarg= + release= + rpath= + xrpath= + perm_rpath= + temp_rpath= + thread_safe=no + vinfo= + vinfo_number=no + weak_libs= + single_module=$wl-single_module + func_infer_tag $base_compile + + # We need to know -static, to get the right output filenames. + for arg + do + case $arg in + -shared) + test yes != "$build_libtool_libs" \ + && func_fatal_configuration "cannot build a shared library" + build_old_libs=no + break + ;; + -all-static | -static | -static-uninstalled-libs | -static-libtool-libs) + case $arg in + -all-static | -static) + if test yes = "$build_libtool_libs" && test -z "$link_static_flag"; then + func_warning "complete static linking is impossible in this configuration" + fi + if test -n "$link_static_flag"; then + dlopen_self=$dlopen_self_static + fi + prefer_static_libs=yes + ;; + -static-uninstalled-libs) + if test -z "$pic_flag" && test -n "$link_static_flag"; then + dlopen_self=$dlopen_self_static + fi + prefer_static_libs=built + ;; + -static-libtool-libs) + if test -z "$pic_flag" && test -n "$link_static_flag"; then + dlopen_self=$dlopen_self_static + fi + prefer_static_libs=yes + ;; + esac + build_libtool_libs=no + build_old_libs=yes + break + ;; + esac + done + + # See if our shared archives depend on static archives. + test -n "$old_archive_from_new_cmds" && build_old_libs=yes + + # Go through the arguments, transforming them on the way. + while test "$#" -gt 0; do + arg=$1 + shift + func_quote_arg pretty,unquoted "$arg" + qarg=$func_quote_arg_unquoted_result + func_append libtool_args " $func_quote_arg_result" + + # If the previous option needs an argument, assign it. + if test -n "$prev"; then + case $prev in + output) + func_append compile_command " @OUTPUT@" + func_append finalize_command " @OUTPUT@" + ;; + esac + + case $prev in + bindir) + bindir=$arg + prev= + continue + ;; + dlfiles|dlprefiles) + $preload || { + # Add the symbol object into the linking commands. + func_append compile_command " @SYMFILE@" + func_append finalize_command " @SYMFILE@" + preload=: + } + case $arg in + *.la | *.lo) ;; # We handle these cases below. + force) + if test no = "$dlself"; then + dlself=needless + export_dynamic=yes + fi + prev= + continue + ;; + self) + if test dlprefiles = "$prev"; then + dlself=yes + elif test dlfiles = "$prev" && test yes != "$dlopen_self"; then + dlself=yes + else + dlself=needless + export_dynamic=yes + fi + prev= + continue + ;; + *) + if test dlfiles = "$prev"; then + func_append dlfiles " $arg" + else + func_append dlprefiles " $arg" + fi + prev= + continue + ;; + esac + ;; + expsyms) + export_symbols=$arg + test -f "$arg" \ + || func_fatal_error "symbol file '$arg' does not exist" + prev= + continue + ;; + expsyms_regex) + export_symbols_regex=$arg + prev= + continue + ;; + framework) + case $host in + *-*-darwin*) + case "$deplibs " in + *" $qarg.ltframework "*) ;; + *) func_append deplibs " $qarg.ltframework" # this is fixed later + ;; + esac + ;; + esac + prev= + continue + ;; + inst_prefix) + inst_prefix_dir=$arg + prev= + continue + ;; + mllvm) + # Clang does not use LLVM to link, so we can simply discard any + # '-mllvm $arg' options when doing the link step. + prev= + continue + ;; + objectlist) + if test -f "$arg"; then + save_arg=$arg + moreargs= + for fil in `cat "$save_arg"` + do +# func_append moreargs " $fil" + arg=$fil + # A libtool-controlled object. + + # Check to see that this really is a libtool object. + if func_lalib_unsafe_p "$arg"; then + pic_object= + non_pic_object= + + # Read the .lo file + func_source "$arg" + + if test -z "$pic_object" || + test -z "$non_pic_object" || + test none = "$pic_object" && + test none = "$non_pic_object"; then + func_fatal_error "cannot find name of object for '$arg'" + fi + + # Extract subdirectory from the argument. + func_dirname "$arg" "/" "" + xdir=$func_dirname_result + + if test none != "$pic_object"; then + # Prepend the subdirectory the object is found in. + pic_object=$xdir$pic_object + + if test dlfiles = "$prev"; then + if test yes = "$build_libtool_libs" && test yes = "$dlopen_support"; then + func_append dlfiles " $pic_object" + prev= + continue + else + # If libtool objects are unsupported, then we need to preload. + prev=dlprefiles + fi + fi + + # CHECK ME: I think I busted this. -Ossama + if test dlprefiles = "$prev"; then + # Preload the old-style object. + func_append dlprefiles " $pic_object" + prev= + fi + + # A PIC object. + func_append libobjs " $pic_object" + arg=$pic_object + fi + + # Non-PIC object. + if test none != "$non_pic_object"; then + # Prepend the subdirectory the object is found in. + non_pic_object=$xdir$non_pic_object + + # A standard non-PIC object + func_append non_pic_objects " $non_pic_object" + if test -z "$pic_object" || test none = "$pic_object"; then + arg=$non_pic_object + fi + else + # If the PIC object exists, use it instead. + # $xdir was prepended to $pic_object above. + non_pic_object=$pic_object + func_append non_pic_objects " $non_pic_object" + fi + else + # Only an error if not doing a dry-run. + if $opt_dry_run; then + # Extract subdirectory from the argument. + func_dirname "$arg" "/" "" + xdir=$func_dirname_result + + func_lo2o "$arg" + pic_object=$xdir$objdir/$func_lo2o_result + non_pic_object=$xdir$func_lo2o_result + func_append libobjs " $pic_object" + func_append non_pic_objects " $non_pic_object" + else + func_fatal_error "'$arg' is not a valid libtool object" + fi + fi + done + else + func_fatal_error "link input file '$arg' does not exist" + fi + arg=$save_arg + prev= + continue + ;; + os2dllname) + os2dllname=$arg + prev= + continue + ;; + precious_regex) + precious_files_regex=$arg + prev= + continue + ;; + release) + release=-$arg + prev= + continue + ;; + rpath | xrpath) + # We need an absolute path. + case $arg in + [\\/]* | [A-Za-z]:[\\/]*) ;; + *) + func_fatal_error "only absolute run-paths are allowed" + ;; + esac + if test rpath = "$prev"; then + case "$rpath " in + *" $arg "*) ;; + *) func_append rpath " $arg" ;; + esac + else + case "$xrpath " in + *" $arg "*) ;; + *) func_append xrpath " $arg" ;; + esac + fi + prev= + continue + ;; + shrext) + shrext_cmds=$arg + prev= + continue + ;; + weak) + func_append weak_libs " $arg" + prev= + continue + ;; + xassembler) + func_append compiler_flags " -Xassembler $qarg" + prev= + func_append compile_command " -Xassembler $qarg" + func_append finalize_command " -Xassembler $qarg" + continue + ;; + xcclinker) + func_append linker_flags " $qarg" + func_append compiler_flags " $qarg" + prev= + func_append compile_command " $qarg" + func_append finalize_command " $qarg" + continue + ;; + xcompiler) + func_append compiler_flags " $qarg" + prev= + func_append compile_command " $qarg" + func_append finalize_command " $qarg" + continue + ;; + xlinker) + func_append linker_flags " $qarg" + func_append compiler_flags " $wl$qarg" + prev= + func_append compile_command " $wl$qarg" + func_append finalize_command " $wl$qarg" + continue + ;; + *) + eval "$prev=\"\$arg\"" + prev= + continue + ;; + esac + fi # test -n "$prev" + + prevarg=$arg + + case $arg in + -all-static | -static) + if test -n "$link_static_flag"; then + # See comment for -static flag below, for more details. + func_append compile_command " $link_static_flag" + func_append finalize_command " $link_static_flag" + fi + continue + ;; + + -allow-undefined) + # FIXME: remove this flag sometime in the future. + func_fatal_error "'-allow-undefined' must not be used because it is the default" + ;; + + -avoid-version) + avoid_version=yes + continue + ;; + + -bindir) + prev=bindir + continue + ;; + + -dlopen) + prev=dlfiles + continue + ;; + + -dlpreopen) + prev=dlprefiles + continue + ;; + + -export-dynamic) + export_dynamic=yes + continue + ;; + + -export-symbols | -export-symbols-regex) + if test -n "$export_symbols" || test -n "$export_symbols_regex"; then + func_fatal_error "more than one -exported-symbols argument is not allowed" + fi + if test X-export-symbols = "X$arg"; then + prev=expsyms + else + prev=expsyms_regex + fi + continue + ;; + + -framework) + prev=framework + continue + ;; + + -inst-prefix-dir) + prev=inst_prefix + continue + ;; + + # The native IRIX linker understands -LANG:*, -LIST:* and -LNO:* + # so, if we see these flags be careful not to treat them like -L + -L[A-Z][A-Z]*:*) + case $with_gcc/$host in + no/*-*-irix* | /*-*-irix*) + func_append compile_command " $arg" + func_append finalize_command " $arg" + ;; + esac + continue + ;; + + -L*) + func_stripname "-L" '' "$arg" + if test -z "$func_stripname_result"; then + if test "$#" -gt 0; then + func_fatal_error "require no space between '-L' and '$1'" + else + func_fatal_error "need path for '-L' option" + fi + fi + func_resolve_sysroot "$func_stripname_result" + dir=$func_resolve_sysroot_result + # We need an absolute path. + case $dir in + [\\/]* | [A-Za-z]:[\\/]*) ;; + *) + absdir=`cd "$dir" && pwd` + test -z "$absdir" && \ + func_fatal_error "cannot determine absolute directory name of '$dir'" + dir=$absdir + ;; + esac + case "$deplibs " in + *" -L$dir "* | *" $arg "*) + # Will only happen for absolute or sysroot arguments + ;; + *) + # Preserve sysroot, but never include relative directories + case $dir in + [\\/]* | [A-Za-z]:[\\/]* | =*) func_append deplibs " $arg" ;; + *) func_append deplibs " -L$dir" ;; + esac + func_append lib_search_path " $dir" + ;; + esac + case $host in + *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2* | *-cegcc*) + testbindir=`$ECHO "$dir" | $SED 's*/lib$*/bin*'` + case :$dllsearchpath: in + *":$dir:"*) ;; + ::) dllsearchpath=$dir;; + *) func_append dllsearchpath ":$dir";; + esac + case :$dllsearchpath: in + *":$testbindir:"*) ;; + ::) dllsearchpath=$testbindir;; + *) func_append dllsearchpath ":$testbindir";; + esac + ;; + esac + continue + ;; + + -l*) + if test X-lc = "X$arg" || test X-lm = "X$arg"; then + case $host in + *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-beos* | *-cegcc* | *-*-haiku*) + # These systems don't actually have a C or math library (as such) + continue + ;; + *-*-os2*) + # These systems don't actually have a C library (as such) + test X-lc = "X$arg" && continue + ;; + *-*-openbsd* | *-*-freebsd* | *-*-dragonfly* | *-*-bitrig* | *-*-midnightbsd*) + # Do not include libc due to us having libc/libc_r. + test X-lc = "X$arg" && continue + ;; + *-*-rhapsody* | *-*-darwin1.[012]) + # Rhapsody C and math libraries are in the System framework + func_append deplibs " System.ltframework" + continue + ;; + *-*-sco3.2v5* | *-*-sco5v6*) + # Causes problems with __ctype + test X-lc = "X$arg" && continue + ;; + *-*-sysv4.2uw2* | *-*-sysv5* | *-*-unixware* | *-*-OpenUNIX*) + # Compiler inserts libc in the correct place for threads to work + test X-lc = "X$arg" && continue + ;; + esac + elif test X-lc_r = "X$arg"; then + case $host in + *-*-openbsd* | *-*-freebsd* | *-*-dragonfly* | *-*-bitrig* | *-*-midnightbsd*) + # Do not include libc_r directly, use -pthread flag. + continue + ;; + esac + fi + func_append deplibs " $arg" + continue + ;; + + -mllvm) + prev=mllvm + continue + ;; + + -module) + module=yes + continue + ;; + + # Tru64 UNIX uses -model [arg] to determine the layout of C++ + # classes, name mangling, and exception handling. + # Darwin uses the -arch flag to determine output architecture. + -model|-arch|-isysroot|--sysroot) + func_append compiler_flags " $arg" + func_append compile_command " $arg" + func_append finalize_command " $arg" + prev=xcompiler + continue + ;; + # Solaris ld rejects as of 11.4. Refer to Oracle bug 22985199. + -pthread) + case $host in + *solaris2*) ;; + *) + case "$new_inherited_linker_flags " in + *" $arg "*) ;; + * ) func_append new_inherited_linker_flags " $arg" ;; + esac + ;; + esac + continue + ;; + -mt|-mthreads|-kthread|-Kthread|-pthreads|--thread-safe \ + |-threads|-fopenmp|-openmp|-mp|-xopenmp|-omp|-qsmp=*) + func_append compiler_flags " $arg" + func_append compile_command " $arg" + func_append finalize_command " $arg" + case "$new_inherited_linker_flags " in + *" $arg "*) ;; + * ) func_append new_inherited_linker_flags " $arg" ;; + esac + continue + ;; + + -multi_module) + single_module=$wl-multi_module + continue + ;; + + -no-fast-install) + fast_install=no + continue + ;; + + -no-install) + case $host in + *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2* | *-*-darwin* | *-cegcc*) + # The PATH hackery in wrapper scripts is required on Windows + # and Darwin in order for the loader to find any dlls it needs. + func_warning "'-no-install' is ignored for $host" + func_warning "assuming '-no-fast-install' instead" + fast_install=no + ;; + *) no_install=yes ;; + esac + continue + ;; + + -no-undefined) + allow_undefined=no + continue + ;; + + -objectlist) + prev=objectlist + continue + ;; + + -os2dllname) + prev=os2dllname + continue + ;; + + -o) prev=output ;; + + -precious-files-regex) + prev=precious_regex + continue + ;; + + -release) + prev=release + continue + ;; + + -rpath) + prev=rpath + continue + ;; + + -R) + prev=xrpath + continue + ;; + + -R*) + func_stripname '-R' '' "$arg" + dir=$func_stripname_result + # We need an absolute path. + case $dir in + [\\/]* | [A-Za-z]:[\\/]*) ;; + =*) + func_stripname '=' '' "$dir" + dir=$lt_sysroot$func_stripname_result + ;; + *) + func_fatal_error "only absolute run-paths are allowed" + ;; + esac + case "$xrpath " in + *" $dir "*) ;; + *) func_append xrpath " $dir" ;; + esac + continue + ;; + + -shared) + # The effects of -shared are defined in a previous loop. + continue + ;; + + -shrext) + prev=shrext + continue + ;; + + -static-uninstalled-libs | -static-libtool-libs) + # The effects of -static-uninstalled-libs are defined in a previous + # loop. We used to do the same as -all-static on platforms that + # didn't have a PIC flag, but the assumption that the effects + # would be equivalent was wrong. It would break on at least + # Digital Unix and AIX. + continue + ;; + + -thread-safe) + thread_safe=yes + continue + ;; + + -version-info) + prev=vinfo + continue + ;; + + -version-number) + prev=vinfo + vinfo_number=yes + continue + ;; + + -weak) + prev=weak + continue + ;; + + -Wc,*) + func_stripname '-Wc,' '' "$arg" + args=$func_stripname_result + arg= + save_ifs=$IFS; IFS=, + for flag in $args; do + IFS=$save_ifs + func_quote_arg pretty "$flag" + func_append arg " $func_quote_arg_result" + func_append compiler_flags " $func_quote_arg_result" + done + IFS=$save_ifs + func_stripname ' ' '' "$arg" + arg=$func_stripname_result + ;; + + -Wl,*) + func_stripname '-Wl,' '' "$arg" + args=$func_stripname_result + arg= + save_ifs=$IFS; IFS=, + for flag in $args; do + IFS=$save_ifs + func_quote_arg pretty "$flag" + func_append arg " $wl$func_quote_arg_result" + func_append compiler_flags " $wl$func_quote_arg_result" + func_append linker_flags " $func_quote_arg_result" + done + IFS=$save_ifs + func_stripname ' ' '' "$arg" + arg=$func_stripname_result + ;; + + -Xassembler) + prev=xassembler + continue + ;; + + -Xcompiler) + prev=xcompiler + continue + ;; + + -Xlinker) + prev=xlinker + continue + ;; + + -XCClinker) + prev=xcclinker + continue + ;; + + # -msg_* for osf cc + -msg_*) + func_quote_arg pretty "$arg" + arg=$func_quote_arg_result + ;; + + # Flags to be passed through unchanged, with rationale: + # -64, -mips[0-9] enable 64-bit mode for the SGI compiler + # -r[0-9][0-9]* specify processor for the SGI compiler + # -xarch=*, -xtarget=* enable 64-bit mode for the Sun compiler + # +DA*, +DD* enable 64-bit mode for the HP compiler + # -q* compiler args for the IBM compiler + # -m*, -t[45]*, -txscale* architecture-specific flags for GCC + # -F/path path to uninstalled frameworks, gcc on darwin + # -p, -pg, --coverage, -fprofile-* profiling flags for GCC + # -fstack-protector* stack protector flags for GCC + # @file GCC response files + # -tp=* Portland pgcc target processor selection + # --sysroot=* for sysroot support + # -O*, -g*, -flto*, -fwhopr*, -fuse-linker-plugin GCC link-time optimization + # -specs=* GCC specs files + # -stdlib=* select c++ std lib with clang + # -fsanitize=* Clang/GCC memory and address sanitizer + # -fuse-ld=* Linker select flags for GCC + # -Wa,* Pass flags directly to the assembler + -64|-mips[0-9]|-r[0-9][0-9]*|-xarch=*|-xtarget=*|+DA*|+DD*|-q*|-m*| \ + -t[45]*|-txscale*|-p|-pg|--coverage|-fprofile-*|-F*|@*|-tp=*|--sysroot=*| \ + -O*|-g*|-flto*|-fwhopr*|-fuse-linker-plugin|-fstack-protector*|-stdlib=*| \ + -specs=*|-fsanitize=*|-fuse-ld=*|-Wa,*) + func_quote_arg pretty "$arg" + arg=$func_quote_arg_result + func_append compile_command " $arg" + func_append finalize_command " $arg" + func_append compiler_flags " $arg" + continue + ;; + + -Z*) + if test os2 = "`expr $host : '.*\(os2\)'`"; then + # OS/2 uses -Zxxx to specify OS/2-specific options + compiler_flags="$compiler_flags $arg" + func_append compile_command " $arg" + func_append finalize_command " $arg" + case $arg in + -Zlinker | -Zstack) + prev=xcompiler + ;; + esac + continue + else + # Otherwise treat like 'Some other compiler flag' below + func_quote_arg pretty "$arg" + arg=$func_quote_arg_result + fi + ;; + + # Some other compiler flag. + -* | +*) + func_quote_arg pretty "$arg" + arg=$func_quote_arg_result + ;; + + *.$objext) + # A standard object. + func_append objs " $arg" + ;; + + *.lo) + # A libtool-controlled object. + + # Check to see that this really is a libtool object. + if func_lalib_unsafe_p "$arg"; then + pic_object= + non_pic_object= + + # Read the .lo file + func_source "$arg" + + if test -z "$pic_object" || + test -z "$non_pic_object" || + test none = "$pic_object" && + test none = "$non_pic_object"; then + func_fatal_error "cannot find name of object for '$arg'" + fi + + # Extract subdirectory from the argument. + func_dirname "$arg" "/" "" + xdir=$func_dirname_result + + test none = "$pic_object" || { + # Prepend the subdirectory the object is found in. + pic_object=$xdir$pic_object + + if test dlfiles = "$prev"; then + if test yes = "$build_libtool_libs" && test yes = "$dlopen_support"; then + func_append dlfiles " $pic_object" + prev= + continue + else + # If libtool objects are unsupported, then we need to preload. + prev=dlprefiles + fi + fi + + # CHECK ME: I think I busted this. -Ossama + if test dlprefiles = "$prev"; then + # Preload the old-style object. + func_append dlprefiles " $pic_object" + prev= + fi + + # A PIC object. + func_append libobjs " $pic_object" + arg=$pic_object + } + + # Non-PIC object. + if test none != "$non_pic_object"; then + # Prepend the subdirectory the object is found in. + non_pic_object=$xdir$non_pic_object + + # A standard non-PIC object + func_append non_pic_objects " $non_pic_object" + if test -z "$pic_object" || test none = "$pic_object"; then + arg=$non_pic_object + fi + else + # If the PIC object exists, use it instead. + # $xdir was prepended to $pic_object above. + non_pic_object=$pic_object + func_append non_pic_objects " $non_pic_object" + fi + else + # Only an error if not doing a dry-run. + if $opt_dry_run; then + # Extract subdirectory from the argument. + func_dirname "$arg" "/" "" + xdir=$func_dirname_result + + func_lo2o "$arg" + pic_object=$xdir$objdir/$func_lo2o_result + non_pic_object=$xdir$func_lo2o_result + func_append libobjs " $pic_object" + func_append non_pic_objects " $non_pic_object" + else + func_fatal_error "'$arg' is not a valid libtool object" + fi + fi + ;; + + *.$libext) + # An archive. + func_append deplibs " $arg" + func_append old_deplibs " $arg" + continue + ;; + + *.la) + # A libtool-controlled library. + + func_resolve_sysroot "$arg" + if test dlfiles = "$prev"; then + # This library was specified with -dlopen. + func_append dlfiles " $func_resolve_sysroot_result" + prev= + elif test dlprefiles = "$prev"; then + # The library was specified with -dlpreopen. + func_append dlprefiles " $func_resolve_sysroot_result" + prev= + else + func_append deplibs " $func_resolve_sysroot_result" + fi + continue + ;; + + # Some other compiler argument. + *) + # Unknown arguments in both finalize_command and compile_command need + # to be aesthetically quoted because they are evaled later. + func_quote_arg pretty "$arg" + arg=$func_quote_arg_result + ;; + esac # arg + + # Now actually substitute the argument into the commands. + if test -n "$arg"; then + func_append compile_command " $arg" + func_append finalize_command " $arg" + fi + done # argument parsing loop + + test -n "$prev" && \ + func_fatal_help "the '$prevarg' option requires an argument" + + if test yes = "$export_dynamic" && test -n "$export_dynamic_flag_spec"; then + eval arg=\"$export_dynamic_flag_spec\" + func_append compile_command " $arg" + func_append finalize_command " $arg" + fi + + oldlibs= + # calculate the name of the file, without its directory + func_basename "$output" + outputname=$func_basename_result + libobjs_save=$libobjs + + if test -n "$shlibpath_var"; then + # get the directories listed in $shlibpath_var + eval shlib_search_path=\`\$ECHO \"\$$shlibpath_var\" \| \$SED \'s/:/ /g\'\` + else + shlib_search_path= + fi + eval sys_lib_search_path=\"$sys_lib_search_path_spec\" + eval sys_lib_dlsearch_path=\"$sys_lib_dlsearch_path_spec\" + + # Definition is injected by LT_CONFIG during libtool generation. + func_munge_path_list sys_lib_dlsearch_path "$LT_SYS_LIBRARY_PATH" + + func_dirname "$output" "/" "" + output_objdir=$func_dirname_result$objdir + func_to_tool_file "$output_objdir/" + tool_output_objdir=$func_to_tool_file_result + # Create the object directory. + func_mkdir_p "$output_objdir" + + # Determine the type of output + case $output in + "") + func_fatal_help "you must specify an output file" + ;; + *.$libext) linkmode=oldlib ;; + *.lo | *.$objext) linkmode=obj ;; + *.la) linkmode=lib ;; + *) linkmode=prog ;; # Anything else should be a program. + esac + + specialdeplibs= + + libs= + # Find all interdependent deplibs by searching for libraries + # that are linked more than once (e.g. -la -lb -la) + for deplib in $deplibs; do + if $opt_preserve_dup_deps; then + case "$libs " in + *" $deplib "*) func_append specialdeplibs " $deplib" ;; + esac + fi + func_append libs " $deplib" + done + + if test lib = "$linkmode"; then + libs="$predeps $libs $compiler_lib_search_path $postdeps" + + # Compute libraries that are listed more than once in $predeps + # $postdeps and mark them as special (i.e., whose duplicates are + # not to be eliminated). + pre_post_deps= + if $opt_duplicate_compiler_generated_deps; then + for pre_post_dep in $predeps $postdeps; do + case "$pre_post_deps " in + *" $pre_post_dep "*) func_append specialdeplibs " $pre_post_deps" ;; + esac + func_append pre_post_deps " $pre_post_dep" + done + fi + pre_post_deps= + fi + + deplibs= + newdependency_libs= + newlib_search_path= + need_relink=no # whether we're linking any uninstalled libtool libraries + notinst_deplibs= # not-installed libtool libraries + notinst_path= # paths that contain not-installed libtool libraries + + case $linkmode in + lib) + passes="conv dlpreopen link" + for file in $dlfiles $dlprefiles; do + case $file in + *.la) ;; + *) + func_fatal_help "libraries can '-dlopen' only libtool libraries: $file" + ;; + esac + done + ;; + prog) + compile_deplibs= + finalize_deplibs= + alldeplibs=false + newdlfiles= + newdlprefiles= + passes="conv scan dlopen dlpreopen link" + ;; + *) passes="conv" + ;; + esac + + for pass in $passes; do + # The preopen pass in lib mode reverses $deplibs; put it back here + # so that -L comes before libs that need it for instance... + if test lib,link = "$linkmode,$pass"; then + ## FIXME: Find the place where the list is rebuilt in the wrong + ## order, and fix it there properly + tmp_deplibs= + for deplib in $deplibs; do + tmp_deplibs="$deplib $tmp_deplibs" + done + deplibs=$tmp_deplibs + fi + + if test lib,link = "$linkmode,$pass" || + test prog,scan = "$linkmode,$pass"; then + libs=$deplibs + deplibs= + fi + if test prog = "$linkmode"; then + case $pass in + dlopen) libs=$dlfiles ;; + dlpreopen) libs=$dlprefiles ;; + link) libs="$deplibs %DEPLIBS% $dependency_libs" ;; + esac + fi + if test lib,dlpreopen = "$linkmode,$pass"; then + # Collect and forward deplibs of preopened libtool libs + for lib in $dlprefiles; do + # Ignore non-libtool-libs + dependency_libs= + func_resolve_sysroot "$lib" + case $lib in + *.la) func_source "$func_resolve_sysroot_result" ;; + esac + + # Collect preopened libtool deplibs, except any this library + # has declared as weak libs + for deplib in $dependency_libs; do + func_basename "$deplib" + deplib_base=$func_basename_result + case " $weak_libs " in + *" $deplib_base "*) ;; + *) func_append deplibs " $deplib" ;; + esac + done + done + libs=$dlprefiles + fi + if test dlopen = "$pass"; then + # Collect dlpreopened libraries + save_deplibs=$deplibs + deplibs= + fi + + for deplib in $libs; do + lib= + found=false + case $deplib in + -mt|-mthreads|-kthread|-Kthread|-pthread|-pthreads|--thread-safe \ + |-threads|-fopenmp|-openmp|-mp|-xopenmp|-omp|-qsmp=*) + if test prog,link = "$linkmode,$pass"; then + compile_deplibs="$deplib $compile_deplibs" + finalize_deplibs="$deplib $finalize_deplibs" + else + func_append compiler_flags " $deplib" + if test lib = "$linkmode"; then + case "$new_inherited_linker_flags " in + *" $deplib "*) ;; + * ) func_append new_inherited_linker_flags " $deplib" ;; + esac + fi + fi + continue + ;; + -l*) + if test lib != "$linkmode" && test prog != "$linkmode"; then + func_warning "'-l' is ignored for archives/objects" + continue + fi + func_stripname '-l' '' "$deplib" + name=$func_stripname_result + if test lib = "$linkmode"; then + searchdirs="$newlib_search_path $lib_search_path $compiler_lib_search_dirs $sys_lib_search_path $shlib_search_path" + else + searchdirs="$newlib_search_path $lib_search_path $sys_lib_search_path $shlib_search_path" + fi + for searchdir in $searchdirs; do + for search_ext in .la $std_shrext .so .a; do + # Search the libtool library + lib=$searchdir/lib$name$search_ext + if test -f "$lib"; then + if test .la = "$search_ext"; then + found=: + else + found=false + fi + break 2 + fi + done + done + if $found; then + # deplib is a libtool library + # If $allow_libtool_libs_with_static_runtimes && $deplib is a stdlib, + # We need to do some special things here, and not later. + if test yes = "$allow_libtool_libs_with_static_runtimes"; then + case " $predeps $postdeps " in + *" $deplib "*) + if func_lalib_p "$lib"; then + library_names= + old_library= + func_source "$lib" + for l in $old_library $library_names; do + ll=$l + done + if test "X$ll" = "X$old_library"; then # only static version available + found=false + func_dirname "$lib" "" "." + ladir=$func_dirname_result + lib=$ladir/$old_library + if test prog,link = "$linkmode,$pass"; then + compile_deplibs="$deplib $compile_deplibs" + finalize_deplibs="$deplib $finalize_deplibs" + else + deplibs="$deplib $deplibs" + test lib = "$linkmode" && newdependency_libs="$deplib $newdependency_libs" + fi + continue + fi + fi + ;; + *) ;; + esac + fi + else + # deplib doesn't seem to be a libtool library + if test prog,link = "$linkmode,$pass"; then + compile_deplibs="$deplib $compile_deplibs" + finalize_deplibs="$deplib $finalize_deplibs" + else + deplibs="$deplib $deplibs" + test lib = "$linkmode" && newdependency_libs="$deplib $newdependency_libs" + fi + continue + fi + ;; # -l + *.ltframework) + if test prog,link = "$linkmode,$pass"; then + compile_deplibs="$deplib $compile_deplibs" + finalize_deplibs="$deplib $finalize_deplibs" + else + deplibs="$deplib $deplibs" + if test lib = "$linkmode"; then + case "$new_inherited_linker_flags " in + *" $deplib "*) ;; + * ) func_append new_inherited_linker_flags " $deplib" ;; + esac + fi + fi + continue + ;; + -L*) + case $linkmode in + lib) + deplibs="$deplib $deplibs" + test conv = "$pass" && continue + newdependency_libs="$deplib $newdependency_libs" + func_stripname '-L' '' "$deplib" + func_resolve_sysroot "$func_stripname_result" + func_append newlib_search_path " $func_resolve_sysroot_result" + ;; + prog) + if test conv = "$pass"; then + deplibs="$deplib $deplibs" + continue + fi + if test scan = "$pass"; then + deplibs="$deplib $deplibs" + else + compile_deplibs="$deplib $compile_deplibs" + finalize_deplibs="$deplib $finalize_deplibs" + fi + func_stripname '-L' '' "$deplib" + func_resolve_sysroot "$func_stripname_result" + func_append newlib_search_path " $func_resolve_sysroot_result" + ;; + *) + func_warning "'-L' is ignored for archives/objects" + ;; + esac # linkmode + continue + ;; # -L + -R*) + if test link = "$pass"; then + func_stripname '-R' '' "$deplib" + func_resolve_sysroot "$func_stripname_result" + dir=$func_resolve_sysroot_result + # Make sure the xrpath contains only unique directories. + case "$xrpath " in + *" $dir "*) ;; + *) func_append xrpath " $dir" ;; + esac + fi + deplibs="$deplib $deplibs" + continue + ;; + *.la) + func_resolve_sysroot "$deplib" + lib=$func_resolve_sysroot_result + ;; + *.$libext) + if test conv = "$pass"; then + deplibs="$deplib $deplibs" + continue + fi + case $linkmode in + lib) + # Linking convenience modules into shared libraries is allowed, + # but linking other static libraries is non-portable. + case " $dlpreconveniencelibs " in + *" $deplib "*) ;; + *) + valid_a_lib=false + case $deplibs_check_method in + match_pattern*) + set dummy $deplibs_check_method; shift + match_pattern_regex=`expr "$deplibs_check_method" : "$1 \(.*\)"` + if eval "\$ECHO \"$deplib\"" 2>/dev/null | $SED 10q \ + | $EGREP "$match_pattern_regex" > /dev/null; then + valid_a_lib=: + fi + ;; + pass_all) + valid_a_lib=: + ;; + esac + if $valid_a_lib; then + echo + $ECHO "*** Warning: Linking the shared library $output against the" + $ECHO "*** static library $deplib is not portable!" + deplibs="$deplib $deplibs" + else + echo + $ECHO "*** Warning: Trying to link with static lib archive $deplib." + echo "*** I have the capability to make that library automatically link in when" + echo "*** you link to this library. But I can only do this if you have a" + echo "*** shared version of the library, which you do not appear to have" + echo "*** because the file extensions .$libext of this argument makes me believe" + echo "*** that it is just a static archive that I should not use here." + fi + ;; + esac + continue + ;; + prog) + if test link != "$pass"; then + deplibs="$deplib $deplibs" + else + compile_deplibs="$deplib $compile_deplibs" + finalize_deplibs="$deplib $finalize_deplibs" + fi + continue + ;; + esac # linkmode + ;; # *.$libext + *.lo | *.$objext) + if test conv = "$pass"; then + deplibs="$deplib $deplibs" + elif test prog = "$linkmode"; then + if test dlpreopen = "$pass" || test yes != "$dlopen_support" || test no = "$build_libtool_libs"; then + # If there is no dlopen support or we're linking statically, + # we need to preload. + func_append newdlprefiles " $deplib" + compile_deplibs="$deplib $compile_deplibs" + finalize_deplibs="$deplib $finalize_deplibs" + else + func_append newdlfiles " $deplib" + fi + fi + continue + ;; + %DEPLIBS%) + alldeplibs=: + continue + ;; + esac # case $deplib + + $found || test -f "$lib" \ + || func_fatal_error "cannot find the library '$lib' or unhandled argument '$deplib'" + + # Check to see that this really is a libtool archive. + func_lalib_unsafe_p "$lib" \ + || func_fatal_error "'$lib' is not a valid libtool archive" + + func_dirname "$lib" "" "." + ladir=$func_dirname_result + + dlname= + dlopen= + dlpreopen= + libdir= + library_names= + old_library= + inherited_linker_flags= + # If the library was installed with an old release of libtool, + # it will not redefine variables installed, or shouldnotlink + installed=yes + shouldnotlink=no + avoidtemprpath= + + + # Read the .la file + func_source "$lib" + + # Convert "-framework foo" to "foo.ltframework" + if test -n "$inherited_linker_flags"; then + tmp_inherited_linker_flags=`$ECHO "$inherited_linker_flags" | $SED 's/-framework \([^ $]*\)/\1.ltframework/g'` + for tmp_inherited_linker_flag in $tmp_inherited_linker_flags; do + case " $new_inherited_linker_flags " in + *" $tmp_inherited_linker_flag "*) ;; + *) func_append new_inherited_linker_flags " $tmp_inherited_linker_flag";; + esac + done + fi + dependency_libs=`$ECHO " $dependency_libs" | $SED 's% \([^ $]*\).ltframework% -framework \1%g'` + if test lib,link = "$linkmode,$pass" || + test prog,scan = "$linkmode,$pass" || + { test prog != "$linkmode" && test lib != "$linkmode"; }; then + test -n "$dlopen" && func_append dlfiles " $dlopen" + test -n "$dlpreopen" && func_append dlprefiles " $dlpreopen" + fi + + if test conv = "$pass"; then + # Only check for convenience libraries + deplibs="$lib $deplibs" + if test -z "$libdir"; then + if test -z "$old_library"; then + func_fatal_error "cannot find name of link library for '$lib'" + fi + # It is a libtool convenience library, so add in its objects. + func_append convenience " $ladir/$objdir/$old_library" + func_append old_convenience " $ladir/$objdir/$old_library" + elif test prog != "$linkmode" && test lib != "$linkmode"; then + func_fatal_error "'$lib' is not a convenience library" + fi + tmp_libs= + for deplib in $dependency_libs; do + deplibs="$deplib $deplibs" + if $opt_preserve_dup_deps; then + case "$tmp_libs " in + *" $deplib "*) func_append specialdeplibs " $deplib" ;; + esac + fi + func_append tmp_libs " $deplib" + done + continue + fi # $pass = conv + + + # Get the name of the library we link against. + linklib= + if test -n "$old_library" && + { test yes = "$prefer_static_libs" || + test built,no = "$prefer_static_libs,$installed"; }; then + linklib=$old_library + else + for l in $old_library $library_names; do + linklib=$l + done + fi + if test -z "$linklib"; then + func_fatal_error "cannot find name of link library for '$lib'" + fi + + # This library was specified with -dlopen. + if test dlopen = "$pass"; then + test -z "$libdir" \ + && func_fatal_error "cannot -dlopen a convenience library: '$lib'" + if test -z "$dlname" || + test yes != "$dlopen_support" || + test no = "$build_libtool_libs" + then + # If there is no dlname, no dlopen support or we're linking + # statically, we need to preload. We also need to preload any + # dependent libraries so libltdl's deplib preloader doesn't + # bomb out in the load deplibs phase. + func_append dlprefiles " $lib $dependency_libs" + else + func_append newdlfiles " $lib" + fi + continue + fi # $pass = dlopen + + # We need an absolute path. + case $ladir in + [\\/]* | [A-Za-z]:[\\/]*) abs_ladir=$ladir ;; + *) + abs_ladir=`cd "$ladir" && pwd` + if test -z "$abs_ladir"; then + func_warning "cannot determine absolute directory name of '$ladir'" + func_warning "passing it literally to the linker, although it might fail" + abs_ladir=$ladir + fi + ;; + esac + func_basename "$lib" + laname=$func_basename_result + + # Find the relevant object directory and library name. + if test yes = "$installed"; then + if test ! -f "$lt_sysroot$libdir/$linklib" && test -f "$abs_ladir/$linklib"; then + func_warning "library '$lib' was moved." + dir=$ladir + absdir=$abs_ladir + libdir=$abs_ladir + else + dir=$lt_sysroot$libdir + absdir=$lt_sysroot$libdir + fi + test yes = "$hardcode_automatic" && avoidtemprpath=yes + else + if test ! -f "$ladir/$objdir/$linklib" && test -f "$abs_ladir/$linklib"; then + dir=$ladir + absdir=$abs_ladir + # Remove this search path later + func_append notinst_path " $abs_ladir" + else + dir=$ladir/$objdir + absdir=$abs_ladir/$objdir + # Remove this search path later + func_append notinst_path " $abs_ladir" + fi + fi # $installed = yes + func_stripname 'lib' '.la' "$laname" + name=$func_stripname_result + + # This library was specified with -dlpreopen. + if test dlpreopen = "$pass"; then + if test -z "$libdir" && test prog = "$linkmode"; then + func_fatal_error "only libraries may -dlpreopen a convenience library: '$lib'" + fi + case $host in + # special handling for platforms with PE-DLLs. + *cygwin* | *mingw* | *cegcc* ) + # Linker will automatically link against shared library if both + # static and shared are present. Therefore, ensure we extract + # symbols from the import library if a shared library is present + # (otherwise, the dlopen module name will be incorrect). We do + # this by putting the import library name into $newdlprefiles. + # We recover the dlopen module name by 'saving' the la file + # name in a special purpose variable, and (later) extracting the + # dlname from the la file. + if test -n "$dlname"; then + func_tr_sh "$dir/$linklib" + eval "libfile_$func_tr_sh_result=\$abs_ladir/\$laname" + func_append newdlprefiles " $dir/$linklib" + else + func_append newdlprefiles " $dir/$old_library" + # Keep a list of preopened convenience libraries to check + # that they are being used correctly in the link pass. + test -z "$libdir" && \ + func_append dlpreconveniencelibs " $dir/$old_library" + fi + ;; + * ) + # Prefer using a static library (so that no silly _DYNAMIC symbols + # are required to link). + if test -n "$old_library"; then + func_append newdlprefiles " $dir/$old_library" + # Keep a list of preopened convenience libraries to check + # that they are being used correctly in the link pass. + test -z "$libdir" && \ + func_append dlpreconveniencelibs " $dir/$old_library" + # Otherwise, use the dlname, so that lt_dlopen finds it. + elif test -n "$dlname"; then + func_append newdlprefiles " $dir/$dlname" + else + func_append newdlprefiles " $dir/$linklib" + fi + ;; + esac + fi # $pass = dlpreopen + + if test -z "$libdir"; then + # Link the convenience library + if test lib = "$linkmode"; then + deplibs="$dir/$old_library $deplibs" + elif test prog,link = "$linkmode,$pass"; then + compile_deplibs="$dir/$old_library $compile_deplibs" + finalize_deplibs="$dir/$old_library $finalize_deplibs" + else + deplibs="$lib $deplibs" # used for prog,scan pass + fi + continue + fi + + + if test prog = "$linkmode" && test link != "$pass"; then + func_append newlib_search_path " $ladir" + deplibs="$lib $deplibs" + + linkalldeplibs=false + if test no != "$link_all_deplibs" || test -z "$library_names" || + test no = "$build_libtool_libs"; then + linkalldeplibs=: + fi + + tmp_libs= + for deplib in $dependency_libs; do + case $deplib in + -L*) func_stripname '-L' '' "$deplib" + func_resolve_sysroot "$func_stripname_result" + func_append newlib_search_path " $func_resolve_sysroot_result" + ;; + esac + # Need to link against all dependency_libs? + if $linkalldeplibs; then + deplibs="$deplib $deplibs" + else + # Need to hardcode shared library paths + # or/and link against static libraries + newdependency_libs="$deplib $newdependency_libs" + fi + if $opt_preserve_dup_deps; then + case "$tmp_libs " in + *" $deplib "*) func_append specialdeplibs " $deplib" ;; + esac + fi + func_append tmp_libs " $deplib" + done # for deplib + continue + fi # $linkmode = prog... + + if test prog,link = "$linkmode,$pass"; then + if test -n "$library_names" && + { { test no = "$prefer_static_libs" || + test built,yes = "$prefer_static_libs,$installed"; } || + test -z "$old_library"; }; then + # We need to hardcode the library path + if test -n "$shlibpath_var" && test -z "$avoidtemprpath"; then + # Make sure the rpath contains only unique directories. + case $temp_rpath: in + *"$absdir:"*) ;; + *) func_append temp_rpath "$absdir:" ;; + esac + fi + + # Hardcode the library path. + # Skip directories that are in the system default run-time + # search path. + case " $sys_lib_dlsearch_path " in + *" $absdir "*) ;; + *) + case "$compile_rpath " in + *" $absdir "*) ;; + *) func_append compile_rpath " $absdir" ;; + esac + ;; + esac + case " $sys_lib_dlsearch_path " in + *" $libdir "*) ;; + *) + case "$finalize_rpath " in + *" $libdir "*) ;; + *) func_append finalize_rpath " $libdir" ;; + esac + ;; + esac + fi # $linkmode,$pass = prog,link... + + if $alldeplibs && + { test pass_all = "$deplibs_check_method" || + { test yes = "$build_libtool_libs" && + test -n "$library_names"; }; }; then + # We only need to search for static libraries + continue + fi + fi + + link_static=no # Whether the deplib will be linked statically + use_static_libs=$prefer_static_libs + if test built = "$use_static_libs" && test yes = "$installed"; then + use_static_libs=no + fi + if test -n "$library_names" && + { test no = "$use_static_libs" || test -z "$old_library"; }; then + case $host in + *cygwin* | *mingw* | *cegcc* | *os2*) + # No point in relinking DLLs because paths are not encoded + func_append notinst_deplibs " $lib" + need_relink=no + ;; + *) + if test no = "$installed"; then + func_append notinst_deplibs " $lib" + need_relink=yes + fi + ;; + esac + # This is a shared library + + # Warn about portability, can't link against -module's on some + # systems (darwin). Don't bleat about dlopened modules though! + dlopenmodule= + for dlpremoduletest in $dlprefiles; do + if test "X$dlpremoduletest" = "X$lib"; then + dlopenmodule=$dlpremoduletest + break + fi + done + if test -z "$dlopenmodule" && test yes = "$shouldnotlink" && test link = "$pass"; then + echo + if test prog = "$linkmode"; then + $ECHO "*** Warning: Linking the executable $output against the loadable module" + else + $ECHO "*** Warning: Linking the shared library $output against the loadable module" + fi + $ECHO "*** $linklib is not portable!" + fi + if test lib = "$linkmode" && + test yes = "$hardcode_into_libs"; then + # Hardcode the library path. + # Skip directories that are in the system default run-time + # search path. + case " $sys_lib_dlsearch_path " in + *" $absdir "*) ;; + *) + case "$compile_rpath " in + *" $absdir "*) ;; + *) func_append compile_rpath " $absdir" ;; + esac + ;; + esac + case " $sys_lib_dlsearch_path " in + *" $libdir "*) ;; + *) + case "$finalize_rpath " in + *" $libdir "*) ;; + *) func_append finalize_rpath " $libdir" ;; + esac + ;; + esac + fi + + if test -n "$old_archive_from_expsyms_cmds"; then + # figure out the soname + set dummy $library_names + shift + realname=$1 + shift + libname=`eval "\\$ECHO \"$libname_spec\""` + # use dlname if we got it. it's perfectly good, no? + if test -n "$dlname"; then + soname=$dlname + elif test -n "$soname_spec"; then + # bleh windows + case $host in + *cygwin* | mingw* | *cegcc* | *os2*) + func_arith $current - $age + major=$func_arith_result + versuffix=-$major + ;; + esac + eval soname=\"$soname_spec\" + else + soname=$realname + fi + + # Make a new name for the extract_expsyms_cmds to use + soroot=$soname + func_basename "$soroot" + soname=$func_basename_result + func_stripname 'lib' '.dll' "$soname" + newlib=libimp-$func_stripname_result.a + + # If the library has no export list, then create one now + if test -f "$output_objdir/$soname-def"; then : + else + func_verbose "extracting exported symbol list from '$soname'" + func_execute_cmds "$extract_expsyms_cmds" 'exit $?' + fi + + # Create $newlib + if test -f "$output_objdir/$newlib"; then :; else + func_verbose "generating import library for '$soname'" + func_execute_cmds "$old_archive_from_expsyms_cmds" 'exit $?' + fi + # make sure the library variables are pointing to the new library + dir=$output_objdir + linklib=$newlib + fi # test -n "$old_archive_from_expsyms_cmds" + + if test prog = "$linkmode" || test relink != "$opt_mode"; then + add_shlibpath= + add_dir= + add= + lib_linked=yes + case $hardcode_action in + immediate | unsupported) + if test no = "$hardcode_direct"; then + add=$dir/$linklib + case $host in + *-*-sco3.2v5.0.[024]*) add_dir=-L$dir ;; + *-*-sysv4*uw2*) add_dir=-L$dir ;; + *-*-sysv5OpenUNIX* | *-*-sysv5UnixWare7.[01].[10]* | \ + *-*-unixware7*) add_dir=-L$dir ;; + *-*-darwin* ) + # if the lib is a (non-dlopened) module then we cannot + # link against it, someone is ignoring the earlier warnings + if /usr/bin/file -L $add 2> /dev/null | + $GREP ": [^:]* bundle" >/dev/null; then + if test "X$dlopenmodule" != "X$lib"; then + $ECHO "*** Warning: lib $linklib is a module, not a shared library" + if test -z "$old_library"; then + echo + echo "*** And there doesn't seem to be a static archive available" + echo "*** The link will probably fail, sorry" + else + add=$dir/$old_library + fi + elif test -n "$old_library"; then + add=$dir/$old_library + fi + fi + esac + elif test no = "$hardcode_minus_L"; then + case $host in + *-*-sunos*) add_shlibpath=$dir ;; + esac + add_dir=-L$dir + add=-l$name + elif test no = "$hardcode_shlibpath_var"; then + add_shlibpath=$dir + add=-l$name + else + lib_linked=no + fi + ;; + relink) + if test yes = "$hardcode_direct" && + test no = "$hardcode_direct_absolute"; then + add=$dir/$linklib + elif test yes = "$hardcode_minus_L"; then + add_dir=-L$absdir + # Try looking first in the location we're being installed to. + if test -n "$inst_prefix_dir"; then + case $libdir in + [\\/]*) + func_append add_dir " -L$inst_prefix_dir$libdir" + ;; + esac + fi + add=-l$name + elif test yes = "$hardcode_shlibpath_var"; then + add_shlibpath=$dir + add=-l$name + else + lib_linked=no + fi + ;; + *) lib_linked=no ;; + esac + + if test yes != "$lib_linked"; then + func_fatal_configuration "unsupported hardcode properties" + fi + + if test -n "$add_shlibpath"; then + case :$compile_shlibpath: in + *":$add_shlibpath:"*) ;; + *) func_append compile_shlibpath "$add_shlibpath:" ;; + esac + fi + if test prog = "$linkmode"; then + test -n "$add_dir" && compile_deplibs="$add_dir $compile_deplibs" + test -n "$add" && compile_deplibs="$add $compile_deplibs" + else + test -n "$add_dir" && deplibs="$add_dir $deplibs" + test -n "$add" && deplibs="$add $deplibs" + if test yes != "$hardcode_direct" && + test yes != "$hardcode_minus_L" && + test yes = "$hardcode_shlibpath_var"; then + case :$finalize_shlibpath: in + *":$libdir:"*) ;; + *) func_append finalize_shlibpath "$libdir:" ;; + esac + fi + fi + fi + + if test prog = "$linkmode" || test relink = "$opt_mode"; then + add_shlibpath= + add_dir= + add= + # Finalize command for both is simple: just hardcode it. + if test yes = "$hardcode_direct" && + test no = "$hardcode_direct_absolute"; then + add=$libdir/$linklib + elif test yes = "$hardcode_minus_L"; then + add_dir=-L$libdir + add=-l$name + elif test yes = "$hardcode_shlibpath_var"; then + case :$finalize_shlibpath: in + *":$libdir:"*) ;; + *) func_append finalize_shlibpath "$libdir:" ;; + esac + add=-l$name + elif test yes = "$hardcode_automatic"; then + if test -n "$inst_prefix_dir" && + test -f "$inst_prefix_dir$libdir/$linklib"; then + add=$inst_prefix_dir$libdir/$linklib + else + add=$libdir/$linklib + fi + else + # We cannot seem to hardcode it, guess we'll fake it. + add_dir=-L$libdir + # Try looking first in the location we're being installed to. + if test -n "$inst_prefix_dir"; then + case $libdir in + [\\/]*) + func_append add_dir " -L$inst_prefix_dir$libdir" + ;; + esac + fi + add=-l$name + fi + + if test prog = "$linkmode"; then + test -n "$add_dir" && finalize_deplibs="$add_dir $finalize_deplibs" + test -n "$add" && finalize_deplibs="$add $finalize_deplibs" + else + test -n "$add_dir" && deplibs="$add_dir $deplibs" + test -n "$add" && deplibs="$add $deplibs" + fi + fi + elif test prog = "$linkmode"; then + # Here we assume that one of hardcode_direct or hardcode_minus_L + # is not unsupported. This is valid on all known static and + # shared platforms. + if test unsupported != "$hardcode_direct"; then + test -n "$old_library" && linklib=$old_library + compile_deplibs="$dir/$linklib $compile_deplibs" + finalize_deplibs="$dir/$linklib $finalize_deplibs" + else + compile_deplibs="-l$name -L$dir $compile_deplibs" + finalize_deplibs="-l$name -L$dir $finalize_deplibs" + fi + elif test yes = "$build_libtool_libs"; then + # Not a shared library + if test pass_all != "$deplibs_check_method"; then + # We're trying link a shared library against a static one + # but the system doesn't support it. + + # Just print a warning and add the library to dependency_libs so + # that the program can be linked against the static library. + echo + $ECHO "*** Warning: This system cannot link to static lib archive $lib." + echo "*** I have the capability to make that library automatically link in when" + echo "*** you link to this library. But I can only do this if you have a" + echo "*** shared version of the library, which you do not appear to have." + if test yes = "$module"; then + echo "*** But as you try to build a module library, libtool will still create " + echo "*** a static module, that should work as long as the dlopening application" + echo "*** is linked with the -dlopen flag to resolve symbols at runtime." + if test -z "$global_symbol_pipe"; then + echo + echo "*** However, this would only work if libtool was able to extract symbol" + echo "*** lists from a program, using 'nm' or equivalent, but libtool could" + echo "*** not find such a program. So, this module is probably useless." + echo "*** 'nm' from GNU binutils and a full rebuild may help." + fi + if test no = "$build_old_libs"; then + build_libtool_libs=module + build_old_libs=yes + else + build_libtool_libs=no + fi + fi + else + deplibs="$dir/$old_library $deplibs" + link_static=yes + fi + fi # link shared/static library? + + if test lib = "$linkmode"; then + if test -n "$dependency_libs" && + { test yes != "$hardcode_into_libs" || + test yes = "$build_old_libs" || + test yes = "$link_static"; }; then + # Extract -R from dependency_libs + temp_deplibs= + for libdir in $dependency_libs; do + case $libdir in + -R*) func_stripname '-R' '' "$libdir" + temp_xrpath=$func_stripname_result + case " $xrpath " in + *" $temp_xrpath "*) ;; + *) func_append xrpath " $temp_xrpath";; + esac;; + *) func_append temp_deplibs " $libdir";; + esac + done + dependency_libs=$temp_deplibs + fi + + func_append newlib_search_path " $absdir" + # Link against this library + test no = "$link_static" && newdependency_libs="$abs_ladir/$laname $newdependency_libs" + # ... and its dependency_libs + tmp_libs= + for deplib in $dependency_libs; do + newdependency_libs="$deplib $newdependency_libs" + case $deplib in + -L*) func_stripname '-L' '' "$deplib" + func_resolve_sysroot "$func_stripname_result";; + *) func_resolve_sysroot "$deplib" ;; + esac + if $opt_preserve_dup_deps; then + case "$tmp_libs " in + *" $func_resolve_sysroot_result "*) + func_append specialdeplibs " $func_resolve_sysroot_result" ;; + esac + fi + func_append tmp_libs " $func_resolve_sysroot_result" + done + + if test no != "$link_all_deplibs"; then + # Add the search paths of all dependency libraries + for deplib in $dependency_libs; do + path= + case $deplib in + -L*) path=$deplib ;; + *.la) + func_resolve_sysroot "$deplib" + deplib=$func_resolve_sysroot_result + func_dirname "$deplib" "" "." + dir=$func_dirname_result + # We need an absolute path. + case $dir in + [\\/]* | [A-Za-z]:[\\/]*) absdir=$dir ;; + *) + absdir=`cd "$dir" && pwd` + if test -z "$absdir"; then + func_warning "cannot determine absolute directory name of '$dir'" + absdir=$dir + fi + ;; + esac + if $GREP "^installed=no" $deplib > /dev/null; then + case $host in + *-*-darwin*) + depdepl= + eval deplibrary_names=`$SED -n -e 's/^library_names=\(.*\)$/\1/p' $deplib` + if test -n "$deplibrary_names"; then + for tmp in $deplibrary_names; do + depdepl=$tmp + done + if test -f "$absdir/$objdir/$depdepl"; then + depdepl=$absdir/$objdir/$depdepl + darwin_install_name=`$OTOOL -L $depdepl | awk '{if (NR == 2) {print $1;exit}}'` + if test -z "$darwin_install_name"; then + darwin_install_name=`$OTOOL64 -L $depdepl | awk '{if (NR == 2) {print $1;exit}}'` + fi + func_append compiler_flags " $wl-dylib_file $wl$darwin_install_name:$depdepl" + func_append linker_flags " -dylib_file $darwin_install_name:$depdepl" + path= + fi + fi + ;; + *) + path=-L$absdir/$objdir + ;; + esac + else + eval libdir=`$SED -n -e 's/^libdir=\(.*\)$/\1/p' $deplib` + test -z "$libdir" && \ + func_fatal_error "'$deplib' is not a valid libtool archive" + test "$absdir" != "$libdir" && \ + func_warning "'$deplib' seems to be moved" + + path=-L$absdir + fi + ;; + esac + case " $deplibs " in + *" $path "*) ;; + *) deplibs="$path $deplibs" ;; + esac + done + fi # link_all_deplibs != no + fi # linkmode = lib + done # for deplib in $libs + if test link = "$pass"; then + if test prog = "$linkmode"; then + compile_deplibs="$new_inherited_linker_flags $compile_deplibs" + finalize_deplibs="$new_inherited_linker_flags $finalize_deplibs" + else + compiler_flags="$compiler_flags "`$ECHO " $new_inherited_linker_flags" | $SED 's% \([^ $]*\).ltframework% -framework \1%g'` + fi + fi + dependency_libs=$newdependency_libs + if test dlpreopen = "$pass"; then + # Link the dlpreopened libraries before other libraries + for deplib in $save_deplibs; do + deplibs="$deplib $deplibs" + done + fi + if test dlopen != "$pass"; then + test conv = "$pass" || { + # Make sure lib_search_path contains only unique directories. + lib_search_path= + for dir in $newlib_search_path; do + case "$lib_search_path " in + *" $dir "*) ;; + *) func_append lib_search_path " $dir" ;; + esac + done + newlib_search_path= + } + + if test prog,link = "$linkmode,$pass"; then + vars="compile_deplibs finalize_deplibs" + else + vars=deplibs + fi + for var in $vars dependency_libs; do + # Add libraries to $var in reverse order + eval tmp_libs=\"\$$var\" + new_libs= + for deplib in $tmp_libs; do + # FIXME: Pedantically, this is the right thing to do, so + # that some nasty dependency loop isn't accidentally + # broken: + #new_libs="$deplib $new_libs" + # Pragmatically, this seems to cause very few problems in + # practice: + case $deplib in + -L*) new_libs="$deplib $new_libs" ;; + -R*) ;; + *) + # And here is the reason: when a library appears more + # than once as an explicit dependence of a library, or + # is implicitly linked in more than once by the + # compiler, it is considered special, and multiple + # occurrences thereof are not removed. Compare this + # with having the same library being listed as a + # dependency of multiple other libraries: in this case, + # we know (pedantically, we assume) the library does not + # need to be listed more than once, so we keep only the + # last copy. This is not always right, but it is rare + # enough that we require users that really mean to play + # such unportable linking tricks to link the library + # using -Wl,-lname, so that libtool does not consider it + # for duplicate removal. + case " $specialdeplibs " in + *" $deplib "*) new_libs="$deplib $new_libs" ;; + *) + case " $new_libs " in + *" $deplib "*) ;; + *) new_libs="$deplib $new_libs" ;; + esac + ;; + esac + ;; + esac + done + tmp_libs= + for deplib in $new_libs; do + case $deplib in + -L*) + case " $tmp_libs " in + *" $deplib "*) ;; + *) func_append tmp_libs " $deplib" ;; + esac + ;; + *) func_append tmp_libs " $deplib" ;; + esac + done + eval $var=\"$tmp_libs\" + done # for var + fi + + # Add Sun CC postdeps if required: + test CXX = "$tagname" && { + case $host_os in + linux*) + case `$CC -V 2>&1 | $SED 5q` in + *Sun\ C*) # Sun C++ 5.9 + func_suncc_cstd_abi + + if test no != "$suncc_use_cstd_abi"; then + func_append postdeps ' -library=Cstd -library=Crun' + fi + ;; + esac + ;; + + solaris*) + func_cc_basename "$CC" + case $func_cc_basename_result in + CC* | sunCC*) + func_suncc_cstd_abi + + if test no != "$suncc_use_cstd_abi"; then + func_append postdeps ' -library=Cstd -library=Crun' + fi + ;; + esac + ;; + esac + } + + # Last step: remove runtime libs from dependency_libs + # (they stay in deplibs) + tmp_libs= + for i in $dependency_libs; do + case " $predeps $postdeps $compiler_lib_search_path " in + *" $i "*) + i= + ;; + esac + if test -n "$i"; then + func_append tmp_libs " $i" + fi + done + dependency_libs=$tmp_libs + done # for pass + if test prog = "$linkmode"; then + dlfiles=$newdlfiles + fi + if test prog = "$linkmode" || test lib = "$linkmode"; then + dlprefiles=$newdlprefiles + fi + + case $linkmode in + oldlib) + if test -n "$dlfiles$dlprefiles" || test no != "$dlself"; then + func_warning "'-dlopen' is ignored for archives" + fi + + case " $deplibs" in + *\ -l* | *\ -L*) + func_warning "'-l' and '-L' are ignored for archives" ;; + esac + + test -n "$rpath" && \ + func_warning "'-rpath' is ignored for archives" + + test -n "$xrpath" && \ + func_warning "'-R' is ignored for archives" + + test -n "$vinfo" && \ + func_warning "'-version-info/-version-number' is ignored for archives" + + test -n "$release" && \ + func_warning "'-release' is ignored for archives" + + test -n "$export_symbols$export_symbols_regex" && \ + func_warning "'-export-symbols' is ignored for archives" + + # Now set the variables for building old libraries. + build_libtool_libs=no + oldlibs=$output + func_append objs "$old_deplibs" + ;; + + lib) + # Make sure we only generate libraries of the form 'libNAME.la'. + case $outputname in + lib*) + func_stripname 'lib' '.la' "$outputname" + name=$func_stripname_result + eval shared_ext=\"$shrext_cmds\" + eval libname=\"$libname_spec\" + ;; + *) + test no = "$module" \ + && func_fatal_help "libtool library '$output' must begin with 'lib'" + + if test no != "$need_lib_prefix"; then + # Add the "lib" prefix for modules if required + func_stripname '' '.la' "$outputname" + name=$func_stripname_result + eval shared_ext=\"$shrext_cmds\" + eval libname=\"$libname_spec\" + else + func_stripname '' '.la' "$outputname" + libname=$func_stripname_result + fi + ;; + esac + + if test -n "$objs"; then + if test pass_all != "$deplibs_check_method"; then + func_fatal_error "cannot build libtool library '$output' from non-libtool objects on this host:$objs" + else + echo + $ECHO "*** Warning: Linking the shared library $output against the non-libtool" + $ECHO "*** objects $objs is not portable!" + func_append libobjs " $objs" + fi + fi + + test no = "$dlself" \ + || func_warning "'-dlopen self' is ignored for libtool libraries" + + set dummy $rpath + shift + test 1 -lt "$#" \ + && func_warning "ignoring multiple '-rpath's for a libtool library" + + install_libdir=$1 + + oldlibs= + if test -z "$rpath"; then + if test yes = "$build_libtool_libs"; then + # Building a libtool convenience library. + # Some compilers have problems with a '.al' extension so + # convenience libraries should have the same extension an + # archive normally would. + oldlibs="$output_objdir/$libname.$libext $oldlibs" + build_libtool_libs=convenience + build_old_libs=yes + fi + + test -n "$vinfo" && \ + func_warning "'-version-info/-version-number' is ignored for convenience libraries" + + test -n "$release" && \ + func_warning "'-release' is ignored for convenience libraries" + else + + # Parse the version information argument. + save_ifs=$IFS; IFS=: + set dummy $vinfo 0 0 0 + shift + IFS=$save_ifs + + test -n "$7" && \ + func_fatal_help "too many parameters to '-version-info'" + + # convert absolute version numbers to libtool ages + # this retains compatibility with .la files and attempts + # to make the code below a bit more comprehensible + + case $vinfo_number in + yes) + number_major=$1 + number_minor=$2 + number_revision=$3 + # + # There are really only two kinds -- those that + # use the current revision as the major version + # and those that subtract age and use age as + # a minor version. But, then there is irix + # that has an extra 1 added just for fun + # + case $version_type in + # correct linux to gnu/linux during the next big refactor + darwin|freebsd-elf|linux|midnightbsd-elf|osf|windows|none) + func_arith $number_major + $number_minor + current=$func_arith_result + age=$number_minor + revision=$number_revision + ;; + freebsd-aout|qnx|sunos) + current=$number_major + revision=$number_minor + age=0 + ;; + irix|nonstopux) + func_arith $number_major + $number_minor + current=$func_arith_result + age=$number_minor + revision=$number_minor + lt_irix_increment=no + ;; + esac + ;; + no) + current=$1 + revision=$2 + age=$3 + ;; + esac + + # Check that each of the things are valid numbers. + case $current in + 0|[1-9]|[1-9][0-9]|[1-9][0-9][0-9]|[1-9][0-9][0-9][0-9]|[1-9][0-9][0-9][0-9][0-9]) ;; + *) + func_error "CURRENT '$current' must be a nonnegative integer" + func_fatal_error "'$vinfo' is not valid version information" + ;; + esac + + case $revision in + 0|[1-9]|[1-9][0-9]|[1-9][0-9][0-9]|[1-9][0-9][0-9][0-9]|[1-9][0-9][0-9][0-9][0-9]) ;; + *) + func_error "REVISION '$revision' must be a nonnegative integer" + func_fatal_error "'$vinfo' is not valid version information" + ;; + esac + + case $age in + 0|[1-9]|[1-9][0-9]|[1-9][0-9][0-9]|[1-9][0-9][0-9][0-9]|[1-9][0-9][0-9][0-9][0-9]) ;; + *) + func_error "AGE '$age' must be a nonnegative integer" + func_fatal_error "'$vinfo' is not valid version information" + ;; + esac + + if test "$age" -gt "$current"; then + func_error "AGE '$age' is greater than the current interface number '$current'" + func_fatal_error "'$vinfo' is not valid version information" + fi + + # Calculate the version variables. + major= + versuffix= + verstring= + case $version_type in + none) ;; + + darwin) + # Like Linux, but with the current version available in + # verstring for coding it into the library header + func_arith $current - $age + major=.$func_arith_result + versuffix=$major.$age.$revision + # Darwin ld doesn't like 0 for these options... + func_arith $current + 1 + minor_current=$func_arith_result + xlcverstring="$wl-compatibility_version $wl$minor_current $wl-current_version $wl$minor_current.$revision" + verstring="-compatibility_version $minor_current -current_version $minor_current.$revision" + # On Darwin other compilers + case $CC in + nagfor*) + verstring="$wl-compatibility_version $wl$minor_current $wl-current_version $wl$minor_current.$revision" + ;; + *) + verstring="-compatibility_version $minor_current -current_version $minor_current.$revision" + ;; + esac + ;; + + freebsd-aout) + major=.$current + versuffix=.$current.$revision + ;; + + freebsd-elf | midnightbsd-elf) + func_arith $current - $age + major=.$func_arith_result + versuffix=$major.$age.$revision + ;; + + irix | nonstopux) + if test no = "$lt_irix_increment"; then + func_arith $current - $age + else + func_arith $current - $age + 1 + fi + major=$func_arith_result + + case $version_type in + nonstopux) verstring_prefix=nonstopux ;; + *) verstring_prefix=sgi ;; + esac + verstring=$verstring_prefix$major.$revision + + # Add in all the interfaces that we are compatible with. + loop=$revision + while test 0 -ne "$loop"; do + func_arith $revision - $loop + iface=$func_arith_result + func_arith $loop - 1 + loop=$func_arith_result + verstring=$verstring_prefix$major.$iface:$verstring + done + + # Before this point, $major must not contain '.'. + major=.$major + versuffix=$major.$revision + ;; + + linux) # correct to gnu/linux during the next big refactor + func_arith $current - $age + major=.$func_arith_result + versuffix=$major.$age.$revision + ;; + + osf) + func_arith $current - $age + major=.$func_arith_result + versuffix=.$current.$age.$revision + verstring=$current.$age.$revision + + # Add in all the interfaces that we are compatible with. + loop=$age + while test 0 -ne "$loop"; do + func_arith $current - $loop + iface=$func_arith_result + func_arith $loop - 1 + loop=$func_arith_result + verstring=$verstring:$iface.0 + done + + # Make executables depend on our current version. + func_append verstring ":$current.0" + ;; + + qnx) + major=.$current + versuffix=.$current + ;; + + sco) + major=.$current + versuffix=.$current + ;; + + sunos) + major=.$current + versuffix=.$current.$revision + ;; + + windows) + # Use '-' rather than '.', since we only want one + # extension on DOS 8.3 file systems. + func_arith $current - $age + major=$func_arith_result + versuffix=-$major + ;; + + *) + func_fatal_configuration "unknown library version type '$version_type'" + ;; + esac + + # Clear the version info if we defaulted, and they specified a release. + if test -z "$vinfo" && test -n "$release"; then + major= + case $version_type in + darwin) + # we can't check for "0.0" in archive_cmds due to quoting + # problems, so we reset it completely + verstring= + ;; + *) + verstring=0.0 + ;; + esac + if test no = "$need_version"; then + versuffix= + else + versuffix=.0.0 + fi + fi + + # Remove version info from name if versioning should be avoided + if test yes,no = "$avoid_version,$need_version"; then + major= + versuffix= + verstring= + fi + + # Check to see if the archive will have undefined symbols. + if test yes = "$allow_undefined"; then + if test unsupported = "$allow_undefined_flag"; then + if test yes = "$build_old_libs"; then + func_warning "undefined symbols not allowed in $host shared libraries; building static only" + build_libtool_libs=no + else + func_fatal_error "can't build $host shared library unless -no-undefined is specified" + fi + fi + else + # Don't allow undefined symbols. + allow_undefined_flag=$no_undefined_flag + fi + + fi + + func_generate_dlsyms "$libname" "$libname" : + func_append libobjs " $symfileobj" + test " " = "$libobjs" && libobjs= + + if test relink != "$opt_mode"; then + # Remove our outputs, but don't remove object files since they + # may have been created when compiling PIC objects. + removelist= + tempremovelist=`$ECHO "$output_objdir/*"` + for p in $tempremovelist; do + case $p in + *.$objext | *.gcno) + ;; + $output_objdir/$outputname | $output_objdir/$libname.* | $output_objdir/$libname$release.*) + if test -n "$precious_files_regex"; then + if $ECHO "$p" | $EGREP -e "$precious_files_regex" >/dev/null 2>&1 + then + continue + fi + fi + func_append removelist " $p" + ;; + *) ;; + esac + done + test -n "$removelist" && \ + func_show_eval "${RM}r \$removelist" + fi + + # Now set the variables for building old libraries. + if test yes = "$build_old_libs" && test convenience != "$build_libtool_libs"; then + func_append oldlibs " $output_objdir/$libname.$libext" + + # Transform .lo files to .o files. + oldobjs="$objs "`$ECHO "$libobjs" | $SP2NL | $SED "/\.$libext$/d; $lo2o" | $NL2SP` + fi + + # Eliminate all temporary directories. + #for path in $notinst_path; do + # lib_search_path=`$ECHO "$lib_search_path " | $SED "s% $path % %g"` + # deplibs=`$ECHO "$deplibs " | $SED "s% -L$path % %g"` + # dependency_libs=`$ECHO "$dependency_libs " | $SED "s% -L$path % %g"` + #done + + if test -n "$xrpath"; then + # If the user specified any rpath flags, then add them. + temp_xrpath= + for libdir in $xrpath; do + func_replace_sysroot "$libdir" + func_append temp_xrpath " -R$func_replace_sysroot_result" + case "$finalize_rpath " in + *" $libdir "*) ;; + *) func_append finalize_rpath " $libdir" ;; + esac + done + if test yes != "$hardcode_into_libs" || test yes = "$build_old_libs"; then + dependency_libs="$temp_xrpath $dependency_libs" + fi + fi + + # Make sure dlfiles contains only unique files that won't be dlpreopened + old_dlfiles=$dlfiles + dlfiles= + for lib in $old_dlfiles; do + case " $dlprefiles $dlfiles " in + *" $lib "*) ;; + *) func_append dlfiles " $lib" ;; + esac + done + + # Make sure dlprefiles contains only unique files + old_dlprefiles=$dlprefiles + dlprefiles= + for lib in $old_dlprefiles; do + case "$dlprefiles " in + *" $lib "*) ;; + *) func_append dlprefiles " $lib" ;; + esac + done + + if test yes = "$build_libtool_libs"; then + if test -n "$rpath"; then + case $host in + *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2* | *-*-beos* | *-cegcc* | *-*-haiku*) + # these systems don't actually have a c library (as such)! + ;; + *-*-rhapsody* | *-*-darwin1.[012]) + # Rhapsody C library is in the System framework + func_append deplibs " System.ltframework" + ;; + *-*-netbsd*) + # Don't link with libc until the a.out ld.so is fixed. + ;; + *-*-openbsd* | *-*-freebsd* | *-*-dragonfly* | *-*-midnightbsd*) + # Do not include libc due to us having libc/libc_r. + ;; + *-*-sco3.2v5* | *-*-sco5v6*) + # Causes problems with __ctype + ;; + *-*-sysv4.2uw2* | *-*-sysv5* | *-*-unixware* | *-*-OpenUNIX*) + # Compiler inserts libc in the correct place for threads to work + ;; + *) + # Add libc to deplibs on all other systems if necessary. + if test yes = "$build_libtool_need_lc"; then + func_append deplibs " -lc" + fi + ;; + esac + fi + + # Transform deplibs into only deplibs that can be linked in shared. + name_save=$name + libname_save=$libname + release_save=$release + versuffix_save=$versuffix + major_save=$major + # I'm not sure if I'm treating the release correctly. I think + # release should show up in the -l (ie -lgmp5) so we don't want to + # add it in twice. Is that correct? + release= + versuffix= + major= + newdeplibs= + droppeddeps=no + case $deplibs_check_method in + pass_all) + # Don't check for shared/static. Everything works. + # This might be a little naive. We might want to check + # whether the library exists or not. But this is on + # osf3 & osf4 and I'm not really sure... Just + # implementing what was already the behavior. + newdeplibs=$deplibs + ;; + test_compile) + # This code stresses the "libraries are programs" paradigm to its + # limits. Maybe even breaks it. We compile a program, linking it + # against the deplibs as a proxy for the library. Then we can check + # whether they linked in statically or dynamically with ldd. + $opt_dry_run || $RM conftest.c + cat > conftest.c </dev/null` + $nocaseglob + else + potential_libs=`ls $i/$libnameglob[.-]* 2>/dev/null` + fi + for potent_lib in $potential_libs; do + # Follow soft links. + if ls -lLd "$potent_lib" 2>/dev/null | + $GREP " -> " >/dev/null; then + continue + fi + # The statement above tries to avoid entering an + # endless loop below, in case of cyclic links. + # We might still enter an endless loop, since a link + # loop can be closed while we follow links, + # but so what? + potlib=$potent_lib + while test -h "$potlib" 2>/dev/null; do + potliblink=`ls -ld $potlib | $SED 's/.* -> //'` + case $potliblink in + [\\/]* | [A-Za-z]:[\\/]*) potlib=$potliblink;; + *) potlib=`$ECHO "$potlib" | $SED 's|[^/]*$||'`"$potliblink";; + esac + done + if eval $file_magic_cmd \"\$potlib\" 2>/dev/null | + $SED -e 10q | + $EGREP "$file_magic_regex" > /dev/null; then + func_append newdeplibs " $a_deplib" + a_deplib= + break 2 + fi + done + done + fi + if test -n "$a_deplib"; then + droppeddeps=yes + echo + $ECHO "*** Warning: linker path does not have real file for library $a_deplib." + echo "*** I have the capability to make that library automatically link in when" + echo "*** you link to this library. But I can only do this if you have a" + echo "*** shared version of the library, which you do not appear to have" + echo "*** because I did check the linker path looking for a file starting" + if test -z "$potlib"; then + $ECHO "*** with $libname but no candidates were found. (...for file magic test)" + else + $ECHO "*** with $libname and none of the candidates passed a file format test" + $ECHO "*** using a file magic. Last file checked: $potlib" + fi + fi + ;; + *) + # Add a -L argument. + func_append newdeplibs " $a_deplib" + ;; + esac + done # Gone through all deplibs. + ;; + match_pattern*) + set dummy $deplibs_check_method; shift + match_pattern_regex=`expr "$deplibs_check_method" : "$1 \(.*\)"` + for a_deplib in $deplibs; do + case $a_deplib in + -l*) + func_stripname -l '' "$a_deplib" + name=$func_stripname_result + if test yes = "$allow_libtool_libs_with_static_runtimes"; then + case " $predeps $postdeps " in + *" $a_deplib "*) + func_append newdeplibs " $a_deplib" + a_deplib= + ;; + esac + fi + if test -n "$a_deplib"; then + libname=`eval "\\$ECHO \"$libname_spec\""` + for i in $lib_search_path $sys_lib_search_path $shlib_search_path; do + potential_libs=`ls $i/$libname[.-]* 2>/dev/null` + for potent_lib in $potential_libs; do + potlib=$potent_lib # see symlink-check above in file_magic test + if eval "\$ECHO \"$potent_lib\"" 2>/dev/null | $SED 10q | \ + $EGREP "$match_pattern_regex" > /dev/null; then + func_append newdeplibs " $a_deplib" + a_deplib= + break 2 + fi + done + done + fi + if test -n "$a_deplib"; then + droppeddeps=yes + echo + $ECHO "*** Warning: linker path does not have real file for library $a_deplib." + echo "*** I have the capability to make that library automatically link in when" + echo "*** you link to this library. But I can only do this if you have a" + echo "*** shared version of the library, which you do not appear to have" + echo "*** because I did check the linker path looking for a file starting" + if test -z "$potlib"; then + $ECHO "*** with $libname but no candidates were found. (...for regex pattern test)" + else + $ECHO "*** with $libname and none of the candidates passed a file format test" + $ECHO "*** using a regex pattern. Last file checked: $potlib" + fi + fi + ;; + *) + # Add a -L argument. + func_append newdeplibs " $a_deplib" + ;; + esac + done # Gone through all deplibs. + ;; + none | unknown | *) + newdeplibs= + tmp_deplibs=`$ECHO " $deplibs" | $SED 's/ -lc$//; s/ -[LR][^ ]*//g'` + if test yes = "$allow_libtool_libs_with_static_runtimes"; then + for i in $predeps $postdeps; do + # can't use Xsed below, because $i might contain '/' + tmp_deplibs=`$ECHO " $tmp_deplibs" | $SED "s|$i||"` + done + fi + case $tmp_deplibs in + *[!\ \ ]*) + echo + if test none = "$deplibs_check_method"; then + echo "*** Warning: inter-library dependencies are not supported in this platform." + else + echo "*** Warning: inter-library dependencies are not known to be supported." + fi + echo "*** All declared inter-library dependencies are being dropped." + droppeddeps=yes + ;; + esac + ;; + esac + versuffix=$versuffix_save + major=$major_save + release=$release_save + libname=$libname_save + name=$name_save + + case $host in + *-*-rhapsody* | *-*-darwin1.[012]) + # On Rhapsody replace the C library with the System framework + newdeplibs=`$ECHO " $newdeplibs" | $SED 's/ -lc / System.ltframework /'` + ;; + esac + + if test yes = "$droppeddeps"; then + if test yes = "$module"; then + echo + echo "*** Warning: libtool could not satisfy all declared inter-library" + $ECHO "*** dependencies of module $libname. Therefore, libtool will create" + echo "*** a static module, that should work as long as the dlopening" + echo "*** application is linked with the -dlopen flag." + if test -z "$global_symbol_pipe"; then + echo + echo "*** However, this would only work if libtool was able to extract symbol" + echo "*** lists from a program, using 'nm' or equivalent, but libtool could" + echo "*** not find such a program. So, this module is probably useless." + echo "*** 'nm' from GNU binutils and a full rebuild may help." + fi + if test no = "$build_old_libs"; then + oldlibs=$output_objdir/$libname.$libext + build_libtool_libs=module + build_old_libs=yes + else + build_libtool_libs=no + fi + else + echo "*** The inter-library dependencies that have been dropped here will be" + echo "*** automatically added whenever a program is linked with this library" + echo "*** or is declared to -dlopen it." + + if test no = "$allow_undefined"; then + echo + echo "*** Since this library must not contain undefined symbols," + echo "*** because either the platform does not support them or" + echo "*** it was explicitly requested with -no-undefined," + echo "*** libtool will only create a static version of it." + if test no = "$build_old_libs"; then + oldlibs=$output_objdir/$libname.$libext + build_libtool_libs=module + build_old_libs=yes + else + build_libtool_libs=no + fi + fi + fi + fi + # Done checking deplibs! + deplibs=$newdeplibs + fi + # Time to change all our "foo.ltframework" stuff back to "-framework foo" + case $host in + *-*-darwin*) + newdeplibs=`$ECHO " $newdeplibs" | $SED 's% \([^ $]*\).ltframework% -framework \1%g'` + new_inherited_linker_flags=`$ECHO " $new_inherited_linker_flags" | $SED 's% \([^ $]*\).ltframework% -framework \1%g'` + deplibs=`$ECHO " $deplibs" | $SED 's% \([^ $]*\).ltframework% -framework \1%g'` + ;; + esac + + # move library search paths that coincide with paths to not yet + # installed libraries to the beginning of the library search list + new_libs= + for path in $notinst_path; do + case " $new_libs " in + *" -L$path/$objdir "*) ;; + *) + case " $deplibs " in + *" -L$path/$objdir "*) + func_append new_libs " -L$path/$objdir" ;; + esac + ;; + esac + done + for deplib in $deplibs; do + case $deplib in + -L*) + case " $new_libs " in + *" $deplib "*) ;; + *) func_append new_libs " $deplib" ;; + esac + ;; + *) func_append new_libs " $deplib" ;; + esac + done + deplibs=$new_libs + + # All the library-specific variables (install_libdir is set above). + library_names= + old_library= + dlname= + + # Test again, we may have decided not to build it any more + if test yes = "$build_libtool_libs"; then + # Remove $wl instances when linking with ld. + # FIXME: should test the right _cmds variable. + case $archive_cmds in + *\$LD\ *) wl= ;; + esac + if test yes = "$hardcode_into_libs"; then + # Hardcode the library paths + hardcode_libdirs= + dep_rpath= + rpath=$finalize_rpath + test relink = "$opt_mode" || rpath=$compile_rpath$rpath + for libdir in $rpath; do + if test -n "$hardcode_libdir_flag_spec"; then + if test -n "$hardcode_libdir_separator"; then + func_replace_sysroot "$libdir" + libdir=$func_replace_sysroot_result + if test -z "$hardcode_libdirs"; then + hardcode_libdirs=$libdir + else + # Just accumulate the unique libdirs. + case $hardcode_libdir_separator$hardcode_libdirs$hardcode_libdir_separator in + *"$hardcode_libdir_separator$libdir$hardcode_libdir_separator"*) + ;; + *) + func_append hardcode_libdirs "$hardcode_libdir_separator$libdir" + ;; + esac + fi + else + eval flag=\"$hardcode_libdir_flag_spec\" + func_append dep_rpath " $flag" + fi + elif test -n "$runpath_var"; then + case "$perm_rpath " in + *" $libdir "*) ;; + *) func_append perm_rpath " $libdir" ;; + esac + fi + done + # Substitute the hardcoded libdirs into the rpath. + if test -n "$hardcode_libdir_separator" && + test -n "$hardcode_libdirs"; then + libdir=$hardcode_libdirs + eval "dep_rpath=\"$hardcode_libdir_flag_spec\"" + fi + if test -n "$runpath_var" && test -n "$perm_rpath"; then + # We should set the runpath_var. + rpath= + for dir in $perm_rpath; do + func_append rpath "$dir:" + done + eval "$runpath_var='$rpath\$$runpath_var'; export $runpath_var" + fi + test -n "$dep_rpath" && deplibs="$dep_rpath $deplibs" + fi + + shlibpath=$finalize_shlibpath + test relink = "$opt_mode" || shlibpath=$compile_shlibpath$shlibpath + if test -n "$shlibpath"; then + eval "$shlibpath_var='$shlibpath\$$shlibpath_var'; export $shlibpath_var" + fi + + # Get the real and link names of the library. + eval shared_ext=\"$shrext_cmds\" + eval library_names=\"$library_names_spec\" + set dummy $library_names + shift + realname=$1 + shift + + if test -n "$soname_spec"; then + eval soname=\"$soname_spec\" + else + soname=$realname + fi + if test -z "$dlname"; then + dlname=$soname + fi + + lib=$output_objdir/$realname + linknames= + for link + do + func_append linknames " $link" + done + + # Use standard objects if they are pic + test -z "$pic_flag" && libobjs=`$ECHO "$libobjs" | $SP2NL | $SED "$lo2o" | $NL2SP` + test "X$libobjs" = "X " && libobjs= + + delfiles= + if test -n "$export_symbols" && test -n "$include_expsyms"; then + $opt_dry_run || cp "$export_symbols" "$output_objdir/$libname.uexp" + export_symbols=$output_objdir/$libname.uexp + func_append delfiles " $export_symbols" + fi + + orig_export_symbols= + case $host_os in + cygwin* | mingw* | cegcc*) + if test -n "$export_symbols" && test -z "$export_symbols_regex"; then + # exporting using user supplied symfile + func_dll_def_p "$export_symbols" || { + # and it's NOT already a .def file. Must figure out + # which of the given symbols are data symbols and tag + # them as such. So, trigger use of export_symbols_cmds. + # export_symbols gets reassigned inside the "prepare + # the list of exported symbols" if statement, so the + # include_expsyms logic still works. + orig_export_symbols=$export_symbols + export_symbols= + always_export_symbols=yes + } + fi + ;; + esac + + # Prepare the list of exported symbols + if test -z "$export_symbols"; then + if test yes = "$always_export_symbols" || test -n "$export_symbols_regex"; then + func_verbose "generating symbol list for '$libname.la'" + export_symbols=$output_objdir/$libname.exp + $opt_dry_run || $RM $export_symbols + cmds=$export_symbols_cmds + save_ifs=$IFS; IFS='~' + for cmd1 in $cmds; do + IFS=$save_ifs + # Take the normal branch if the nm_file_list_spec branch + # doesn't work or if tool conversion is not needed. + case $nm_file_list_spec~$to_tool_file_cmd in + *~func_convert_file_noop | *~func_convert_file_msys_to_w32 | ~*) + try_normal_branch=yes + eval cmd=\"$cmd1\" + func_len " $cmd" + len=$func_len_result + ;; + *) + try_normal_branch=no + ;; + esac + if test yes = "$try_normal_branch" \ + && { test "$len" -lt "$max_cmd_len" \ + || test "$max_cmd_len" -le -1; } + then + func_show_eval "$cmd" 'exit $?' + skipped_export=false + elif test -n "$nm_file_list_spec"; then + func_basename "$output" + output_la=$func_basename_result + save_libobjs=$libobjs + save_output=$output + output=$output_objdir/$output_la.nm + func_to_tool_file "$output" + libobjs=$nm_file_list_spec$func_to_tool_file_result + func_append delfiles " $output" + func_verbose "creating $NM input file list: $output" + for obj in $save_libobjs; do + func_to_tool_file "$obj" + $ECHO "$func_to_tool_file_result" + done > "$output" + eval cmd=\"$cmd1\" + func_show_eval "$cmd" 'exit $?' + output=$save_output + libobjs=$save_libobjs + skipped_export=false + else + # The command line is too long to execute in one step. + func_verbose "using reloadable object file for export list..." + skipped_export=: + # Break out early, otherwise skipped_export may be + # set to false by a later but shorter cmd. + break + fi + done + IFS=$save_ifs + if test -n "$export_symbols_regex" && test : != "$skipped_export"; then + func_show_eval '$EGREP -e "$export_symbols_regex" "$export_symbols" > "${export_symbols}T"' + func_show_eval '$MV "${export_symbols}T" "$export_symbols"' + fi + fi + fi + + if test -n "$export_symbols" && test -n "$include_expsyms"; then + tmp_export_symbols=$export_symbols + test -n "$orig_export_symbols" && tmp_export_symbols=$orig_export_symbols + $opt_dry_run || eval '$ECHO "$include_expsyms" | $SP2NL >> "$tmp_export_symbols"' + fi + + if test : != "$skipped_export" && test -n "$orig_export_symbols"; then + # The given exports_symbols file has to be filtered, so filter it. + func_verbose "filter symbol list for '$libname.la' to tag DATA exports" + # FIXME: $output_objdir/$libname.filter potentially contains lots of + # 's' commands, which not all seds can handle. GNU sed should be fine + # though. Also, the filter scales superlinearly with the number of + # global variables. join(1) would be nice here, but unfortunately + # isn't a blessed tool. + $opt_dry_run || $SED -e '/[ ,]DATA/!d;s,\(.*\)\([ \,].*\),s|^\1$|\1\2|,' < $export_symbols > $output_objdir/$libname.filter + func_append delfiles " $export_symbols $output_objdir/$libname.filter" + export_symbols=$output_objdir/$libname.def + $opt_dry_run || $SED -f $output_objdir/$libname.filter < $orig_export_symbols > $export_symbols + fi + + tmp_deplibs= + for test_deplib in $deplibs; do + case " $convenience " in + *" $test_deplib "*) ;; + *) + func_append tmp_deplibs " $test_deplib" + ;; + esac + done + deplibs=$tmp_deplibs + + if test -n "$convenience"; then + if test -n "$whole_archive_flag_spec" && + test yes = "$compiler_needs_object" && + test -z "$libobjs"; then + # extract the archives, so we have objects to list. + # TODO: could optimize this to just extract one archive. + whole_archive_flag_spec= + fi + if test -n "$whole_archive_flag_spec"; then + save_libobjs=$libobjs + eval libobjs=\"\$libobjs $whole_archive_flag_spec\" + test "X$libobjs" = "X " && libobjs= + else + gentop=$output_objdir/${outputname}x + func_append generated " $gentop" + + func_extract_archives $gentop $convenience + func_append libobjs " $func_extract_archives_result" + test "X$libobjs" = "X " && libobjs= + fi + fi + + if test yes = "$thread_safe" && test -n "$thread_safe_flag_spec"; then + eval flag=\"$thread_safe_flag_spec\" + func_append linker_flags " $flag" + fi + + # Make a backup of the uninstalled library when relinking + if test relink = "$opt_mode"; then + $opt_dry_run || eval '(cd $output_objdir && $RM ${realname}U && $MV $realname ${realname}U)' || exit $? + fi + + # Do each of the archive commands. + if test yes = "$module" && test -n "$module_cmds"; then + if test -n "$export_symbols" && test -n "$module_expsym_cmds"; then + eval test_cmds=\"$module_expsym_cmds\" + cmds=$module_expsym_cmds + else + eval test_cmds=\"$module_cmds\" + cmds=$module_cmds + fi + else + if test -n "$export_symbols" && test -n "$archive_expsym_cmds"; then + eval test_cmds=\"$archive_expsym_cmds\" + cmds=$archive_expsym_cmds + else + eval test_cmds=\"$archive_cmds\" + cmds=$archive_cmds + fi + fi + + if test : != "$skipped_export" && + func_len " $test_cmds" && + len=$func_len_result && + test "$len" -lt "$max_cmd_len" || test "$max_cmd_len" -le -1; then + : + else + # The command line is too long to link in one step, link piecewise + # or, if using GNU ld and skipped_export is not :, use a linker + # script. + + # Save the value of $output and $libobjs because we want to + # use them later. If we have whole_archive_flag_spec, we + # want to use save_libobjs as it was before + # whole_archive_flag_spec was expanded, because we can't + # assume the linker understands whole_archive_flag_spec. + # This may have to be revisited, in case too many + # convenience libraries get linked in and end up exceeding + # the spec. + if test -z "$convenience" || test -z "$whole_archive_flag_spec"; then + save_libobjs=$libobjs + fi + save_output=$output + func_basename "$output" + output_la=$func_basename_result + + # Clear the reloadable object creation command queue and + # initialize k to one. + test_cmds= + concat_cmds= + objlist= + last_robj= + k=1 + + if test -n "$save_libobjs" && test : != "$skipped_export" && test yes = "$with_gnu_ld"; then + output=$output_objdir/$output_la.lnkscript + func_verbose "creating GNU ld script: $output" + echo 'INPUT (' > $output + for obj in $save_libobjs + do + func_to_tool_file "$obj" + $ECHO "$func_to_tool_file_result" >> $output + done + echo ')' >> $output + func_append delfiles " $output" + func_to_tool_file "$output" + output=$func_to_tool_file_result + elif test -n "$save_libobjs" && test : != "$skipped_export" && test -n "$file_list_spec"; then + output=$output_objdir/$output_la.lnk + func_verbose "creating linker input file list: $output" + : > $output + set x $save_libobjs + shift + firstobj= + if test yes = "$compiler_needs_object"; then + firstobj="$1 " + shift + fi + for obj + do + func_to_tool_file "$obj" + $ECHO "$func_to_tool_file_result" >> $output + done + func_append delfiles " $output" + func_to_tool_file "$output" + output=$firstobj\"$file_list_spec$func_to_tool_file_result\" + else + if test -n "$save_libobjs"; then + func_verbose "creating reloadable object files..." + output=$output_objdir/$output_la-$k.$objext + eval test_cmds=\"$reload_cmds\" + func_len " $test_cmds" + len0=$func_len_result + len=$len0 + + # Loop over the list of objects to be linked. + for obj in $save_libobjs + do + func_len " $obj" + func_arith $len + $func_len_result + len=$func_arith_result + if test -z "$objlist" || + test "$len" -lt "$max_cmd_len"; then + func_append objlist " $obj" + else + # The command $test_cmds is almost too long, add a + # command to the queue. + if test 1 -eq "$k"; then + # The first file doesn't have a previous command to add. + reload_objs=$objlist + eval concat_cmds=\"$reload_cmds\" + else + # All subsequent reloadable object files will link in + # the last one created. + reload_objs="$objlist $last_robj" + eval concat_cmds=\"\$concat_cmds~$reload_cmds~\$RM $last_robj\" + fi + last_robj=$output_objdir/$output_la-$k.$objext + func_arith $k + 1 + k=$func_arith_result + output=$output_objdir/$output_la-$k.$objext + objlist=" $obj" + func_len " $last_robj" + func_arith $len0 + $func_len_result + len=$func_arith_result + fi + done + # Handle the remaining objects by creating one last + # reloadable object file. All subsequent reloadable object + # files will link in the last one created. + test -z "$concat_cmds" || concat_cmds=$concat_cmds~ + reload_objs="$objlist $last_robj" + eval concat_cmds=\"\$concat_cmds$reload_cmds\" + if test -n "$last_robj"; then + eval concat_cmds=\"\$concat_cmds~\$RM $last_robj\" + fi + func_append delfiles " $output" + + else + output= + fi + + ${skipped_export-false} && { + func_verbose "generating symbol list for '$libname.la'" + export_symbols=$output_objdir/$libname.exp + $opt_dry_run || $RM $export_symbols + libobjs=$output + # Append the command to create the export file. + test -z "$concat_cmds" || concat_cmds=$concat_cmds~ + eval concat_cmds=\"\$concat_cmds$export_symbols_cmds\" + if test -n "$last_robj"; then + eval concat_cmds=\"\$concat_cmds~\$RM $last_robj\" + fi + } + + test -n "$save_libobjs" && + func_verbose "creating a temporary reloadable object file: $output" + + # Loop through the commands generated above and execute them. + save_ifs=$IFS; IFS='~' + for cmd in $concat_cmds; do + IFS=$save_ifs + $opt_quiet || { + func_quote_arg expand,pretty "$cmd" + eval "func_echo $func_quote_arg_result" + } + $opt_dry_run || eval "$cmd" || { + lt_exit=$? + + # Restore the uninstalled library and exit + if test relink = "$opt_mode"; then + ( cd "$output_objdir" && \ + $RM "${realname}T" && \ + $MV "${realname}U" "$realname" ) + fi + + exit $lt_exit + } + done + IFS=$save_ifs + + if test -n "$export_symbols_regex" && ${skipped_export-false}; then + func_show_eval '$EGREP -e "$export_symbols_regex" "$export_symbols" > "${export_symbols}T"' + func_show_eval '$MV "${export_symbols}T" "$export_symbols"' + fi + fi + + ${skipped_export-false} && { + if test -n "$export_symbols" && test -n "$include_expsyms"; then + tmp_export_symbols=$export_symbols + test -n "$orig_export_symbols" && tmp_export_symbols=$orig_export_symbols + $opt_dry_run || eval '$ECHO "$include_expsyms" | $SP2NL >> "$tmp_export_symbols"' + fi + + if test -n "$orig_export_symbols"; then + # The given exports_symbols file has to be filtered, so filter it. + func_verbose "filter symbol list for '$libname.la' to tag DATA exports" + # FIXME: $output_objdir/$libname.filter potentially contains lots of + # 's' commands, which not all seds can handle. GNU sed should be fine + # though. Also, the filter scales superlinearly with the number of + # global variables. join(1) would be nice here, but unfortunately + # isn't a blessed tool. + $opt_dry_run || $SED -e '/[ ,]DATA/!d;s,\(.*\)\([ \,].*\),s|^\1$|\1\2|,' < $export_symbols > $output_objdir/$libname.filter + func_append delfiles " $export_symbols $output_objdir/$libname.filter" + export_symbols=$output_objdir/$libname.def + $opt_dry_run || $SED -f $output_objdir/$libname.filter < $orig_export_symbols > $export_symbols + fi + } + + libobjs=$output + # Restore the value of output. + output=$save_output + + if test -n "$convenience" && test -n "$whole_archive_flag_spec"; then + eval libobjs=\"\$libobjs $whole_archive_flag_spec\" + test "X$libobjs" = "X " && libobjs= + fi + # Expand the library linking commands again to reset the + # value of $libobjs for piecewise linking. + + # Do each of the archive commands. + if test yes = "$module" && test -n "$module_cmds"; then + if test -n "$export_symbols" && test -n "$module_expsym_cmds"; then + cmds=$module_expsym_cmds + else + cmds=$module_cmds + fi + else + if test -n "$export_symbols" && test -n "$archive_expsym_cmds"; then + cmds=$archive_expsym_cmds + else + cmds=$archive_cmds + fi + fi + fi + + if test -n "$delfiles"; then + # Append the command to remove temporary files to $cmds. + eval cmds=\"\$cmds~\$RM $delfiles\" + fi + + # Add any objects from preloaded convenience libraries + if test -n "$dlprefiles"; then + gentop=$output_objdir/${outputname}x + func_append generated " $gentop" + + func_extract_archives $gentop $dlprefiles + func_append libobjs " $func_extract_archives_result" + test "X$libobjs" = "X " && libobjs= + fi + + save_ifs=$IFS; IFS='~' + for cmd in $cmds; do + IFS=$sp$nl + eval cmd=\"$cmd\" + IFS=$save_ifs + $opt_quiet || { + func_quote_arg expand,pretty "$cmd" + eval "func_echo $func_quote_arg_result" + } + $opt_dry_run || eval "$cmd" || { + lt_exit=$? + + # Restore the uninstalled library and exit + if test relink = "$opt_mode"; then + ( cd "$output_objdir" && \ + $RM "${realname}T" && \ + $MV "${realname}U" "$realname" ) + fi + + exit $lt_exit + } + done + IFS=$save_ifs + + # Restore the uninstalled library and exit + if test relink = "$opt_mode"; then + $opt_dry_run || eval '(cd $output_objdir && $RM ${realname}T && $MV $realname ${realname}T && $MV ${realname}U $realname)' || exit $? + + if test -n "$convenience"; then + if test -z "$whole_archive_flag_spec"; then + func_show_eval '${RM}r "$gentop"' + fi + fi + + exit $EXIT_SUCCESS + fi + + # Create links to the real library. + for linkname in $linknames; do + if test "$realname" != "$linkname"; then + func_show_eval '(cd "$output_objdir" && $RM "$linkname" && $LN_S "$realname" "$linkname")' 'exit $?' + fi + done + + # If -module or -export-dynamic was specified, set the dlname. + if test yes = "$module" || test yes = "$export_dynamic"; then + # On all known operating systems, these are identical. + dlname=$soname + fi + fi + ;; + + obj) + if test -n "$dlfiles$dlprefiles" || test no != "$dlself"; then + func_warning "'-dlopen' is ignored for objects" + fi + + case " $deplibs" in + *\ -l* | *\ -L*) + func_warning "'-l' and '-L' are ignored for objects" ;; + esac + + test -n "$rpath" && \ + func_warning "'-rpath' is ignored for objects" + + test -n "$xrpath" && \ + func_warning "'-R' is ignored for objects" + + test -n "$vinfo" && \ + func_warning "'-version-info' is ignored for objects" + + test -n "$release" && \ + func_warning "'-release' is ignored for objects" + + case $output in + *.lo) + test -n "$objs$old_deplibs" && \ + func_fatal_error "cannot build library object '$output' from non-libtool objects" + + libobj=$output + func_lo2o "$libobj" + obj=$func_lo2o_result + ;; + *) + libobj= + obj=$output + ;; + esac + + # Delete the old objects. + $opt_dry_run || $RM $obj $libobj + + # Objects from convenience libraries. This assumes + # single-version convenience libraries. Whenever we create + # different ones for PIC/non-PIC, this we'll have to duplicate + # the extraction. + reload_conv_objs= + gentop= + # if reload_cmds runs $LD directly, get rid of -Wl from + # whole_archive_flag_spec and hope we can get by with turning comma + # into space. + case $reload_cmds in + *\$LD[\ \$]*) wl= ;; + esac + if test -n "$convenience"; then + if test -n "$whole_archive_flag_spec"; then + eval tmp_whole_archive_flags=\"$whole_archive_flag_spec\" + test -n "$wl" || tmp_whole_archive_flags=`$ECHO "$tmp_whole_archive_flags" | $SED 's|,| |g'` + reload_conv_objs=$reload_objs\ $tmp_whole_archive_flags + else + gentop=$output_objdir/${obj}x + func_append generated " $gentop" + + func_extract_archives $gentop $convenience + reload_conv_objs="$reload_objs $func_extract_archives_result" + fi + fi + + # If we're not building shared, we need to use non_pic_objs + test yes = "$build_libtool_libs" || libobjs=$non_pic_objects + + # Create the old-style object. + reload_objs=$objs$old_deplibs' '`$ECHO "$libobjs" | $SP2NL | $SED "/\.$libext$/d; /\.lib$/d; $lo2o" | $NL2SP`' '$reload_conv_objs + + output=$obj + func_execute_cmds "$reload_cmds" 'exit $?' + + # Exit if we aren't doing a library object file. + if test -z "$libobj"; then + if test -n "$gentop"; then + func_show_eval '${RM}r "$gentop"' + fi + + exit $EXIT_SUCCESS + fi + + test yes = "$build_libtool_libs" || { + if test -n "$gentop"; then + func_show_eval '${RM}r "$gentop"' + fi + + # Create an invalid libtool object if no PIC, so that we don't + # accidentally link it into a program. + # $show "echo timestamp > $libobj" + # $opt_dry_run || eval "echo timestamp > $libobj" || exit $? + exit $EXIT_SUCCESS + } + + if test -n "$pic_flag" || test default != "$pic_mode"; then + # Only do commands if we really have different PIC objects. + reload_objs="$libobjs $reload_conv_objs" + output=$libobj + func_execute_cmds "$reload_cmds" 'exit $?' + fi + + if test -n "$gentop"; then + func_show_eval '${RM}r "$gentop"' + fi + + exit $EXIT_SUCCESS + ;; + + prog) + case $host in + *cygwin*) func_stripname '' '.exe' "$output" + output=$func_stripname_result.exe;; + esac + test -n "$vinfo" && \ + func_warning "'-version-info' is ignored for programs" + + test -n "$release" && \ + func_warning "'-release' is ignored for programs" + + $preload \ + && test unknown,unknown,unknown = "$dlopen_support,$dlopen_self,$dlopen_self_static" \ + && func_warning "'LT_INIT([dlopen])' not used. Assuming no dlopen support." + + case $host in + *-*-rhapsody* | *-*-darwin1.[012]) + # On Rhapsody replace the C library is the System framework + compile_deplibs=`$ECHO " $compile_deplibs" | $SED 's/ -lc / System.ltframework /'` + finalize_deplibs=`$ECHO " $finalize_deplibs" | $SED 's/ -lc / System.ltframework /'` + ;; + esac + + case $host in + *-*-darwin*) + # Don't allow lazy linking, it breaks C++ global constructors + # But is supposedly fixed on 10.4 or later (yay!). + if test CXX = "$tagname"; then + case ${MACOSX_DEPLOYMENT_TARGET-10.0} in + 10.[0123]) + func_append compile_command " $wl-bind_at_load" + func_append finalize_command " $wl-bind_at_load" + ;; + esac + fi + # Time to change all our "foo.ltframework" stuff back to "-framework foo" + compile_deplibs=`$ECHO " $compile_deplibs" | $SED 's% \([^ $]*\).ltframework% -framework \1%g'` + finalize_deplibs=`$ECHO " $finalize_deplibs" | $SED 's% \([^ $]*\).ltframework% -framework \1%g'` + ;; + esac + + + # move library search paths that coincide with paths to not yet + # installed libraries to the beginning of the library search list + new_libs= + for path in $notinst_path; do + case " $new_libs " in + *" -L$path/$objdir "*) ;; + *) + case " $compile_deplibs " in + *" -L$path/$objdir "*) + func_append new_libs " -L$path/$objdir" ;; + esac + ;; + esac + done + for deplib in $compile_deplibs; do + case $deplib in + -L*) + case " $new_libs " in + *" $deplib "*) ;; + *) func_append new_libs " $deplib" ;; + esac + ;; + *) func_append new_libs " $deplib" ;; + esac + done + compile_deplibs=$new_libs + + + func_append compile_command " $compile_deplibs" + func_append finalize_command " $finalize_deplibs" + + if test -n "$rpath$xrpath"; then + # If the user specified any rpath flags, then add them. + for libdir in $rpath $xrpath; do + # This is the magic to use -rpath. + case "$finalize_rpath " in + *" $libdir "*) ;; + *) func_append finalize_rpath " $libdir" ;; + esac + done + fi + + # Now hardcode the library paths + rpath= + hardcode_libdirs= + for libdir in $compile_rpath $finalize_rpath; do + if test -n "$hardcode_libdir_flag_spec"; then + if test -n "$hardcode_libdir_separator"; then + if test -z "$hardcode_libdirs"; then + hardcode_libdirs=$libdir + else + # Just accumulate the unique libdirs. + case $hardcode_libdir_separator$hardcode_libdirs$hardcode_libdir_separator in + *"$hardcode_libdir_separator$libdir$hardcode_libdir_separator"*) + ;; + *) + func_append hardcode_libdirs "$hardcode_libdir_separator$libdir" + ;; + esac + fi + else + eval flag=\"$hardcode_libdir_flag_spec\" + func_append rpath " $flag" + fi + elif test -n "$runpath_var"; then + case "$perm_rpath " in + *" $libdir "*) ;; + *) func_append perm_rpath " $libdir" ;; + esac + fi + case $host in + *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2* | *-cegcc*) + testbindir=`$ECHO "$libdir" | $SED -e 's*/lib$*/bin*'` + case :$dllsearchpath: in + *":$libdir:"*) ;; + ::) dllsearchpath=$libdir;; + *) func_append dllsearchpath ":$libdir";; + esac + case :$dllsearchpath: in + *":$testbindir:"*) ;; + ::) dllsearchpath=$testbindir;; + *) func_append dllsearchpath ":$testbindir";; + esac + ;; + esac + done + # Substitute the hardcoded libdirs into the rpath. + if test -n "$hardcode_libdir_separator" && + test -n "$hardcode_libdirs"; then + libdir=$hardcode_libdirs + eval rpath=\" $hardcode_libdir_flag_spec\" + fi + compile_rpath=$rpath + + rpath= + hardcode_libdirs= + for libdir in $finalize_rpath; do + if test -n "$hardcode_libdir_flag_spec"; then + if test -n "$hardcode_libdir_separator"; then + if test -z "$hardcode_libdirs"; then + hardcode_libdirs=$libdir + else + # Just accumulate the unique libdirs. + case $hardcode_libdir_separator$hardcode_libdirs$hardcode_libdir_separator in + *"$hardcode_libdir_separator$libdir$hardcode_libdir_separator"*) + ;; + *) + func_append hardcode_libdirs "$hardcode_libdir_separator$libdir" + ;; + esac + fi + else + eval flag=\"$hardcode_libdir_flag_spec\" + func_append rpath " $flag" + fi + elif test -n "$runpath_var"; then + case "$finalize_perm_rpath " in + *" $libdir "*) ;; + *) func_append finalize_perm_rpath " $libdir" ;; + esac + fi + done + # Substitute the hardcoded libdirs into the rpath. + if test -n "$hardcode_libdir_separator" && + test -n "$hardcode_libdirs"; then + libdir=$hardcode_libdirs + eval rpath=\" $hardcode_libdir_flag_spec\" + fi + finalize_rpath=$rpath + + if test -n "$libobjs" && test yes = "$build_old_libs"; then + # Transform all the library objects into standard objects. + compile_command=`$ECHO "$compile_command" | $SP2NL | $SED "$lo2o" | $NL2SP` + finalize_command=`$ECHO "$finalize_command" | $SP2NL | $SED "$lo2o" | $NL2SP` + fi + + func_generate_dlsyms "$outputname" "@PROGRAM@" false + + # template prelinking step + if test -n "$prelink_cmds"; then + func_execute_cmds "$prelink_cmds" 'exit $?' + fi + + wrappers_required=: + case $host in + *cegcc* | *mingw32ce*) + # Disable wrappers for cegcc and mingw32ce hosts, we are cross compiling anyway. + wrappers_required=false + ;; + *cygwin* | *mingw* ) + test yes = "$build_libtool_libs" || wrappers_required=false + ;; + *) + if test no = "$need_relink" || test yes != "$build_libtool_libs"; then + wrappers_required=false + fi + ;; + esac + $wrappers_required || { + # Replace the output file specification. + compile_command=`$ECHO "$compile_command" | $SED 's%@OUTPUT@%'"$output"'%g'` + link_command=$compile_command$compile_rpath + + # We have no uninstalled library dependencies, so finalize right now. + exit_status=0 + func_show_eval "$link_command" 'exit_status=$?' + + if test -n "$postlink_cmds"; then + func_to_tool_file "$output" + postlink_cmds=`func_echo_all "$postlink_cmds" | $SED -e 's%@OUTPUT@%'"$output"'%g' -e 's%@TOOL_OUTPUT@%'"$func_to_tool_file_result"'%g'` + func_execute_cmds "$postlink_cmds" 'exit $?' + fi + + # Delete the generated files. + if test -f "$output_objdir/${outputname}S.$objext"; then + func_show_eval '$RM "$output_objdir/${outputname}S.$objext"' + fi + + exit $exit_status + } + + if test -n "$compile_shlibpath$finalize_shlibpath"; then + compile_command="$shlibpath_var=\"$compile_shlibpath$finalize_shlibpath\$$shlibpath_var\" $compile_command" + fi + if test -n "$finalize_shlibpath"; then + finalize_command="$shlibpath_var=\"$finalize_shlibpath\$$shlibpath_var\" $finalize_command" + fi + + compile_var= + finalize_var= + if test -n "$runpath_var"; then + if test -n "$perm_rpath"; then + # We should set the runpath_var. + rpath= + for dir in $perm_rpath; do + func_append rpath "$dir:" + done + compile_var="$runpath_var=\"$rpath\$$runpath_var\" " + fi + if test -n "$finalize_perm_rpath"; then + # We should set the runpath_var. + rpath= + for dir in $finalize_perm_rpath; do + func_append rpath "$dir:" + done + finalize_var="$runpath_var=\"$rpath\$$runpath_var\" " + fi + fi + + if test yes = "$no_install"; then + # We don't need to create a wrapper script. + link_command=$compile_var$compile_command$compile_rpath + # Replace the output file specification. + link_command=`$ECHO "$link_command" | $SED 's%@OUTPUT@%'"$output"'%g'` + # Delete the old output file. + $opt_dry_run || $RM $output + # Link the executable and exit + func_show_eval "$link_command" 'exit $?' + + if test -n "$postlink_cmds"; then + func_to_tool_file "$output" + postlink_cmds=`func_echo_all "$postlink_cmds" | $SED -e 's%@OUTPUT@%'"$output"'%g' -e 's%@TOOL_OUTPUT@%'"$func_to_tool_file_result"'%g'` + func_execute_cmds "$postlink_cmds" 'exit $?' + fi + + exit $EXIT_SUCCESS + fi + + case $hardcode_action,$fast_install in + relink,*) + # Fast installation is not supported + link_command=$compile_var$compile_command$compile_rpath + relink_command=$finalize_var$finalize_command$finalize_rpath + + func_warning "this platform does not like uninstalled shared libraries" + func_warning "'$output' will be relinked during installation" + ;; + *,yes) + link_command=$finalize_var$compile_command$finalize_rpath + relink_command=`$ECHO "$compile_var$compile_command$compile_rpath" | $SED 's%@OUTPUT@%\$progdir/\$file%g'` + ;; + *,no) + link_command=$compile_var$compile_command$compile_rpath + relink_command=$finalize_var$finalize_command$finalize_rpath + ;; + *,needless) + link_command=$finalize_var$compile_command$finalize_rpath + relink_command= + ;; + esac + + # Replace the output file specification. + link_command=`$ECHO "$link_command" | $SED 's%@OUTPUT@%'"$output_objdir/$outputname"'%g'` + + # Delete the old output files. + $opt_dry_run || $RM $output $output_objdir/$outputname $output_objdir/lt-$outputname + + func_show_eval "$link_command" 'exit $?' + + if test -n "$postlink_cmds"; then + func_to_tool_file "$output_objdir/$outputname" + postlink_cmds=`func_echo_all "$postlink_cmds" | $SED -e 's%@OUTPUT@%'"$output_objdir/$outputname"'%g' -e 's%@TOOL_OUTPUT@%'"$func_to_tool_file_result"'%g'` + func_execute_cmds "$postlink_cmds" 'exit $?' + fi + + # Now create the wrapper script. + func_verbose "creating $output" + + # Quote the relink command for shipping. + if test -n "$relink_command"; then + # Preserve any variables that may affect compiler behavior + for var in $variables_saved_for_relink; do + if eval test -z \"\${$var+set}\"; then + relink_command="{ test -z \"\${$var+set}\" || $lt_unset $var || { $var=; export $var; }; }; $relink_command" + elif eval var_value=\$$var; test -z "$var_value"; then + relink_command="$var=; export $var; $relink_command" + else + func_quote_arg pretty "$var_value" + relink_command="$var=$func_quote_arg_result; export $var; $relink_command" + fi + done + func_quote eval cd "`pwd`" + func_quote_arg pretty,unquoted "($func_quote_result; $relink_command)" + relink_command=$func_quote_arg_unquoted_result + fi + + # Only actually do things if not in dry run mode. + $opt_dry_run || { + # win32 will think the script is a binary if it has + # a .exe suffix, so we strip it off here. + case $output in + *.exe) func_stripname '' '.exe' "$output" + output=$func_stripname_result ;; + esac + # test for cygwin because mv fails w/o .exe extensions + case $host in + *cygwin*) + exeext=.exe + func_stripname '' '.exe' "$outputname" + outputname=$func_stripname_result ;; + *) exeext= ;; + esac + case $host in + *cygwin* | *mingw* ) + func_dirname_and_basename "$output" "" "." + output_name=$func_basename_result + output_path=$func_dirname_result + cwrappersource=$output_path/$objdir/lt-$output_name.c + cwrapper=$output_path/$output_name.exe + $RM $cwrappersource $cwrapper + trap "$RM $cwrappersource $cwrapper; exit $EXIT_FAILURE" 1 2 15 + + func_emit_cwrapperexe_src > $cwrappersource + + # The wrapper executable is built using the $host compiler, + # because it contains $host paths and files. If cross- + # compiling, it, like the target executable, must be + # executed on the $host or under an emulation environment. + $opt_dry_run || { + $LTCC $LTCFLAGS -o $cwrapper $cwrappersource + $STRIP $cwrapper + } + + # Now, create the wrapper script for func_source use: + func_ltwrapper_scriptname $cwrapper + $RM $func_ltwrapper_scriptname_result + trap "$RM $func_ltwrapper_scriptname_result; exit $EXIT_FAILURE" 1 2 15 + $opt_dry_run || { + # note: this script will not be executed, so do not chmod. + if test "x$build" = "x$host"; then + $cwrapper --lt-dump-script > $func_ltwrapper_scriptname_result + else + func_emit_wrapper no > $func_ltwrapper_scriptname_result + fi + } + ;; + * ) + $RM $output + trap "$RM $output; exit $EXIT_FAILURE" 1 2 15 + + func_emit_wrapper no > $output + chmod +x $output + ;; + esac + } + exit $EXIT_SUCCESS + ;; + esac + + # See if we need to build an old-fashioned archive. + for oldlib in $oldlibs; do + + case $build_libtool_libs in + convenience) + oldobjs="$libobjs_save $symfileobj" + addlibs=$convenience + build_libtool_libs=no + ;; + module) + oldobjs=$libobjs_save + addlibs=$old_convenience + build_libtool_libs=no + ;; + *) + oldobjs="$old_deplibs $non_pic_objects" + $preload && test -f "$symfileobj" \ + && func_append oldobjs " $symfileobj" + addlibs=$old_convenience + ;; + esac + + if test -n "$addlibs"; then + gentop=$output_objdir/${outputname}x + func_append generated " $gentop" + + func_extract_archives $gentop $addlibs + func_append oldobjs " $func_extract_archives_result" + fi + + # Do each command in the archive commands. + if test -n "$old_archive_from_new_cmds" && test yes = "$build_libtool_libs"; then + cmds=$old_archive_from_new_cmds + else + + # Add any objects from preloaded convenience libraries + if test -n "$dlprefiles"; then + gentop=$output_objdir/${outputname}x + func_append generated " $gentop" + + func_extract_archives $gentop $dlprefiles + func_append oldobjs " $func_extract_archives_result" + fi + + # POSIX demands no paths to be encoded in archives. We have + # to avoid creating archives with duplicate basenames if we + # might have to extract them afterwards, e.g., when creating a + # static archive out of a convenience library, or when linking + # the entirety of a libtool archive into another (currently + # not supported by libtool). + if (for obj in $oldobjs + do + func_basename "$obj" + $ECHO "$func_basename_result" + done | sort | sort -uc >/dev/null 2>&1); then + : + else + echo "copying selected object files to avoid basename conflicts..." + gentop=$output_objdir/${outputname}x + func_append generated " $gentop" + func_mkdir_p "$gentop" + save_oldobjs=$oldobjs + oldobjs= + counter=1 + for obj in $save_oldobjs + do + func_basename "$obj" + objbase=$func_basename_result + case " $oldobjs " in + " ") oldobjs=$obj ;; + *[\ /]"$objbase "*) + while :; do + # Make sure we don't pick an alternate name that also + # overlaps. + newobj=lt$counter-$objbase + func_arith $counter + 1 + counter=$func_arith_result + case " $oldobjs " in + *[\ /]"$newobj "*) ;; + *) if test ! -f "$gentop/$newobj"; then break; fi ;; + esac + done + func_show_eval "ln $obj $gentop/$newobj || cp $obj $gentop/$newobj" + func_append oldobjs " $gentop/$newobj" + ;; + *) func_append oldobjs " $obj" ;; + esac + done + fi + func_to_tool_file "$oldlib" func_convert_file_msys_to_w32 + tool_oldlib=$func_to_tool_file_result + eval cmds=\"$old_archive_cmds\" + + func_len " $cmds" + len=$func_len_result + if test "$len" -lt "$max_cmd_len" || test "$max_cmd_len" -le -1; then + cmds=$old_archive_cmds + elif test -n "$archiver_list_spec"; then + func_verbose "using command file archive linking..." + for obj in $oldobjs + do + func_to_tool_file "$obj" + $ECHO "$func_to_tool_file_result" + done > $output_objdir/$libname.libcmd + func_to_tool_file "$output_objdir/$libname.libcmd" + oldobjs=" $archiver_list_spec$func_to_tool_file_result" + cmds=$old_archive_cmds + else + # the command line is too long to link in one step, link in parts + func_verbose "using piecewise archive linking..." + save_RANLIB=$RANLIB + RANLIB=: + objlist= + concat_cmds= + save_oldobjs=$oldobjs + oldobjs= + # Is there a better way of finding the last object in the list? + for obj in $save_oldobjs + do + last_oldobj=$obj + done + eval test_cmds=\"$old_archive_cmds\" + func_len " $test_cmds" + len0=$func_len_result + len=$len0 + for obj in $save_oldobjs + do + func_len " $obj" + func_arith $len + $func_len_result + len=$func_arith_result + func_append objlist " $obj" + if test "$len" -lt "$max_cmd_len"; then + : + else + # the above command should be used before it gets too long + oldobjs=$objlist + if test "$obj" = "$last_oldobj"; then + RANLIB=$save_RANLIB + fi + test -z "$concat_cmds" || concat_cmds=$concat_cmds~ + eval concat_cmds=\"\$concat_cmds$old_archive_cmds\" + objlist= + len=$len0 + fi + done + RANLIB=$save_RANLIB + oldobjs=$objlist + if test -z "$oldobjs"; then + eval cmds=\"\$concat_cmds\" + else + eval cmds=\"\$concat_cmds~\$old_archive_cmds\" + fi + fi + fi + func_execute_cmds "$cmds" 'exit $?' + done + + test -n "$generated" && \ + func_show_eval "${RM}r$generated" + + # Now create the libtool archive. + case $output in + *.la) + old_library= + test yes = "$build_old_libs" && old_library=$libname.$libext + func_verbose "creating $output" + + # Preserve any variables that may affect compiler behavior + for var in $variables_saved_for_relink; do + if eval test -z \"\${$var+set}\"; then + relink_command="{ test -z \"\${$var+set}\" || $lt_unset $var || { $var=; export $var; }; }; $relink_command" + elif eval var_value=\$$var; test -z "$var_value"; then + relink_command="$var=; export $var; $relink_command" + else + func_quote_arg pretty,unquoted "$var_value" + relink_command="$var=$func_quote_arg_unquoted_result; export $var; $relink_command" + fi + done + # Quote the link command for shipping. + func_quote eval cd "`pwd`" + relink_command="($func_quote_result; $SHELL \"$progpath\" $preserve_args --mode=relink $libtool_args @inst_prefix_dir@)" + func_quote_arg pretty,unquoted "$relink_command" + relink_command=$func_quote_arg_unquoted_result + if test yes = "$hardcode_automatic"; then + relink_command= + fi + + # Only create the output if not a dry run. + $opt_dry_run || { + for installed in no yes; do + if test yes = "$installed"; then + if test -z "$install_libdir"; then + break + fi + output=$output_objdir/${outputname}i + # Replace all uninstalled libtool libraries with the installed ones + newdependency_libs= + for deplib in $dependency_libs; do + case $deplib in + *.la) + func_basename "$deplib" + name=$func_basename_result + func_resolve_sysroot "$deplib" + eval libdir=`$SED -n -e 's/^libdir=\(.*\)$/\1/p' $func_resolve_sysroot_result` + test -z "$libdir" && \ + func_fatal_error "'$deplib' is not a valid libtool archive" + func_append newdependency_libs " ${lt_sysroot:+=}$libdir/$name" + ;; + -L*) + func_stripname -L '' "$deplib" + func_replace_sysroot "$func_stripname_result" + func_append newdependency_libs " -L$func_replace_sysroot_result" + ;; + -R*) + func_stripname -R '' "$deplib" + func_replace_sysroot "$func_stripname_result" + func_append newdependency_libs " -R$func_replace_sysroot_result" + ;; + *) func_append newdependency_libs " $deplib" ;; + esac + done + dependency_libs=$newdependency_libs + newdlfiles= + + for lib in $dlfiles; do + case $lib in + *.la) + func_basename "$lib" + name=$func_basename_result + eval libdir=`$SED -n -e 's/^libdir=\(.*\)$/\1/p' $lib` + test -z "$libdir" && \ + func_fatal_error "'$lib' is not a valid libtool archive" + func_append newdlfiles " ${lt_sysroot:+=}$libdir/$name" + ;; + *) func_append newdlfiles " $lib" ;; + esac + done + dlfiles=$newdlfiles + newdlprefiles= + for lib in $dlprefiles; do + case $lib in + *.la) + # Only pass preopened files to the pseudo-archive (for + # eventual linking with the app. that links it) if we + # didn't already link the preopened objects directly into + # the library: + func_basename "$lib" + name=$func_basename_result + eval libdir=`$SED -n -e 's/^libdir=\(.*\)$/\1/p' $lib` + test -z "$libdir" && \ + func_fatal_error "'$lib' is not a valid libtool archive" + func_append newdlprefiles " ${lt_sysroot:+=}$libdir/$name" + ;; + esac + done + dlprefiles=$newdlprefiles + else + newdlfiles= + for lib in $dlfiles; do + case $lib in + [\\/]* | [A-Za-z]:[\\/]*) abs=$lib ;; + *) abs=`pwd`"/$lib" ;; + esac + func_append newdlfiles " $abs" + done + dlfiles=$newdlfiles + newdlprefiles= + for lib in $dlprefiles; do + case $lib in + [\\/]* | [A-Za-z]:[\\/]*) abs=$lib ;; + *) abs=`pwd`"/$lib" ;; + esac + func_append newdlprefiles " $abs" + done + dlprefiles=$newdlprefiles + fi + $RM $output + # place dlname in correct position for cygwin + # In fact, it would be nice if we could use this code for all target + # systems that can't hard-code library paths into their executables + # and that have no shared library path variable independent of PATH, + # but it turns out we can't easily determine that from inspecting + # libtool variables, so we have to hard-code the OSs to which it + # applies here; at the moment, that means platforms that use the PE + # object format with DLL files. See the long comment at the top of + # tests/bindir.at for full details. + tdlname=$dlname + case $host,$output,$installed,$module,$dlname in + *cygwin*,*lai,yes,no,*.dll | *mingw*,*lai,yes,no,*.dll | *cegcc*,*lai,yes,no,*.dll) + # If a -bindir argument was supplied, place the dll there. + if test -n "$bindir"; then + func_relative_path "$install_libdir" "$bindir" + tdlname=$func_relative_path_result/$dlname + else + # Otherwise fall back on heuristic. + tdlname=../bin/$dlname + fi + ;; + esac + $ECHO > $output "\ +# $outputname - a libtool library file +# Generated by $PROGRAM (GNU $PACKAGE) $VERSION +# +# Please DO NOT delete this file! +# It is necessary for linking the library. + +# The name that we can dlopen(3). +dlname='$tdlname' + +# Names of this library. +library_names='$library_names' + +# The name of the static archive. +old_library='$old_library' + +# Linker flags that cannot go in dependency_libs. +inherited_linker_flags='$new_inherited_linker_flags' + +# Libraries that this one depends upon. +dependency_libs='$dependency_libs' + +# Names of additional weak libraries provided by this library +weak_library_names='$weak_libs' + +# Version information for $libname. +current=$current +age=$age +revision=$revision + +# Is this an already installed library? +installed=$installed + +# Should we warn about portability when linking against -modules? +shouldnotlink=$module + +# Files to dlopen/dlpreopen +dlopen='$dlfiles' +dlpreopen='$dlprefiles' + +# Directory that this library needs to be installed in: +libdir='$install_libdir'" + if test no,yes = "$installed,$need_relink"; then + $ECHO >> $output "\ +relink_command=\"$relink_command\"" + fi + done + } + + # Do a symbolic link so that the libtool archive can be found in + # LD_LIBRARY_PATH before the program is installed. + func_show_eval '( cd "$output_objdir" && $RM "$outputname" && $LN_S "../$outputname" "$outputname" )' 'exit $?' + ;; + esac + exit $EXIT_SUCCESS +} + +if test link = "$opt_mode" || test relink = "$opt_mode"; then + func_mode_link ${1+"$@"} +fi + + +# func_mode_uninstall arg... +func_mode_uninstall () +{ + $debug_cmd + + RM=$nonopt + files= + rmforce=false + exit_status=0 + + # This variable tells wrapper scripts just to set variables rather + # than running their programs. + libtool_install_magic=$magic + + for arg + do + case $arg in + -f) func_append RM " $arg"; rmforce=: ;; + -*) func_append RM " $arg" ;; + *) func_append files " $arg" ;; + esac + done + + test -z "$RM" && \ + func_fatal_help "you must specify an RM program" + + rmdirs= + + for file in $files; do + func_dirname "$file" "" "." + dir=$func_dirname_result + if test . = "$dir"; then + odir=$objdir + else + odir=$dir/$objdir + fi + func_basename "$file" + name=$func_basename_result + test uninstall = "$opt_mode" && odir=$dir + + # Remember odir for removal later, being careful to avoid duplicates + if test clean = "$opt_mode"; then + case " $rmdirs " in + *" $odir "*) ;; + *) func_append rmdirs " $odir" ;; + esac + fi + + # Don't error if the file doesn't exist and rm -f was used. + if { test -L "$file"; } >/dev/null 2>&1 || + { test -h "$file"; } >/dev/null 2>&1 || + test -f "$file"; then + : + elif test -d "$file"; then + exit_status=1 + continue + elif $rmforce; then + continue + fi + + rmfiles=$file + + case $name in + *.la) + # Possibly a libtool archive, so verify it. + if func_lalib_p "$file"; then + func_source $dir/$name + + # Delete the libtool libraries and symlinks. + for n in $library_names; do + func_append rmfiles " $odir/$n" + done + test -n "$old_library" && func_append rmfiles " $odir/$old_library" + + case $opt_mode in + clean) + case " $library_names " in + *" $dlname "*) ;; + *) test -n "$dlname" && func_append rmfiles " $odir/$dlname" ;; + esac + test -n "$libdir" && func_append rmfiles " $odir/$name $odir/${name}i" + ;; + uninstall) + if test -n "$library_names"; then + # Do each command in the postuninstall commands. + func_execute_cmds "$postuninstall_cmds" '$rmforce || exit_status=1' + fi + + if test -n "$old_library"; then + # Do each command in the old_postuninstall commands. + func_execute_cmds "$old_postuninstall_cmds" '$rmforce || exit_status=1' + fi + # FIXME: should reinstall the best remaining shared library. + ;; + esac + fi + ;; + + *.lo) + # Possibly a libtool object, so verify it. + if func_lalib_p "$file"; then + + # Read the .lo file + func_source $dir/$name + + # Add PIC object to the list of files to remove. + if test -n "$pic_object" && test none != "$pic_object"; then + func_append rmfiles " $dir/$pic_object" + fi + + # Add non-PIC object to the list of files to remove. + if test -n "$non_pic_object" && test none != "$non_pic_object"; then + func_append rmfiles " $dir/$non_pic_object" + fi + fi + ;; + + *) + if test clean = "$opt_mode"; then + noexename=$name + case $file in + *.exe) + func_stripname '' '.exe' "$file" + file=$func_stripname_result + func_stripname '' '.exe' "$name" + noexename=$func_stripname_result + # $file with .exe has already been added to rmfiles, + # add $file without .exe + func_append rmfiles " $file" + ;; + esac + # Do a test to see if this is a libtool program. + if func_ltwrapper_p "$file"; then + if func_ltwrapper_executable_p "$file"; then + func_ltwrapper_scriptname "$file" + relink_command= + func_source $func_ltwrapper_scriptname_result + func_append rmfiles " $func_ltwrapper_scriptname_result" + else + relink_command= + func_source $dir/$noexename + fi + + # note $name still contains .exe if it was in $file originally + # as does the version of $file that was added into $rmfiles + func_append rmfiles " $odir/$name $odir/${name}S.$objext" + if test yes = "$fast_install" && test -n "$relink_command"; then + func_append rmfiles " $odir/lt-$name" + fi + if test "X$noexename" != "X$name"; then + func_append rmfiles " $odir/lt-$noexename.c" + fi + fi + fi + ;; + esac + func_show_eval "$RM $rmfiles" 'exit_status=1' + done + + # Try to remove the $objdir's in the directories where we deleted files + for dir in $rmdirs; do + if test -d "$dir"; then + func_show_eval "rmdir $dir >/dev/null 2>&1" + fi + done + + exit $exit_status +} + +if test uninstall = "$opt_mode" || test clean = "$opt_mode"; then + func_mode_uninstall ${1+"$@"} +fi + +test -z "$opt_mode" && { + help=$generic_help + func_fatal_help "you must specify a MODE" +} + +test -z "$exec_cmd" && \ + func_fatal_help "invalid operation mode '$opt_mode'" + +if test -n "$exec_cmd"; then + eval exec "$exec_cmd" + exit $EXIT_FAILURE +fi + +exit $exit_status + + +# The TAGs below are defined such that we never get into a situation +# where we disable both kinds of libraries. Given conflicting +# choices, we go for a static library, that is the most portable, +# since we can't tell whether shared libraries were disabled because +# the user asked for that or because the platform doesn't support +# them. This is particularly important on AIX, because we don't +# support having both static and shared libraries enabled at the same +# time on that platform, so we default to a shared-only configuration. +# If a disable-shared tag is given, we'll fallback to a static-only +# configuration. But we'll never go from static-only to shared-only. + +# ### BEGIN LIBTOOL TAG CONFIG: disable-shared +build_libtool_libs=no +build_old_libs=yes +# ### END LIBTOOL TAG CONFIG: disable-shared + +# ### BEGIN LIBTOOL TAG CONFIG: disable-static +build_old_libs=`case $build_libtool_libs in yes) echo no;; *) echo yes;; esac` +# ### END LIBTOOL TAG CONFIG: disable-static + +# Local Variables: +# mode:shell-script +# sh-indentation:2 +# End: + +# ### BEGIN LIBTOOL TAG CONFIG: RC + +# The linker used to build libraries. +LD="" + +# How to create reloadable object files. +reload_flag="" +reload_cmds="" + +# Commands used to build an old-style archive. +old_archive_cmds="" + +# A language specific compiler. +CC="" + +# Is the compiler the GNU compiler? +with_gcc= + +# Compiler flag to turn off builtin functions. +no_builtin_flag="" + +# Additional compiler flags for building library objects. +pic_flag="" + +# How to pass a linker flag through the compiler. +wl="" + +# Compiler flag to prevent dynamic linking. +link_static_flag="" + +# Does compiler simultaneously support -c and -o options? +compiler_c_o="yes" + +# Whether or not to add -lc for building shared libraries. +build_libtool_need_lc= + +# Whether or not to disallow shared libs when runtime libs are static. +allow_libtool_libs_with_static_runtimes= + +# Compiler flag to allow reflexive dlopens. +export_dynamic_flag_spec="" + +# Compiler flag to generate shared objects directly from archives. +whole_archive_flag_spec="" + +# Whether the compiler copes with passing no objects directly. +compiler_needs_object="" + +# Create an old-style archive from a shared archive. +old_archive_from_new_cmds="" + +# Create a temporary old-style archive to link instead of a shared archive. +old_archive_from_expsyms_cmds="" + +# Commands used to build a shared archive. +archive_cmds="" +archive_expsym_cmds="" + +# Commands used to build a loadable module if different from building +# a shared archive. +module_cmds="" +module_expsym_cmds="" + +# Whether we are building with GNU ld or not. +with_gnu_ld="" + +# Flag that allows shared libraries with undefined symbols to be built. +allow_undefined_flag="" + +# Flag that enforces no undefined symbols. +no_undefined_flag="" + +# Flag to hardcode $libdir into a binary during linking. +# This must work even if $libdir does not exist +hardcode_libdir_flag_spec="" + +# Whether we need a single "-rpath" flag with a separated argument. +hardcode_libdir_separator="" + +# Set to "yes" if using DIR/libNAME$shared_ext during linking hardcodes +# DIR into the resulting binary. +hardcode_direct= + +# Set to "yes" if using DIR/libNAME$shared_ext during linking hardcodes +# DIR into the resulting binary and the resulting library dependency is +# "absolute",i.e impossible to change by setting $shlibpath_var if the +# library is relocated. +hardcode_direct_absolute= + +# Set to "yes" if using the -LDIR flag during linking hardcodes DIR +# into the resulting binary. +hardcode_minus_L= + +# Set to "yes" if using SHLIBPATH_VAR=DIR during linking hardcodes DIR +# into the resulting binary. +hardcode_shlibpath_var= + +# Set to "yes" if building a shared library automatically hardcodes DIR +# into the library and all subsequent libraries and executables linked +# against it. +hardcode_automatic= + +# Set to yes if linker adds runtime paths of dependent libraries +# to runtime path list. +inherit_rpath= + +# Whether libtool must link a program against all its dependency libraries. +link_all_deplibs= + +# Set to "yes" if exported symbols are required. +always_export_symbols= + +# The commands to list exported symbols. +export_symbols_cmds="" + +# Symbols that should not be listed in the preloaded symbols. +exclude_expsyms="" + +# Symbols that must always be exported. +include_expsyms="" + +# Commands necessary for linking programs (against libraries) with templates. +prelink_cmds="" + +# Commands necessary for finishing linking programs. +postlink_cmds="" + +# Specify filename containing input files. +file_list_spec="" + +# How to hardcode a shared library path into an executable. +hardcode_action= + +# ### END LIBTOOL TAG CONFIG: RC diff --git a/man/Makefile b/man/Makefile new file mode 100644 index 0000000..d04a65e --- /dev/null +++ b/man/Makefile @@ -0,0 +1,99 @@ +# Makefile for libiconv/man + +#### Start of system configuration section. #### + +# Directories used by "make": +srcdir = . + +# Directories used by "make install": +prefix = /Users/yangzuhao/Downloads/libiconv-1.17/output +local_prefix = /usr/local +exec_prefix = ${prefix} +datarootdir = ${prefix}/share +datadir = ${datarootdir} +mandir = ${datarootdir}/man +docdir = ${datarootdir}/doc/${PACKAGE_TARNAME} +htmldir = ${docdir} + +# Programs used by "make": +RM = rm -f + + +# Programs used by "make install": +INSTALL = /opt/homebrew/bin/ginstall -c +INSTALL_PROGRAM = ${INSTALL} +INSTALL_DATA = ${INSTALL} -m 644 +mkinstalldirs = $(SHELL) ../build-aux/mkinstalldirs + +#### End of system configuration section. #### + +SHELL = /bin/sh + +# Used by docdir. +PACKAGE = libiconv + +all : + +install : force + if [ ! -d $(DESTDIR)$(mandir)/man1 ] ; then $(mkinstalldirs) $(DESTDIR)$(mandir)/man1 ; fi + builddir="`pwd`"; cd $(srcdir) && for f in *.1 ; do (cd "$$builddir"; echo $(INSTALL_DATA) $(srcdir)/$$f $(DESTDIR)$(mandir)/man1/$$f ; $(INSTALL_DATA) $(srcdir)/$$f $(DESTDIR)$(mandir)/man1/$$f) ; done + if [ ! -d $(DESTDIR)$(mandir)/man3 ] ; then $(mkinstalldirs) $(DESTDIR)$(mandir)/man3 ; fi + builddir="`pwd`"; cd $(srcdir) && for f in *.3 ; do (cd "$$builddir"; echo $(INSTALL_DATA) $(srcdir)/$$f $(DESTDIR)$(mandir)/man3/$$f ; $(INSTALL_DATA) $(srcdir)/$$f $(DESTDIR)$(mandir)/man3/$$f) ; done + if [ ! -d $(DESTDIR)$(htmldir) ] ; then $(mkinstalldirs) $(DESTDIR)$(htmldir) ; fi + builddir="`pwd`"; cd $(srcdir) && for f in *.html ; do (cd "$$builddir"; echo $(INSTALL_DATA) $(srcdir)/$$f $(DESTDIR)$(htmldir)/$$f ; $(INSTALL_DATA) $(srcdir)/$$f $(DESTDIR)$(htmldir)/$$f) ; done + +install-strip : install + +installdirs : force + if [ ! -d $(DESTDIR)$(mandir)/man1 ] ; then $(mkinstalldirs) $(DESTDIR)$(mandir)/man1 ; fi + if [ ! -d $(DESTDIR)$(mandir)/man3 ] ; then $(mkinstalldirs) $(DESTDIR)$(mandir)/man3 ; fi + if [ ! -d $(DESTDIR)$(htmldir) ] ; then $(mkinstalldirs) $(DESTDIR)$(htmldir) ; fi + +uninstall : force + cd $(srcdir) && for f in *.1 ; do echo $(RM) $(DESTDIR)$(mandir)/man1/$$f ; $(RM) $(DESTDIR)$(mandir)/man1/$$f ; done + cd $(srcdir) && for f in *.3 ; do echo $(RM) $(DESTDIR)$(mandir)/man3/$$f ; $(RM) $(DESTDIR)$(mandir)/man3/$$f ; done + cd $(srcdir) && for f in *.html ; do echo $(RM) $(DESTDIR)$(htmldir)/$$f ; $(RM) $(DESTDIR)$(htmldir)/$$f ; done + +check : + +mostlyclean : + +clean : + +distclean : force + $(RM) Makefile + +maintainer-clean : distclean + +# List of source files. +SOURCE_FILES = \ + Makefile.in \ + iconv.1 \ + iconv.3 \ + iconv_close.3 \ + iconv_open.3 \ + iconvctl.3 \ + iconv_open_into.3 +# List of distributed files imported from other packages. +IMPORTED_FILES = +# List of distributed files generated by autotools or Makefile.devel. +GENERATED_FILES = \ + iconv.1.html \ + iconv.3.html \ + iconv_close.3.html \ + iconv_open.3.html \ + iconvctl.3.html \ + iconv_open_into.3.html +# List of distributed files generated by "make". +DISTRIBUTED_BUILT_FILES = +# List of distributed files. +DISTFILES = $(SOURCE_FILES) $(IMPORTED_FILES) $(GENERATED_FILES) $(DISTRIBUTED_BUILT_FILES) + +distdir : $(DISTFILES) + for file in $(DISTFILES); do \ + if test -f $$file; then dir='.'; else dir='$(srcdir)'; fi; \ + cp -p "$$dir/$$file" '$(distdir)'/$$file || exit 1; \ + done + +force : + diff --git a/output/bin/iconv b/output/bin/iconv new file mode 100755 index 0000000..3ee3421 Binary files /dev/null and b/output/bin/iconv differ diff --git a/output/include/iconv.h b/output/include/iconv.h new file mode 100644 index 0000000..a844d4c --- /dev/null +++ b/output/include/iconv.h @@ -0,0 +1,241 @@ +/* Copyright (C) 1999-2022 Free Software Foundation, Inc. + This file is part of the GNU LIBICONV Library. + + The GNU LIBICONV Library is free software; you can redistribute it + and/or modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either version 2.1 + of the License, or (at your option) any later version. + + The GNU LIBICONV Library is distributed in the hope that it will be + useful, but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU LIBICONV Library; see the file COPYING.LIB. + If not, see . */ + +/* When installed, this file is called "iconv.h". */ + +#ifndef _LIBICONV_H +#define _LIBICONV_H + +#define _LIBICONV_VERSION 0x0111 /* version number: (major<<8) + minor */ +extern int _libiconv_version; /* Likewise */ + +/* We would like to #include any system header file which could define + iconv_t, 1. in order to eliminate the risk that the user gets compilation + errors because some other system header file includes /usr/include/iconv.h + which defines iconv_t or declares iconv after this file, 2. when compiling + for LIBICONV_PLUG, we need the proper iconv_t type in order to produce + binary compatible code. + But gcc's #include_next is not portable. Thus, once libiconv's iconv.h + has been installed in /usr/local/include, there is no way any more to + include the original /usr/include/iconv.h. We simply have to get away + without it. + Ad 1. The risk that a system header file does + #include "iconv.h" or #include_next "iconv.h" + is small. They all do #include . + Ad 2. The iconv_t type is a pointer type in all cases I have seen. (It + has to be a scalar type because (iconv_t)(-1) is a possible return value + from iconv_open().) */ + +/* Define iconv_t ourselves. */ +#undef iconv_t +#define iconv_t libiconv_t +typedef void* iconv_t; + +/* Get size_t declaration. + Get wchar_t declaration if it exists. */ +#include + +/* Get errno declaration and values. */ +#include +/* Some systems, like SunOS 4, don't have EILSEQ. Some systems, like BSD/OS, + have EILSEQ in a different header. On these systems, define EILSEQ + ourselves. */ +#ifndef EILSEQ +#define EILSEQ +#endif + + +#ifdef __cplusplus +extern "C" { +#endif + + +/* Allocates descriptor for code conversion from encoding ‘fromcode’ to + encoding ‘tocode’. */ +#ifndef LIBICONV_PLUG +#define iconv_open libiconv_open +#endif +extern iconv_t iconv_open (const char* tocode, const char* fromcode); + +/* Converts, using conversion descriptor ‘cd’, at most ‘*inbytesleft’ bytes + starting at ‘*inbuf’, writing at most ‘*outbytesleft’ bytes starting at + ‘*outbuf’. + Decrements ‘*inbytesleft’ and increments ‘*inbuf’ by the same amount. + Decrements ‘*outbytesleft’ and increments ‘*outbuf’ by the same amount. */ +#ifndef LIBICONV_PLUG +#define iconv libiconv +#endif +extern size_t iconv (iconv_t cd, char* * inbuf, size_t *inbytesleft, char* * outbuf, size_t *outbytesleft); + +/* Frees resources allocated for conversion descriptor ‘cd’. */ +#ifndef LIBICONV_PLUG +#define iconv_close libiconv_close +#endif +extern int iconv_close (iconv_t cd); + + +#ifdef __cplusplus +} +#endif + + +#ifndef LIBICONV_PLUG + +/* Nonstandard extensions. */ + +#if 1 +#if 0 +/* Tru64 with Desktop Toolkit C has a bug: must be included before + . + BSD/OS 4.0.1 has a bug: , and must be + included before . */ +#include +#include +#include +#endif +#include +#endif + +#ifdef __cplusplus +extern "C" { +#endif + +/* A type that holds all memory needed by a conversion descriptor. + A pointer to such an object can be used as an iconv_t. */ +typedef struct { + void* dummy1[28]; +#if 1 + mbstate_t dummy2; +#endif +} iconv_allocation_t; + +/* Allocates descriptor for code conversion from encoding ‘fromcode’ to + encoding ‘tocode’ into preallocated memory. Returns an error indicator + (0 or -1 with errno set). */ +#define iconv_open_into libiconv_open_into +extern int iconv_open_into (const char* tocode, const char* fromcode, + iconv_allocation_t* resultp); + +/* Control of attributes. */ +#define iconvctl libiconvctl +extern int iconvctl (iconv_t cd, int request, void* argument); + +/* Hook performed after every successful conversion of a Unicode character. */ +typedef void (*iconv_unicode_char_hook) (unsigned int uc, void* data); +/* Hook performed after every successful conversion of a wide character. */ +typedef void (*iconv_wide_char_hook) (wchar_t wc, void* data); +/* Set of hooks. */ +struct iconv_hooks { + iconv_unicode_char_hook uc_hook; + iconv_wide_char_hook wc_hook; + void* data; +}; + +/* Fallback function. Invoked when a small number of bytes could not be + converted to a Unicode character. This function should process all + bytes from inbuf and may produce replacement Unicode characters by calling + the write_replacement callback repeatedly. */ +typedef void (*iconv_unicode_mb_to_uc_fallback) + (const char* inbuf, size_t inbufsize, + void (*write_replacement) (const unsigned int *buf, size_t buflen, + void* callback_arg), + void* callback_arg, + void* data); +/* Fallback function. Invoked when a Unicode character could not be converted + to the target encoding. This function should process the character and + may produce replacement bytes (in the target encoding) by calling the + write_replacement callback repeatedly. */ +typedef void (*iconv_unicode_uc_to_mb_fallback) + (unsigned int code, + void (*write_replacement) (const char *buf, size_t buflen, + void* callback_arg), + void* callback_arg, + void* data); +#if 1 +/* Fallback function. Invoked when a number of bytes could not be converted to + a wide character. This function should process all bytes from inbuf and may + produce replacement wide characters by calling the write_replacement + callback repeatedly. */ +typedef void (*iconv_wchar_mb_to_wc_fallback) + (const char* inbuf, size_t inbufsize, + void (*write_replacement) (const wchar_t *buf, size_t buflen, + void* callback_arg), + void* callback_arg, + void* data); +/* Fallback function. Invoked when a wide character could not be converted to + the target encoding. This function should process the character and may + produce replacement bytes (in the target encoding) by calling the + write_replacement callback repeatedly. */ +typedef void (*iconv_wchar_wc_to_mb_fallback) + (wchar_t code, + void (*write_replacement) (const char *buf, size_t buflen, + void* callback_arg), + void* callback_arg, + void* data); +#else +/* If the wchar_t type does not exist, these two fallback functions are never + invoked. Their argument list therefore does not matter. */ +typedef void (*iconv_wchar_mb_to_wc_fallback) (); +typedef void (*iconv_wchar_wc_to_mb_fallback) (); +#endif +/* Set of fallbacks. */ +struct iconv_fallbacks { + iconv_unicode_mb_to_uc_fallback mb_to_uc_fallback; + iconv_unicode_uc_to_mb_fallback uc_to_mb_fallback; + iconv_wchar_mb_to_wc_fallback mb_to_wc_fallback; + iconv_wchar_wc_to_mb_fallback wc_to_mb_fallback; + void* data; +}; + +/* Requests for iconvctl. */ +#define ICONV_TRIVIALP 0 /* int *argument */ +#define ICONV_GET_TRANSLITERATE 1 /* int *argument */ +#define ICONV_SET_TRANSLITERATE 2 /* const int *argument */ +#define ICONV_GET_DISCARD_ILSEQ 3 /* int *argument */ +#define ICONV_SET_DISCARD_ILSEQ 4 /* const int *argument */ +#define ICONV_SET_HOOKS 5 /* const struct iconv_hooks *argument */ +#define ICONV_SET_FALLBACKS 6 /* const struct iconv_fallbacks *argument */ + +/* Listing of locale independent encodings. */ +#define iconvlist libiconvlist +extern void iconvlist (int (*do_one) (unsigned int namescount, + const char * const * names, + void* data), + void* data); + +/* Canonicalize an encoding name. + The result is either a canonical encoding name, or name itself. */ +extern const char * iconv_canonicalize (const char * name); + +/* Support for relocatable packages. */ + +/* Sets the original and the current installation prefix of the package. + Relocation simply replaces a pathname starting with the original prefix + by the corresponding pathname with the current prefix instead. Both + prefixes should be directory names without trailing slash (i.e. use "" + instead of "/"). */ +extern void libiconv_set_relocation_prefix (const char *orig_prefix, + const char *curr_prefix); + +#ifdef __cplusplus +} +#endif + +#endif + + +#endif /* _LIBICONV_H */ diff --git a/output/include/libcharset.h b/output/include/libcharset.h new file mode 100644 index 0000000..fcf2274 --- /dev/null +++ b/output/include/libcharset.h @@ -0,0 +1,45 @@ +/* Copyright (C) 2003 Free Software Foundation, Inc. + This file is part of the GNU CHARSET Library. + + The GNU CHARSET Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public License as + published by the Free Software Foundation; either version 2 of the + License, or (at your option) any later version. + + The GNU CHARSET Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public License + along with the GNU CHARSET Library; see the file COPYING.LIB. If not, + see . */ + +#ifndef _LIBCHARSET_H +#define _LIBCHARSET_H + +#include + + +#ifdef __cplusplus +extern "C" { +#endif + + +/* Support for relocatable packages. */ + +/* Sets the original and the current installation prefix of the package. + Relocation simply replaces a pathname starting with the original prefix + by the corresponding pathname with the current prefix instead. Both + prefixes should be directory names without trailing slash (i.e. use "" + instead of "/"). */ +extern void libcharset_set_relocation_prefix (const char *orig_prefix, + const char *curr_prefix); + + +#ifdef __cplusplus +} +#endif + + +#endif /* _LIBCHARSET_H */ diff --git a/output/include/localcharset.h b/output/include/localcharset.h new file mode 100644 index 0000000..34ce0ad --- /dev/null +++ b/output/include/localcharset.h @@ -0,0 +1,137 @@ +/* Determine a canonical name for the current locale's character encoding. + Copyright (C) 2000-2003, 2009-2019 Free Software Foundation, Inc. + This file is part of the GNU CHARSET Library. + + This program is free software; you can redistribute it and/or modify it + under the terms of the GNU Lesser General Public License as published + by the Free Software Foundation; either version 2, or (at your option) + any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public License + along with this program; if not, see . */ + +#ifndef _LOCALCHARSET_H +#define _LOCALCHARSET_H + + +#ifdef __cplusplus +extern "C" { +#endif + + +/* Determine the current locale's character encoding, and canonicalize it + into one of the canonical names listed below. + The result must not be freed; it is statically allocated. The result + becomes invalid when setlocale() is used to change the global locale, or + when the value of one of the environment variables LC_ALL, LC_CTYPE, LANG + is changed; threads in multithreaded programs should not do this. + If the canonical name cannot be determined, the result is a non-canonical + name. */ +extern const char * locale_charset (void); + +/* About GNU canonical names for character encodings: + + Every canonical name must be supported by GNU libiconv. Support by GNU libc + is also desirable. + + The name is case insensitive. Usually an upper case MIME charset name is + preferred. + + The current list of these GNU canonical names is: + + name MIME? used by which systems + (darwin = Mac OS X, windows = native Windows) + + ASCII, ANSI_X3.4-1968 glibc solaris freebsd netbsd darwin minix cygwin + ISO-8859-1 Y glibc aix hpux irix osf solaris freebsd netbsd openbsd darwin cygwin zos + ISO-8859-2 Y glibc aix hpux irix osf solaris freebsd netbsd openbsd darwin cygwin zos + ISO-8859-3 Y glibc solaris cygwin + ISO-8859-4 Y hpux osf solaris freebsd netbsd openbsd darwin + ISO-8859-5 Y glibc aix hpux irix osf solaris freebsd netbsd openbsd darwin cygwin zos + ISO-8859-6 Y glibc aix hpux solaris cygwin + ISO-8859-7 Y glibc aix hpux irix osf solaris freebsd netbsd openbsd darwin cygwin zos + ISO-8859-8 Y glibc aix hpux osf solaris cygwin zos + ISO-8859-9 Y glibc aix hpux irix osf solaris freebsd darwin cygwin zos + ISO-8859-13 glibc hpux solaris freebsd netbsd openbsd darwin cygwin + ISO-8859-14 glibc cygwin + ISO-8859-15 glibc aix irix osf solaris freebsd netbsd openbsd darwin cygwin + KOI8-R Y glibc hpux solaris freebsd netbsd openbsd darwin + KOI8-U Y glibc freebsd netbsd openbsd darwin cygwin + KOI8-T glibc + CP437 dos + CP775 dos + CP850 aix osf dos + CP852 dos + CP855 dos + CP856 aix + CP857 dos + CP861 dos + CP862 dos + CP864 dos + CP865 dos + CP866 freebsd netbsd openbsd darwin dos + CP869 dos + CP874 windows dos + CP922 aix + CP932 aix cygwin windows dos + CP943 aix zos + CP949 osf darwin windows dos + CP950 windows dos + CP1046 aix + CP1124 aix + CP1125 dos + CP1129 aix + CP1131 freebsd darwin + CP1250 windows + CP1251 glibc hpux solaris freebsd netbsd openbsd darwin cygwin windows + CP1252 aix windows + CP1253 windows + CP1254 windows + CP1255 glibc windows + CP1256 windows + CP1257 windows + GB2312 Y glibc aix hpux irix solaris freebsd netbsd darwin cygwin zos + EUC-JP Y glibc aix hpux irix osf solaris freebsd netbsd darwin cygwin + EUC-KR Y glibc aix hpux irix osf solaris freebsd netbsd darwin cygwin zos + EUC-TW glibc aix hpux irix osf solaris netbsd + BIG5 Y glibc aix hpux osf solaris freebsd netbsd darwin cygwin zos + BIG5-HKSCS glibc hpux solaris netbsd darwin + GBK glibc aix osf solaris freebsd darwin cygwin windows dos + GB18030 glibc hpux solaris freebsd netbsd darwin + SHIFT_JIS Y hpux osf solaris freebsd netbsd darwin + JOHAB glibc solaris windows + TIS-620 glibc aix hpux osf solaris cygwin zos + VISCII Y glibc + TCVN5712-1 glibc + ARMSCII-8 glibc freebsd netbsd darwin + GEORGIAN-PS glibc cygwin + PT154 glibc netbsd cygwin + HP-ROMAN8 hpux + HP-ARABIC8 hpux + HP-GREEK8 hpux + HP-HEBREW8 hpux + HP-TURKISH8 hpux + HP-KANA8 hpux + DEC-KANJI osf + DEC-HANYU osf + UTF-8 Y glibc aix hpux osf solaris netbsd darwin cygwin zos + + Note: Names which are not marked as being a MIME name should not be used in + Internet protocols for information interchange (mail, news, etc.). + + Note: ASCII and ANSI_X3.4-1968 are synonymous canonical names. Applications + must understand both names and treat them as equivalent. + */ + + +#ifdef __cplusplus +} +#endif + + +#endif /* _LOCALCHARSET_H */ diff --git a/output/lib/libcharset.1.dylib b/output/lib/libcharset.1.dylib new file mode 100755 index 0000000..6585b42 Binary files /dev/null and b/output/lib/libcharset.1.dylib differ diff --git a/output/lib/libcharset.a b/output/lib/libcharset.a new file mode 100644 index 0000000..0833f83 Binary files /dev/null and b/output/lib/libcharset.a differ diff --git a/output/lib/libcharset.dylib b/output/lib/libcharset.dylib new file mode 120000 index 0000000..ac395e2 --- /dev/null +++ b/output/lib/libcharset.dylib @@ -0,0 +1 @@ +libcharset.1.dylib \ No newline at end of file diff --git a/output/lib/libcharset.la b/output/lib/libcharset.la new file mode 100755 index 0000000..df1d15b --- /dev/null +++ b/output/lib/libcharset.la @@ -0,0 +1,41 @@ +# libcharset.la - a libtool library file +# Generated by libtool (GNU libtool) 2.4.7 +# +# Please DO NOT delete this file! +# It is necessary for linking the library. + +# The name that we can dlopen(3). +dlname='libcharset.1.dylib' + +# Names of this library. +library_names='libcharset.1.dylib libcharset.dylib' + +# The name of the static archive. +old_library='libcharset.a' + +# Linker flags that cannot go in dependency_libs. +inherited_linker_flags=' ' + +# Libraries that this one depends upon. +dependency_libs='' + +# Names of additional weak libraries provided by this library +weak_library_names='' + +# Version information for libcharset. +current=1 +age=0 +revision=0 + +# Is this an already installed library? +installed=yes + +# Should we warn about portability when linking against -modules? +shouldnotlink=no + +# Files to dlopen/dlpreopen +dlopen='' +dlpreopen='' + +# Directory that this library needs to be installed in: +libdir='/Users/yangzuhao/Downloads/libiconv-1.17/output/lib' diff --git a/output/lib/libiconv.2.dylib b/output/lib/libiconv.2.dylib new file mode 100755 index 0000000..d7e574b Binary files /dev/null and b/output/lib/libiconv.2.dylib differ diff --git a/output/lib/libiconv.dylib b/output/lib/libiconv.dylib new file mode 120000 index 0000000..bd58fde --- /dev/null +++ b/output/lib/libiconv.dylib @@ -0,0 +1 @@ +libiconv.2.dylib \ No newline at end of file diff --git a/output/lib/libiconv.la b/output/lib/libiconv.la new file mode 100755 index 0000000..85b94ec --- /dev/null +++ b/output/lib/libiconv.la @@ -0,0 +1,41 @@ +# libiconv.la - a libtool library file +# Generated by libtool (GNU libtool) 2.4.7 +# +# Please DO NOT delete this file! +# It is necessary for linking the library. + +# The name that we can dlopen(3). +dlname='libiconv.2.dylib' + +# Names of this library. +library_names='libiconv.2.dylib libiconv.dylib' + +# The name of the static archive. +old_library='' + +# Linker flags that cannot go in dependency_libs. +inherited_linker_flags=' ' + +# Libraries that this one depends upon. +dependency_libs='' + +# Names of additional weak libraries provided by this library +weak_library_names='' + +# Version information for libiconv. +current=8 +age=6 +revision=1 + +# Is this an already installed library? +installed=yes + +# Should we warn about portability when linking against -modules? +shouldnotlink=no + +# Files to dlopen/dlpreopen +dlopen='' +dlpreopen='' + +# Directory that this library needs to be installed in: +libdir='/Users/yangzuhao/Downloads/libiconv-1.17/output/lib' diff --git a/output/share/doc/iconv.1.html b/output/share/doc/iconv.1.html new file mode 100644 index 0000000..04caf98 --- /dev/null +++ b/output/share/doc/iconv.1.html @@ -0,0 +1,205 @@ + + + + + + + + +ICONV + + + + +

ICONV

+ +NAME
+SYNOPSIS
+DESCRIPTION
+EXAMPLES
+CONFORMING TO
+SEE ALSO
+ +
+ + +

NAME + +

+ + +

iconv − +character set conversion

+ +

SYNOPSIS + +

+ + +

iconv +[OPTION...] [−f encoding] +[−t encoding] [inputfile ...] +
+iconv −l

+ +

DESCRIPTION + +

+ + +

The +iconv program converts text from one encoding to +another encoding. More precisely, it converts from +the encoding given for the −f option to +the encoding given for the −t option. Either of +these encodings defaults to the encoding of the current +locale. All the inputfiles are read and converted in +turn; if no inputfile is given, the standard input is +used. The converted text is printed to standard output.

+ +

The encodings +permitted are system dependent. For the libiconv +implementation, they are listed in the iconv_open(3) manual +page.

+ +

Options +controlling the input and output format:
+−f
encoding, +−−from−code=encoding

+ +

Specifies the encoding of the +input.

+ +

−t +encoding, +−−to−code=encoding

+ +

Specifies the encoding of the +output.

+ +

Options +controlling conversion problems:

+ + + + + + + +
+ + +

−c

+ + +

When this option is given, characters that cannot be +converted are silently discarded, instead of leading to a +conversion error.

+ + +

−−unicode−subst=formatstring

+ +

When this option is given, +Unicode characters that cannot be represented in the target +encoding are replaced with a placeholder string that is +constructed from the given formatstring, applied to +the Unicode code point. The formatstring must be a +format string in the same format as for the printf +command or the printf() function, taking either no +argument or exactly one unsigned integer argument.

+ + +

−−byte−subst=formatstring

+ +

When this option is given, +bytes in the input that are not valid in the source encoding +are replaced with a placeholder string that is constructed +from the given formatstring, applied to the +byte’s value. The formatstring must be a format +string in the same format as for the printf command +or the printf() function, taking either no argument +or exactly one unsigned integer argument.

+ + +

−−widechar−subst=formatstring

+ +

When this option is given, wide +characters in the input that are not valid in the source +encoding are replaced with a placeholder string that is +constructed from the given formatstring, applied to +the byte’s value. The formatstring must be a +format string in the same format as for the printf +command or the printf() function, taking either no +argument or exactly one unsigned integer argument.

+ +

Options +controlling error output:
+−s
, −−silent

+ +

When this option is given, +error messages about invalid or unconvertible characters are +omitted, but the actual converted text is unaffected.

+ +

The iconv +−l or iconv −−list command +lists the names of the supported encodings, in a system +dependent format. For the libiconv implementation, the names +are printed in upper case, separated by whitespace, and +alias names of an encoding are listed on the same line as +the encoding itself.

+ +

EXAMPLES + +

+ + +

iconv +−f ISO−8859−1 −t UTF−8

+ +

converts input from the old +West-European encoding ISO−8859−1 to +Unicode.

+ +

iconv +−f KOI8−R +−−byte−subst="<0x%x>"
+ +−−unicode−subst="<U+%04X>"

+ +

converts input from the old +Russian encoding KOI8−R to the locale encoding, +substituting an angle bracket notation with hexadecimal +numbers for invalid bytes and for valid but unconvertible +characters.

+ +

iconv +−−list

+ +

lists the supported +encodings.

+ +

CONFORMING TO + +

+ + +

POSIX:2001

+ +

SEE ALSO + +

+ + + +

iconv_open(3), +locale(7)

+
+ + diff --git a/output/share/doc/iconv.3.html b/output/share/doc/iconv.3.html new file mode 100644 index 0000000..8f146da --- /dev/null +++ b/output/share/doc/iconv.3.html @@ -0,0 +1,206 @@ + + + + + + + + +ICONV + + + + +

ICONV

+ +NAME
+SYNOPSIS
+DESCRIPTION
+RETURN VALUE
+ERRORS
+CONFORMING TO
+SEE ALSO
+ +
+ + +

NAME + +

+ + +

iconv − +perform character set conversion

+ +

SYNOPSIS + +

+ + +

#include +<iconv.h>

+ +

size_t iconv +(iconv_t cd,
+const char* *
inbuf, size_t * +inbytesleft,
+char* *
outbuf, size_t * +outbytesleft);

+ +

DESCRIPTION + +

+ + +

The argument +cd must be a conversion descriptor created using the +function iconv_open.

+ +

The main case +is when inbuf is not NULL and *inbuf is not +NULL. In this case, the iconv function converts the +multibyte sequence starting at *inbuf to a multibyte +sequence starting at *outbuf. At most +*inbytesleft bytes, starting at *inbuf, will +be read. At most *outbytesleft bytes, starting at +*outbuf, will be written.

+ +

The +iconv function converts one multibyte character at a +time, and for each character conversion it increments +*inbuf and decrements *inbytesleft by the +number of converted input bytes, it increments +*outbuf and decrements *outbytesleft by the +number of converted output bytes, and it updates the +conversion state contained in cd. If the character +encoding of the input is stateful, the iconv function +can also convert a sequence of input bytes to an update of +the conversion state without producing any output bytes; +such input is called a shift sequence. The conversion +can stop for four reasons:

+ +

1. An invalid +multibyte sequence is encountered in the input. In this case +it sets errno to EILSEQ and returns +(size_t)(−1). *inbuf is left pointing to the +beginning of the invalid multibyte sequence.

+ +

2. The input +byte sequence has been entirely converted, i.e. +*inbytesleft has gone down to 0. In this case +iconv returns the number of non-reversible +conversions performed during this call.

+ +

3. An +incomplete multibyte sequence is encountered in the input, +and the input byte sequence terminates after it. In this +case it sets errno to EINVAL and returns +(size_t)(−1). *inbuf is left pointing to the +beginning of the incomplete multibyte sequence.

+ +

4. The output +buffer has no more room for the next converted character. In +this case it sets errno to E2BIG and returns +(size_t)(−1).

+ +

A different +case is when inbuf is NULL or *inbuf is NULL, +but outbuf is not NULL and *outbuf is not +NULL. In this case, the iconv function attempts to +set cd’s conversion state to the initial state +and store a corresponding shift sequence at *outbuf. +At most *outbytesleft bytes, starting at +*outbuf, will be written. If the output buffer has no +more room for this reset sequence, it sets errno to +E2BIG and returns (size_t)(−1). Otherwise it +increments *outbuf and decrements +*outbytesleft by the number of bytes written.

+ +

A third case is +when inbuf is NULL or *inbuf is NULL, and +outbuf is NULL or *outbuf is NULL. In this +case, the iconv function sets cd’s +conversion state to the initial state.

+ +

RETURN VALUE + +

+ + +

The +iconv function returns the number of characters +converted in a non-reversible way during this call; +reversible conversions are not counted. In case of error, it +sets errno and returns (size_t)(−1).

+ +

ERRORS + +

+ + +

The following +errors can occur, among others:

+ + + + + + + + + + + + + + + + + +
+ + +

E2BIG

+ + +

There is not sufficient room at *outbuf.

+ + +

EILSEQ

+ + +

An invalid multibyte sequence has been encountered in +the input.

+ + +

EINVAL

+ + +

An incomplete multibyte sequence has been encountered in +the input.

+ +

CONFORMING TO + +

+ + +

POSIX:2001

+ +

SEE ALSO + +

+ + + +

iconv_open(3), +iconvctl(3) iconv_close(3)

+
+ + diff --git a/output/share/doc/iconv_close.3.html b/output/share/doc/iconv_close.3.html new file mode 100644 index 0000000..b31c8f1 --- /dev/null +++ b/output/share/doc/iconv_close.3.html @@ -0,0 +1,89 @@ + + + + + + + + +ICONV_CLOSE + + + + +

ICONV_CLOSE

+ +NAME
+SYNOPSIS
+DESCRIPTION
+RETURN VALUE
+CONFORMING TO
+SEE ALSO
+ +
+ + +

NAME + +

+ + +

iconv_close +− deallocate descriptor for character set +conversion

+ +

SYNOPSIS + +

+ + +

#include +<iconv.h>

+ +

int +iconv_close (iconv_t cd);

+ +

DESCRIPTION + +

+ + +

The +iconv_close function deallocates a conversion +descriptor cd previously allocated using +iconv_open.

+ +

RETURN VALUE + +

+ + +

When +successful, the iconv_close function returns 0. In +case of error, it sets errno and returns +−1.

+ +

CONFORMING TO + +

+ + +

POSIX:2001

+ +

SEE ALSO + +

+ + + +

iconv_open(3) +iconv(3)

+
+ + diff --git a/output/share/doc/iconv_open.3.html b/output/share/doc/iconv_open.3.html new file mode 100644 index 0000000..c9482a3 --- /dev/null +++ b/output/share/doc/iconv_open.3.html @@ -0,0 +1,345 @@ + + + + + + + + +ICONV_OPEN + + + + +

ICONV_OPEN

+ +NAME
+SYNOPSIS
+DESCRIPTION
+RETURN VALUE
+ERRORS
+CONFORMING TO
+SEE ALSO
+ +
+ + +

NAME + +

+ + +

iconv_open +− allocate descriptor for character set conversion

+ +

SYNOPSIS + +

+ + +

#include +<iconv.h>

+ +

iconv_t +iconv_open (const char* tocode, const +char* fromcode);

+ +

DESCRIPTION + +

+ + +

The +iconv_open function allocates a conversion descriptor +suitable for converting byte sequences from character +encoding fromcode to character encoding +tocode.

+ +

The values +permitted for fromcode and tocode and the +supported combinations are system dependent. For the +libiconv library, the following encodings are supported, in +all combinations.
+European languages

+ +

ASCII, +ISO−8859−{1,2,3,4,5,7,9,10,13,14,15,16}, +KOI8−R, KOI8−U, KOI8−RU, +CP{1250,1251,1252,1253,1254,1257}, CP{850,866,1131}, +Mac{Roman,CentralEurope,Iceland,Croatian,Romania}, +Mac{Cyrillic,Ukraine,Greek,Turkish}, Macintosh

+ +

Semitic languages

+ +

ISO−8859−{6,8}, +CP{1255,1256}, CP862, Mac{Hebrew,Arabic}

+ +

Japanese

+ +

EUC−JP, SHIFT_JIS, CP932, +ISO−2022−JP, ISO−2022−JP−2, +ISO−2022−JP−1, +ISO-2022−JP−MS

+ +

Chinese

+ +

EUC−CN, HZ, GBK, CP936, +GB18030, EUC−TW, BIG5, CP950, BIG5−HKSCS, +BIG5−HKSCS:2004, BIG5−HKSCS:2001, +BIG5−HKSCS:1999, ISO−2022−CN, +ISO−2022−CN−EXT

+ + + + + + + + +
+ + +

Korean

+ + +

EUC−KR, CP949, ISO−2022−KR, JOHAB

+
+ +

Armenian

+ +

ARMSCII−8

+ +

Georgian

+ +

Georgian−Academy, +Georgian−PS

+ + + + + + + + + + + + + + + + + + + + +
+ + +

Tajik

+ + +

KOI8−T

+
+ + +

Kazakh

+ + +

PT154, RK1048

+
+ + +

Thai

+ + +

TIS−620, CP874, MacThai

+
+ +

Laotian

+ +

MuleLao−1, CP1133

+ +

Vietnamese

+ +

VISCII, TCVN, CP1258

+ +

Platform specifics

+ +

HP−ROMAN8, NEXTSTEP

+ +

Full Unicode

+ +

UTF−8
+UCS−2, UCS−2BE, UCS−2LE
+UCS−4, UCS−4BE, UCS−4LE
+UTF−16, UTF−16BE, UTF−16LE
+UTF−32, UTF−32BE, UTF−32LE
+UTF−7
+C99, JAVA

+ +

Full Unicode, in terms of +uint16_t or uint32_t

+ +

(with machine dependent +endianness and alignment)
+UCS−2−INTERNAL, UCS−4−INTERNAL

+ +

Locale dependent, in terms of +char or wchar_t

+ +

(with machine dependent +endianness and alignment, and with semantics depending on +the OS and the current LC_CTYPE locale facet)
+char, wchar_t

+ +

When configured +with the option +−−enable−extra−encodings, it +also provides support for a few extra encodings:
+European languages

+ + +

CP{437,737,775,852,853,855,857,858,860,861,863,865,869,1125}

+ +

Semitic languages

+ +

CP864

+ +

Japanese

+ +

EUC−JISX0213, +Shift_JISX0213, ISO−2022−JP−3

+ +

Chinese

+ +

BIG5−2003 +(experimental)

+ +

Turkmen

+ +

TDS565

+ +

Platform specifics

+ +

ATARIST, +RISCOS−LATIN1

+ +

EBCDIC compatible (not ASCII +compatible, very rarely used)

+ +

European languages:
+ +IBM-{037,273,277,278,280,282,284,285,297,423,500,870,871,875,880}, +
+ +IBM-{905,924,1025,1026,1047,1112,1122,1123,1140,1141,1142,1143}, +
+ +IBM-{1144,1145,1146,1147,1148,1149,1153,1154,1155,1156,1157,1158}, +
+IBM-{1165,1166,4971}
+Semitic languages:
+IBM-{424,425,12712,16804}
+Persian:
+IBM-1097
+Thai:
+IBM-{838,1160}
+Laotian:
+IBM-1132
+Vietnamese:
+IBM-{1130,1164}
+Indic languages:
+IBM-1137

+ +

The empty +encoding name "" is equivalent to +"char": it denotes the locale dependent character +encoding.

+ +

When the string +"//TRANSLIT" is appended to tocode, +transliteration is activated. This means that when a +character cannot be represented in the target character set, +it can be approximated through one or several characters +that look similar to the original character.

+ +

When the string +"//IGNORE" is appended to tocode, +characters that cannot be represented in the target +character set will be silently discarded.

+ +

The resulting +conversion descriptor can be used with iconv any +number of times. It remains valid until deallocated using +iconv_close.

+ +

A conversion +descriptor contains a conversion state. After creation using +iconv_open, the state is in the initial state. Using +iconv modifies the descriptor’s conversion +state. (This implies that a conversion descriptor can not be +used in multiple threads simultaneously.) To bring the state +back to the initial state, use iconv with NULL as +inbuf argument.

+ +

RETURN VALUE + +

+ + +

The +iconv_open function returns a freshly allocated +conversion descriptor. In case of error, it sets +errno and returns (iconv_t)(−1).

+ +

ERRORS + +

+ + +

The following +error can occur, among others:

+ + + + + + + +
+ + +

EINVAL

+ + +

The conversion from fromcode to tocode is +not supported by the implementation.

+ +

CONFORMING TO + +

+ + +

POSIX:2001

+ +

SEE ALSO + +

+ + + +

iconv(3) +iconvctl(3) iconv_close(3)

+
+ + diff --git a/output/share/doc/iconv_open_into.3.html b/output/share/doc/iconv_open_into.3.html new file mode 100644 index 0000000..192f6c3 --- /dev/null +++ b/output/share/doc/iconv_open_into.3.html @@ -0,0 +1,132 @@ + + + + + + + + +ICONV_OPEN_INTO + + + + +

ICONV_OPEN_INTO

+ +NAME
+SYNOPSIS
+DESCRIPTION
+RETURN VALUE
+ERRORS
+CONFORMING TO
+SEE ALSO
+ +
+ + +

NAME + +

+ + + +

iconv_open_into +− initialize descriptor for character set +conversion

+ +

SYNOPSIS + +

+ + +

#include +<iconv.h>

+ +

int +iconv_open_into (const char* tocode, const +char* fromcode,
+iconv_allocation_t*
resultp);

+ +

DESCRIPTION + +

+ + +

The +iconv_open_into function initializes a conversion +descriptor suitable for converting byte sequences from +character encoding fromcode to character encoding +tocode. The conversion descriptor is stored in the +memory pointed to by resultp.

+ +

The values +permitted for fromcode and tocode are the same +as for the function iconv_open.

+ +

After a +successful return from this function, resultp can be +be used as an iconv_t object with the iconv +function.

+ +

RETURN VALUE + +

+ + +

The +iconv_open_into function fills *resultp +and returns 0 if it succeeds. In case of error, it sets +errno and returns −1.

+ +

ERRORS + +

+ + +

The following +error can occur, among others:

+ + + + + + + +
+ + +

EINVAL

+ + +

The conversion from fromcode to tocode is +not supported by the implementation.

+ +

CONFORMING TO + +

+ + +

This function +is implemented only in GNU libiconv and not in other +iconv implementations. It is not backed by a +standard. You can test for its presence through +(_LIBICONV_VERSION >= 0x010D).

+ +

SEE ALSO + +

+ + + +

iconv_open(3) +iconv(3)

+
+ + diff --git a/output/share/doc/iconvctl.3.html b/output/share/doc/iconvctl.3.html new file mode 100644 index 0000000..16d85c1 --- /dev/null +++ b/output/share/doc/iconvctl.3.html @@ -0,0 +1,170 @@ + + + + + + + + +ICONVCTL + + + + +

ICONVCTL

+ +NAME
+SYNOPSIS
+DESCRIPTION
+REQUEST VALUES
+RETURN VALUE
+ERRORS
+CONFORMING TO
+SEE ALSO
+ +
+ + +

NAME + +

+ + +

iconvctl +− control iconv behavior

+ +

SYNOPSIS + +

+ + +

#include +<iconv.h>

+ +

int iconvctl +(iconv_t cd , int request, void +* argument);

+ +

DESCRIPTION + +

+ + +

The argument +cd must be a conversion descriptor created using the +function iconv_open.

+ + +

iconvctl +queries or adjusts the behavior of the iconv +function, when invoked with the specified conversion +descriptor, depending on the request value.

+ +

REQUEST VALUES + +

+ + +

The following +are permissible values for the request parameter. +
+ICONV_TRIVIALP

+ +

argument should be an +int * which will receive 1 if the conversion is +trivial, or 0 otherwise.

+ + +

ICONV_GET_TRANSLITERATE

+ +

argument should be an +int * which will receive 1 if transliteration is +enabled in the conversion, or 0 otherwise.

+ + +

ICONV_SET_TRANSLITERATE

+ +

argument should be a +const int *, pointing to an int value. A +non-zero value is used to enable transliteration in the +conversion. A zero value disables it.

+ + +

ICONV_GET_DISCARD_ILSEQ

+ +

argument should be an +int * which will receive 1 if "illegal sequence +discard and continue" is enabled in the conversion, or +0 otherwise.

+ + +

ICONV_SET_DISCARD_ILSEQ

+ +

argument should be a +const int *, pointing to an int value. A +non-zero value is used to enable "illegal sequence +discard and continue" in the conversion. A zero value +disables it.

+ +

RETURN VALUE + +

+ + +

The +iconvctl function returns 0 if it succeeds. In case +of error, it sets errno and returns −1.

+ +

ERRORS + +

+ + +

The following +errors can occur, among others:

+ + + + + + + + +
+ + +

EINVAL

+ + +

The request is invalid.

+
+ +

CONFORMING TO + +

+ + +

This function +is implemented only in GNU libiconv and not in other +iconv implementations. It is not backed by a +standard. You can test for its presence through +(_LIBICONV_VERSION >= 0x0108).

+ +

SEE ALSO + +

+ + + +

iconv_open(3) +iconv(3)

+
+ + diff --git a/output/share/man/man1/iconv.1 b/output/share/man/man1/iconv.1 new file mode 100644 index 0000000..9c6af5a --- /dev/null +++ b/output/share/man/man1/iconv.1 @@ -0,0 +1,108 @@ +.\" Copyright (c) Free Software Foundation, Inc. +.\" +.\" This is free documentation; you can redistribute it and/or +.\" modify it under the terms of the GNU General Public License as +.\" published by the Free Software Foundation; either version 3 of +.\" the License, or (at your option) any later version. +.\" +.\" References consulted: +.\" OpenGroup's Single Unix specification http://www.UNIX-systems.org/online.html +.\" POSIX 2001 draft6 +.\" +.TH ICONV 1 "March 31, 2007" "GNU" "Linux Programmer's Manual" +.SH NAME +iconv \- character set conversion +.SH SYNOPSIS +.nf +iconv [\fIOPTION\fP...] [\fB\-f\fP \fIencoding\fP] [\fB\-t\fP \fIencoding\fP] [\fIinputfile\fP ...] +iconv \fB\-l\fP +.fi +.SH DESCRIPTION +The \fBiconv\fP program converts text from one encoding to another encoding. +More precisely, it converts \fBfrom\fP the encoding given for the \fB\-f\fP +option \fBto\fP the encoding given for the \fB\-t\fP option. Either of these +encodings defaults to the encoding of the current locale. All the +\fIinputfile\fPs are read and converted in turn; if no \fIinputfile\fP is +given, the standard input is used. The converted text is printed to standard +output. +.PP +The encodings permitted are system dependent. For the libiconv implementation, +they are listed in the iconv_open(3) manual page. +.PP +Options controlling the input and output format: +.TP +\fB\-f\fP \fIencoding\fP, \fB\-\-from\-code=\fP\fIencoding\fP +Specifies the encoding of the input. +.TP +\fB\-t\fP \fIencoding\fP, \fB\-\-to\-code=\fP\fIencoding\fP +Specifies the encoding of the output. +.PP +Options controlling conversion problems: +.TP +\fB\-c\fP +When this option is given, characters that cannot be converted are silently +discarded, instead of leading to a conversion error. +.TP +\fB\-\-unicode\-subst=\fP\fIformatstring\fP +When this option is given, Unicode characters that cannot be represented in +the target encoding are replaced with a placeholder string that is constructed +from the given \fIformatstring\fP, applied to the Unicode code point. The +\fIformatstring\fP must be a format string in the same format as for the +.I printf +command or the +.I printf() +function, taking either no argument or exactly one unsigned integer argument. +.TP +\fB\-\-byte\-subst=\fP\fIformatstring\fP +When this option is given, bytes in the input that are not valid in the source +encoding are replaced with a placeholder string that is constructed from the +given \fIformatstring\fP, applied to the byte's value. The \fIformatstring\fP +must be a format string in the same format as for the +.I printf +command or the +.I printf() +function, taking either no argument or exactly one unsigned integer argument. +.TP +\fB\-\-widechar\-subst=\fP\fIformatstring\fP +When this option is given, wide characters in the input that are not valid in +the source encoding are replaced with a placeholder string that is constructed +from the given \fIformatstring\fP, applied to the byte's value. The +\fIformatstring\fP must be a format string in the same format as for the +.I printf +command or the +.I printf() +function, taking either no argument or exactly one unsigned integer argument. +.PP +Options controlling error output: +.TP +\fB\-s\fP, \fB\-\-silent\fP +When this option is given, error messages about invalid or unconvertible +characters are omitted, but the actual converted text is unaffected. +.PP +The \fBiconv \-l\fP or \fBiconv \-\-list\fP command lists the names of the +supported encodings, in a system dependent format. For the libiconv +implementation, the names are printed in upper case, separated by whitespace, +and alias names of an encoding are listed on the same line as the encoding +itself. +.SH EXAMPLES +.TP +\fBiconv \-f ISO\-8859\-1 \-t UTF\-8\fP +converts input from the old West-European encoding ISO\-8859\-1 to Unicode. +.PP +.nf +\fBiconv \-f KOI8\-R \-\-byte\-subst="<0x%x>"\fP +\fB \-\-unicode\-subst=""\fP +.fi +.RS +converts input from the old Russian encoding KOI8\-R to the locale encoding, +substituting an angle bracket notation with hexadecimal numbers for invalid +bytes and for valid but unconvertible characters. +.RE +.TP +\fBiconv \-\-list\fP +lists the supported encodings. +.SH "CONFORMING TO" +POSIX:2001 +.SH "SEE ALSO" +.BR iconv_open (3), +.BR locale (7) diff --git a/output/share/man/man3/iconv.3 b/output/share/man/man3/iconv.3 new file mode 100644 index 0000000..f01e24c --- /dev/null +++ b/output/share/man/man3/iconv.3 @@ -0,0 +1,92 @@ +.\" Copyright (c) Free Software Foundation, Inc. +.\" +.\" This is free documentation; you can redistribute it and/or +.\" modify it under the terms of the GNU General Public License as +.\" published by the Free Software Foundation; either version 3 of +.\" the License, or (at your option) any later version. +.\" +.\" References consulted: +.\" GNU glibc-2 source code and manual +.\" OpenGroup's Single Unix specification http://www.UNIX-systems.org/online.html +.\" +.TH ICONV 3 "September 7, 2008" "GNU" "Linux Programmer's Manual" +.SH NAME +iconv \- perform character set conversion +.SH SYNOPSIS +.nf +.B #include +.sp +.BI "size_t iconv (iconv_t " cd , +.BI " const char* * " inbuf ", size_t * "inbytesleft , +.BI " char* * " outbuf ", size_t * "outbytesleft ); +.fi +.SH DESCRIPTION +The argument \fIcd\fP must be a conversion descriptor created using the +function \fBiconv_open\fP. +.PP +The main case is when \fIinbuf\fP is not NULL and \fI*inbuf\fP is not NULL. +In this case, the \fBiconv\fP function converts the multibyte sequence +starting at \fI*inbuf\fP to a multibyte sequence starting at \fI*outbuf\fP. +At most \fI*inbytesleft\fP bytes, starting at \fI*inbuf\fP, will be read. +At most \fI*outbytesleft\fP bytes, starting at \fI*outbuf\fP, will be written. +.PP +The \fBiconv\fP function converts one multibyte character at a time, and for +each character conversion it increments \fI*inbuf\fP and decrements +\fI*inbytesleft\fP by the number of converted input bytes, it increments +\fI*outbuf\fP and decrements \fI*outbytesleft\fP by the number of converted +output bytes, and it updates the conversion state contained in \fIcd\fP. +If the character encoding of the input is stateful, the \fBiconv\fP function +can also convert a sequence of input bytes to an update of the conversion state +without producing any output bytes; such input is called a \fIshift sequence\fP. +The conversion can stop for four reasons: +.PP +1. An invalid multibyte sequence is encountered in the input. In this case +it sets \fBerrno\fP to \fBEILSEQ\fP and returns (size_t)(\-1). \fI*inbuf\fP +is left pointing to the beginning of the invalid multibyte sequence. +.PP +2. The input byte sequence has been entirely converted, i.e. \fI*inbytesleft\fP +has gone down to 0. In this case \fBiconv\fP returns the number of +non-reversible conversions performed during this call. +.PP +3. An incomplete multibyte sequence is encountered in the input, and the +input byte sequence terminates after it. In this case it sets \fBerrno\fP to +\fBEINVAL\fP and returns (size_t)(\-1). \fI*inbuf\fP is left pointing to the +beginning of the incomplete multibyte sequence. +.PP +4. The output buffer has no more room for the next converted character. In +this case it sets \fBerrno\fP to \fBE2BIG\fP and returns (size_t)(\-1). +.PP +A different case is when \fIinbuf\fP is NULL or \fI*inbuf\fP is NULL, but +\fIoutbuf\fP is not NULL and \fI*outbuf\fP is not NULL. In this case, the +\fBiconv\fP function attempts to set \fIcd\fP's conversion state to the +initial state and store a corresponding shift sequence at \fI*outbuf\fP. +At most \fI*outbytesleft\fP bytes, starting at \fI*outbuf\fP, will be written. +If the output buffer has no more room for this reset sequence, it sets +\fBerrno\fP to \fBE2BIG\fP and returns (size_t)(\-1). Otherwise it increments +\fI*outbuf\fP and decrements \fI*outbytesleft\fP by the number of bytes +written. +.PP +A third case is when \fIinbuf\fP is NULL or \fI*inbuf\fP is NULL, and +\fIoutbuf\fP is NULL or \fI*outbuf\fP is NULL. In this case, the \fBiconv\fP +function sets \fIcd\fP's conversion state to the initial state. +.SH "RETURN VALUE" +The \fBiconv\fP function returns the number of characters converted in a +non-reversible way during this call; reversible conversions are not counted. +In case of error, it sets \fBerrno\fP and returns (size_t)(\-1). +.SH ERRORS +The following errors can occur, among others: +.TP +.B E2BIG +There is not sufficient room at \fI*outbuf\fP. +.TP +.B EILSEQ +An invalid multibyte sequence has been encountered in the input. +.TP +.B EINVAL +An incomplete multibyte sequence has been encountered in the input. +.SH "CONFORMING TO" +POSIX:2001 +.SH "SEE ALSO" +.BR iconv_open (3), +.BR iconvctl (3) +.BR iconv_close (3) diff --git a/output/share/man/man3/iconv_close.3 b/output/share/man/man3/iconv_close.3 new file mode 100644 index 0000000..4905f0f --- /dev/null +++ b/output/share/man/man3/iconv_close.3 @@ -0,0 +1,31 @@ +.\" Copyright (c) Free Software Foundation, Inc. +.\" +.\" This is free documentation; you can redistribute it and/or +.\" modify it under the terms of the GNU General Public License as +.\" published by the Free Software Foundation; either version 3 of +.\" the License, or (at your option) any later version. +.\" +.\" References consulted: +.\" GNU glibc-2 source code and manual +.\" OpenGroup's Single Unix specification http://www.UNIX-systems.org/online.html +.\" +.TH ICONV_CLOSE 3 "March 31, 2007" "GNU" "Linux Programmer's Manual" +.SH NAME +iconv_close \- deallocate descriptor for character set conversion +.SH SYNOPSIS +.nf +.B #include +.sp +.BI "int iconv_close (iconv_t " cd ); +.fi +.SH DESCRIPTION +The \fBiconv_close\fP function deallocates a conversion descriptor \fIcd\fP +previously allocated using \fBiconv_open\fP. +.SH "RETURN VALUE" +When successful, the \fBiconv_close\fP function returns 0. In case of error, +it sets \fBerrno\fP and returns \-1. +.SH "CONFORMING TO" +POSIX:2001 +.SH "SEE ALSO" +.BR iconv_open (3) +.BR iconv (3) diff --git a/output/share/man/man3/iconv_open.3 b/output/share/man/man3/iconv_open.3 new file mode 100644 index 0000000..fb6316d --- /dev/null +++ b/output/share/man/man3/iconv_open.3 @@ -0,0 +1,254 @@ +.\" Copyright (c) Free Software Foundation, Inc. +.\" +.\" This is free documentation; you can redistribute it and/or +.\" modify it under the terms of the GNU General Public License as +.\" published by the Free Software Foundation; either version 3 of +.\" the License, or (at your option) any later version. +.\" +.\" References consulted: +.\" GNU glibc-2 source code and manual +.\" OpenGroup's Single Unix specification http://www.UNIX-systems.org/online.html +.\" +.TH ICONV_OPEN 3 "January 23, 2022" "GNU" "Linux Programmer's Manual" +.SH NAME +iconv_open \- allocate descriptor for character set conversion +.SH SYNOPSIS +.nf +.B #include +.sp +.BI "iconv_t iconv_open (const char* " tocode ", const char* " fromcode ); +.fi +.SH DESCRIPTION +The \fBiconv_open\fP function allocates a conversion descriptor suitable +for converting byte sequences from character encoding \fIfromcode\fP to +character encoding \fItocode\fP. +.PP +The values permitted for \fIfromcode\fP and \fItocode\fP and the supported +combinations are system dependent. For the libiconv library, the following +encodings are supported, in all combinations. +.TP +European languages +.nf +.fi +ASCII, ISO\-8859\-{1,2,3,4,5,7,9,10,13,14,15,16}, +KOI8\-R, KOI8\-U, KOI8\-RU, +CP{1250,1251,1252,1253,1254,1257}, CP{850,866,1131}, +Mac{Roman,CentralEurope,Iceland,Croatian,Romania}, +Mac{Cyrillic,Ukraine,Greek,Turkish}, +Macintosh +.TP +Semitic languages +.nf +.fi +ISO\-8859\-{6,8}, CP{1255,1256}, CP862, Mac{Hebrew,Arabic} +.TP +Japanese +.nf +.fi +EUC\-JP, SHIFT_JIS, CP932, ISO\-2022\-JP, ISO\-2022\-JP\-2, ISO\-2022\-JP\-1, +ISO-2022\-JP\-MS +.TP +Chinese +.nf +.fi +EUC\-CN, HZ, GBK, CP936, GB18030, EUC\-TW, BIG5, CP950, BIG5\-HKSCS, +BIG5\-HKSCS:2004, BIG5\-HKSCS:2001, BIG5\-HKSCS:1999, ISO\-2022\-CN, +ISO\-2022\-CN\-EXT +.TP +Korean +.nf +.fi +EUC\-KR, CP949, ISO\-2022\-KR, JOHAB +.TP +Armenian +.nf +.fi +ARMSCII\-8 +.TP +Georgian +.nf +.fi +Georgian\-Academy, Georgian\-PS +.TP +Tajik +.nf +.fi +KOI8\-T +.TP +Kazakh +.nf +.fi +PT154, RK1048 +.TP +Thai +.nf +.fi +TIS\-620, CP874, MacThai +.TP +Laotian +.nf +.fi +MuleLao\-1, CP1133 +.TP +Vietnamese +.nf +.fi +VISCII, TCVN, CP1258 +.TP +Platform specifics +.nf +.fi +HP\-ROMAN8, NEXTSTEP +.TP +Full Unicode +.nf +.fi +UTF\-8 +.nf +.fi +UCS\-2, UCS\-2BE, UCS\-2LE +.nf +.fi +UCS\-4, UCS\-4BE, UCS\-4LE +.nf +.fi +UTF\-16, UTF\-16BE, UTF\-16LE +.nf +.fi +UTF\-32, UTF\-32BE, UTF\-32LE +.nf +.fi +UTF\-7 +.nf +.fi +C99, JAVA +.TP +Full Unicode, in terms of \fBuint16_t\fP or \fBuint32_t\fP +(with machine dependent endianness and alignment) +.nf +.fi +UCS\-2\-INTERNAL, UCS\-4\-INTERNAL +.TP +Locale dependent, in terms of \fBchar\fP or \fBwchar_t\fP +(with machine dependent endianness and alignment, and with semantics +depending on the OS and the current LC_CTYPE locale facet) +.nf +.fi +char, wchar_t +.PP +When configured with the option \fB\-\-enable\-extra\-encodings\fP, it also +provides support for a few extra encodings: +.TP +European languages +.nf +CP{437,737,775,852,853,855,857,858,860,861,863,865,869,1125} +.fi +.TP +Semitic languages +.nf +.fi +CP864 +.TP +Japanese +.nf +.fi +EUC\-JISX0213, Shift_JISX0213, ISO\-2022\-JP\-3 +.TP +Chinese +.nf +.fi +BIG5\-2003 (experimental) +.TP +Turkmen +.nf +.fi +TDS565 +.TP +Platform specifics +.nf +.fi +ATARIST, RISCOS\-LATIN1 +.PP +.TP +EBCDIC compatible (not ASCII compatible, very rarely used) +.nf +.fi +European languages: +.nf +.fi + IBM-{037,273,277,278,280,282,284,285,297,423,500,870,871,875,880}, + IBM-{905,924,1025,1026,1047,1112,1122,1123,1140,1141,1142,1143}, + IBM-{1144,1145,1146,1147,1148,1149,1153,1154,1155,1156,1157,1158}, + IBM-{1165,1166,4971} +.nf +.fi +Semitic languages: +.nf +.fi + IBM-{424,425,12712,16804} +.nf +.fi +Persian: +.nf +.fi + IBM-1097 +.nf +.fi +Thai: +.nf +.fi + IBM-{838,1160} +.nf +.fi +Laotian: +.nf +.fi + IBM-1132 +.nf +.fi +Vietnamese: +.nf +.fi + IBM-{1130,1164} +.nf +.fi +Indic languages: +.nf +.fi + IBM-1137 +.PP +The empty encoding name "" is equivalent to "char": it denotes the +locale dependent character encoding. +.PP +When the string "//TRANSLIT" is appended to \fItocode\fP, transliteration +is activated. This means that when a character cannot be represented in the +target character set, it can be approximated through one or several characters +that look similar to the original character. +.PP +When the string "//IGNORE" is appended to \fItocode\fP, characters that +cannot be represented in the target character set will be silently discarded. +.PP +The resulting conversion descriptor can be used with \fBiconv\fP any number +of times. It remains valid until deallocated using \fBiconv_close\fP. +.PP +A conversion descriptor contains a conversion state. After creation using +\fBiconv_open\fP, the state is in the initial state. Using \fBiconv\fP +modifies the descriptor's conversion state. (This implies that a conversion +descriptor can not be used in multiple threads simultaneously.) To bring the +state back to the initial state, use \fBiconv\fP with NULL as \fIinbuf\fP +argument. +.SH "RETURN VALUE" +The \fBiconv_open\fP function returns a freshly allocated conversion +descriptor. In case of error, it sets \fBerrno\fP and returns (iconv_t)(\-1). +.SH ERRORS +The following error can occur, among others: +.TP +.B EINVAL +The conversion from \fIfromcode\fP to \fItocode\fP is not supported by the +implementation. +.SH "CONFORMING TO" +POSIX:2001 +.SH "SEE ALSO" +.BR iconv (3) +.BR iconvctl (3) +.BR iconv_close (3) diff --git a/output/share/man/man3/iconv_open_into.3 b/output/share/man/man3/iconv_open_into.3 new file mode 100644 index 0000000..9cb28cb --- /dev/null +++ b/output/share/man/man3/iconv_open_into.3 @@ -0,0 +1,47 @@ +.\" Copyright (c) Free Software Foundation, Inc. +.\" +.\" This is free documentation; you can redistribute it and/or +.\" modify it under the terms of the GNU General Public License as +.\" published by the Free Software Foundation; either version 3 of +.\" the License, or (at your option) any later version. +.\" +.\" References consulted: +.\" iconv.h +.\" +.TH ICONV_OPEN_INTO 3 "September 21, 2008" "GNU" "Linux Programmer's Manual" +.SH NAME +iconv_open_into \- initialize descriptor for character set conversion +.SH SYNOPSIS +.nf +.B #include +.sp +.BI "int iconv_open_into (const char* " tocode ", const char* " fromcode "," +.BI " iconv_allocation_t* " resultp ); +.fi +.SH DESCRIPTION +The \fBiconv_open_into\fP function initializes a conversion descriptor suitable +for converting byte sequences from character encoding \fIfromcode\fP to +character encoding \fItocode\fP. The conversion descriptor is stored in the +memory pointed to by \fIresultp\fP. +.PP +The values permitted for \fIfromcode\fP and \fItocode\fP are the same as for +the function \fBiconv_open\fP. +.PP +After a successful return from this function, \fIresultp\fP can be be used +as an \fBiconv_t\fP object with the \fBiconv\fP function. +.SH "RETURN VALUE" +The \fBiconv_open_into\fP function fills \fB*\fP\fIresultp\fP and returns 0 if +it succeeds. In case of error, it sets \fBerrno\fP and returns \-1. +.SH ERRORS +The following error can occur, among others: +.TP +.B EINVAL +The conversion from \fIfromcode\fP to \fItocode\fP is not supported by the +implementation. +.SH "CONFORMING TO" +This function is implemented only in GNU libiconv and not in other \fBiconv\fP +implementations. It is not backed by a standard. You can test for its presence +through \fB(_LIBICONV_VERSION >= 0x010D)\fP. +.SH "SEE ALSO" +.BR iconv_open (3) +.BR iconv (3) diff --git a/output/share/man/man3/iconvctl.3 b/output/share/man/man3/iconvctl.3 new file mode 100644 index 0000000..b460d87 --- /dev/null +++ b/output/share/man/man3/iconvctl.3 @@ -0,0 +1,67 @@ +.\" Copyright (c) Perry Rapp +.\" Copyright (c) Free Software Foundation, Inc. +.\" +.\" This is free documentation; you can redistribute it and/or +.\" modify it under the terms of the GNU General Public License as +.\" published by the Free Software Foundation; either version 3 of +.\" the License, or (at your option) any later version. +.\" +.\" References consulted: +.\" iconv.h +.\" +.TH ICONVCTL 3 "March 31, 2007" "GNU" "Linux Programmer's Manual" +.SH NAME +iconvctl \- control iconv behavior +.SH SYNOPSIS +.nf +.B #include +.sp +.BI "int iconvctl (iconv_t " cd " , int " request ", void * " argument ); +.fi +.SH DESCRIPTION +The argument \fIcd\fP must be a conversion descriptor created using the +function \fBiconv_open\fP. +.PP +\fBiconvctl\fP queries or adjusts the behavior of the \fBiconv\fP function, +when invoked with the specified conversion descriptor, depending on the +request value. +.SH "REQUEST VALUES" +The following are permissible values for the \fIrequest\fP parameter. +.TP +.B ICONV_TRIVIALP +\fIargument\fP should be an \fBint *\fP which will receive 1 if the +conversion is trivial, or 0 otherwise. +.TP +.B ICONV_GET_TRANSLITERATE +\fIargument\fP should be an \fBint *\fP which will receive 1 if +transliteration is enabled in the conversion, or 0 otherwise. +.TP +.B ICONV_SET_TRANSLITERATE +\fIargument\fP should be a \fBconst int *\fP, pointing to an \fBint\fP value. +A non-zero value is used to enable transliteration in the conversion. A zero +value disables it. +.TP +.B ICONV_GET_DISCARD_ILSEQ +\fIargument\fP should be an \fBint *\fP which will receive 1 if +"illegal sequence discard and continue" is enabled in the conversion, +or 0 otherwise. +.TP +.B ICONV_SET_DISCARD_ILSEQ +\fIargument\fP should be a \fBconst int *\fP, pointing to an \fBint\fP value. +A non-zero value is used to enable "illegal sequence discard and continue" +in the conversion. A zero value disables it. +.SH "RETURN VALUE" +The \fBiconvctl\fP function returns 0 if it succeeds. In case of error, it sets +\fBerrno\fP and returns \-1. +.SH ERRORS +The following errors can occur, among others: +.TP +.B EINVAL +The request is invalid. +.SH "CONFORMING TO" +This function is implemented only in GNU libiconv and not in other \fBiconv\fP +implementations. It is not backed by a standard. You can test for its presence +through \fB(_LIBICONV_VERSION >= 0x0108)\fP. +.SH "SEE ALSO" +.BR iconv_open (3) +.BR iconv (3) diff --git a/po/Makefile b/po/Makefile new file mode 100644 index 0000000..d4da540 --- /dev/null +++ b/po/Makefile @@ -0,0 +1,658 @@ +# Makefile for PO directory in any package using GNU gettext. +# Copyright (C) 1995-2000 Ulrich Drepper +# Copyright (C) 2000-2020 Free Software Foundation, Inc. +# +# Copying and distribution of this file, with or without modification, +# are permitted in any medium without royalty provided the copyright +# notice and this notice are preserved. This file is offered as-is, +# without any warranty. +# +# Origin: gettext-0.21 +GETTEXT_MACRO_VERSION = 0.20 + +PACKAGE = libiconv +VERSION = 1.17 +PACKAGE_BUGREPORT = + +SED = /usr/bin/sed +SHELL = /bin/sh + + +srcdir = . +top_srcdir = .. + + +prefix = /Users/yangzuhao/Downloads/libiconv-1.17/output +exec_prefix = ${prefix} +datarootdir = ${prefix}/share +datadir = ${datarootdir} +localedir = ${datarootdir}/locale +gettextsrcdir = $(datadir)/gettext/po + +INSTALL = /opt/homebrew/bin/ginstall -c +INSTALL_DATA = ${INSTALL} -m 644 + +# We use $(mkdir_p). +# In automake <= 1.9.x, $(mkdir_p) is defined either as "mkdir -p --" or as +# "$(mkinstalldirs)" or as "$(install_sh) -d". For these automake versions, +# ${SHELL} /Users/yangzuhao/Downloads/libiconv-1.17/build-aux/install-sh does not start with $(SHELL), so we add it. +# In automake >= 1.10, $(MKDIR_P) is derived from ${MKDIR_P}, which is defined +# either as "/path/to/mkdir -p" or ".../install-sh -c -d". For these automake +# versions, $(mkinstalldirs) and $(install_sh) are unused. +mkinstalldirs = $(SHELL) ${SHELL} /Users/yangzuhao/Downloads/libiconv-1.17/build-aux/install-sh -d +install_sh = $(SHELL) ${SHELL} /Users/yangzuhao/Downloads/libiconv-1.17/build-aux/install-sh +MKDIR_P = /opt/homebrew/bin/gmkdir -p +mkdir_p = $(MKDIR_P) + +# When building gettext-tools, we prefer to use the built programs +# rather than installed programs. However, we can't do that when we +# are cross compiling. +CROSS_COMPILING = @CROSS_COMPILING@ + +GMSGFMT_ = /opt/homebrew/bin/msgfmt +GMSGFMT_no = /opt/homebrew/bin/msgfmt +GMSGFMT_yes = /opt/homebrew/bin/msgfmt +GMSGFMT = $(GMSGFMT_$(USE_MSGCTXT)) +XGETTEXT_ = /opt/homebrew/bin/xgettext +XGETTEXT_no = /opt/homebrew/bin/xgettext +XGETTEXT_yes = /opt/homebrew/bin/xgettext +XGETTEXT = $(XGETTEXT_$(USE_MSGCTXT)) +MSGMERGE = /opt/homebrew/bin/msgmerge +MSGMERGE_UPDATE = /opt/homebrew/bin/msgmerge --update +MSGMERGE_FOR_MSGFMT_OPTION = --for-msgfmt +MSGINIT = msginit +MSGCONV = msgconv +MSGFILTER = msgfilter + +POFILES = af.po bg.po ca.po cs.po da.po de.po el.po eo.po es.po et.po fi.po fr.po ga.po gl.po hr.po hu.po id.po it.po ja.po ko.po lt.po nl.po pl.po pt_BR.po rm.po ro.po ru.po sk.po sl.po sq.po sr.po sv.po tr.po uk.po vi.po wa.po zh_CN.po zh_TW.po +GMOFILES = af.gmo bg.gmo ca.gmo cs.gmo da.gmo de.gmo el.gmo eo.gmo es.gmo et.gmo fi.gmo fr.gmo ga.gmo gl.gmo hr.gmo hu.gmo id.gmo it.gmo ja.gmo ko.gmo lt.gmo nl.gmo pl.gmo pt_BR.gmo rm.gmo ro.gmo ru.gmo sk.gmo sl.gmo sq.gmo sr.gmo sv.gmo tr.gmo uk.gmo vi.gmo wa.gmo zh_CN.gmo zh_TW.gmo +UPDATEPOFILES = af.po-update bg.po-update ca.po-update cs.po-update da.po-update de.po-update el.po-update eo.po-update es.po-update et.po-update fi.po-update fr.po-update ga.po-update gl.po-update hr.po-update hu.po-update id.po-update it.po-update ja.po-update ko.po-update lt.po-update nl.po-update pl.po-update pt_BR.po-update rm.po-update ro.po-update ru.po-update sk.po-update sl.po-update sq.po-update sr.po-update sv.po-update tr.po-update uk.po-update vi.po-update wa.po-update zh_CN.po-update zh_TW.po-update +DUMMYPOFILES = af.nop bg.nop ca.nop cs.nop da.nop de.nop el.nop eo.nop es.nop et.nop fi.nop fr.nop ga.nop gl.nop hr.nop hu.nop id.nop it.nop ja.nop ko.nop lt.nop nl.nop pl.nop pt_BR.nop rm.nop ro.nop ru.nop sk.nop sl.nop sq.nop sr.nop sv.nop tr.nop uk.nop vi.nop wa.nop zh_CN.nop zh_TW.nop +DISTFILES.common = Makefile.in.in remove-potcdate.sin \ +$(DISTFILES.common.extra1) $(DISTFILES.common.extra2) $(DISTFILES.common.extra3) +DISTFILES = $(DISTFILES.common) Makevars POTFILES.in \ +$(POFILES) $(GMOFILES) \ +$(DISTFILES.extra1) $(DISTFILES.extra2) $(DISTFILES.extra3) + +POTFILES = \ + ../src/iconv.c + +CATALOGS = af.gmo bg.gmo ca.gmo cs.gmo da.gmo de.gmo el.gmo eo.gmo es.gmo et.gmo fi.gmo fr.gmo ga.gmo gl.gmo hr.gmo hu.gmo id.gmo it.gmo ja.gmo ko.gmo lt.gmo nl.gmo pl.gmo pt_BR.gmo rm.gmo ro.gmo ru.gmo sk.gmo sl.gmo sq.gmo sr.gmo sv.gmo tr.gmo uk.gmo vi.gmo wa.gmo zh_CN.gmo zh_TW.gmo + +POFILESDEPS_ = $(srcdir)/$(DOMAIN).pot +POFILESDEPS_yes = $(POFILESDEPS_) +POFILESDEPS_no = +POFILESDEPS = $(POFILESDEPS_$(PO_DEPENDS_ON_POT)) + +DISTFILESDEPS_ = update-po +DISTFILESDEPS_yes = $(DISTFILESDEPS_) +DISTFILESDEPS_no = +DISTFILESDEPS = $(DISTFILESDEPS_$(DIST_DEPENDS_ON_UPDATE_PO)) + +# Makevars gets inserted here. (Don't remove this line!) +# Makefile variables for libiconv/po. +# +# Copyright (C) 2003-2019 Free Software Foundation, Inc. +# This file is free software; the Free Software Foundation gives +# unlimited permission to use, copy, distribute, and modify it. + +# Usually the message domain is the same as the package name. +DOMAIN = $(PACKAGE) + +# These two variables depend on the location of this directory. +subdir = po +top_builddir = .. + +# These options get passed to xgettext. +XGETTEXT_OPTIONS = \ + --keyword=_ --flag=_:1:pass-c-format \ + --keyword=N_ --flag=N_:1:pass-c-format \ + --flag=error:3:c-format --flag=error_at_line:5:c-format + +# This is the copyright holder that gets inserted into the header of the +# $(DOMAIN).pot file. Set this to the copyright holder of the surrounding +# package. (Note that the msgstr strings, extracted from the package's +# sources, belong to the copyright holder of the package.) Translators are +# expected to transfer the copyright for their translations to this person +# or entity, or to disclaim their copyright. The empty string stands for +# the public domain; in this case the translators are expected to disclaim +# their copyright. +COPYRIGHT_HOLDER = Free Software Foundation, Inc. + +# This tells whether or not to prepend "GNU " prefix to the package +# name that gets inserted into the header of the $(DOMAIN).pot file. +# Possible values are "yes", "no", or empty. If it is empty, try to +# detect it automatically by scanning the files in $(top_srcdir) for +# "GNU packagename" string. +PACKAGE_GNU = yes + +# This is the email address or URL to which the translators shall report +# bugs in the untranslated strings: +# - Strings which are not entire sentences, see the maintainer guidelines +# in the GNU gettext documentation, section 'Preparing Strings'. +# - Strings which use unclear terms or require additional context to be +# understood. +# - Strings which make invalid assumptions about notation of date, time or +# money. +# - Pluralisation problems. +# - Incorrect English spelling. +# - Incorrect formatting. +# It can be your email address, or a mailing list address where translators +# can write to without being subscribed, or the URL of a web page through +# which the translators can contact you. +MSGID_BUGS_ADDRESS = bug-gnu-libiconv@gnu.org + +# This is the list of locale categories, beyond LC_MESSAGES, for which the +# message catalogs shall be used. It is usually empty. +EXTRA_LOCALE_CATEGORIES = + +# This tells whether the $(DOMAIN).pot file contains messages with an 'msgctxt' +# context. Possible values are "yes" and "no". Set this to yes if the +# package uses functions taking also a message context, like pgettext(), or +# if in $(XGETTEXT_OPTIONS) you define keywords with a context argument. +USE_MSGCTXT = no + +# These options get passed to msgmerge. +# Useful options are in particular: +# --previous to keep previous msgids of translated messages, +# --quiet to reduce the verbosity. +MSGMERGE_OPTIONS = + +# These options get passed to msginit. +# If you want to disable line wrapping when writing PO files, add +# --no-wrap to MSGMERGE_OPTIONS, XGETTEXT_OPTIONS, and +# MSGINIT_OPTIONS. +MSGINIT_OPTIONS = + +# This tells whether or not to regenerate a PO file when $(DOMAIN).pot +# has changed. Possible values are "yes" and "no". Set this to no if +# the POT file is checked in the repository and the version control +# program ignores timestamps. +PO_DEPENDS_ON_POT = yes + +# This tells whether or not to forcibly update $(DOMAIN).pot and +# regenerate PO files on "make dist". Possible values are "yes" and +# "no". Set this to no if the POT file and PO files are maintained +# externally. +DIST_DEPENDS_ON_UPDATE_PO = yes + +all: all-no + + +.SUFFIXES: +.SUFFIXES: .po .gmo .sed .sin .nop .po-create .po-update + +# The .pot file, stamp-po, .po files, and .gmo files appear in release tarballs. +# The GNU Coding Standards say in +# : +# "GNU distributions usually contain some files which are not source files +# ... . Since these files normally appear in the source directory, they +# should always appear in the source directory, not in the build directory. +# So Makefile rules to update them should put the updated files in the +# source directory." +# Therefore we put these files in the source directory, not the build directory. + +# During .po -> .gmo conversion, take into account the most recent changes to +# the .pot file. This eliminates the need to update the .po files when the +# .pot file has changed, which would be troublesome if the .po files are put +# under version control. +$(GMOFILES): $(srcdir)/$(DOMAIN).pot +.po.gmo: + @lang=`echo $* | sed -e 's,.*/,,'`; \ + test "$(srcdir)" = . && cdcmd="" || cdcmd="cd $(srcdir) && "; \ + echo "$${cdcmd}rm -f $${lang}.gmo && $(MSGMERGE) $(MSGMERGE_FOR_MSGFMT_OPTION) -o $${lang}.1po $${lang}.po $(DOMAIN).pot && $(GMSGFMT) -c --statistics --verbose -o $${lang}.gmo $${lang}.1po && rm -f $${lang}.1po"; \ + cd $(srcdir) && \ + rm -f $${lang}.gmo && \ + $(MSGMERGE) $(MSGMERGE_FOR_MSGFMT_OPTION) -o $${lang}.1po $${lang}.po $(DOMAIN).pot && \ + $(GMSGFMT) -c --statistics --verbose -o t-$${lang}.gmo $${lang}.1po && \ + mv t-$${lang}.gmo $${lang}.gmo && \ + rm -f $${lang}.1po + +.sin.sed: + sed -e '/^#/d' $< > t-$@ + mv t-$@ $@ + + +all-yes: $(srcdir)/stamp-po +all-no: + +# Ensure that the gettext macros and this Makefile.in.in are in sync. +CHECK_MACRO_VERSION = \ + test "$(GETTEXT_MACRO_VERSION)" = "0.20" \ + || { echo "*** error: gettext infrastructure mismatch: using a Makefile.in.in from gettext version $(GETTEXT_MACRO_VERSION) but the autoconf macros are from gettext version 0.20" 1>&2; \ + exit 1; \ + } + +# $(srcdir)/$(DOMAIN).pot is only created when needed. When xgettext finds no +# internationalized messages, no $(srcdir)/$(DOMAIN).pot is created (because +# we don't want to bother translators with empty POT files). We assume that +# LINGUAS is empty in this case, i.e. $(POFILES) and $(GMOFILES) are empty. +# In this case, $(srcdir)/stamp-po is a nop (i.e. a phony target). + +# $(srcdir)/stamp-po is a timestamp denoting the last time at which the CATALOGS +# have been loosely updated. Its purpose is that when a developer or translator +# checks out the package from a version control system, and the $(DOMAIN).pot +# file is not under version control, "make" will update the $(DOMAIN).pot and +# the $(CATALOGS), but subsequent invocations of "make" will do nothing. This +# timestamp would not be necessary if updating the $(CATALOGS) would always +# touch them; however, the rule for $(POFILES) has been designed to not touch +# files that don't need to be changed. +$(srcdir)/stamp-po: $(srcdir)/$(DOMAIN).pot + @$(CHECK_MACRO_VERSION) + test ! -f $(srcdir)/$(DOMAIN).pot || \ + test -z "$(GMOFILES)" || $(MAKE) $(GMOFILES) + @test ! -f $(srcdir)/$(DOMAIN).pot || { \ + echo "touch $(srcdir)/stamp-po" && \ + echo timestamp > $(srcdir)/stamp-poT && \ + mv $(srcdir)/stamp-poT $(srcdir)/stamp-po; \ + } + +# Note: Target 'all' must not depend on target '$(DOMAIN).pot-update', +# otherwise packages like GCC can not be built if only parts of the source +# have been downloaded. + +# This target rebuilds $(DOMAIN).pot; it is an expensive operation. +# Note that $(DOMAIN).pot is not touched if it doesn't need to be changed. +# The determination of whether the package xyz is a GNU one is based on the +# heuristic whether some file in the top level directory mentions "GNU xyz". +# If GNU 'find' is available, we avoid grepping through monster files. +$(DOMAIN).pot-update: $(POTFILES) $(srcdir)/POTFILES.in remove-potcdate.sed + package_gnu="$(PACKAGE_GNU)"; \ + test -n "$$package_gnu" || { \ + if { if (LC_ALL=C find --version) 2>/dev/null | grep GNU >/dev/null; then \ + LC_ALL=C find -L $(top_srcdir) -maxdepth 1 -type f -size -10000000c -exec grep -i 'GNU libiconv' /dev/null '{}' ';' 2>/dev/null; \ + else \ + LC_ALL=C grep -i 'GNU libiconv' $(top_srcdir)/* 2>/dev/null; \ + fi; \ + } | grep -v 'libtool:' >/dev/null; then \ + package_gnu=yes; \ + else \ + package_gnu=no; \ + fi; \ + }; \ + if test "$$package_gnu" = "yes"; then \ + package_prefix='GNU '; \ + else \ + package_prefix=''; \ + fi; \ + if test -n '$(MSGID_BUGS_ADDRESS)' || test '$(PACKAGE_BUGREPORT)' = '@'PACKAGE_BUGREPORT'@'; then \ + msgid_bugs_address='$(MSGID_BUGS_ADDRESS)'; \ + else \ + msgid_bugs_address='$(PACKAGE_BUGREPORT)'; \ + fi; \ + case `$(XGETTEXT) --version | sed 1q | sed -e 's,^[^0-9]*,,'` in \ + '' | 0.[0-9] | 0.[0-9].* | 0.1[0-5] | 0.1[0-5].* | 0.16 | 0.16.[0-1]*) \ + $(XGETTEXT) --default-domain=$(DOMAIN) --directory=$(top_srcdir) \ + --add-comments=TRANSLATORS: \ + --files-from=$(srcdir)/POTFILES.in \ + --copyright-holder='$(COPYRIGHT_HOLDER)' \ + --msgid-bugs-address="$$msgid_bugs_address" \ + $(XGETTEXT_OPTIONS) --flag=error:3:c-format --flag=error_at_line:5:c-format \ + ;; \ + *) \ + $(XGETTEXT) --default-domain=$(DOMAIN) --directory=$(top_srcdir) \ + --add-comments=TRANSLATORS: \ + --files-from=$(srcdir)/POTFILES.in \ + --copyright-holder='$(COPYRIGHT_HOLDER)' \ + --package-name="$${package_prefix}libiconv" \ + --package-version='1.17' \ + --msgid-bugs-address="$$msgid_bugs_address" \ + $(XGETTEXT_OPTIONS) --flag=error:3:c-format --flag=error_at_line:5:c-format \ + ;; \ + esac + test ! -f $(DOMAIN).po || { \ + if test -f $(srcdir)/$(DOMAIN).pot-header; then \ + sed -e '1,/^#$$/d' < $(DOMAIN).po > $(DOMAIN).1po && \ + cat $(srcdir)/$(DOMAIN).pot-header $(DOMAIN).1po > $(DOMAIN).po && \ + rm -f $(DOMAIN).1po \ + || exit 1; \ + fi; \ + if test -f $(srcdir)/$(DOMAIN).pot; then \ + sed -f remove-potcdate.sed < $(srcdir)/$(DOMAIN).pot > $(DOMAIN).1po && \ + sed -f remove-potcdate.sed < $(DOMAIN).po > $(DOMAIN).2po && \ + if cmp $(DOMAIN).1po $(DOMAIN).2po >/dev/null 2>&1; then \ + rm -f $(DOMAIN).1po $(DOMAIN).2po $(DOMAIN).po; \ + else \ + rm -f $(DOMAIN).1po $(DOMAIN).2po $(srcdir)/$(DOMAIN).pot && \ + mv $(DOMAIN).po $(srcdir)/$(DOMAIN).pot; \ + fi; \ + else \ + mv $(DOMAIN).po $(srcdir)/$(DOMAIN).pot; \ + fi; \ + } + +# This rule has no dependencies: we don't need to update $(DOMAIN).pot at +# every "make" invocation, only create it when it is missing. +# Only "make $(DOMAIN).pot-update" or "make dist" will force an update. +$(srcdir)/$(DOMAIN).pot: + $(MAKE) $(DOMAIN).pot-update + +# This target rebuilds a PO file if $(DOMAIN).pot has changed. +# Note that a PO file is not touched if it doesn't need to be changed. +$(POFILES): $(POFILESDEPS) + @test -f $(srcdir)/$(DOMAIN).pot || $(MAKE) $(srcdir)/$(DOMAIN).pot + @lang=`echo $@ | sed -e 's,.*/,,' -e 's/\.po$$//'`; \ + if test -f "$(srcdir)/$${lang}.po"; then \ + test "$(srcdir)" = . && cdcmd="" || cdcmd="cd $(srcdir) && "; \ + echo "$${cdcmd}$(MSGMERGE_UPDATE) $(MSGMERGE_OPTIONS) --lang=$${lang} --previous $${lang}.po $(DOMAIN).pot"; \ + cd $(srcdir) \ + && { case `$(MSGMERGE_UPDATE) --version | sed 1q | sed -e 's,^[^0-9]*,,'` in \ + '' | 0.[0-9] | 0.[0-9].* | 0.1[0-5] | 0.1[0-5].*) \ + $(MSGMERGE_UPDATE) $(MSGMERGE_OPTIONS) $${lang}.po $(DOMAIN).pot;; \ + 0.1[6-7] | 0.1[6-7].*) \ + $(MSGMERGE_UPDATE) $(MSGMERGE_OPTIONS) --previous $${lang}.po $(DOMAIN).pot;; \ + *) \ + $(MSGMERGE_UPDATE) $(MSGMERGE_OPTIONS) --lang=$${lang} --previous $${lang}.po $(DOMAIN).pot;; \ + esac; \ + }; \ + else \ + $(MAKE) $${lang}.po-create; \ + fi + + +install: install-exec install-data +install-exec: +install-data: install-data-no + if test "$(PACKAGE)" = "gettext-tools"; then \ + $(mkdir_p) $(DESTDIR)$(gettextsrcdir); \ + for file in $(DISTFILES.common) Makevars.template; do \ + $(INSTALL_DATA) $(srcdir)/$$file \ + $(DESTDIR)$(gettextsrcdir)/$$file; \ + done; \ + for file in Makevars; do \ + rm -f $(DESTDIR)$(gettextsrcdir)/$$file; \ + done; \ + else \ + : ; \ + fi +install-data-no: all +install-data-yes: all + @catalogs='$(CATALOGS)'; \ + for cat in $$catalogs; do \ + cat=`basename $$cat`; \ + lang=`echo $$cat | sed -e 's/\.gmo$$//'`; \ + dir=$(localedir)/$$lang/LC_MESSAGES; \ + $(mkdir_p) $(DESTDIR)$$dir; \ + if test -r $$cat; then realcat=$$cat; else realcat=$(srcdir)/$$cat; fi; \ + $(INSTALL_DATA) $$realcat $(DESTDIR)$$dir/$(DOMAIN).mo; \ + echo "installing $$realcat as $(DESTDIR)$$dir/$(DOMAIN).mo"; \ + for lc in '' $(EXTRA_LOCALE_CATEGORIES); do \ + if test -n "$$lc"; then \ + if (cd $(DESTDIR)$(localedir)/$$lang && LC_ALL=C ls -l -d $$lc 2>/dev/null) | grep ' -> ' >/dev/null; then \ + link=`cd $(DESTDIR)$(localedir)/$$lang && LC_ALL=C ls -l -d $$lc | sed -e 's/^.* -> //'`; \ + mv $(DESTDIR)$(localedir)/$$lang/$$lc $(DESTDIR)$(localedir)/$$lang/$$lc.old; \ + mkdir $(DESTDIR)$(localedir)/$$lang/$$lc; \ + (cd $(DESTDIR)$(localedir)/$$lang/$$lc.old && \ + for file in *; do \ + if test -f $$file; then \ + ln -s ../$$link/$$file $(DESTDIR)$(localedir)/$$lang/$$lc/$$file; \ + fi; \ + done); \ + rm -f $(DESTDIR)$(localedir)/$$lang/$$lc.old; \ + else \ + if test -d $(DESTDIR)$(localedir)/$$lang/$$lc; then \ + :; \ + else \ + rm -f $(DESTDIR)$(localedir)/$$lang/$$lc; \ + mkdir $(DESTDIR)$(localedir)/$$lang/$$lc; \ + fi; \ + fi; \ + rm -f $(DESTDIR)$(localedir)/$$lang/$$lc/$(DOMAIN).mo; \ + ln -s ../LC_MESSAGES/$(DOMAIN).mo $(DESTDIR)$(localedir)/$$lang/$$lc/$(DOMAIN).mo 2>/dev/null || \ + ln $(DESTDIR)$(localedir)/$$lang/LC_MESSAGES/$(DOMAIN).mo $(DESTDIR)$(localedir)/$$lang/$$lc/$(DOMAIN).mo 2>/dev/null || \ + cp -p $(DESTDIR)$(localedir)/$$lang/LC_MESSAGES/$(DOMAIN).mo $(DESTDIR)$(localedir)/$$lang/$$lc/$(DOMAIN).mo; \ + echo "installing $$realcat link as $(DESTDIR)$(localedir)/$$lang/$$lc/$(DOMAIN).mo"; \ + fi; \ + done; \ + done + +install-strip: install + +installdirs: installdirs-exec installdirs-data +installdirs-exec: +installdirs-data: installdirs-data-no + if test "$(PACKAGE)" = "gettext-tools"; then \ + $(mkdir_p) $(DESTDIR)$(gettextsrcdir); \ + else \ + : ; \ + fi +installdirs-data-no: +installdirs-data-yes: + @catalogs='$(CATALOGS)'; \ + for cat in $$catalogs; do \ + cat=`basename $$cat`; \ + lang=`echo $$cat | sed -e 's/\.gmo$$//'`; \ + dir=$(localedir)/$$lang/LC_MESSAGES; \ + $(mkdir_p) $(DESTDIR)$$dir; \ + for lc in '' $(EXTRA_LOCALE_CATEGORIES); do \ + if test -n "$$lc"; then \ + if (cd $(DESTDIR)$(localedir)/$$lang && LC_ALL=C ls -l -d $$lc 2>/dev/null) | grep ' -> ' >/dev/null; then \ + link=`cd $(DESTDIR)$(localedir)/$$lang && LC_ALL=C ls -l -d $$lc | sed -e 's/^.* -> //'`; \ + mv $(DESTDIR)$(localedir)/$$lang/$$lc $(DESTDIR)$(localedir)/$$lang/$$lc.old; \ + mkdir $(DESTDIR)$(localedir)/$$lang/$$lc; \ + (cd $(DESTDIR)$(localedir)/$$lang/$$lc.old && \ + for file in *; do \ + if test -f $$file; then \ + ln -s ../$$link/$$file $(DESTDIR)$(localedir)/$$lang/$$lc/$$file; \ + fi; \ + done); \ + rm -f $(DESTDIR)$(localedir)/$$lang/$$lc.old; \ + else \ + if test -d $(DESTDIR)$(localedir)/$$lang/$$lc; then \ + :; \ + else \ + rm -f $(DESTDIR)$(localedir)/$$lang/$$lc; \ + mkdir $(DESTDIR)$(localedir)/$$lang/$$lc; \ + fi; \ + fi; \ + fi; \ + done; \ + done + +# Define this as empty until I found a useful application. +installcheck: + +uninstall: uninstall-exec uninstall-data +uninstall-exec: +uninstall-data: uninstall-data-no + if test "$(PACKAGE)" = "gettext-tools"; then \ + for file in $(DISTFILES.common) Makevars.template; do \ + rm -f $(DESTDIR)$(gettextsrcdir)/$$file; \ + done; \ + else \ + : ; \ + fi +uninstall-data-no: +uninstall-data-yes: + catalogs='$(CATALOGS)'; \ + for cat in $$catalogs; do \ + cat=`basename $$cat`; \ + lang=`echo $$cat | sed -e 's/\.gmo$$//'`; \ + for lc in LC_MESSAGES $(EXTRA_LOCALE_CATEGORIES); do \ + rm -f $(DESTDIR)$(localedir)/$$lang/$$lc/$(DOMAIN).mo; \ + done; \ + done + +check: all + +info dvi ps pdf html tags TAGS ctags CTAGS ID: + +install-dvi install-ps install-pdf install-html: + +mostlyclean: + rm -f remove-potcdate.sed + rm -f $(srcdir)/stamp-poT + rm -f core core.* $(DOMAIN).po $(DOMAIN).1po $(DOMAIN).2po *.new.po + rm -fr *.o + +clean: mostlyclean + +distclean: clean + rm -f Makefile Makefile.in POTFILES + +maintainer-clean: distclean + @echo "This command is intended for maintainers to use;" + @echo "it deletes files that may require special tools to rebuild." + rm -f $(srcdir)/$(DOMAIN).pot $(srcdir)/stamp-po $(GMOFILES) + +distdir = $(top_builddir)/$(PACKAGE)-$(VERSION)/$(subdir) +dist distdir: + test -z "$(DISTFILESDEPS)" || $(MAKE) $(DISTFILESDEPS) + @$(MAKE) dist2 +# This is a separate target because 'update-po' must be executed before. +dist2: $(srcdir)/stamp-po $(DISTFILES) + @dists="$(DISTFILES)"; \ + if test "$(PACKAGE)" = "gettext-tools"; then \ + dists="$$dists Makevars.template"; \ + fi; \ + if test -f $(srcdir)/$(DOMAIN).pot; then \ + dists="$$dists $(DOMAIN).pot stamp-po"; \ + else \ + case $(XGETTEXT) in \ + :) echo "Warning: Creating a tarball without '$(DOMAIN).pot', because a suitable 'xgettext' program was not found in PATH." 1>&2;; \ + *) echo "Warning: Creating a tarball without '$(DOMAIN).pot', because 'xgettext' found no strings to extract. Check the contents of the POTFILES.in file and the XGETTEXT_OPTIONS in the Makevars file." 1>&2;; \ + esac; \ + fi; \ + if test -f $(srcdir)/ChangeLog; then \ + dists="$$dists ChangeLog"; \ + fi; \ + for i in 0 1 2 3 4 5 6 7 8 9; do \ + if test -f $(srcdir)/ChangeLog.$$i; then \ + dists="$$dists ChangeLog.$$i"; \ + fi; \ + done; \ + if test -f $(srcdir)/LINGUAS; then dists="$$dists LINGUAS"; fi; \ + for file in $$dists; do \ + if test -f $$file; then \ + cp -p $$file $(distdir) || exit 1; \ + else \ + cp -p $(srcdir)/$$file $(distdir) || exit 1; \ + fi; \ + done + +update-po: Makefile + $(MAKE) $(DOMAIN).pot-update + test -z "$(UPDATEPOFILES)" || $(MAKE) $(UPDATEPOFILES) + $(MAKE) update-gmo + +# General rule for creating PO files. + +.nop.po-create: + @lang=`echo $@ | sed -e 's/\.po-create$$//'`; \ + echo "File $$lang.po does not exist. If you are a translator, you can create it through 'msginit'." 1>&2; \ + exit 1 + +# General rule for updating PO files. + +.nop.po-update: + @lang=`echo $@ | sed -e 's/\.po-update$$//'`; \ + if test "$(PACKAGE)" = "gettext-tools" && test "$(CROSS_COMPILING)" != "yes"; then PATH=`pwd`/../src:$$PATH; fi; \ + tmpdir=`pwd`; \ + echo "$$lang:"; \ + test "$(srcdir)" = . && cdcmd="" || cdcmd="cd $(srcdir) && "; \ + echo "$${cdcmd}$(MSGMERGE) $(MSGMERGE_OPTIONS) --lang=$$lang --previous $$lang.po $(DOMAIN).pot -o $$lang.new.po"; \ + cd $(srcdir); \ + if { case `$(MSGMERGE) --version | sed 1q | sed -e 's,^[^0-9]*,,'` in \ + '' | 0.[0-9] | 0.[0-9].* | 0.1[0-5] | 0.1[0-5].*) \ + $(MSGMERGE) $(MSGMERGE_OPTIONS) -o $$tmpdir/$$lang.new.po $$lang.po $(DOMAIN).pot;; \ + 0.1[6-7] | 0.1[6-7].*) \ + $(MSGMERGE) $(MSGMERGE_OPTIONS) --previous -o $$tmpdir/$$lang.new.po $$lang.po $(DOMAIN).pot;; \ + *) \ + $(MSGMERGE) $(MSGMERGE_OPTIONS) --lang=$$lang --previous -o $$tmpdir/$$lang.new.po $$lang.po $(DOMAIN).pot;; \ + esac; \ + }; then \ + if cmp $$lang.po $$tmpdir/$$lang.new.po >/dev/null 2>&1; then \ + rm -f $$tmpdir/$$lang.new.po; \ + else \ + if mv -f $$tmpdir/$$lang.new.po $$lang.po; then \ + :; \ + else \ + echo "msgmerge for $$lang.po failed: cannot move $$tmpdir/$$lang.new.po to $$lang.po" 1>&2; \ + exit 1; \ + fi; \ + fi; \ + else \ + echo "msgmerge for $$lang.po failed!" 1>&2; \ + rm -f $$tmpdir/$$lang.new.po; \ + fi + +$(DUMMYPOFILES): + +update-gmo: Makefile $(GMOFILES) + @: + +# Recreate Makefile by invoking config.status. Explicitly invoke the shell, +# because execution permission bits may not work on the current file system. +# Use /bin/sh, which is the shell determined by autoconf for the use by its +# scripts, not $(SHELL) which is hardwired to /bin/sh and may be deficient. +Makefile: Makefile.in.in Makevars $(top_builddir)/config.status POTFILES.in LINGUAS + cd $(top_builddir) \ + && /bin/sh ./config.status $(subdir)/$@.in po-directories + +force: + +# Tell versions [3.59,3.63) of GNU make not to export all variables. +# Otherwise a system limit (for SysV at least) may be exceeded. +.NOEXPORT: +# Special Makefile rules for English message catalogs with quotation marks. +# +# Copyright (C) 2001-2017 Free Software Foundation, Inc. +# This file, Rules-quot, and its auxiliary files (listed under +# DISTFILES.common.extra1) are free software; the Free Software Foundation +# gives unlimited permission to use, copy, distribute, and modify them. + +DISTFILES.common.extra1 = quot.sed boldquot.sed en@quot.header en@boldquot.header insert-header.sin Rules-quot + +.SUFFIXES: .insert-header .po-update-en + +en@quot.po-create: + $(MAKE) en@quot.po-update +en@boldquot.po-create: + $(MAKE) en@boldquot.po-update + +en@quot.po-update: en@quot.po-update-en +en@boldquot.po-update: en@boldquot.po-update-en + +.insert-header.po-update-en: + @lang=`echo $@ | sed -e 's/\.po-update-en$$//'`; \ + if test "$(PACKAGE)" = "gettext-tools" && test "$(CROSS_COMPILING)" != "yes"; then PATH=`pwd`/../src:$$PATH; GETTEXTLIBDIR=`cd $(top_srcdir)/src && pwd`; export GETTEXTLIBDIR; fi; \ + tmpdir=`pwd`; \ + echo "$$lang:"; \ + ll=`echo $$lang | sed -e 's/@.*//'`; \ + LC_ALL=C; export LC_ALL; \ + cd $(srcdir); \ + if $(MSGINIT) $(MSGINIT_OPTIONS) -i $(DOMAIN).pot --no-translator -l $$lang -o - 2>/dev/null \ + | $(SED) -f $$tmpdir/$$lang.insert-header | $(MSGCONV) -t UTF-8 | \ + { case `$(MSGFILTER) --version | sed 1q | sed -e 's,^[^0-9]*,,'` in \ + '' | 0.[0-9] | 0.[0-9].* | 0.1[0-8] | 0.1[0-8].*) \ + $(MSGFILTER) $(SED) -f `echo $$lang | sed -e 's/.*@//'`.sed \ + ;; \ + *) \ + $(MSGFILTER) `echo $$lang | sed -e 's/.*@//'` \ + ;; \ + esac } 2>/dev/null > $$tmpdir/$$lang.new.po \ + ; then \ + if cmp $$lang.po $$tmpdir/$$lang.new.po >/dev/null 2>&1; then \ + rm -f $$tmpdir/$$lang.new.po; \ + else \ + if mv -f $$tmpdir/$$lang.new.po $$lang.po; then \ + :; \ + else \ + echo "creation of $$lang.po failed: cannot move $$tmpdir/$$lang.new.po to $$lang.po" 1>&2; \ + exit 1; \ + fi; \ + fi; \ + else \ + echo "creation of $$lang.po failed!" 1>&2; \ + rm -f $$tmpdir/$$lang.new.po; \ + fi + +en@quot.insert-header: insert-header.sin + sed -e '/^#/d' -e 's/HEADER/en@quot.header/g' $(srcdir)/insert-header.sin > en@quot.insert-header + +en@boldquot.insert-header: insert-header.sin + sed -e '/^#/d' -e 's/HEADER/en@boldquot.header/g' $(srcdir)/insert-header.sin > en@boldquot.insert-header + +mostlyclean: mostlyclean-quot +mostlyclean-quot: + rm -f *.insert-header diff --git a/po/Makefile.in b/po/Makefile.in new file mode 100644 index 0000000..12e869f --- /dev/null +++ b/po/Makefile.in @@ -0,0 +1,510 @@ +# Makefile for PO directory in any package using GNU gettext. +# Copyright (C) 1995-2000 Ulrich Drepper +# Copyright (C) 2000-2020 Free Software Foundation, Inc. +# +# Copying and distribution of this file, with or without modification, +# are permitted in any medium without royalty provided the copyright +# notice and this notice are preserved. This file is offered as-is, +# without any warranty. +# +# Origin: gettext-0.21 +GETTEXT_MACRO_VERSION = 0.20 + +PACKAGE = libiconv +VERSION = 1.17 +PACKAGE_BUGREPORT = + +SED = /usr/bin/sed +SHELL = /bin/sh + + +srcdir = . +top_srcdir = .. + + +prefix = /Users/yangzuhao/Downloads/libiconv-1.17/output +exec_prefix = ${prefix} +datarootdir = ${prefix}/share +datadir = ${datarootdir} +localedir = ${datarootdir}/locale +gettextsrcdir = $(datadir)/gettext/po + +INSTALL = /opt/homebrew/bin/ginstall -c +INSTALL_DATA = ${INSTALL} -m 644 + +# We use $(mkdir_p). +# In automake <= 1.9.x, $(mkdir_p) is defined either as "mkdir -p --" or as +# "$(mkinstalldirs)" or as "$(install_sh) -d". For these automake versions, +# ${SHELL} /Users/yangzuhao/Downloads/libiconv-1.17/build-aux/install-sh does not start with $(SHELL), so we add it. +# In automake >= 1.10, $(MKDIR_P) is derived from ${MKDIR_P}, which is defined +# either as "/path/to/mkdir -p" or ".../install-sh -c -d". For these automake +# versions, $(mkinstalldirs) and $(install_sh) are unused. +mkinstalldirs = $(SHELL) ${SHELL} /Users/yangzuhao/Downloads/libiconv-1.17/build-aux/install-sh -d +install_sh = $(SHELL) ${SHELL} /Users/yangzuhao/Downloads/libiconv-1.17/build-aux/install-sh +MKDIR_P = /opt/homebrew/bin/gmkdir -p +mkdir_p = $(MKDIR_P) + +# When building gettext-tools, we prefer to use the built programs +# rather than installed programs. However, we can't do that when we +# are cross compiling. +CROSS_COMPILING = @CROSS_COMPILING@ + +GMSGFMT_ = /opt/homebrew/bin/msgfmt +GMSGFMT_no = /opt/homebrew/bin/msgfmt +GMSGFMT_yes = /opt/homebrew/bin/msgfmt +GMSGFMT = $(GMSGFMT_$(USE_MSGCTXT)) +XGETTEXT_ = /opt/homebrew/bin/xgettext +XGETTEXT_no = /opt/homebrew/bin/xgettext +XGETTEXT_yes = /opt/homebrew/bin/xgettext +XGETTEXT = $(XGETTEXT_$(USE_MSGCTXT)) +MSGMERGE = /opt/homebrew/bin/msgmerge +MSGMERGE_UPDATE = /opt/homebrew/bin/msgmerge --update +MSGMERGE_FOR_MSGFMT_OPTION = --for-msgfmt +MSGINIT = msginit +MSGCONV = msgconv +MSGFILTER = msgfilter + +POFILES = @POFILES@ +GMOFILES = @GMOFILES@ +UPDATEPOFILES = @UPDATEPOFILES@ +DUMMYPOFILES = @DUMMYPOFILES@ +DISTFILES.common = Makefile.in.in remove-potcdate.sin \ +$(DISTFILES.common.extra1) $(DISTFILES.common.extra2) $(DISTFILES.common.extra3) +DISTFILES = $(DISTFILES.common) Makevars POTFILES.in \ +$(POFILES) $(GMOFILES) \ +$(DISTFILES.extra1) $(DISTFILES.extra2) $(DISTFILES.extra3) + +POTFILES = \ + +CATALOGS = @CATALOGS@ + +POFILESDEPS_ = $(srcdir)/$(DOMAIN).pot +POFILESDEPS_yes = $(POFILESDEPS_) +POFILESDEPS_no = +POFILESDEPS = $(POFILESDEPS_$(PO_DEPENDS_ON_POT)) + +DISTFILESDEPS_ = update-po +DISTFILESDEPS_yes = $(DISTFILESDEPS_) +DISTFILESDEPS_no = +DISTFILESDEPS = $(DISTFILESDEPS_$(DIST_DEPENDS_ON_UPDATE_PO)) + +# Makevars gets inserted here. (Don't remove this line!) + +all: all-no + + +.SUFFIXES: +.SUFFIXES: .po .gmo .sed .sin .nop .po-create .po-update + +# The .pot file, stamp-po, .po files, and .gmo files appear in release tarballs. +# The GNU Coding Standards say in +# : +# "GNU distributions usually contain some files which are not source files +# ... . Since these files normally appear in the source directory, they +# should always appear in the source directory, not in the build directory. +# So Makefile rules to update them should put the updated files in the +# source directory." +# Therefore we put these files in the source directory, not the build directory. + +# During .po -> .gmo conversion, take into account the most recent changes to +# the .pot file. This eliminates the need to update the .po files when the +# .pot file has changed, which would be troublesome if the .po files are put +# under version control. +$(GMOFILES): $(srcdir)/$(DOMAIN).pot +.po.gmo: + @lang=`echo $* | sed -e 's,.*/,,'`; \ + test "$(srcdir)" = . && cdcmd="" || cdcmd="cd $(srcdir) && "; \ + echo "$${cdcmd}rm -f $${lang}.gmo && $(MSGMERGE) $(MSGMERGE_FOR_MSGFMT_OPTION) -o $${lang}.1po $${lang}.po $(DOMAIN).pot && $(GMSGFMT) -c --statistics --verbose -o $${lang}.gmo $${lang}.1po && rm -f $${lang}.1po"; \ + cd $(srcdir) && \ + rm -f $${lang}.gmo && \ + $(MSGMERGE) $(MSGMERGE_FOR_MSGFMT_OPTION) -o $${lang}.1po $${lang}.po $(DOMAIN).pot && \ + $(GMSGFMT) -c --statistics --verbose -o t-$${lang}.gmo $${lang}.1po && \ + mv t-$${lang}.gmo $${lang}.gmo && \ + rm -f $${lang}.1po + +.sin.sed: + sed -e '/^#/d' $< > t-$@ + mv t-$@ $@ + + +all-yes: $(srcdir)/stamp-po +all-no: + +# Ensure that the gettext macros and this Makefile.in.in are in sync. +CHECK_MACRO_VERSION = \ + test "$(GETTEXT_MACRO_VERSION)" = "0.20" \ + || { echo "*** error: gettext infrastructure mismatch: using a Makefile.in.in from gettext version $(GETTEXT_MACRO_VERSION) but the autoconf macros are from gettext version 0.20" 1>&2; \ + exit 1; \ + } + +# $(srcdir)/$(DOMAIN).pot is only created when needed. When xgettext finds no +# internationalized messages, no $(srcdir)/$(DOMAIN).pot is created (because +# we don't want to bother translators with empty POT files). We assume that +# LINGUAS is empty in this case, i.e. $(POFILES) and $(GMOFILES) are empty. +# In this case, $(srcdir)/stamp-po is a nop (i.e. a phony target). + +# $(srcdir)/stamp-po is a timestamp denoting the last time at which the CATALOGS +# have been loosely updated. Its purpose is that when a developer or translator +# checks out the package from a version control system, and the $(DOMAIN).pot +# file is not under version control, "make" will update the $(DOMAIN).pot and +# the $(CATALOGS), but subsequent invocations of "make" will do nothing. This +# timestamp would not be necessary if updating the $(CATALOGS) would always +# touch them; however, the rule for $(POFILES) has been designed to not touch +# files that don't need to be changed. +$(srcdir)/stamp-po: $(srcdir)/$(DOMAIN).pot + @$(CHECK_MACRO_VERSION) + test ! -f $(srcdir)/$(DOMAIN).pot || \ + test -z "$(GMOFILES)" || $(MAKE) $(GMOFILES) + @test ! -f $(srcdir)/$(DOMAIN).pot || { \ + echo "touch $(srcdir)/stamp-po" && \ + echo timestamp > $(srcdir)/stamp-poT && \ + mv $(srcdir)/stamp-poT $(srcdir)/stamp-po; \ + } + +# Note: Target 'all' must not depend on target '$(DOMAIN).pot-update', +# otherwise packages like GCC can not be built if only parts of the source +# have been downloaded. + +# This target rebuilds $(DOMAIN).pot; it is an expensive operation. +# Note that $(DOMAIN).pot is not touched if it doesn't need to be changed. +# The determination of whether the package xyz is a GNU one is based on the +# heuristic whether some file in the top level directory mentions "GNU xyz". +# If GNU 'find' is available, we avoid grepping through monster files. +$(DOMAIN).pot-update: $(POTFILES) $(srcdir)/POTFILES.in remove-potcdate.sed + package_gnu="$(PACKAGE_GNU)"; \ + test -n "$$package_gnu" || { \ + if { if (LC_ALL=C find --version) 2>/dev/null | grep GNU >/dev/null; then \ + LC_ALL=C find -L $(top_srcdir) -maxdepth 1 -type f -size -10000000c -exec grep -i 'GNU libiconv' /dev/null '{}' ';' 2>/dev/null; \ + else \ + LC_ALL=C grep -i 'GNU libiconv' $(top_srcdir)/* 2>/dev/null; \ + fi; \ + } | grep -v 'libtool:' >/dev/null; then \ + package_gnu=yes; \ + else \ + package_gnu=no; \ + fi; \ + }; \ + if test "$$package_gnu" = "yes"; then \ + package_prefix='GNU '; \ + else \ + package_prefix=''; \ + fi; \ + if test -n '$(MSGID_BUGS_ADDRESS)' || test '$(PACKAGE_BUGREPORT)' = '@'PACKAGE_BUGREPORT'@'; then \ + msgid_bugs_address='$(MSGID_BUGS_ADDRESS)'; \ + else \ + msgid_bugs_address='$(PACKAGE_BUGREPORT)'; \ + fi; \ + case `$(XGETTEXT) --version | sed 1q | sed -e 's,^[^0-9]*,,'` in \ + '' | 0.[0-9] | 0.[0-9].* | 0.1[0-5] | 0.1[0-5].* | 0.16 | 0.16.[0-1]*) \ + $(XGETTEXT) --default-domain=$(DOMAIN) --directory=$(top_srcdir) \ + --add-comments=TRANSLATORS: \ + --files-from=$(srcdir)/POTFILES.in \ + --copyright-holder='$(COPYRIGHT_HOLDER)' \ + --msgid-bugs-address="$$msgid_bugs_address" \ + $(XGETTEXT_OPTIONS) --flag=error:3:c-format --flag=error_at_line:5:c-format \ + ;; \ + *) \ + $(XGETTEXT) --default-domain=$(DOMAIN) --directory=$(top_srcdir) \ + --add-comments=TRANSLATORS: \ + --files-from=$(srcdir)/POTFILES.in \ + --copyright-holder='$(COPYRIGHT_HOLDER)' \ + --package-name="$${package_prefix}libiconv" \ + --package-version='1.17' \ + --msgid-bugs-address="$$msgid_bugs_address" \ + $(XGETTEXT_OPTIONS) --flag=error:3:c-format --flag=error_at_line:5:c-format \ + ;; \ + esac + test ! -f $(DOMAIN).po || { \ + if test -f $(srcdir)/$(DOMAIN).pot-header; then \ + sed -e '1,/^#$$/d' < $(DOMAIN).po > $(DOMAIN).1po && \ + cat $(srcdir)/$(DOMAIN).pot-header $(DOMAIN).1po > $(DOMAIN).po && \ + rm -f $(DOMAIN).1po \ + || exit 1; \ + fi; \ + if test -f $(srcdir)/$(DOMAIN).pot; then \ + sed -f remove-potcdate.sed < $(srcdir)/$(DOMAIN).pot > $(DOMAIN).1po && \ + sed -f remove-potcdate.sed < $(DOMAIN).po > $(DOMAIN).2po && \ + if cmp $(DOMAIN).1po $(DOMAIN).2po >/dev/null 2>&1; then \ + rm -f $(DOMAIN).1po $(DOMAIN).2po $(DOMAIN).po; \ + else \ + rm -f $(DOMAIN).1po $(DOMAIN).2po $(srcdir)/$(DOMAIN).pot && \ + mv $(DOMAIN).po $(srcdir)/$(DOMAIN).pot; \ + fi; \ + else \ + mv $(DOMAIN).po $(srcdir)/$(DOMAIN).pot; \ + fi; \ + } + +# This rule has no dependencies: we don't need to update $(DOMAIN).pot at +# every "make" invocation, only create it when it is missing. +# Only "make $(DOMAIN).pot-update" or "make dist" will force an update. +$(srcdir)/$(DOMAIN).pot: + $(MAKE) $(DOMAIN).pot-update + +# This target rebuilds a PO file if $(DOMAIN).pot has changed. +# Note that a PO file is not touched if it doesn't need to be changed. +$(POFILES): $(POFILESDEPS) + @test -f $(srcdir)/$(DOMAIN).pot || $(MAKE) $(srcdir)/$(DOMAIN).pot + @lang=`echo $@ | sed -e 's,.*/,,' -e 's/\.po$$//'`; \ + if test -f "$(srcdir)/$${lang}.po"; then \ + test "$(srcdir)" = . && cdcmd="" || cdcmd="cd $(srcdir) && "; \ + echo "$${cdcmd}$(MSGMERGE_UPDATE) $(MSGMERGE_OPTIONS) --lang=$${lang} --previous $${lang}.po $(DOMAIN).pot"; \ + cd $(srcdir) \ + && { case `$(MSGMERGE_UPDATE) --version | sed 1q | sed -e 's,^[^0-9]*,,'` in \ + '' | 0.[0-9] | 0.[0-9].* | 0.1[0-5] | 0.1[0-5].*) \ + $(MSGMERGE_UPDATE) $(MSGMERGE_OPTIONS) $${lang}.po $(DOMAIN).pot;; \ + 0.1[6-7] | 0.1[6-7].*) \ + $(MSGMERGE_UPDATE) $(MSGMERGE_OPTIONS) --previous $${lang}.po $(DOMAIN).pot;; \ + *) \ + $(MSGMERGE_UPDATE) $(MSGMERGE_OPTIONS) --lang=$${lang} --previous $${lang}.po $(DOMAIN).pot;; \ + esac; \ + }; \ + else \ + $(MAKE) $${lang}.po-create; \ + fi + + +install: install-exec install-data +install-exec: +install-data: install-data-no + if test "$(PACKAGE)" = "gettext-tools"; then \ + $(mkdir_p) $(DESTDIR)$(gettextsrcdir); \ + for file in $(DISTFILES.common) Makevars.template; do \ + $(INSTALL_DATA) $(srcdir)/$$file \ + $(DESTDIR)$(gettextsrcdir)/$$file; \ + done; \ + for file in Makevars; do \ + rm -f $(DESTDIR)$(gettextsrcdir)/$$file; \ + done; \ + else \ + : ; \ + fi +install-data-no: all +install-data-yes: all + @catalogs='$(CATALOGS)'; \ + for cat in $$catalogs; do \ + cat=`basename $$cat`; \ + lang=`echo $$cat | sed -e 's/\.gmo$$//'`; \ + dir=$(localedir)/$$lang/LC_MESSAGES; \ + $(mkdir_p) $(DESTDIR)$$dir; \ + if test -r $$cat; then realcat=$$cat; else realcat=$(srcdir)/$$cat; fi; \ + $(INSTALL_DATA) $$realcat $(DESTDIR)$$dir/$(DOMAIN).mo; \ + echo "installing $$realcat as $(DESTDIR)$$dir/$(DOMAIN).mo"; \ + for lc in '' $(EXTRA_LOCALE_CATEGORIES); do \ + if test -n "$$lc"; then \ + if (cd $(DESTDIR)$(localedir)/$$lang && LC_ALL=C ls -l -d $$lc 2>/dev/null) | grep ' -> ' >/dev/null; then \ + link=`cd $(DESTDIR)$(localedir)/$$lang && LC_ALL=C ls -l -d $$lc | sed -e 's/^.* -> //'`; \ + mv $(DESTDIR)$(localedir)/$$lang/$$lc $(DESTDIR)$(localedir)/$$lang/$$lc.old; \ + mkdir $(DESTDIR)$(localedir)/$$lang/$$lc; \ + (cd $(DESTDIR)$(localedir)/$$lang/$$lc.old && \ + for file in *; do \ + if test -f $$file; then \ + ln -s ../$$link/$$file $(DESTDIR)$(localedir)/$$lang/$$lc/$$file; \ + fi; \ + done); \ + rm -f $(DESTDIR)$(localedir)/$$lang/$$lc.old; \ + else \ + if test -d $(DESTDIR)$(localedir)/$$lang/$$lc; then \ + :; \ + else \ + rm -f $(DESTDIR)$(localedir)/$$lang/$$lc; \ + mkdir $(DESTDIR)$(localedir)/$$lang/$$lc; \ + fi; \ + fi; \ + rm -f $(DESTDIR)$(localedir)/$$lang/$$lc/$(DOMAIN).mo; \ + ln -s ../LC_MESSAGES/$(DOMAIN).mo $(DESTDIR)$(localedir)/$$lang/$$lc/$(DOMAIN).mo 2>/dev/null || \ + ln $(DESTDIR)$(localedir)/$$lang/LC_MESSAGES/$(DOMAIN).mo $(DESTDIR)$(localedir)/$$lang/$$lc/$(DOMAIN).mo 2>/dev/null || \ + cp -p $(DESTDIR)$(localedir)/$$lang/LC_MESSAGES/$(DOMAIN).mo $(DESTDIR)$(localedir)/$$lang/$$lc/$(DOMAIN).mo; \ + echo "installing $$realcat link as $(DESTDIR)$(localedir)/$$lang/$$lc/$(DOMAIN).mo"; \ + fi; \ + done; \ + done + +install-strip: install + +installdirs: installdirs-exec installdirs-data +installdirs-exec: +installdirs-data: installdirs-data-no + if test "$(PACKAGE)" = "gettext-tools"; then \ + $(mkdir_p) $(DESTDIR)$(gettextsrcdir); \ + else \ + : ; \ + fi +installdirs-data-no: +installdirs-data-yes: + @catalogs='$(CATALOGS)'; \ + for cat in $$catalogs; do \ + cat=`basename $$cat`; \ + lang=`echo $$cat | sed -e 's/\.gmo$$//'`; \ + dir=$(localedir)/$$lang/LC_MESSAGES; \ + $(mkdir_p) $(DESTDIR)$$dir; \ + for lc in '' $(EXTRA_LOCALE_CATEGORIES); do \ + if test -n "$$lc"; then \ + if (cd $(DESTDIR)$(localedir)/$$lang && LC_ALL=C ls -l -d $$lc 2>/dev/null) | grep ' -> ' >/dev/null; then \ + link=`cd $(DESTDIR)$(localedir)/$$lang && LC_ALL=C ls -l -d $$lc | sed -e 's/^.* -> //'`; \ + mv $(DESTDIR)$(localedir)/$$lang/$$lc $(DESTDIR)$(localedir)/$$lang/$$lc.old; \ + mkdir $(DESTDIR)$(localedir)/$$lang/$$lc; \ + (cd $(DESTDIR)$(localedir)/$$lang/$$lc.old && \ + for file in *; do \ + if test -f $$file; then \ + ln -s ../$$link/$$file $(DESTDIR)$(localedir)/$$lang/$$lc/$$file; \ + fi; \ + done); \ + rm -f $(DESTDIR)$(localedir)/$$lang/$$lc.old; \ + else \ + if test -d $(DESTDIR)$(localedir)/$$lang/$$lc; then \ + :; \ + else \ + rm -f $(DESTDIR)$(localedir)/$$lang/$$lc; \ + mkdir $(DESTDIR)$(localedir)/$$lang/$$lc; \ + fi; \ + fi; \ + fi; \ + done; \ + done + +# Define this as empty until I found a useful application. +installcheck: + +uninstall: uninstall-exec uninstall-data +uninstall-exec: +uninstall-data: uninstall-data-no + if test "$(PACKAGE)" = "gettext-tools"; then \ + for file in $(DISTFILES.common) Makevars.template; do \ + rm -f $(DESTDIR)$(gettextsrcdir)/$$file; \ + done; \ + else \ + : ; \ + fi +uninstall-data-no: +uninstall-data-yes: + catalogs='$(CATALOGS)'; \ + for cat in $$catalogs; do \ + cat=`basename $$cat`; \ + lang=`echo $$cat | sed -e 's/\.gmo$$//'`; \ + for lc in LC_MESSAGES $(EXTRA_LOCALE_CATEGORIES); do \ + rm -f $(DESTDIR)$(localedir)/$$lang/$$lc/$(DOMAIN).mo; \ + done; \ + done + +check: all + +info dvi ps pdf html tags TAGS ctags CTAGS ID: + +install-dvi install-ps install-pdf install-html: + +mostlyclean: + rm -f remove-potcdate.sed + rm -f $(srcdir)/stamp-poT + rm -f core core.* $(DOMAIN).po $(DOMAIN).1po $(DOMAIN).2po *.new.po + rm -fr *.o + +clean: mostlyclean + +distclean: clean + rm -f Makefile Makefile.in POTFILES + +maintainer-clean: distclean + @echo "This command is intended for maintainers to use;" + @echo "it deletes files that may require special tools to rebuild." + rm -f $(srcdir)/$(DOMAIN).pot $(srcdir)/stamp-po $(GMOFILES) + +distdir = $(top_builddir)/$(PACKAGE)-$(VERSION)/$(subdir) +dist distdir: + test -z "$(DISTFILESDEPS)" || $(MAKE) $(DISTFILESDEPS) + @$(MAKE) dist2 +# This is a separate target because 'update-po' must be executed before. +dist2: $(srcdir)/stamp-po $(DISTFILES) + @dists="$(DISTFILES)"; \ + if test "$(PACKAGE)" = "gettext-tools"; then \ + dists="$$dists Makevars.template"; \ + fi; \ + if test -f $(srcdir)/$(DOMAIN).pot; then \ + dists="$$dists $(DOMAIN).pot stamp-po"; \ + else \ + case $(XGETTEXT) in \ + :) echo "Warning: Creating a tarball without '$(DOMAIN).pot', because a suitable 'xgettext' program was not found in PATH." 1>&2;; \ + *) echo "Warning: Creating a tarball without '$(DOMAIN).pot', because 'xgettext' found no strings to extract. Check the contents of the POTFILES.in file and the XGETTEXT_OPTIONS in the Makevars file." 1>&2;; \ + esac; \ + fi; \ + if test -f $(srcdir)/ChangeLog; then \ + dists="$$dists ChangeLog"; \ + fi; \ + for i in 0 1 2 3 4 5 6 7 8 9; do \ + if test -f $(srcdir)/ChangeLog.$$i; then \ + dists="$$dists ChangeLog.$$i"; \ + fi; \ + done; \ + if test -f $(srcdir)/LINGUAS; then dists="$$dists LINGUAS"; fi; \ + for file in $$dists; do \ + if test -f $$file; then \ + cp -p $$file $(distdir) || exit 1; \ + else \ + cp -p $(srcdir)/$$file $(distdir) || exit 1; \ + fi; \ + done + +update-po: Makefile + $(MAKE) $(DOMAIN).pot-update + test -z "$(UPDATEPOFILES)" || $(MAKE) $(UPDATEPOFILES) + $(MAKE) update-gmo + +# General rule for creating PO files. + +.nop.po-create: + @lang=`echo $@ | sed -e 's/\.po-create$$//'`; \ + echo "File $$lang.po does not exist. If you are a translator, you can create it through 'msginit'." 1>&2; \ + exit 1 + +# General rule for updating PO files. + +.nop.po-update: + @lang=`echo $@ | sed -e 's/\.po-update$$//'`; \ + if test "$(PACKAGE)" = "gettext-tools" && test "$(CROSS_COMPILING)" != "yes"; then PATH=`pwd`/../src:$$PATH; fi; \ + tmpdir=`pwd`; \ + echo "$$lang:"; \ + test "$(srcdir)" = . && cdcmd="" || cdcmd="cd $(srcdir) && "; \ + echo "$${cdcmd}$(MSGMERGE) $(MSGMERGE_OPTIONS) --lang=$$lang --previous $$lang.po $(DOMAIN).pot -o $$lang.new.po"; \ + cd $(srcdir); \ + if { case `$(MSGMERGE) --version | sed 1q | sed -e 's,^[^0-9]*,,'` in \ + '' | 0.[0-9] | 0.[0-9].* | 0.1[0-5] | 0.1[0-5].*) \ + $(MSGMERGE) $(MSGMERGE_OPTIONS) -o $$tmpdir/$$lang.new.po $$lang.po $(DOMAIN).pot;; \ + 0.1[6-7] | 0.1[6-7].*) \ + $(MSGMERGE) $(MSGMERGE_OPTIONS) --previous -o $$tmpdir/$$lang.new.po $$lang.po $(DOMAIN).pot;; \ + *) \ + $(MSGMERGE) $(MSGMERGE_OPTIONS) --lang=$$lang --previous -o $$tmpdir/$$lang.new.po $$lang.po $(DOMAIN).pot;; \ + esac; \ + }; then \ + if cmp $$lang.po $$tmpdir/$$lang.new.po >/dev/null 2>&1; then \ + rm -f $$tmpdir/$$lang.new.po; \ + else \ + if mv -f $$tmpdir/$$lang.new.po $$lang.po; then \ + :; \ + else \ + echo "msgmerge for $$lang.po failed: cannot move $$tmpdir/$$lang.new.po to $$lang.po" 1>&2; \ + exit 1; \ + fi; \ + fi; \ + else \ + echo "msgmerge for $$lang.po failed!" 1>&2; \ + rm -f $$tmpdir/$$lang.new.po; \ + fi + +$(DUMMYPOFILES): + +update-gmo: Makefile $(GMOFILES) + @: + +# Recreate Makefile by invoking config.status. Explicitly invoke the shell, +# because execution permission bits may not work on the current file system. +# Use /bin/sh, which is the shell determined by autoconf for the use by its +# scripts, not $(SHELL) which is hardwired to /bin/sh and may be deficient. +Makefile: Makefile.in.in Makevars $(top_builddir)/config.status @POMAKEFILEDEPS@ + cd $(top_builddir) \ + && /bin/sh ./config.status $(subdir)/$@.in po-directories + +force: + +# Tell versions [3.59,3.63) of GNU make not to export all variables. +# Otherwise a system limit (for SysV at least) may be exceeded. +.NOEXPORT: diff --git a/po/POTFILES b/po/POTFILES new file mode 100644 index 0000000..19ce218 --- /dev/null +++ b/po/POTFILES @@ -0,0 +1 @@ + ../src/iconv.c diff --git a/src/Makefile b/src/Makefile new file mode 100644 index 0000000..9987695 --- /dev/null +++ b/src/Makefile @@ -0,0 +1,167 @@ +# Makefile for libiconv/src + +#### Start of system configuration section. #### + +# Directories used by "make": +srcdir = . +top_srcdir = .. + +# Directories used by "make install": +prefix = /Users/yangzuhao/Downloads/libiconv-1.17/output +local_prefix = /usr/local +exec_prefix = ${prefix} +bindir = ${exec_prefix}/bin +libdir = ${exec_prefix}/lib +datarootdir = ${prefix}/share +datadir = ${datarootdir} +localedir = ${datarootdir}/locale + +# Programs used by "make": +CC = gcc +CFLAGS = -g -O2 +CPPFLAGS = +LDFLAGS = +INCLUDES = -I. -I$(srcdir) -I.. -I../include -I$(srcdir)/../include -I../srclib -I$(srcdir)/../srclib +LIBTOOL = /bin/sh $(top_builddir)/libtool +LIBTOOL_COMPILE = $(LIBTOOL) --mode=compile +LIBTOOL_LINK = $(LIBTOOL) --mode=link +LIBTOOL_INSTALL = $(LIBTOOL) --mode=install +LIBTOOL_UNINSTALL = $(LIBTOOL) --mode=uninstall +WINDRES = +RM = rm -f + + +# Programs used by "make install": +INSTALL = /opt/homebrew/bin/ginstall -c +INSTALL_PROGRAM = ${INSTALL} +INSTALL_DATA = ${INSTALL} -m 644 +mkinstalldirs = $(SHELL) ../build-aux/mkinstalldirs + +# Programs used by "make install-strip": +STRIP = /usr/bin/strip +INSTALL_STRIP_PROGRAM = $(install_sh) -c -s +install_sh = ${SHELL} /Users/yangzuhao/Downloads/libiconv-1.17/build-aux/install-sh + +#### End of system configuration section. #### + +SHELL = /bin/sh + +PACKAGE_VERSION = 1.17 + +# Needed by $(LIBTOOL). +top_builddir = .. + +# Needed by SET_RELOCATABLE. +EXEEXT = + +# Needed by RELOCATABLE_LDFLAGS. +host = aarch64-apple-darwin22.4.0 + +OBJECTS_RES_yes = iconv.res +OBJECTS_RES_no = + +# We cannot link with libintl until libiconv is installed. (When we call +# libtool with arguments "../lib/libiconv.la -lintl", libtool will call ld +# with "../lib/.libs/libiconv.so $libdir/libintl.so $libdir/libiconv.so", +# (remember that $libdir/libintl.la lists $libdir/libiconv.so as a dependency), +# and this gives a fatal linker error on Solaris because the two libiconv.so +# files are different but have the same soname. +# So we can link the iconv executable only after we have installed libiconv, +# i.e. during "make install". The intermediate 'iconv' executable is built +# without internationalization and not linked with libintl. + +all : iconv_no_i18n$(EXEEXT) iconv.o $(OBJECTS_RES_no) + test `ls -ld . | sed -e 's/^d\(.........\).*/\1/'` = rwxrwxrwx || chmod 777 . + +# This is the temporary iconv executable, without internationalization. +iconv_no_i18n$(EXEEXT) : iconv_no_i18n.o ../lib/libiconv.la $(OBJECTS_RES_no) + $(LIBTOOL_LINK) $(CC) $(LDFLAGS) $(CFLAGS) iconv_no_i18n.o ../srclib/libicrt.a ../lib/libiconv.la $(OBJECTS_RES_no) -o $@ + +iconv_no_i18n.o : $(srcdir)/iconv_no_i18n.c $(srcdir)/iconv.c + $(CC) -c $(INCLUDES) -I../lib $(CFLAGS) $(CPPFLAGS) -DINSTALLDIR=\"$(bindir)\" -DLOCALEDIR=\"$(localedir)\" $(srcdir)/iconv_no_i18n.c + +iconv.o : $(srcdir)/iconv.c + $(CC) -c $(INCLUDES) -I../lib $(CFLAGS) $(CPPFLAGS) -DINSTALLDIR=\"$(bindir)\" -DLOCALEDIR=\"$(localedir)\" $(srcdir)/iconv.c + +iconv.res : $(srcdir)/../windows/iconv.rc + $(WINDRES) `$(SHELL) $(srcdir)/../windows/windres-options --escape $(PACKAGE_VERSION)` -i $(srcdir)/../windows/iconv.rc -o iconv.res --output-format=coff + +# The following rule is necessary to avoid a toplevel "make -n check" failure. +../lib/libiconv.la : + cd ../lib && $(MAKE) libiconv.la + +# Support for relocatability. +RELOCATABLE_LIBRARY_PATH = $(libdir) +RELOCATABLE_SRC_DIR = $(top_srcdir)/srclib +RELOCATABLE_BUILD_DIR = ../srclib +RELOCATABLE_CONFIG_H_DIR = .. +RELOCATABLE_LDFLAGS = +RELOCATABLE_STRIP = : +INSTALL_PROGRAM_ENV = +iconv_LDFLAGS = `if test -n '$(RELOCATABLE_LDFLAGS)'; then $(RELOCATABLE_LDFLAGS) $(bindir); fi` + +# During "make install", we can build the final iconv executable. +# On HP-UX, in order to ensure that the new libiconv.sl will override the old +# one that is hardcoded in libintl.sl, we need to mention libiconv.sl before +# libintl.sl on the link command line. We have to bypass libtool in order to +# achieve this. +# On Solaris, the linker gives an error if we are using libintl.so and it +# refers to a libiconv.so in $prefix/lib since then it sees two libiconv.so's, +# one in $prefix/lib and one in ../lib/.libs. So we have to avoid using +# ../lib/libiconv.la entirely. +install : all force + if [ ! -d $(DESTDIR)$(bindir) ] ; then $(mkinstalldirs) $(DESTDIR)$(bindir) ; fi + case "darwin22.4.0" in \ + hpux*) $(CC) $(LDFLAGS) $(CFLAGS) $(iconv_LDFLAGS) iconv.o ../srclib/libicrt.a -L$(DESTDIR)$(libdir) -liconv $(OBJECTS_RES_no) `if test -n '$(DESTDIR)'; then echo " -Wl,+b -Wl,$(libdir)"; fi` -o iconv$(EXEEXT);; \ + *) $(LIBTOOL_LINK) $(CC) $(LDFLAGS) $(CFLAGS) $(iconv_LDFLAGS) iconv.o ../srclib/libicrt.a $(DESTDIR)$(libdir)/libiconv.la $(OBJECTS_RES_no) -o iconv$(EXEEXT);; \ + esac + $(INSTALL_PROGRAM_ENV) $(LIBTOOL_INSTALL) $(INSTALL_PROGRAM) iconv$(EXEEXT) $(DESTDIR)$(bindir)/iconv$(EXEEXT) + +install-strip : force + case '$(INSTALL_PROGRAM)' in \ + */install-reloc) \ + $(MAKE) install prefix='$(prefix)' exec_prefix='$(exec_prefix)' libdir='$(libdir)' RELOCATABLE_STRIP='$(STRIP)' ;; \ + *) \ + $(MAKE) install prefix='$(prefix)' exec_prefix='$(exec_prefix)' libdir='$(libdir)' INSTALL_PROGRAM='$(INSTALL_STRIP_PROGRAM)' ;; \ + esac + +installdirs : force + if [ ! -d $(DESTDIR)$(bindir) ] ; then $(mkinstalldirs) $(DESTDIR)$(bindir) ; fi + +uninstall : force + $(LIBTOOL_UNINSTALL) $(RM) $(DESTDIR)$(bindir)/iconv$(EXEEXT) + +check : all + +mostlyclean : clean + +clean : force + $(RM) *.o *.lo iconv.res iconv_no_i18n iconv_no_i18n$(EXEEXT) iconv$(EXEEXT) core *.stackdump + $(RM) -r .libs _libs + +distclean : clean + $(RM) Makefile + +maintainer-clean : distclean + +# List of source files. +SOURCE_FILES = \ + Makefile.in \ + iconv.c iconv_no_i18n.c +# List of distributed files imported from other packages. +IMPORTED_FILES = +# List of distributed files generated by autotools or Makefile.devel. +GENERATED_FILES = +# List of distributed files generated by "make". +DISTRIBUTED_BUILT_FILES = +# List of distributed files. +DISTFILES = $(SOURCE_FILES) $(IMPORTED_FILES) $(GENERATED_FILES) $(DISTRIBUTED_BUILT_FILES) + +distdir : $(DISTFILES) + for file in $(DISTFILES); do \ + if test -f $$file; then dir='.'; else dir='$(srcdir)'; fi; \ + cp -p "$$dir/$$file" '$(distdir)'/$$file || exit 1; \ + done + +force : + diff --git a/srclib/Makefile b/srclib/Makefile new file mode 100644 index 0000000..5e4f231 --- /dev/null +++ b/srclib/Makefile @@ -0,0 +1,3151 @@ +# Makefile.in generated by automake 1.16.5 from Makefile.am. +# srclib/Makefile. Generated from Makefile.in by configure. + +# Copyright (C) 1994-2021 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. + + + +# Copyright (C) 2002-2022 Free Software Foundation, Inc. +# +# This file is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This file is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this file. If not, see . +# +# As a special exception to the GNU General Public License, +# this file may be distributed as part of a program that +# contains a configuration script generated by Autoconf, under +# the same distribution terms as the rest of that program. +# +# Generated by gnulib-tool. +# Reproduce by: +# gnulib-tool --import --local-dir=gnulib-local \ +# --lib=libicrt \ +# --source-base=srclib \ +# --m4-base=srcm4 \ +# --doc-base=doc \ +# --tests-base=tests \ +# --aux-dir=build-aux \ +# --makefile-name=Makefile.gnulib \ +# --no-conditional-dependencies \ +# --no-libtool \ +# --macro-prefix=gl \ +# --no-vc-files \ +# binary-io \ +# error \ +# gettext \ +# gettext-h \ +# lib-symbol-visibility \ +# libiconv-misc \ +# mbstate \ +# progname \ +# relocatable-prog \ +# safe-read \ +# sigpipe \ +# stdbool \ +# stdio \ +# stdlib \ +# strerror \ +# unistd \ +# uniwidth/width \ +# unlocked-io \ +# xalloc + + +am__is_gnu_make = { \ + if test -z '$(MAKELEVEL)'; then \ + false; \ + elif test -n '$(MAKE_HOST)'; then \ + true; \ + elif test -n '$(MAKE_VERSION)' && test -n '$(CURDIR)'; then \ + true; \ + else \ + false; \ + fi; \ +} +am__make_running_with_option = \ + case $${target_option-} in \ + ?) ;; \ + *) echo "am__make_running_with_option: internal error: invalid" \ + "target option '$${target_option-}' specified" >&2; \ + exit 1;; \ + esac; \ + has_opt=no; \ + sane_makeflags=$$MAKEFLAGS; \ + if $(am__is_gnu_make); then \ + sane_makeflags=$$MFLAGS; \ + else \ + case $$MAKEFLAGS in \ + *\\[\ \ ]*) \ + bs=\\; \ + sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \ + | sed "s/$$bs$$bs[$$bs $$bs ]*//g"`;; \ + esac; \ + fi; \ + skip_next=no; \ + strip_trailopt () \ + { \ + flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \ + }; \ + for flg in $$sane_makeflags; do \ + test $$skip_next = yes && { skip_next=no; continue; }; \ + case $$flg in \ + *=*|--*) continue;; \ + -*I) strip_trailopt 'I'; skip_next=yes;; \ + -*I?*) strip_trailopt 'I';; \ + -*O) strip_trailopt 'O'; skip_next=yes;; \ + -*O?*) strip_trailopt 'O';; \ + -*l) strip_trailopt 'l'; skip_next=yes;; \ + -*l?*) strip_trailopt 'l';; \ + -[dEDm]) skip_next=yes;; \ + -[JT]) skip_next=yes;; \ + esac; \ + case $$flg in \ + *$$target_option*) has_opt=yes; break;; \ + esac; \ + done; \ + test $$has_opt = yes +am__make_dryrun = (target_option=n; $(am__make_running_with_option)) +am__make_keepgoing = (target_option=k; $(am__make_running_with_option)) +pkgdatadir = $(datadir)/libiconv +pkgincludedir = $(includedir)/libiconv +pkglibdir = $(libdir)/libiconv +pkglibexecdir = $(libexecdir)/libiconv +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 = aarch64-apple-darwin22.4.0 +host_triplet = aarch64-apple-darwin22.4.0 +am__append_1 = canonicalize-lgpl.c +#am__append_2 = close.c +#am__append_3 = dup2.c +am__append_4 = error.c +#am__append_5 = fcntl.c +am__append_6 = free.c +#am__append_7 = fstat.c +#am__append_8 = getdtablesize.c +am__append_9 = mempcpy.c +#am__append_10 = msvc-inval.c +#am__append_11 = msvc-nothrow.c +am__append_12 = open.c +#am__append_13 = raise.c +am__append_14 = rawmemchr.c +#am__append_15 = read.c +am__append_16 = readlink.c +#am__append_17 = progreloc.c +#am__append_18 = sigprocmask.c +am__append_19 = stat.c +#am__append_20 = stdio-read.c +#am__append_21 = stdio-write.c +am__append_22 = strerror.c +am__append_23 = strerror-override.c +am__append_24 = uniwidth/width.c +subdir = srclib +ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 +am__aclocal_m4_deps = $(top_srcdir)/srcm4/00gnulib.m4 \ + $(top_srcdir)/srcm4/__inline.m4 \ + $(top_srcdir)/srcm4/absolute-header.m4 \ + $(top_srcdir)/srcm4/alloca.m4 \ + $(top_srcdir)/srcm4/asm-underscore.m4 \ + $(top_srcdir)/srcm4/builtin-expect.m4 \ + $(top_srcdir)/srcm4/canonicalize.m4 \ + $(top_srcdir)/srcm4/close.m4 $(top_srcdir)/srcm4/codeset.m4 \ + $(top_srcdir)/srcm4/double-slash-root.m4 \ + $(top_srcdir)/srcm4/dup2.m4 $(top_srcdir)/srcm4/eealloc.m4 \ + $(top_srcdir)/srcm4/environ.m4 $(top_srcdir)/srcm4/errno_h.m4 \ + $(top_srcdir)/srcm4/error.m4 $(top_srcdir)/srcm4/extensions.m4 \ + $(top_srcdir)/srcm4/extern-inline.m4 \ + $(top_srcdir)/srcm4/fcntl-o.m4 $(top_srcdir)/srcm4/fcntl.m4 \ + $(top_srcdir)/srcm4/fcntl_h.m4 $(top_srcdir)/srcm4/free.m4 \ + $(top_srcdir)/srcm4/fstat.m4 \ + $(top_srcdir)/srcm4/getdtablesize.m4 \ + $(top_srcdir)/srcm4/getprogname.m4 \ + $(top_srcdir)/srcm4/gettext.m4 \ + $(top_srcdir)/srcm4/gnulib-common.m4 \ + $(top_srcdir)/srcm4/gnulib-comp.m4 \ + $(top_srcdir)/srcm4/host-cpu-c-abi.m4 \ + $(top_srcdir)/srcm4/iconv.m4 \ + $(top_srcdir)/srcm4/include_next.m4 \ + $(top_srcdir)/srcm4/intlmacosx.m4 \ + $(top_srcdir)/srcm4/inttypes.m4 \ + $(top_srcdir)/srcm4/largefile.m4 $(top_srcdir)/srcm4/lib-ld.m4 \ + $(top_srcdir)/srcm4/lib-link.m4 \ + $(top_srcdir)/srcm4/lib-prefix.m4 \ + $(top_srcdir)/srcm4/libunistring-base.m4 \ + $(top_srcdir)/srcm4/limits-h.m4 $(top_srcdir)/srcm4/lstat.m4 \ + $(top_srcdir)/srcm4/malloc.m4 $(top_srcdir)/srcm4/malloca.m4 \ + $(top_srcdir)/srcm4/mbstate_t.m4 \ + $(top_srcdir)/srcm4/mempcpy.m4 $(top_srcdir)/srcm4/minmax.m4 \ + $(top_srcdir)/srcm4/mode_t.m4 \ + $(top_srcdir)/srcm4/msvc-inval.m4 \ + $(top_srcdir)/srcm4/msvc-nothrow.m4 \ + $(top_srcdir)/srcm4/multiarch.m4 $(top_srcdir)/srcm4/nls.m4 \ + $(top_srcdir)/srcm4/nocrash.m4 $(top_srcdir)/srcm4/off_t.m4 \ + $(top_srcdir)/srcm4/open-cloexec.m4 \ + $(top_srcdir)/srcm4/open-slash.m4 $(top_srcdir)/srcm4/open.m4 \ + $(top_srcdir)/srcm4/pathmax.m4 $(top_srcdir)/srcm4/po.m4 \ + $(top_srcdir)/srcm4/progtest.m4 $(top_srcdir)/srcm4/raise.m4 \ + $(top_srcdir)/srcm4/rawmemchr.m4 $(top_srcdir)/srcm4/read.m4 \ + $(top_srcdir)/srcm4/readlink.m4 $(top_srcdir)/srcm4/realloc.m4 \ + $(top_srcdir)/srcm4/relocatable-lib.m4 \ + $(top_srcdir)/srcm4/relocatable.m4 \ + $(top_srcdir)/srcm4/safe-read.m4 $(top_srcdir)/srcm4/setenv.m4 \ + $(top_srcdir)/srcm4/signal_h.m4 \ + $(top_srcdir)/srcm4/signalblocking.m4 \ + $(top_srcdir)/srcm4/sigpipe.m4 $(top_srcdir)/srcm4/ssize_t.m4 \ + $(top_srcdir)/srcm4/stat-time.m4 $(top_srcdir)/srcm4/stat.m4 \ + $(top_srcdir)/srcm4/stdalign.m4 $(top_srcdir)/srcm4/stdbool.m4 \ + $(top_srcdir)/srcm4/stddef_h.m4 $(top_srcdir)/srcm4/stdint.m4 \ + $(top_srcdir)/srcm4/stdio_h.m4 $(top_srcdir)/srcm4/stdlib_h.m4 \ + $(top_srcdir)/srcm4/strerror.m4 \ + $(top_srcdir)/srcm4/string_h.m4 \ + $(top_srcdir)/srcm4/sys_socket_h.m4 \ + $(top_srcdir)/srcm4/sys_stat_h.m4 \ + $(top_srcdir)/srcm4/sys_types_h.m4 \ + $(top_srcdir)/srcm4/time_h.m4 $(top_srcdir)/srcm4/unistd_h.m4 \ + $(top_srcdir)/srcm4/unlocked-io.m4 \ + $(top_srcdir)/srcm4/visibility.m4 \ + $(top_srcdir)/srcm4/warn-on-use.m4 \ + $(top_srcdir)/srcm4/wchar_h.m4 $(top_srcdir)/srcm4/wchar_t.m4 \ + $(top_srcdir)/srcm4/wint_t.m4 $(top_srcdir)/srcm4/year2038.m4 \ + $(top_srcdir)/srcm4/zzgnulib.m4 $(top_srcdir)/m4/cp.m4 \ + $(top_srcdir)/m4/eilseq.m4 $(top_srcdir)/m4/libtool.m4 \ + $(top_srcdir)/m4/ln.m4 $(top_srcdir)/m4/ltoptions.m4 \ + $(top_srcdir)/m4/ltsugar.m4 $(top_srcdir)/m4/ltversion.m4 \ + $(top_srcdir)/m4/lt~obsolete.m4 $(top_srcdir)/configure.ac +am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ + $(ACLOCAL_M4) +DIST_COMMON = $(srcdir)/Makefile.am $(am__DIST_COMMON) +mkinstalldirs = $(SHELL) $(top_srcdir)/build-aux/mkinstalldirs +CONFIG_HEADER = $(top_builddir)/config.h $(top_builddir)/lib/config.h +CONFIG_CLEAN_FILES = +CONFIG_CLEAN_VPATH_FILES = +LIBRARIES = $(noinst_LIBRARIES) +AM_V_AR = $(am__v_AR_$(V)) +am__v_AR_ = $(am__v_AR_$(AM_DEFAULT_VERBOSITY)) +am__v_AR_0 = @echo " AR " $@; +am__v_AR_1 = +libicrt_a_AR = $(AR) $(ARFLAGS) +am__DEPENDENCIES_1 = +am__libicrt_a_SOURCES_DIST = allocator.c areadlink.c basename-lgpl.c \ + binary-io.h binary-io.c canonicalize-lgpl.c careadlinkat.c \ + cloexec.c close.c dup2.c error.c fcntl.c fd-hook.c free.c \ + fstat.c getdtablesize.c getprogname.h getprogname.c gettext.h \ + idx.h malloca.c mempcpy.c minmax.h msvc-inval.c msvc-nothrow.c \ + open.c progname.h progname.c raise.c rawmemchr.c read.c \ + readlink.c progreloc.c safe-read.c \ + malloc/scratch_buffer_dupfree.c malloc/scratch_buffer_grow.c \ + malloc/scratch_buffer_grow_preserve.c \ + malloc/scratch_buffer_set_array_size.c sigprocmask.c stat.c \ + stat-time.c stdio-read.c stdio-write.c strerror.c \ + strerror-override.c unistd.c uniwidth/width.c xalloc.h \ + xmalloc.c xstrdup.c xreadlink.c +am__objects_1 = libicrt_a-canonicalize-lgpl.$(OBJEXT) +#am__objects_2 = libicrt_a-close.$(OBJEXT) +#am__objects_3 = libicrt_a-dup2.$(OBJEXT) +am__objects_4 = libicrt_a-error.$(OBJEXT) +#am__objects_5 = libicrt_a-fcntl.$(OBJEXT) +am__objects_6 = libicrt_a-free.$(OBJEXT) +#am__objects_7 = libicrt_a-fstat.$(OBJEXT) +#am__objects_8 = libicrt_a-getdtablesize.$(OBJEXT) +am__objects_9 = libicrt_a-mempcpy.$(OBJEXT) +#am__objects_10 = \ +# libicrt_a-msvc-inval.$(OBJEXT) +#am__objects_11 = libicrt_a-msvc-nothrow.$(OBJEXT) +am__objects_12 = libicrt_a-open.$(OBJEXT) +#am__objects_13 = libicrt_a-raise.$(OBJEXT) +am__objects_14 = \ + libicrt_a-rawmemchr.$(OBJEXT) +#am__objects_15 = libicrt_a-read.$(OBJEXT) +am__objects_16 = \ + libicrt_a-readlink.$(OBJEXT) +#am__objects_17 = \ +# libicrt_a-progreloc.$(OBJEXT) +am__dirstamp = $(am__leading_dot)dirstamp +#am__objects_18 = \ +# libicrt_a-sigprocmask.$(OBJEXT) +am__objects_19 = libicrt_a-stat.$(OBJEXT) +#am__objects_20 = \ +# libicrt_a-stdio-read.$(OBJEXT) +#am__objects_21 = \ +# libicrt_a-stdio-write.$(OBJEXT) +am__objects_22 = \ + libicrt_a-strerror.$(OBJEXT) +am__objects_23 = libicrt_a-strerror-override.$(OBJEXT) +am__objects_24 = uniwidth/libicrt_a-width.$(OBJEXT) +am_libicrt_a_OBJECTS = libicrt_a-allocator.$(OBJEXT) \ + libicrt_a-areadlink.$(OBJEXT) \ + libicrt_a-basename-lgpl.$(OBJEXT) \ + libicrt_a-binary-io.$(OBJEXT) $(am__objects_1) \ + libicrt_a-careadlinkat.$(OBJEXT) libicrt_a-cloexec.$(OBJEXT) \ + $(am__objects_2) $(am__objects_3) $(am__objects_4) \ + $(am__objects_5) libicrt_a-fd-hook.$(OBJEXT) $(am__objects_6) \ + $(am__objects_7) $(am__objects_8) \ + libicrt_a-getprogname.$(OBJEXT) libicrt_a-malloca.$(OBJEXT) \ + $(am__objects_9) $(am__objects_10) $(am__objects_11) \ + $(am__objects_12) libicrt_a-progname.$(OBJEXT) \ + $(am__objects_13) $(am__objects_14) $(am__objects_15) \ + $(am__objects_16) $(am__objects_17) \ + libicrt_a-safe-read.$(OBJEXT) \ + malloc/libicrt_a-scratch_buffer_dupfree.$(OBJEXT) \ + malloc/libicrt_a-scratch_buffer_grow.$(OBJEXT) \ + malloc/libicrt_a-scratch_buffer_grow_preserve.$(OBJEXT) \ + malloc/libicrt_a-scratch_buffer_set_array_size.$(OBJEXT) \ + $(am__objects_18) $(am__objects_19) \ + libicrt_a-stat-time.$(OBJEXT) $(am__objects_20) \ + $(am__objects_21) $(am__objects_22) $(am__objects_23) \ + libicrt_a-unistd.$(OBJEXT) $(am__objects_24) \ + libicrt_a-xmalloc.$(OBJEXT) libicrt_a-xstrdup.$(OBJEXT) \ + libicrt_a-xreadlink.$(OBJEXT) +libicrt_a_OBJECTS = $(am_libicrt_a_OBJECTS) +AM_V_P = $(am__v_P_$(V)) +am__v_P_ = $(am__v_P_$(AM_DEFAULT_VERBOSITY)) +am__v_P_0 = false +am__v_P_1 = : +AM_V_GEN = $(am__v_GEN_$(V)) +am__v_GEN_ = $(am__v_GEN_$(AM_DEFAULT_VERBOSITY)) +am__v_GEN_0 = @echo " GEN " $@; +am__v_GEN_1 = +AM_V_at = $(am__v_at_$(V)) +am__v_at_ = $(am__v_at_$(AM_DEFAULT_VERBOSITY)) +am__v_at_0 = @ +am__v_at_1 = +DEFAULT_INCLUDES = -I. -I$(top_builddir) -I$(top_builddir)/lib +depcomp = +am__maybe_remake_depfiles = +AM_V_lt = $(am__v_lt_$(V)) +am__v_lt_ = $(am__v_lt_$(AM_DEFAULT_VERBOSITY)) +am__v_lt_0 = --silent +am__v_lt_1 = +COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \ + $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) +LTCOMPILE = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \ + $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) \ + $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) \ + $(AM_CFLAGS) $(CFLAGS) +AM_V_CC = $(am__v_CC_$(V)) +am__v_CC_ = $(am__v_CC_$(AM_DEFAULT_VERBOSITY)) +am__v_CC_0 = @echo " CC " $@; +am__v_CC_1 = +CCLD = $(CC) +LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \ + $(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \ + $(AM_LDFLAGS) $(LDFLAGS) -o $@ +AM_V_CCLD = $(am__v_CCLD_$(V)) +am__v_CCLD_ = $(am__v_CCLD_$(AM_DEFAULT_VERBOSITY)) +am__v_CCLD_0 = @echo " CCLD " $@; +am__v_CCLD_1 = +SOURCES = $(libicrt_a_SOURCES) $(EXTRA_libicrt_a_SOURCES) +DIST_SOURCES = $(am__libicrt_a_SOURCES_DIST) \ + $(EXTRA_libicrt_a_SOURCES) +am__can_run_installinfo = \ + case $$AM_UPDATE_INFO_DIR in \ + n|no|NO) false;; \ + *) (install-info --version) >/dev/null 2>&1;; \ + esac +am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP) +# Read a list of newline-separated strings from the standard input, +# and print each of them once, without duplicates. Input order is +# *not* preserved. +am__uniquify_input = $(AWK) '\ + BEGIN { nonempty = 0; } \ + { items[$$0] = 1; nonempty = 1; } \ + END { if (nonempty) { for (i in items) print i; }; } \ +' +# Make sure the list of sources is unique. This is necessary because, +# e.g., the same source file might be shared among _SOURCES variables +# for different programs/libraries. +am__define_uniq_tagged_files = \ + list='$(am__tagged_files)'; \ + unique=`for i in $$list; do \ + if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ + done | $(am__uniquify_input)` +am__DIST_COMMON = $(srcdir)/Makefile.gnulib $(srcdir)/Makefile.in \ + $(top_srcdir)/build-aux/mkinstalldirs +DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) +ACLOCAL = ${SHELL} '/Users/yangzuhao/Downloads/libiconv-1.17/build-aux/missing' aclocal-1.16 +ALLOCA = +ALLOCA_H = alloca.h +AMTAR = $${TAR-tar} +AM_DEFAULT_VERBOSITY = 1 +APPLE_UNIVERSAL_BUILD = 0 +AR = ar +ARFLAGS = cr +AS = as +ASM_SYMBOL_PREFIX = "_" +AUTOCONF = ${SHELL} '/Users/yangzuhao/Downloads/libiconv-1.17/build-aux/missing' autoconf +AUTOHEADER = ${SHELL} '/Users/yangzuhao/Downloads/libiconv-1.17/build-aux/missing' autoheader +AUTOMAKE = ${SHELL} '/Users/yangzuhao/Downloads/libiconv-1.17/build-aux/missing' automake-1.16 +AWK = gawk +BITSIZEOF_PTRDIFF_T = +BITSIZEOF_SIG_ATOMIC_T = +BITSIZEOF_SIZE_T = +BITSIZEOF_WCHAR_T = +BITSIZEOF_WINT_T = +BROKEN_WCHAR_H = 0 +CC = gcc +CCDEPMODE = depmode=none +CFLAGS = -g -O2 +CFLAG_VISIBILITY = -fvisibility=hidden +CP = cp -p +CPP = gcc -E +CPPFLAGS = +CSCOPE = cscope +CTAGS = ctags +CYGPATH_W = echo +DEFS = -DHAVE_CONFIG_H -DEXEEXT=\"\" +DEPDIR = .deps +DLLTOOL = false +DLL_VARIABLE = +DSYMUTIL = dsymutil +DUMPBIN = +ECHO_C = \c +ECHO_N = +ECHO_T = +EGREP = /usr/bin/grep -E +EILSEQ = +EMULTIHOP_HIDDEN = +EMULTIHOP_VALUE = +ENOLINK_HIDDEN = +ENOLINK_VALUE = +EOVERFLOW_HIDDEN = +EOVERFLOW_VALUE = +ERRNO_H = +ETAGS = etags +EXEEXT = +FGREP = /usr/bin/grep -F +FILECMD = file +GETTEXT_MACRO_VERSION = 0.20 +GL_CFLAG_ALLOW_WARNINGS = -Wno-error +GL_CFLAG_GNULIB_WARNINGS = -Wno-cast-qual -Wno-conversion -Wno-float-equal -Wno-sign-compare -Wno-undef -Wno-unused-function -Wno-unused-parameter -Wno-float-conversion -Wimplicit-fallthrough -Wno-pedantic -Wno-sign-conversion -Wno-type-limits +GL_GNULIB_ACCESS = 0 +GL_GNULIB_ALIGNED_ALLOC = 0 +GL_GNULIB_ATOLL = 0 +GL_GNULIB_BTOWC = 0 +GL_GNULIB_CALLOC_GNU = 0 +GL_GNULIB_CALLOC_POSIX = 0 +GL_GNULIB_CANONICALIZE_FILE_NAME = 1 +GL_GNULIB_CHDIR = 0 +GL_GNULIB_CHOWN = 0 +GL_GNULIB_CLOSE = 1 +GL_GNULIB_COPY_FILE_RANGE = 0 +GL_GNULIB_CREAT = 0 +GL_GNULIB_CTIME = 0 +GL_GNULIB_DPRINTF = 0 +GL_GNULIB_DUP = 0 +GL_GNULIB_DUP2 = 1 +GL_GNULIB_DUP3 = 0 +GL_GNULIB_ENVIRON = 1 +GL_GNULIB_EUIDACCESS = 0 +GL_GNULIB_EXECL = 0 +GL_GNULIB_EXECLE = 0 +GL_GNULIB_EXECLP = 0 +GL_GNULIB_EXECV = 0 +GL_GNULIB_EXECVE = 0 +GL_GNULIB_EXECVP = 0 +GL_GNULIB_EXECVPE = 0 +GL_GNULIB_EXPLICIT_BZERO = 0 +GL_GNULIB_FACCESSAT = 0 +GL_GNULIB_FCHDIR = 0 +GL_GNULIB_FCHMODAT = 0 +GL_GNULIB_FCHOWNAT = 0 +GL_GNULIB_FCLOSE = 0 +GL_GNULIB_FCNTL = 1 +GL_GNULIB_FDATASYNC = 0 +GL_GNULIB_FDOPEN = 0 +GL_GNULIB_FFLUSH = 0 +GL_GNULIB_FFSL = 0 +GL_GNULIB_FFSLL = 0 +GL_GNULIB_FGETC = 1 +GL_GNULIB_FGETS = 1 +GL_GNULIB_FOPEN = 0 +GL_GNULIB_FOPEN_GNU = 0 +GL_GNULIB_FPRINTF = 1 +GL_GNULIB_FPRINTF_POSIX = 0 +GL_GNULIB_FPURGE = 0 +GL_GNULIB_FPUTC = 1 +GL_GNULIB_FPUTS = 1 +GL_GNULIB_FREAD = 1 +GL_GNULIB_FREE_POSIX = 1 +GL_GNULIB_FREOPEN = 0 +GL_GNULIB_FSCANF = 1 +GL_GNULIB_FSEEK = 0 +GL_GNULIB_FSEEKO = 0 +GL_GNULIB_FSTAT = 1 +GL_GNULIB_FSTATAT = 0 +GL_GNULIB_FSYNC = 0 +GL_GNULIB_FTELL = 0 +GL_GNULIB_FTELLO = 0 +GL_GNULIB_FTRUNCATE = 0 +GL_GNULIB_FUTIMENS = 0 +GL_GNULIB_FWRITE = 1 +GL_GNULIB_GETC = 1 +GL_GNULIB_GETCHAR = 1 +GL_GNULIB_GETCWD = 0 +GL_GNULIB_GETDELIM = 0 +GL_GNULIB_GETDOMAINNAME = 0 +GL_GNULIB_GETDTABLESIZE = 1 +GL_GNULIB_GETENTROPY = 0 +GL_GNULIB_GETGROUPS = 0 +GL_GNULIB_GETHOSTNAME = 0 +GL_GNULIB_GETLINE = 0 +GL_GNULIB_GETLOADAVG = 0 +GL_GNULIB_GETLOGIN = 0 +GL_GNULIB_GETLOGIN_R = 0 +GL_GNULIB_GETOPT_POSIX = 0 +GL_GNULIB_GETPAGESIZE = 0 +GL_GNULIB_GETPASS = 0 +GL_GNULIB_GETPASS_GNU = 0 +GL_GNULIB_GETSUBOPT = 0 +GL_GNULIB_GETUMASK = 0 +GL_GNULIB_GETUSERSHELL = 0 +GL_GNULIB_GRANTPT = 0 +GL_GNULIB_GROUP_MEMBER = 0 +GL_GNULIB_IMAXABS = 0 +GL_GNULIB_IMAXDIV = 0 +GL_GNULIB_ISATTY = 0 +GL_GNULIB_LCHMOD = 0 +GL_GNULIB_LCHOWN = 0 +GL_GNULIB_LINK = 0 +GL_GNULIB_LINKAT = 0 +GL_GNULIB_LOCALTIME = 0 +GL_GNULIB_LSEEK = 0 +GL_GNULIB_LSTAT = 0 +GL_GNULIB_MALLOC_GNU = 0 +GL_GNULIB_MALLOC_POSIX = 1 +GL_GNULIB_MBRLEN = 0 +GL_GNULIB_MBRTOWC = 0 +GL_GNULIB_MBSCASECMP = 0 +GL_GNULIB_MBSCASESTR = 0 +GL_GNULIB_MBSCHR = 0 +GL_GNULIB_MBSCSPN = 0 +GL_GNULIB_MBSINIT = 0 +GL_GNULIB_MBSLEN = 0 +GL_GNULIB_MBSNCASECMP = 0 +GL_GNULIB_MBSNLEN = 0 +GL_GNULIB_MBSNRTOWCS = 0 +GL_GNULIB_MBSPBRK = 0 +GL_GNULIB_MBSPCASECMP = 0 +GL_GNULIB_MBSRCHR = 0 +GL_GNULIB_MBSRTOWCS = 0 +GL_GNULIB_MBSSEP = 0 +GL_GNULIB_MBSSPN = 0 +GL_GNULIB_MBSSTR = 0 +GL_GNULIB_MBSTOK_R = 0 +GL_GNULIB_MBTOWC = 0 +GL_GNULIB_MDA_ACCESS = 1 +GL_GNULIB_MDA_CHDIR = 1 +GL_GNULIB_MDA_CHMOD = 1 +GL_GNULIB_MDA_CLOSE = 1 +GL_GNULIB_MDA_CREAT = 1 +GL_GNULIB_MDA_DUP = 1 +GL_GNULIB_MDA_DUP2 = 1 +GL_GNULIB_MDA_ECVT = 1 +GL_GNULIB_MDA_EXECL = 1 +GL_GNULIB_MDA_EXECLE = 1 +GL_GNULIB_MDA_EXECLP = 1 +GL_GNULIB_MDA_EXECV = 1 +GL_GNULIB_MDA_EXECVE = 1 +GL_GNULIB_MDA_EXECVP = 1 +GL_GNULIB_MDA_EXECVPE = 1 +GL_GNULIB_MDA_FCLOSEALL = 1 +GL_GNULIB_MDA_FCVT = 1 +GL_GNULIB_MDA_FDOPEN = 1 +GL_GNULIB_MDA_FILENO = 1 +GL_GNULIB_MDA_GCVT = 1 +GL_GNULIB_MDA_GETCWD = 1 +GL_GNULIB_MDA_GETPID = 1 +GL_GNULIB_MDA_GETW = 1 +GL_GNULIB_MDA_ISATTY = 1 +GL_GNULIB_MDA_LSEEK = 1 +GL_GNULIB_MDA_MEMCCPY = 1 +GL_GNULIB_MDA_MKDIR = 1 +GL_GNULIB_MDA_MKTEMP = 1 +GL_GNULIB_MDA_OPEN = 1 +GL_GNULIB_MDA_PUTENV = 1 +GL_GNULIB_MDA_PUTW = 1 +GL_GNULIB_MDA_READ = 1 +GL_GNULIB_MDA_RMDIR = 1 +GL_GNULIB_MDA_STRDUP = 1 +GL_GNULIB_MDA_SWAB = 1 +GL_GNULIB_MDA_TEMPNAM = 1 +GL_GNULIB_MDA_TZSET = 1 +GL_GNULIB_MDA_UMASK = 1 +GL_GNULIB_MDA_UNLINK = 1 +GL_GNULIB_MDA_WCSDUP = 1 +GL_GNULIB_MDA_WRITE = 1 +GL_GNULIB_MEMCHR = 0 +GL_GNULIB_MEMMEM = 0 +GL_GNULIB_MEMPCPY = 1 +GL_GNULIB_MEMRCHR = 0 +GL_GNULIB_MKDIR = 0 +GL_GNULIB_MKDIRAT = 0 +GL_GNULIB_MKDTEMP = 0 +GL_GNULIB_MKFIFO = 0 +GL_GNULIB_MKFIFOAT = 0 +GL_GNULIB_MKNOD = 0 +GL_GNULIB_MKNODAT = 0 +GL_GNULIB_MKOSTEMP = 0 +GL_GNULIB_MKOSTEMPS = 0 +GL_GNULIB_MKSTEMP = 0 +GL_GNULIB_MKSTEMPS = 0 +GL_GNULIB_MKTIME = 0 +GL_GNULIB_NANOSLEEP = 0 +GL_GNULIB_NONBLOCKING = 0 +GL_GNULIB_OBSTACK_PRINTF = 0 +GL_GNULIB_OBSTACK_PRINTF_POSIX = 0 +GL_GNULIB_OPEN = 1 +GL_GNULIB_OPENAT = 0 +GL_GNULIB_OVERRIDES_STRUCT_STAT = 0 +GL_GNULIB_PCLOSE = 0 +GL_GNULIB_PERROR = 0 +GL_GNULIB_PIPE = 0 +GL_GNULIB_PIPE2 = 0 +GL_GNULIB_POPEN = 0 +GL_GNULIB_POSIX_MEMALIGN = 0 +GL_GNULIB_POSIX_OPENPT = 0 +GL_GNULIB_PREAD = 0 +GL_GNULIB_PRINTF = 1 +GL_GNULIB_PRINTF_POSIX = 0 +GL_GNULIB_PTHREAD_SIGMASK = 0 +GL_GNULIB_PTSNAME = 0 +GL_GNULIB_PTSNAME_R = 0 +GL_GNULIB_PUTC = 1 +GL_GNULIB_PUTCHAR = 1 +GL_GNULIB_PUTENV = 0 +GL_GNULIB_PUTS = 1 +GL_GNULIB_PWRITE = 0 +GL_GNULIB_QSORT_R = 0 +GL_GNULIB_RAISE = 1 +GL_GNULIB_RANDOM = 0 +GL_GNULIB_RANDOM_R = 0 +GL_GNULIB_RAWMEMCHR = 1 +GL_GNULIB_READ = 1 +GL_GNULIB_READLINK = 1 +GL_GNULIB_READLINKAT = 0 +GL_GNULIB_REALLOCARRAY = 0 +GL_GNULIB_REALLOC_GNU = 0 +GL_GNULIB_REALLOC_POSIX = 1 +GL_GNULIB_REALPATH = 1 +GL_GNULIB_REMOVE = 0 +GL_GNULIB_RENAME = 0 +GL_GNULIB_RENAMEAT = 0 +GL_GNULIB_RMDIR = 0 +GL_GNULIB_RPMATCH = 0 +GL_GNULIB_SCANF = 1 +GL_GNULIB_SECURE_GETENV = 0 +GL_GNULIB_SETENV = 0 +GL_GNULIB_SETHOSTNAME = 0 +GL_GNULIB_SIGABBREV_NP = 0 +GL_GNULIB_SIGACTION = 0 +GL_GNULIB_SIGDESCR_NP = 0 +GL_GNULIB_SIGNAL_H_SIGPIPE = 1 +GL_GNULIB_SIGPROCMASK = 1 +GL_GNULIB_SLEEP = 0 +GL_GNULIB_SNPRINTF = 0 +GL_GNULIB_SPRINTF_POSIX = 0 +GL_GNULIB_STAT = 1 +GL_GNULIB_STDIO_H_NONBLOCKING = 0 +GL_GNULIB_STDIO_H_SIGPIPE = 1 +GL_GNULIB_STPCPY = 0 +GL_GNULIB_STPNCPY = 0 +GL_GNULIB_STRCASESTR = 0 +GL_GNULIB_STRCHRNUL = 0 +GL_GNULIB_STRDUP = 0 +GL_GNULIB_STRERROR = 1 +GL_GNULIB_STRERRORNAME_NP = 0 +GL_GNULIB_STRERROR_R = 0 +GL_GNULIB_STRFTIME = 0 +GL_GNULIB_STRNCAT = 0 +GL_GNULIB_STRNDUP = 0 +GL_GNULIB_STRNLEN = 0 +GL_GNULIB_STRPBRK = 0 +GL_GNULIB_STRPTIME = 0 +GL_GNULIB_STRSEP = 0 +GL_GNULIB_STRSIGNAL = 0 +GL_GNULIB_STRSTR = 0 +GL_GNULIB_STRTOD = 0 +GL_GNULIB_STRTOIMAX = 0 +GL_GNULIB_STRTOK_R = 0 +GL_GNULIB_STRTOL = 0 +GL_GNULIB_STRTOLD = 0 +GL_GNULIB_STRTOLL = 0 +GL_GNULIB_STRTOUL = 0 +GL_GNULIB_STRTOULL = 0 +GL_GNULIB_STRTOUMAX = 0 +GL_GNULIB_STRVERSCMP = 0 +GL_GNULIB_SYMLINK = 0 +GL_GNULIB_SYMLINKAT = 0 +GL_GNULIB_SYSTEM_POSIX = 0 +GL_GNULIB_TIMEGM = 0 +GL_GNULIB_TIMESPEC_GET = 0 +GL_GNULIB_TIMESPEC_GETRES = 0 +GL_GNULIB_TIME_R = 0 +GL_GNULIB_TIME_RZ = 0 +GL_GNULIB_TMPFILE = 0 +GL_GNULIB_TRUNCATE = 0 +GL_GNULIB_TTYNAME_R = 0 +GL_GNULIB_TZSET = 0 +GL_GNULIB_UNISTD_H_GETOPT = 0 +GL_GNULIB_UNISTD_H_NONBLOCKING = 0 +GL_GNULIB_UNISTD_H_SIGPIPE = 1 +GL_GNULIB_UNLINK = 0 +GL_GNULIB_UNLINKAT = 0 +GL_GNULIB_UNLOCKPT = 0 +GL_GNULIB_UNSETENV = 0 +GL_GNULIB_USLEEP = 0 +GL_GNULIB_UTIMENSAT = 0 +GL_GNULIB_VASPRINTF = 0 +GL_GNULIB_VDPRINTF = 0 +GL_GNULIB_VFPRINTF = 1 +GL_GNULIB_VFPRINTF_POSIX = 0 +GL_GNULIB_VFSCANF = 0 +GL_GNULIB_VPRINTF = 1 +GL_GNULIB_VPRINTF_POSIX = 0 +GL_GNULIB_VSCANF = 0 +GL_GNULIB_VSNPRINTF = 0 +GL_GNULIB_VSPRINTF_POSIX = 0 +GL_GNULIB_WCPCPY = 0 +GL_GNULIB_WCPNCPY = 0 +GL_GNULIB_WCRTOMB = 0 +GL_GNULIB_WCSCASECMP = 0 +GL_GNULIB_WCSCAT = 0 +GL_GNULIB_WCSCHR = 0 +GL_GNULIB_WCSCMP = 0 +GL_GNULIB_WCSCOLL = 0 +GL_GNULIB_WCSCPY = 0 +GL_GNULIB_WCSCSPN = 0 +GL_GNULIB_WCSDUP = 0 +GL_GNULIB_WCSFTIME = 0 +GL_GNULIB_WCSLEN = 0 +GL_GNULIB_WCSNCASECMP = 0 +GL_GNULIB_WCSNCAT = 0 +GL_GNULIB_WCSNCMP = 0 +GL_GNULIB_WCSNCPY = 0 +GL_GNULIB_WCSNLEN = 0 +GL_GNULIB_WCSNRTOMBS = 0 +GL_GNULIB_WCSPBRK = 0 +GL_GNULIB_WCSRCHR = 0 +GL_GNULIB_WCSRTOMBS = 0 +GL_GNULIB_WCSSPN = 0 +GL_GNULIB_WCSSTR = 0 +GL_GNULIB_WCSTOK = 0 +GL_GNULIB_WCSWIDTH = 0 +GL_GNULIB_WCSXFRM = 0 +GL_GNULIB_WCTOB = 0 +GL_GNULIB_WCTOMB = 0 +GL_GNULIB_WCWIDTH = 0 +GL_GNULIB_WMEMCHR = 0 +GL_GNULIB_WMEMCMP = 0 +GL_GNULIB_WMEMCPY = 0 +GL_GNULIB_WMEMMOVE = 0 +GL_GNULIB_WMEMPCPY = 0 +GL_GNULIB_WMEMSET = 0 +GL_GNULIB_WRITE = 0 +GL_GNULIB__EXIT = 0 +GMSGFMT = /opt/homebrew/bin/msgfmt +GMSGFMT_015 = /opt/homebrew/bin/msgfmt +GNULIBHEADERS_OVERRIDE_WINT_T = 0 +GNULIB_GETTIMEOFDAY = 0 +GREP = /usr/bin/grep +HAVE_ALIGNED_ALLOC = 1 +HAVE_ATOLL = 1 +HAVE_BTOWC = 1 +HAVE_C99_STDINT_H = 1 +HAVE_CANONICALIZE_FILE_NAME = 0 +HAVE_CHOWN = 1 +HAVE_COPY_FILE_RANGE = 1 +HAVE_CRTDEFS_H = 0 +HAVE_DECL_ECVT = 1 +HAVE_DECL_ENVIRON = 0 +HAVE_DECL_EXECVPE = 0 +HAVE_DECL_FCHDIR = 1 +HAVE_DECL_FCLOSEALL = 0 +HAVE_DECL_FCVT = 1 +HAVE_DECL_FDATASYNC = 1 +HAVE_DECL_FPURGE = 1 +HAVE_DECL_FSEEKO = 1 +HAVE_DECL_FTELLO = 1 +HAVE_DECL_GCVT = 1 +HAVE_DECL_GETDELIM = 1 +HAVE_DECL_GETDOMAINNAME = 1 +HAVE_DECL_GETLINE = 1 +HAVE_DECL_GETLOADAVG = 1 +HAVE_DECL_GETLOGIN = 1 +HAVE_DECL_GETLOGIN_R = 1 +HAVE_DECL_GETPAGESIZE = 1 +HAVE_DECL_GETUSERSHELL = 1 +HAVE_DECL_IMAXABS = 1 +HAVE_DECL_IMAXDIV = 1 +HAVE_DECL_INITSTATE = 1 +HAVE_DECL_LOCALTIME_R = 1 +HAVE_DECL_MEMMEM = 1 +HAVE_DECL_MEMRCHR = 1 +HAVE_DECL_OBSTACK_PRINTF = 1 +HAVE_DECL_SETENV = 1 +HAVE_DECL_SETHOSTNAME = 1 +HAVE_DECL_SETSTATE = 1 +HAVE_DECL_SNPRINTF = 1 +HAVE_DECL_STRDUP = 1 +HAVE_DECL_STRERROR_R = 1 +HAVE_DECL_STRNDUP = 1 +HAVE_DECL_STRNLEN = 1 +HAVE_DECL_STRSIGNAL = 1 +HAVE_DECL_STRTOIMAX = 1 +HAVE_DECL_STRTOK_R = 1 +HAVE_DECL_STRTOUMAX = 1 +HAVE_DECL_TRUNCATE = 1 +HAVE_DECL_TTYNAME_R = 1 +HAVE_DECL_UNSETENV = 1 +HAVE_DECL_VSNPRINTF = 1 +HAVE_DECL_WCSDUP = 1 +HAVE_DECL_WCTOB = 1 +HAVE_DECL_WCWIDTH = 1 +HAVE_DPRINTF = 1 +HAVE_DUP3 = 1 +HAVE_EUIDACCESS = 1 +HAVE_EXECVPE = 1 +HAVE_EXPLICIT_BZERO = 1 +HAVE_FACCESSAT = 1 +HAVE_FCHDIR = 1 +HAVE_FCHMODAT = 1 +HAVE_FCHOWNAT = 1 +HAVE_FCNTL = 1 +HAVE_FDATASYNC = 1 +HAVE_FEATURES_H = 0 +HAVE_FFSL = 1 +HAVE_FFSLL = 1 +HAVE_FSEEKO = 1 +HAVE_FSTATAT = 1 +HAVE_FSYNC = 1 +HAVE_FTELLO = 1 +HAVE_FTRUNCATE = 1 +HAVE_FUTIMENS = 1 +HAVE_GETDTABLESIZE = 1 +HAVE_GETENTROPY = 1 +HAVE_GETGROUPS = 1 +HAVE_GETHOSTNAME = 1 +HAVE_GETLOGIN = 1 +HAVE_GETPAGESIZE = 1 +HAVE_GETPASS = 1 +HAVE_GETSUBOPT = 1 +HAVE_GETUMASK = 1 +HAVE_GRANTPT = 1 +HAVE_GROUP_MEMBER = 1 +HAVE_IMAXDIV_T = 1 +HAVE_INITSTATE = 1 +HAVE_INTTYPES_H = 1 +HAVE_LCHMOD = 1 +HAVE_LCHOWN = 1 +HAVE_LINK = 1 +HAVE_LINKAT = 1 +HAVE_LSTAT = 1 +HAVE_MAX_ALIGN_T = 1 +HAVE_MBRLEN = 1 +HAVE_MBRTOWC = 1 +HAVE_MBSINIT = 1 +HAVE_MBSLEN = 0 +HAVE_MBSNRTOWCS = 1 +HAVE_MBSRTOWCS = 1 +HAVE_MBTOWC = 1 +HAVE_MEMPCPY = 0 +HAVE_MKDIRAT = 1 +HAVE_MKDTEMP = 1 +HAVE_MKFIFO = 1 +HAVE_MKFIFOAT = 1 +HAVE_MKNOD = 1 +HAVE_MKNODAT = 1 +HAVE_MKOSTEMP = 1 +HAVE_MKOSTEMPS = 1 +HAVE_MKSTEMP = 1 +HAVE_MKSTEMPS = 1 +HAVE_MSVC_INVALID_PARAMETER_HANDLER = 0 +HAVE_NANOSLEEP = 1 +HAVE_OPENAT = 1 +HAVE_OS_H = 0 +HAVE_PCLOSE = 1 +HAVE_PIPE = 1 +HAVE_PIPE2 = 1 +HAVE_POPEN = 1 +HAVE_POSIX_MEMALIGN = 1 +HAVE_POSIX_OPENPT = 1 +HAVE_POSIX_SIGNALBLOCKING = 1 +HAVE_PREAD = 1 +HAVE_PTHREAD_SIGMASK = 1 +HAVE_PTSNAME = 1 +HAVE_PTSNAME_R = 1 +HAVE_PWRITE = 1 +HAVE_QSORT_R = 1 +HAVE_RAISE = 1 +HAVE_RANDOM = 1 +HAVE_RANDOM_H = 1 +HAVE_RANDOM_R = 1 +HAVE_RAWMEMCHR = 0 +HAVE_READLINK = 1 +HAVE_READLINKAT = 1 +HAVE_REALLOCARRAY = 1 +HAVE_REALPATH = 1 +HAVE_RENAMEAT = 1 +HAVE_RPMATCH = 1 +HAVE_SECURE_GETENV = 1 +HAVE_SETENV = 1 +HAVE_SETHOSTNAME = 1 +HAVE_SETSTATE = 1 +HAVE_SIGABBREV_NP = 1 +HAVE_SIGACTION = 1 +HAVE_SIGDESCR_NP = 1 +HAVE_SIGHANDLER_T = 0 +HAVE_SIGINFO_T = 1 +HAVE_SIGNED_SIG_ATOMIC_T = +HAVE_SIGNED_WCHAR_T = +HAVE_SIGNED_WINT_T = +HAVE_SIGSET_T = 1 +HAVE_SLEEP = 1 +HAVE_STDINT_H = 1 +HAVE_STPCPY = 1 +HAVE_STPNCPY = 1 +HAVE_STRCASESTR = 1 +HAVE_STRCHRNUL = 1 +HAVE_STRERRORNAME_NP = 1 +HAVE_STRPBRK = 1 +HAVE_STRPTIME = 1 +HAVE_STRSEP = 1 +HAVE_STRTOD = 1 +HAVE_STRTOL = 1 +HAVE_STRTOLD = 1 +HAVE_STRTOLL = 1 +HAVE_STRTOUL = 1 +HAVE_STRTOULL = 1 +HAVE_STRUCT_RANDOM_DATA = 1 +HAVE_STRUCT_SIGACTION_SA_SIGACTION = 1 +HAVE_STRVERSCMP = 1 +HAVE_SYMLINK = 1 +HAVE_SYMLINKAT = 1 +HAVE_SYS_BITYPES_H = 0 +HAVE_SYS_INTTYPES_H = 0 +HAVE_SYS_LOADAVG_H = 0 +HAVE_SYS_PARAM_H = 0 +HAVE_SYS_TYPES_H = 1 +HAVE_TIMEGM = 1 +HAVE_TIMESPEC_GET = 1 +HAVE_TIMESPEC_GETRES = 1 +HAVE_TIMEZONE_T = 0 +HAVE_TYPE_VOLATILE_SIG_ATOMIC_T = 1 +HAVE_UNISTD_H = 1 +HAVE_UNLINKAT = 1 +HAVE_UNLOCKPT = 1 +HAVE_USLEEP = 1 +HAVE_UTIMENSAT = 1 +HAVE_VASPRINTF = 1 +HAVE_VDPRINTF = 1 +HAVE_VISIBILITY = 1 +HAVE_WCHAR_H = 1 +HAVE_WCHAR_T = 1 +HAVE_WCPCPY = 1 +HAVE_WCPNCPY = 1 +HAVE_WCRTOMB = 1 +HAVE_WCSCASECMP = 1 +HAVE_WCSCAT = 1 +HAVE_WCSCHR = 1 +HAVE_WCSCMP = 1 +HAVE_WCSCOLL = 1 +HAVE_WCSCPY = 1 +HAVE_WCSCSPN = 1 +HAVE_WCSDUP = 1 +HAVE_WCSFTIME = 1 +HAVE_WCSLEN = 1 +HAVE_WCSNCASECMP = 1 +HAVE_WCSNCAT = 1 +HAVE_WCSNCMP = 1 +HAVE_WCSNCPY = 1 +HAVE_WCSNLEN = 1 +HAVE_WCSNRTOMBS = 1 +HAVE_WCSPBRK = 1 +HAVE_WCSRCHR = 1 +HAVE_WCSRTOMBS = 1 +HAVE_WCSSPN = 1 +HAVE_WCSSTR = 1 +HAVE_WCSTOK = 1 +HAVE_WCSWIDTH = 1 +HAVE_WCSXFRM = 1 +HAVE_WINSOCK2_H = 0 +HAVE_WINT_T = 1 +HAVE_WMEMCHR = 1 +HAVE_WMEMCMP = 1 +HAVE_WMEMCPY = 1 +HAVE_WMEMMOVE = 1 +HAVE_WMEMPCPY = 1 +HAVE_WMEMSET = 1 +HAVE__BOOL = 1 +HAVE__EXIT = 1 +ICONV_CONST = +INCLUDE_NEXT = include_next +INCLUDE_NEXT_AS_FIRST_DIRECTIVE = include_next +INSTALL = /opt/homebrew/bin/ginstall -c +INSTALL_DATA = ${INSTALL} -m 644 +INSTALL_PROGRAM = ${INSTALL} +INSTALL_PROGRAM_ENV = +INSTALL_SCRIPT = ${INSTALL} +INSTALL_STRIP_PROGRAM = $(install_sh) -c -s +INT32_MAX_LT_INTMAX_MAX = 1 +INT64_MAX_EQ_LONG_MAX = defined _LP64 +INTLLIBS = +INTL_MACOSX_LIBS = -Wl,-framework -Wl,CoreFoundation +LD = /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ld +LDFLAGS = +LIBICONV = -liconv +LIBICRT_LIBDEPS = +LIBICRT_LTLIBDEPS = +LIBINTL = +LIBOBJS = +LIBS = +LIBTOOL = /bin/sh $(top_builddir)/libtool +LIBUNISTRING_UNITYPES_H = unitypes.h +LIBUNISTRING_UNIWIDTH_H = uniwidth.h +LIMITS_H = limits.h +LIPO = lipo +LN = ln +LN_S = ln -s +LTLIBICONV = -liconv +LTLIBINTL = +LTLIBOBJS = +LT_SYS_LIBRARY_PATH = +MAKEINFO = ${SHELL} '/Users/yangzuhao/Downloads/libiconv-1.17/build-aux/missing' makeinfo +MANIFEST_TOOL = : +MKDIR_P = /opt/homebrew/bin/gmkdir -p +MSGFMT = /opt/homebrew/bin/msgfmt +MSGMERGE = /opt/homebrew/bin/msgmerge +MSGMERGE_FOR_MSGFMT_OPTION = --for-msgfmt +NEXT_AS_FIRST_DIRECTIVE_ERRNO_H = +NEXT_AS_FIRST_DIRECTIVE_FCNTL_H = +NEXT_AS_FIRST_DIRECTIVE_INTTYPES_H = +NEXT_AS_FIRST_DIRECTIVE_LIMITS_H = +NEXT_AS_FIRST_DIRECTIVE_SIGNAL_H = +NEXT_AS_FIRST_DIRECTIVE_STDDEF_H = +NEXT_AS_FIRST_DIRECTIVE_STDINT_H = +NEXT_AS_FIRST_DIRECTIVE_STDIO_H = +NEXT_AS_FIRST_DIRECTIVE_STDLIB_H = +NEXT_AS_FIRST_DIRECTIVE_STRING_H = +NEXT_AS_FIRST_DIRECTIVE_SYS_STAT_H = +NEXT_AS_FIRST_DIRECTIVE_SYS_TYPES_H = +NEXT_AS_FIRST_DIRECTIVE_TIME_H = +NEXT_AS_FIRST_DIRECTIVE_UNISTD_H = +NEXT_AS_FIRST_DIRECTIVE_WCHAR_H = +NEXT_ERRNO_H = +NEXT_FCNTL_H = +NEXT_INTTYPES_H = +NEXT_LIMITS_H = +NEXT_SIGNAL_H = +NEXT_STDDEF_H = +NEXT_STDINT_H = +NEXT_STDIO_H = +NEXT_STDLIB_H = +NEXT_STRING_H = +NEXT_SYS_STAT_H = +NEXT_SYS_TYPES_H = +NEXT_TIME_H = +NEXT_UNISTD_H = +NEXT_WCHAR_H = +NM = /usr/bin/nm -B +NMEDIT = nmedit +OBJDUMP = objdump +OBJEXT = o +OTOOL = otool +OTOOL64 = : +PACKAGE = libiconv +PACKAGE_BUGREPORT = +PACKAGE_NAME = libiconv +PACKAGE_STRING = libiconv 1.17 +PACKAGE_TARNAME = libiconv +PACKAGE_URL = +PACKAGE_VERSION = 1.17 +PATH_SEPARATOR = : +POSUB = +PRAGMA_COLUMNS = +PRAGMA_SYSTEM_HEADER = #pragma GCC system_header +PRIPTR_PREFIX = __PRIPTR_PREFIX +PTHREAD_H_DEFINES_STRUCT_TIMESPEC = 0 +PTRDIFF_T_SUFFIX = +RANLIB = ranlib +RC = +RELOCATABLE = no +RELOCATABLE_BUILD_DIR = $(top_builddir)/srclib +RELOCATABLE_CONFIG_H_DIR = $(top_builddir) +RELOCATABLE_LDFLAGS = +RELOCATABLE_LIBRARY_PATH = +RELOCATABLE_SRC_DIR = $(top_srcdir)/srclib +RELOCATABLE_STRIP = : +REPLACE_ACCESS = 0 +REPLACE_ALIGNED_ALLOC = 0 +REPLACE_BTOWC = 0 +REPLACE_CALLOC_FOR_CALLOC_GNU = 0 +REPLACE_CALLOC_FOR_CALLOC_POSIX = 0 +REPLACE_CANONICALIZE_FILE_NAME = 0 +REPLACE_CHOWN = 0 +REPLACE_CLOSE = 0 +REPLACE_COPY_FILE_RANGE = 0 +REPLACE_CREAT = 0 +REPLACE_CTIME = GNULIB_PORTCHECK +REPLACE_DPRINTF = 0 +REPLACE_DUP = 0 +REPLACE_DUP2 = 0 +REPLACE_EXECL = 0 +REPLACE_EXECLE = 0 +REPLACE_EXECLP = 0 +REPLACE_EXECV = 0 +REPLACE_EXECVE = 0 +REPLACE_EXECVP = 0 +REPLACE_EXECVPE = 0 +REPLACE_FACCESSAT = 0 +REPLACE_FCHMODAT = 0 +REPLACE_FCHOWNAT = 0 +REPLACE_FCLOSE = 0 +REPLACE_FCNTL = 0 +REPLACE_FDOPEN = 0 +REPLACE_FFLUSH = 0 +REPLACE_FFSLL = 0 +REPLACE_FOPEN = 0 +REPLACE_FOPEN_FOR_FOPEN_GNU = 0 +REPLACE_FPRINTF = 0 +REPLACE_FPURGE = 0 +REPLACE_FREE = 1 +REPLACE_FREOPEN = 0 +REPLACE_FSEEK = 0 +REPLACE_FSEEKO = 0 +REPLACE_FSTAT = 0 +REPLACE_FSTATAT = 0 +REPLACE_FTELL = 0 +REPLACE_FTELLO = 0 +REPLACE_FTRUNCATE = 0 +REPLACE_FUTIMENS = 0 +REPLACE_GETCWD = 0 +REPLACE_GETDELIM = 0 +REPLACE_GETDOMAINNAME = 0 +REPLACE_GETDTABLESIZE = 0 +REPLACE_GETGROUPS = 0 +REPLACE_GETLINE = 0 +REPLACE_GETLOGIN_R = 0 +REPLACE_GETPAGESIZE = 0 +REPLACE_GETPASS = 0 +REPLACE_GETPASS_FOR_GETPASS_GNU = 0 +REPLACE_GMTIME = 0 +REPLACE_INITSTATE = 0 +REPLACE_ISATTY = 0 +REPLACE_LCHOWN = 0 +REPLACE_LINK = 0 +REPLACE_LINKAT = 0 +REPLACE_LOCALTIME = 0 +REPLACE_LOCALTIME_R = GNULIB_PORTCHECK +REPLACE_LSEEK = 0 +REPLACE_LSTAT = 0 +REPLACE_MALLOC_FOR_MALLOC_GNU = 0 +REPLACE_MALLOC_FOR_MALLOC_POSIX = 0 +REPLACE_MBRLEN = 0 +REPLACE_MBRTOWC = 0 +REPLACE_MBSINIT = 0 +REPLACE_MBSNRTOWCS = 0 +REPLACE_MBSRTOWCS = 0 +REPLACE_MBSTATE_T = 0 +REPLACE_MBTOWC = 0 +REPLACE_MEMCHR = 0 +REPLACE_MEMMEM = 0 +REPLACE_MKDIR = 0 +REPLACE_MKFIFO = 0 +REPLACE_MKFIFOAT = 0 +REPLACE_MKNOD = 0 +REPLACE_MKNODAT = 0 +REPLACE_MKSTEMP = 0 +REPLACE_MKTIME = GNULIB_PORTCHECK +REPLACE_NANOSLEEP = GNULIB_PORTCHECK +REPLACE_NULL = 0 +REPLACE_OBSTACK_PRINTF = 0 +REPLACE_OPEN = 1 +REPLACE_OPENAT = 0 +REPLACE_PERROR = 0 +REPLACE_POPEN = 0 +REPLACE_POSIX_MEMALIGN = 0 +REPLACE_PREAD = 0 +REPLACE_PRINTF = 0 +REPLACE_PTHREAD_SIGMASK = 0 +REPLACE_PTSNAME = 0 +REPLACE_PTSNAME_R = 0 +REPLACE_PUTENV = 0 +REPLACE_PWRITE = 0 +REPLACE_QSORT_R = 0 +REPLACE_RAISE = 0 +REPLACE_RANDOM = 0 +REPLACE_RANDOM_R = 0 +REPLACE_READ = 0 +REPLACE_READLINK = 1 +REPLACE_READLINKAT = 0 +REPLACE_REALLOCARRAY = 0 +REPLACE_REALLOC_FOR_REALLOC_GNU = 0 +REPLACE_REALLOC_FOR_REALLOC_POSIX = 0 +REPLACE_REALPATH = 1 +REPLACE_REMOVE = 0 +REPLACE_RENAME = 0 +REPLACE_RENAMEAT = 0 +REPLACE_RMDIR = 0 +REPLACE_SETENV = 0 +REPLACE_SETSTATE = 0 +REPLACE_SLEEP = 0 +REPLACE_SNPRINTF = 0 +REPLACE_SPRINTF = 0 +REPLACE_STAT = 1 +REPLACE_STDIO_READ_FUNCS = 0 +REPLACE_STDIO_WRITE_FUNCS = 0 +REPLACE_STPNCPY = 0 +REPLACE_STRCASESTR = 0 +REPLACE_STRCHRNUL = 0 +REPLACE_STRDUP = 0 +REPLACE_STRERROR = 1 +REPLACE_STRERRORNAME_NP = 0 +REPLACE_STRERROR_R = 0 +REPLACE_STRFTIME = GNULIB_PORTCHECK +REPLACE_STRNCAT = 0 +REPLACE_STRNDUP = 0 +REPLACE_STRNLEN = 0 +REPLACE_STRSIGNAL = 0 +REPLACE_STRSTR = 0 +REPLACE_STRTOD = 0 +REPLACE_STRTOIMAX = 0 +REPLACE_STRTOK_R = 0 +REPLACE_STRTOL = 0 +REPLACE_STRTOLD = 0 +REPLACE_STRTOLL = 0 +REPLACE_STRTOUL = 0 +REPLACE_STRTOULL = 0 +REPLACE_STRTOUMAX = 0 +REPLACE_SYMLINK = 0 +REPLACE_SYMLINKAT = 0 +REPLACE_TIMEGM = GNULIB_PORTCHECK +REPLACE_TMPFILE = 0 +REPLACE_TRUNCATE = 0 +REPLACE_TTYNAME_R = 0 +REPLACE_TZSET = GNULIB_PORTCHECK +REPLACE_UNLINK = 0 +REPLACE_UNLINKAT = 0 +REPLACE_UNSETENV = 0 +REPLACE_USLEEP = 0 +REPLACE_UTIMENSAT = 0 +REPLACE_VASPRINTF = 0 +REPLACE_VDPRINTF = 0 +REPLACE_VFPRINTF = 0 +REPLACE_VPRINTF = 0 +REPLACE_VSNPRINTF = 0 +REPLACE_VSPRINTF = 0 +REPLACE_WCRTOMB = 0 +REPLACE_WCSFTIME = 0 +REPLACE_WCSNRTOMBS = 0 +REPLACE_WCSRTOMBS = 0 +REPLACE_WCSTOK = 0 +REPLACE_WCSWIDTH = 0 +REPLACE_WCTOB = 0 +REPLACE_WCTOMB = 0 +REPLACE_WCWIDTH = 0 +REPLACE_WRITE = 0 +SED = /usr/bin/sed +SET_MAKE = +SHELL = /bin/sh +SIG_ATOMIC_T_SUFFIX = +SIZE_T_SUFFIX = +SRCLIBOBJS = +STDALIGN_H = +STDBOOL_H = +STDDEF_H = +STDINT_H = stdint.h +STRIP = /usr/bin/strip +SYS_TIME_H_DEFINES_STRUCT_TIMESPEC = 0 +TIME_H_DEFINES_STRUCT_TIMESPEC = 1 +TIME_H_DEFINES_TIME_UTC = 1 +UINT32_MAX_LT_UINTMAX_MAX = 1 +UINT64_MAX_EQ_ULONG_MAX = defined _LP64 +UNDEFINE_STRTOK_R = 0 +UNISTD_H_DEFINES_STRUCT_TIMESPEC = 0 +UNISTD_H_HAVE_SYS_RANDOM_H = 0 +UNISTD_H_HAVE_WINSOCK2_H = 0 +UNISTD_H_HAVE_WINSOCK2_H_AND_USE_SOCKETS = 0 +USE_EXTRA_ENCODINGS = no +USE_MBSTATE_T = 1 +USE_NLS = no +VERSION = 1.17 +WCHAR_T_SUFFIX = +WINDOWS_64_BIT_OFF_T = 0 +WINDOWS_64_BIT_ST_SIZE = 0 +WINDOWS_STAT_INODES = 0 +WINDOWS_STAT_TIMESPEC = 0 +WINDRES = +WINT_T_SUFFIX = +WOE32 = no +WOE32DLL = no +XGETTEXT = /opt/homebrew/bin/xgettext +XGETTEXT_015 = /opt/homebrew/bin/xgettext +XGETTEXT_EXTRA_OPTIONS = --flag=error:3:c-format --flag=error_at_line:5:c-format +abs_builddir = /Users/yangzuhao/Downloads/libiconv-1.17/srclib +abs_srcdir = /Users/yangzuhao/Downloads/libiconv-1.17/srclib +abs_top_builddir = /Users/yangzuhao/Downloads/libiconv-1.17 +abs_top_srcdir = /Users/yangzuhao/Downloads/libiconv-1.17 +ac_ct_AR = ar +ac_ct_CC = gcc +ac_ct_DUMPBIN = +am__include = include +am__leading_dot = . +am__quote = +am__tar = $${TAR-tar} chof - "$$tardir" +am__untar = $${TAR-tar} xf - +bindir = ${exec_prefix}/bin +build = aarch64-apple-darwin22.4.0 +build_alias = +build_cpu = aarch64 +build_os = darwin22.4.0 +build_vendor = apple +builddir = . +datadir = ${datarootdir} +datarootdir = ${prefix}/share +docdir = ${datarootdir}/doc/${PACKAGE_TARNAME} +dvidir = ${docdir} +exec_prefix = ${prefix} +gl_LIBOBJDEPS = +gl_LIBOBJS = +gl_LTLIBOBJS = +gltests_LIBOBJDEPS = +gltests_LIBOBJS = +gltests_LTLIBOBJS = +gltests_WITNESS = IN_LIBICONV_GNULIB_TESTS +host = aarch64-apple-darwin22.4.0 +host_alias = +host_cpu = aarch64 +host_os = darwin22.4.0 +host_vendor = apple +htmldir = ${docdir} +includedir = ${prefix}/include +infodir = ${datarootdir}/info +install_sh = ${SHELL} /Users/yangzuhao/Downloads/libiconv-1.17/build-aux/install-sh +libdir = ${exec_prefix}/lib +libexecdir = ${exec_prefix}/libexec +localedir = ${datarootdir}/locale +localstatedir = ${prefix}/var +mandir = ${datarootdir}/man +mkdir_p = $(MKDIR_P) +oldincludedir = /usr/include +pdfdir = ${docdir} +prefix = /Users/yangzuhao/Downloads/libiconv-1.17/output +program_transform_name = s,x,x, +psdir = ${docdir} +runstatedir = ${localstatedir}/run +sbindir = ${exec_prefix}/sbin +sharedstatedir = ${prefix}/com +srcdir = . +subdirs = libcharset +sysconfdir = ${prefix}/etc +target_alias = +top_build_prefix = ../ +top_builddir = .. +top_srcdir = .. +AUTOMAKE_OPTIONS = 1.5 gnits subdir-objects no-dependencies + +# If your project uses "gettextize --intl" to put a source-code +# copy of libintl into the package, every Makefile.am needs +# -I$(top_builddir)/intl, so that can be found in this directory. +# Here's one way to do this: +#AM_CPPFLAGS += -I$(top_builddir)/intl +# This option has no effect when the user disables NLS (because then +# the intl directory contains no libintl.h file). This option is not +# enabled by default because the intl directory might not exist if +# your project does not use "gettext --intl", and some compilers +# complain about -I options applied to nonexistent directories. +EXTRA_DIST = alloca.in.h allocator.h areadlink.h basename-lgpl.h \ + careadlinkat.h cloexec.h eloop-threshold.h errno.in.h error.h \ + fcntl.in.h fd-hook.h filename.h stat-w32.c stat-w32.h \ + $(top_srcdir)/build-aux/config.rpath \ + $(top_srcdir)/build-aux/config.rpath intprops.h inttypes.in.h \ + cdefs.h libc-config.h limits.in.h malloc.c malloca.h \ + msvc-inval.h msvc-nothrow.h pathmax.h rawmemchr.valgrind \ + realloc.c relocatable.c relocatable.h \ + $(top_srcdir)/build-aux/config.libpath \ + $(top_srcdir)/build-aux/reloc-ldflags \ + $(top_srcdir)/build-aux/libtool-reloc allocator.c allocator.h \ + areadlink.c areadlink.h c-ctype.c c-ctype.h \ + canonicalize-lgpl.c careadlinkat.c careadlinkat.h free.c \ + malloc.c malloc/scratch_buffer.h \ + malloc/scratch_buffer_dupfree.c malloc/scratch_buffer_grow.c \ + malloc/scratch_buffer_grow_preserve.c \ + malloc/scratch_buffer_set_array_size.c malloca.c malloca.h \ + mempcpy.c progname.c progname.h progreloc.c rawmemchr.c \ + readlink.c realloc.c relocatable.c relocatable.h \ + relocwrapper.c scratch_buffer.h setenv.c stat.c \ + $(top_srcdir)/build-aux/install-reloc safe-read.h sys-limits.h \ + malloc/scratch_buffer.h scratch_buffer.h signal.in.h \ + stdio-write.c _Noreturn.h arg-nonnull.h c++defs.h \ + warn-on-use.h stat-w32.c stat-w32.h stat-time.h stdalign.in.h \ + stdbool.in.h stddef.in.h stdint.in.h stdio.in.h stdlib.in.h \ + streq.h strerror-override.h string.in.h sys_stat.in.h \ + sys_types.in.h time.in.h unistd.in.h unitypes.in.h \ + localcharset.h uniwidth.in.h unictype/bitmap.h uniwidth/cjk.h \ + uniwidth/width0.h uniwidth/width2.h unlocked-io.h verify.h \ + wchar.in.h xalloc-oversized.h xreadlink.h +BUILT_SOURCES = $(ALLOCA_H) $(ERRNO_H) fcntl.h inttypes.h $(LIMITS_H) \ + malloc/scratch_buffer.gl.h signal.h $(STDALIGN_H) $(STDBOOL_H) \ + $(STDDEF_H) $(STDINT_H) stdio.h stdlib.h string.h sys/stat.h \ + sys/types.h time.h unistd.h $(LIBUNISTRING_UNITYPES_H) \ + $(LIBUNISTRING_UNIWIDTH_H) wchar.h +MOSTLYCLEANFILES = core *.stackdump core *.stackdump alloca.h \ + alloca.h-t errno.h errno.h-t fcntl.h fcntl.h-t inttypes.h \ + inttypes.h-t limits.h limits.h-t malloc/scratch_buffer.gl.h \ + malloc/scratch_buffer.gl.h-t signal.h signal.h-t stdalign.h \ + stdalign.h-t stdbool.h stdbool.h-t stddef.h stddef.h-t \ + stdint.h stdint.h-t stdio.h stdio.h-t stdlib.h stdlib.h-t \ + string.h string.h-t sys/stat.h sys/stat.h-t sys/types.h \ + sys/types.h-t time.h time.h-t unistd.h unistd.h-t unitypes.h \ + unitypes.h-t uniwidth.h uniwidth.h-t wchar.h wchar.h-t +MOSTLYCLEANDIRS = sys +# No GNU Make output. +noinst_LIBRARIES = libicrt.a + +# Parametrization of the 'relocatable' module. +AM_CPPFLAGS = -DDEPENDS_ON_LIBICONV=1 -DDEPENDS_ON_LIBINTL=1 + +# The value of $(CFLAG_VISIBILITY) needs to be added to the CFLAGS for the +# compilation of all sources that make up the library. This line here does it +# only for the gnulib part of it. The developer is responsible for adding +# $(CFLAG_VISIBILITY) to the Makefile.ams of the other portions of the library. +AM_CFLAGS = $(CFLAG_VISIBILITY) +libicrt_a_SOURCES = allocator.c areadlink.c basename-lgpl.c \ + binary-io.h binary-io.c $(am__append_1) careadlinkat.c \ + cloexec.c $(am__append_2) $(am__append_3) $(am__append_4) \ + $(am__append_5) fd-hook.c $(am__append_6) $(am__append_7) \ + $(am__append_8) getprogname.h getprogname.c gettext.h idx.h \ + malloca.c $(am__append_9) minmax.h $(am__append_10) \ + $(am__append_11) $(am__append_12) progname.h progname.c \ + $(am__append_13) $(am__append_14) $(am__append_15) \ + $(am__append_16) $(am__append_17) safe-read.c \ + malloc/scratch_buffer_dupfree.c malloc/scratch_buffer_grow.c \ + malloc/scratch_buffer_grow_preserve.c \ + malloc/scratch_buffer_set_array_size.c $(am__append_18) \ + $(am__append_19) stat-time.c $(am__append_20) $(am__append_21) \ + $(am__append_22) $(am__append_23) unistd.c $(am__append_24) \ + xalloc.h xmalloc.c xstrdup.c xreadlink.c +libicrt_a_CFLAGS = $(AM_CFLAGS) $(GL_CFLAG_GNULIB_WARNINGS) +libicrt_a_LIBADD = $(gl_LIBOBJS) +libicrt_a_DEPENDENCIES = $(gl_LIBOBJS) +EXTRA_libicrt_a_SOURCES = stat-w32.c malloc.c realloc.c relocatable.c \ + stdio-write.c stat-w32.c + +# Use this preprocessor expression to decide whether #include_next works. +# Do not rely on a 'configure'-time test for this, since the expression +# might appear in an installed header, which is used by some other compiler. +HAVE_INCLUDE_NEXT = (__GNUC__ || __clang__ || 60000000 <= __DECC_VER) + +# In 'sed', replace the pattern space with a "DO NOT EDIT" comment. +SED_HEADER_NOEDIT = s,.*,/* DO NOT EDIT! GENERATED AUTOMATICALLY! */, + +# '$(SED_HEADER_STDOUT) -e "..."' runs 'sed' but first outputs "DO NOT EDIT". +SED_HEADER_STDOUT = sed -e 1h -e '1$(SED_HEADER_NOEDIT)' -e 1G + +# '$(SED_HEADER_TO_AT_t) FILE' copies FILE to $@-t, prepending a leading +# "DO_NOT_EDIT". Although this could be done more simply via: +# SED_HEADER_TO_AT_t = $(SED_HEADER_STDOUT) > $@-t +# the -n and 'w' avoid a fork+exec, at least when GNU Make is used. +SED_HEADER_TO_AT_t = $(SED_HEADER_STDOUT) -n -e 'w $@-t' + +# Use $(gl_V_at) instead of $(AM_V_GEN) or $(AM_V_at) on a line that +gl_V_at = $(AM_V_GEN) + +# Because this Makefile snippet defines a variable used by other +# gnulib Makefile snippets, it must be present in all makefiles that +# need it. This is ensured by the applicability 'all' defined above. +_NORETURN_H = $(srcdir)/_Noreturn.h + +# Because this Makefile snippet defines a variable used by other +# gnulib Makefile snippets, it must be present in all makefiles that +# need it. This is ensured by the applicability 'all' defined above. +ARG_NONNULL_H = $(srcdir)/arg-nonnull.h + +# Because this Makefile snippet defines a variable used by other +# gnulib Makefile snippets, it must be present in all makefiles that +# need it. This is ensured by the applicability 'all' defined above. +CXXDEFS_H = $(srcdir)/c++defs.h + +# Because this Makefile snippet defines a variable used by other +# gnulib Makefile snippets, it must be present in all makefiles that +# need it. This is ensured by the applicability 'all' defined above. +WARN_ON_USE_H = $(srcdir)/warn-on-use.h +all: $(BUILT_SOURCES) + $(MAKE) $(AM_MAKEFLAGS) all-am + +.SUFFIXES: +.SUFFIXES: .c .lo .o .obj +$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(srcdir)/Makefile.gnulib $(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) --gnits srclib/Makefile'; \ + $(am__cd) $(top_srcdir) && \ + $(AUTOMAKE) --gnits srclib/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__maybe_remake_depfiles)'; \ + cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles);; \ + esac; +$(srcdir)/Makefile.gnulib $(am__empty): + +$(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): + +clean-noinstLIBRARIES: + -test -z "$(noinst_LIBRARIES)" || rm -f $(noinst_LIBRARIES) +malloc/$(am__dirstamp): + @$(MKDIR_P) malloc + @: > malloc/$(am__dirstamp) +malloc/libicrt_a-scratch_buffer_dupfree.$(OBJEXT): \ + malloc/$(am__dirstamp) +malloc/libicrt_a-scratch_buffer_grow.$(OBJEXT): \ + malloc/$(am__dirstamp) +malloc/libicrt_a-scratch_buffer_grow_preserve.$(OBJEXT): \ + malloc/$(am__dirstamp) +malloc/libicrt_a-scratch_buffer_set_array_size.$(OBJEXT): \ + malloc/$(am__dirstamp) +uniwidth/$(am__dirstamp): + @$(MKDIR_P) uniwidth + @: > uniwidth/$(am__dirstamp) +uniwidth/libicrt_a-width.$(OBJEXT): uniwidth/$(am__dirstamp) + +libicrt.a: $(libicrt_a_OBJECTS) $(libicrt_a_DEPENDENCIES) $(EXTRA_libicrt_a_DEPENDENCIES) + $(AM_V_at)-rm -f libicrt.a + $(AM_V_AR)$(libicrt_a_AR) libicrt.a $(libicrt_a_OBJECTS) $(libicrt_a_LIBADD) + $(AM_V_at)$(RANLIB) libicrt.a + +mostlyclean-compile: + -rm -f *.$(OBJEXT) + -rm -f malloc/*.$(OBJEXT) + -rm -f uniwidth/*.$(OBJEXT) + +distclean-compile: + -rm -f *.tab.c + +.c.o: + $(AM_V_CC)$(COMPILE) -c -o $@ $< + +.c.obj: + $(AM_V_CC)$(COMPILE) -c -o $@ `$(CYGPATH_W) '$<'` + +.c.lo: + $(AM_V_CC)$(LTCOMPILE) -c -o $@ $< + +libicrt_a-allocator.o: allocator.c + $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libicrt_a_CFLAGS) $(CFLAGS) -c -o libicrt_a-allocator.o `test -f 'allocator.c' || echo '$(srcdir)/'`allocator.c + +libicrt_a-allocator.obj: allocator.c + $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libicrt_a_CFLAGS) $(CFLAGS) -c -o libicrt_a-allocator.obj `if test -f 'allocator.c'; then $(CYGPATH_W) 'allocator.c'; else $(CYGPATH_W) '$(srcdir)/allocator.c'; fi` + +libicrt_a-areadlink.o: areadlink.c + $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libicrt_a_CFLAGS) $(CFLAGS) -c -o libicrt_a-areadlink.o `test -f 'areadlink.c' || echo '$(srcdir)/'`areadlink.c + +libicrt_a-areadlink.obj: areadlink.c + $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libicrt_a_CFLAGS) $(CFLAGS) -c -o libicrt_a-areadlink.obj `if test -f 'areadlink.c'; then $(CYGPATH_W) 'areadlink.c'; else $(CYGPATH_W) '$(srcdir)/areadlink.c'; fi` + +libicrt_a-basename-lgpl.o: basename-lgpl.c + $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libicrt_a_CFLAGS) $(CFLAGS) -c -o libicrt_a-basename-lgpl.o `test -f 'basename-lgpl.c' || echo '$(srcdir)/'`basename-lgpl.c + +libicrt_a-basename-lgpl.obj: basename-lgpl.c + $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libicrt_a_CFLAGS) $(CFLAGS) -c -o libicrt_a-basename-lgpl.obj `if test -f 'basename-lgpl.c'; then $(CYGPATH_W) 'basename-lgpl.c'; else $(CYGPATH_W) '$(srcdir)/basename-lgpl.c'; fi` + +libicrt_a-binary-io.o: binary-io.c + $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libicrt_a_CFLAGS) $(CFLAGS) -c -o libicrt_a-binary-io.o `test -f 'binary-io.c' || echo '$(srcdir)/'`binary-io.c + +libicrt_a-binary-io.obj: binary-io.c + $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libicrt_a_CFLAGS) $(CFLAGS) -c -o libicrt_a-binary-io.obj `if test -f 'binary-io.c'; then $(CYGPATH_W) 'binary-io.c'; else $(CYGPATH_W) '$(srcdir)/binary-io.c'; fi` + +libicrt_a-canonicalize-lgpl.o: canonicalize-lgpl.c + $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libicrt_a_CFLAGS) $(CFLAGS) -c -o libicrt_a-canonicalize-lgpl.o `test -f 'canonicalize-lgpl.c' || echo '$(srcdir)/'`canonicalize-lgpl.c + +libicrt_a-canonicalize-lgpl.obj: canonicalize-lgpl.c + $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libicrt_a_CFLAGS) $(CFLAGS) -c -o libicrt_a-canonicalize-lgpl.obj `if test -f 'canonicalize-lgpl.c'; then $(CYGPATH_W) 'canonicalize-lgpl.c'; else $(CYGPATH_W) '$(srcdir)/canonicalize-lgpl.c'; fi` + +libicrt_a-careadlinkat.o: careadlinkat.c + $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libicrt_a_CFLAGS) $(CFLAGS) -c -o libicrt_a-careadlinkat.o `test -f 'careadlinkat.c' || echo '$(srcdir)/'`careadlinkat.c + +libicrt_a-careadlinkat.obj: careadlinkat.c + $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libicrt_a_CFLAGS) $(CFLAGS) -c -o libicrt_a-careadlinkat.obj `if test -f 'careadlinkat.c'; then $(CYGPATH_W) 'careadlinkat.c'; else $(CYGPATH_W) '$(srcdir)/careadlinkat.c'; fi` + +libicrt_a-cloexec.o: cloexec.c + $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libicrt_a_CFLAGS) $(CFLAGS) -c -o libicrt_a-cloexec.o `test -f 'cloexec.c' || echo '$(srcdir)/'`cloexec.c + +libicrt_a-cloexec.obj: cloexec.c + $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libicrt_a_CFLAGS) $(CFLAGS) -c -o libicrt_a-cloexec.obj `if test -f 'cloexec.c'; then $(CYGPATH_W) 'cloexec.c'; else $(CYGPATH_W) '$(srcdir)/cloexec.c'; fi` + +libicrt_a-close.o: close.c + $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libicrt_a_CFLAGS) $(CFLAGS) -c -o libicrt_a-close.o `test -f 'close.c' || echo '$(srcdir)/'`close.c + +libicrt_a-close.obj: close.c + $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libicrt_a_CFLAGS) $(CFLAGS) -c -o libicrt_a-close.obj `if test -f 'close.c'; then $(CYGPATH_W) 'close.c'; else $(CYGPATH_W) '$(srcdir)/close.c'; fi` + +libicrt_a-dup2.o: dup2.c + $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libicrt_a_CFLAGS) $(CFLAGS) -c -o libicrt_a-dup2.o `test -f 'dup2.c' || echo '$(srcdir)/'`dup2.c + +libicrt_a-dup2.obj: dup2.c + $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libicrt_a_CFLAGS) $(CFLAGS) -c -o libicrt_a-dup2.obj `if test -f 'dup2.c'; then $(CYGPATH_W) 'dup2.c'; else $(CYGPATH_W) '$(srcdir)/dup2.c'; fi` + +libicrt_a-error.o: error.c + $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libicrt_a_CFLAGS) $(CFLAGS) -c -o libicrt_a-error.o `test -f 'error.c' || echo '$(srcdir)/'`error.c + +libicrt_a-error.obj: error.c + $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libicrt_a_CFLAGS) $(CFLAGS) -c -o libicrt_a-error.obj `if test -f 'error.c'; then $(CYGPATH_W) 'error.c'; else $(CYGPATH_W) '$(srcdir)/error.c'; fi` + +libicrt_a-fcntl.o: fcntl.c + $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libicrt_a_CFLAGS) $(CFLAGS) -c -o libicrt_a-fcntl.o `test -f 'fcntl.c' || echo '$(srcdir)/'`fcntl.c + +libicrt_a-fcntl.obj: fcntl.c + $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libicrt_a_CFLAGS) $(CFLAGS) -c -o libicrt_a-fcntl.obj `if test -f 'fcntl.c'; then $(CYGPATH_W) 'fcntl.c'; else $(CYGPATH_W) '$(srcdir)/fcntl.c'; fi` + +libicrt_a-fd-hook.o: fd-hook.c + $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libicrt_a_CFLAGS) $(CFLAGS) -c -o libicrt_a-fd-hook.o `test -f 'fd-hook.c' || echo '$(srcdir)/'`fd-hook.c + +libicrt_a-fd-hook.obj: fd-hook.c + $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libicrt_a_CFLAGS) $(CFLAGS) -c -o libicrt_a-fd-hook.obj `if test -f 'fd-hook.c'; then $(CYGPATH_W) 'fd-hook.c'; else $(CYGPATH_W) '$(srcdir)/fd-hook.c'; fi` + +libicrt_a-free.o: free.c + $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libicrt_a_CFLAGS) $(CFLAGS) -c -o libicrt_a-free.o `test -f 'free.c' || echo '$(srcdir)/'`free.c + +libicrt_a-free.obj: free.c + $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libicrt_a_CFLAGS) $(CFLAGS) -c -o libicrt_a-free.obj `if test -f 'free.c'; then $(CYGPATH_W) 'free.c'; else $(CYGPATH_W) '$(srcdir)/free.c'; fi` + +libicrt_a-fstat.o: fstat.c + $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libicrt_a_CFLAGS) $(CFLAGS) -c -o libicrt_a-fstat.o `test -f 'fstat.c' || echo '$(srcdir)/'`fstat.c + +libicrt_a-fstat.obj: fstat.c + $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libicrt_a_CFLAGS) $(CFLAGS) -c -o libicrt_a-fstat.obj `if test -f 'fstat.c'; then $(CYGPATH_W) 'fstat.c'; else $(CYGPATH_W) '$(srcdir)/fstat.c'; fi` + +libicrt_a-getdtablesize.o: getdtablesize.c + $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libicrt_a_CFLAGS) $(CFLAGS) -c -o libicrt_a-getdtablesize.o `test -f 'getdtablesize.c' || echo '$(srcdir)/'`getdtablesize.c + +libicrt_a-getdtablesize.obj: getdtablesize.c + $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libicrt_a_CFLAGS) $(CFLAGS) -c -o libicrt_a-getdtablesize.obj `if test -f 'getdtablesize.c'; then $(CYGPATH_W) 'getdtablesize.c'; else $(CYGPATH_W) '$(srcdir)/getdtablesize.c'; fi` + +libicrt_a-getprogname.o: getprogname.c + $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libicrt_a_CFLAGS) $(CFLAGS) -c -o libicrt_a-getprogname.o `test -f 'getprogname.c' || echo '$(srcdir)/'`getprogname.c + +libicrt_a-getprogname.obj: getprogname.c + $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libicrt_a_CFLAGS) $(CFLAGS) -c -o libicrt_a-getprogname.obj `if test -f 'getprogname.c'; then $(CYGPATH_W) 'getprogname.c'; else $(CYGPATH_W) '$(srcdir)/getprogname.c'; fi` + +libicrt_a-malloca.o: malloca.c + $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libicrt_a_CFLAGS) $(CFLAGS) -c -o libicrt_a-malloca.o `test -f 'malloca.c' || echo '$(srcdir)/'`malloca.c + +libicrt_a-malloca.obj: malloca.c + $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libicrt_a_CFLAGS) $(CFLAGS) -c -o libicrt_a-malloca.obj `if test -f 'malloca.c'; then $(CYGPATH_W) 'malloca.c'; else $(CYGPATH_W) '$(srcdir)/malloca.c'; fi` + +libicrt_a-mempcpy.o: mempcpy.c + $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libicrt_a_CFLAGS) $(CFLAGS) -c -o libicrt_a-mempcpy.o `test -f 'mempcpy.c' || echo '$(srcdir)/'`mempcpy.c + +libicrt_a-mempcpy.obj: mempcpy.c + $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libicrt_a_CFLAGS) $(CFLAGS) -c -o libicrt_a-mempcpy.obj `if test -f 'mempcpy.c'; then $(CYGPATH_W) 'mempcpy.c'; else $(CYGPATH_W) '$(srcdir)/mempcpy.c'; fi` + +libicrt_a-msvc-inval.o: msvc-inval.c + $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libicrt_a_CFLAGS) $(CFLAGS) -c -o libicrt_a-msvc-inval.o `test -f 'msvc-inval.c' || echo '$(srcdir)/'`msvc-inval.c + +libicrt_a-msvc-inval.obj: msvc-inval.c + $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libicrt_a_CFLAGS) $(CFLAGS) -c -o libicrt_a-msvc-inval.obj `if test -f 'msvc-inval.c'; then $(CYGPATH_W) 'msvc-inval.c'; else $(CYGPATH_W) '$(srcdir)/msvc-inval.c'; fi` + +libicrt_a-msvc-nothrow.o: msvc-nothrow.c + $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libicrt_a_CFLAGS) $(CFLAGS) -c -o libicrt_a-msvc-nothrow.o `test -f 'msvc-nothrow.c' || echo '$(srcdir)/'`msvc-nothrow.c + +libicrt_a-msvc-nothrow.obj: msvc-nothrow.c + $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libicrt_a_CFLAGS) $(CFLAGS) -c -o libicrt_a-msvc-nothrow.obj `if test -f 'msvc-nothrow.c'; then $(CYGPATH_W) 'msvc-nothrow.c'; else $(CYGPATH_W) '$(srcdir)/msvc-nothrow.c'; fi` + +libicrt_a-open.o: open.c + $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libicrt_a_CFLAGS) $(CFLAGS) -c -o libicrt_a-open.o `test -f 'open.c' || echo '$(srcdir)/'`open.c + +libicrt_a-open.obj: open.c + $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libicrt_a_CFLAGS) $(CFLAGS) -c -o libicrt_a-open.obj `if test -f 'open.c'; then $(CYGPATH_W) 'open.c'; else $(CYGPATH_W) '$(srcdir)/open.c'; fi` + +libicrt_a-progname.o: progname.c + $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libicrt_a_CFLAGS) $(CFLAGS) -c -o libicrt_a-progname.o `test -f 'progname.c' || echo '$(srcdir)/'`progname.c + +libicrt_a-progname.obj: progname.c + $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libicrt_a_CFLAGS) $(CFLAGS) -c -o libicrt_a-progname.obj `if test -f 'progname.c'; then $(CYGPATH_W) 'progname.c'; else $(CYGPATH_W) '$(srcdir)/progname.c'; fi` + +libicrt_a-raise.o: raise.c + $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libicrt_a_CFLAGS) $(CFLAGS) -c -o libicrt_a-raise.o `test -f 'raise.c' || echo '$(srcdir)/'`raise.c + +libicrt_a-raise.obj: raise.c + $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libicrt_a_CFLAGS) $(CFLAGS) -c -o libicrt_a-raise.obj `if test -f 'raise.c'; then $(CYGPATH_W) 'raise.c'; else $(CYGPATH_W) '$(srcdir)/raise.c'; fi` + +libicrt_a-rawmemchr.o: rawmemchr.c + $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libicrt_a_CFLAGS) $(CFLAGS) -c -o libicrt_a-rawmemchr.o `test -f 'rawmemchr.c' || echo '$(srcdir)/'`rawmemchr.c + +libicrt_a-rawmemchr.obj: rawmemchr.c + $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libicrt_a_CFLAGS) $(CFLAGS) -c -o libicrt_a-rawmemchr.obj `if test -f 'rawmemchr.c'; then $(CYGPATH_W) 'rawmemchr.c'; else $(CYGPATH_W) '$(srcdir)/rawmemchr.c'; fi` + +libicrt_a-read.o: read.c + $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libicrt_a_CFLAGS) $(CFLAGS) -c -o libicrt_a-read.o `test -f 'read.c' || echo '$(srcdir)/'`read.c + +libicrt_a-read.obj: read.c + $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libicrt_a_CFLAGS) $(CFLAGS) -c -o libicrt_a-read.obj `if test -f 'read.c'; then $(CYGPATH_W) 'read.c'; else $(CYGPATH_W) '$(srcdir)/read.c'; fi` + +libicrt_a-readlink.o: readlink.c + $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libicrt_a_CFLAGS) $(CFLAGS) -c -o libicrt_a-readlink.o `test -f 'readlink.c' || echo '$(srcdir)/'`readlink.c + +libicrt_a-readlink.obj: readlink.c + $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libicrt_a_CFLAGS) $(CFLAGS) -c -o libicrt_a-readlink.obj `if test -f 'readlink.c'; then $(CYGPATH_W) 'readlink.c'; else $(CYGPATH_W) '$(srcdir)/readlink.c'; fi` + +libicrt_a-progreloc.o: progreloc.c + $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libicrt_a_CFLAGS) $(CFLAGS) -c -o libicrt_a-progreloc.o `test -f 'progreloc.c' || echo '$(srcdir)/'`progreloc.c + +libicrt_a-progreloc.obj: progreloc.c + $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libicrt_a_CFLAGS) $(CFLAGS) -c -o libicrt_a-progreloc.obj `if test -f 'progreloc.c'; then $(CYGPATH_W) 'progreloc.c'; else $(CYGPATH_W) '$(srcdir)/progreloc.c'; fi` + +libicrt_a-safe-read.o: safe-read.c + $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libicrt_a_CFLAGS) $(CFLAGS) -c -o libicrt_a-safe-read.o `test -f 'safe-read.c' || echo '$(srcdir)/'`safe-read.c + +libicrt_a-safe-read.obj: safe-read.c + $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libicrt_a_CFLAGS) $(CFLAGS) -c -o libicrt_a-safe-read.obj `if test -f 'safe-read.c'; then $(CYGPATH_W) 'safe-read.c'; else $(CYGPATH_W) '$(srcdir)/safe-read.c'; fi` + +malloc/libicrt_a-scratch_buffer_dupfree.o: malloc/scratch_buffer_dupfree.c + $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libicrt_a_CFLAGS) $(CFLAGS) -c -o malloc/libicrt_a-scratch_buffer_dupfree.o `test -f 'malloc/scratch_buffer_dupfree.c' || echo '$(srcdir)/'`malloc/scratch_buffer_dupfree.c + +malloc/libicrt_a-scratch_buffer_dupfree.obj: malloc/scratch_buffer_dupfree.c + $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libicrt_a_CFLAGS) $(CFLAGS) -c -o malloc/libicrt_a-scratch_buffer_dupfree.obj `if test -f 'malloc/scratch_buffer_dupfree.c'; then $(CYGPATH_W) 'malloc/scratch_buffer_dupfree.c'; else $(CYGPATH_W) '$(srcdir)/malloc/scratch_buffer_dupfree.c'; fi` + +malloc/libicrt_a-scratch_buffer_grow.o: malloc/scratch_buffer_grow.c + $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libicrt_a_CFLAGS) $(CFLAGS) -c -o malloc/libicrt_a-scratch_buffer_grow.o `test -f 'malloc/scratch_buffer_grow.c' || echo '$(srcdir)/'`malloc/scratch_buffer_grow.c + +malloc/libicrt_a-scratch_buffer_grow.obj: malloc/scratch_buffer_grow.c + $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libicrt_a_CFLAGS) $(CFLAGS) -c -o malloc/libicrt_a-scratch_buffer_grow.obj `if test -f 'malloc/scratch_buffer_grow.c'; then $(CYGPATH_W) 'malloc/scratch_buffer_grow.c'; else $(CYGPATH_W) '$(srcdir)/malloc/scratch_buffer_grow.c'; fi` + +malloc/libicrt_a-scratch_buffer_grow_preserve.o: malloc/scratch_buffer_grow_preserve.c + $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libicrt_a_CFLAGS) $(CFLAGS) -c -o malloc/libicrt_a-scratch_buffer_grow_preserve.o `test -f 'malloc/scratch_buffer_grow_preserve.c' || echo '$(srcdir)/'`malloc/scratch_buffer_grow_preserve.c + +malloc/libicrt_a-scratch_buffer_grow_preserve.obj: malloc/scratch_buffer_grow_preserve.c + $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libicrt_a_CFLAGS) $(CFLAGS) -c -o malloc/libicrt_a-scratch_buffer_grow_preserve.obj `if test -f 'malloc/scratch_buffer_grow_preserve.c'; then $(CYGPATH_W) 'malloc/scratch_buffer_grow_preserve.c'; else $(CYGPATH_W) '$(srcdir)/malloc/scratch_buffer_grow_preserve.c'; fi` + +malloc/libicrt_a-scratch_buffer_set_array_size.o: malloc/scratch_buffer_set_array_size.c + $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libicrt_a_CFLAGS) $(CFLAGS) -c -o malloc/libicrt_a-scratch_buffer_set_array_size.o `test -f 'malloc/scratch_buffer_set_array_size.c' || echo '$(srcdir)/'`malloc/scratch_buffer_set_array_size.c + +malloc/libicrt_a-scratch_buffer_set_array_size.obj: malloc/scratch_buffer_set_array_size.c + $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libicrt_a_CFLAGS) $(CFLAGS) -c -o malloc/libicrt_a-scratch_buffer_set_array_size.obj `if test -f 'malloc/scratch_buffer_set_array_size.c'; then $(CYGPATH_W) 'malloc/scratch_buffer_set_array_size.c'; else $(CYGPATH_W) '$(srcdir)/malloc/scratch_buffer_set_array_size.c'; fi` + +libicrt_a-sigprocmask.o: sigprocmask.c + $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libicrt_a_CFLAGS) $(CFLAGS) -c -o libicrt_a-sigprocmask.o `test -f 'sigprocmask.c' || echo '$(srcdir)/'`sigprocmask.c + +libicrt_a-sigprocmask.obj: sigprocmask.c + $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libicrt_a_CFLAGS) $(CFLAGS) -c -o libicrt_a-sigprocmask.obj `if test -f 'sigprocmask.c'; then $(CYGPATH_W) 'sigprocmask.c'; else $(CYGPATH_W) '$(srcdir)/sigprocmask.c'; fi` + +libicrt_a-stat.o: stat.c + $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libicrt_a_CFLAGS) $(CFLAGS) -c -o libicrt_a-stat.o `test -f 'stat.c' || echo '$(srcdir)/'`stat.c + +libicrt_a-stat.obj: stat.c + $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libicrt_a_CFLAGS) $(CFLAGS) -c -o libicrt_a-stat.obj `if test -f 'stat.c'; then $(CYGPATH_W) 'stat.c'; else $(CYGPATH_W) '$(srcdir)/stat.c'; fi` + +libicrt_a-stat-time.o: stat-time.c + $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libicrt_a_CFLAGS) $(CFLAGS) -c -o libicrt_a-stat-time.o `test -f 'stat-time.c' || echo '$(srcdir)/'`stat-time.c + +libicrt_a-stat-time.obj: stat-time.c + $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libicrt_a_CFLAGS) $(CFLAGS) -c -o libicrt_a-stat-time.obj `if test -f 'stat-time.c'; then $(CYGPATH_W) 'stat-time.c'; else $(CYGPATH_W) '$(srcdir)/stat-time.c'; fi` + +libicrt_a-stdio-read.o: stdio-read.c + $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libicrt_a_CFLAGS) $(CFLAGS) -c -o libicrt_a-stdio-read.o `test -f 'stdio-read.c' || echo '$(srcdir)/'`stdio-read.c + +libicrt_a-stdio-read.obj: stdio-read.c + $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libicrt_a_CFLAGS) $(CFLAGS) -c -o libicrt_a-stdio-read.obj `if test -f 'stdio-read.c'; then $(CYGPATH_W) 'stdio-read.c'; else $(CYGPATH_W) '$(srcdir)/stdio-read.c'; fi` + +libicrt_a-stdio-write.o: stdio-write.c + $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libicrt_a_CFLAGS) $(CFLAGS) -c -o libicrt_a-stdio-write.o `test -f 'stdio-write.c' || echo '$(srcdir)/'`stdio-write.c + +libicrt_a-stdio-write.obj: stdio-write.c + $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libicrt_a_CFLAGS) $(CFLAGS) -c -o libicrt_a-stdio-write.obj `if test -f 'stdio-write.c'; then $(CYGPATH_W) 'stdio-write.c'; else $(CYGPATH_W) '$(srcdir)/stdio-write.c'; fi` + +libicrt_a-strerror.o: strerror.c + $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libicrt_a_CFLAGS) $(CFLAGS) -c -o libicrt_a-strerror.o `test -f 'strerror.c' || echo '$(srcdir)/'`strerror.c + +libicrt_a-strerror.obj: strerror.c + $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libicrt_a_CFLAGS) $(CFLAGS) -c -o libicrt_a-strerror.obj `if test -f 'strerror.c'; then $(CYGPATH_W) 'strerror.c'; else $(CYGPATH_W) '$(srcdir)/strerror.c'; fi` + +libicrt_a-strerror-override.o: strerror-override.c + $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libicrt_a_CFLAGS) $(CFLAGS) -c -o libicrt_a-strerror-override.o `test -f 'strerror-override.c' || echo '$(srcdir)/'`strerror-override.c + +libicrt_a-strerror-override.obj: strerror-override.c + $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libicrt_a_CFLAGS) $(CFLAGS) -c -o libicrt_a-strerror-override.obj `if test -f 'strerror-override.c'; then $(CYGPATH_W) 'strerror-override.c'; else $(CYGPATH_W) '$(srcdir)/strerror-override.c'; fi` + +libicrt_a-unistd.o: unistd.c + $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libicrt_a_CFLAGS) $(CFLAGS) -c -o libicrt_a-unistd.o `test -f 'unistd.c' || echo '$(srcdir)/'`unistd.c + +libicrt_a-unistd.obj: unistd.c + $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libicrt_a_CFLAGS) $(CFLAGS) -c -o libicrt_a-unistd.obj `if test -f 'unistd.c'; then $(CYGPATH_W) 'unistd.c'; else $(CYGPATH_W) '$(srcdir)/unistd.c'; fi` + +uniwidth/libicrt_a-width.o: uniwidth/width.c + $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libicrt_a_CFLAGS) $(CFLAGS) -c -o uniwidth/libicrt_a-width.o `test -f 'uniwidth/width.c' || echo '$(srcdir)/'`uniwidth/width.c + +uniwidth/libicrt_a-width.obj: uniwidth/width.c + $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libicrt_a_CFLAGS) $(CFLAGS) -c -o uniwidth/libicrt_a-width.obj `if test -f 'uniwidth/width.c'; then $(CYGPATH_W) 'uniwidth/width.c'; else $(CYGPATH_W) '$(srcdir)/uniwidth/width.c'; fi` + +libicrt_a-xmalloc.o: xmalloc.c + $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libicrt_a_CFLAGS) $(CFLAGS) -c -o libicrt_a-xmalloc.o `test -f 'xmalloc.c' || echo '$(srcdir)/'`xmalloc.c + +libicrt_a-xmalloc.obj: xmalloc.c + $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libicrt_a_CFLAGS) $(CFLAGS) -c -o libicrt_a-xmalloc.obj `if test -f 'xmalloc.c'; then $(CYGPATH_W) 'xmalloc.c'; else $(CYGPATH_W) '$(srcdir)/xmalloc.c'; fi` + +libicrt_a-xstrdup.o: xstrdup.c + $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libicrt_a_CFLAGS) $(CFLAGS) -c -o libicrt_a-xstrdup.o `test -f 'xstrdup.c' || echo '$(srcdir)/'`xstrdup.c + +libicrt_a-xstrdup.obj: xstrdup.c + $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libicrt_a_CFLAGS) $(CFLAGS) -c -o libicrt_a-xstrdup.obj `if test -f 'xstrdup.c'; then $(CYGPATH_W) 'xstrdup.c'; else $(CYGPATH_W) '$(srcdir)/xstrdup.c'; fi` + +libicrt_a-xreadlink.o: xreadlink.c + $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libicrt_a_CFLAGS) $(CFLAGS) -c -o libicrt_a-xreadlink.o `test -f 'xreadlink.c' || echo '$(srcdir)/'`xreadlink.c + +libicrt_a-xreadlink.obj: xreadlink.c + $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libicrt_a_CFLAGS) $(CFLAGS) -c -o libicrt_a-xreadlink.obj `if test -f 'xreadlink.c'; then $(CYGPATH_W) 'xreadlink.c'; else $(CYGPATH_W) '$(srcdir)/xreadlink.c'; fi` + +libicrt_a-stat-w32.o: stat-w32.c + $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libicrt_a_CFLAGS) $(CFLAGS) -c -o libicrt_a-stat-w32.o `test -f 'stat-w32.c' || echo '$(srcdir)/'`stat-w32.c + +libicrt_a-stat-w32.obj: stat-w32.c + $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libicrt_a_CFLAGS) $(CFLAGS) -c -o libicrt_a-stat-w32.obj `if test -f 'stat-w32.c'; then $(CYGPATH_W) 'stat-w32.c'; else $(CYGPATH_W) '$(srcdir)/stat-w32.c'; fi` + +libicrt_a-malloc.o: malloc.c + $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libicrt_a_CFLAGS) $(CFLAGS) -c -o libicrt_a-malloc.o `test -f 'malloc.c' || echo '$(srcdir)/'`malloc.c + +libicrt_a-malloc.obj: malloc.c + $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libicrt_a_CFLAGS) $(CFLAGS) -c -o libicrt_a-malloc.obj `if test -f 'malloc.c'; then $(CYGPATH_W) 'malloc.c'; else $(CYGPATH_W) '$(srcdir)/malloc.c'; fi` + +libicrt_a-realloc.o: realloc.c + $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libicrt_a_CFLAGS) $(CFLAGS) -c -o libicrt_a-realloc.o `test -f 'realloc.c' || echo '$(srcdir)/'`realloc.c + +libicrt_a-realloc.obj: realloc.c + $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libicrt_a_CFLAGS) $(CFLAGS) -c -o libicrt_a-realloc.obj `if test -f 'realloc.c'; then $(CYGPATH_W) 'realloc.c'; else $(CYGPATH_W) '$(srcdir)/realloc.c'; fi` + +libicrt_a-relocatable.o: relocatable.c + $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libicrt_a_CFLAGS) $(CFLAGS) -c -o libicrt_a-relocatable.o `test -f 'relocatable.c' || echo '$(srcdir)/'`relocatable.c + +libicrt_a-relocatable.obj: relocatable.c + $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libicrt_a_CFLAGS) $(CFLAGS) -c -o libicrt_a-relocatable.obj `if test -f 'relocatable.c'; then $(CYGPATH_W) 'relocatable.c'; else $(CYGPATH_W) '$(srcdir)/relocatable.c'; fi` + +mostlyclean-libtool: + -rm -f *.lo + +clean-libtool: + -rm -rf .libs _libs + +ID: $(am__tagged_files) + $(am__define_uniq_tagged_files); mkid -fID $$unique +tags: tags-am +TAGS: tags + +tags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files) + set x; \ + here=`pwd`; \ + $(am__define_uniq_tagged_files); \ + shift; \ + if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \ + test -n "$$unique" || unique=$$empty_fix; \ + if test $$# -gt 0; then \ + $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ + "$$@" $$unique; \ + else \ + $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ + $$unique; \ + fi; \ + fi +ctags: ctags-am + +CTAGS: ctags +ctags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files) + $(am__define_uniq_tagged_files); \ + test -z "$(CTAGS_ARGS)$$unique" \ + || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ + $$unique + +GTAGS: + here=`$(am__cd) $(top_builddir) && pwd` \ + && $(am__cd) $(top_srcdir) \ + && gtags -i $(GTAGS_ARGS) "$$here" +cscopelist: cscopelist-am + +cscopelist-am: $(am__tagged_files) + list='$(am__tagged_files)'; \ + case "$(srcdir)" in \ + [\\/]* | ?:[\\/]*) sdir="$(srcdir)" ;; \ + *) sdir=$(subdir)/$(srcdir) ;; \ + esac; \ + for i in $$list; do \ + if test -f "$$i"; then \ + echo "$(subdir)/$$i"; \ + else \ + echo "$$sdir/$$i"; \ + fi; \ + done >> $(top_builddir)/cscope.files + +distclean-tags: + -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags +distdir: $(BUILT_SOURCES) + $(MAKE) $(AM_MAKEFLAGS) distdir-am + +distdir-am: $(DISTFILES) + @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: $(BUILT_SOURCES) + $(MAKE) $(AM_MAKEFLAGS) check-am +all-am: Makefile $(LIBRARIES) +installdirs: +install: $(BUILT_SOURCES) + $(MAKE) $(AM_MAKEFLAGS) install-am +install-exec: $(BUILT_SOURCES) + $(MAKE) $(AM_MAKEFLAGS) install-exec-am +install-data: install-data-am +uninstall: uninstall-am + +install-am: all-am + @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am + +installcheck: installcheck-am +install-strip: + if test -z '$(STRIP)'; then \ + $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ + install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ + install; \ + else \ + $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ + install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ + "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \ + fi +mostlyclean-generic: + -test -z "$(MOSTLYCLEANFILES)" || rm -f $(MOSTLYCLEANFILES) + +clean-generic: + +distclean-generic: + -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) + -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES) + -rm -f malloc/$(am__dirstamp) + -rm -f uniwidth/$(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 "$(BUILT_SOURCES)" || rm -f $(BUILT_SOURCES) +uninstall-hook: +clean: clean-am + +clean-am: clean-generic clean-libtool clean-noinstLIBRARIES \ + mostlyclean-am + +distclean: distclean-am + -rm -f Makefile +distclean-am: clean-am distclean-compile distclean-generic \ + distclean-local distclean-tags + +dvi: dvi-am + +dvi-am: + +html: html-am + +html-am: + +info: info-am + +info-am: + +install-data-am: + +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-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 \ + maintainer-clean-local + +mostlyclean: mostlyclean-am + +mostlyclean-am: mostlyclean-compile mostlyclean-generic \ + mostlyclean-libtool mostlyclean-local + +pdf: pdf-am + +pdf-am: + +ps: ps-am + +ps-am: + +uninstall-am: + @$(NORMAL_INSTALL) + $(MAKE) $(AM_MAKEFLAGS) uninstall-hook +.MAKE: all check install install-am install-exec install-strip \ + uninstall-am + +.PHONY: CTAGS GTAGS TAGS all all-am check check-am clean clean-generic \ + clean-libtool clean-noinstLIBRARIES cscopelist-am ctags \ + ctags-am distclean distclean-compile distclean-generic \ + distclean-libtool distclean-local distclean-tags 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-pdf \ + install-pdf-am install-ps install-ps-am install-strip \ + installcheck installcheck-am installdirs maintainer-clean \ + maintainer-clean-generic maintainer-clean-local mostlyclean \ + mostlyclean-compile mostlyclean-generic mostlyclean-libtool \ + mostlyclean-local pdf pdf-am ps ps-am tags tags-am uninstall \ + uninstall-am uninstall-hook + +.PRECIOUS: Makefile + + +# We need the following in order to create when the system +# doesn't have one that works with the given compiler. +alloca.h: alloca.in.h $(top_builddir)/config.status + $(gl_V_at)$(SED_HEADER_STDOUT) \ + -e 's|@''HAVE_ALLOCA_H''@|$(HAVE_ALLOCA_H)|g' \ + $(srcdir)/alloca.in.h > $@-t + $(AM_V_at)mv $@-t $@ +#alloca.h: $(top_builddir)/config.status +# rm -f $@ + +# We need the following in order to create when the system +# doesn't have one that is POSIX compliant. +#errno.h: errno.in.h $(top_builddir)/config.status +# $(gl_V_at)$(SED_HEADER_STDOUT) \ +# -e 's|@''GUARD_PREFIX''@|GL|g' \ +# -e 's|@''INCLUDE_NEXT''@|$(INCLUDE_NEXT)|g' \ +# -e 's|@''PRAGMA_SYSTEM_HEADER''@|#pragma GCC system_header|g' \ +# -e 's|@''PRAGMA_COLUMNS''@||g' \ +# -e 's|@''NEXT_ERRNO_H''@|$(NEXT_ERRNO_H)|g' \ +# -e 's|@''EMULTIHOP_HIDDEN''@|$(EMULTIHOP_HIDDEN)|g' \ +# -e 's|@''EMULTIHOP_VALUE''@|$(EMULTIHOP_VALUE)|g' \ +# -e 's|@''ENOLINK_HIDDEN''@|$(ENOLINK_HIDDEN)|g' \ +# -e 's|@''ENOLINK_VALUE''@|$(ENOLINK_VALUE)|g' \ +# -e 's|@''EOVERFLOW_HIDDEN''@|$(EOVERFLOW_HIDDEN)|g' \ +# -e 's|@''EOVERFLOW_VALUE''@|$(EOVERFLOW_VALUE)|g' \ +# $(srcdir)/errno.in.h > $@-t +# $(AM_V_at)mv $@-t $@ +errno.h: $(top_builddir)/config.status + rm -f $@ + +# We need the following in order to create when the system +# doesn't have one that works with the given compiler. +fcntl.h: fcntl.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNULL_H) $(WARN_ON_USE_H) + $(gl_V_at)$(SED_HEADER_STDOUT) \ + -e 's|@''GUARD_PREFIX''@|GL|g' \ + -e 's|@''INCLUDE_NEXT''@|$(INCLUDE_NEXT)|g' \ + -e 's|@''PRAGMA_SYSTEM_HEADER''@|#pragma GCC system_header|g' \ + -e 's|@''PRAGMA_COLUMNS''@||g' \ + -e 's|@''NEXT_FCNTL_H''@|$(NEXT_FCNTL_H)|g' \ + -e 's/@''GNULIB_CREAT''@/$(GL_GNULIB_CREAT)/g' \ + -e 's/@''GNULIB_FCNTL''@/$(GL_GNULIB_FCNTL)/g' \ + -e 's/@''GNULIB_NONBLOCKING''@/$(GL_GNULIB_NONBLOCKING)/g' \ + -e 's/@''GNULIB_OPEN''@/$(GL_GNULIB_OPEN)/g' \ + -e 's/@''GNULIB_OPENAT''@/$(GL_GNULIB_OPENAT)/g' \ + -e 's/@''GNULIB_MDA_CREAT''@/$(GL_GNULIB_MDA_CREAT)/g' \ + -e 's/@''GNULIB_MDA_OPEN''@/$(GL_GNULIB_MDA_OPEN)/g' \ + -e 's|@''HAVE_FCNTL''@|$(HAVE_FCNTL)|g' \ + -e 's|@''HAVE_OPENAT''@|$(HAVE_OPENAT)|g' \ + -e 's|@''REPLACE_CREAT''@|$(REPLACE_CREAT)|g' \ + -e 's|@''REPLACE_FCNTL''@|$(REPLACE_FCNTL)|g' \ + -e 's|@''REPLACE_OPEN''@|$(REPLACE_OPEN)|g' \ + -e 's|@''REPLACE_OPENAT''@|$(REPLACE_OPENAT)|g' \ + -e '/definitions of _GL_FUNCDECL_RPL/r $(CXXDEFS_H)' \ + -e '/definition of _GL_ARG_NONNULL/r $(ARG_NONNULL_H)' \ + -e '/definition of _GL_WARN_ON_USE/r $(WARN_ON_USE_H)' \ + $(srcdir)/fcntl.in.h > $@-t + $(AM_V_at)mv $@-t $@ + +# We need the following in order to create when the system +# doesn't have one that works with the given compiler. +inttypes.h: inttypes.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(WARN_ON_USE_H) $(ARG_NONNULL_H) + $(gl_V_at)$(SED_HEADER_STDOUT) \ + -e 's/@''HAVE_INTTYPES_H''@/$(HAVE_INTTYPES_H)/g' \ + -e 's|@''INCLUDE_NEXT''@|$(INCLUDE_NEXT)|g' \ + -e 's|@''PRAGMA_SYSTEM_HEADER''@|#pragma GCC system_header|g' \ + -e 's|@''PRAGMA_COLUMNS''@||g' \ + -e 's|@''NEXT_INTTYPES_H''@|$(NEXT_INTTYPES_H)|g' \ + -e 's/@''APPLE_UNIVERSAL_BUILD''@/$(APPLE_UNIVERSAL_BUILD)/g' \ + -e 's/@''PRIPTR_PREFIX''@/$(PRIPTR_PREFIX)/g' \ + -e 's/@''GNULIB_IMAXABS''@/$(GL_GNULIB_IMAXABS)/g' \ + -e 's/@''GNULIB_IMAXDIV''@/$(GL_GNULIB_IMAXDIV)/g' \ + -e 's/@''GNULIB_STRTOIMAX''@/$(GL_GNULIB_STRTOIMAX)/g' \ + -e 's/@''GNULIB_STRTOUMAX''@/$(GL_GNULIB_STRTOUMAX)/g' \ + -e 's/@''HAVE_DECL_IMAXABS''@/$(HAVE_DECL_IMAXABS)/g' \ + -e 's/@''HAVE_DECL_IMAXDIV''@/$(HAVE_DECL_IMAXDIV)/g' \ + -e 's/@''HAVE_DECL_STRTOIMAX''@/$(HAVE_DECL_STRTOIMAX)/g' \ + -e 's/@''HAVE_DECL_STRTOUMAX''@/$(HAVE_DECL_STRTOUMAX)/g' \ + -e 's/@''HAVE_IMAXDIV_T''@/$(HAVE_IMAXDIV_T)/g' \ + -e 's/@''REPLACE_STRTOIMAX''@/$(REPLACE_STRTOIMAX)/g' \ + -e 's/@''REPLACE_STRTOUMAX''@/$(REPLACE_STRTOUMAX)/g' \ + -e 's/@''INT32_MAX_LT_INTMAX_MAX''@/$(INT32_MAX_LT_INTMAX_MAX)/g' \ + -e 's/@''INT64_MAX_EQ_LONG_MAX''@/$(INT64_MAX_EQ_LONG_MAX)/g' \ + -e 's/@''UINT32_MAX_LT_UINTMAX_MAX''@/$(UINT32_MAX_LT_UINTMAX_MAX)/g' \ + -e 's/@''UINT64_MAX_EQ_ULONG_MAX''@/$(UINT64_MAX_EQ_ULONG_MAX)/g' \ + -e '/definitions of _GL_FUNCDECL_RPL/r $(CXXDEFS_H)' \ + -e '/definition of _GL_ARG_NONNULL/r $(ARG_NONNULL_H)' \ + -e '/definition of _GL_WARN_ON_USE/r $(WARN_ON_USE_H)' \ + $(srcdir)/inttypes.in.h > $@-t + $(AM_V_at)mv $@-t $@ + +# We need the following in order to create when the system +# doesn't have one that is compatible with GNU. +limits.h: limits.in.h $(top_builddir)/config.status + $(gl_V_at)$(SED_HEADER_STDOUT) \ + -e 's|@''GUARD_PREFIX''@|GL|g' \ + -e 's|@''INCLUDE_NEXT''@|$(INCLUDE_NEXT)|g' \ + -e 's|@''PRAGMA_SYSTEM_HEADER''@|#pragma GCC system_header|g' \ + -e 's|@''PRAGMA_COLUMNS''@||g' \ + -e 's|@''NEXT_LIMITS_H''@|$(NEXT_LIMITS_H)|g' \ + $(srcdir)/limits.in.h > $@-t + $(AM_V_at)mv $@-t $@ +#limits.h: $(top_builddir)/config.status +# rm -f $@ +#uninstall-hook: uninstall-relocwrapper +#uninstall-relocwrapper: +# if test $(RELOCATABLE) = yes; then \ +# case '$(EXEEXT)' in \ +# .bin*) ;; \ +# *) cd $(top_builddir) && \ +# $(MAKE) $(AM_MAKEFLAGS) EXEEXT=.bin$(EXEEXT) \ +# AM_MAKEFLAGS='$(AM_MAKEFLAGS) EXEEXT=.bin$(EXEEXT)' \ +# uninstall ;; \ +# esac; \ +# fi +.PHONY: uninstall-relocwrapper + +malloc/scratch_buffer.gl.h: malloc/scratch_buffer.h + $(AM_V_GEN)$(MKDIR_P) 'malloc' + $(AM_V_at)$(SED_HEADER_STDOUT) \ + -e 's|__always_inline|inline _GL_ATTRIBUTE_ALWAYS_INLINE|g' \ + -e 's|__glibc_likely|_GL_LIKELY|g' \ + -e 's|__glibc_unlikely|_GL_UNLIKELY|g' \ + -e '/libc_hidden_proto/d' \ + $(srcdir)/malloc/scratch_buffer.h > $@-t + $(AM_V_at)mv $@-t $@ + +# We need the following in order to create when the system +# doesn't have a complete one. +signal.h: signal.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNULL_H) $(WARN_ON_USE_H) + $(gl_V_at)$(SED_HEADER_STDOUT) \ + -e 's|@''GUARD_PREFIX''@|GL|g' \ + -e 's|@''INCLUDE_NEXT''@|$(INCLUDE_NEXT)|g' \ + -e 's|@''PRAGMA_SYSTEM_HEADER''@|#pragma GCC system_header|g' \ + -e 's|@''PRAGMA_COLUMNS''@||g' \ + -e 's|@''NEXT_SIGNAL_H''@|$(NEXT_SIGNAL_H)|g' \ + -e 's/@''GNULIB_PTHREAD_SIGMASK''@/$(GL_GNULIB_PTHREAD_SIGMASK)/g' \ + -e 's/@''GNULIB_RAISE''@/$(GL_GNULIB_RAISE)/g' \ + -e 's/@''GNULIB_SIGNAL_H_SIGPIPE''@/$(GL_GNULIB_SIGNAL_H_SIGPIPE)/g' \ + -e 's/@''GNULIB_SIGPROCMASK''@/$(GL_GNULIB_SIGPROCMASK)/g' \ + -e 's/@''GNULIB_SIGACTION''@/$(GL_GNULIB_SIGACTION)/g' \ + -e 's|@''HAVE_POSIX_SIGNALBLOCKING''@|$(HAVE_POSIX_SIGNALBLOCKING)|g' \ + -e 's|@''HAVE_PTHREAD_SIGMASK''@|$(HAVE_PTHREAD_SIGMASK)|g' \ + -e 's|@''HAVE_RAISE''@|$(HAVE_RAISE)|g' \ + -e 's|@''HAVE_SIGSET_T''@|$(HAVE_SIGSET_T)|g' \ + -e 's|@''HAVE_SIGINFO_T''@|$(HAVE_SIGINFO_T)|g' \ + -e 's|@''HAVE_SIGACTION''@|$(HAVE_SIGACTION)|g' \ + -e 's|@''HAVE_STRUCT_SIGACTION_SA_SIGACTION''@|$(HAVE_STRUCT_SIGACTION_SA_SIGACTION)|g' \ + -e 's|@''HAVE_TYPE_VOLATILE_SIG_ATOMIC_T''@|$(HAVE_TYPE_VOLATILE_SIG_ATOMIC_T)|g' \ + -e 's|@''HAVE_SIGHANDLER_T''@|$(HAVE_SIGHANDLER_T)|g' \ + -e 's|@''REPLACE_PTHREAD_SIGMASK''@|$(REPLACE_PTHREAD_SIGMASK)|g' \ + -e 's|@''REPLACE_RAISE''@|$(REPLACE_RAISE)|g' \ + -e '/definitions of _GL_FUNCDECL_RPL/r $(CXXDEFS_H)' \ + -e '/definition of _GL_ARG_NONNULL/r $(ARG_NONNULL_H)' \ + -e '/definition of _GL_WARN_ON_USE/r $(WARN_ON_USE_H)' \ + $(srcdir)/signal.in.h > $@-t + $(AM_V_at)mv $@-t $@ + +# We need the following in order to create when the system +# doesn't have one that works. +#stdalign.h: stdalign.in.h $(top_builddir)/config.status +# $(gl_V_at)$(SED_HEADER_TO_AT_t) $(srcdir)/stdalign.in.h +# $(AM_V_at)mv $@-t $@ +stdalign.h: $(top_builddir)/config.status + rm -f $@ + +# We need the following in order to create when the system +# doesn't have one that works. +#stdbool.h: stdbool.in.h $(top_builddir)/config.status +# $(gl_V_at)$(SED_HEADER_STDOUT) \ +# -e 's/@''HAVE__BOOL''@/$(HAVE__BOOL)/g' \ +# $(srcdir)/stdbool.in.h > $@-t +# $(AM_V_at)mv $@-t $@ +stdbool.h: $(top_builddir)/config.status + rm -f $@ + +# We need the following in order to create when the system +# doesn't have one that works with the given compiler. +#stddef.h: stddef.in.h $(top_builddir)/config.status +# $(gl_V_at)$(SED_HEADER_STDOUT) \ +# -e 's|@''GUARD_PREFIX''@|GL|g' \ +# -e 's|@''INCLUDE_NEXT''@|$(INCLUDE_NEXT)|g' \ +# -e 's|@''PRAGMA_SYSTEM_HEADER''@|#pragma GCC system_header|g' \ +# -e 's|@''PRAGMA_COLUMNS''@||g' \ +# -e 's|@''NEXT_STDDEF_H''@|$(NEXT_STDDEF_H)|g' \ +# -e 's|@''HAVE_MAX_ALIGN_T''@|$(HAVE_MAX_ALIGN_T)|g' \ +# -e 's|@''HAVE_WCHAR_T''@|$(HAVE_WCHAR_T)|g' \ +# -e 's|@''REPLACE_NULL''@|$(REPLACE_NULL)|g' \ +# $(srcdir)/stddef.in.h > $@-t +# $(AM_V_at)mv $@-t $@ +stddef.h: $(top_builddir)/config.status + rm -f $@ + +# We need the following in order to create when the system +# doesn't have one that works with the given compiler. +stdint.h: stdint.in.h $(top_builddir)/config.status + $(gl_V_at)$(SED_HEADER_STDOUT) \ + -e 's|@''GUARD_PREFIX''@|GL|g' \ + -e 's/@''HAVE_STDINT_H''@/$(HAVE_STDINT_H)/g' \ + -e 's|@''INCLUDE_NEXT''@|$(INCLUDE_NEXT)|g' \ + -e 's|@''PRAGMA_SYSTEM_HEADER''@|#pragma GCC system_header|g' \ + -e 's|@''PRAGMA_COLUMNS''@||g' \ + -e 's|@''NEXT_STDINT_H''@|$(NEXT_STDINT_H)|g' \ + -e 's/@''HAVE_C99_STDINT_H''@/$(HAVE_C99_STDINT_H)/g' \ + -e 's/@''HAVE_SYS_TYPES_H''@/$(HAVE_SYS_TYPES_H)/g' \ + -e 's/@''HAVE_INTTYPES_H''@/$(HAVE_INTTYPES_H)/g' \ + -e 's/@''HAVE_SYS_INTTYPES_H''@/$(HAVE_SYS_INTTYPES_H)/g' \ + -e 's/@''HAVE_SYS_BITYPES_H''@/$(HAVE_SYS_BITYPES_H)/g' \ + -e 's/@''HAVE_WCHAR_H''@/$(HAVE_WCHAR_H)/g' \ + -e 's/@''APPLE_UNIVERSAL_BUILD''@/$(APPLE_UNIVERSAL_BUILD)/g' \ + -e 's/@''BITSIZEOF_PTRDIFF_T''@/$(BITSIZEOF_PTRDIFF_T)/g' \ + -e 's/@''PTRDIFF_T_SUFFIX''@/$(PTRDIFF_T_SUFFIX)/g' \ + -e 's/@''BITSIZEOF_SIG_ATOMIC_T''@/$(BITSIZEOF_SIG_ATOMIC_T)/g' \ + -e 's/@''HAVE_SIGNED_SIG_ATOMIC_T''@/$(HAVE_SIGNED_SIG_ATOMIC_T)/g' \ + -e 's/@''SIG_ATOMIC_T_SUFFIX''@/$(SIG_ATOMIC_T_SUFFIX)/g' \ + -e 's/@''BITSIZEOF_SIZE_T''@/$(BITSIZEOF_SIZE_T)/g' \ + -e 's/@''SIZE_T_SUFFIX''@/$(SIZE_T_SUFFIX)/g' \ + -e 's/@''BITSIZEOF_WCHAR_T''@/$(BITSIZEOF_WCHAR_T)/g' \ + -e 's/@''HAVE_SIGNED_WCHAR_T''@/$(HAVE_SIGNED_WCHAR_T)/g' \ + -e 's/@''WCHAR_T_SUFFIX''@/$(WCHAR_T_SUFFIX)/g' \ + -e 's/@''BITSIZEOF_WINT_T''@/$(BITSIZEOF_WINT_T)/g' \ + -e 's/@''HAVE_SIGNED_WINT_T''@/$(HAVE_SIGNED_WINT_T)/g' \ + -e 's/@''WINT_T_SUFFIX''@/$(WINT_T_SUFFIX)/g' \ + -e 's/@''GNULIBHEADERS_OVERRIDE_WINT_T''@/$(GNULIBHEADERS_OVERRIDE_WINT_T)/g' \ + $(srcdir)/stdint.in.h > $@-t + $(AM_V_at)mv $@-t $@ +#stdint.h: $(top_builddir)/config.status +# rm -f $@ + +# We need the following in order to create when the system +# doesn't have one that works with the given compiler. +stdio.h: stdio.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNULL_H) $(WARN_ON_USE_H) + $(gl_V_at)$(SED_HEADER_STDOUT) \ + -e 's|@''GUARD_PREFIX''@|GL|g' \ + -e 's|@''INCLUDE_NEXT''@|$(INCLUDE_NEXT)|g' \ + -e 's|@''PRAGMA_SYSTEM_HEADER''@|#pragma GCC system_header|g' \ + -e 's|@''PRAGMA_COLUMNS''@||g' \ + -e 's|@''NEXT_STDIO_H''@|$(NEXT_STDIO_H)|g' \ + -e 's/@''GNULIB_DPRINTF''@/$(GL_GNULIB_DPRINTF)/g' \ + -e 's/@''GNULIB_FCLOSE''@/$(GL_GNULIB_FCLOSE)/g' \ + -e 's/@''GNULIB_FDOPEN''@/$(GL_GNULIB_FDOPEN)/g' \ + -e 's/@''GNULIB_FFLUSH''@/$(GL_GNULIB_FFLUSH)/g' \ + -e 's/@''GNULIB_FGETC''@/$(GL_GNULIB_FGETC)/g' \ + -e 's/@''GNULIB_FGETS''@/$(GL_GNULIB_FGETS)/g' \ + -e 's/@''GNULIB_FOPEN''@/$(GL_GNULIB_FOPEN)/g' \ + -e 's/@''GNULIB_FOPEN_GNU''@/$(GL_GNULIB_FOPEN_GNU)/g' \ + -e 's/@''GNULIB_FPRINTF''@/$(GL_GNULIB_FPRINTF)/g' \ + -e 's/@''GNULIB_FPRINTF_POSIX''@/$(GL_GNULIB_FPRINTF_POSIX)/g' \ + -e 's/@''GNULIB_FPURGE''@/$(GL_GNULIB_FPURGE)/g' \ + -e 's/@''GNULIB_FPUTC''@/$(GL_GNULIB_FPUTC)/g' \ + -e 's/@''GNULIB_FPUTS''@/$(GL_GNULIB_FPUTS)/g' \ + -e 's/@''GNULIB_FREAD''@/$(GL_GNULIB_FREAD)/g' \ + -e 's/@''GNULIB_FREOPEN''@/$(GL_GNULIB_FREOPEN)/g' \ + -e 's/@''GNULIB_FSCANF''@/$(GL_GNULIB_FSCANF)/g' \ + -e 's/@''GNULIB_FSEEK''@/$(GL_GNULIB_FSEEK)/g' \ + -e 's/@''GNULIB_FSEEKO''@/$(GL_GNULIB_FSEEKO)/g' \ + -e 's/@''GNULIB_FTELL''@/$(GL_GNULIB_FTELL)/g' \ + -e 's/@''GNULIB_FTELLO''@/$(GL_GNULIB_FTELLO)/g' \ + -e 's/@''GNULIB_FWRITE''@/$(GL_GNULIB_FWRITE)/g' \ + -e 's/@''GNULIB_GETC''@/$(GL_GNULIB_GETC)/g' \ + -e 's/@''GNULIB_GETCHAR''@/$(GL_GNULIB_GETCHAR)/g' \ + -e 's/@''GNULIB_GETDELIM''@/$(GL_GNULIB_GETDELIM)/g' \ + -e 's/@''GNULIB_GETLINE''@/$(GL_GNULIB_GETLINE)/g' \ + -e 's/@''GNULIB_OBSTACK_PRINTF''@/$(GL_GNULIB_OBSTACK_PRINTF)/g' \ + -e 's/@''GNULIB_OBSTACK_PRINTF_POSIX''@/$(GL_GNULIB_OBSTACK_PRINTF_POSIX)/g' \ + -e 's/@''GNULIB_PCLOSE''@/$(GL_GNULIB_PCLOSE)/g' \ + -e 's/@''GNULIB_PERROR''@/$(GL_GNULIB_PERROR)/g' \ + -e 's/@''GNULIB_POPEN''@/$(GL_GNULIB_POPEN)/g' \ + -e 's/@''GNULIB_PRINTF''@/$(GL_GNULIB_PRINTF)/g' \ + -e 's/@''GNULIB_PRINTF_POSIX''@/$(GL_GNULIB_PRINTF_POSIX)/g' \ + -e 's/@''GNULIB_PUTC''@/$(GL_GNULIB_PUTC)/g' \ + -e 's/@''GNULIB_PUTCHAR''@/$(GL_GNULIB_PUTCHAR)/g' \ + -e 's/@''GNULIB_PUTS''@/$(GL_GNULIB_PUTS)/g' \ + -e 's/@''GNULIB_REMOVE''@/$(GL_GNULIB_REMOVE)/g' \ + -e 's/@''GNULIB_RENAME''@/$(GL_GNULIB_RENAME)/g' \ + -e 's/@''GNULIB_RENAMEAT''@/$(GL_GNULIB_RENAMEAT)/g' \ + -e 's/@''GNULIB_SCANF''@/$(GL_GNULIB_SCANF)/g' \ + -e 's/@''GNULIB_SNPRINTF''@/$(GL_GNULIB_SNPRINTF)/g' \ + -e 's/@''GNULIB_SPRINTF_POSIX''@/$(GL_GNULIB_SPRINTF_POSIX)/g' \ + -e 's/@''GNULIB_STDIO_H_NONBLOCKING''@/$(GL_GNULIB_STDIO_H_NONBLOCKING)/g' \ + -e 's/@''GNULIB_STDIO_H_SIGPIPE''@/$(GL_GNULIB_STDIO_H_SIGPIPE)/g' \ + -e 's/@''GNULIB_TMPFILE''@/$(GL_GNULIB_TMPFILE)/g' \ + -e 's/@''GNULIB_VASPRINTF''@/$(GL_GNULIB_VASPRINTF)/g' \ + -e 's/@''GNULIB_VDPRINTF''@/$(GL_GNULIB_VDPRINTF)/g' \ + -e 's/@''GNULIB_VFPRINTF''@/$(GL_GNULIB_VFPRINTF)/g' \ + -e 's/@''GNULIB_VFPRINTF_POSIX''@/$(GL_GNULIB_VFPRINTF_POSIX)/g' \ + -e 's/@''GNULIB_VFSCANF''@/$(GL_GNULIB_VFSCANF)/g' \ + -e 's/@''GNULIB_VSCANF''@/$(GL_GNULIB_VSCANF)/g' \ + -e 's/@''GNULIB_VPRINTF''@/$(GL_GNULIB_VPRINTF)/g' \ + -e 's/@''GNULIB_VPRINTF_POSIX''@/$(GL_GNULIB_VPRINTF_POSIX)/g' \ + -e 's/@''GNULIB_VSNPRINTF''@/$(GL_GNULIB_VSNPRINTF)/g' \ + -e 's/@''GNULIB_VSPRINTF_POSIX''@/$(GL_GNULIB_VSPRINTF_POSIX)/g' \ + -e 's/@''GNULIB_MDA_FCLOSEALL''@/$(GL_GNULIB_MDA_FCLOSEALL)/g' \ + -e 's/@''GNULIB_MDA_FDOPEN''@/$(GL_GNULIB_MDA_FDOPEN)/g' \ + -e 's/@''GNULIB_MDA_FILENO''@/$(GL_GNULIB_MDA_FILENO)/g' \ + -e 's/@''GNULIB_MDA_GETW''@/$(GL_GNULIB_MDA_GETW)/g' \ + -e 's/@''GNULIB_MDA_PUTW''@/$(GL_GNULIB_MDA_PUTW)/g' \ + -e 's/@''GNULIB_MDA_TEMPNAM''@/$(GL_GNULIB_MDA_TEMPNAM)/g' \ + < $(srcdir)/stdio.in.h | \ + sed -e 's|@''HAVE_DECL_FCLOSEALL''@|$(HAVE_DECL_FCLOSEALL)|g' \ + -e 's|@''HAVE_DECL_FPURGE''@|$(HAVE_DECL_FPURGE)|g' \ + -e 's|@''HAVE_DECL_FSEEKO''@|$(HAVE_DECL_FSEEKO)|g' \ + -e 's|@''HAVE_DECL_FTELLO''@|$(HAVE_DECL_FTELLO)|g' \ + -e 's|@''HAVE_DECL_GETDELIM''@|$(HAVE_DECL_GETDELIM)|g' \ + -e 's|@''HAVE_DECL_GETLINE''@|$(HAVE_DECL_GETLINE)|g' \ + -e 's|@''HAVE_DECL_OBSTACK_PRINTF''@|$(HAVE_DECL_OBSTACK_PRINTF)|g' \ + -e 's|@''HAVE_DECL_SNPRINTF''@|$(HAVE_DECL_SNPRINTF)|g' \ + -e 's|@''HAVE_DECL_VSNPRINTF''@|$(HAVE_DECL_VSNPRINTF)|g' \ + -e 's|@''HAVE_DPRINTF''@|$(HAVE_DPRINTF)|g' \ + -e 's|@''HAVE_FSEEKO''@|$(HAVE_FSEEKO)|g' \ + -e 's|@''HAVE_FTELLO''@|$(HAVE_FTELLO)|g' \ + -e 's|@''HAVE_PCLOSE''@|$(HAVE_PCLOSE)|g' \ + -e 's|@''HAVE_POPEN''@|$(HAVE_POPEN)|g' \ + -e 's|@''HAVE_RENAMEAT''@|$(HAVE_RENAMEAT)|g' \ + -e 's|@''HAVE_VASPRINTF''@|$(HAVE_VASPRINTF)|g' \ + -e 's|@''HAVE_VDPRINTF''@|$(HAVE_VDPRINTF)|g' \ + -e 's|@''REPLACE_DPRINTF''@|$(REPLACE_DPRINTF)|g' \ + -e 's|@''REPLACE_FCLOSE''@|$(REPLACE_FCLOSE)|g' \ + -e 's|@''REPLACE_FDOPEN''@|$(REPLACE_FDOPEN)|g' \ + -e 's|@''REPLACE_FFLUSH''@|$(REPLACE_FFLUSH)|g' \ + -e 's|@''REPLACE_FOPEN''@|$(REPLACE_FOPEN)|g' \ + -e 's|@''REPLACE_FOPEN_FOR_FOPEN_GNU''@|$(REPLACE_FOPEN_FOR_FOPEN_GNU)|g' \ + -e 's|@''REPLACE_FPRINTF''@|$(REPLACE_FPRINTF)|g' \ + -e 's|@''REPLACE_FPURGE''@|$(REPLACE_FPURGE)|g' \ + -e 's|@''REPLACE_FREOPEN''@|$(REPLACE_FREOPEN)|g' \ + -e 's|@''REPLACE_FSEEK''@|$(REPLACE_FSEEK)|g' \ + -e 's|@''REPLACE_FSEEKO''@|$(REPLACE_FSEEKO)|g' \ + -e 's|@''REPLACE_FTELL''@|$(REPLACE_FTELL)|g' \ + -e 's|@''REPLACE_FTELLO''@|$(REPLACE_FTELLO)|g' \ + -e 's|@''REPLACE_GETDELIM''@|$(REPLACE_GETDELIM)|g' \ + -e 's|@''REPLACE_GETLINE''@|$(REPLACE_GETLINE)|g' \ + -e 's|@''REPLACE_OBSTACK_PRINTF''@|$(REPLACE_OBSTACK_PRINTF)|g' \ + -e 's|@''REPLACE_PERROR''@|$(REPLACE_PERROR)|g' \ + -e 's|@''REPLACE_POPEN''@|$(REPLACE_POPEN)|g' \ + -e 's|@''REPLACE_PRINTF''@|$(REPLACE_PRINTF)|g' \ + -e 's|@''REPLACE_REMOVE''@|$(REPLACE_REMOVE)|g' \ + -e 's|@''REPLACE_RENAME''@|$(REPLACE_RENAME)|g' \ + -e 's|@''REPLACE_RENAMEAT''@|$(REPLACE_RENAMEAT)|g' \ + -e 's|@''REPLACE_SNPRINTF''@|$(REPLACE_SNPRINTF)|g' \ + -e 's|@''REPLACE_SPRINTF''@|$(REPLACE_SPRINTF)|g' \ + -e 's|@''REPLACE_STDIO_READ_FUNCS''@|$(REPLACE_STDIO_READ_FUNCS)|g' \ + -e 's|@''REPLACE_STDIO_WRITE_FUNCS''@|$(REPLACE_STDIO_WRITE_FUNCS)|g' \ + -e 's|@''REPLACE_TMPFILE''@|$(REPLACE_TMPFILE)|g' \ + -e 's|@''REPLACE_VASPRINTF''@|$(REPLACE_VASPRINTF)|g' \ + -e 's|@''REPLACE_VDPRINTF''@|$(REPLACE_VDPRINTF)|g' \ + -e 's|@''REPLACE_VFPRINTF''@|$(REPLACE_VFPRINTF)|g' \ + -e 's|@''REPLACE_VPRINTF''@|$(REPLACE_VPRINTF)|g' \ + -e 's|@''REPLACE_VSNPRINTF''@|$(REPLACE_VSNPRINTF)|g' \ + -e 's|@''REPLACE_VSPRINTF''@|$(REPLACE_VSPRINTF)|g' \ + -e 's|@''ASM_SYMBOL_PREFIX''@|$(ASM_SYMBOL_PREFIX)|g' \ + -e '/definitions of _GL_FUNCDECL_RPL/r $(CXXDEFS_H)' \ + -e '/definition of _GL_ARG_NONNULL/r $(ARG_NONNULL_H)' \ + -e '/definition of _GL_WARN_ON_USE/r $(WARN_ON_USE_H)' \ + > $@-t + $(AM_V_at)mv $@-t $@ + +# We need the following in order to create when the system +# doesn't have one that works with the given compiler. +stdlib.h: stdlib.in.h $(top_builddir)/config.status $(CXXDEFS_H) \ + $(_NORETURN_H) $(ARG_NONNULL_H) $(WARN_ON_USE_H) + $(gl_V_at)$(SED_HEADER_STDOUT) \ + -e 's|@''GUARD_PREFIX''@|GL|g' \ + -e 's|@''INCLUDE_NEXT''@|$(INCLUDE_NEXT)|g' \ + -e 's|@''PRAGMA_SYSTEM_HEADER''@|#pragma GCC system_header|g' \ + -e 's|@''PRAGMA_COLUMNS''@||g' \ + -e 's|@''NEXT_STDLIB_H''@|$(NEXT_STDLIB_H)|g' \ + -e 's/@''GNULIB__EXIT''@/$(GL_GNULIB__EXIT)/g' \ + -e 's/@''GNULIB_ALIGNED_ALLOC''@/$(GL_GNULIB_ALIGNED_ALLOC)/g' \ + -e 's/@''GNULIB_ATOLL''@/$(GL_GNULIB_ATOLL)/g' \ + -e 's/@''GNULIB_CALLOC_GNU''@/$(GL_GNULIB_CALLOC_GNU)/g' \ + -e 's/@''GNULIB_CALLOC_POSIX''@/$(GL_GNULIB_CALLOC_POSIX)/g' \ + -e 's/@''GNULIB_CANONICALIZE_FILE_NAME''@/$(GL_GNULIB_CANONICALIZE_FILE_NAME)/g' \ + -e 's/@''GNULIB_FREE_POSIX''@/$(GL_GNULIB_FREE_POSIX)/g' \ + -e 's/@''GNULIB_GETLOADAVG''@/$(GL_GNULIB_GETLOADAVG)/g' \ + -e 's/@''GNULIB_GETSUBOPT''@/$(GL_GNULIB_GETSUBOPT)/g' \ + -e 's/@''GNULIB_GRANTPT''@/$(GL_GNULIB_GRANTPT)/g' \ + -e 's/@''GNULIB_MALLOC_GNU''@/$(GL_GNULIB_MALLOC_GNU)/g' \ + -e 's/@''GNULIB_MALLOC_POSIX''@/$(GL_GNULIB_MALLOC_POSIX)/g' \ + -e 's/@''GNULIB_MBTOWC''@/$(GL_GNULIB_MBTOWC)/g' \ + -e 's/@''GNULIB_MKDTEMP''@/$(GL_GNULIB_MKDTEMP)/g' \ + -e 's/@''GNULIB_MKOSTEMP''@/$(GL_GNULIB_MKOSTEMP)/g' \ + -e 's/@''GNULIB_MKOSTEMPS''@/$(GL_GNULIB_MKOSTEMPS)/g' \ + -e 's/@''GNULIB_MKSTEMP''@/$(GL_GNULIB_MKSTEMP)/g' \ + -e 's/@''GNULIB_MKSTEMPS''@/$(GL_GNULIB_MKSTEMPS)/g' \ + -e 's/@''GNULIB_POSIX_MEMALIGN''@/$(GL_GNULIB_POSIX_MEMALIGN)/g' \ + -e 's/@''GNULIB_POSIX_OPENPT''@/$(GL_GNULIB_POSIX_OPENPT)/g' \ + -e 's/@''GNULIB_PTSNAME''@/$(GL_GNULIB_PTSNAME)/g' \ + -e 's/@''GNULIB_PTSNAME_R''@/$(GL_GNULIB_PTSNAME_R)/g' \ + -e 's/@''GNULIB_PUTENV''@/$(GL_GNULIB_PUTENV)/g' \ + -e 's/@''GNULIB_QSORT_R''@/$(GL_GNULIB_QSORT_R)/g' \ + -e 's/@''GNULIB_RANDOM''@/$(GL_GNULIB_RANDOM)/g' \ + -e 's/@''GNULIB_RANDOM_R''@/$(GL_GNULIB_RANDOM_R)/g' \ + -e 's/@''GNULIB_REALLOC_GNU''@/$(GL_GNULIB_REALLOC_GNU)/g' \ + -e 's/@''GNULIB_REALLOC_POSIX''@/$(GL_GNULIB_REALLOC_POSIX)/g' \ + -e 's/@''GNULIB_REALLOCARRAY''@/$(GL_GNULIB_REALLOCARRAY)/g' \ + -e 's/@''GNULIB_REALPATH''@/$(GL_GNULIB_REALPATH)/g' \ + -e 's/@''GNULIB_RPMATCH''@/$(GL_GNULIB_RPMATCH)/g' \ + -e 's/@''GNULIB_SECURE_GETENV''@/$(GL_GNULIB_SECURE_GETENV)/g' \ + -e 's/@''GNULIB_SETENV''@/$(GL_GNULIB_SETENV)/g' \ + -e 's/@''GNULIB_STRTOD''@/$(GL_GNULIB_STRTOD)/g' \ + -e 's/@''GNULIB_STRTOL''@/$(GL_GNULIB_STRTOL)/g' \ + -e 's/@''GNULIB_STRTOLD''@/$(GL_GNULIB_STRTOLD)/g' \ + -e 's/@''GNULIB_STRTOLL''@/$(GL_GNULIB_STRTOLL)/g' \ + -e 's/@''GNULIB_STRTOUL''@/$(GL_GNULIB_STRTOUL)/g' \ + -e 's/@''GNULIB_STRTOULL''@/$(GL_GNULIB_STRTOULL)/g' \ + -e 's/@''GNULIB_SYSTEM_POSIX''@/$(GL_GNULIB_SYSTEM_POSIX)/g' \ + -e 's/@''GNULIB_UNLOCKPT''@/$(GL_GNULIB_UNLOCKPT)/g' \ + -e 's/@''GNULIB_UNSETENV''@/$(GL_GNULIB_UNSETENV)/g' \ + -e 's/@''GNULIB_WCTOMB''@/$(GL_GNULIB_WCTOMB)/g' \ + -e 's/@''GNULIB_MDA_ECVT''@/$(GL_GNULIB_MDA_ECVT)/g' \ + -e 's/@''GNULIB_MDA_FCVT''@/$(GL_GNULIB_MDA_FCVT)/g' \ + -e 's/@''GNULIB_MDA_GCVT''@/$(GL_GNULIB_MDA_GCVT)/g' \ + -e 's/@''GNULIB_MDA_MKTEMP''@/$(GL_GNULIB_MDA_MKTEMP)/g' \ + -e 's/@''GNULIB_MDA_PUTENV''@/$(GL_GNULIB_MDA_PUTENV)/g' \ + < $(srcdir)/stdlib.in.h | \ + sed -e 's|@''HAVE__EXIT''@|$(HAVE__EXIT)|g' \ + -e 's|@''HAVE_ALIGNED_ALLOC''@|$(HAVE_ALIGNED_ALLOC)|g' \ + -e 's|@''HAVE_ATOLL''@|$(HAVE_ATOLL)|g' \ + -e 's|@''HAVE_CANONICALIZE_FILE_NAME''@|$(HAVE_CANONICALIZE_FILE_NAME)|g' \ + -e 's|@''HAVE_DECL_ECVT''@|$(HAVE_DECL_ECVT)|g' \ + -e 's|@''HAVE_DECL_FCVT''@|$(HAVE_DECL_FCVT)|g' \ + -e 's|@''HAVE_DECL_GCVT''@|$(HAVE_DECL_GCVT)|g' \ + -e 's|@''HAVE_DECL_GETLOADAVG''@|$(HAVE_DECL_GETLOADAVG)|g' \ + -e 's|@''HAVE_GETSUBOPT''@|$(HAVE_GETSUBOPT)|g' \ + -e 's|@''HAVE_GRANTPT''@|$(HAVE_GRANTPT)|g' \ + -e 's|@''HAVE_INITSTATE''@|$(HAVE_INITSTATE)|g' \ + -e 's|@''HAVE_DECL_INITSTATE''@|$(HAVE_DECL_INITSTATE)|g' \ + -e 's|@''HAVE_MBTOWC''@|$(HAVE_MBTOWC)|g' \ + -e 's|@''HAVE_MKDTEMP''@|$(HAVE_MKDTEMP)|g' \ + -e 's|@''HAVE_MKOSTEMP''@|$(HAVE_MKOSTEMP)|g' \ + -e 's|@''HAVE_MKOSTEMPS''@|$(HAVE_MKOSTEMPS)|g' \ + -e 's|@''HAVE_MKSTEMP''@|$(HAVE_MKSTEMP)|g' \ + -e 's|@''HAVE_MKSTEMPS''@|$(HAVE_MKSTEMPS)|g' \ + -e 's|@''HAVE_POSIX_MEMALIGN''@|$(HAVE_POSIX_MEMALIGN)|g' \ + -e 's|@''HAVE_POSIX_OPENPT''@|$(HAVE_POSIX_OPENPT)|g' \ + -e 's|@''HAVE_PTSNAME''@|$(HAVE_PTSNAME)|g' \ + -e 's|@''HAVE_PTSNAME_R''@|$(HAVE_PTSNAME_R)|g' \ + -e 's|@''HAVE_QSORT_R''@|$(HAVE_QSORT_R)|g' \ + -e 's|@''HAVE_RANDOM''@|$(HAVE_RANDOM)|g' \ + -e 's|@''HAVE_RANDOM_H''@|$(HAVE_RANDOM_H)|g' \ + -e 's|@''HAVE_RANDOM_R''@|$(HAVE_RANDOM_R)|g' \ + -e 's|@''HAVE_REALLOCARRAY''@|$(HAVE_REALLOCARRAY)|g' \ + -e 's|@''HAVE_REALPATH''@|$(HAVE_REALPATH)|g' \ + -e 's|@''HAVE_RPMATCH''@|$(HAVE_RPMATCH)|g' \ + -e 's|@''HAVE_SECURE_GETENV''@|$(HAVE_SECURE_GETENV)|g' \ + -e 's|@''HAVE_DECL_SETENV''@|$(HAVE_DECL_SETENV)|g' \ + -e 's|@''HAVE_SETSTATE''@|$(HAVE_SETSTATE)|g' \ + -e 's|@''HAVE_DECL_SETSTATE''@|$(HAVE_DECL_SETSTATE)|g' \ + -e 's|@''HAVE_STRTOD''@|$(HAVE_STRTOD)|g' \ + -e 's|@''HAVE_STRTOL''@|$(HAVE_STRTOL)|g' \ + -e 's|@''HAVE_STRTOLD''@|$(HAVE_STRTOLD)|g' \ + -e 's|@''HAVE_STRTOLL''@|$(HAVE_STRTOLL)|g' \ + -e 's|@''HAVE_STRTOUL''@|$(HAVE_STRTOUL)|g' \ + -e 's|@''HAVE_STRTOULL''@|$(HAVE_STRTOULL)|g' \ + -e 's|@''HAVE_STRUCT_RANDOM_DATA''@|$(HAVE_STRUCT_RANDOM_DATA)|g' \ + -e 's|@''HAVE_SYS_LOADAVG_H''@|$(HAVE_SYS_LOADAVG_H)|g' \ + -e 's|@''HAVE_UNLOCKPT''@|$(HAVE_UNLOCKPT)|g' \ + -e 's|@''HAVE_DECL_UNSETENV''@|$(HAVE_DECL_UNSETENV)|g' \ + -e 's|@''REPLACE_ALIGNED_ALLOC''@|$(REPLACE_ALIGNED_ALLOC)|g' \ + -e 's|@''REPLACE_CALLOC_FOR_CALLOC_GNU''@|$(REPLACE_CALLOC_FOR_CALLOC_GNU)|g' \ + -e 's|@''REPLACE_CALLOC_FOR_CALLOC_POSIX''@|$(REPLACE_CALLOC_FOR_CALLOC_POSIX)|g' \ + -e 's|@''REPLACE_CANONICALIZE_FILE_NAME''@|$(REPLACE_CANONICALIZE_FILE_NAME)|g' \ + -e 's|@''REPLACE_FREE''@|$(REPLACE_FREE)|g' \ + -e 's|@''REPLACE_INITSTATE''@|$(REPLACE_INITSTATE)|g' \ + -e 's|@''REPLACE_MALLOC_FOR_MALLOC_GNU''@|$(REPLACE_MALLOC_FOR_MALLOC_GNU)|g' \ + -e 's|@''REPLACE_MALLOC_FOR_MALLOC_POSIX''@|$(REPLACE_MALLOC_FOR_MALLOC_POSIX)|g' \ + -e 's|@''REPLACE_MBTOWC''@|$(REPLACE_MBTOWC)|g' \ + -e 's|@''REPLACE_MKSTEMP''@|$(REPLACE_MKSTEMP)|g' \ + -e 's|@''REPLACE_POSIX_MEMALIGN''@|$(REPLACE_POSIX_MEMALIGN)|g' \ + -e 's|@''REPLACE_PTSNAME''@|$(REPLACE_PTSNAME)|g' \ + -e 's|@''REPLACE_PTSNAME_R''@|$(REPLACE_PTSNAME_R)|g' \ + -e 's|@''REPLACE_PUTENV''@|$(REPLACE_PUTENV)|g' \ + -e 's|@''REPLACE_QSORT_R''@|$(REPLACE_QSORT_R)|g' \ + -e 's|@''REPLACE_RANDOM''@|$(REPLACE_RANDOM)|g' \ + -e 's|@''REPLACE_RANDOM_R''@|$(REPLACE_RANDOM_R)|g' \ + -e 's|@''REPLACE_REALLOC_FOR_REALLOC_GNU''@|$(REPLACE_REALLOC_FOR_REALLOC_GNU)|g' \ + -e 's|@''REPLACE_REALLOC_FOR_REALLOC_POSIX''@|$(REPLACE_REALLOC_FOR_REALLOC_POSIX)|g' \ + -e 's|@''REPLACE_REALLOCARRAY''@|$(REPLACE_REALLOCARRAY)|g' \ + -e 's|@''REPLACE_REALPATH''@|$(REPLACE_REALPATH)|g' \ + -e 's|@''REPLACE_SETENV''@|$(REPLACE_SETENV)|g' \ + -e 's|@''REPLACE_SETSTATE''@|$(REPLACE_SETSTATE)|g' \ + -e 's|@''REPLACE_STRTOD''@|$(REPLACE_STRTOD)|g' \ + -e 's|@''REPLACE_STRTOL''@|$(REPLACE_STRTOL)|g' \ + -e 's|@''REPLACE_STRTOLD''@|$(REPLACE_STRTOLD)|g' \ + -e 's|@''REPLACE_STRTOLL''@|$(REPLACE_STRTOLL)|g' \ + -e 's|@''REPLACE_STRTOUL''@|$(REPLACE_STRTOUL)|g' \ + -e 's|@''REPLACE_STRTOULL''@|$(REPLACE_STRTOULL)|g' \ + -e 's|@''REPLACE_UNSETENV''@|$(REPLACE_UNSETENV)|g' \ + -e 's|@''REPLACE_WCTOMB''@|$(REPLACE_WCTOMB)|g' \ + -e '/definitions of _GL_FUNCDECL_RPL/r $(CXXDEFS_H)' \ + -e '/definition of _Noreturn/r $(_NORETURN_H)' \ + -e '/definition of _GL_ARG_NONNULL/r $(ARG_NONNULL_H)' \ + -e '/definition of _GL_WARN_ON_USE/r $(WARN_ON_USE_H)' \ + > $@-t + $(AM_V_at)mv $@-t $@ + +# We need the following in order to create when the system +# doesn't have one that works with the given compiler. +string.h: string.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNULL_H) $(WARN_ON_USE_H) + $(gl_V_at)$(SED_HEADER_STDOUT) \ + -e 's|@''GUARD_PREFIX''@|GL|g' \ + -e 's|@''INCLUDE_NEXT''@|$(INCLUDE_NEXT)|g' \ + -e 's|@''PRAGMA_SYSTEM_HEADER''@|#pragma GCC system_header|g' \ + -e 's|@''PRAGMA_COLUMNS''@||g' \ + -e 's|@''NEXT_STRING_H''@|$(NEXT_STRING_H)|g' \ + -e 's/@''GNULIB_EXPLICIT_BZERO''@/$(GL_GNULIB_EXPLICIT_BZERO)/g' \ + -e 's/@''GNULIB_FFSL''@/$(GL_GNULIB_FFSL)/g' \ + -e 's/@''GNULIB_FFSLL''@/$(GL_GNULIB_FFSLL)/g' \ + -e 's/@''GNULIB_MBSLEN''@/$(GL_GNULIB_MBSLEN)/g' \ + -e 's/@''GNULIB_MBSNLEN''@/$(GL_GNULIB_MBSNLEN)/g' \ + -e 's/@''GNULIB_MBSCHR''@/$(GL_GNULIB_MBSCHR)/g' \ + -e 's/@''GNULIB_MBSRCHR''@/$(GL_GNULIB_MBSRCHR)/g' \ + -e 's/@''GNULIB_MBSSTR''@/$(GL_GNULIB_MBSSTR)/g' \ + -e 's/@''GNULIB_MBSCASECMP''@/$(GL_GNULIB_MBSCASECMP)/g' \ + -e 's/@''GNULIB_MBSNCASECMP''@/$(GL_GNULIB_MBSNCASECMP)/g' \ + -e 's/@''GNULIB_MBSPCASECMP''@/$(GL_GNULIB_MBSPCASECMP)/g' \ + -e 's/@''GNULIB_MBSCASESTR''@/$(GL_GNULIB_MBSCASESTR)/g' \ + -e 's/@''GNULIB_MBSCSPN''@/$(GL_GNULIB_MBSCSPN)/g' \ + -e 's/@''GNULIB_MBSPBRK''@/$(GL_GNULIB_MBSPBRK)/g' \ + -e 's/@''GNULIB_MBSSPN''@/$(GL_GNULIB_MBSSPN)/g' \ + -e 's/@''GNULIB_MBSSEP''@/$(GL_GNULIB_MBSSEP)/g' \ + -e 's/@''GNULIB_MBSTOK_R''@/$(GL_GNULIB_MBSTOK_R)/g' \ + -e 's/@''GNULIB_MEMCHR''@/$(GL_GNULIB_MEMCHR)/g' \ + -e 's/@''GNULIB_MEMMEM''@/$(GL_GNULIB_MEMMEM)/g' \ + -e 's/@''GNULIB_MEMPCPY''@/$(GL_GNULIB_MEMPCPY)/g' \ + -e 's/@''GNULIB_MEMRCHR''@/$(GL_GNULIB_MEMRCHR)/g' \ + -e 's/@''GNULIB_RAWMEMCHR''@/$(GL_GNULIB_RAWMEMCHR)/g' \ + -e 's/@''GNULIB_STPCPY''@/$(GL_GNULIB_STPCPY)/g' \ + -e 's/@''GNULIB_STPNCPY''@/$(GL_GNULIB_STPNCPY)/g' \ + -e 's/@''GNULIB_STRCHRNUL''@/$(GL_GNULIB_STRCHRNUL)/g' \ + -e 's/@''GNULIB_STRDUP''@/$(GL_GNULIB_STRDUP)/g' \ + -e 's/@''GNULIB_STRNCAT''@/$(GL_GNULIB_STRNCAT)/g' \ + -e 's/@''GNULIB_STRNDUP''@/$(GL_GNULIB_STRNDUP)/g' \ + -e 's/@''GNULIB_STRNLEN''@/$(GL_GNULIB_STRNLEN)/g' \ + -e 's/@''GNULIB_STRPBRK''@/$(GL_GNULIB_STRPBRK)/g' \ + -e 's/@''GNULIB_STRSEP''@/$(GL_GNULIB_STRSEP)/g' \ + -e 's/@''GNULIB_STRSTR''@/$(GL_GNULIB_STRSTR)/g' \ + -e 's/@''GNULIB_STRCASESTR''@/$(GL_GNULIB_STRCASESTR)/g' \ + -e 's/@''GNULIB_STRTOK_R''@/$(GL_GNULIB_STRTOK_R)/g' \ + -e 's/@''GNULIB_STRERROR''@/$(GL_GNULIB_STRERROR)/g' \ + -e 's/@''GNULIB_STRERROR_R''@/$(GL_GNULIB_STRERROR_R)/g' \ + -e 's/@''GNULIB_STRERRORNAME_NP''@/$(GL_GNULIB_STRERRORNAME_NP)/g' \ + -e 's/@''GNULIB_SIGABBREV_NP''@/$(GL_GNULIB_SIGABBREV_NP)/g' \ + -e 's/@''GNULIB_SIGDESCR_NP''@/$(GL_GNULIB_SIGDESCR_NP)/g' \ + -e 's/@''GNULIB_STRSIGNAL''@/$(GL_GNULIB_STRSIGNAL)/g' \ + -e 's/@''GNULIB_STRVERSCMP''@/$(GL_GNULIB_STRVERSCMP)/g' \ + -e 's/@''GNULIB_MDA_MEMCCPY''@/$(GL_GNULIB_MDA_MEMCCPY)/g' \ + -e 's/@''GNULIB_MDA_STRDUP''@/$(GL_GNULIB_MDA_STRDUP)/g' \ + -e 's/@''GNULIB_FREE_POSIX''@/$(GL_GNULIB_FREE_POSIX)/g' \ + < $(srcdir)/string.in.h | \ + sed -e 's|@''HAVE_EXPLICIT_BZERO''@|$(HAVE_EXPLICIT_BZERO)|g' \ + -e 's|@''HAVE_FFSL''@|$(HAVE_FFSL)|g' \ + -e 's|@''HAVE_FFSLL''@|$(HAVE_FFSLL)|g' \ + -e 's|@''HAVE_MBSLEN''@|$(HAVE_MBSLEN)|g' \ + -e 's|@''HAVE_DECL_MEMMEM''@|$(HAVE_DECL_MEMMEM)|g' \ + -e 's|@''HAVE_MEMPCPY''@|$(HAVE_MEMPCPY)|g' \ + -e 's|@''HAVE_DECL_MEMRCHR''@|$(HAVE_DECL_MEMRCHR)|g' \ + -e 's|@''HAVE_RAWMEMCHR''@|$(HAVE_RAWMEMCHR)|g' \ + -e 's|@''HAVE_STPCPY''@|$(HAVE_STPCPY)|g' \ + -e 's|@''HAVE_STPNCPY''@|$(HAVE_STPNCPY)|g' \ + -e 's|@''HAVE_STRCHRNUL''@|$(HAVE_STRCHRNUL)|g' \ + -e 's|@''HAVE_DECL_STRDUP''@|$(HAVE_DECL_STRDUP)|g' \ + -e 's|@''HAVE_DECL_STRNDUP''@|$(HAVE_DECL_STRNDUP)|g' \ + -e 's|@''HAVE_DECL_STRNLEN''@|$(HAVE_DECL_STRNLEN)|g' \ + -e 's|@''HAVE_STRPBRK''@|$(HAVE_STRPBRK)|g' \ + -e 's|@''HAVE_STRSEP''@|$(HAVE_STRSEP)|g' \ + -e 's|@''HAVE_STRCASESTR''@|$(HAVE_STRCASESTR)|g' \ + -e 's|@''HAVE_DECL_STRTOK_R''@|$(HAVE_DECL_STRTOK_R)|g' \ + -e 's|@''HAVE_DECL_STRERROR_R''@|$(HAVE_DECL_STRERROR_R)|g' \ + -e 's|@''HAVE_STRERRORNAME_NP''@|$(HAVE_STRERRORNAME_NP)|g' \ + -e 's|@''HAVE_SIGABBREV_NP''@|$(HAVE_SIGABBREV_NP)|g' \ + -e 's|@''HAVE_SIGDESCR_NP''@|$(HAVE_SIGDESCR_NP)|g' \ + -e 's|@''HAVE_DECL_STRSIGNAL''@|$(HAVE_DECL_STRSIGNAL)|g' \ + -e 's|@''HAVE_STRVERSCMP''@|$(HAVE_STRVERSCMP)|g' \ + -e 's|@''REPLACE_FFSLL''@|$(REPLACE_FFSLL)|g' \ + -e 's|@''REPLACE_MEMCHR''@|$(REPLACE_MEMCHR)|g' \ + -e 's|@''REPLACE_MEMMEM''@|$(REPLACE_MEMMEM)|g' \ + -e 's|@''REPLACE_FREE''@|$(REPLACE_FREE)|g' \ + -e 's|@''REPLACE_STPNCPY''@|$(REPLACE_STPNCPY)|g' \ + -e 's|@''REPLACE_STRCHRNUL''@|$(REPLACE_STRCHRNUL)|g' \ + -e 's|@''REPLACE_STRDUP''@|$(REPLACE_STRDUP)|g' \ + -e 's|@''REPLACE_STRNCAT''@|$(REPLACE_STRNCAT)|g' \ + -e 's|@''REPLACE_STRNDUP''@|$(REPLACE_STRNDUP)|g' \ + -e 's|@''REPLACE_STRNLEN''@|$(REPLACE_STRNLEN)|g' \ + -e 's|@''REPLACE_STRSTR''@|$(REPLACE_STRSTR)|g' \ + -e 's|@''REPLACE_STRCASESTR''@|$(REPLACE_STRCASESTR)|g' \ + -e 's|@''REPLACE_STRTOK_R''@|$(REPLACE_STRTOK_R)|g' \ + -e 's|@''REPLACE_STRERROR''@|$(REPLACE_STRERROR)|g' \ + -e 's|@''REPLACE_STRERROR_R''@|$(REPLACE_STRERROR_R)|g' \ + -e 's|@''REPLACE_STRERRORNAME_NP''@|$(REPLACE_STRERRORNAME_NP)|g' \ + -e 's|@''REPLACE_STRSIGNAL''@|$(REPLACE_STRSIGNAL)|g' \ + -e 's|@''UNDEFINE_STRTOK_R''@|$(UNDEFINE_STRTOK_R)|g' \ + -e '/definitions of _GL_FUNCDECL_RPL/r $(CXXDEFS_H)' \ + -e '/definition of _GL_ARG_NONNULL/r $(ARG_NONNULL_H)' \ + -e '/definition of _GL_WARN_ON_USE/r $(WARN_ON_USE_H)' \ + > $@-t + $(AM_V_at)mv $@-t $@ + +# We need the following in order to create when the system +# has one that is incomplete. +sys/stat.h: sys_stat.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNULL_H) $(WARN_ON_USE_H) + $(AM_V_GEN)$(MKDIR_P) 'sys' + $(AM_V_at)$(SED_HEADER_STDOUT) \ + -e 's|@''GUARD_PREFIX''@|GL|g' \ + -e 's|@''INCLUDE_NEXT''@|$(INCLUDE_NEXT)|g' \ + -e 's|@''PRAGMA_SYSTEM_HEADER''@|#pragma GCC system_header|g' \ + -e 's|@''PRAGMA_COLUMNS''@||g' \ + -e 's|@''NEXT_SYS_STAT_H''@|$(NEXT_SYS_STAT_H)|g' \ + -e 's|@''WINDOWS_64_BIT_ST_SIZE''@|$(WINDOWS_64_BIT_ST_SIZE)|g' \ + -e 's|@''WINDOWS_STAT_TIMESPEC''@|$(WINDOWS_STAT_TIMESPEC)|g' \ + -e 's/@''GNULIB_FCHMODAT''@/$(GL_GNULIB_FCHMODAT)/g' \ + -e 's/@''GNULIB_FSTAT''@/$(GL_GNULIB_FSTAT)/g' \ + -e 's/@''GNULIB_FSTATAT''@/$(GL_GNULIB_FSTATAT)/g' \ + -e 's/@''GNULIB_FUTIMENS''@/$(GL_GNULIB_FUTIMENS)/g' \ + -e 's/@''GNULIB_GETUMASK''@/$(GL_GNULIB_GETUMASK)/g' \ + -e 's/@''GNULIB_LCHMOD''@/$(GL_GNULIB_LCHMOD)/g' \ + -e 's/@''GNULIB_LSTAT''@/$(GL_GNULIB_LSTAT)/g' \ + -e 's/@''GNULIB_MKDIR''@/$(GL_GNULIB_MKDIR)/g' \ + -e 's/@''GNULIB_MKDIRAT''@/$(GL_GNULIB_MKDIRAT)/g' \ + -e 's/@''GNULIB_MKFIFO''@/$(GL_GNULIB_MKFIFO)/g' \ + -e 's/@''GNULIB_MKFIFOAT''@/$(GL_GNULIB_MKFIFOAT)/g' \ + -e 's/@''GNULIB_MKNOD''@/$(GL_GNULIB_MKNOD)/g' \ + -e 's/@''GNULIB_MKNODAT''@/$(GL_GNULIB_MKNODAT)/g' \ + -e 's/@''GNULIB_STAT''@/$(GL_GNULIB_STAT)/g' \ + -e 's/@''GNULIB_UTIMENSAT''@/$(GL_GNULIB_UTIMENSAT)/g' \ + -e 's/@''GNULIB_OVERRIDES_STRUCT_STAT''@/$(GL_GNULIB_OVERRIDES_STRUCT_STAT)/g' \ + -e 's/@''GNULIB_MDA_CHMOD''@/$(GL_GNULIB_MDA_CHMOD)/g' \ + -e 's/@''GNULIB_MDA_MKDIR''@/$(GL_GNULIB_MDA_MKDIR)/g' \ + -e 's/@''GNULIB_MDA_UMASK''@/$(GL_GNULIB_MDA_UMASK)/g' \ + -e 's|@''HAVE_FCHMODAT''@|$(HAVE_FCHMODAT)|g' \ + -e 's|@''HAVE_FSTATAT''@|$(HAVE_FSTATAT)|g' \ + -e 's|@''HAVE_FUTIMENS''@|$(HAVE_FUTIMENS)|g' \ + -e 's|@''HAVE_GETUMASK''@|$(HAVE_GETUMASK)|g' \ + -e 's|@''HAVE_LCHMOD''@|$(HAVE_LCHMOD)|g' \ + -e 's|@''HAVE_LSTAT''@|$(HAVE_LSTAT)|g' \ + -e 's|@''HAVE_MKDIRAT''@|$(HAVE_MKDIRAT)|g' \ + -e 's|@''HAVE_MKFIFO''@|$(HAVE_MKFIFO)|g' \ + -e 's|@''HAVE_MKFIFOAT''@|$(HAVE_MKFIFOAT)|g' \ + -e 's|@''HAVE_MKNOD''@|$(HAVE_MKNOD)|g' \ + -e 's|@''HAVE_MKNODAT''@|$(HAVE_MKNODAT)|g' \ + -e 's|@''HAVE_UTIMENSAT''@|$(HAVE_UTIMENSAT)|g' \ + -e 's|@''REPLACE_FCHMODAT''@|$(REPLACE_FCHMODAT)|g' \ + -e 's|@''REPLACE_FSTAT''@|$(REPLACE_FSTAT)|g' \ + -e 's|@''REPLACE_FSTATAT''@|$(REPLACE_FSTATAT)|g' \ + -e 's|@''REPLACE_FUTIMENS''@|$(REPLACE_FUTIMENS)|g' \ + -e 's|@''REPLACE_LSTAT''@|$(REPLACE_LSTAT)|g' \ + -e 's|@''REPLACE_MKDIR''@|$(REPLACE_MKDIR)|g' \ + -e 's|@''REPLACE_MKFIFO''@|$(REPLACE_MKFIFO)|g' \ + -e 's|@''REPLACE_MKFIFOAT''@|$(REPLACE_MKFIFOAT)|g' \ + -e 's|@''REPLACE_MKNOD''@|$(REPLACE_MKNOD)|g' \ + -e 's|@''REPLACE_MKNODAT''@|$(REPLACE_MKNODAT)|g' \ + -e 's|@''REPLACE_STAT''@|$(REPLACE_STAT)|g' \ + -e 's|@''REPLACE_UTIMENSAT''@|$(REPLACE_UTIMENSAT)|g' \ + -e '/definitions of _GL_FUNCDECL_RPL/r $(CXXDEFS_H)' \ + -e '/definition of _GL_ARG_NONNULL/r $(ARG_NONNULL_H)' \ + -e '/definition of _GL_WARN_ON_USE/r $(WARN_ON_USE_H)' \ + $(srcdir)/sys_stat.in.h > $@-t + $(AM_V_at)mv $@-t $@ + +# We need the following in order to create when the system +# doesn't have one that works with the given compiler. +sys/types.h: sys_types.in.h $(top_builddir)/config.status + $(AM_V_GEN)$(MKDIR_P) 'sys' + $(AM_V_at)$(SED_HEADER_STDOUT) \ + -e 's|@''GUARD_PREFIX''@|GL|g' \ + -e 's|@''INCLUDE_NEXT''@|$(INCLUDE_NEXT)|g' \ + -e 's|@''PRAGMA_SYSTEM_HEADER''@|#pragma GCC system_header|g' \ + -e 's|@''PRAGMA_COLUMNS''@||g' \ + -e 's|@''NEXT_SYS_TYPES_H''@|$(NEXT_SYS_TYPES_H)|g' \ + -e 's|@''WINDOWS_64_BIT_OFF_T''@|$(WINDOWS_64_BIT_OFF_T)|g' \ + -e 's|@''WINDOWS_STAT_INODES''@|$(WINDOWS_STAT_INODES)|g' \ + $(srcdir)/sys_types.in.h > $@-t + $(AM_V_at)mv $@-t $@ + +# We need the following in order to create when the system +# doesn't have one that works with the given compiler. +time.h: time.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNULL_H) $(WARN_ON_USE_H) + $(gl_V_at)$(SED_HEADER_STDOUT) \ + -e 's|@''GUARD_PREFIX''@|GL|g' \ + -e 's|@''INCLUDE_NEXT''@|$(INCLUDE_NEXT)|g' \ + -e 's|@''PRAGMA_SYSTEM_HEADER''@|#pragma GCC system_header|g' \ + -e 's|@''PRAGMA_COLUMNS''@||g' \ + -e 's|@''NEXT_TIME_H''@|$(NEXT_TIME_H)|g' \ + -e 's/@''GNULIB_CTIME''@/$(GL_GNULIB_CTIME)/g' \ + -e 's/@''GNULIB_LOCALTIME''@/$(GL_GNULIB_LOCALTIME)/g' \ + -e 's/@''GNULIB_MKTIME''@/$(GL_GNULIB_MKTIME)/g' \ + -e 's/@''GNULIB_NANOSLEEP''@/$(GL_GNULIB_NANOSLEEP)/g' \ + -e 's/@''GNULIB_STRFTIME''@/$(GL_GNULIB_STRFTIME)/g' \ + -e 's/@''GNULIB_STRPTIME''@/$(GL_GNULIB_STRPTIME)/g' \ + -e 's/@''GNULIB_TIMEGM''@/$(GL_GNULIB_TIMEGM)/g' \ + -e 's/@''GNULIB_TIMESPEC_GET''@/$(GL_GNULIB_TIMESPEC_GET)/g' \ + -e 's/@''GNULIB_TIMESPEC_GETRES''@/$(GL_GNULIB_TIMESPEC_GETRES)/g' \ + -e 's/@''GNULIB_TIME_R''@/$(GL_GNULIB_TIME_R)/g' \ + -e 's/@''GNULIB_TIME_RZ''@/$(GL_GNULIB_TIME_RZ)/g' \ + -e 's/@''GNULIB_TZSET''@/$(GL_GNULIB_TZSET)/g' \ + -e 's/@''GNULIB_MDA_TZSET''@/$(GL_GNULIB_MDA_TZSET)/g' \ + -e 's|@''HAVE_DECL_LOCALTIME_R''@|$(HAVE_DECL_LOCALTIME_R)|g' \ + -e 's|@''HAVE_NANOSLEEP''@|$(HAVE_NANOSLEEP)|g' \ + -e 's|@''HAVE_STRPTIME''@|$(HAVE_STRPTIME)|g' \ + -e 's|@''HAVE_TIMEGM''@|$(HAVE_TIMEGM)|g' \ + -e 's|@''HAVE_TIMESPEC_GET''@|$(HAVE_TIMESPEC_GET)|g' \ + -e 's|@''HAVE_TIMESPEC_GETRES''@|$(HAVE_TIMESPEC_GETRES)|g' \ + -e 's|@''HAVE_TIMEZONE_T''@|$(HAVE_TIMEZONE_T)|g' \ + -e 's|@''REPLACE_CTIME''@|$(REPLACE_CTIME)|g' \ + -e 's|@''REPLACE_GMTIME''@|$(REPLACE_GMTIME)|g' \ + -e 's|@''REPLACE_LOCALTIME''@|$(REPLACE_LOCALTIME)|g' \ + -e 's|@''REPLACE_LOCALTIME_R''@|$(REPLACE_LOCALTIME_R)|g' \ + -e 's|@''REPLACE_MKTIME''@|$(REPLACE_MKTIME)|g' \ + -e 's|@''REPLACE_NANOSLEEP''@|$(REPLACE_NANOSLEEP)|g' \ + -e 's|@''REPLACE_STRFTIME''@|$(REPLACE_STRFTIME)|g' \ + -e 's|@''REPLACE_TIMEGM''@|$(REPLACE_TIMEGM)|g' \ + -e 's|@''REPLACE_TZSET''@|$(REPLACE_TZSET)|g' \ + -e 's|@''PTHREAD_H_DEFINES_STRUCT_TIMESPEC''@|$(PTHREAD_H_DEFINES_STRUCT_TIMESPEC)|g' \ + -e 's|@''SYS_TIME_H_DEFINES_STRUCT_TIMESPEC''@|$(SYS_TIME_H_DEFINES_STRUCT_TIMESPEC)|g' \ + -e 's|@''TIME_H_DEFINES_STRUCT_TIMESPEC''@|$(TIME_H_DEFINES_STRUCT_TIMESPEC)|g' \ + -e 's|@''UNISTD_H_DEFINES_STRUCT_TIMESPEC''@|$(UNISTD_H_DEFINES_STRUCT_TIMESPEC)|g' \ + -e 's|@''TIME_H_DEFINES_TIME_UTC''@|$(TIME_H_DEFINES_TIME_UTC)|g' \ + -e '/definitions of _GL_FUNCDECL_RPL/r $(CXXDEFS_H)' \ + -e '/definition of _GL_ARG_NONNULL/r $(ARG_NONNULL_H)' \ + -e '/definition of _GL_WARN_ON_USE/r $(WARN_ON_USE_H)' \ + $(srcdir)/time.in.h > $@-t + $(AM_V_at)mv $@-t $@ + +# We need the following in order to create an empty placeholder for +# when the system doesn't have one. +unistd.h: unistd.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNULL_H) $(WARN_ON_USE_H) + $(gl_V_at)$(SED_HEADER_STDOUT) \ + -e 's|@''GUARD_PREFIX''@|GL|g' \ + -e 's|@''HAVE_UNISTD_H''@|$(HAVE_UNISTD_H)|g' \ + -e 's|@''INCLUDE_NEXT''@|$(INCLUDE_NEXT)|g' \ + -e 's|@''PRAGMA_SYSTEM_HEADER''@|#pragma GCC system_header|g' \ + -e 's|@''PRAGMA_COLUMNS''@||g' \ + -e 's|@''NEXT_UNISTD_H''@|$(NEXT_UNISTD_H)|g' \ + -e 's|@''WINDOWS_64_BIT_OFF_T''@|$(WINDOWS_64_BIT_OFF_T)|g' \ + -e 's/@''GNULIB_ACCESS''@/$(GL_GNULIB_ACCESS)/g' \ + -e 's/@''GNULIB_CHDIR''@/$(GL_GNULIB_CHDIR)/g' \ + -e 's/@''GNULIB_CHOWN''@/$(GL_GNULIB_CHOWN)/g' \ + -e 's/@''GNULIB_CLOSE''@/$(GL_GNULIB_CLOSE)/g' \ + -e 's/@''GNULIB_COPY_FILE_RANGE''@/$(GL_GNULIB_COPY_FILE_RANGE)/g' \ + -e 's/@''GNULIB_DUP''@/$(GL_GNULIB_DUP)/g' \ + -e 's/@''GNULIB_DUP2''@/$(GL_GNULIB_DUP2)/g' \ + -e 's/@''GNULIB_DUP3''@/$(GL_GNULIB_DUP3)/g' \ + -e 's/@''GNULIB_ENVIRON''@/$(GL_GNULIB_ENVIRON)/g' \ + -e 's/@''GNULIB_EUIDACCESS''@/$(GL_GNULIB_EUIDACCESS)/g' \ + -e 's/@''GNULIB_EXECL''@/$(GL_GNULIB_EXECL)/g' \ + -e 's/@''GNULIB_EXECLE''@/$(GL_GNULIB_EXECLE)/g' \ + -e 's/@''GNULIB_EXECLP''@/$(GL_GNULIB_EXECLP)/g' \ + -e 's/@''GNULIB_EXECV''@/$(GL_GNULIB_EXECV)/g' \ + -e 's/@''GNULIB_EXECVE''@/$(GL_GNULIB_EXECVE)/g' \ + -e 's/@''GNULIB_EXECVP''@/$(GL_GNULIB_EXECVP)/g' \ + -e 's/@''GNULIB_EXECVPE''@/$(GL_GNULIB_EXECVPE)/g' \ + -e 's/@''GNULIB_FACCESSAT''@/$(GL_GNULIB_FACCESSAT)/g' \ + -e 's/@''GNULIB_FCHDIR''@/$(GL_GNULIB_FCHDIR)/g' \ + -e 's/@''GNULIB_FCHOWNAT''@/$(GL_GNULIB_FCHOWNAT)/g' \ + -e 's/@''GNULIB_FDATASYNC''@/$(GL_GNULIB_FDATASYNC)/g' \ + -e 's/@''GNULIB_FSYNC''@/$(GL_GNULIB_FSYNC)/g' \ + -e 's/@''GNULIB_FTRUNCATE''@/$(GL_GNULIB_FTRUNCATE)/g' \ + -e 's/@''GNULIB_GETCWD''@/$(GL_GNULIB_GETCWD)/g' \ + -e 's/@''GNULIB_GETDOMAINNAME''@/$(GL_GNULIB_GETDOMAINNAME)/g' \ + -e 's/@''GNULIB_GETDTABLESIZE''@/$(GL_GNULIB_GETDTABLESIZE)/g' \ + -e 's/@''GNULIB_GETENTROPY''@/$(GL_GNULIB_GETENTROPY)/g' \ + -e 's/@''GNULIB_GETGROUPS''@/$(GL_GNULIB_GETGROUPS)/g' \ + -e 's/@''GNULIB_GETHOSTNAME''@/$(GL_GNULIB_GETHOSTNAME)/g' \ + -e 's/@''GNULIB_GETLOGIN''@/$(GL_GNULIB_GETLOGIN)/g' \ + -e 's/@''GNULIB_GETLOGIN_R''@/$(GL_GNULIB_GETLOGIN_R)/g' \ + -e 's/@''GNULIB_GETOPT_POSIX''@/$(GL_GNULIB_GETOPT_POSIX)/g' \ + -e 's/@''GNULIB_GETPAGESIZE''@/$(GL_GNULIB_GETPAGESIZE)/g' \ + -e 's/@''GNULIB_GETPASS''@/$(GL_GNULIB_GETPASS)/g' \ + -e 's/@''GNULIB_GETPASS_GNU''@/$(GL_GNULIB_GETPASS_GNU)/g' \ + -e 's/@''GNULIB_GETUSERSHELL''@/$(GL_GNULIB_GETUSERSHELL)/g' \ + -e 's/@''GNULIB_GROUP_MEMBER''@/$(GL_GNULIB_GROUP_MEMBER)/g' \ + -e 's/@''GNULIB_ISATTY''@/$(GL_GNULIB_ISATTY)/g' \ + -e 's/@''GNULIB_LCHOWN''@/$(GL_GNULIB_LCHOWN)/g' \ + -e 's/@''GNULIB_LINK''@/$(GL_GNULIB_LINK)/g' \ + -e 's/@''GNULIB_LINKAT''@/$(GL_GNULIB_LINKAT)/g' \ + -e 's/@''GNULIB_LSEEK''@/$(GL_GNULIB_LSEEK)/g' \ + -e 's/@''GNULIB_PIPE''@/$(GL_GNULIB_PIPE)/g' \ + -e 's/@''GNULIB_PIPE2''@/$(GL_GNULIB_PIPE2)/g' \ + -e 's/@''GNULIB_PREAD''@/$(GL_GNULIB_PREAD)/g' \ + -e 's/@''GNULIB_PWRITE''@/$(GL_GNULIB_PWRITE)/g' \ + -e 's/@''GNULIB_READ''@/$(GL_GNULIB_READ)/g' \ + -e 's/@''GNULIB_READLINK''@/$(GL_GNULIB_READLINK)/g' \ + -e 's/@''GNULIB_READLINKAT''@/$(GL_GNULIB_READLINKAT)/g' \ + -e 's/@''GNULIB_RMDIR''@/$(GL_GNULIB_RMDIR)/g' \ + -e 's/@''GNULIB_SETHOSTNAME''@/$(GL_GNULIB_SETHOSTNAME)/g' \ + -e 's/@''GNULIB_SLEEP''@/$(GL_GNULIB_SLEEP)/g' \ + -e 's/@''GNULIB_SYMLINK''@/$(GL_GNULIB_SYMLINK)/g' \ + -e 's/@''GNULIB_SYMLINKAT''@/$(GL_GNULIB_SYMLINKAT)/g' \ + -e 's/@''GNULIB_TRUNCATE''@/$(GL_GNULIB_TRUNCATE)/g' \ + -e 's/@''GNULIB_TTYNAME_R''@/$(GL_GNULIB_TTYNAME_R)/g' \ + -e 's/@''GNULIB_UNISTD_H_GETOPT''@/0$(GL_GNULIB_UNISTD_H_GETOPT)/g' \ + -e 's/@''GNULIB_UNISTD_H_NONBLOCKING''@/$(GL_GNULIB_UNISTD_H_NONBLOCKING)/g' \ + -e 's/@''GNULIB_UNISTD_H_SIGPIPE''@/$(GL_GNULIB_UNISTD_H_SIGPIPE)/g' \ + -e 's/@''GNULIB_UNLINK''@/$(GL_GNULIB_UNLINK)/g' \ + -e 's/@''GNULIB_UNLINKAT''@/$(GL_GNULIB_UNLINKAT)/g' \ + -e 's/@''GNULIB_USLEEP''@/$(GL_GNULIB_USLEEP)/g' \ + -e 's/@''GNULIB_WRITE''@/$(GL_GNULIB_WRITE)/g' \ + -e 's/@''GNULIB_MDA_ACCESS''@/$(GL_GNULIB_MDA_ACCESS)/g' \ + -e 's/@''GNULIB_MDA_CHDIR''@/$(GL_GNULIB_MDA_CHDIR)/g' \ + -e 's/@''GNULIB_MDA_CLOSE''@/$(GL_GNULIB_MDA_CLOSE)/g' \ + -e 's/@''GNULIB_MDA_DUP''@/$(GL_GNULIB_MDA_DUP)/g' \ + -e 's/@''GNULIB_MDA_DUP2''@/$(GL_GNULIB_MDA_DUP2)/g' \ + -e 's/@''GNULIB_MDA_EXECL''@/$(GL_GNULIB_MDA_EXECL)/g' \ + -e 's/@''GNULIB_MDA_EXECLE''@/$(GL_GNULIB_MDA_EXECLE)/g' \ + -e 's/@''GNULIB_MDA_EXECLP''@/$(GL_GNULIB_MDA_EXECLP)/g' \ + -e 's/@''GNULIB_MDA_EXECV''@/$(GL_GNULIB_MDA_EXECV)/g' \ + -e 's/@''GNULIB_MDA_EXECVE''@/$(GL_GNULIB_MDA_EXECVE)/g' \ + -e 's/@''GNULIB_MDA_EXECVP''@/$(GL_GNULIB_MDA_EXECVP)/g' \ + -e 's/@''GNULIB_MDA_EXECVPE''@/$(GL_GNULIB_MDA_EXECVPE)/g' \ + -e 's/@''GNULIB_MDA_GETCWD''@/$(GL_GNULIB_MDA_GETCWD)/g' \ + -e 's/@''GNULIB_MDA_GETPID''@/$(GL_GNULIB_MDA_GETPID)/g' \ + -e 's/@''GNULIB_MDA_ISATTY''@/$(GL_GNULIB_MDA_ISATTY)/g' \ + -e 's/@''GNULIB_MDA_LSEEK''@/$(GL_GNULIB_MDA_LSEEK)/g' \ + -e 's/@''GNULIB_MDA_READ''@/$(GL_GNULIB_MDA_READ)/g' \ + -e 's/@''GNULIB_MDA_RMDIR''@/$(GL_GNULIB_MDA_RMDIR)/g' \ + -e 's/@''GNULIB_MDA_SWAB''@/$(GL_GNULIB_MDA_SWAB)/g' \ + -e 's/@''GNULIB_MDA_UNLINK''@/$(GL_GNULIB_MDA_UNLINK)/g' \ + -e 's/@''GNULIB_MDA_WRITE''@/$(GL_GNULIB_MDA_WRITE)/g' \ + < $(srcdir)/unistd.in.h | \ + sed -e 's|@''HAVE_CHOWN''@|$(HAVE_CHOWN)|g' \ + -e 's|@''HAVE_COPY_FILE_RANGE''@|$(HAVE_COPY_FILE_RANGE)|g' \ + -e 's|@''HAVE_DUP3''@|$(HAVE_DUP3)|g' \ + -e 's|@''HAVE_EUIDACCESS''@|$(HAVE_EUIDACCESS)|g' \ + -e 's|@''HAVE_EXECVPE''@|$(HAVE_EXECVPE)|g' \ + -e 's|@''HAVE_FACCESSAT''@|$(HAVE_FACCESSAT)|g' \ + -e 's|@''HAVE_FCHDIR''@|$(HAVE_FCHDIR)|g' \ + -e 's|@''HAVE_FCHOWNAT''@|$(HAVE_FCHOWNAT)|g' \ + -e 's|@''HAVE_FDATASYNC''@|$(HAVE_FDATASYNC)|g' \ + -e 's|@''HAVE_FSYNC''@|$(HAVE_FSYNC)|g' \ + -e 's|@''HAVE_FTRUNCATE''@|$(HAVE_FTRUNCATE)|g' \ + -e 's|@''HAVE_GETDTABLESIZE''@|$(HAVE_GETDTABLESIZE)|g' \ + -e 's|@''HAVE_GETENTROPY''@|$(HAVE_GETENTROPY)|g' \ + -e 's|@''HAVE_GETGROUPS''@|$(HAVE_GETGROUPS)|g' \ + -e 's|@''HAVE_GETHOSTNAME''@|$(HAVE_GETHOSTNAME)|g' \ + -e 's|@''HAVE_GETPAGESIZE''@|$(HAVE_GETPAGESIZE)|g' \ + -e 's|@''HAVE_GETPASS''@|$(HAVE_GETPASS)|g' \ + -e 's|@''HAVE_GROUP_MEMBER''@|$(HAVE_GROUP_MEMBER)|g' \ + -e 's|@''HAVE_LCHOWN''@|$(HAVE_LCHOWN)|g' \ + -e 's|@''HAVE_LINK''@|$(HAVE_LINK)|g' \ + -e 's|@''HAVE_LINKAT''@|$(HAVE_LINKAT)|g' \ + -e 's|@''HAVE_PIPE''@|$(HAVE_PIPE)|g' \ + -e 's|@''HAVE_PIPE2''@|$(HAVE_PIPE2)|g' \ + -e 's|@''HAVE_PREAD''@|$(HAVE_PREAD)|g' \ + -e 's|@''HAVE_PWRITE''@|$(HAVE_PWRITE)|g' \ + -e 's|@''HAVE_READLINK''@|$(HAVE_READLINK)|g' \ + -e 's|@''HAVE_READLINKAT''@|$(HAVE_READLINKAT)|g' \ + -e 's|@''HAVE_SETHOSTNAME''@|$(HAVE_SETHOSTNAME)|g' \ + -e 's|@''HAVE_SLEEP''@|$(HAVE_SLEEP)|g' \ + -e 's|@''HAVE_SYMLINK''@|$(HAVE_SYMLINK)|g' \ + -e 's|@''HAVE_SYMLINKAT''@|$(HAVE_SYMLINKAT)|g' \ + -e 's|@''HAVE_UNLINKAT''@|$(HAVE_UNLINKAT)|g' \ + -e 's|@''HAVE_USLEEP''@|$(HAVE_USLEEP)|g' \ + -e 's|@''HAVE_DECL_ENVIRON''@|$(HAVE_DECL_ENVIRON)|g' \ + -e 's|@''HAVE_DECL_EXECVPE''@|$(HAVE_DECL_EXECVPE)|g' \ + -e 's|@''HAVE_DECL_FCHDIR''@|$(HAVE_DECL_FCHDIR)|g' \ + -e 's|@''HAVE_DECL_FDATASYNC''@|$(HAVE_DECL_FDATASYNC)|g' \ + -e 's|@''HAVE_DECL_GETDOMAINNAME''@|$(HAVE_DECL_GETDOMAINNAME)|g' \ + -e 's|@''HAVE_DECL_GETLOGIN''@|$(HAVE_DECL_GETLOGIN)|g' \ + -e 's|@''HAVE_DECL_GETLOGIN_R''@|$(HAVE_DECL_GETLOGIN_R)|g' \ + -e 's|@''HAVE_DECL_GETPAGESIZE''@|$(HAVE_DECL_GETPAGESIZE)|g' \ + -e 's|@''HAVE_DECL_GETUSERSHELL''@|$(HAVE_DECL_GETUSERSHELL)|g' \ + -e 's|@''HAVE_DECL_SETHOSTNAME''@|$(HAVE_DECL_SETHOSTNAME)|g' \ + -e 's|@''HAVE_DECL_TRUNCATE''@|$(HAVE_DECL_TRUNCATE)|g' \ + -e 's|@''HAVE_DECL_TTYNAME_R''@|$(HAVE_DECL_TTYNAME_R)|g' \ + -e 's|@''HAVE_OS_H''@|$(HAVE_OS_H)|g' \ + -e 's|@''HAVE_SYS_PARAM_H''@|$(HAVE_SYS_PARAM_H)|g' \ + | \ + sed -e 's|@''REPLACE_ACCESS''@|$(REPLACE_ACCESS)|g' \ + -e 's|@''REPLACE_CHOWN''@|$(REPLACE_CHOWN)|g' \ + -e 's|@''REPLACE_CLOSE''@|$(REPLACE_CLOSE)|g' \ + -e 's|@''REPLACE_COPY_FILE_RANGE''@|$(REPLACE_COPY_FILE_RANGE)|g' \ + -e 's|@''REPLACE_DUP''@|$(REPLACE_DUP)|g' \ + -e 's|@''REPLACE_DUP2''@|$(REPLACE_DUP2)|g' \ + -e 's|@''REPLACE_EXECL''@|$(REPLACE_EXECL)|g' \ + -e 's|@''REPLACE_EXECLE''@|$(REPLACE_EXECLE)|g' \ + -e 's|@''REPLACE_EXECLP''@|$(REPLACE_EXECLP)|g' \ + -e 's|@''REPLACE_EXECV''@|$(REPLACE_EXECV)|g' \ + -e 's|@''REPLACE_EXECVE''@|$(REPLACE_EXECVE)|g' \ + -e 's|@''REPLACE_EXECVP''@|$(REPLACE_EXECVP)|g' \ + -e 's|@''REPLACE_EXECVPE''@|$(REPLACE_EXECVPE)|g' \ + -e 's|@''REPLACE_FACCESSAT''@|$(REPLACE_FACCESSAT)|g' \ + -e 's|@''REPLACE_FCHOWNAT''@|$(REPLACE_FCHOWNAT)|g' \ + -e 's|@''REPLACE_FTRUNCATE''@|$(REPLACE_FTRUNCATE)|g' \ + -e 's|@''REPLACE_GETCWD''@|$(REPLACE_GETCWD)|g' \ + -e 's|@''REPLACE_GETDOMAINNAME''@|$(REPLACE_GETDOMAINNAME)|g' \ + -e 's|@''REPLACE_GETDTABLESIZE''@|$(REPLACE_GETDTABLESIZE)|g' \ + -e 's|@''REPLACE_GETLOGIN_R''@|$(REPLACE_GETLOGIN_R)|g' \ + -e 's|@''REPLACE_GETGROUPS''@|$(REPLACE_GETGROUPS)|g' \ + -e 's|@''REPLACE_GETPAGESIZE''@|$(REPLACE_GETPAGESIZE)|g' \ + -e 's|@''REPLACE_GETPASS''@|$(REPLACE_GETPASS)|g' \ + -e 's|@''REPLACE_GETPASS_FOR_GETPASS_GNU''@|$(REPLACE_GETPASS_FOR_GETPASS_GNU)|g' \ + -e 's|@''REPLACE_ISATTY''@|$(REPLACE_ISATTY)|g' \ + -e 's|@''REPLACE_LCHOWN''@|$(REPLACE_LCHOWN)|g' \ + -e 's|@''REPLACE_LINK''@|$(REPLACE_LINK)|g' \ + -e 's|@''REPLACE_LINKAT''@|$(REPLACE_LINKAT)|g' \ + -e 's|@''REPLACE_LSEEK''@|$(REPLACE_LSEEK)|g' \ + -e 's|@''REPLACE_PREAD''@|$(REPLACE_PREAD)|g' \ + -e 's|@''REPLACE_PWRITE''@|$(REPLACE_PWRITE)|g' \ + -e 's|@''REPLACE_READ''@|$(REPLACE_READ)|g' \ + -e 's|@''REPLACE_READLINK''@|$(REPLACE_READLINK)|g' \ + -e 's|@''REPLACE_READLINKAT''@|$(REPLACE_READLINKAT)|g' \ + -e 's|@''REPLACE_RMDIR''@|$(REPLACE_RMDIR)|g' \ + -e 's|@''REPLACE_SLEEP''@|$(REPLACE_SLEEP)|g' \ + -e 's|@''REPLACE_SYMLINK''@|$(REPLACE_SYMLINK)|g' \ + -e 's|@''REPLACE_SYMLINKAT''@|$(REPLACE_SYMLINKAT)|g' \ + -e 's|@''REPLACE_TRUNCATE''@|$(REPLACE_TRUNCATE)|g' \ + -e 's|@''REPLACE_TTYNAME_R''@|$(REPLACE_TTYNAME_R)|g' \ + -e 's|@''REPLACE_UNLINK''@|$(REPLACE_UNLINK)|g' \ + -e 's|@''REPLACE_UNLINKAT''@|$(REPLACE_UNLINKAT)|g' \ + -e 's|@''REPLACE_USLEEP''@|$(REPLACE_USLEEP)|g' \ + -e 's|@''REPLACE_WRITE''@|$(REPLACE_WRITE)|g' \ + -e 's|@''UNISTD_H_HAVE_SYS_RANDOM_H''@|$(UNISTD_H_HAVE_SYS_RANDOM_H)|g' \ + -e 's|@''UNISTD_H_HAVE_WINSOCK2_H''@|$(UNISTD_H_HAVE_WINSOCK2_H)|g' \ + -e 's|@''UNISTD_H_HAVE_WINSOCK2_H_AND_USE_SOCKETS''@|$(UNISTD_H_HAVE_WINSOCK2_H_AND_USE_SOCKETS)|g' \ + -e '/definitions of _GL_FUNCDECL_RPL/r $(CXXDEFS_H)' \ + -e '/definition of _GL_ARG_NONNULL/r $(ARG_NONNULL_H)' \ + -e '/definition of _GL_WARN_ON_USE/r $(WARN_ON_USE_H)' \ + > $@-t + $(AM_V_at)mv $@-t $@ + +unitypes.h: unitypes.in.h + $(gl_V_at)$(SED_HEADER_TO_AT_t) $(srcdir)/unitypes.in.h + $(AM_V_at)mv $@-t $@ + +uniwidth.h: uniwidth.in.h + $(gl_V_at)$(SED_HEADER_TO_AT_t) $(srcdir)/uniwidth.in.h + $(AM_V_at)mv $@-t $@ + +# We need the following in order to create when the system +# version does not work standalone. +wchar.h: wchar.in.h $(top_builddir)/config.status $(CXXDEFS_H) $(ARG_NONNULL_H) $(WARN_ON_USE_H) + $(gl_V_at)$(SED_HEADER_STDOUT) \ + -e 's|@''GUARD_PREFIX''@|GL|g' \ + -e 's|@''INCLUDE_NEXT''@|$(INCLUDE_NEXT)|g' \ + -e 's|@''PRAGMA_SYSTEM_HEADER''@|#pragma GCC system_header|g' \ + -e 's|@''PRAGMA_COLUMNS''@||g' \ + -e 's|@''HAVE_FEATURES_H''@|$(HAVE_FEATURES_H)|g' \ + -e 's|@''NEXT_WCHAR_H''@|$(NEXT_WCHAR_H)|g' \ + -e 's|@''HAVE_WCHAR_H''@|$(HAVE_WCHAR_H)|g' \ + -e 's/@''HAVE_CRTDEFS_H''@/$(HAVE_CRTDEFS_H)/g' \ + -e 's/@''GNULIBHEADERS_OVERRIDE_WINT_T''@/$(GNULIBHEADERS_OVERRIDE_WINT_T)/g' \ + -e 's/@''GNULIB_BTOWC''@/$(GL_GNULIB_BTOWC)/g' \ + -e 's/@''GNULIB_WCTOB''@/$(GL_GNULIB_WCTOB)/g' \ + -e 's/@''GNULIB_MBSINIT''@/$(GL_GNULIB_MBSINIT)/g' \ + -e 's/@''GNULIB_MBRTOWC''@/$(GL_GNULIB_MBRTOWC)/g' \ + -e 's/@''GNULIB_MBRLEN''@/$(GL_GNULIB_MBRLEN)/g' \ + -e 's/@''GNULIB_MBSRTOWCS''@/$(GL_GNULIB_MBSRTOWCS)/g' \ + -e 's/@''GNULIB_MBSNRTOWCS''@/$(GL_GNULIB_MBSNRTOWCS)/g' \ + -e 's/@''GNULIB_WCRTOMB''@/$(GL_GNULIB_WCRTOMB)/g' \ + -e 's/@''GNULIB_WCSRTOMBS''@/$(GL_GNULIB_WCSRTOMBS)/g' \ + -e 's/@''GNULIB_WCSNRTOMBS''@/$(GL_GNULIB_WCSNRTOMBS)/g' \ + -e 's/@''GNULIB_WCWIDTH''@/$(GL_GNULIB_WCWIDTH)/g' \ + -e 's/@''GNULIB_WMEMCHR''@/$(GL_GNULIB_WMEMCHR)/g' \ + -e 's/@''GNULIB_WMEMCMP''@/$(GL_GNULIB_WMEMCMP)/g' \ + -e 's/@''GNULIB_WMEMCPY''@/$(GL_GNULIB_WMEMCPY)/g' \ + -e 's/@''GNULIB_WMEMMOVE''@/$(GL_GNULIB_WMEMMOVE)/g' \ + -e 's/@''GNULIB_WMEMPCPY''@/$(GL_GNULIB_WMEMPCPY)/g' \ + -e 's/@''GNULIB_WMEMSET''@/$(GL_GNULIB_WMEMSET)/g' \ + -e 's/@''GNULIB_WCSLEN''@/$(GL_GNULIB_WCSLEN)/g' \ + -e 's/@''GNULIB_WCSNLEN''@/$(GL_GNULIB_WCSNLEN)/g' \ + -e 's/@''GNULIB_WCSCPY''@/$(GL_GNULIB_WCSCPY)/g' \ + -e 's/@''GNULIB_WCPCPY''@/$(GL_GNULIB_WCPCPY)/g' \ + -e 's/@''GNULIB_WCSNCPY''@/$(GL_GNULIB_WCSNCPY)/g' \ + -e 's/@''GNULIB_WCPNCPY''@/$(GL_GNULIB_WCPNCPY)/g' \ + -e 's/@''GNULIB_WCSCAT''@/$(GL_GNULIB_WCSCAT)/g' \ + -e 's/@''GNULIB_WCSNCAT''@/$(GL_GNULIB_WCSNCAT)/g' \ + -e 's/@''GNULIB_WCSCMP''@/$(GL_GNULIB_WCSCMP)/g' \ + -e 's/@''GNULIB_WCSNCMP''@/$(GL_GNULIB_WCSNCMP)/g' \ + -e 's/@''GNULIB_WCSCASECMP''@/$(GL_GNULIB_WCSCASECMP)/g' \ + -e 's/@''GNULIB_WCSNCASECMP''@/$(GL_GNULIB_WCSNCASECMP)/g' \ + -e 's/@''GNULIB_WCSCOLL''@/$(GL_GNULIB_WCSCOLL)/g' \ + -e 's/@''GNULIB_WCSXFRM''@/$(GL_GNULIB_WCSXFRM)/g' \ + -e 's/@''GNULIB_WCSDUP''@/$(GL_GNULIB_WCSDUP)/g' \ + -e 's/@''GNULIB_WCSCHR''@/$(GL_GNULIB_WCSCHR)/g' \ + -e 's/@''GNULIB_WCSRCHR''@/$(GL_GNULIB_WCSRCHR)/g' \ + -e 's/@''GNULIB_WCSCSPN''@/$(GL_GNULIB_WCSCSPN)/g' \ + -e 's/@''GNULIB_WCSSPN''@/$(GL_GNULIB_WCSSPN)/g' \ + -e 's/@''GNULIB_WCSPBRK''@/$(GL_GNULIB_WCSPBRK)/g' \ + -e 's/@''GNULIB_WCSSTR''@/$(GL_GNULIB_WCSSTR)/g' \ + -e 's/@''GNULIB_WCSTOK''@/$(GL_GNULIB_WCSTOK)/g' \ + -e 's/@''GNULIB_WCSWIDTH''@/$(GL_GNULIB_WCSWIDTH)/g' \ + -e 's/@''GNULIB_WCSFTIME''@/$(GL_GNULIB_WCSFTIME)/g' \ + -e 's/@''GNULIB_MDA_WCSDUP''@/$(GL_GNULIB_MDA_WCSDUP)/g' \ + -e 's/@''GNULIB_FREE_POSIX''@/$(GL_GNULIB_FREE_POSIX)/g' \ + < $(srcdir)/wchar.in.h | \ + sed -e 's|@''HAVE_WINT_T''@|$(HAVE_WINT_T)|g' \ + -e 's|@''HAVE_BTOWC''@|$(HAVE_BTOWC)|g' \ + -e 's|@''HAVE_MBSINIT''@|$(HAVE_MBSINIT)|g' \ + -e 's|@''HAVE_MBRTOWC''@|$(HAVE_MBRTOWC)|g' \ + -e 's|@''HAVE_MBRLEN''@|$(HAVE_MBRLEN)|g' \ + -e 's|@''HAVE_MBSRTOWCS''@|$(HAVE_MBSRTOWCS)|g' \ + -e 's|@''HAVE_MBSNRTOWCS''@|$(HAVE_MBSNRTOWCS)|g' \ + -e 's|@''HAVE_WCRTOMB''@|$(HAVE_WCRTOMB)|g' \ + -e 's|@''HAVE_WCSRTOMBS''@|$(HAVE_WCSRTOMBS)|g' \ + -e 's|@''HAVE_WCSNRTOMBS''@|$(HAVE_WCSNRTOMBS)|g' \ + -e 's|@''HAVE_WMEMCHR''@|$(HAVE_WMEMCHR)|g' \ + -e 's|@''HAVE_WMEMCMP''@|$(HAVE_WMEMCMP)|g' \ + -e 's|@''HAVE_WMEMCPY''@|$(HAVE_WMEMCPY)|g' \ + -e 's|@''HAVE_WMEMMOVE''@|$(HAVE_WMEMMOVE)|g' \ + -e 's|@''HAVE_WMEMPCPY''@|$(HAVE_WMEMPCPY)|g' \ + -e 's|@''HAVE_WMEMSET''@|$(HAVE_WMEMSET)|g' \ + -e 's|@''HAVE_WCSLEN''@|$(HAVE_WCSLEN)|g' \ + -e 's|@''HAVE_WCSNLEN''@|$(HAVE_WCSNLEN)|g' \ + -e 's|@''HAVE_WCSCPY''@|$(HAVE_WCSCPY)|g' \ + -e 's|@''HAVE_WCPCPY''@|$(HAVE_WCPCPY)|g' \ + -e 's|@''HAVE_WCSNCPY''@|$(HAVE_WCSNCPY)|g' \ + -e 's|@''HAVE_WCPNCPY''@|$(HAVE_WCPNCPY)|g' \ + -e 's|@''HAVE_WCSCAT''@|$(HAVE_WCSCAT)|g' \ + -e 's|@''HAVE_WCSNCAT''@|$(HAVE_WCSNCAT)|g' \ + -e 's|@''HAVE_WCSCMP''@|$(HAVE_WCSCMP)|g' \ + -e 's|@''HAVE_WCSNCMP''@|$(HAVE_WCSNCMP)|g' \ + -e 's|@''HAVE_WCSCASECMP''@|$(HAVE_WCSCASECMP)|g' \ + -e 's|@''HAVE_WCSNCASECMP''@|$(HAVE_WCSNCASECMP)|g' \ + -e 's|@''HAVE_WCSCOLL''@|$(HAVE_WCSCOLL)|g' \ + -e 's|@''HAVE_WCSXFRM''@|$(HAVE_WCSXFRM)|g' \ + -e 's|@''HAVE_WCSDUP''@|$(HAVE_WCSDUP)|g' \ + -e 's|@''HAVE_WCSCHR''@|$(HAVE_WCSCHR)|g' \ + -e 's|@''HAVE_WCSRCHR''@|$(HAVE_WCSRCHR)|g' \ + -e 's|@''HAVE_WCSCSPN''@|$(HAVE_WCSCSPN)|g' \ + -e 's|@''HAVE_WCSSPN''@|$(HAVE_WCSSPN)|g' \ + -e 's|@''HAVE_WCSPBRK''@|$(HAVE_WCSPBRK)|g' \ + -e 's|@''HAVE_WCSSTR''@|$(HAVE_WCSSTR)|g' \ + -e 's|@''HAVE_WCSTOK''@|$(HAVE_WCSTOK)|g' \ + -e 's|@''HAVE_WCSWIDTH''@|$(HAVE_WCSWIDTH)|g' \ + -e 's|@''HAVE_WCSFTIME''@|$(HAVE_WCSFTIME)|g' \ + -e 's|@''HAVE_DECL_WCTOB''@|$(HAVE_DECL_WCTOB)|g' \ + -e 's|@''HAVE_DECL_WCSDUP''@|$(HAVE_DECL_WCSDUP)|g' \ + -e 's|@''HAVE_DECL_WCWIDTH''@|$(HAVE_DECL_WCWIDTH)|g' \ + | \ + sed -e 's|@''REPLACE_MBSTATE_T''@|$(REPLACE_MBSTATE_T)|g' \ + -e 's|@''REPLACE_BTOWC''@|$(REPLACE_BTOWC)|g' \ + -e 's|@''REPLACE_WCTOB''@|$(REPLACE_WCTOB)|g' \ + -e 's|@''REPLACE_FREE''@|$(REPLACE_FREE)|g' \ + -e 's|@''REPLACE_MBSINIT''@|$(REPLACE_MBSINIT)|g' \ + -e 's|@''REPLACE_MBRTOWC''@|$(REPLACE_MBRTOWC)|g' \ + -e 's|@''REPLACE_MBRLEN''@|$(REPLACE_MBRLEN)|g' \ + -e 's|@''REPLACE_MBSRTOWCS''@|$(REPLACE_MBSRTOWCS)|g' \ + -e 's|@''REPLACE_MBSNRTOWCS''@|$(REPLACE_MBSNRTOWCS)|g' \ + -e 's|@''REPLACE_WCRTOMB''@|$(REPLACE_WCRTOMB)|g' \ + -e 's|@''REPLACE_WCSRTOMBS''@|$(REPLACE_WCSRTOMBS)|g' \ + -e 's|@''REPLACE_WCSNRTOMBS''@|$(REPLACE_WCSNRTOMBS)|g' \ + -e 's|@''REPLACE_WCWIDTH''@|$(REPLACE_WCWIDTH)|g' \ + -e 's|@''REPLACE_WCSWIDTH''@|$(REPLACE_WCSWIDTH)|g' \ + -e 's|@''REPLACE_WCSFTIME''@|$(REPLACE_WCSFTIME)|g' \ + -e 's|@''REPLACE_WCSTOK''@|$(REPLACE_WCSTOK)|g' \ + -e '/definitions of _GL_FUNCDECL_RPL/r $(CXXDEFS_H)' \ + -e '/definition of _GL_ARG_NONNULL/r $(ARG_NONNULL_H)' \ + -e '/definition of _GL_WARN_ON_USE/r $(WARN_ON_USE_H)' \ + > $@-t + $(AM_V_at)mv $@-t $@ + +mostlyclean-local: mostlyclean-generic + @for dir in '' $(MOSTLYCLEANDIRS); do \ + if test -n "$$dir" && test -d $$dir; then \ + echo "rmdir $$dir"; rmdir $$dir; \ + fi; \ + done; \ + : +distclean-local: distclean-gnulib-libobjs +distclean-gnulib-libobjs: + -rm -f +maintainer-clean-local: distclean-gnulib-libobjs + +# 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: diff --git a/srclib/malloc/.dirstamp b/srclib/malloc/.dirstamp new file mode 100644 index 0000000..e69de29 diff --git a/srclib/uniwidth/.dirstamp b/srclib/uniwidth/.dirstamp new file mode 100644 index 0000000..e69de29 diff --git a/stamp-h1 b/stamp-h1 new file mode 100644 index 0000000..4547fe1 --- /dev/null +++ b/stamp-h1 @@ -0,0 +1 @@ +timestamp for config.h diff --git a/tests/Makefile b/tests/Makefile new file mode 100644 index 0000000..e8758c7 --- /dev/null +++ b/tests/Makefile @@ -0,0 +1,531 @@ +# Makefile for libiconv/tests + +#### Start of system configuration section. #### + +# Directories used by "make": +srcdir = . + +# Programs used by "make": +CC = gcc +CFLAGS = -g -O2 +CPPFLAGS = +LDFLAGS = +INCLUDES = -I. -I$(srcdir) -I../include -I$(srcdir)/../include -I../srclib -I$(srcdir)/../srclib -I.. +LIBTOOL = /bin/sh $(top_builddir)/libtool +LIBTOOL_COMPILE = $(LIBTOOL) --mode=compile +LIBTOOL_LINK = $(LIBTOOL) --mode=link +LIBTOOL_INSTALL = $(LIBTOOL) --mode=install +LIBTOOL_UNINSTALL = $(LIBTOOL) --mode=uninstall +RM = rm -f + + +#### End of system configuration section. #### + +SHELL = /bin/sh + +# Needed by $(LIBTOOL). +top_builddir = .. + +all : + +check : all table-from table-to ../src/iconv_no_i18n is-native test-shiftseq test-to-wchar + $(SHELL) $(srcdir)/check-stateless $(srcdir) ASCII +# /* General multi-byte encodings */ + $(CC) $(LDFLAGS) $(INCLUDES) $(CFLAGS) $(CPPFLAGS) $(srcdir)/genutf8.c ../srclib/libicrt.a -o genutf8 && \ + ./genutf8 > UTF-8.TXT && \ + $(SHELL) $(srcdir)/check-stateless . UTF-8 && \ + $(RM) -r genutf8 genutf8.dSYM UTF-8.TXT + $(SHELL) $(srcdir)/check-stateful $(srcdir) UCS-2BE + $(SHELL) $(srcdir)/check-stateful $(srcdir) UCS-2LE + $(SHELL) $(srcdir)/check-stateful $(srcdir) UCS-4BE + $(SHELL) $(srcdir)/check-stateful $(srcdir) UCS-4LE + $(SHELL) $(srcdir)/check-stateful $(srcdir) UTF-16 + $(SHELL) $(srcdir)/check-stateful $(srcdir) UTF-16BE + $(SHELL) $(srcdir)/check-stateful $(srcdir) UTF-16LE + $(SHELL) $(srcdir)/check-stateful $(srcdir) UTF-32 + $(SHELL) $(srcdir)/check-stateful $(srcdir) UTF-32BE + $(SHELL) $(srcdir)/check-stateful $(srcdir) UTF-32LE + $(SHELL) $(srcdir)/check-stateful $(srcdir) UTF-7 +# /* 8-bit encodings */ + $(SHELL) $(srcdir)/check-stateless $(srcdir) ISO-8859-1 + $(SHELL) $(srcdir)/check-stateless $(srcdir) ISO-8859-2 + $(SHELL) $(srcdir)/check-stateless $(srcdir) ISO-8859-3 + $(SHELL) $(srcdir)/check-stateless $(srcdir) ISO-8859-4 + $(SHELL) $(srcdir)/check-stateless $(srcdir) ISO-8859-5 + $(SHELL) $(srcdir)/check-stateless $(srcdir) ISO-8859-6 + $(SHELL) $(srcdir)/check-stateless $(srcdir) ISO-8859-7 + $(SHELL) $(srcdir)/check-stateless $(srcdir) ISO-8859-8 + $(SHELL) $(srcdir)/check-stateless $(srcdir) ISO-8859-9 + $(SHELL) $(srcdir)/check-stateless $(srcdir) ISO-8859-10 + $(SHELL) $(srcdir)/check-stateless $(srcdir) ISO-8859-11 + $(SHELL) $(srcdir)/check-stateless $(srcdir) ISO-8859-13 + $(SHELL) $(srcdir)/check-stateless $(srcdir) ISO-8859-14 + $(SHELL) $(srcdir)/check-stateless $(srcdir) ISO-8859-15 + $(SHELL) $(srcdir)/check-stateless $(srcdir) ISO-8859-16 + $(SHELL) $(srcdir)/check-stateless $(srcdir) KOI8-R + $(SHELL) $(srcdir)/check-stateless $(srcdir) KOI8-U + $(SHELL) $(srcdir)/check-stateless $(srcdir) KOI8-RU + $(SHELL) $(srcdir)/check-stateless $(srcdir) CP1250 + $(SHELL) $(srcdir)/check-stateless $(srcdir) CP1251 + $(SHELL) $(srcdir)/check-stateless $(srcdir) CP1252 + $(SHELL) $(srcdir)/check-stateless $(srcdir) CP1253 + $(SHELL) $(srcdir)/check-stateless $(srcdir) CP1254 + $(SHELL) $(srcdir)/check-stateless $(srcdir) CP1255 + $(SHELL) $(srcdir)/check-stateful $(srcdir) CP1255 + $(SHELL) $(srcdir)/check-stateless $(srcdir) CP1256 + $(SHELL) $(srcdir)/check-stateless $(srcdir) CP1257 + $(SHELL) $(srcdir)/check-stateless $(srcdir) CP1258 + $(SHELL) $(srcdir)/check-stateful $(srcdir) CP1258 + $(SHELL) $(srcdir)/check-stateless $(srcdir) CP850 + $(SHELL) $(srcdir)/check-stateless $(srcdir) CP862 + $(SHELL) $(srcdir)/check-stateless $(srcdir) CP866 + $(SHELL) $(srcdir)/check-stateless $(srcdir) CP1131 + $(SHELL) $(srcdir)/check-stateless $(srcdir) MacRoman + $(SHELL) $(srcdir)/check-stateless $(srcdir) MacCentralEurope + $(SHELL) $(srcdir)/check-stateless $(srcdir) MacIceland + $(SHELL) $(srcdir)/check-stateless $(srcdir) MacCroatian + $(SHELL) $(srcdir)/check-stateless $(srcdir) MacRomania + $(SHELL) $(srcdir)/check-stateless $(srcdir) MacCyrillic + $(SHELL) $(srcdir)/check-stateless $(srcdir) MacUkraine + $(SHELL) $(srcdir)/check-stateless $(srcdir) MacGreek + $(SHELL) $(srcdir)/check-stateless $(srcdir) MacTurkish + $(SHELL) $(srcdir)/check-stateless $(srcdir) MacHebrew + $(SHELL) $(srcdir)/check-stateless $(srcdir) MacArabic + $(SHELL) $(srcdir)/check-stateless $(srcdir) MacThai + $(SHELL) $(srcdir)/check-stateless $(srcdir) HP-ROMAN8 + $(SHELL) $(srcdir)/check-stateless $(srcdir) NEXTSTEP + $(SHELL) $(srcdir)/check-stateless $(srcdir) ARMSCII-8 + $(SHELL) $(srcdir)/check-stateless $(srcdir) Georgian-Academy + $(SHELL) $(srcdir)/check-stateless $(srcdir) Georgian-PS + $(SHELL) $(srcdir)/check-stateless $(srcdir) KOI8-T + $(SHELL) $(srcdir)/check-stateless $(srcdir) PT154 + $(SHELL) $(srcdir)/check-stateless $(srcdir) RK1048 + $(SHELL) $(srcdir)/check-stateless $(srcdir) MuleLao-1 + $(SHELL) $(srcdir)/check-stateless $(srcdir) CP1133 + $(SHELL) $(srcdir)/check-stateless $(srcdir) TIS-620 + $(SHELL) $(srcdir)/check-stateless $(srcdir) CP874 + $(SHELL) $(srcdir)/check-stateless $(srcdir) VISCII + $(SHELL) $(srcdir)/check-stateless $(srcdir) TCVN + $(SHELL) $(srcdir)/check-stateful $(srcdir) TCVN +# /* CJK character sets */ + $(SHELL) $(srcdir)/check-stateless $(srcdir) ISO646-JP + $(SHELL) $(srcdir)/check-stateless $(srcdir) JIS_X0201 +# $(SHELL) $(srcdir)/check-stateless $(srcdir) JIS_X0208 # redundant, see EUC-JP +# $(SHELL) $(srcdir)/check-stateless $(srcdir) JIS_X0212 # redundant, see EUC-JP + $(SHELL) $(srcdir)/check-stateless $(srcdir) ISO646-CN +# $(SHELL) $(srcdir)/check-stateless $(srcdir) GB_2312-80 # redundant, see EUC-CN + $(SHELL) $(srcdir)/check-stateless $(srcdir) ISO-IR-165 +# $(SHELL) $(srcdir)/check-stateless $(srcdir) KSC_5601 # redundant, see EUC-KR +# /* CJK encodings */ + $(SHELL) $(srcdir)/check-stateless $(srcdir) EUC-JP + $(SHELL) $(srcdir)/check-stateless $(srcdir) SHIFT_JIS + $(SHELL) $(srcdir)/check-stateless $(srcdir) CP932 + $(SHELL) $(srcdir)/check-stateful $(srcdir) ISO-2022-JP + $(SHELL) $(srcdir)/check-stateful $(srcdir) ISO-2022-JP-2 + $(SHELL) $(srcdir)/check-stateful $(srcdir) ISO-2022-JP-1 + $(SHELL) $(srcdir)/check-stateful $(srcdir) ISO-2022-JP-MS + $(SHELL) $(srcdir)/check-stateless $(srcdir) EUC-CN + $(SHELL) $(srcdir)/check-stateless $(srcdir) GBK + $(SHELL) $(srcdir)/check-stateless $(srcdir) CP936 + $(CC) $(LDFLAGS) $(INCLUDES) $(CFLAGS) $(CPPFLAGS) $(srcdir)/gengb18030z.c ../srclib/libicrt.a -o gengb18030z && \ + { cat $(srcdir)/GB18030-BMP.TXT ; ./gengb18030z ; } | sort > GB18030.TXT && \ + { test $(srcdir) = . || cp $(srcdir)/GB18030.IRREVERSIBLE.TXT GB18030.IRREVERSIBLE.TXT; } && \ + $(SHELL) $(srcdir)/check-stateless . GB18030 && \ + { test $(srcdir) = . || $(RM) GB18030.IRREVERSIBLE.TXT; } && \ + $(RM) -r gengb18030z gengb18030z.dSYM GB18030.TXT + $(SHELL) $(srcdir)/check-stateful $(srcdir) ISO-2022-CN + $(SHELL) $(srcdir)/check-stateful $(srcdir) ISO-2022-CN-EXT + $(SHELL) $(srcdir)/check-stateful $(srcdir) HZ + $(SHELL) $(srcdir)/check-stateless $(srcdir) EUC-TW + $(SHELL) $(srcdir)/check-stateless $(srcdir) BIG5 + $(SHELL) $(srcdir)/check-stateless $(srcdir) CP950 + $(SHELL) $(srcdir)/check-stateless $(srcdir) BIG5-HKSCS:1999 + $(SHELL) $(srcdir)/check-stateful $(srcdir) BIG5-HKSCS:1999 + $(SHELL) $(srcdir)/check-stateless $(srcdir) BIG5-HKSCS:2001 + $(SHELL) $(srcdir)/check-stateful $(srcdir) BIG5-HKSCS:2001 + $(SHELL) $(srcdir)/check-stateless $(srcdir) BIG5-HKSCS:2004 + $(SHELL) $(srcdir)/check-stateful $(srcdir) BIG5-HKSCS:2004 + $(SHELL) $(srcdir)/check-stateless $(srcdir) BIG5-HKSCS:2008 + $(SHELL) $(srcdir)/check-stateful $(srcdir) BIG5-HKSCS:2008 + $(SHELL) $(srcdir)/check-stateless $(srcdir) EUC-KR + $(SHELL) $(srcdir)/check-stateless $(srcdir) CP949 + $(SHELL) $(srcdir)/check-stateless $(srcdir) JOHAB + $(SHELL) $(srcdir)/check-stateful $(srcdir) ISO-2022-KR +# /* system dependent and extra encodings */ + $(MAKE) check-extra +# /* transliteration */ + $(SHELL) $(srcdir)/check-translit $(srcdir) Quotes UTF-8 ISO-8859-1 + $(SHELL) $(srcdir)/check-translit $(srcdir) Quotes UTF-8 ASCII + $(SHELL) $(srcdir)/check-translit $(srcdir) Translit1 ISO-8859-1 ASCII + $(SHELL) $(srcdir)/check-translitfailure $(srcdir) TranslitFail1 ISO-8859-1 ASCII +# /* substitution */ + $(SHELL) $(srcdir)/check-subst +# /* shift sequence before invalid multibyte character */ + ./test-shiftseq +# /* conversion to wchar_t */ + ./test-to-wchar + +check-extra: check-extra-no +check-extra-no: +check-extra-yes: all table-from table-to ../src/iconv_no_i18n +# /* AIX specific encodings */ + $(SHELL) $(srcdir)/check-stateless $(srcdir) CP856 + $(SHELL) $(srcdir)/check-stateless $(srcdir) CP922 +# $(SHELL) $(srcdir)/check-stateless $(srcdir) CP943 + $(SHELL) $(srcdir)/check-stateless $(srcdir) CP1046 + $(SHELL) $(srcdir)/check-stateless $(srcdir) CP1124 + $(SHELL) $(srcdir)/check-stateless $(srcdir) CP1129 + $(SHELL) $(srcdir)/check-stateless $(srcdir) CP1161 + $(SHELL) $(srcdir)/check-stateless $(srcdir) CP1162 + $(SHELL) $(srcdir)/check-stateless $(srcdir) CP1163 +# /* OSF/1 specific encodings */ + $(SHELL) $(srcdir)/check-stateless $(srcdir) DEC-KANJI + $(SHELL) $(srcdir)/check-stateless $(srcdir) DEC-HANYU +# /* DOS specific encodings */ + $(SHELL) $(srcdir)/check-stateless $(srcdir) CP437 + $(SHELL) $(srcdir)/check-stateless $(srcdir) CP737 + $(SHELL) $(srcdir)/check-stateless $(srcdir) CP775 + $(SHELL) $(srcdir)/check-stateless $(srcdir) CP852 + $(SHELL) $(srcdir)/check-stateless $(srcdir) CP853 + $(SHELL) $(srcdir)/check-stateless $(srcdir) CP855 + $(SHELL) $(srcdir)/check-stateless $(srcdir) CP857 + $(SHELL) $(srcdir)/check-stateless $(srcdir) CP858 + $(SHELL) $(srcdir)/check-stateless $(srcdir) CP860 + $(SHELL) $(srcdir)/check-stateless $(srcdir) CP861 + $(SHELL) $(srcdir)/check-stateless $(srcdir) CP863 + $(SHELL) $(srcdir)/check-stateless $(srcdir) CP864 + $(SHELL) $(srcdir)/check-stateless $(srcdir) CP865 + $(SHELL) $(srcdir)/check-stateless $(srcdir) CP869 + $(SHELL) $(srcdir)/check-stateless $(srcdir) CP1125 +# /* z/OS specific encodings, i.e. EBCDIC encodings */ + $(SHELL) $(srcdir)/check-stateless $(srcdir) IBM-037 + $(SHELL) $(srcdir)/check-stateless $(srcdir) IBM-273 + $(SHELL) $(srcdir)/check-stateless $(srcdir) IBM-277 + $(SHELL) $(srcdir)/check-stateless $(srcdir) IBM-278 + $(SHELL) $(srcdir)/check-stateless $(srcdir) IBM-280 + $(SHELL) $(srcdir)/check-stateless $(srcdir) IBM-282 + $(SHELL) $(srcdir)/check-stateless $(srcdir) IBM-284 + $(SHELL) $(srcdir)/check-stateless $(srcdir) IBM-285 + $(SHELL) $(srcdir)/check-stateless $(srcdir) IBM-297 + $(SHELL) $(srcdir)/check-stateless $(srcdir) IBM-423 + $(SHELL) $(srcdir)/check-stateless $(srcdir) IBM-424 + $(SHELL) $(srcdir)/check-stateless $(srcdir) IBM-425 + $(SHELL) $(srcdir)/check-stateless $(srcdir) IBM-500 + $(SHELL) $(srcdir)/check-stateless $(srcdir) IBM-838 + $(SHELL) $(srcdir)/check-stateless $(srcdir) IBM-870 + $(SHELL) $(srcdir)/check-stateless $(srcdir) IBM-871 + $(SHELL) $(srcdir)/check-stateless $(srcdir) IBM-875 + $(SHELL) $(srcdir)/check-stateless $(srcdir) IBM-880 + $(SHELL) $(srcdir)/check-stateless $(srcdir) IBM-905 + $(SHELL) $(srcdir)/check-stateless $(srcdir) IBM-924 + $(SHELL) $(srcdir)/check-stateless $(srcdir) IBM-1025 + $(SHELL) $(srcdir)/check-stateless $(srcdir) IBM-1026 + $(SHELL) $(srcdir)/check-stateless $(srcdir) IBM-1047 + $(SHELL) $(srcdir)/check-stateless $(srcdir) IBM-1097 + $(SHELL) $(srcdir)/check-stateless $(srcdir) IBM-1112 + $(SHELL) $(srcdir)/check-stateless $(srcdir) IBM-1122 + $(SHELL) $(srcdir)/check-stateless $(srcdir) IBM-1123 + $(SHELL) $(srcdir)/check-stateless $(srcdir) IBM-1130 + $(SHELL) $(srcdir)/check-stateless $(srcdir) IBM-1132 + $(SHELL) $(srcdir)/check-stateless $(srcdir) IBM-1137 + $(SHELL) $(srcdir)/check-stateless $(srcdir) IBM-1140 + $(SHELL) $(srcdir)/check-stateless $(srcdir) IBM-1141 + $(SHELL) $(srcdir)/check-stateless $(srcdir) IBM-1142 + $(SHELL) $(srcdir)/check-stateless $(srcdir) IBM-1143 + $(SHELL) $(srcdir)/check-stateless $(srcdir) IBM-1144 + $(SHELL) $(srcdir)/check-stateless $(srcdir) IBM-1145 + $(SHELL) $(srcdir)/check-stateless $(srcdir) IBM-1146 + $(SHELL) $(srcdir)/check-stateless $(srcdir) IBM-1147 + $(SHELL) $(srcdir)/check-stateless $(srcdir) IBM-1148 + $(SHELL) $(srcdir)/check-stateless $(srcdir) IBM-1149 + $(SHELL) $(srcdir)/check-stateless $(srcdir) IBM-1153 + $(SHELL) $(srcdir)/check-stateless $(srcdir) IBM-1154 + $(SHELL) $(srcdir)/check-stateless $(srcdir) IBM-1155 + $(SHELL) $(srcdir)/check-stateless $(srcdir) IBM-1156 + $(SHELL) $(srcdir)/check-stateless $(srcdir) IBM-1157 + $(SHELL) $(srcdir)/check-stateless $(srcdir) IBM-1158 + $(SHELL) $(srcdir)/check-stateless $(srcdir) IBM-1160 + $(SHELL) $(srcdir)/check-stateless $(srcdir) IBM-1164 + $(SHELL) $(srcdir)/check-stateless $(srcdir) IBM-1165 + $(SHELL) $(srcdir)/check-stateless $(srcdir) IBM-1166 + $(SHELL) $(srcdir)/check-stateless $(srcdir) IBM-4971 + $(SHELL) $(srcdir)/check-stateless $(srcdir) IBM-12712 + $(SHELL) $(srcdir)/check-stateless $(srcdir) IBM-16804 +# /* Extra encodings */ + $(SHELL) $(srcdir)/check-stateless $(srcdir) EUC-JISX0213 + $(SHELL) $(srcdir)/check-stateless $(srcdir) SHIFT_JISX0213 + $(SHELL) $(srcdir)/check-stateful $(srcdir) ISO-2022-JP-3 + $(SHELL) $(srcdir)/check-stateless $(srcdir) BIG5-2003 + $(SHELL) $(srcdir)/check-stateless $(srcdir) TDS565 + $(SHELL) $(srcdir)/check-stateless $(srcdir) ATARIST + $(SHELL) $(srcdir)/check-stateless $(srcdir) RISCOS-LATIN1 + +table-from : table-from.o ../lib/libiconv.la + $(LIBTOOL_LINK) $(CC) $(LDFLAGS) $(CFLAGS) table-from.o ../srclib/libicrt.a ../lib/libiconv.la -o $@ + +table-from.o : $(srcdir)/table-from.c + $(CC) -c $(INCLUDES) $(CFLAGS) $(CPPFLAGS) $(srcdir)/table-from.c + +table-to : table-to.o ../lib/libiconv.la + $(LIBTOOL_LINK) $(CC) $(LDFLAGS) $(CFLAGS) table-to.o ../srclib/libicrt.a ../lib/libiconv.la -o $@ + +table-to.o : $(srcdir)/table-to.c + $(CC) -c $(INCLUDES) $(CFLAGS) $(CPPFLAGS) $(srcdir)/table-to.c + +is-native : is-native.o + $(LIBTOOL_LINK) $(CC) $(LDFLAGS) $(CFLAGS) is-native.o ../srclib/libicrt.a -o $@ + +is-native.o : $(srcdir)/is-native.c + $(CC) -c $(INCLUDES) $(CFLAGS) $(CPPFLAGS) $(srcdir)/is-native.c + +test-shiftseq : test-shiftseq.o ../lib/libiconv.la + $(LIBTOOL_LINK) $(CC) $(LDFLAGS) $(CFLAGS) test-shiftseq.o ../srclib/libicrt.a ../lib/libiconv.la -o $@ + +test-shiftseq.o : $(srcdir)/test-shiftseq.c + $(CC) -c $(INCLUDES) $(CFLAGS) $(CPPFLAGS) $(srcdir)/test-shiftseq.c + +test-to-wchar : test-to-wchar.o ../lib/libiconv.la + $(LIBTOOL_LINK) $(CC) $(LDFLAGS) $(CFLAGS) test-to-wchar.o ../srclib/libicrt.a ../lib/libiconv.la -o $@ + +test-to-wchar.o : $(srcdir)/test-to-wchar.c + $(CC) -c $(INCLUDES) $(CFLAGS) $(CPPFLAGS) $(srcdir)/test-to-wchar.c + +# The following rule is necessary to avoid a toplevel "make -n check" failure. +../lib/libiconv.la : + cd ../lib && $(MAKE) libiconv.la + +mostlyclean : clean + +clean : force + $(RM) *.o *.lo table-from table-from table-to table-to is-native is-native test-shiftseq test-shiftseq test-to-wchar test-to-wchar tmp-* genutf8 genutf8 UTF-8.TXT gengb18030z gengb18030z GB18030.TXT core *.stackdump + $(RM) -r .libs _libs + +distclean : clean + $(RM) Makefile + +maintainer-clean : distclean + +# List of source files. +SOURCE_FILES = \ + Makefile.in \ + table-from.c table-to.c uniq-u.c \ + check-stateful check-stateful.bat \ + check-stateless check-stateless.bat \ + check-translit check-translit.bat \ + check-translitfailure \ + ASCII.TXT \ + genutf8.c \ + UCS-2BE-snippet UCS-2BE-snippet.UTF-8 \ + UCS-2LE-snippet UCS-2LE-snippet.UTF-8 \ + UCS-4BE-snippet UCS-4BE-snippet.UTF-8 \ + UCS-4LE-snippet UCS-4LE-snippet.UTF-8 \ + UTF-16-snippet UTF-16-snippet.UTF-8 \ + UTF-16BE-snippet UTF-16BE-snippet.UTF-8 \ + UTF-16LE-snippet UTF-16LE-snippet.UTF-8 \ + UTF-32-snippet UTF-32-snippet.UTF-8 \ + UTF-32BE-snippet UTF-32BE-snippet.UTF-8 \ + UTF-32LE-snippet UTF-32LE-snippet.UTF-8 \ + UTF-7-snippet UTF-7-snippet.UTF-8 \ + ISO-8859-1.TXT \ + ISO-8859-2.TXT \ + ISO-8859-3.TXT \ + ISO-8859-4.TXT \ + ISO-8859-5.TXT \ + ISO-8859-6.TXT \ + ISO-8859-7.TXT \ + ISO-8859-8.TXT \ + ISO-8859-9.TXT \ + ISO-8859-10.TXT \ + ISO-8859-11.TXT \ + ISO-8859-13.TXT \ + ISO-8859-14.TXT \ + ISO-8859-15.TXT \ + ISO-8859-16.TXT \ + KOI8-R.TXT \ + KOI8-U.TXT \ + KOI8-RU.TXT \ + CP1250.TXT \ + CP1251.TXT \ + CP1252.TXT \ + CP1253.TXT \ + CP1254.TXT \ + CP1255.TXT CP1255.IRREVERSIBLE.TXT \ + CP1255-snippet CP1255-snippet.UTF-8 \ + CP1256.TXT \ + CP1257.TXT \ + CP1258.TXT CP1258.IRREVERSIBLE.TXT \ + CP1258-snippet CP1258-snippet.UTF-8 \ + CP850.TXT \ + CP862.TXT \ + CP866.TXT \ + CP1131.TXT \ + MacRoman.TXT \ + MacCentralEurope.TXT \ + MacIceland.TXT \ + MacCroatian.TXT \ + MacRomania.TXT \ + MacCyrillic.TXT \ + MacUkraine.TXT \ + MacGreek.TXT \ + MacTurkish.TXT \ + MacHebrew.TXT \ + MacArabic.TXT \ + MacThai.TXT \ + HP-ROMAN8.TXT \ + NEXTSTEP.TXT \ + ARMSCII-8.TXT ARMSCII-8.IRREVERSIBLE.TXT \ + Georgian-Academy.TXT \ + Georgian-PS.TXT \ + KOI8-T.TXT \ + PT154.TXT \ + RK1048.TXT \ + MuleLao-1.TXT \ + CP1133.TXT \ + TIS-620.TXT \ + CP874.TXT \ + VISCII.TXT \ + TCVN.TXT TCVN.IRREVERSIBLE.TXT \ + TCVN-snippet TCVN-snippet.UTF-8 \ + ISO646-JP.TXT \ + JIS_X0201.TXT \ + ISO646-CN.TXT \ + ISO-IR-165.TXT ISO-IR-165.IRREVERSIBLE.TXT \ + EUC-JP.TXT EUC-JP.IRREVERSIBLE.TXT \ + SHIFT_JIS.TXT \ + CP932.TXT CP932.IRREVERSIBLE.TXT \ + ISO-2022-JP-snippet ISO-2022-JP-snippet.UTF-8 \ + ISO-2022-JP-2-snippet ISO-2022-JP-2-snippet.UTF-8 \ + ISO-2022-JP-1-snippet ISO-2022-JP-1-snippet.UTF-8 \ + ISO-2022-JP-MS-snippet ISO-2022-JP-MS-snippet.alt ISO-2022-JP-MS-snippet.UTF-8 \ + EUC-CN.TXT \ + GBK.TXT \ + CP936.TXT \ + gengb18030z.c GB18030-BMP.TXT GB18030.IRREVERSIBLE.TXT \ + ISO-2022-CN-snippet ISO-2022-CN-snippet.UTF-8 \ + ISO-2022-CN-EXT-snippet ISO-2022-CN-EXT-snippet.UTF-8 \ + HZ-snippet HZ-snippet.UTF-8 \ + EUC-TW.TXT EUC-TW.IRREVERSIBLE.TXT \ + BIG5.TXT \ + CP950.TXT CP950.IRREVERSIBLE.TXT \ + BIG5-HKSCS-1999.TXT BIG5-HKSCS-1999.IRREVERSIBLE.TXT \ + BIG5-HKSCS-1999-snippet BIG5-HKSCS-1999-snippet.UTF-8 \ + BIG5-HKSCS-2001.TXT BIG5-HKSCS-2001.IRREVERSIBLE.TXT \ + BIG5-HKSCS-2001-snippet BIG5-HKSCS-2001-snippet.UTF-8 \ + BIG5-HKSCS-2004.TXT BIG5-HKSCS-2004.IRREVERSIBLE.TXT \ + BIG5-HKSCS-2004-snippet BIG5-HKSCS-2004-snippet.UTF-8 \ + BIG5-HKSCS-2008.TXT BIG5-HKSCS-2008.IRREVERSIBLE.TXT \ + BIG5-HKSCS-2008-snippet BIG5-HKSCS-2008-snippet.UTF-8 \ + EUC-KR.TXT \ + CP949.TXT \ + JOHAB.TXT \ + ISO-2022-KR-snippet \ + ISO-2022-KR-snippet.UTF-8 \ + Quotes.UTF-8 Quotes.ISO-8859-1 Quotes.ASCII \ + Translit1.ISO-8859-1 Translit1.ASCII \ + TranslitFail1.ISO-8859-1 \ + is-native.c \ + check-subst \ + test-shiftseq.c \ + test-to-wchar.c \ + CP856.TXT \ + CP922.TXT \ + CP1046.TXT \ + CP1124.TXT \ + CP1129.TXT \ + CP1161.TXT CP1161.IRREVERSIBLE.TXT \ + CP1162.TXT \ + CP1163.TXT CP1163.IRREVERSIBLE.TXT \ + DEC-KANJI.TXT \ + DEC-HANYU.TXT DEC-HANYU.IRREVERSIBLE.TXT \ + CP437.TXT \ + CP737.TXT \ + CP775.TXT \ + CP852.TXT \ + CP853.TXT \ + CP855.TXT \ + CP857.TXT \ + CP858.TXT \ + CP860.TXT \ + CP861.TXT \ + CP863.TXT \ + CP864.TXT \ + CP865.TXT \ + CP869.TXT \ + CP1125.TXT \ + IBM-037.TXT \ + IBM-273.TXT \ + IBM-277.TXT \ + IBM-278.TXT \ + IBM-280.TXT \ + IBM-282.TXT \ + IBM-284.TXT \ + IBM-285.TXT \ + IBM-297.TXT \ + IBM-423.TXT \ + IBM-424.TXT \ + IBM-425.TXT \ + IBM-4971.TXT \ + IBM-500.TXT \ + IBM-838.TXT IBM-838.IRREVERSIBLE.TXT \ + IBM-870.TXT \ + IBM-871.TXT \ + IBM-875.TXT \ + IBM-880.TXT \ + IBM-905.TXT \ + IBM-924.TXT \ + IBM-1025.TXT \ + IBM-1026.TXT \ + IBM-1047.TXT \ + IBM-1097.TXT \ + IBM-1112.TXT \ + IBM-1122.TXT \ + IBM-1123.TXT \ + IBM-1130.TXT \ + IBM-1132.TXT \ + IBM-1137.TXT \ + IBM-1140.TXT \ + IBM-1141.TXT \ + IBM-1142.TXT \ + IBM-1143.TXT \ + IBM-1144.TXT \ + IBM-1145.TXT \ + IBM-1146.TXT \ + IBM-1147.TXT \ + IBM-1148.TXT \ + IBM-1149.TXT \ + IBM-1153.TXT \ + IBM-1154.TXT \ + IBM-1155.TXT \ + IBM-1156.TXT \ + IBM-1157.TXT \ + IBM-1158.TXT \ + IBM-1160.TXT IBM-1160.IRREVERSIBLE.TXT \ + IBM-1164.TXT \ + IBM-1165.TXT \ + IBM-1166.TXT \ + IBM-12712.TXT \ + IBM-16804.TXT \ + EUC-JISX0213.TXT \ + SHIFT_JISX0213.TXT \ + ISO-2022-JP-3-snippet ISO-2022-JP-3-snippet.UTF-8 \ + BIG5-2003.TXT BIG5-2003.IRREVERSIBLE.TXT \ + TDS565.TXT \ + ATARIST.TXT \ + RISCOS-LATIN1.TXT +# List of distributed files imported from other packages. +IMPORTED_FILES = \ + qemu.h +# List of distributed files generated by autotools or Makefile.devel. +GENERATED_FILES = +# List of distributed files generated by "make". +DISTRIBUTED_BUILT_FILES = +# List of distributed files. +DISTFILES = $(SOURCE_FILES) $(IMPORTED_FILES) $(GENERATED_FILES) $(DISTRIBUTED_BUILT_FILES) + +distdir : $(DISTFILES) + for file in $(DISTFILES); do \ + if test -f $$file; then dir='.'; else dir='$(srcdir)'; fi; \ + cp -p "$$dir/$$file" '$(distdir)'/$$file || exit 1; \ + done + +force :